MPMoviePlayerController 播放本地文件,但不通过 HTTP 远程播放

Posted

技术标签:

【中文标题】MPMoviePlayerController 播放本地文件,但不通过 HTTP 远程播放【英文标题】:MPMoviePlayerController plays local file but not remote over HTTP 【发布时间】:2011-09-09 14:46:12 【问题描述】:

我有一个 mp4 文件,作为应用程序的一部分,它可以很好地与 MPMoviePlayerController 一起播放。

[_mediaPlayer setContentURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] 
                                                    pathForResource:@"movie" 
                                                    ofType:@"mp4"]]];
[_mediaPlayer play];

但是一旦我将相同的文件上传到网络服务器,它就会给我这个错误:

Error Domain=MediaPlayerErrorDomain Code=2

同一设备上的 Safari 浏览器播放远程电影 - 所以可达性不是问题 . 我没有找到关于代码 2 告诉我的任何文档。所以我被卡住了。

有人吗?

【问题讨论】:

网络服务器文件的链接是什么?这就是您应该使用的网址。你应该使用 NSURL URLWithString: 因为你没有使用本地文件路径。 非常感谢! - 那是我需要的母鹿。这是一个相当愚蠢的错误。我的代码中有:[NSURL fileURLWithPath:item.url];而不是 [NSURL URLWithString:item.url]; @Jesse - 将您的评论作为答案:) @Jakob - 当 Jesse 这样做时,将其标记为已接受 :) 【参考方案1】:

您应该使用 NSURL 的 URLWithString: 因为您没有使用本地文件路径。 (作为评论的答案发布:))

【讨论】:

以上是关于MPMoviePlayerController 播放本地文件,但不通过 HTTP 远程播放的主要内容,如果未能解决你的问题,请参考以下文章

MPMoviePlayerController 不播放 .wmv

如何显示 MPMoviePlayerController 控件?

MPMoviePlayerController 隐藏 AirPlay 按钮

MPMoviePlayerController 上的专辑封面

MPMoviePlayerController 已弃用,现在怎么办?

用 MPMoviePlayerController 替换 AVPlayer