5

我有一个 MVC 4 应用程序,其中包含一个仅显示来自 MP4 格式的 azure blob 存储的“视频”的视图。目前我使用 MediaElment.js(或任何典型的 Flash 播放器)作为视频播放器。如何以流畅的流式传输或渐进式下载(自适应流式传输)方法播放这些视频。我必须在 Azure 中设置哪些配置才能支持流式传输?在将 MP4 文件上传到 blob 存储之前,我需要做些什么吗?

我已经浏览了这个链接 http://msdn.microsoft.com/en-us/spazuretrainingcourse_spblobstorageazure.aspx,据我了解,Windows Azure Blobs Uploader 用于将视频文件上传到 azure 和 silverlight 作为客户端。就我而言,视频是从单独的应用程序上传的,因此无法操作视频文件。那么除了使用 silverlight 之外,还有什么方法可以在没有任何更改的情况下实现流式传输并在视频播放器中播放?

如果我可以在上传时更改媒体文件,是否可以做任何事情?

谢谢。

4

1 回答 1

4

我几乎一直在这样做,但没有自适应流媒体(我正在处理只有 25mb 或更小的视频文件)。我在我的网页中使用 JWPlayer 作为前端,并且视频在 Azure blob 存储中。

我正在使用预先构建的 Windows 二进制 ffmpeg.exe 将其上传到 Azure(将其放在 Worker Role 项目的根目录中),然后我在 WorkerRole 中使用 System.Diagnostics.Process 来按摩视频文件。您可以执行相同的操作来创建所需的不同质量版本。

因此,当用户上传视频时,我的业务逻辑层会在 Azure 消息队列中发出一条消息,我的辅助角色会拾取它,将视频复制到 Azure LocalStorage(LocalStorage 是您可以在 Azure 项目设置文件中配置的物理磁盘),在文件上运行 ffmpeg.exe,然后将其放回 blob 存储中。

于 2012-09-13T14:49:05.720 回答