JSON3 vs LRC:YouTube 字幕与歌词格式对比
JSON3 vs LRC:对比结构、时间精度和使用场景。免费 JSON3 转 LRC 转换器,将 YouTube 字幕转为同步歌词。
JSON3 和 LRC 解决的是完全不同的问题。JSON3 是 YouTube 的内部字幕格式,用来存储视频字幕的全部细节,包括毫秒级和词级时间。LRC 是一种轻量级歌词格式,只为一个目的而设计:在音乐播放时显示时间同步的文本。将 JSON3 转为 LRC,就是把音乐视频的 YouTube 字幕变成媒体播放器能跟随的卡拉 OK 式歌词。
JSON3 vs LRC 快速对比
| 特性 | JSON3 (YouTube) | LRC (歌词) |
|---|---|---|
| 文件扩展名 | .json3 或 .json | .lrc |
| 格式类型 | 结构化 JSON 对象 | 纯文本,每行一条 |
| 时间戳格式 | 毫秒整数 (tStartMs) | [mm:ss.xx] 方括号标签,百分秒精度 |
| 时间精度 | 毫秒,加词级偏移 (tOffsetMs) | 百分秒(2位) |
| 词级时间 | 支持,通过 tOffsetMs | 不支持,每行一个时间戳 |
| 结束时间 | 有,通过 dDurationMs | 无,仅有开始时间 |
| 多行字幕条 | 支持,每个事件可含多个文本段 | 不支持,每个时间戳单行 |
| 元数据 | 样式提示和 JSON 元数据 | 可选 ID 标签:[ti:]、[ar:]、[al:] |
| 平台支持 | 仅 YouTube | 歌词播放器和卡拉 OK 软件 |
| 主要用途 | 以最高保真度存储 YouTube 字幕 | 随音乐显示同步歌词 |
关键差异详解
时间戳与计时
JSON3 以毫秒整数记录时间,并在每个事件内支持词级偏移,是所有字幕格式中时间粒度最细的。LRC 使用 [mm:ss.xx] 方括号时间戳,只有百分秒(百分之一秒)精度,且没有结束时间。将 JSON3 转为 LRC 时,毫秒值会四舍五入为百分秒,结束时间会被舍弃,每个事件变成一条带时间戳的行。
结构与行处理
一个 JSON3 事件可以包含多个文本段,表示多行字幕条。LRC 没有多行字幕条的概念:每行歌词在开头带一个方括号时间戳,后面紧跟文本。转换意味着将多段事件压平为单行歌词条目,这对音乐歌词很自然,但失去了同时显示两行的能力。
用途与生态
JSON3 只存在于 YouTube 内部,没有任何音乐播放器、卡拉 OK 应用或媒体工具能读取它。LRC 是 foobar2000、Winamp 插件、MiniLyrics 和许多手机音乐播放器中同步歌词的事实标准。两种格式在各自的生态中从不重叠,转换就是把字幕文本从 YouTube 搬到歌词工作流的桥梁。
何时使用 JSON3
只有当你从 YouTube 提取字幕时 JSON3 才有意义,尤其是字幕跟踪人声的音乐视频。它保留了最大的时间数据,包括对卡拉 OK 式对齐有用的词级偏移。把 JSON3 当作中间格式:为保真度下载它,然后转换为 LRC 供实际播放歌词的应用使用。
何时使用 LRC
每当目标是音乐播放的同步歌词时,选择 LRC。音乐视频的字幕会变成一个有效的 LRC 文件,随音频逐行滚动显示。LRC 体积小、简单,被大多数歌词插件和卡拉 OK 软件支持。它的局限——没有结束时间、只有百分秒精度——对于每行歌词直接交接给下一行的场景几乎从不构成问题。
JSON3 转 LRC
我们的免费 JSON3 转 LRC 转换器自动处理结构和时间差异。它解析 JSON3 事件,将毫秒开始时间四舍五入为百分秒 [mm:ss.xx] 标签,把多段事件压平为单行歌词,并生成带可选元数据标签的有效 LRC 输出。所有文本都被保留,包括 Unicode、中日韩字符和 emoji。
常见问题
JSON3 可以直接当歌词用吗?
不可以。JSON3 是 YouTube 的内部格式,没有歌词应用能读取它。你必须先将 JSON3 转换为 LRC,音乐播放器或卡拉 OK 工具才能将其显示为同步歌词。
JSON3 转 LRC 会丢失时间精度吗?
会有精度损失:JSON3 的毫秒会变成 LRC 的百分秒,JSON3 的词级偏移会被舍弃,因为 LRC 每行只支持一个时间戳。结束时间在 LRC 中也无法表示。对于歌词来说,每行一个开始时间的模型几乎总是够用的。
如何从 YouTube 下载 JSON3 字幕?
使用 yt-dlp 加 --write-auto-sub --sub-format json3 参数,或通过 YouTube timedtext API 加 fmt=json3 参数。字幕跟踪人声的音乐视频是转 LRC 的最佳来源。
LRC 比 JSON3 好吗?
它们为不同目的而建。JSON3 拥有丰富得多的时间数据,但只能在 YouTube 内部使用。当你想让这些字幕在音乐播放器中显示为同步歌词时,LRC 才是正确的格式。