我当前的命令如下:
-i Video.mp4 -i Image.png -filter_complex [1:v][0:v]scale2ref=iw:ih[ovr][base];[ovr]colorchannelmixer=aa=0.7[ovrl];[base][ovrl]overlay[v] -map [v] -ss valueLeft -to valueRight -c:v libx264 -preset ultrafast Output.mp4
我问了一个关于如何更快地导出图像的问题,你可以阅读更多相关信息这里。他建议我应该把我的放在-ss
前面-i
以进行快速搜索,而且效果很好。
然后我尝试通过以下方式修剪视频:
-ss valueLeft -i Video.mp4 -i Image.png -to valueRight -filter_complex [1:v][0:v]scale2ref=iw:ih[ovr][base];[ovr]colorchannelmixer=aa=0.7[ovrl];[base][ovrl]overlay[v] -map [v] -c:v libx264 -preset ultrafast Output.mp4
然后-to
就会被忽略。
我也尝试过这个-
-ss valueLeft -i Video.mp4 -to valueRight -i Image.png -filter_complex [1:v][0:v]scale2ref=iw:ih[ovr][base];[ovr]colorchannelmixer=aa=0.7[ovrl];[base][ovrl]overlay[v] -map [v] -c:v libx264 -preset ultrafast Output.mp4
在我的日志中显示这一点:
Image.png -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to.
有人可以帮我以正确的方式做到这一点吗?
答案1
该方法-to
已实现,但只能在有限的情况下使用,例如执行慢速寻道或复制时间戳时。使用快速寻道时,第一个输入帧的输出时间戳会重置为 0,因此-to
毫无用处。
解决方法是使用-t
其值为-to
时间 --ss
时间。