来自 VBS 的 FFMPEG

标签 ffmpeg vbscript

我在从 VBS 运行 ffmpeg 时遇到问题,如下所示:

Cmd = "cmd.exe /K " & Chr(34) & """C:\Users\admin\Documents\ffmpeg\bin\ffmpeg.exe""" & Chr(34) & " -i " & Chr(34) & """C:\Users\admin\Documents\TestFiles\3000012936-TXMHD.mxf""" & Chr(34) & " -vcodec copy -acodec copy " & Chr(34) & """C:\Users\admin\Documents\TestFiles\3000012936-TXMHD.mp4""" & Chr(34) '& " 2> " & Chr(34) & "LogFile.txt" & Chr(34)

objShell.Run Cmd, 10, True
我收到错误:The system cannot find the path specified输入/输出文件的路径正确。我猜这似乎是一个转义序列问题。可以请一些人指出。

最佳答案

尝试这个;

Cmd = "cmd.exe /K ""C:\Users\admin\Documents\ffmpeg\bin\ffmpeg.exe"" -i ""C:\Users\admin\Documents\TestFiles\3000012936-TXMHD.mxf"" -vcodec copy -acodec copy ""C:\Users\admin\Documents\TestFiles\3000012936-TXMHD.mp4"" 2> LogFile.txt"
将等同于命令行;
cmd.exe /K "C:\Users\admin\Documents\ffmpeg\bin\ffmpeg.exe" -i "C:\Users\admin\Documents\TestFiles\3000012936-TXMHD.mxf" -vcodec copy -acodec copy "C:\Users\admin\Documents\TestFiles\3000012936-TXMHD.mp4" 2> LogFile.txt
该问题是由添加 Chr(34) 引起的(文字双引号)当双引号已经被 "" 转义时的字符串(加倍)。

有用的链接
  • Answer from About using Double quotes in Vbscript (详细说明如何在字符串中使用双引号)。
  • 关于来自 VBS 的 FFMPEG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63899526/

    相关文章:

    Python Youtube-dl 转换为 mp4

    vbscript - 为什么此 VBS 代码会失败并出现 "Type mismatch: ' CInt'"错误?

    vbscript - 响应重定向上一页经典 asp

    javascript - 添加新行时将焦点设置到 div 内表的末尾

    video - 相机的pts和dts跳转问题

    python - OpenCV3.1 编译错误 'ffmpeg/avformat.h' 找不到文件

    android - 交叉编译 librtmp for android

    excel - 如何从 VBScript 关闭 Excel 文件而不提示?

    javascript - 正则表达式拆分 iif 表达式

    c++ - FFMPEG:初始化过滤器时 avfilter_graph_create_filter 方法失败