如何将名称中带有方括号的文件传递给 ffmpeg

如何将名称中带有方括号的文件传递给 ffmpeg

考虑这个 ffmpeg 命令

ffmpeg -i old_video.mkv -vf subtitles=old_video.mkv -acodec copy new_video.mp4

如果 old_video.mkv 的名称中没有方括号,则运行良好。但是,如果名称中有方括号(例如 [old_video].mkv),我会收到错误“使用 arg 初始化过滤器字幕时出错”

我尝试使用 1、2 到 5 \ 进行转义,但仍然不起作用

答案1

我对 ffmpeg 不是很熟悉,但从您的帖子中我可以推测“[]”字符在某种程度上是重要的。处理此问题的最直接方法可能是通过重命名文件来删除括号(括号对“mv”来说并不重要):

mv '[old_video].mkv' old_video.mkv ffmpeg -i old_video.mkv -vf subtitles=old_video.mkv -acodec copy new_video.mp4

转换后你随时可以把它们放回去...

相关内容