使用 MPMoviePlayerController xamarin 播放 mp4 电影 ios

play mp4 movie with MPMoviePlayerController xamarin ios

我需要使用 MPMoviePlayerController 在我的 ios 应用中流式传输电影。

这部电影效果不错:

moviePlayer = new MPMoviePlayerController(new NSUrl("http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"));
            View.AddSubview(moviePlayer.View);
            moviePlayer.SetFullscreen(true, true);
            moviePlayer.Play();

但是这个不行:

moviePlayer = new MPMoviePlayerController(new NSUrl("http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"));
            View.AddSubview(moviePlayer.View);
            moviePlayer.SetFullscreen(true, true);
            moviePlayer.Play();

官方MPMoviePlayerController documentation,说mp4也支持,不知道为什么不行

设备显示播放器,但没有启动任何东西。

提前致谢

检查您的应用输出,我假设您收到以下消息:

App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.

因此,在获得用于生产的基于 SSL 的 mp4 流之前,您可以通过添加进行测试:

<key>NSAppTransportSecurity</key>
<dict>
  <!--Include to allow all connections (DANGER)-->
  <key>NSAllowsArbitraryLoads</key>
      <true/>
</dict>

注意:有趣的是,基于 http 的 .m3u8 播放列表不会触发 "App Transport Security" 错误,但它们的底层传输流片段 (.ts) 将...