一行命令實現視頻、音頻倍速

最近小李看了一部懸疑愛情電視劇 《想見你》,看過的朋友估計都已經被伍佰的一首《last dance》洗了腦,至關上頭。ide

因爲我是二倍速觀看的視頻,裏面播放的歌曲也是二倍速。脫離開視頻,我下載了這首歌試聽以後,感受大相徑庭,總體節奏放緩,不夠洗腦,不符合新時代快節奏的生活,簡而言之,沒那味了。因而我便想要將此歌倍速播放,掏出了法寶FFmpegspa

改變音頻速率

改變音頻速率最簡單的方法是直接調整音頻的採樣率,可是與此同時,這種方法會改變音頻的音色。目前通常採用對原音進行重採樣,差值等方法來實現。下面這行命令的倍率調整範圍爲0.5到2。code

ffmpeg -i input.mkv -filter:a "atempo=2.0" -vn output.mkv複製代碼

若是想要再快的話,須要更改命令,經過將多個atempo過濾器串接在一塊兒來繞過這個限制。視頻

ffmpeg -i input.mkv -filter:a "atempo=2.0,atempo=2.0" -vn output.mkv複製代碼

改變視頻速率

改變視頻的播放速率是經過修改視頻的表示時間戳(PTS)來實現的。舉個簡單的例子,若是在時間戳1和2處顯示兩個連續幀,咱們想要加快視頻速度,那麼這兩個時間戳須要分別變爲0.5和1。所以,咱們必須把他們乘以0.5。get

ffmpeg -i input.mkv -r 16 -filter:v "setpts=0.5*PTS" output.mkv複製代碼

對視頻進行加速時,爲了避免丟幀,能夠利用-r 參數指定輸出的fps。input

通常來講,視頻倍速還須要將視頻中的音頻也一同倍速,經過混合的過濾圖實現,命令以下,it

ffmpeg -i input.mkv -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" output.mkv複製代碼

想要倍速播放視頻、音樂的朋友不妨試試吧~ast

參考文獻

相關文章
相關標籤/搜索