【问题标题】:Ingesting videos via bulk uploading into Azure media services from HTML5通过从 HTML5 批量上传到 Azure 媒体服务来摄取视频
【发布时间】:2018-05-23 02:01:33
【问题描述】:

我正在开发一个项目(web api、Angularjs、HTML5、CSS3),该项目目前允许用户通过从 web api 调用中获取定位器来一次上传一个视频文件,并通过分块上传视频块使用定位器网址。

现在我必须提供一个页面,用户可以在其中将视频拖放到网页上的某个区域,并将所有视频文件大量上传到 Azure 媒体服务。似乎为每个要上传的文件生成一个定位器并一次做一个直到它们全部完成似乎不是最有效的。当需要通过 html5 拖放完成时,将所有视频文件大量上传到媒体服务的最佳选择是什么?

我找到了详细说明如何使用批量上传的示例,其中向您提供了要上传到此处的 URL:https://azure.microsoft.com/en-us/documentation/articles/media-services-dotnet-upload-files/。问题是我将如何使用这个 url 从 html5 上传?我上传单个视频的当前方式是生成一个 SAS URL,并使用 http 方法 put 将块上传到该单个 url,而从批量上传返回的 url 似乎是您用于通过第三方工具上传的 url,根据上面发布的链接,而不是使用 FileReader 的 html5。

我真的很困惑我应该在这种情况下使用哪种方法。关键项目是我必须使用 html5,但允许用户拖放任意数量的视频,这些视频需要在过程中的某个时间点全部发布到媒体服务。老实说,我目前的问题是我有所有这些选择,但不确定从哪里开始。

【问题讨论】:

  • 我认为如果您自己提供尝试,您可能会获得更好的答案。不为可能需要大量代码的问题提供代码往往会使潜在的回答者望而却步。

标签: html azure-storage azure-blob-storage azure-media-services


【解决方案1】:

似乎为每个要上传的文件生成一个定位器并一次做一个直到它们全部完成似乎并不是最有效的。当需要通过 html5 拖放完成时,将所有视频文件大量上传到媒体服务的最佳选择是什么?

一次上传一个文件可能是最好的解决方案,因为典型用户的上传速度非常有限。单次上传会使带宽饱和,并且 TCP 开销最小(仅来自一个连接)。

问题是我如何使用这个 url 从 html5 上传?

直接从 JavaScript 调用 Azzure's REST API(而不是您提供的链接中的 .NET API)似乎是更好的选择,因为它消除了编写服务器端代码的需要。从 Angular 调用 REST API 的最简单方法是使用 $http service。您还可以使用$resource service 对更高级别的抽象进行操作。

【讨论】:

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