还有其他选项可以在不使用 azure 媒体服务的情况下直接流式传输 blob 视频吗?

问题描述 投票:0回答:2

我在 azure blob 容器(块 blob)上有数百个视频文件,我希望它的 SAS url 作为可流式视频 url,以便客户端设备不必等到完整视频下载。

我有以下选择的想法

  1. Azure 媒体服务 - 问题:每次也在媒体服务 v3 中为输出资产创建新容器我没有从流媒体定位器获得任何媒体文件的下载路径,它只是清单,所以最后下载时我需要使用与输出资产链接的容器,不确定这是否是正确的方法或者我在这里遗漏了一些东西

  2. 在从 Blob 容器生成媒体文件的 SAS url 时添加标头 Content-Disposition = 内联,但我不确定这是否是实际的流视频,或者它会首先下载到临时文件并直接在浏览器/设备中播放。

  3. 我阅读了一些有关 API 的内容,该 API 将提供数据块响应,以便您获得流媒体内容,但需要多次调用该 API 才能获取整个视频。

哪个是从 Blob 存储流式传输视频的最佳选择?

video-streaming azure-blob-storage
2个回答
2
投票

视频传输有两种策略:

  • 渐进式下载,通过“文件”检索视频内容 共享”是指将连续的视频文件传输到 客户
  • 流媒体,对视频文件进行编码和预处理; 这里的文件通常会被分割成垃圾并进行优化

渐进式下载虽然通常更容易实现,但不一定会产生所需的流媒体体验,因为它无法通过广泛的缓冲来适应带宽波动等,从而产生大量的等待时间。

仅仅为了提供类似流媒体的体验而在 Blob 存储上托管视频不太可能产生所需的体验,而本质上更复杂,为了获得可靠的流媒体体验,像 AMS 这样的流媒体基础设施势在必行。关于 AMS 中资产的下载,这是由流策略控制的:https://learn.microsoft.com/en-us/azure/media-services/latest/stream-streaming-policy-concept,它控制通过 AMS 可以为资产提供哪些端点访问。

  • 如果 blob 配置正确,您可以获得基本的流功能,包括正向和反向搜索。例如,当我输入此内容时(稍后可能会更改),https://aka.ms/FTAISVmultitenant-data 使用此功能。对于足够简单的用例,这很好。 blob 需要适当的标头(内容类型尤其需要正确;它需要是视频/mp4,而不是应用程序/内容流。

这还要求视频文件本身结构正确......例如,请参阅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 进入此。


0
投票

事实上,是的,你可以。对于基本功能,例如从一个点开始视频、在视频中来回播放,您可以使用 Azure CDN。 Azure CDN 将缓存您的视频,因此您拥有基本的流媒体功能。 将视频上传到 Blob 存储后,您需要遵循以下步骤。

  1. 搜索 cdn,并创建 Front Door 和 CDN 配置文件
  2. 选择Azure Frontdoor,然后快速创建
  3. 填写必填字段,对于源类型选择存储(Azure Blob)
  4. 单击“创建”,如果需要,还可以添加一些标签。创建这将需要几分钟的时间。
  5. 当您进入 cdn 页面时,您将看到端点。复制网址。
  6. 您的视频网址将是:https://urlfromcdn/blobcontainername/videoname.mp4

希望能解决您的问题。

© www.soinside.com 2019 - 2024. All rights reserved.