问题描述
我正在尝试在xstack镶嵌图上使用drawtext。一直说Filter drawtext具有未连接的输出。这是命令行。
ffmpeg -i test1.mp4 -i test2.mp4 -i test3.mp4 -i test4.mp4 -i test5.mp4 -filter_complex "[0]drawtext=text='vid0':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2[a0];[1]drawtext=text='vid1':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2[a1];[2]drawtext=text='vid2':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2[a2];[3]drawtext=text='vid3':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2[a3];[4]drawtext=text='vid4':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2[a4];[0:v] setpts=PTS-STARTPTS,scale=qvga [a0];[1:v] setpts=PTS-STARTPTS,scale=qvga [a1];[2:v] setpts=PTS-STARTPTS,scale=qvga [a2];[3:v] setpts=PTS-STARTPTS,scale=qvga [a3];[3:v] setpts=PTS-STARTPTS,scale=qvga [a4];[a0][a1][a2][a3][a4]xstack=inputs=5:layout=0_0|0_h0|w0_0|w0_h0|w0+w1_h1:fill=black[out]" -map "[out]" -c:v libx264 testout4in.mp4
解决方法
在比例尺后立即放置每个绘画文字:
ffmpeg -i test1.mp4 -i test2.mp4 -i test3.mp4 -i test4.mp4 -i test5.mp4 -filter_complex "[0:v] setpts=PTS-STARTPTS,scale=qvga,drawtext=text='vid0':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2 [a0];[1:v] setpts=PTS-STARTPTS,drawtext=text='vid1':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2 [a1];[2:v] setpts=PTS-STARTPTS,drawtext=text='vid2':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2 [a2];[3:v] setpts=PTS-STARTPTS,drawtext=text='vid3':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2 [a3];[3:v] setpts=PTS-STARTPTS,drawtext=text='vid4':fontsize=20:x=(w-text_w)/2:y=(h-text_h)/2 [a4];[a0][a1][a2][a3][a4]xstack=inputs=5:layout=0_0|0_h0|w0_0|w0_h0|w0+w1_h1:fill=black[out]" -map "[out]" -c:v libx264 testout4in.mp4