簡介與其他資料:
http://www.mobile01.com/topicdetail.php?f=510&t=3734550
其他範例:
http://www.mobile01.com/topicdetail.php?f=510&t=4487462
視訊加速
要改變視訊串流的速度可以透過指定不同的輸入FPS或是使用 setpts filter。
※在以下範例中,音訊串流的速度並不會被改變,所以建議使用 -an 來禁音訊串流。
如果要得到兩倍速度,可以將輸入的 fps 指定為兩倍。
將 24000/1001 (23.976) fps 的輸入影片加速2倍:
ffmpeg -r 48000/1001 -i input.mkv -an output.mkv
以上範例會得到輸出片源兩倍 fps 的影片,如果要得到較小的輸出 fps 可以手動指定輸出 fps。
將 24000/1001 (23.976) fps 的輸入影片加速2倍並維持 fps 不變:
ffmpeg -r 48000/1001 -i input.mkv -an -r "24000/1001" output.mkv
或者也可以使用 setpts filter 來達到相同的效果。
將任意輸入影片加速2倍:
ffmpeg -i input.mkv -an -filter:v "setpts=1/2*PTS" output.mkv
或者:
ffmpeg -i input.mkv -an -filter:v "setpts=0.5*PTS" output.mkv
音訊加速
要改變音訊串流的速度可以使用 atempo filter。設定值可用範圍: 0.5-2.0
※在以下範例中,視訊串流的速度並不會被改變,所以建議使用 -vn 來禁用視訊串流。
將任意輸入音訊加速2倍:
ffmpeg -i input.mkv -vn -filter:a "atempo=2.0" output.mkv
將任意輸入音訊加速4倍:
ffmpeg -i input.mkv -vn -filter:a "atempo=2.0,atempo=2.0" output.mkv
影音加速
若要加速視音訊可以同時使用 setpts 與 atempo filter。
filter:
ffmpeg -i input.mkv -filter:v "setpts=0.5*PTS" -filter:a "atempo=2.0" output.mkv
filter_complex:
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
http://www.mobile01.com/topicdetail.php?f=510&t=4200388