MPMoviePlayerController 无法从远程 url 播放视频

Posted

技术标签:

【中文标题】MPMoviePlayerController 无法从远程 url 播放视频【英文标题】:MPMoviePlayerController failed to play video from remote url 【发布时间】:2017-03-25 09:00:07 【问题描述】:

如果我在浏览器中点击以下网址,它会播放视频,但我的以下代码无法在 iPhone 上播放。

http://ec2-107-21-15-206.compute-1.amazonaws.com:8000/static/uploads/1337/photos/5819/38111.mp4

MPMoviePlayerController *moviePlayer=[[MPMoviePlayerController alloc] initWithContentURL:[NSURL URLWithString:@"http://ec2-107-21-15-206.compute-1.amazonaws.com:8000/static/uploads/1337/photos/5819/38111.mp4"]];

moviePlayer.controlStyle=MPMovieControlStyleDefault;
moviePlayer.shouldAutoplay=YES;
[self.view addSubview:moviePlayer.view];
[moviePlayer setFullscreen:YES animated:YES];

这是 iPhone 的屏幕截图。

【问题讨论】:

【参考方案1】:

MPMoviePlayerController 已弃用。你可以用 AVPlayer 代替。

AVPlayer *player = [AVPlayer playerWithURL:"URL"];
AVPlayerViewController *controller = [[AVPlayerViewController alloc] init];
[self presentViewController:controller animated:YES completion:nil];
controller.player = player;
[player play];

【讨论】:

【参考方案2】:

您需要告诉MPMoviePlayerController 它需要流式传输视频。只需添加以下行:

moviePlayer.moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;

【讨论】:

【参考方案3】:

是的,你必须告诉它的流媒体网址:

moviePlayer.moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;

然后准备玩

[moviePlayer prepareToPlay];

【讨论】:

以上是关于MPMoviePlayerController 无法从远程 url 播放视频的主要内容,如果未能解决你的问题,请参考以下文章

MPMoviePlayerController 不播放 .wmv

如何显示 MPMoviePlayerController 控件?

MPMoviePlayerController 隐藏 AirPlay 按钮

MPMoviePlayerController 上的专辑封面

MPMoviePlayerController 已弃用,现在怎么办?

用 MPMoviePlayerController 替换 AVPlayer