Skip to content

YouTube JSON 转 LRC 歌词在线

将 YouTube JSON3 格式的字幕文件提取转换为 LRC 歌词,在音乐播放器中实时滚动显示。

拖放您的 JSON 文件到这里

或点击浏览

支持最大 50 MB 的 .json, .json3, .xml, .html 文件

转换引擎架构

关于 JSON 转 LRC

YouTube 通过 timedtext API 提供的 JSON3 格式字幕包含 events 数组,每个事件带有毫秒级起始时间和文本片段。本工具解析 JSON3 结构,提取每个事件的起始时间戳和文本,输出标准的 [MM:SS.xx] 格式 LRC 歌词文件,可在 foobar2000、AIMP、Poweramp 等音乐播放器中使用。

代码级语法透视

JSON 到 LRC 语法结构与代码转换示例

直观对比转换前后文件头、时间轴标记与对白文本的代码级语法对应关系

毫秒级同步
input.json
JSON 源格式
{
"events": [
{ "tStartMs": 1000, "dDurationMs": 3000,
"segs": [{ "utf8": "Hello, world!" }] },
{ "tStartMs": 4500, "dDurationMs": 3500,
"segs": [{ "utf8": "This is a subtitle file." }] }
]
}
output.lrc
LRC 转换结果
[00:01.00]Hello, world!
[00:04.50]This is a subtitle file.
[00:08.50]Converted locally!
规范手册

JSON 与 LRC 格式规范深度解析

符合通用标准规范
输入格式

JSON

JSON

JSON3 是 YouTube 内部使用的字幕格式,通过 timedtext API 导出。文件为 JSON 结构,包含 events 数组,每个事件有 tStartMs(起始毫秒)、dDurationMs(持续毫秒)和 segs(文本片段数组)。用户通常通过 youtube-dl、yt-dlp 等工具下载此格式。

输出格式

LRC

LRC

LRC(.lrc)是一种同步歌词格式,在音乐播放器中逐行显示文本。每行以 [MM:SS.xx] 时间标签开头,不存储结束时间——播放器会自动跳到下一行。

格式差异

JSON3 使用 tStartMs 毫秒整数;LRC 使用 [MM:SS.xx] 时间标签
JSON3 是 JSON 结构化数据;LRC 是带时间标签的纯文本
JSON3 存储持续时间和文本片段数组;LRC 只存储起始时间和单行文本
JSON3 是 YouTube 专有格式;LRC 是通用歌词标准
JSON3 面向 YouTube 视频系统设计;LRC 面向音乐播放器设计
JSON3 文件通常较大(JSON 开销);LRC 更紧凑高效

常见疑难与故障排查

针对播放器兼容性、字符乱码与时间轴同步的实操排查指南

4 个常见问题
GOTCHA #1

转换后的字幕在电视或播放器上出现时间漂移或音画不同步?

不同视频流媒体可能采用不同帧率(如 23.976 fps 与 25 fps 差异)。如果时间轴整体偏移,可在本站使用「字幕时间轴同步」工具快速进行全局微调。

GOTCHA #2

字幕在播放器中显示为乱码(Mojibake)或问号?

老旧文件可能采用 GBK、ANSI 或 Shift-JIS 编码。本站输出文件统一标准化为 UTF-8 编码。若原文件损坏,请先使用本站「字符编码转换器」修复。

GOTCHA #3

多角色同时说话时字幕层叠或遮挡画面?

不同格式对多行或重叠台词的处理机制不同。您可以在本站在线工作台中微调特定字幕行的时间轴,避免文字垂直堆叠遮挡画面。

GOTCHA #4

文件在剪辑软件(如 Premiere Pro、Final Cut)中导入报错?

专业剪辑软件对时间戳格式及换行符敏感。本工具输出的文件严格遵循行业规范,以支持主流剪辑工作流。

功能特性

自动解析 YouTube JSON3 events 数组和 segs 文本片段
将毫秒时间戳精确转换为 LRC [MM:SS.xx] 格式
输出兼容 foobar2000、AIMP、Poweramp、MiniLyrics
客户端处理——文件永远不会离开您的设备
支持 UTF-8 编码,适配中日韩等非拉丁字符
浏览器本地处理 · 文件不离设备
免费使用,无需注册,无水印,单个文件最大 50 MB。

为什么需要转换?

YouTube 自动字幕通过 yt-dlp 下载为 JSON3 格式,但音乐播放器需要 LRC 才能显示同步歌词。
JSON3 是 YouTube 专有格式,只有 YouTube 相关工具能解析;LRC 是通用歌词格式,几乎所有播放器都支持。
JSON3 包含 dDurationMs 持续时间数据,但 LRC 只需要起始时间——转换后文件更简洁。
foobar2000、Poweramp 和 Musicolet 等音乐播放器不支持 JSON3,需要 LRC 格式才能同步显示歌词。
从 YouTube 音乐视频提取音频后,需要将 JSON3 字幕转为 LRC 才能在音频播放器中使用同步歌词。
语言学习应用在音频播放时显示同步歌词,期望 LRC 格式而非 YouTube 的 JSON3。
Discord 音乐机器人和歌词覆盖层使用 LRC 格式在播放时显示文本,不支持 JSON3。
Scenarios

常见用途

YouTube 音乐歌词提取

YouTube 自动字幕下载为 JSON3,但音乐播放器需要 LRC。将 JSON3 转为 LRC,将 YouTube 字幕转为 foobar2000、AIMP、Poweramp 的同步歌词。

yt-dlp 字幕转歌词

yt-dlp 下载的 YouTube 字幕通常为 JSON3 格式。将 JSON3 转为 LRC,即可在音频播放器中复用为同步歌词。

语言学习素材制作

YouTube 教育视频的 JSON3 字幕可转为 LRC,在语言学习应用中配合音频播放显示同步文本。

Discord 机器人歌词

Discord 音乐机器人使用 LRC 格式在播放时显示同步歌词。将 YouTube JSON3 字幕转为 LRC 即可接入。

移动音乐播放器

大多数移动音乐播放器支持 LRC 同步歌词。将从 YouTube 下载的 JSON3 字幕转为 LRC,在 iOS 和 Android 音乐应用中使用。

Format Ecosystem

相关格式

工作原理

  1. 1

    上传或拖拽您的 .json 文件到工具区域。

  2. 2

    解析器读取 JSON 结构,遍历 events 数组。

  3. 3

    每个事件的 tStartMs 毫秒值被转换为 LRC 紧凑的 [mm:ss.xx] 时间戳。

  4. 4

    segs 数组中的 utf8 文本片段被拼接为单行歌词文本。

  5. 5

    没有 segs 的纯时间标记事件被跳过。

  6. 6

    生成的 .lrc 文件每行包含一个时间戳和对应歌词文本。

常见问题

JSON3 是 YouTube 内部使用的字幕格式。它通过 timedtext API 提供,文件为 JSON 结构,包含 events 数组。每个事件有 tStartMs(起始毫秒)、dDurationMs(持续毫秒)和 segs(文本片段数组,每个片段有 utf8 字段)。

可以。生成的 LRC 符合标准格式规范,配合 foobar2000(ESLyric)、AIMP、Poweramp 等播放器,将歌词文件名命名为与音频一致即可滚动显示。

YouTube JSON3 中有些事件只包含时间信息(如 aAppend 标记)而没有文本片段。这些事件在转换时会被自动跳过,不会影响 LRC 输出。

使用 yt-dlp 命令:yt-dlp --write-auto-sub --sub-format json3 <视频URL>。下载的 .json3 文件可直接导入本工具转换。也可通过浏览器访问 YouTube timedtext API 获取。

每个事件的 segs 数组中的多个 utf8 文本片段会被自动拼接为一行 LRC 歌词文本。例如两个片段 "Hello " 和 "world" 会合并为 "Hello world"。

LRC 是音乐播放器用于在播放音乐或有声书时显示同步文字的歌词格式。每行以 [MM:SS.xx] 时间标签开头。

准备好转换您的字幕了吗?

将您的 JSON 文件拖放到这里,立即转换为 LRC。