2017-01-27 52 views
2

使用avconv(或甚至ffmpeg,因此我可以用作參考),如何通過僅從其他視頻獲取錨/參考幀來創建延時視頻?我發現的大多數信息都是關於如何通過組合圖像來創建延時視頻,我希望通過從視頻中提取幀來實現。比如說,如果一個視頻以30 FPS的速度長達30秒,我想從這900個幀中選取60個(900/60 =每15秒)來製作一個2秒的視頻。創建來自其他視頻的延時視頻

回答

2

採取一切第15幀,使用

ffmpeg -i in.mp4 -vf select='not(mod(n,15))',setpts=N/FRAME_RATE/TB out.mp4 

另一種方法是使用圖像framestep過濾

ffmpeg -i in.mp4 -vf framestep=15,setpts=N/FRAME_RATE/TB out.mp4 
+0

得到了同時運行這些命令的不同的錯誤:「缺少‘)’或參數過多'mod(n''和'Option'framestep'not found「 – odigity

+0

對於第一個錯誤,您可能需要轉義逗號,所以'n \,15'和第二個,重新檢查命令字符串。使用非常舊的ffmpeg(在添加了framestep過濾器之前),它會抱怨'沒有這樣的過濾器「,但是你會得到一個'option'錯誤,這表明一個格式錯誤的命令。你在一個外殼或包裝中使用它?什麼是確切的字符串? – Mulvya

+0

我使用ffmpeg 3.0.7運行Ubuntu 16.10,並且我正在複製和粘貼兩個命令行,只是改變了輸入和輸出文件名。 – odigity