跳到主要内容
SubtitleMatrix

TXT 转 JSON

格式转换纯文本稿
或者粘贴字幕文本

选项

当源文件没有结束时间时使用(纯文本、LRC)。输出里的时间轴是在这里生成的,不是转换来的,所以填多少就是多少。

这次转换会改变什么

有 1 项会被丢弃或需要你决定

  • 时间

    时间轴本身——源文件不记录任何时间,因此输出的时间轴是生成的,而不是转换来的

这份清单来自这两种格式的能力矩阵,而不是你加载的这份具体文件。如果具体文件用到了格式允许、但矩阵没有建模的特性,可能会丢得更多。

TXT 转 JSON 会给每一行文字补上起止时间:第一行从 0 开始,之后每行接着上一行的结束,每行占用的长度由页面上的“时长”参数决定,默认 2000 毫秒。写出的 JSON 是本站的文档形状——版本号加 `cues` 数组,每条 cue 有 `start`、`end` 和 `lines`,每条 cue 的 `lines` 只有一项。

因为 TXT 里没有任何时间码,这一页的有损说明只列一项:时间轴是生成的。样式、定位和卡拉OK本来就不在 TXT 里,因此没有额外损失可报,产物里也不会出现这些字段。

生成的时间轴是等间距的起点,不是与画面对齐的成品;要精确落点,可以再用平移、缩放或对轴工具调整。JSON 的好处是后续每一步都能在同一份结构上继续改,不用回到纯文本。

转换在浏览器内完成,文件不上传;批量队列把多份结果打包成一个 ZIP。

示例

一份典型的 TXT 文件转成 JSON

输入

The quick brown fox jumps over the lazy dog.

Second paragraph, first line.
Second paragraph, second line.

输出

{
  "version": 1,
  "cues": [
    {
      "start": 0,
      "end": 2000,
      "lines": [
        "The quick brown fox jumps over the lazy dog."
      ]
    },
    {
      "start": 2000,
      "end": 4000,
      "lines": [
        "Second paragraph, first line."
      ]
    },
    {
      "start": 4000,
      "end": 6000,
      "lines": [
        "Second paragraph, second line."
      ]
    }
  ]
}

这份产物丢掉了时间轴(它由本站排定);每行文字变成一条带毫秒起止的 cue。

同一转换遇到带 BOM 与空行的 TXT

输入


Hello world.

Second block.

输出

{
  "version": 1,
  "cues": [
    {
      "start": 0,
      "end": 2000,
      "lines": [
        "Hello world."
      ]
    },
    {
      "start": 2000,
      "end": 4000,
      "lines": [
        "Second block."
      ]
    }
  ]
}

真实文件常带 BOM、Windows 换行、前后空白和多层空行。可以对照上面那份干净样例,看看解析器能容忍到什么程度。

常见问题

TXT 转 JSON 的时间戳来自哪里?

由这一页生成:第一行从 0 开始,之后每行接着上一行的结束,单行长度取“时长”参数(默认 2000 毫秒)。TXT 文件里没有可读取的时间码。

TXT 转 JSON 生成的文件是什么结构?

一个带 `version` 的对象和一个 `cues` 数组。每条 cue 有整数毫秒的 `start`、`end`,正文放在 `lines` 数组里,每一行是数组中的一项。

TXT 转 JSON 时空白行怎么处理?

空白行被当作段落分隔,不生成 cue。产物里因此没有起止相同或正文为空的条目,时间轴也不会被格式上的空行撑开。

TXT 转 JSON 每行默认多长?

默认 2000 毫秒。页面上的“时长”参数可以改,所有行共用同一个值;改大后整条时间轴会按比例变长,因为槽位是首尾相接的。

TXT 转 JSON 会新增样式或定位字段吗?

不会。TXT 没有样式和坐标可继承,产物只写 `start`、`end` 和 `lines`,不凭空生成 `styles` 或 `position`。

TXT 转 JSON 的输出用什么编码?

输出固定是 UTF-8、Unix 换行符、不带 BOM。输入 TXT 若是 UTF-16 或 Windows 单字节编码,会先解码并在结果面板里说明。

相关工具