Streaming Videos from Azure ( Blob or Media Services)
我有一个托管在 azure 中的 MVC 4 网站,需要上传视频,并且在不同的页面上允许将上传的视频流式传输回客户端播放器。
第一个选项允许用户上传和编码视频 (.mp4)
第二个选项是我手动上传和编码视频并将 URL 提供给用户。
在任何一种情况下,视频都会在另一个页面上呈现给用户。
我正忙着试图让它发挥作用。有什么建议/工作示例吗?
我在我的 c# 应用程序中使用了以下代码,它可以正常工作。
1 2 3 4 5 6 7 8 9 10 11 12 | public static string getBlobStreamURL(string fsBloblFilePath, string fsdirectory) { CloudBlobContainer cloudBlobContainer = storageAccount.CreateCloudBlobClient().GetContainerReference(fsdirectory); var cloudBlob = cloudBlobContainer.GetBlockBlobReference(fsBloblFilePath); var SharedAccessSignature = cloudBlob.GetSharedAccessSignature(new Microsoft.WindowsAzure.Storage.Blob.SharedAccessBlobPolicy() { Permissions = Microsoft.WindowsAzure.Storage.Blob.SharedAccessBlobPermissions.Read, SharedAccessExpiryTime = DateTime.UtcNow.AddHours(1) }); var StreamURL = string.Format("{0}{1}", cloudBlob.Uri, lsSharedAccessSignature); return StreamURL; } |
我已经写过一篇关于如何从 Azure 提供视频的答案。
您将希望使用 Azure Blob 存储来存储文件。这将很好地扩展,让您利用 Azure CDN 更快地交付,并且传出流量不会计入您的网站实例。
然后您可以使用任何您想要的 HTML5 或 Flash 播放器。一件重要的事情,确保在保存文件时设置内容类型。您还可以更改 Azure 服务版本以支持视频搜索。