- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在用户观看 HLS 视频流(非实时)时对其进行缓存。为此,我们设置了一个类似于苹果在此处推荐的 AvAssetDownloadTask:
https://developer.apple.com/library/content/documentation/AudioVideo/Conceptual/MediaPlaybackGuide/Contents/Resources/en.lproj/HTTPLiveStreaming/HTTPLiveStreaming.html
此方法效果很好,因为我们可以将下载任务中的 url Assets 同时传递给下载和流式传输。
我们希望将此下载临时缓存到应用程序的视频下载部分,这几乎可以在 NSUrlSessionTask 委托(delegate)中本地工作,除非我们要删除部分数据。
如果下载完成,我们会收到最终的下载位置,并且可以添加过期时间或稍后手动删除文件。但是,如果下载仅部分完成,我无法找到删除部分下载视频的方法。
我希望取消任务并使任务无效可以清理部分下载,但似乎并非如此,上面链接中还有更多苹果状态:In the case where a download is canceled, and there is no intention of resuming it, your app is responsible for deleting the portion of the asset already downloaded to a user’s device.
但是,没有任何关于如何实现这一点的建议。删除此部分下载似乎应该很容易访问,但尚未找到实现此目的的方法。
手动迭代视频下载目录似乎也不显示这些部分下载;但它们在 iOS 主设置中我们应用程序设置的“已下载视频”部分中可见。
想知道是否有其他人已经解决了这个问题或有如何完成的建议。
最佳答案
找到了答案,而不是暂停下载任务,一旦我们希望完成部分缓存下载,就需要取消它,然后会触发- (void)URLSession:(NSURLSession *)session assetDownloadTask:(AVAssetDownloadTask *)assetDownloadTask didFinishDownloadingToURL:(NSURL *)location {
其中提供了最终 url。
关于ios - NSURLSessions 和 HLS 视频缓存 - 部分下载无法删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50477331/
此时我的解决方案正在运行,但仅作为 RTMP,我可以使用 URL 完美地观看我的流: rtmp://X.X.X.X:1935/show/name 但问题是我使用 WebOS 的 LG 智能电视不支持
将 hls 流重新混合为 mp4 文件时,我使用以下命令。 ffmpeg -i "http://example.com/master.m3u8" -c copy -bsf:a aac_adtstoas
我正在使用 Hls.js 将视频管理到我的 HTML 页面中。我需要构建一个音量计来告知用户视频的音频电平。由于我需要保留 video.muted = true,我想知道 Hls.js 是否有任何方法
我正在构建一个视频播放器,它需要播放 HLS 直播和点播流。 它似乎只在 Safari 中运行良好。 (减去我需要更新的自定义样式,忽略它) 在所有其他浏览器中,我收到此错误: VIDEOJS: ER
原始视频是来自 https://www.appsloveworld.com/download-sample-mp4-video-mp4-test-videos/ 的“示例视频 5” . 我的 /hom
我正在直播mp3流(可能它正在使用 icecast - 管理员要求我在另一台服务器上重新广播它)。我正在使用 ffmpeg对于这个任务,使用 HLS播放列表,公开URL地点。 有用!但有时(我的意思是
我正在使用最新的 hls.js 1.0.0(不是 rc)流式传输 .m3u8,但版本为 2021-04-01... 例如:直播从下午 5 点开始,现在是下午 5 点 15 分... 几乎所有浏览器中的
我正在尝试实现具有 3 种视频质量和一种音频质量的自适应流媒体。愿景是带宽减少时切换到仅音频。但由于某种原因,仅播放仅音频文件。它没有切换到任何其他质量。我在客户端使用 exoplayer。 这是主m
我在仅播放音频的 Android 上播放 HLS 时遇到困难。该流将播放第一个视频 fragment ,然后变成仅音频流。这是一个示例链接 https://clipter.com/c/aymels8/
在我的代码中,我试图生成 m3u8不同质量的我的单个视频的格式。我的代码能够生成m3u8但没有品质,它采用原始框架高度和宽度而不是我定义的框架。我对它进行了研究,但我无法完成正确的目标。因为我是 ff
我正在尝试将具有多个音频流的一些视频(不同格式,例如 mp4、mkv、avi)转换为只有一个音频的 HLS。我用 ffmpeg 尝试了不同的解决方案,但似乎没有一个是理想的。 例如 ffmpeg -i
我将视频转码为 HLS,使用以下命令一切正常: ffmpeg -i source -vcodec nvenc -acodec copy -f ssegment -segment_list playli
我们正在使用 JWPlayer 8.9.0,我们正在尝试在我们的视频中插入广告。 我们正在使用 EXT-X-DISCONTINUITY但显然,当我们开始转换广告时,播放器停止显示缓冲状态。 这是我们播
使用最近的 ffmpeg 主分支(commit 7fcbeb),我们可以使用生成主播放列表 -master_pl_name 选项。但我无法生成具有不同配置文件的主播放列表。尝试使用 -var_stre
使用 avformat_open_input 打开 HLS 流从所有流中检索数据,我只想从其中一些流中检索数据。那可能吗? 考虑以下 MWE: #include int main(int argc,
这可能不是一个纯粹的技术问题,但不能确定放置它的最佳位置。 因此,我们有一个直播网站(请考虑MTV)。我们使用HTTP Live Streaming交付内容。因此,视频流由一堆视频组成。我们希望对此进
HLS 协议(protocol)是否指定音频编解码器?如果支持,支持哪些? 我尝试搜索,但找到了不同的列表: MP3, HE-AAC or AC-3 根据 wikipedia AAC, AAC-LC,
我正在尝试在 iOS 中进行直播,因此遵循以下步骤 - 初始化播放器 player = AVPlayer() player.rate = 1.0
我使用 MPMoviePlayer、MPMovieAccessLogEvent 从服务器获取比特率文件视频 hls,我计算如下: double bitrate = 8 * event.observed
目前我正在使用 Kintex 7 和 microblaze 来实现伪随机位序列功能。我已经在HLS中执行了PRBS并创建了HLS IP,然后将HLS IP与vivado集成,生成比特流并将其导出到SD
我是一名优秀的程序员,十分优秀!