conkeyn 发表于 2013-1-27 04:55:20

java执行ffmpeg截图

首先,大家知道java执行外部命令很简单,语句如下:
Runtime.getRuntime().exec()    这个地球人都知道,但遇到具体问题是要具体分析!ffmpeg是采用命令行的方式进行编译工作,所以不能直接执行,必须要把命令写在一个批处理文件ffmpeg.bat里,内容如下:
ffmpeg.exe -i %1 -ss 3 -vframes 1 -r 1 -ac 1 -ab 2 -s 160*120 -f image2 %2    
%1:接收的参数一
%2:接收的参考二
 
然后如下:
Runtime.getRuntime().exec("cmd /c start C:\\ffmpeg.bat " + videoRealPath + " " + imageRealPath) 
由于Runtime.getRuntime().exec不能直接执行批处理文件,所以要加上"cmd /c start ",至此截图成功了!
bat 按以下的格式,可以自动关闭DOS窗口
start  ffmpeg.exe -i %1 -ss 3 -vframes 1 -r 1 -ac 1 -ab 2 -s 160*120 -f image2 %2  
exit
页: [1]
查看完整版本: java执行ffmpeg截图