使用 ffmpeg 创建用于截取文件夹屏幕截图的 .bat

使用 ffmpeg 创建用于截取文件夹屏幕截图的 .bat

我正在寻找 ffmpeg 的 .bat 脚本,然后偶然发现了论坛上的这个帖子

有问题的代码是

for %%F in (*.mp4) do (
If not Exist "%%~nF" MkDir "%%~nF"
ffmpeg -i %%F -r 1 -qscale:v 2 %%~nF\%%~nF-%%3d.jpg
)

FFMPEG 已添加到 PATH,当我尝试在文件夹上使用此批处理脚本时,虽然创建了文件夹,但没有出现图像。

除了让屏幕截图出现在文件夹中之外,我还想知道是否有更好的命令来包含多种文件格式 - 我的大部分内容都是.mkv,但这里也有其他随机格式。

for %%F in (*.mp4, *.mkv) do (

为此工作?

我忘了补充,我不确定这是否重要,但文件位于外部硬盘驱动器(不是 C:/)上,脚本从包含文件的文件夹中运行。

很抱歉创建了新帖子,我本来想在那篇帖子中发表评论,并希望评论者能够回复,但我是一个新帐户,没有声誉。任何帮助都非常感谢,感谢您的时间!

答案1

复制的代码行ffmpeg不会保存包含空格的路径/文件名。

将 -line更改ffmpeg为以下内容:

ffmpeg -i "%%F" -r 1 -qscale:v 2 "%%~nF\%%~nF-%%3d.jpg"

请注意添加的引文。


我只是想知道是否有更好的命令来包含多种文件格式 - 我的大部分内容都是.mkv,但这里也有其他随机格式。

for %%F in (*.mp4, *.mkv) do (

为此工作?

你为什么不自己测试一下这个已知代码?测试这个绝对不是什么大事。你可以轻松地自己解决的问题是不礼貌的。——它禁止我们帮助别人。

但是是的:要通过扩展名捕获不同的文件格式,对代码最简单的更改就是您自己的建议。


更新

不幸的是,我更改了线路,但它仍然立即关闭,文件夹中没有出现任何内容

这暗示我您是通过快捷方式图标启动批处理,而不是从打开的命令 shell 中启动批处理。

要查看代码的运行情况,请打开命令 shell 并将脚本作为 shell 命令启动。请复制输出作为问题的更新。

也许您想生成视频集的小型测试结构以限制合理的输出量。

相关内容