現在、このような GIF を再現しようとしています。
しかし、私が苦労している問題は、テキストオーバーレイ付きのGIFを作成するために次のコマンドを実行することです。
ffmpeg -ss 30 -t 3 -i input.flv -i palette.png -filter_complex \
"fps=10,scale=320:-1:flags=lanczos,drawtext="fontfile=/path/to/font.ttf: \
text='Stack Overflow': fontcolor=black: x=160: y=-1"[x];[x][1:v]paletteuse" output.gif
私はffmpegのオファーを知っています字幕しかし、テキストの位置を変更したり、毎秒異なるテキストを表示したりできるかどうかはわかりません。
複数の画像を作成してそれらを貼り付ける必要がありますか?
答え1
ffmpegにはオプションがあることがわかりましたbetween
。次のようにして、期間の描画テキストを指定できます。
ffmpeg -ss 30 -t 3 -i file.flv -filter_complex "fps=10,scale=720:-1:flags=lanczos,drawtext=enable='between(t,0,1)':fontfile=font3.ttf:text='word':fontsize=24:fontcolor=white:x=(w-tw)/2:y=(h/PHI)+th,drawtext=enable='between(t,1,2)':fontfile=font3.ttf:text='word what':fontsize=24:fontcolor=white:x=(w-tw)/2:y=(h/PHI)+th,split[x1][x2];[x1]palettegen[p];[x2][p]paletteuse" output.gif