4

我正在开发处理媒体文件(音频/视频)的服务。这些服务负责上传客户端(IOS、Android但不限于这些设备/平台)上传的流媒体文件。

我们使用 node.js 和 mongodb 作为数据库。在不久的将来,我们的服务将成为 Azure 的一部分。(我们的部分后端已经存在于 Azure 中)

在那种情况下,我遇到了 Azure 媒体服务。我知道它没有任何可用于 Node.js 的 sdk,所以我唯一的选择是使用 Azure 媒体服务中的 REST 服务。

我的问题是:

1) 已经处理此场景的开发人员在此场景中采用的正确方法是什么。我对这里的方法/实践持开放态度,并改变我目前计划做的事情。

2)如果我使用 Azure 媒体服务。我的客户如何调用我的服务 (node.js),它充当调用 Azure 媒体服务的 REST 服务的代理。这将如何工作,我的代理中有文件要重新上传。或者我将在内部指导我的服务,以便在内部将其上传到媒体服务。

3)媒体服务中上传的这些媒体文件如何与MongoDB中的一条记录相关联。就像一个记录可以有多个媒体文件一样。

我很欣赏这里的任何指示/解释。

谢谢,

4

3 回答 3

1

要正确回答您的问题,需要回答的问题很少。

1.您将在 azure 媒体服务之上提供哪些功能。从您的问题来看,主要目标似乎是让用户上传资产并且他们能够流式传输上传的内容。

为此,您需要在节点 js 中实施以下步骤。

资产公开了 ID 和 AlternativeID 属性,您可以使用这些属性将有关内容的元数据映射到 WAMS 资产并实现任何其他内容管理逻辑。

如果您有一些基于用户的身份验证并且不想将单独的 azure 媒体帐户专用于一个用户,则需要充当代理。WAMS 为资产摄取、编码、打包、按需交付以及在最近的将来用于直播流提供基本块。

它可以用作您的 cms 系统的基础,或者您可以通过添加额外的身份验证、授权层来充当 SSAS 提供者。目前,您可以使用第三方产品http://www.ezdrm.com/进行播放 DRM 保护或您自己的许可证服务器http://msdn.microsoft.com/en-us/library/windowsazure/dn223278.aspx

于 2013-07-24T17:49:58.383 回答
0

我有一个小解决方案,但我认为它需要你做一些工作,也许你不会那么喜欢它,使用 Windows Azure Mobile 服务怎么样。它现在支持添加 NPM,我告诉您使用 Windows Azure Mobile 服务的原因是它可以帮助您连接到您的客户端,无论使用什么应用程序平台。

http://weblogs.asp.net/scottgu/archive/2013/06/14/windows-azure-major-updates-for-mobile-backend-development.aspx

要在 .Net 和 Node Js 之间进行集成,我认为可以从使用 Edge JS 或 signalR 开始。 http://www.infoq.com/articles/the_edge_of_net_and_node http://www.asp.net/signalr

我只想提出一个可能有助于解决 Node Js 中缺乏媒体服务支持的想法,即您使用 Blob 存储进行流式传输。毕竟媒体服务是基于我认为的 Blob 存储的。这是一个链接,将指导您使用 blob 存储。

http://www.windowsazure.com/en-us/develop/nodejs/how-to-guides/blob-storage/

这也是之前发布的一个问题,关于如何使用 Node JS 从 blob 存储流式传输,希望您发现它对您有所帮助。

如何使用 Node.js 将 Windows Azure Blob 流式传输到客户端? 获取要发送到 Node.js 服务器的流式 Blob 的内容

这里还有另一个链接可以帮助您执行此操作“使用 Node.js 媒体代理对视频 Blob 进行地理保护” http://msdn.microsoft.com/en-us/magazine/dn198240.aspx

只是想确保您获得了 Windows Azure Node Js SDK,您可能会找到一些可以帮助您开发应用程序的解决方案。 https://github.com/WindowsAzure/azure-sdk-for-node

我希望我的回答能帮助你让我知道你是否需要其他任何东西。

于 2013-07-23T19:45:50.253 回答
0

我现在有更多基于 Typescript 的示例,用于 AMS v3 API,使用我们最新的 javascript Node.js SDK 在这里 https://github.com/Azure-Samples/media-services-v3-node-tutorials

于 2021-02-24T23:30:51.357 回答