我有许多不同宽度和高度的视频,我需要在这些视频上叠加随机颜色。而且我不知道如何为颜色输入设置与我所有视频的大小相同的大小......
确切的颜色尺寸仅适用于具有相同尺寸的视频。但是当队列来到另一个具有不同宽度和高度的视频时,就会弹出错误。
for %%i in (*.mp4) do ffmpeg /
-i "%%i" -f lavfi -i "color=random@1:s=624x1110" /
-hide_banner -y -c:v libx264 -preset slow /
-filter_complex /
"[0:v]setsar=sar=1/1[ckout]; /
[ckout][1:v]blend=shortest=1:all_mode=overlay:all_opacity=0.05[out]" -map "[out]" "output/%%~ni.mp4"
最佳答案
使用 scale2ref 过滤器,
ffmpeg /
-i "%%i" -f lavfi -i "color=random@1:s=32x32" /
-hide_banner -y -c:v libx264 -preset slow /
-filter_complex /
"[0:v]setsar=sar=1/1[ckout];[1][ckout]scale2ref[clr][ckout]; /
[ckout][clr]blend=shortest=1:all_mode=overlay:all_opacity=0.05[out]" -map "[out]" "output/%%~ni.mp4"
或者,只需使用 drawbox 过滤器。ffmpeg -i "%%i" -hide_banner -y -c:v libx264 -preset slow /
-vf "setsar=1,drawbox=t=fill:c=random@0.05" "output/%%~ni.mp4"
关于video - 如何为输入颜色设置与视频大小相同的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65539504/