我试图绕过 Windows 中命令行长度的 32767 个字符限制(有时会小于该限制)。我有很多盒子,我想在视频上绘制它们。通常,我可以使用逗号 ( ,) 连接绘制命令,如下所示(以下命令绘制两个框):
ffmpeg -i input.mp4 -vf "drawbox=enable='between(t, 1.5, 4)' : x=100 : y=100 : w=200 : h=200 : color=green,drawbox=enable='between(t, 9, 18)' : x=500 : y=10 : w=150 : h=150 : color=red" -codec:a copy output.mp4
Run Code Online (Sandbox Code Playgroud)
然而,由于我有很多框要绘制,整个命令的长度变得太大。
FFmpeg 是否提供了一种在文本文件中传递所有参数而不是文字文本的方法?像这样的东西:
ffmpeg content(ffmpegCmd.txt)
Run Code Online (Sandbox Code Playgroud)
如果这是不可能的,是否可以将参数“缓冲”到单独的命令中,同时仅在最后一个命令中导出结果?
FFmpeg 是否提供了一种在文本文件中传递所有参数而不是文字文本的方法?
使用该-filter_complex_script选项。从文档中:
-filter_complex_script filename(全球的)该选项与 -filter_complex 类似,唯一的区别是它的参数是要从中读取复杂过滤器图描述的文件的名称。
基本示例:
ffmpeg -i input -filter_complex_script filters.txt output
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4158 次 |
| 最近记录: |