gifアニメーションを繰り返しmp4に変換するには?
このコマンドはgifをmp4に正常に変換しますが、ループが機能しないようです。
for i in *.gif; do ffmpeg -f gif -i "$i" -loop 0 "0output$i.mp4"; done
結果 mp4 を SMPlayer で再生するときに SMPlayer を繰り返すように設定すると繰り返されますが、SMplayer は繰り返しの間にジッタが発生し、スムーズに繰り返されません。
答え1
ファイルヘッダーにいくつかのビットを設定して繰り返しGIFを作成できますが(1989年以来これを行ってきました)、私が知っている限り、ファイルにはそのような機能はありません.mp4
。これらの場合、ループは追加のプレイヤー依存ファイルを介して制御されます。
.mp4
これが不足していることは、YouTubeにループがない理由でもあります。
答え2
ファイルを繰り返すことはできませんが、回避策として結果ファイルのアニメーションを5回乗算する.mp4
などの方法を使用できます。これによりファイルが5倍大きくなりますが、5つのアニメーションの間にジッタはありません。-loop 5
.mp4
答え3
ただgifをMP4に変換します。最初その後、約100回繰り返します。基本的なアイデアは同じですが、トランスコーダで複数のアニメーションGIFを提供することは明らかなアプローチではうまく機能しないようです。これを行うのではなく、1つを変換し、必要に応じて結果を繰り返します。
答え4
設定された順序で複数のgifを繰り返す方法を探している間にこれを見つけました。何秒繰り返すか言ってもいいなら
ffmpeg -ignore_loop 0 -t 50 -i giphy.gif -pix_fmt yuv420p output.mp4
ここで-t 50
、50はビデオの持続時間です。