我想从 MPMoviePlayerController 中的 url 播放直播视频。我得到了在 UIWebView 上播放视频的链接。UIWebView 在启动 MPMoviePlayerController 时会提供一个输出,如 NSLog。它播放流没有任何问题!
setting movie path:
http://ibbtks.noc.com.tr/ibbesm/bagdat2lq.stream/playlist.m3u8?k=ffd81df8cfee8f9259eff91dc9a483c4
我从 NSLog 中得到了那个视频 url,然后把它放到了 MPMoviePlayerController 中。这是我使用的代码,
- (void)playMovie
{
NSURL* myUrl = [NSURL URLWithString:@"http://ibbtks.noc.com.tr/ibbesm/kadikoylq.stream/playlist.m3u8"];
NSURL* appleUrl = [NSURL URLWithString:@"http://devimages.apple.com/iphone/samples/bipbop/gear4/prog_index.m3u8"];
_moviePlayer = [[MPMoviePlayerController alloc]
initWithContentURL:myUrl];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlayBackDidFinish:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:_moviePlayer];
_moviePlayer.controlStyle = MPMovieControlStyleDefault;
_moviePlayer.shouldAutoplay = YES;
_moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;
[self.view addSubview:_moviePlayer.view];
[_moviePlayer setFullscreen:YES animated:YES];
}
它可以毫无问题地播放 appleUrl 流,但是当我尝试播放 myUrl 时,它总是在加载并且出现错误。错误输出是,
Did finish with error: Error Domain=MediaPlayerErrorDomain Code=-11800 "The operation could not be completed" UserInfo=0x99a9760 {NSLocalizedDescription=The operation could not be completed}
当我尝试在 UIWebView 或 safari 上播放此链接时,它会成功播放视频,正如我所说,它给了我使用的 NSLog 网址。但是当我尝试自己播放这个网址时,我得到了一个错误。有什么建议么?
提前致谢。