Cómo reproducir secuencias de video con MPMoviePlayerController en iOS

Estoy intentando reproducir una transmisión de video desde Internet en el iPhone presionando un button. Utilicé muchas muestras de código pero nada funcionó. Con este código, abre una vista en negro sin ningún flujo de video o controles. (La stream en sí funciona.)

NSURL *url = [NSURL URLWithString:@"http://MyStreamURL.com"]; MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlayBackDidFinish:) name:MPMoviePlayerPlaybackDidFinishNotification object:moviePlayer]; moviePlayer.controlStyle = MPMovieControlStyleDefault; moviePlayer.shouldAutoplay = YES; [self.view addSubview:moviePlayer.view]; [moviePlayer setFullscreen:YES animated:YES]; 

En lugar de crear un MPMoviePlayerController y agregarlo a su vista, probablemente sea más simple crear un MPMoviePlayerViewController y presentar ese controller de vista de manera modal (ya que de todos modos está intentando mostrar su video a pantalla completa). A continuación, MPMoviePlayerViewController puede gestionar la presentación de su video para usted.

 MPMoviePlayerViewController *mpvc = [[MPMoviePlayerViewController alloc] initWithContentURL:url]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlaybackDidFinish:) name:MPMoviePlayerPlaybackDidFinishNotification object:nil]; mpvc.moviePlayer.movieSourceType = MPMovieSourceTypeStreaming; [self presentMoviePlayerViewControllerAnimated:mpvc]; [mpvc release]; 

En su método de delegado moviePlayBackDidFinish , puede descartar el controller de vista del model.

Necesito mencionar el tipo de fuente de la película como transmisión

 moviePlayer.movieSourceType = MPMovieSourceTypeStreaming; 

Agregue trabajo de marco AVFoundation en la sección Libraries Link

En su file .h agregue

 #import <MediaPlayer/MediaPlayer.h> @interface video_liveViewController : UIViewController<MPMediaPickerControllerDelegate,MPMediaPlayback> 

En su file .m

 NSURL *movieURL = [NSURL URLWithString:@"http://172.31.17.252:1935/live/myStream/playlist.m3u8"]; movieController = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL]; [self presentMoviePlayerViewControllerAnimated:movieController]; [movieController.moviePlayer play]; 

simplemente agregue " MPMovieSourceTypeStreaming " a " moviesourcetype "