나는 현재 이와 같은 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