Ios AV基金会报告球员项目持续时间不正确
我试图在iOS上播放一段视频,使用的是用zencoder编码的AVPlayer。我看到的问题是,玩家项目报告的持续时间是四舍五入/不精确的。例如,视频持续时间可能为173.134,播放器项将报告为平坦174.0。这会导致检测加载百分比和其他相关内容时出现问题。如果我尝试使用视频而不进行编码,则所有内容都会正确、准确地报告Ios AV基金会报告球员项目持续时间不正确,ios,avfoundation,http-live-streaming,zencoder,Ios,Avfoundation,Http Live Streaming,Zencoder,我试图在iOS上播放一段视频,使用的是用zencoder编码的AVPlayer。我看到的问题是,玩家项目报告的持续时间是四舍五入/不精确的。例如,视频持续时间可能为173.134,播放器项将报告为平坦174.0。这会导致检测加载百分比和其他相关内容时出现问题。如果我尝试使用视频而不进行编码,则所有内容都会正确、准确地报告 有没有其他人见过这个问题或有解决办法?我也有同样的问题。我只是比较当前位置和项目持续时间之间的差异以及1秒: - (void)playing:(CMTime)time {
有没有其他人见过这个问题或有解决办法?我也有同样的问题。我只是比较当前位置和项目持续时间之间的差异以及1秒:
- (void)playing:(CMTime)time
{
CMTime itemDuration = _player.currentItem.asset.duration;
NSTimeInterval currentTime = CMTimeGetSeconds(time);
NSTimeInterval duration = CMTimeGetSeconds(itemDuration);
if (fabs(currentTime - duration) < 1)
// This is the end.
}
-(void)播放:(CMTime)时间
{
CMTime itemDuration=\u player.currentItem.asset.duration;
NSTimeInterval currentTime=CMTimeGetSeconds(时间);
NSTimeInterval duration=CMTimeGetSeconds(itemDuration);
if(晶圆厂(当前时间-持续时间)<1)
//结束了。
}
问题原来是源视频/zencoder的问题。音频曲目的长度与视频稍有不同,这导致了编码问题。切断视频的最后一秒,以便曲目持续时间匹配,从而修复了该问题。如果您专门查找视频何时播放到最后,则应改用AVPlayerItemDidPlayToEndTime通知。