web-dev-qa-db-ja.com

avconv-1つのビデオフレームを抽出して繰り返す

ソースビデオから出力まで1フレームを繰り返したいのですが。私は次を試しました

avconv -ss 00:20:00 -i INPUT_VIDEO -t 0.5 -vsync 1 -an -r 1 -vcodec libx264 VIDEO_1F
avconv -i VIDEO_1F -t 10 -r 1 -vcodec libx264 OUTPUT_VIDEO

しかし、-ssは前のコマンドでは機能せず、常に入力ビデオの最初のフレームを抽出することがわかりました。後者の-tは効果がなく、出力ビデオの長さは2秒になります。

なにか提案を?または、より良いアプローチがありますか?

4
neuront

また、2つのステップで抜け道ができました。

最初にフレームを抽出します

avconv -ss 00:20:00 -i INPUT_VIDEO -vsync 1 -t 0.01 output.png

avconvが0.01秒以内に複数のフレームを抽出し、「...パターン 'output.png'からフレームファイル番号2を取得できませんでした...」というエラーで終了する可能性があります。ただし、最初のフレームだけが必要なので気にしないでください。

次に、画像をビデオに変換します

avconv -loop 1 -i output.png -vcodec libx264 -tune stillimage -t 10 OUTPUT_VIDEO
4
neuront