介紹一個(gè)全局參數(shù)?-hide_banner
;它可以阻止 FFmpeg 在每次執(zhí)行時(shí)開頭打印的那一堆版本信息文本:
ffmpeg -hide_banner -L
轉(zhuǎn)碼
比如將一個(gè) FLV 文件轉(zhuǎn)為 MP4 文件并重編碼,F(xiàn)Fmpeg 會(huì)自動(dòng)尋找編解碼器,準(zhǔn)確度還是比較高的:
ffmpeg -i video.flv video.mp4
其中,在?-i
?后指定輸入文件的文件名,在所有命令的最后指定輸出文件的文件名。?如果文件名帶有空格或特殊字符,請(qǐng)用雙引號(hào)將文件名包裹。?上述的?video.mp4
?在?-i
?參數(shù)之后,稱為?輸出參數(shù)?;反之,在?-i
?之前的稱為?輸入?yún)?shù)。
用戶也可以顯式地指定編碼器,比如使用 h.264 視頻編碼器與 flac 音頻編碼器。
ffmpeg -i video.flv -c:v libx264 -c:a flac video.mkv
其中?-c
?是?-codec
?的簡(jiǎn)寫。用?v
?表示視頻(video)編碼器、?a
?表示音頻(audio)編碼器。
一般來說轉(zhuǎn)格式會(huì)進(jìn)行重復(fù)編碼,有些機(jī)器上就會(huì)很慢,但如果對(duì)編碼不作轉(zhuǎn)換要求,就可以進(jìn)行流復(fù)制,這個(gè)非常快。
流復(fù)制
格式轉(zhuǎn)換還有一種快速的情形。如果兩者的所有流都不改動(dòng)且輸出容器支持輸入的所有流,那么可以直接向?-c
?傳遞?copy
?以進(jìn)行流復(fù)制。這樣省去了重新編碼的時(shí)間,格式轉(zhuǎn)換將十分迅速:
ffmpeg -i video.avi -c copy video.mp4
其中,-c
?是 codec 的簡(jiǎn)稱,表示所有流的編解碼器。該命令表示所有流均不進(jìn)行額外操作,直接復(fù)制到新容器中。
提取流
常見就是提取音頻和字幕
比如將一個(gè) MP4 視頻文件轉(zhuǎn)為 AAC 音頻文件(此處實(shí)質(zhì)上是直接提?。?/p>
ffmpeg -i video.mp4 -c:a copy audio.aac
此處的?-c:a
?表示音頻流;視頻流?-c:v
?與字幕流?-c:s
?自然也類似。 注意:如果音頻流與容器沖突時(shí),你需要將?copy
?改為正確的編解碼器(或者刪去?-c:a?copy
?來讓 FFmpeg 自動(dòng)選擇),以執(zhí)行重編碼。
轉(zhuǎn)碼文章來源:http://www.zghlxwxcb.cn/news/detail-795077.html
ffmpeg -i video.mkv -c:a libmp3lame -q:a 2 audio.mp3
對(duì)于內(nèi)掛了字幕的視頻文件,也可以將其字幕單獨(dú)提取出來,例如:文章來源地址http://www.zghlxwxcb.cn/news/detail-795077.html
ffmpeg -i video.mkv -c:s copy subtitle.srt
到了這里,關(guān)于ffmpeg 實(shí)用命令 - 轉(zhuǎn)換格式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!