java使用ffmpeg生成視頻縮略圖
生成視頻縮略圖,需要使用ffmpeg。
FFmpeg是一個開源免費跨平臺的視頻和音頻流方案,屬于自由軟件,采用LGPL或GPL許可證(依據你選擇的組件)。它提供了錄制、轉換以及流 化音視頻的完整解決方案。它包含了非常先進的音頻/視頻編解碼庫libavcodec,為了保證高可移植性和編解碼質量,libavcodec里很多 codec都是從頭開發的。
ffmpeg功能非常強大,大部分流行的視頻格式的都能生成縮略圖
首先下載ffmpeg解壓
建立一個bat文件
startE:/ffmpeg/bin/ffmpeg.exe -i %1 -ss 20 -vframes 1 -r 1 -ac 1 -ab 2 -s 160*120 -f image2 %2
exit</pre>
上面命令行解釋:
- E:/ffmpeg/bin/ffmpeg.exe ffmpeg的路徑
- %1 %2 和C語言有點相似是為傳參數保留位置
- 20 要截取多少秒后的圖片
打開MyEclipse,建立一個工程 ,以及一個java文件
import java.io.IOException;public class Ffmpeg { public static void main(String[] args) { //視頻文件
String videoRealPath = "F://瞬間.flv";
//截圖的路徑(輸出路徑)
String imageRealPath ="F://a.jpg";
try {
//調用批處理文件
Runtime.getRuntime().exec("cmd /c start F://ffmpeg.bat " + videoRealPath + " " + imageRealPath);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }}</pre>