我有一个srt字幕文件,见下文。
1
00:00:06,840 --> 00:00:10,320
once long ago in the deep blue below
2
00:00:12,360 --> 00:00:14,370
Don't be silly, Gran Mother
3
00:00:14,870 --> 00:00:16,700
Everybody knows there's no such thing as
4
00:00:16,700 --> 00:00:17,200
Mermaids
5
00:00:17,620 --> 00:00:21,570
You wouldn't say that if you has meet one. You've meet a Mermaid
6
00:00:24,250 --> 00:00:25,180
This just came in
7
00:00:25,480 --> 00:00:26,630
I wanted to take priority
8
00:00:27,180 --> 00:00:28,500
And we followed stories like this before
9
00:00:28,640 --> 00:00:31,620
Would witches working mummies. No not like this
10
00:00:31,630 --> 00:00:33,190
Hundreds of people are testifying
11
00:00:33,370 --> 00:00:34,600
Welcome to Mississippi
12
00:00:42,390 --> 00:00:47,270
There's a powerful magic in you the spirit of the ocean
13
00:00:47,690 --> 00:00:53,940
Let me introduce you to your dreams, The Little Mermaid, off the Mississippi
14
00:01:01,880 --> 00:01:03,580
She was so beautiful
15
00:01:04,040 --> 00:01:05,270
And I know she was real
16
00:01:07,850 --> 00:01:08,550
I'm skeptical
17
00:01:13,460 --> 00:01:14,410
You shouldn't be here
18
00:01:17,560 --> 00:01:24,130
Mermaids do not exist
19
00:01:31,420 --> 00:01:34,300
Look isn't it beautiful? Sorry I have to go.
20
00:01:35,340 --> 00:01:48,570
Elizabeth, How can this be? It's Lock he knows i'm here he summoned me.
21
00:01:48,570 --> 00:01:50,570
We have to save here.
22
00:02:03,570 --> 00:02:05,570
Here soul is mine
23
00:02:05,570 --> 00:02:06,570
Take it
24
00:02:10,570 --> 00:02:12,570
It's the only way
25
00:02:15,000 --> 00:02:17,570
I believe
26
00:02:23,000 --> 00:02:25,570
Mississippi has always been magic
27
00:02:36,000 --> 00:02:38,000
Elizabeth please
如果我使用AWS Media convert将其添加到我的播放列表中,则会输出以下内容。
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:300
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:170,
masterCaptionsEnglish/English.vtt
#EXT-X-ENDLIST
WebVTT文件如下所示。
WEBVTT #Elemental Media Engine(TM) 2.16.0.602399
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:191970
00:00:06.840 --> 00:00:10.320
once long ago in the deep blue below
00:00:12.360 --> 00:00:14.370
Don't be silly, Gran Mother
00:00:14.870 --> 00:00:16.700
Everybody knows there's no such thing as
00:00:16.700 --> 00:00:17.200
Mermaids
00:00:17.620 --> 00:00:21.570
You wouldn't say that if you has meet one. You've meet a Mermaid
00:00:24.250 --> 00:00:25.180
This just came in
00:00:25.480 --> 00:00:26.630
I wanted to take priority
00:00:27.180 --> 00:00:28.500
And we followed stories like this before
00:00:28.640 --> 00:00:31.620
Would witches working mummies. No not like this
00:00:31.630 --> 00:00:33.190
Hundreds of people are testifying
00:00:33.370 --> 00:00:34.600
Welcome to Mississippi
00:00:42.390 --> 00:00:47.270
There's a powerful magic in you the spirit of the ocean
00:00:47.690 --> 00:00:53.940
Let me introduce you to your dreams, The Little Mermaid, off the Mississippi
00:01:01.880 --> 00:01:03.580
She was so beautiful
00:01:04.040 --> 00:01:05.270
And I know she was real
00:01:07.850 --> 00:01:08.550
I'm skeptical
00:01:13.460 --> 00:01:14.410
You shouldn't be here
00:01:17.560 --> 00:01:24.130
Mermaids do not exist
00:01:31.420 --> 00:01:34.300
Look isn't it beautiful? Sorry I have to go.
00:01:35.340 --> 00:01:48.570
Elizabeth, How can this be? It's Lock he knows i'm here he summoned me.
00:01:48.570 --> 00:01:50.570
We have to save here.
00:02:03.570 --> 00:02:05.570
Here soul is mine
00:02:05.570 --> 00:02:06.570
Take it
00:02:10.570 --> 00:02:12.570
It's the only way
00:02:15.000 --> 00:02:17.570
I believe
00:02:23.000 --> 00:02:25.570
Mississippi has always been magic
00:02:36.000 --> 00:02:38.000
Elizabeth please
我正在尝试使用FFMpeg复制此内容。我已经尝试了以下命令。
ffmpeg -i little-mermaid.mov -i little-mermaid.srt -c copy -c:s webvtt -start_number 0 -hls_time 10000 -f hls mermaid/Eng/master.m3u8
这将创建一个WebVTT文件,但完全错误且不同步。见下文。
所有时间都在改变,并且删除了每个部分的前两位数字。
WEBVTT
00:06.882 --> 00:10.362
once long ago in the deep blue below
00:12.402 --> 00:14.412
Don't be silly, Gran Mother
00:14.912 --> 00:16.742
Everybody knows there's no such thing as
00:16.742 --> 00:17.242
Mermaids
00:00:17.620 -- 00:00:21.570
You wouldn't say that if you has meet one. You've meet a Mermaid
00:24.292 --> 00:25.222
This just came in
00:25.522 --> 00:26.672
I wanted to take priority
00:27.222 --> 00:28.542
And we followed stories like this before
00:28.682 --> 00:31.662
Would witches working mummies. No not like this
00:31.672 --> 00:33.232
Hundreds of people are testifying
00:33.412 --> 00:34.642
Welcome to Mississippi
00:42.432 --> 00:47.312
There's a powerful magic in you the spirit of the ocean
00:47.732 --> 00:53.982
Let me introduce you to your dreams, The Little Mermaid, off the Mississippi
01:01.922 --> 01:03.622
She was so beautiful
01:04.082 --> 01:05.312
And I know she was real
01:07.892 --> 01:08.592
I'm skeptical
01:13.502 --> 01:14.452
You shouldn't be here
01:17.602 --> 01:24.172
Mermaids do not exist
01:31.462 --> 01:34.342
Look isn't it beautiful? Sorry I have to go.
01:35.382 --> 01:48.612
Elizabeth, How can this be? It's Lock he knows i'm here he summoned me.
01:48.612 --> 01:50.612
We have to save here.
02:03.612 --> 02:05.612
Here soul is mine
02:05.612 --> 02:06.612
Take it
02:10.612 --> 02:12.612
It's the only way
02:15.042 --> 02:17.612
I believe
02:23.042 --> 02:25.612
Mississippi has always been magic
02:36.042 --> 02:38.042
Elizabeth please
我试图确定将.srt转换为WebVTT并使用该文件而不用FFMPEG编码是否有意义,只需创建一个指向-ms的-hls_flag single_file指向它的.m3u8文件,但不确定这可能导致什么实现
任何人都可以建议我该怎么做或可能在哪里出错吗?
如果有人要运行上面的FFMPEG命令进行测试,这是我正在使用的视频文件。
http://www.hd-trailers.net/movie/the-little-mermaid/
谢谢
答案 0 :(得分:1)
这里真的没有什么错。所有媒体数据都有两个与之关联的时间戳-解码时间戳(dts)和演示时间戳(pts)。对于非视频流,这些通常是相同的。但是,由于视频帧有可能出于解码目的(B帧)引用将来的帧,因此帧以编码/解码顺序而不是表示顺序存储。因此,dts可以早于pts。在您的视频中,情况就是这样,第一个视频帧的点数为0.000000s
,而点数为-0.041708s
。由于MPEG-TS不存储负时间戳,因此所有时间戳(包括字幕)都向前偏移0.041708s
。同步并没有因此中断。