我有一个托管在 azure 中的 MVC 4 网站,需要上传视频,并且在不同的页面上允许将上传的视频流式传输回客户端播放器。
第一个选项允许用户上传和编码视频 (.mp4) 第二个选项是我手动上传和编码视频并将 URL 提供给用户。
在任何一种情况下,视频都会在另一个页面上呈现给用户。
我有一段时间试图让它发挥作用。有什么建议/工作样本吗?
我有一个托管在 azure 中的 MVC 4 网站,需要上传视频,并且在不同的页面上允许将上传的视频流式传输回客户端播放器。
第一个选项允许用户上传和编码视频 (.mp4) 第二个选项是我手动上传和编码视频并将 URL 提供给用户。
在任何一种情况下,视频都会在另一个页面上呈现给用户。
我有一段时间试图让它发挥作用。有什么建议/工作样本吗?
我将以下代码用于我的 c# 应用程序,它可以正常工作。
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 服务版本以支持视频搜索。