說明:ffmpeg是一款非常好用的媒體操作工具,包含了許多對于視頻、音頻的操作,有些視頻播放器,實際上就是套了一個ffmpeg的殼子。本文介紹ffmpeg的使用以及一些較為實用的命令。
安裝
ffmpeg是命令行操作的,不需要安裝,可在官網(wǎng)下載壓縮包;
解壓到一個沒有中文、沒有數(shù)字的路徑下,配置一下環(huán)境變量,這些都是基本操作,不再詳細介紹;
打開CMD,輸入ffmepg
,出現(xiàn)以下信息表示環(huán)境變量配置成功;
使用
命令1:提取視頻所有幀
有時我們需要對視頻圖像進行處理,可以考慮把視頻按幀提取出來成圖片,再使用代碼對圖像進行逐幀處理,可使用以下命令:
ffmpeg -i <視頻文件名> -r 60(幀數(shù)) -qscale:v 2 out/%04d.jpg(圖片路徑及命令規(guī)則)
參數(shù)介紹:
- out/%04d.jpg:表示提取出來的圖片放在當前目錄下的out文件夾,名稱按照"0001.jpg、0002.jpg……"的方式命名;
比如,我這里有一個視頻(before.mp4)
在當前目錄創(chuàng)建一個out文件夾,用于接收圖片,輸入下面命令,將視頻按照24幀/秒轉(zhuǎn)為圖片。
需要注意哦,幀數(shù)不是隨意設(shè)置的,一般視頻幀數(shù)是24。如果你需要對手頭上的視頻按幀處理,在提取幀之前應(yīng)該要先了解這段視頻文件的拍攝參數(shù),了解到視頻的幀數(shù)是多少;
可以感受到提取速度還是非??斓模?分半的視頻,2090幀,幾秒鐘就全部提取出來了,這是因為ffmpeg工具是使用C系語言開發(fā)的;
另外,記住轉(zhuǎn)換的解碼率,后面合并圖片為視頻時需要用;
命令2:圖片合成視頻
一般來說,我們將上面提取出來的圖片進行了一些處理后,就可以將處理后的圖片集合成視頻,使用下面這行命令:
ffmpeg -f image2 -framerate 24(幀數(shù)) -i %04d.jpg -b:v 7920k(轉(zhuǎn)碼率) <生成視頻名>
- %04d.jpg:表示輸入的圖片集合是以“0001.jpg、0002.jpg……”命名規(guī)則命名的;
比如將上面提取出來的圖片再合成一個視頻,如下:
啊?!視頻怎么這么小,并且畫質(zhì)非常糟糕?
因為上面的命令中,解碼率是7920k,我少了一個k
,刪掉視頻,重新合并:
這會正常了,而且畫質(zhì)也和原視頻一樣,所以注意合并視頻時,解碼率需要和提取視頻幀時一致;
命令3:提取視頻的音頻
可使用下面的命令,提取出視頻中的音頻;
ffmpeg -i <視頻文件> -f mp3 -vn <生成的音頻文件>
比如把我這個視頻(before.mp4)中的音頻提取出來,命名為audio.mp3
實際使用時,可以靈活一點,比如需要把某種音頻類型,轉(zhuǎn)為另一種類型,直接修改后綴名可能會造成文件損壞不可用,就可以使用這種方式進行提取,達到音頻類型轉(zhuǎn)換的目的;
命令4:音視頻合并
可以使用下面這個命令,把音頻和視頻進行合并;
ffmpeg -i <視頻文件名> -i <音頻文件名> -c:v copy -c:a aac -strict experimental <生成視頻名>
像上面使用命令2合成的視頻,當然是沒有聲音的,想做成一個完整的視頻,還需要把音頻進行合并,如下:
這樣,一個完整的視頻抽取圖片,處理圖片,提取音頻,合成視頻的制作流程就完成了;
命令5:分割視頻
分割視頻的命令有許多方式,如下:
ffmpeg -ss 01:00:00 -i <視頻文件> -vcodec copy -acodec copy -t 00:06:00 <生成視頻文件>
ffmpeg -ss 00:00:00 -i <視頻文件> -c copy -t 600 <生成視頻文件>
ffmpeg -i <視頻文件> -ss 1 -c copy -to 75 <生成視頻文件>
我最喜歡用最后這種,非常方便,前面的數(shù)字表示起始秒,后面表示末尾秒,比如把上面的視頻final.mp4截取第10~20秒,如下:
需要注意,切割視頻會有畫面的丟失,需要手動微調(diào)一下分割點,比如從10秒開始,畫面有丟失,稍微加一點,比如10.5秒,10.7秒可能丟失的畫面會變少(當然減一點也可以,看自己的情況),可通過微調(diào)達到畫面基本不丟失;
命令6:合并視頻
可輸入以下命令,合并兩個視頻;
ffmpeg -f concat -safe 0 -i <合并視頻列表.txt> -c copy <生成視頻名.mp4>
- 合并視頻列表.txt:指合并的視頻清單,如下表示合并part1.mp4,part2.mp4這兩個視頻;
我再分割出來一個視頻(part2.mp4),然后把這兩個視頻進行合并,如下:
命令7:播放視頻
上面合成后的視頻通過系統(tǒng)播放器可能無法播放,這時可以通過ffmpeg自帶的播放視頻/音頻的命令ffplay
來打開視頻/音頻文件;
ffplay <視頻/音頻文件>
打開上面合成的視頻,如下:
文章來源:http://www.zghlxwxcb.cn/news/detail-640994.html
總結(jié)
ffmpeg是一款非常方便,功能強大的媒體操作工具,本文介紹了ffmpeg較為常用的一些操作命令;文章來源地址http://www.zghlxwxcb.cn/news/detail-640994.html
到了這里,關(guān)于ffmpeg工具實用命令的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!