При попытке трансляции локального видеофайла с помощью AirPlay возвращается «externalPlaybackNotSupportedForAsset» (-11870)

В настоящее время у меня проблемы с использованием AVPlayer и AVAsset для трансляции видео на внешний экран с помощью AirPlay.

После добавления AVRoutePickerView, чтобы иметь кнопку AirPlay, я смог успешно транслировать видео для использования AirPlay, создав AVAsset из удаленного URL-адреса.

Если я попробую сделать то же самое с видеофайлом, который был ранее загружен из приложения (и он все еще находится во внутреннем хранилище приложения), AVPlayer не работает и выдает код ошибки (-11870). Локальное видео по-прежнему воспроизводится правильно без включенного AirPlay.

После нескольких поисков я обнаружил, что код ошибки относится к externalPlaybackNotSupportedForAsset, хотя никаких дополнительных объяснений по поводу этой ошибки или какого-либо упоминания об этой ошибке нет.

Я наткнулся на эту проблему относительно AVAssetReferenceRestrictions и подумал, что это может мне помочь устраните проблему, но даже после изменения параметра ограничения или установки аргумента options: в значение nil при инициализации объекта AVAsset не сработало.

Стоит отметить тот факт, что трансляция с использованием Google Cast не работает для локальных файлов, тогда как удаленные видеофайлы транслируются правильно.

Кто-нибудь знает, как бороться с этим вопросом?

Я использую XCode 11 и iPhone 6S с iOS 13.5.1.

С уважением


person Alessandro Sperotti    schedule 17.06.2020    source источник