中文字幕乱码怎么修?
先看“乱码长什么样”。文字变成奇怪字符,和中文正常但出现方框,通常不是同一种问题;直接改扩展名也不会修复字符编码。
先按症状定位问题
别把三类问题都叫“乱码”
| 画面上看到什么 | 优先排查 |
|---|---|
| “䏿–‡”这类异常字符 | 字幕文本被用错误编码解读。 |
| 方框或空白字形 | 字体缺字或字形渲染问题。 |
| 时间正常但字幕内容对不上 | 字幕版本、时间轴或片源剪辑不同。 |
| 症状 | 优先怀疑 |
|---|---|
| 汉字变成成串奇怪字符 | 字幕文件被用错误字符编码读取 |
| 大量出现 � | 解码失败后产生替换字符,原始字节可能已经被错误保存 |
| 中文大部分正确,但某些字显示 □ | 字体缺少对应字形,而不是文本编码 |
| SRT 正常、ASS 异常 | 字体、样式、ASS 渲染或内嵌字体问题 |
| 文字正常但时间不对 | 这是时间轴问题,不是编码问题 |
转换编码时按“正确读取,再另存”为 UTF-8
- 先备份原字幕,不要在唯一文件上反复覆盖。
- 用 Subtitle Edit 或能明确选择编码的文本工具打开。
- 如果显示错误,切换候选原始编码,直到中文内容正确。
- 确认内容正确后,再另存为 UTF-8。
- 回到实际播放器测试;如果只有方框,转去检查字体。
“把 .txt 改成 .srt”或“强行按 UTF-8 保存乱码文本”都不会恢复已经被错误解码并覆盖的字符。
编码和字幕格式是两件事
SRT、ASS 描述的是字幕文件格式;UTF-8、GBK、Big5 等描述的是文本字符如何编码。格式选对但编码读错,照样会乱码。不同字幕格式的用途见SRT、ASS 等字幕格式区别。
播放器能临时指定编码,但修文件更适合用字幕工具
mpv 提供字幕 codepage 相关选项,适合验证“是不是读取编码问题”;需要长期修复文件时,使用 Subtitle Edit 这类字幕编辑器正确读取并另存通常更稳妥。
参考:mpv 字幕选项 · Subtitle Edit 项目
什么时候可能已经无法无损恢复
如果字幕曾在错误编码下打开后又覆盖保存,原始字节可能已经丢失;大量出现替换字符“�”尤其需要警惕。此时继续切换编码未必能恢复,优先从备份、原始下载或版本历史找回未被覆盖的文件。