预加载网络视频文件以供AVQueuePlayer/AVPlayer使用

3
我有一组URL,每个URL都指向一个mp4视频文件。
我为这些视频文件创建了一个新闻源类似的时间线(例如Instagram视频)。用户可以向上或向下滚动浏览每个视频。为了加快视频加载速度,我想在用户向下滚动到它们之前预加载接下来的几个视频文件。当用户实际滚动到这些文件时,它将开始播放而无需再次从网络下载。
这些文件将在AVQueuePlayer中播放。
是否有方法做到这一点?谢谢!
1个回答

3
我不知道有没有一种方法可以要求AVQueuePlayer提前缓存。
您可以在AVPlayer和Web之间创建代理。这样,您就可以跟踪AVPlayer加载了什么,以便预测性地下载并缓存即将到来的媒体文件,以便它们在AVPlayer请求它们时已准备好。最干净的方法是注册自定义NSURLProtocol(请注意,这在iOS模拟器中不起作用)。您还可以在设备上运行服务器,如CocoaHTTPServer。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接