2012-05-30 33 views
3

我有很多与iPhone录制的MOV文件,我想将它们转换为mpeg2 TS。我希望将它们用于使用HTTP Live Streaming协议的实况视频流。FFmpeg使mpeg2 ts没有不连续性

我将iPhone设置为连续发送MOV文件到服务器。每个视频片段都是5秒钟。我想制作mpeg2 TS并将它们的网址添加到m3u8播放列表中。 我设法做到了这一切,但是当我尝试播放流时,VLC播放器只播放播放列表中的前两个文件,并在该时刻播放列表中的最后一个文件。 我搜索了互联网,我认为这与间断有关。

有没有什么办法可以将多个MOV文件转换为多个mpeg2 TS段而没有间断?

或者我正在做别的事情? 这里是我的ffmpeg的命令:

ffmpeg.exe -i input,MOV -f mpegts output.ts 

,这里是我的M3U8清单:

#EXTM3U 
#EXT-X-PLAYLIST-TYPE:EVENT 
#EXT-X-TARGETDURATION:10 
#EXT-X-MEDIA-SEQUENCE:0 
#EXT-X-MEDIA-SEQUENCE:0 
#EXTINF:10, 
fileSequence0.ts 
#EXTINF:10, 
fileSequence1.ts 
#EXTINF:10, 
fileSequence2.ts 

在此先感谢

回答

2

的问题是,你的电影系列是不是甲流。当您创建单个mpeg2ts细分时,每次运行ffmpeg时,时间戳都将重新设置为0。您可以尝试使用 setpts过滤器来调整每个分段的开始时间戳。但首先你需要知道前一部分的最后一部分。

+1

我试图做到这一点,但没有运气。 我试图在每段之前设置#EXT-X-DISCONTINUITY,但这没什么区别。我得到这个消息从VLC播放器: TS不连续性(接收0,预计8) 我检查了我的前一个段和最后一个PTS是446696,ffmpeg命令为下一个段适当调整pts是什么? – user1427162