HLS AVItemPlayer持续时间不正确

时间:2017-01-06 18:55:38

标签: ios avplayer hls avplayeritem

我从流媒体服务器获取此清单。

#EXTM3U
#EXT-X-VERSION:1
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-ALLOW-CACHE:NO
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-KEY:METHOD=AES-128,URI="***"
#EXT-X-PROGRAM-DATE-TIME:2016-12-24T12:30:00.000+00:00
#EXTINF:10,
EPISODE_266160_256k_4_122445000000_00000000_v2.ts
#EXT-X-PROGRAM-DATE-TIME:2016-12-24T12:30:09.752+00:00

...

EPISODE_266160_256k_4_122446638399_00000168_v2.ts
#EXT-X-PROGRAM-DATE-TIME:2016-12-24T12:57:28.152+00:00
#EXTINF:10,
EPISODE_266160_256k_4_122446648152_00000169_v2.ts
#EXT-X-ENDLIST

如您所见,12:30:00到12:57:28之间的时差是27:32秒。尽管如此,AVItemPlayer.duration和Quicktime播放器显示28:13秒。最后一个块不提供日期时间,因为在10秒之前被截断,这是目标持续时间。

Quicktime player AVItemPlayer.duration

在现实生活中,当我在没有中断的情况下播放流时,持续时间为27:32。但是如果我在时间线上寻找,它会增加到28:13。

我在时间轴中显示了一些标记,这导致它们处于错误的位置。你知道为什么玩家可以计算不正确的持续时间以及如何解决它吗?

0 个答案:

没有答案