我有一个iOS应用,该应用通过类似于Instagram / TikTok的供稿从Firebase(Cloud Firestore)下载视频。但是,在用户滚动到视频之前,我无法立即获得视频。任何提示将超级有帮助。 TikTok是如何做到的?他们是否在加载时将一大堆视频保存到后台文件中?
我当前的VideoDownloadManager:
通过当前设置,视频在下载后可以高效播放。但是,如果尚未下载视频,并且用户滚动到该视频,则上述(#1/2)的完成和缓冲播放所需的时间过长。我已经在使用OperationQueues并将当前视频优先于其他任何背景视频-但这还不够快。
TikTok视频几乎总是在用户滚动时提供。什么秘密?
感谢您的帮助!
您实际上无法执行任何代码来加快从Cloud Storage的下载。问题在于云存储不是视频流平台,而是对象存储平台。经过优化,可以一次上传和下载对象。
[其他看上去下载视频速度更快的应用可能正在使用某些特殊的视频流技术,并且可能还会在视频开始以最适合客户端应用的速度开始流之前渲染一个小的缩略图。 Cloud Storage不会为您做这些事情。您应该研究针对视频流进行了优化的服务。 (对于软件和服务的建议不在堆栈溢出的主题之列。)