【问题标题】:How to properly upload video files to Azure Media Services from angularjs如何从 angularjs 正确地将视频文件上传到 Azure 媒体服务
【发布时间】:2015-03-11 17:53:22
【问题描述】:

对于我的场景,我们当前的应用程序开始使用 html5 编码,并且 angularjs 与 web api 通信。我有一个似乎无法找到端到端示例的工作流程场景。我想允许我网站的用户将视频和图像上传到 Azure 媒体服务。我发现了几个似乎将数据从网页移动到 blob 存储然后复制到 azure 媒体服务的示例。

  1. 有没有办法将文件直接上传到媒体服务,而不是使用临时和永久的 blob 容器(绑定到 AMS),因为这种方法似乎迫使我拥有一个额外的存储容器或者有没有办法将文件移动到 blob 存储,然后通过 IAssetFile 将 blob 文件链接到 AMS?
  2. 谁能提供一个结束示例来演示从 Web 前端上传到最终在 AMS 中的文件的流程?
  3. 在那里,有没有办法确保用户可以观看但不能下载视频?

【问题讨论】:

    标签: c# azure-blob-storage azure-media-services


    【解决方案1】:

    1.有没有办法将文件直接上传到媒体服务:

    • 媒体服务 SDK 要求您首先在我们的系统中创建一个资产对象。该资产对象由 Storage 中的容器支持。您可以创建一个空的 Asset 对象,并请求一个只写 SAS URL(我们在我们的 API 中将它们称为“定位器”)以将您的内容直接上传到其中。你可能想看看这个 AngularJS 模块,看看它是否有效。 http://ngmodules.org/modules/angular-azure-blob-upload

    2. 谁能提供一个结束示例来演示从 Web 前端上传到最终在 AMS 中的文件的流程?

    • 您的 Web API/前端应首先使用媒体服务 SDK 创建空资产。创建后,手动创建一个只写 SAS URL 并将其交还给您的 Angular 客户端。然后,Angular 客户端可以使用客户端 javascript 库使用 SAS URL 和用于 azure-blob 上传的模块直接上传到 blob/容器,如下所示:http://ngmodules.org/modules/angular-azure-blob-upload

    3. 到那里后,有没有办法确保用户可以观看但不能下载视频?

    • 上传视频后,您应该从资产的定位器集合中删除只写 SAS“定位器”。这样,任何人都不能再用它来写了。
    • 此时您可以创建一个流式定位器。用户将只能通过我们的流媒体服务流式传输文件。您的文件必须以我们可以支持流式传输的格式进行编码,因此您可能必须首先启动编码作业以将其转换为正确的格式和编码设置(具有 H264 和 AAC 音频的 MP4 文件)。如果您想从媒体服务流式传输,您需要确保您的帐户中至少启用了 1 个流式传输预留单元。此外,如果您希望保护您的文件,您可以查看我们的内容保护服务,该服务将为您的资产提供即时 AES 128 或 PlayReady DRM 加密。您可以将其与 JWT 令牌和 Active Directory 集成以在用户能够在客户端解密视频之前对其进行身份验证/身份验证。

    【讨论】:

    • 除了允许某人上传视频之外,如果您希望某人也能够删除资产,还需要哪些步骤。好像也涉及很多步骤?
    【解决方案2】:

    我对 Azure 媒体服务不太熟悉,但在查看本指南http://azure.microsoft.com/en-us/documentation/articles/media-services-rest-get-started/ 后,我认为您可以在 Azure 媒体服务上创建资产并将其链接到 blob。这意味着您将只有一个 blob 容器。

    【讨论】:

    • 媒体服务 API 中的每个“虚拟资产”都与存储帐户中的实际 blob 容器相关联。因此,每次您在我们的 API 中创建资产时,它都会创建一个容器。您可以根据需要在资产中包含任意数量的文件。我将缩略图、海报框架和元数据 XML 文件等内容与我的视频一起保存在我的资产中,以将它们保持在一个逻辑分组中。
    【解决方案3】:

    AMS 为所有媒体处理功能提供 Rest API,包括上传、编码、发布。 GitHub 中有一个示例项目(邮递员收藏)可以玩。这个示例项目还附有一篇写得很好的文章。请在下面找到链接。

    https://github.com/Azure-Samples/media-services-v3-rest-postman

    https://docs.microsoft.com/en-us/azure/media-services/latest/stream-files-tutorial-with-rest

    希望这会有所帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-20
      • 1970-01-01
      • 2015-07-21
      • 1970-01-01
      • 2016-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多