跳到主要内容
SubtitleMatrix

SRT 转 MicroDVD

格式转换SubRip(SRT)
或者粘贴字幕文本

选项

时间按哪个帧率计算。在格式页面里,这是 MicroDVD 需要的值,因为它把时间存成帧号。在帧率页面里,它是文件当初对应的速率 —— 字幕是按这个版本做的 —— 而页面的第二个框填你要拿它配套的视频速率。常见的有 23.976、24、25、29.97、30、50、59.94 和 60。填错会让整条时间轴偏移;在帧率页面里,偏移是按比例发生的,而不是一个固定的量。

这次转换会改变什么

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

  • 帧率

    该格式以帧号存储时间——时间取决于你提供的帧率

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

这一页把 SRT 转成 MicroDVD。差别不在文字而在时间表示:MicroDVD 用帧号,不用时钟时间,所以转换前要指定帧率。

产物每行是 {起始帧}{结束帧}文本。以 25 帧/秒为例,第 4 秒是第 100 帧;帧率要设成这份字幕对应视频的帧率,设错时片头几乎看不出,越到后面偏得越多。一条两行字幕写成一行,中间用竖线 | 分隔。

丢的是对时钟时间的直接表达:时间被量化成整数帧,25 帧/秒下一帧就是 40 毫秒,不足一帧的部分无法保留;文件本身也不再记录它当初按哪个帧率生成。文字、顺序与行内格式不受影响。

一次拖入整季文件,队列串行处理、可以中途取消,最后打包成 ZIP。转换在浏览器里进行,字幕文件不上传。文字、顺序与行内标签不受影响;MICRODVD 没有编号,一行就是一条字幕。输出统一为 UTF-8、Unix 换行、无 BOM,与源文件原来的编码无关。

示例

一份典型的 SRT 文件转成 MicroDVD

输入

1
00:00:01,000 --> 00:00:03,500
Hello there.

2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.

3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.

输出

{1}{1}25
{25}{88}Hello there.
{88}{150}Whispering now.|And a second line.
{150}{231}Bold statement.

这份产物丢了时钟时间与毫秒精度:时间按帧率量化成帧号,文字与顺序保留。

同一转换遇到一份脏文件

输入

1
0:00:01,00 --> 0:00:03,500
<B>Bold</B> and <I>italic</I>.


2
00:00:03,500 --> 00:00:06,000


3
00:00:08,000 --> 00:00:09,000
Last one.

输出

{1}{1}25
{25}{88}Bold and italic.
{88}{150}
{200}{225}Last one.

脏文件里的混合换行与空字段不影响帧号换算;对照干净样例可以看出解析与量化的边界。

常见问题

SRT 转 MicroDVD 要把帧率设成多少?

设成视频本身的帧率。25 帧/秒时第 4 秒是第 100 帧;设错时片头几乎看不出偏差,越到后面越明显。

SRT 转 MicroDVD 后时间码是什么形式?

一对花括号里的帧号,例如 {100}{175},后面直接跟正文;没有编号,也没有时:分:秒。

SRT 转 MicroDVD 后毫秒精度还在吗?

不在。时间按帧率量化成整数帧,25 帧/秒下一帧就是 40 毫秒,不足一帧的部分无法保留。

SRT 转 MicroDVD 后一条两行字幕怎么写?

写成一行,两行之间用竖线分隔;MicroDVD 用这个符号表示换行,两行仍属于同一条字幕。

SRT 转 MicroDVD 会丢文字或行内标签吗?

不会。正文与行内标签原样保留,顺序按起始时间排好;丢的是时间表示方式与帧率信息本身。

MicroDVD 转回 SRT 要做什么?

重新给一次帧率。MicroDVD 文件不记录它按哪个帧率生成,读的人必须指定;帧号换回时钟时间还会再丢精度。

相关工具