Я изучил эту проблему и обнаружил следующую проблему:
Если вы напечатаете status.rawValue playerQueue и currentItem (AVPlayerItem) AVPlayerQueue (подкласс AVPlayer), вы обнаружите, что состояние будет 0 или 1. Для справки: 0 означает состояние. неизвестно, а 1 означает status.readyToPlay (тот, который вы хотите). Так что, если оба отпечатка равны 0, это не удастся, поэтому вы получите ошибку. Позиция неизвестна, но вы пытаетесь .play () playerQueue, что, конечно, приводит к ошибке.
Моя рекомендация для вас (исправление) состоит в том, чтобы либо найти способ ускорить загрузку мультимедиа внутри AVPlayerItem (что может быть сделано путем помещения URL-адреса в AVAsset вместо попытки немедленно инициировать URL-адрес в AVPlayer), или может использовать KVO, чтобы определить, когда он завершил загрузку (что-то вроде решения, завершающего блокировку).