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

使用Mediainfo CLI制作Windows批处理脚本自动归一化文件夹内MKV音频

自动匹配音频参数的MKV响度归一化Windows批处理脚本

以下是可直接使用的完整批处理代码,保存为.bat后缀文件即可运行:

@echo off
setlocal enabledelayedexpansion

:: 遍历当前目录下所有mkv文件
for /f "tokens=*" %%G in ('dir /b *.mkv 2^>nul') do (
    echo 正在处理文件:%%G
    :: 读取音频位深度
    for /f %%a in ('mediainfo --Inform=Audio;%%BitDepth%% "%%G" 2^>nul') do set "bit_depth=%%a"
    :: 读取音频采样率
    for /f %%b in ('mediainfo --Inform=Audio;%%SamplingRate%% "%%G" 2^>nul') do set "sample_rate=%%b"
    
    :: 匹配对应音频编码
    if "!bit_depth!"=="16" (
        set "audio_codec=pcm_s16le"
    ) else if "!bit_depth!"=="24" (
        set "audio_codec=pcm_s24le"
    ) else (
        echo 不支持的位深度!bit_depth!,跳过文件%%G
        goto next_file
    )
    
    :: 执行响度归一化
    echo 位深度:!bit_depth!,采样率:!sample_rate!,开始归一化处理
    ffmpeg-normalize -c:a !audio_codec! -ar !sample_rate! "%%G"
    
    :next_file
    echo.
)

echo 所有文件处理完成
pause
endlocal

使用说明

  • 前置依赖:mediainfo命令行工具、ffmpeg、ffmpeg-normalize均已添加到系统环境变量PATH中,可直接在CMD中调用
  • 脚本默认仅处理当前目录下的.mkv格式文件,如需处理其他格式,可将代码中dir /b *.mkv的后缀修改为对应格式即可
  • 脚本会自动跳过位深度不为16/24的异常文件,执行过程中会输出当前处理的文件参数,方便排查问题
  • 归一化后的输出文件默认保存在脚本自动生成的normalized文件夹中,与原文件同名

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 00:15:01