AVPlayer - 快退/快退

时间:2013-03-01 21:32:12

标签: iphone ios xcode avplayer cmtime

是否可以快进/快退AVPlayer流? 我快速前进,但没有快退。

任何帮助?

1 个答案:

答案 0 :(得分:2)

初始化AVAsset时,您指定了一个选项字典,其中一个选项(实际上是我所知道的唯一选项)是AVURLAssetPreferPreciseDurationAndTimingKey。默认为NO。您希望以这种方式进行初始化:

AVURLAsset* asset = [[AVURLAsset alloc] initWithURL:url
                  options:@{AVURLAssetPreferPreciseDurationAndTimingKey: @YES}];
AVPlayerItem* playerItem = [AVPlayerItem playerItemWithAsset:asset];
self.player = [[AVPlayer alloc] initWithPlayerItem:playerItem];

您可以查询播放器项目是否可以反向播放,快退播放等。取决于它可能无法播放的流类型。本地磁盘上的quicktime文件当然没有问题。还要记住AVFoundation是异步的。这意味着您可以只调用setter,但需要KV观察动态设置或使用AVAsynchronousKeyValueLoading协议进行静态设置。

最后一个问题。如果你使用一个默认的初始化AVCaptureSession,它会以超高质量记录,快速前进,但后退的速度要慢得多。即使在iPhone 5上也是如此。使用较低质量的设置可以顺利向后播放。