自iOS 10以来,Apple提供了支持下载HLS(m3u8)视频以供离线查看的功能。下载并播放离线HLS内容 - iOS 10
我的问题是:是否有必要只在播放时下载HLS?或者当用户按下下载按钮并显示进度时我们可以下载。
有没有人已经在Objective C版本中实现了这一点?其实我以前的应用程序是在Objective C中完成的。现在我想添加对下载HLS而不是MP4的支持(以前我正在下载MP4用于离线查看)。
我真的非常渴望这一点。如果实施,请分享想法或任何代码。
自iOS 10以来,Apple提供了支持下载HLS(m3u8)视频以供离线查看的功能。下载并播放离线HLS内容 - iOS 10
我的问题是:是否有必要只在播放时下载HLS?或者当用户按下下载按钮并显示进度时我们可以下载。
有没有人已经在Objective C版本中实现了这一点?其实我以前的应用程序是在Objective C中完成的。现在我想添加对下载HLS而不是MP4的支持(以前我正在下载MP4用于离线查看)。
我真的非常渴望这一点。如果实施,请分享想法或任何代码。
要做到这一点,唯一的方法是设置一个HTTP服务器,在您下载文件后在本地提供文件。
实况播放列表使用滑动窗口。您需要在目标持续时间后定期重新加载它,并且只下载列表中显示的新段(它们将在稍后时间删除)。
下面是一些相关的答案:IOS设备可以使用html5视频和phonegap/cordova从本地文件系统流式传输m3u8分段视频吗?
您可以使用AVAssetDownloadURLSession
makeAssetDownloadTask
轻松下载HLS流。看看苹果中的AssetPersistenceManager
示例代码:https://developer.apple.com/library/content/samplecode/HLSCatalog/Introduction/Intro.html 使用API的Objective C版本应该是相当直接的。
Apple代码无法正常工作 –
是的,您可以下载通过HLS提供的视频流并稍后观看。
从这个苹果有一个非常简单的示例应用程序(HLSCatalog)。代码非常简单。你可以在这里找到它 - https://developer.apple.com/services-account/download?path=/Developer_Tools/FairPlay_Streaming_Server_SDK_v3.1/FairPlay_Streaming_Server_SDK_v3.1.zip
你可以找到更多关于离线HLS流here。
如何下载iOS 10中的HLS进行脱机查看? –
我下载了.ts文件的文件夹。 – NSPratik