近期由于在做一个关于视频播放的项目,需要使用程序自动获取视频文件的缩略图,特写此文供其他人参考,有不清楚之楚可以给我留言。

1、使用工具:ffmpeg,

官网下载地址:http://ffmpeg.org/download.html

我的电脑使用的是mac,安装也比较简单,参考下面的文章:

http://webmedia.blog.163.com/blog/static/416695020123261226695/

http://blog.chinaunix.net/uid-16974460-id-295979.html

下面给出linux系统安装示例:

yum -y install yasm

tar -jxvf ffmpeg-2.7.2.tar.bz2

cd ffmpeg-2.7.2

./configure --enable-shared --prefix=/usr/local/ffmpeg

make

make install

cd /usr/local/ffmpeg

vi /etc/ld.so.conf.d/ffmpeg.conf(写入:/usr/local/ffmpeg/lib) ldconfig

ln -s /usr/local/ffmpeg/bin/ffmpeg /usr/local/bin/

测试:

ffmpeg -i xxx.mp4 -y -f image2 -t 0.001 -s 125x125 xxx.jpg

2、配置环境变量

如果是windows,将ffmpeg命令加入到path环境变量中

如果是linux系统,则执行如下命令,

cd /usr/local/bin

ln -s /usr/local/ffmpeg/bin/ffmpeg ffmpeg

3、JAVA代码

注意:需要使用如下方式将每个参数分别添加到列表中,不能将参数与命令合在一起,不然会报命令找不到路径,我在mac上是这样的,不知道在window下会不会出现。

/**

* 保存视频缩略图

* @throws IOException

*/

public static void saveVideoThumbnail(String videoPath, String imagePath) throws IOException {

//ffmpeg -i xxx.mp4 -y -f image2 -t 0.001 -s 125x125 xxx.jpg

List cmd = new java.util.ArrayList();

cmd.add("ffmpeg");// 视频提取工具的位置

cmd.add("-i");

cmd.add(videoPath);

cmd.add("-y");

cmd.add("-f");

cmd.add("image2");

cmd.add("-t");

cmd.add("0.001");

cmd.add("-s");

cmd.add("125x125");

cmd.add(imagePath);

ProcessBuilder builder = new ProcessBuilder();

builder.command(cmd);

builder.start();

}

java 获取mp4 缩略图_java获取视频缩略图相关推荐

  1. java 视频 缩略图_java获取视频缩略图

    近期由于在做一个关于视频播放的项目,需要使用程序自动获取视频文件的缩略图,特写此文供其他人参考,有不清楚之楚可以给我留言. 1.使用工具:ffmpeg, 官网下载地址:http://ffmpeg.or ...

  2. java 优酷视频缩略图_java获取优酷等视频缩略图

    类型:Android平台大小:6.8M语言:中文 评分:7.2 标签: 立即下载 想获取优酷等视频缩略图,在网上没有找到满意的资料,参考了huangdijia的PHP版工具一些思路,写了下面的JAVA ...

  3. java获取文件地址吗_java获取文件所在服务器位置路径

    1.通过 import javax.servlet.ServletContext 类获取web 服务器所在真实路径 public ActionForward execute( ActionMappin ...

  4. java ip地址接口_java获取ip地址与网络接口的方法示例

    java.net包 大家应该都知道,网络相关对象在java.net包中,Java net包下的类如下: 1.获取主机对象InetAddress //获取本地主机对象 InetAddress host ...

  5. java获取扩展名_Java获取文件扩展名称

    有时在处理文件时,需要根据文件类型对它们进行不同的处理. java.io.File没有任何获取文件扩展名的方法,这里提供了一个实用工具方法来获取文件扩展名. Java获取文件扩展名 在句点(.)之后, ...

  6. java 获取秒数_Java获取精确到秒的时间戳(转)

    1.时间戳简介: 时间戳的定义:通常是一个字符序列,唯一地标识某一刻的时间.数字时间戳技术是数字签名技术一种变种的应用.是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01 ...

  7. java实现视频文件转换为flv(带文件缩略图)_java实现视频文件转换为flv(带文件缩略图)...

    在android中获取视频文件的缩略图有三种方法: 1.从媒体库中查询 2. android 2.2以后使用ThumbnailUtils类获取 3.调用jni文件,实现MediaMetadataRet ...

  8. java 获取第一帧_java获取视频的第一帧

    //------------maven配置文件--------------- org.bytedeco javacv 0.8 /** * 获取指定视频的帧并保存为图片至指定目录 * @param vi ...

  9. java 视频 缩略图_Java截取视频文件缩略图

    /** * 截取视频第0帧的图片 */ public static void videoImage(String filePath, String fileName,int widthdist, in ...

最新文章

  1. 总经费8.4亿的上海市脑科学重大专项进展如何?且看2019年度工作汇报会
  2. 核心路由器聚焦三大关键点
  3. 使用try-with-resources替代try finally释放资源
  4. angular element()
  5. 归纳(四):树链剖分
  6. useEffect与useLayoutEffect
  7. 美股数据获取 python_python3+tesseract获取美股PEG图像上的数据
  8. load Event
  9. Yolov4部署到ZYNQ系列1-USB转UART驱动不在COM和LPT显示问题的解决方案
  10. springcloud 远程rpc调用接口
  11. 十六进制转二进制 c语言,单片机 avr c语言 二进制 十进制 十六进制 快速转换
  12. 【Http认证方式】——Basic认证
  13. windows7无法登陆网络上的计算机,win7电脑网络连接显示感叹号无法上网怎么处理...
  14. 活动星投票国风正当红网络评选微信的投票方式线上免费投票
  15. 大数据技术之Hive+Flume+Zookeeper+Kafka详解
  16. 必须得会的汽车ECU研发基础—软件开发流程6
  17. 【MySQL】格式化时间戳以及时间格式
  18. 遥感卫星影像数据全色波段和多光谱波段
  19. CentOS7 安装Tomcat
  20. Linux之root密码破解

热门文章

  1. maven选包算法(两个相同的包)
  2. Linux下I/O多路转接之select --fd_set
  3. html5 js贪吃蛇,html5+js 贪吃蛇
  4. HarmonyOS之在工程中导入Sample工程和添加Module
  5. PAT (Basic Level) Practice (中文)1006 换个格式输出整数 (15 分)
  6. 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言——1105:数组逆序重存放
  7. 大数据WEB阶段(四)JavaScript
  8. Deep-Learning-with-Python] 文本序列中的深度学习
  9. 【机器视觉】 measure_pairs算子
  10. 【机器视觉】 fuzzy_measure_pairing算子