【这是什么】
一个批量改名工具。原有 6 条通用规则(查找替换 / 截断 / 大小写 / 时间戳 /
序号 / 前后缀),外加一条「按内容生成名称」——用 ffprobe 扫描视频文件的
真实内容,生成规范化的文件名:
Suzumiya Haruhi no Yuuutsu [26] [Ma10p_2160p] [x265_3flac_ass].mkv
└─ 标题 ─────────────────┘ └集┘└─来源+位深_分辨率─┘└─编码_音频_字幕─┘
【便携版说明】
整个文件夹可以整体复制到 U 盘或别的电脑,双击「批量重命名.exe」即可。
批量重命名.exe 主程序(绿色,不写注册表)
ffprobe.exe 内置的媒体探测后端(「按内容生成」要用它)
src\ 源码 + 构建脚本(可删,不影响使用)
使用说明.txt 本文件
依赖:Windows 自带的 .NET Framework 4.x。全文件夹约 94 MB,其中绝大部分
是 ffprobe.exe —— 有了它才不用依赖别的电脑上装没装 ffmpeg。
【怎么用】
- 选文件夹(可勾「包含子文件夹」)。
「只处理媒体文件」默认勾上,非视频/音频的文件会被跳过、名字不动。
★ 2.0 新增:可以直接把文件夹(或文件夹里的任意文件)拖进窗口,
会自动填好文件夹并刷新预览。 - 勾选要用的规则。加法和乘法一样的直觉:按 1→7 的顺序依次作用在文件名上,
扩展名始终不动。改了任何选项,下面的预览会立刻刷新。 - 「7. 按内容生成名称」是主角,默认开着:
压制组/来源 填一个固定前缀,默认 Ma(拼出来就是 Ma10p)。
也可以填 WebRip / BD / 留空。
集数 / 分辨率 / 位深 / 视频编码 / 音频 / 字幕
每一段都可以单独关掉。默认全开。
保留原文件名开头的 [组名]
勾上会把 [MAI] 这类前缀保留在新名字开头。 - 看预览确认无误 → 点「执行重命名」。执行后可以用「撤销上次」恢复。
【各段是怎么来的】
片段 来源
──────────────── ──────────────────────────────────────────
标题 原文件名去掉所有 […] 标签后的内容
顺带会清掉下载残留的结尾 (1) (2)
集数 优先取 [数字];其次 第N话;再次 – N
来源 + 位深p 「压制组/来源」填的文本 + 视频像素位深(10bit → Ma10p)
分辨率 视频高度(2160 → 2160p)
视频编码 hevc→x265 h264→x264 av1/vp9/vc1 按原样
音频 轨道数 + 去重后的编码:3 条 flac → 3flac
flac+ac3 → 2flac_ac3
字幕 编码,多条时带数量:2 条 srt → srtx2
PCM 音频统一写成 pcm(ffprobe 原本会给出 pcm_s24le 这种带位深的写法,
那是音频位深,不属于编码格式,所以文件名里不显示它)。
【举个例子】
改名前:
BLACK SHOUT.mkv
扫描到:HEVC 2160p 10bit | 2 音轨 (pcm/flac)
改名后:
BLACK SHOUT [Ma10p_2160p][x265_2pcm_flac].mkv
改名前:
[MAI] BanG Dream!YUME∞MITA [07][WebRip 2160p HEVC-10bit AAC SRTx2].mkv
扫描到:HEVC 2160p 10bit | 1 音轨 (aac) | 2 字幕 (srt/srt)
改名后:
BanG Dream!YUME∞MITA [07][Ma10p_2160p][x265_1aac_srtx2].mkv
(勾上「保留 [组名]」则前缀会变回 [MAI])
【安全措施】
· 预览阶段绝对不动文件,只有点「执行重命名」并确认后才会真正改名。
· 遇到重名会自动加 (1) (2) 后缀,并在「状态」列标出来。
· 执行时走「先改成临时名 → 再改成目标名」两步,所以 A↔B 互换名字也能成功。
中途出错会自动把已经改的滚回去。
· 「撤销上次」可以整批恢复最近一次操作。
【命令行 / 自动化】
本工具是纯 GUI 的。如果你要在脚本里批量调用,可以直接用内置的 ffprobe
自己拼命令,例如列出文件里每条流的编码:
ffprobe.exe -v error -print_format json -show_streams "影片.mkv"
【重新编译(可选)】
源码在 src\ 目录,用 Windows 自带的 C# 编译器构建,不需要装任何 SDK:
powershell -ExecutionPolicy Bypass -File src\build-rename.ps1
产物会输出到本目录下的 批量重命名.exe。
src\BatchRename.原始版备份.cs 是改造前的原始版本,留着以防万一。
【常见问题】
Q: 提示「ffprobe: 未找到」怎么办?
A: 「7. 按内容生成名称」需要 ffprobe.exe。便携版已经内置在同目录下,
正常不会出现。若你把它删了,从别处复制一份 ffprobe.exe 放回本目录即可。
Q: 处理很多大文件时预览有点慢?
A: 每个文件都要调一次 ffprobe 读头部(只读头部,不解码,通常几十毫秒)。
扫描结果按「路径 + 修改时间」缓存,反复刷新不会重复扫。
不需要扫描时把「7.」关掉即可,前 6 条规则是纯字符串操作,瞬间完成。
Q: 我不想让它动我的番剧文件名(已经是规范的了)。
A: 把「7.」关掉,只用前 6 条规则。或者保持开启——对已经符合规范的文件,
重新生成的名字通常和原名一致,预览里「状态」为空、不计数,也就不会动它。
Q: 生成的音频段太长(比如 7flac_ac3_dts_truehd_pcm_eac3)。
A: 那是文件里真的有这么多条音轨(扫描结果如实反映内容,可能和旧文件名不符)。
不想要就把「音频」那一段取消勾选。