ffmpeg命令介紹 ffmpeg.exe(linux/imac一般不帶尾碼,ffmpeg), 是一款音視頻編解碼的命令行工具軟體, 常用於多媒體測試的文件製作與轉碼。 我們常用的:格式工廠,MediaCoder等多媒體格式轉換軟體, 其關鍵技術有一部分是直接或間接依賴ffmpeg.exe的, ff ...
ffmpeg命令介紹
ffmpeg.exe(linux/imac一般不帶尾碼,ffmpeg),
是一款音視頻編解碼的命令行工具軟體, 常用於多媒體測試的文件製作與轉碼。
我們常用的:格式工廠,MediaCoder等多媒體格式轉換軟體,
其關鍵技術有一部分是直接或間接依賴ffmpeg.exe的,
ffmpeg可以說是編解碼界使用最廣泛的工具了。
不管是做多媒體測試,音視頻編解碼測試,還是普通測試人員日常工作,
比如一個Bug的視頻太大了,無法作為附件上傳到Bug系統,
則需要對視頻用ffmpeg重新編碼,比如降低解析度,降低幀率等。
最終降低了視頻的比特率,視頻文件自然變小了很多,
這些我認為是測試人員的必備能力之一。
Windows版下載地址
https://ffmpeg.zeranoe.com/builds/win64/static/ffmpeg-20181210-a271025-win64-static.zip,
下載後解壓,把bin文件夾下的ffmpeg.exe丟到path環境變數里去,能在cmd端訪問即可。
常用參數(暫只列出針對測試人員的常見參數)
-i 表示inputfile, 就是ffmpeg需要處理的文件(音頻文件,視頻文件,圖片文件,原始音視頻流)
-s 表示size, 解析度設置, 視頻相關的參數
-b 表示Video bitrate, 視頻比特率,即每秒種的數據量,一般數據量越大,視頻質量越好。
-r 表示frame rate, 視頻的幀率,即每秒鐘顯示多少張圖片,一般圖片數越多,表示採樣的越精細,視頻質量越好
-ab 表示Audio bitrate,音頻比特率,即每秒鐘的數據量,-一般數據量越大,音頻質量越好。
-ar 表示Audio rate, 即音頻採樣率,即每秒鐘採集音頻多少次,一般採集的次數(頻率)越大,音頻質量越好。
-an 表示Audio Notavaliable, 即去除音頻數據
常見用法(暫只列出針對測試人員的常見用法)
序號 | ffmpeg命令常見用法 | 釋義 |
---|---|---|
1 | ffmpeg -i input.mp4 -r 12 -s 640x480 output.mp4 | 將input.mp4進行重編碼(按幀率12fps, 解析度640x480)並另存為outpu.mp4 |
2 | ffmpeg -i input.mp4 output.mp3 | 提取input.mp4視頻里的音頻文件, 並另存為output.mp3 |
3 | ffmpeg - input.jpg output.png | 將input.jpg圖片重新編碼轉換成png格式, 並另存為output.png |
4 | ffmpeg -i input.mov output.mp4 | 將input.mov進行重編碼(幀率不變, 解析度不變,編碼格式會變成h.264) 並另存為outpu.mp4 |
5 | ffmpeg -i input.mp4 -an output.mp4 | 將input.mp4視頻進行去音頻處理, 並另存為output.mp4 |
6 | ffmpeg -i input.mp3 -ar 44.1 output.mp3 | 將input.mp3進行重編碼(按採樣率44.1khz), 並另存為output.mp3 |
7 | ffmpeg -i input.mp4 -f image2 C:\img_%04d.jpg | 將input.mp4視頻轉換成jpg圖片幀 |
執行效果
tips 想瞭解更多ffmpeg命令及其參數,可以用ffmpeg --help來查看幫助文檔
tips 下載ffmpeg.exe的過程中,還有一個ffplay.exe,ffprobe.exe.
ffplay.exe是ffplay解碼播放器,ffplay.exe video.mp4 播放一個視頻試試。
ffprobe.exe是查看多媒體信息流的,其實和mediainfo.exe差不多
更多更好的原創文章,請訪問官方網站:www.zipython.com
原文鏈接:https://www.zipython.com/#/detail?id=5d3b9961790443ce9696fb8617225959