AVPlayer Slider寻求向后问题

时间:2012-07-23 05:51:53

标签: avfoundation uislider avplayer seekbar avplayerlayer

我正在使用AV播放器在我的应用中播放视频。我正在使用 seekToTime:toleranceBefore:toleranceAfter:

使用滑块搜索视频所以问题是当你向前进方向滑动时,视频完美搜索(看起来视频移动得更快)但是在向后滑动视频在向后滑动时看起来生涩(基本上不像滑动的florward节目那样平滑)。有谁知道问题是什么,或者我做错了什么。

请帮助。

2 个答案:

答案 0 :(得分:3)

我在iPhone上遇到了同样的问题。这是清单:

  1. 确保providePreciseDurationAndTiming返回YES
  2. 确保canPlayReverse为YES(我猜有些编解码器不支持它。)
  3. 请勿使用最高品质。
  4. AVCaptureSession默认为高质量捕获。如果你想要丝般顺畅的倒车,你需要使用较低质量的设置,即使在iPhone 5上也是如此。向后移动需要更多的计算,因为大多数编解码器都经过优化,可以向前解压缩。

    作为一种解决方法,如果您需要高质量捕获,您可以捕获到高分辨率格式,导出为低分辨率格式并使用它进行编辑,然后使用时间修剪原始高分辨率图像。我正在考虑在我自己的应用程序中这样做。

答案 1 :(得分:0)

我认为这是因为当你向后流时缓冲区变空了。请对bufferIsEmpty值执行KVO。这可能是因为在你的应用程序中可能会使用大量内存而不是其他资源。测试这个的最佳方法是创建另一个项目并尝试相同。只需尝试使用AVPlayerQueue而不是AVPlayer,看看结果。