假設 input.mkv
總時長爲35分鐘,用以下命令剪切出的視頻時長正確,爲10分鐘:
ffmpeg -ss 00:10:00 -to 00:20:00 -accurate_seek -i input.mkv -codec copy -avoid_negative_ts 1 -y output.mkv
用以下命令截取的視頻剪切出的視頻時長錯誤爲15分鐘,即 總時長(35分鐘) 減去 -to(第20分鐘)所得的時長:
ffmpeg -ss 00:10:00 -to 00:20:00 -accurate_seek -i input.mkv -vcodec libx264 -acodec aac -y output.mp4
正確方法
ffmpeg -ss 00:09:50 -i input.mkv -ss 00:10:00 -to 00:20:00 -copyts -codec copy -avoid_negative_ts 1 -y output.mkv
應當在-i
的前後加-ss
參數
需要注意的是:-ss在-i之前 有助於提高搜索速度,因此建議:-ss在-i之前
http://trac.ffmpeg.org/wiki/Seeking