【发布时间】:2013-03-01 21:32:11
【问题描述】:
是否可以快退/快退 AVPlayer 流? 我的快进工作正常,但不能快退。
有什么帮助吗?
【问题讨论】:
标签: iphone ios xcode avplayer cmtime
是否可以快退/快退 AVPlayer 流? 我的快进工作正常,但不能快退。
有什么帮助吗?
【问题讨论】:
标签: iphone ios xcode avplayer cmtime
当您初始化 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 协议。
最后一个问题。如果您使用默认的 init'ed AVCaptureSession,它会以超高质量记录,前进速度快,但后退速度要慢得多且断断续续。即使在 iPhone 5 上。使用较低的质量设置以获得流畅的向后播放。
【讨论】: