目的:FFmpeg 命令操作視頻
環境:
系統:Win10
環境:ffmpeg-20180723-win64-shared
命令及參數說明
1. ffmpeg將mp4視頻轉換成gif格式圖片
命令:
ffmpeg -ss 2 -t 5 -i test.mp4 -s 640x480 -r 15 output.gif
說明:
-ss 2 -t 5表示從第2秒到第5秒,-s 640x480 設定分辨率, -r 15 設置幀率爲15,通暢gif幀率>=15就比較流暢了。
轉換成高質量gif
ffmpeg -i test.mp4 ./output.gif
2. ffmpeg將gif圖片轉換mp4視頻圖片
命令:
ffmpeg -f gif -i test.gif test.mp4
// 也可以將 gif 轉爲其他視頻格式
ffmpeg -f gif -i test.gif test.mpeg
ffmpeg -f gif -i test.gif test.mkv
3. ffmpeg獲取視頻幀的圖片
命令1:截取某一秒的圖片
ffmpeg -i test.mp4 -y -f image2 -ss 60 -vframes 1 test.jpg
說明:
-ss 指定秒數
命令2:保存指定一段視頻中每一秒的圖片
ffmpeg -i aa.mp4 -r 1 -ss 00:00:26 -t 00:00:07 %03d.png
說明
-i 輸入視頻文件, 格式可以多種,如mkv,avi,mov
-r 1表示每秒一張,類推 -r 20表示每秒截取20張
-ss 視頻開始時間
-t 視頻截止時間
%-3d.png表示截取圖片名從0依次遞增, png爲 圖片格式,類似可使用%03d.jpg
命令3:保存視頻中每一秒的圖片
ffmpeg -i aa.mp4 -r 1 %03d.png
說明
-i 輸入視頻文件, 格式可以多種,如mkv,avi,mov
-r 1表示每秒一張,類推 -r 20表示每秒截取20張
%-3d.png表示截取圖片名從0依次遞增, png爲 圖片格式,類似可使用%03d.jpg
4. ffmpeg視頻剪切
命令1:
ffmpeg -ss 10 -t 15 -i test.mp4 -codec copy cut.mp4
說明:
將-ss, -t 參數放在-i參數之前,對輸入文件執行seek操作,會seek到-ss設置的時間點前面的關鍵幀上。
時間不精確,但是不會出現黑屏
命令2:
ffmpeg -ss 10 -t 15 -accurate_seek -i test.mp4 -codec copy cut.mp4
說明:
accurate_seek 剪切時間更加精確,accurate_seek必須放在-i參數之前
命令2:ffmpeg -ss 10 -t 15 -accurate_seek -i test.mp4 -codec copy -avoid_negative_ts 1 cut.mp4
說明:
avoid_negative_ts 如果編碼格式採用的copy 最好加上 -avoid_negative_ts 1參數
5. ffmpeg截取mp3音頻
命令1:
ffmpeg -i source.mp3 -ss 00:01:01 -t 00:02:50 -acodec copy output.mp3
說明:
源:source.mp3
開始位置:-ss
結束位置:-t
原始編碼:-acodec
命令2:
ffmpeg -i source.mp3 -ss 00:01:01 -t 50 -acodec copy output.mp3
說明:
源:source.mp3
開始位置:-ss
截取秒數:-t
原始編碼:-acodec