AVPlayer 视频播放seek 导致视频卡住不播放

iOS开发中经常视频开发,使用AV Foundation 提供的AVPlayer播放视频是,需要通过进度条进行拖拽快慢进。

 [self.player.currentItem seekToTime:changeTime toleranceBefore:CMTimeMake(1, 20)
                             toleranceAfter:CMTimeMake(1, 20) completionHandler:^(BOOL finished) {
                                  self.player.rate = 1; 
}];

当seek时,如果视频太大(如5M 1分30秒视频),在拖拽结束时,调用player播放
不管是使用player.rate = 1.0; 或者使用 [player play];都会导致视频画面卡住,声音播放。
播放器在切换中,需要结束在进行播放,如果直接播放,导致。
解决可以在拖拽完成时,重新取消上次的seek

  [self.player.currentItem cancelPendingSeeks];

然后再完成,seek的block中设置播放.

ijk 播放器播放太大的视频也会卡住,如视频超过70M左右

你可能感兴趣的:(AVPlayer 视频播放seek 导致视频卡住不播放)