我有MPMoviePlayerController
- obj从我的视频服务器播放一个hls流。段持续时间设置为3秒。
由于流的视频内容是动态转码所以当用户寻找某个位置时,服务器需要几秒钟才能在原始电影文件中搜索并开始生成正确的.ts文件。如果我寻找玩家的头来开始点,就会出现问题。在 0:00 拖动并释放头部后,播放器发送第一个.ts文件的请求(由wireshark检查),并在收到第一个响应.ts文件后立即开始播放除了播放时间不是0:00(每个测试的值不同)。
这可能是什么原因?
更新#1:
.m3u8文件的内容:
#EXTM3U
#EXT-X-TARGETDURATION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:3,
http://192.168.0.68:20655/_hls_file?file=20130220155224176_00000.ts
#EXTINF:3,
http://192.168.0.68:20655/_hls_file?file=20130220155224176_00001.ts
....
#EXTINF:3,
http://192.168.0.68:20655/_hls_file?file=20130220155224176_00469.ts
#EXT-X-ENDLIST
.ts文件的实际持续时间通常与目标持续时间(3秒)不同,但我不认为原因。
UDPATE#2:
我确实创建了具有10秒目标持续时间的VOD HTTP Stream,但玩家的行为方式相同。如果我寻求00:00:00,它总是从第二个5或3开始播放,所以我想原因不是来自我的服务器。