是否有更简单的方法来实现这一点?,我想创建一个。bat文件,修改148个视频,尺寸为3840x2160
属于七彩平台视频集1.8.0
每个视频中间都有一个系统或控制台,它有一个纯色作为背景。我想保持分辨率,3840x2160,但我需要将图像向右移动15%,所以有必要用与背景颜色相同的颜色填充左侧区域。
这是其中一个视频的快照:
原视频快照
结果应该像这样:
快照的视频我想买
到目前为止,我尝试了很多事情都没有成功,我可能比实际做得更难。我做了第一个剪辑视频的脚本:for %%X in (*.mp4) do .ffmpegbinffmpeg.exe -threads 4 -i "%%X" -filter:v "crop=2688:ih" -c:a copy -threads 4 "second_script%%X"
新视频将存储在second_script文件夹中,然后有第二个脚本,将使用ffmpeg从视频和magic .exe中导出图片,将帮助我识别颜色,之后它将再次使用ffmpeg添加该颜色,但是…由于某些原因,我不知道颜色结果是不一样的
for %%X in (*.mp4) do (
..ffmpegbinffmpeg.exe -threads 4 -i "%%X" -vf "select=eq(n,100)" -vframes 1 %%~nX.png
magick.exe .%%~nX.png -format "%%[hex:u.p{0,0}]" info: > temp.txt
for /f "delims=" %%i in (temp.txt) do (
..ffmpegbinffmpeg.exe -threads 4 -i "%%X" -filter_complex "[0]pad = w=3840 : h=ih: x=3840-2688 : y=0 : color=#%%i" -movflags +faststart -c:a copy -threads 4 "final%%X"
)
)
我得到的结果是这样的:
最终结果,它看起来不像我期望的
是否有简单的方法来做到这一点?如有任何建议,非常感谢。
您可以在一个命令中完成,像这样
ffmpeg -i in.mp4 -vf "split=2[bg][img];[bg]trim=end_frame=1,crop=128:ih,scale=3840:2160:flags=neighbor,setsar=1[bg];[bg][img]overlay=w=0.15*W:h=0" -c:a copy out.mp4