gpt4 book ai didi

batch-file - 循环遍历 Windows 文件夹中的文件名并将每个名称发送到 ffmpeg 命令

转载 作者:行者123 更新时间:2023-12-04 14:29:17 26 4
gpt4 key购买 nike

在 Windows 中,我想创建一个批处理文件,给定一个特定目录,它将遍历所有文件名并将它们中的每一个传递给一个命令,在我的例子中是 ffmpeg。我发现了两个或三个 ffmpeg 用于循环遍历文件夹的示例,但它们都在 Linux 中。目前我使用 python 脚本来执行此操作:

import os
import subprocess

sourcedir = "G:\Animation\Anime\OnePiece\Episodes\Main"
outputdir = "G:\Animation\Anime\OnePiece\Episodes\Converted"

for file in os.listdir(sourcedir):
name = file[:file.rfind(".")]
subprocess.call("ffmpeg -i " + sourcedir + "\\" + name + ".mkv -s 640x480 -map 0 -vcodec libx265 "+ outputdir + "\\" + name + ".mkv")

即使直接通过 Windows 批处理文件而不是通过 Python 运行它可以将视频编码所需的时间减少 10 秒,它确实可以节省我几个小时。

只是想一想,在 Cygwin 上使用 bash 命令会更好吗?

最佳答案

这应该会让你接近。我不太了解 ffmpeg 的语法。

 @echo off
set "sourcedir=G:\Animation\Anime\OnePiece\Episodes\Main"
set "outputdir=G:\Animation\Anime\OnePiece\Episodes\Converted"

PUSHD "%sourcedir%"

for %%F in (*.mkv) DO ffmpeg -i "%%F" -s 640x480 -map 0 -vcodec libx265 "%outputdir%\%%F"

POPD

关于batch-file - 循环遍历 Windows 文件夹中的文件名并将每个名称发送到 ffmpeg 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38776049/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com