El uso de un AVPlayer devuelve un error de "conexión no multitrayecto"

14

Estoy usando AVKit para reproducir una URL de youtube.

Tengo este código dentro de una acción de botón:

 @IBAction func trailerButtonAction(_ sender: Any) {
    guard let youtubeUrl = youtubeURL else { return }
    let player = AVPlayer(url: youtubeUrl)
    let playerViewController = AVPlayerViewController()
    playerViewController.player = player

    present(playerViewController, animated: true) {
        player.play()
    }
}

La URL es válida, pero cuando presiono el botón, el video no deja de cargarse y recibo este mensaje en el área de depuración:

nw_endpoint_flow_copy_multipath_subflow_counts Llamado en una conexión que no sea de múltiples rutas

Editar:

Descubrí que AVPlayer no es compatible con la URL de YouTube

Alex Giatrakis
fuente
Tengo el mismo problema El video no se reproduce y lo obtengo como salida. ¿Pudiste arreglarlo?
Matias Barrios
Este es el problema, creo: developer.apple.com/documentation/foundation/…
Matias Barrios
okey lo tengo Es un problema de red. prueba con este video: clips.vorwaerts-gmbh.de/big_buck_bunny.mp4
Matias Barrios el
Ahora, Ι no obtuvo el error anterior. Entiendo esto: NSURLConnection terminó con error - código -1002
Alex Giatrakis
Entonces es seguro su conexión. ¿Puedes probar desde una conexión diferente
Matias Barrios

Respuestas:

5

Yo diría que este registro no es necesariamente relevante. Recibía este error al intentar reproducir en el simulador, pero no estaba sucediendo en un dispositivo real.

CMash
fuente
1
Confirmado. Esto resolvió el caso para mí.
krlbsk
2

Una solución alternativa sería usar un simulador 12.4.x ya que no presenta este problema. Solo los simuladores 13.x muestran este error. Sucede repetidamente que ralentiza el simulador hasta que se rastrean todas las pistas solicitadas.

Para combatir esto durante las pruebas, no estoy encendiendo AVPlayero solo estoy almacenando una pista corta.

Para reducir la cantidad de errores, intente iniciar su Me AVPlayergusta así:

var avPlayer : AVPlayer = AVPlayer()

Esto puede reducir los errores en un 30%.

StarPlayrX
fuente