播放远程video内容时减less初始延迟

您好使用MPMoviePlayerControllerstreamvideo到应用程序。 但是,加载需要很长时间,我希望能够预缓冲video。 有什么build议么?

  1. 一旦知道用户可能开始播放电影,请使用[MPMoviePlayerControllerInstance prepareToPlay] 。 您可能还需要将MPMoviePlayeController.autoPlay设置为最适合的内容,具体取决于您的应用程序。

    从苹果的文档

    当您调用播放方法时,将自动调用此方法。 在打电话之前调用它可以使接收机有机会尽快准备项目,并且可能会在开始播放时减less延迟。 但是,调用此方法也可能会中断任何活动的audio会话。

  2. 确保您的HTTPstream包含低于64Kbps(audio和video组合)的低带宽替代品。 请注意, MPMoviePlayerController通常开始caching低速率回放索引configuration文件,然后再boostMPMoviePlayerController并尝试加载更高的带宽configuration文件。 一旦它有几秒钟的电影数据,它将准备播放。

  3. 初始化播放器时使用MPMoviePlayerController.movieSourceType属性来减less媒体识别延迟。

    从MPMoviePlayerController类参考 :

    此属性的默认值是MPMovieSourceTypeUnknown。 这个属性为播放系统提供了一个关于如何下载和缓冲电影内容的线索。 如果您知道影片的来源types,则在播放开始之前设置此属性的值可以改善影片内容的加载时间。 如果在播放之前未明确指定播放源types,电影播放器​​控制器必须收集此信息,这可能会延迟播放时间。