为 AVQueuePlayer/AVPlayer 从网络预加载视频文件

Posted

技术标签:

【中文标题】为 AVQueuePlayer/AVPlayer 从网络预加载视频文件【英文标题】:Preload video files from network for AVQueuePlayer/AVPlayer 【发布时间】:2014-03-13 22:39:19 【问题描述】:

我有一个或一组 URL,每个都指向一个 mp4 视频文件。

我为这些视频文件(如 Instagram 视频)提供了类似新闻源的时间线。用户可以上下滚动浏览每个视频。为了使视频加载更快,我想在用户向下滚动到它们之前预加载接下来的几个视频文件。当用户实际滚动到这些文件时,它将开始播放而无需再次从网络下载。

文件将在 AVQueuePlayer 中播放。

有没有办法做到这一点?谢谢大家!

【问题讨论】:

【参考方案1】:

我不知道有什么方法可以让 AVQueuePlayer 提前缓冲。

您可以在 AVPlayer 和网络之间创建代理。这将允许您跟踪 AVPlayer 已加载的内容,因此您可以预测性地下载和缓存即将到来的媒体文件,以便在 AVPlayer 请求它们时准备好它们。最干净的方法是注册一个自定义的 NSURLProtocol(注意这在 ios 模拟器中不起作用)。您还可以在设备上运行服务器,例如 CocoaHTTPServer。

【讨论】:

以上是关于为 AVQueuePlayer/AVPlayer 从网络预加载视频文件的主要内容,如果未能解决你的问题,请参考以下文章

考试错题

SQL判断字段是不是为空,为NULL

2021-11-26:() 分值为2, (()) 分值为3, ((())) 分值为4, 也就是说,每包裹一层,分数就是里面的分值+1。 ()() 分值为2 * 2, (())() 分值为3 * 2。(

java怎么判断对象为null

码农八荣八耻

pandas把dataframe的数据列转化为索引列实战:单列转化为索引多列转化为复合索引