FFMPEG 命令在 PowerShell 中有效,但在批处理文件中无效
FFMPEG command works in PowerShell but not in a batch file
只是尝试在 .bat 文件中使用 ffmpeg 从视频文件中提取帧,但它不起作用:
ffmpeg -i video.mp4 -qscale:v 1 -qmin 1 -qmax 1 -vsync 0 tmp_frames/frame%08d.jpg
错误信息:
Unable to find a suitable output format for '.\tmp_frames\frameC:\Test'
.\tmp_frames\frameC:\Test: Invalid argument
此命令本身在 PowerShell 中运行良好,但 运行 作为批处理文件会产生上述错误。
关于如何在批处理文件中解决这个问题有什么想法吗?
...frame%08d.jpg
:%0
将被当前批处理文件名替换,因此
'.\tmp_frames\frameC:\Test'
在.bat
文件中,必须使用%
的转义码,即%%
ffmpeg -i video.mp4 -qscale:v 1 -qmin 1 -qmax 1 -vsync 0 tmp_frames/frame%%08d.jpg
只是尝试在 .bat 文件中使用 ffmpeg 从视频文件中提取帧,但它不起作用:
ffmpeg -i video.mp4 -qscale:v 1 -qmin 1 -qmax 1 -vsync 0 tmp_frames/frame%08d.jpg
错误信息:
Unable to find a suitable output format for '.\tmp_frames\frameC:\Test' .\tmp_frames\frameC:\Test: Invalid argument
此命令本身在 PowerShell 中运行良好,但 运行 作为批处理文件会产生上述错误。
关于如何在批处理文件中解决这个问题有什么想法吗?
...frame%08d.jpg
:%0
将被当前批处理文件名替换,因此
'.\tmp_frames\frameC:\Test'
在.bat
文件中,必须使用%
的转义码,即%%
ffmpeg -i video.mp4 -qscale:v 1 -qmin 1 -qmax 1 -vsync 0 tmp_frames/frame%%08d.jpg