如何在 iOS 应用程序中缓冲视频并保存在本地数据库中?

Posted

技术标签:

【中文标题】如何在 iOS 应用程序中缓冲视频并保存在本地数据库中?【英文标题】:How to buffer the video and save in local database in iOS app? 【发布时间】:2012-10-31 07:31:41 【问题描述】:

我正在创建一个应用程序,其中有一个链接可以下载大小约为 50 MB 的视频并进行播放。当用户点击链接时,视频应该开始缓冲(就像在 YouTube 中一样)并且应该保存在本地数据库中。我试图为每个任务运行一个单独的线程。一个线程将缓冲,另一个线程将下载视频并保存在本地数据库中,但是由于视频的大小约为 50 MB,因此极大地增加了内存分配,所以有什么方法可以完成此任务,我的意思是播放视频和在本地保存?我可以将视频数据保存为缓冲吗?如果有任何用于此目的的示例应用程序,请告诉我,如果我有任何不清楚的地方,请告诉我。

【问题讨论】:

【参考方案1】:

我解决这个问题的方法与你的略有不同。

我会将任何视频下载并保存为文件,并且只将它们的位置存储在您的 Core Data 数据库中。然后可以将主线程上的视频播放器指向正在下载的本地文件,大概在另一个线程中。

【讨论】:

这很好,但我的问题是是否可以在下载视频的同时播放视频?

以上是关于如何在 iOS 应用程序中缓冲视频并保存在本地数据库中?的主要内容,如果未能解决你的问题,请参考以下文章

如何将视频帧保存到缓冲区中?

本地保存数据(IOS)

如何在 iOS 中保存流媒体视频?

是否可以使用 AVPlayer 缓存 HLS 段?

iOS:从网址下载视频并保存在图库中......?

如何保存文件并将其读入缓冲区? (错误 - 缓冲区为空)