В настоящее время я пишу пользовательский видеоплеер с использованием AVPlayer. Видео воспроизводится нормально и работает в 99% случаев. Но при поиске я иногда сталкиваюсь с ошибкой. Состояние моего AVPlayerItem изменяется на AVPlayerItemStatusFailed, а его свойство "error" установлено в:
Ошибка домена = AVFoundationErrorDomain
Код = -11819 «Не удается выполнить действие»
UserInfo = 0x541da00
{NSLocalizedRecoverySuggestion = Попробуйте
снова позже.,
NSLocalizedDescription = Невозможно завершить
Действие}
Ошибка возникает на iOS 4.0.1 при поиске вперед в HTTP Live Stream. Чаще всего это происходит, когда телефон подключен к сети 3G или битрейт потока высок. Чтобы воспроизвести, запустите HTTP Live Stream с AVPlayer на iOS 4.0.1 и выполните поиск вперед после загруженного буфера - ошибка происходит ~ 50% времени.
Я обнаружил в AVError.h, что код ошибки AVFoundation -11819 соответствует AVErrorMediaServicesWereReset («Операция не может быть завершена, поскольку службы мультимедиа стали недоступны») .
Кто-нибудь знает, что вызывает эту ошибку и как ее исправить? Я знаю, что исправление возможно, потому что MPMoviePlayerViewController (который использует AVPlayer) не показывает ошибку. К сожалению, из-за внешних ограничений я не могу использовать MPMoviePlayer в своем коде.
Спасибо!