在ffmpeg中,如何在过滤时将文本保留在同一位置?例如缩放
用于Linux的FFmpeg
ffmpeg
-t 5
-i x.jpg -filter_complex "[0:v]drawtext=fontfile='ariblk.ttf':text='test text':fontsize=24:x=0.23333333333333*main_w: y=0.1325*main_h:fontcolor=#000000: alpha=1,zoompan=z='if(lte(zoom,1.0),1.5,max(1.001,zoom-0.0015))':d=125,fade=t=out:st=4:d=1[v0]; [v0]concat=n=1:v=1:a=0,format=yuv420p[v]"
-map "[v]"
-s "800x450"
-t 40 ./video.mp4
文本也被放大,但我希望它保持相同的大小。
答案 0 :(得分:1)
在绘制文本之前执行缩放。
ffmpeg
-i x.jpg -filter_complex "[0:v]zoompan=z='if(lte(zoom,1.0),1.5,max(1.001,zoom-0.0015))':d=125:s=800x450,drawtext=fontfile='ariblk.ttf':text='test text':fontsize=24:x=0.23333333333333*main_w:y=0.1325*main_h:fontcolor=#000000: alpha=1,fade=t=out:st=4:d=1,format=yuv420p[v]"
-map "[v]"
-t 40 ./video.mp4
不需要concat;您只有一个输入。