我想添加一个1920 x 1080图像到720p和1080p视频从0到5秒(源将是不同的分辨率),并添加另一个图像相同的分辨率到秒10到15秒和另一个图像到20到25秒
我用
ffmpeg -i 1080.mp4 -i id1.png -i id2.png -i id3.png -map_metadata -1
-s hd720 -c:v h264
-crf 26
-c:a aac -b:a 128k -strict -2
-preset veryfast
-filter_complex "[0:v][1:v] overlay=0:0:enable='between(t,0,5)' [tmp]; [tmp][2:v] overlay=0:0:enable='between(t,10,15)'[tmp];
[tmp][3:v] overlay=0:0:enable='between(t,20,25)'" 720p.mp4
问题是源大小,我不知道如何在我的代码中使用scale2ref=w=oh*mdar:h=ih*1.0
使用scale2ref过滤器:
ffmpeg -i 1080.mp4 -i id1.png -i id2.png -i id3.png -map_metadata -1 -c:v h264 -crf 26 -c:a aac -b:a 128k -preset veryfast -filter_complex "[0:v]scale=-2:720[ref1];[1][ref1]scale2ref=w=oh*mdar:h=ih[id1][ref2];[2][ref2]scale2ref=w=oh*mdar:h=ih[id2][ref3];[3][ref3]scale2ref=w=oh*mdar:h=ih[id3][bg];[bg][id1]overlay=0:0:enable='between(t,0,5)'[bg2];[bg2][id2]overlay=0:0:enable='between(t,10,15)'[bg3];[bg3][id3]overlay=0:0:enable='between(t,20,25)'" -movflags +faststart 720p.mp4