【发布时间】:2012-04-03 10:44:30
【问题描述】:
如何从在线链接播放视频?它就像流媒体视频。我正在使用 MPMoviePlayerController 套件。我用在线链接替换了电影 URL。视频的模态视图控制器来了却突然消失了。为什么会这样?使用的网址是http://www.eesnap.com//medias//609f34c870721d57c65356c79c5304fc.mov
感谢拉克什
【问题讨论】:
如何从在线链接播放视频?它就像流媒体视频。我正在使用 MPMoviePlayerController 套件。我用在线链接替换了电影 URL。视频的模态视图控制器来了却突然消失了。为什么会这样?使用的网址是http://www.eesnap.com//medias//609f34c870721d57c65356c79c5304fc.mov
感谢拉克什
【问题讨论】:
只需 init 使用 NSUrl 您的媒体控制器:
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL URLWithString:@"http://www.youtube.com/watch?v=asCwv6_YN7A&feature=g-vrec&context=G2e345b5RVAAAAAAAAAw"]];
[self.view addSubview:moviePlayerController.view];
moviePlayerController.useApplicationAudioSession = NO;
moviePlayerController.fullscreen = YES;
[moviePlayerController play];
如果它突然消失,我怀疑视频有问题,而不是代码有问题,比如它是一个空视频(size-0)或其他什么。我尝试打开您在浏览器中提供的链接,但没有播放!应该是你服务器的视频有问题...
【讨论】:
我以前见过这个问题。问题在于服务器元数据。如果它以错误的 mime 类型或错误的内容长度响应,那么您将得到此行为。此外,还有一个鲜为人知的概念,即在 iOS 和 Mac 上强制执行的渐进式下载。我没有尝试过,但您可以让视频在其他平台(例如 Windows/Linux/Android)上播放,但是对于 iOS/OSX/Quicktime,客户端播放器正在发送 ContentRange HTTP 标头以请求文件的某些部分,并且服务器具有聪明地回应。实际上,前段时间我已经在 Java servlet 中手动构建了渐进式下载支持,这有点棘手。
【讨论】:
我认为它需要正常工作。您能否详细说明您使用的网址是来自 youtube 还是来自服务器。
如果是 youtube 那么你需要嵌入 URl 并且需要在 uiwebview 中打开它。
我认为这可能有助于清除您的观点。
【讨论】: