2012-05-31 14 views
6

Tengo una aplicación que maneja la transmisión de video. A partir de una lista de reproducción .m3u8, se crea una matriz de AVAssets, y voltea a través de ellos porAVPlayer no cambia entre la descarga progresiva y la transmisión

[player replaceCurrentItemWithPlayerItem:[AVPlayerItem playerItemWithAsset:[assetItems objectAtIndex:index]]] 

Esto funciona bien, pero antes de que yo quiero para ventilar un video mp4 corta usando descarga progresiva. Me carga la AVPlayer usando

AVAsset *prerollAsset = [AVAsset assetWithURL:prerollURL]; 
[player replaceCurrentItemWithPlayerItem:[AVPlayerItem playerItemWithAsset:prerollAsset]]; 

Desempeña, pero cuando sigo con el streaming de vídeo como antes, consigo un estado de AVPlayerStatusFailed, con el error en AVPlayerItem de The operation could not be completed

Para que funcione, yo necesita crear un objeto AVPlayer para el pre-roll (descarga progresiva), y luego un objeto AVPlayer completamente nuevo para comenzar a reproducir el video en tiempo real.

¿Es posible que una sola instancia de AVPlayer no sea capaz de reproducir video de descarga progresiva seguido de transmisión de video? ¿O podría haber algo más que estoy haciendo mal?

+1

Estoy teniendo el mismo problema. Con MPMoviePlayerController hay propiedad movieSourceType que podemos configurar pero no con AVPlayer o AVPlayerItem –

+0

Este error todavía existe en iOS7.1 SDK –

+0

@KentNguyen un poco tarde, pero puedes leer https://developer.apple.com/library/mac/ documentación/AudioVideo/Conceptual/AVFoundationPG/Articles/02_Playback.html, observe la parte ** Para crear y preparar una transmisión en vivo HTTP para la reproducción ** – onmyway133

Respuesta

2

Este error es un problema conocido, y supuestamente corregido en la próxima versión principal de iOS.

Mientras tanto, la creación de un nuevo objeto AVPlayer es la única solución conocida.

+1

De acuerdo con los ingenieros de Apple en WWDC14, iOS 8 todavía tiene este problema. También mencionaron que era muy bajo en su lista de prioridades. ¡De vuelta a la solución! – coco

Cuestiones relacionadas