You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从config.txt读取配置变量并在批处理文件中使用?

从config.txt读取配置变量到批处理并调用FFmpeg

1. 定义config.txt的配置格式

把原来批处理里的内置变量整理成键值对形式,每行一个配置项,示例config.txt内容:

coder=libx264
bitrate=5000k
resolution=1920x1080
preset=medium
audio_coder=aac
audio_bitrate=192k

2. 修改批处理文件读取配置并执行FFmpeg

下面是修改后的完整批处理代码,核心是通过for /f循环读取配置文件,再用读取到的变量调用FFmpeg:

@echo off
setlocal enabledelayedexpansion

:: 读取config.txt中的配置项,键值对形式赋值给批处理变量
for /f "tokens=1,2 delims==" %%a in (config.txt) do (
    set "%%a=%%b"
)

:: 校验必要配置项是否存在,避免命令执行失败
if not defined coder (
    echo 错误:config.txt中未配置视频编码coder
    pause
    exit /b 1
)
if not defined bitrate (
    echo 错误:config.txt中未配置视频码率bitrate
    pause
    exit /b 1
)

:: 执行FFmpeg处理命令,替换成你的实际输入输出路径
ffmpeg -i input.mp4 ^
    -c:v !coder! -b:v !bitrate! -s !resolution! -preset !preset! ^
    -c:a !audio_coder! -b:a !audio_bitrate! ^
    output.mp4

endlocal
pause

关键细节说明

  • 延迟变量扩展:setlocal enabledelayedexpansion必须开启,这样在FFmpeg命令里用!变量名!才能正确读取到从配置文件加载的变量值(如果用%变量名%会读取批处理初始化时的空值)
  • 配置文件路径:如果config.txt不在批处理同目录,要在for /f循环里写完整路径,比如("D:\Tools\config.txt")
  • 带空格的配置值:如果配置值包含空格,在config.txt里给值加双引号,比如output_dir="D:\我的视频",使用时直接调用!output_dir!即可
  • 扩展配置:后续要加新的FFmpeg参数,直接在config.txt里添加对应的键值对,比如fps=30,然后在FFmpeg命令里加-r !fps!就行

内容的提问来源于stack exchange,提问作者Videos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 09:47:39