長さが 2 秒の 8 フレームのアニメーション GIF があるとします。ソースGIFが何度も繰り返される30秒のビデオファイル(この時点ではコーデックは重要ではありません)を作成したいと思います。
のみを使用ffmpeg
してこれを行うことは可能ですか? または他の前処理ユーティリティを使用する回答convert
はカウントされません [理由は、そのユーティリティを持たない PandaStream でこれを使用したいからです]。複数の ffmpeg コマンドでもかまいませんが、シェル スクリプトも問題外であると仮定しましょう。
私が試したことはうまくいきませんでした(おそらく私は間違っていたかもしれませんが、私はffmpegにあまり慣れていません):
ffmpeg docs
-loop_input
にある-loop_output
オプションを使用します。ffmpeg 1.2 と 2.0 の両方を使用すると、エラー メッセージが表示されます。エラーはオプションを認識しないことに関するものなので、私はこれを間違って使用している可能性がありますが、ドキュメントでは非推奨であると書かれています。Unrecognized option 'loop_[input|output]'
-loop
オプション。GIF -> ビデオでは何もしないようです。このフラグと上記のフラグは、アニメーション GIF を出力として生成することに関連していると思います。連結。次のようなことをします:
ffmpeg -i "concat:image.gif|image.gif|image1.gif|image2.gif|image3.gif|image4.gif" image-long.gif
出力gifの品質ははるかに低くなりますが、16フレームのgif(2つのgifが連結されるため)が生成されます。
私はここで少し知恵を絞っています (上記の概念の他の多くの順列を試しました)。私は今、「棒で突く」ところまで来ています。