我目前正在使用 AVPlayer 编写自定义视频播放器。视频播放良好,在 99% 的情况下都能正常播放。但是在寻找时,我偶尔会遇到错误。我的 AVPlayerItem 的状态更改为 AVPlayerItemStatusFailed,其“错误”属性设置为:
错误域=AVFoundationErrorDomain 代码=-11819 “无法完成操作” UserInfo=0x541da00 {NSLocalizedRecoverySuggestion=稍后再试。,NSLocalizedDescription=无法完成操作}
在 iOS 4.0.1 上在 HTTP 实时流中搜索时发生错误。当手机处于 3G 或流的比特率很高时,这种情况更常见。要重现,请在 iOS 4.0.1 上使用 AVPlayer 播放 HTTP 实时流,然后向前搜索加载的缓冲区——错误发生率约为 50%。
我在 AVError.h 中发现 AVFoundation 错误代码 -11819 对应于AVErrorMediaServicesWereReset ("The operation could not be completed because media services become available")。
有谁知道导致此错误的原因以及如何解决?我知道修复是可能的,因为 MPMoviePlayerViewController(它使用 AVPlayer)没有出现错误。不幸的是,由于外部限制,我不能在我的代码中使用 MPMoviePlayer。
谢谢!