我在 azure blob 容器(块 blob)上有数百个视频文件,我希望它的 SAS url 作为可流式视频 url,以便客户端设备不必等到完整视频下载。
我有以下选择的想法
Azure 媒体服务 - 问题:每次也在媒体服务 v3 中为输出资产创建新容器我没有从流媒体定位器获得任何媒体文件的下载路径,它只是清单,所以最后下载时我需要使用与输出资产链接的容器,不确定这是否是正确的方法或者我在这里遗漏了一些东西
在从 Blob 容器生成媒体文件的 SAS url 时添加标头 Content-Disposition = 内联,但我不确定这是否是实际的流视频,或者它会首先下载到临时文件并直接在浏览器/设备中播放。
我阅读了一些有关 API 的内容,该 API 将提供数据块响应,以便您获得流媒体内容,但需要多次调用该 API 才能获取整个视频。
哪个是从 Blob 存储流式传输视频的最佳选择?
视频传输有两种策略:
渐进式下载虽然通常更容易实现,但不一定会产生所需的流媒体体验,因为它无法通过广泛的缓冲来适应带宽波动等,从而产生大量的等待时间。
仅仅为了提供类似流媒体的体验而在 Blob 存储上托管视频不太可能产生所需的体验,而本质上更复杂,为了获得可靠的流媒体体验,像 AMS 这样的流媒体基础设施势在必行。关于 AMS 中资产的下载,这是由流策略控制的:https://learn.microsoft.com/en-us/azure/media-services/latest/stream-streaming-policy-concept,它控制通过 AMS 可以为资产提供哪些端点访问。
这还要求视频文件本身结构正确......例如,请参阅https://blog.thoughtstuff.co.uk/2014/01/streaming-mp4-video-files-in-azure-storage-containers- blob-storage/#:~:text=in%20Windows%20Azure.-,Check%20your%20Videos,-If%20you%E2%80%99ve%20got 进入此。
事实上,是的,你可以。对于基本功能,例如从一个点开始视频、在视频中来回播放,您可以使用 Azure CDN。 Azure CDN 将缓存您的视频,因此您拥有基本的流媒体功能。 将视频上传到 Blob 存储后,您需要遵循以下步骤。
希望能解决您的问题。