在ffmpeg中如何在缩放等过滤时使文本保持相同位置?

时间:2019-07-12 12:04:15

标签: ffmpeg

在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

文本也被放大,但我希望它保持相同的大小。

1 个答案:

答案 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;您只有一个输入。