java执行ffmpeg截图备忘

“靠人不如靠己”,永恒不变的真理呵呵!

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 ",至此截图成功了!

相关推荐