変換されたGIFアニメーションでMP4を繰り返す

変換されたGIFアニメーションでMP4を繰り返す

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はビデオの持続時間です。

関連情報