【发布时间】:2013-02-20 18:34:52
【问题描述】:
我们使用 ASP.NET MVC 4 允许用户通过我们的网站上传视频和音频。我想使用 Azure 媒体服务作为后端。
在关注Azure's tutorial 时,我遇到的问题是 Azure 媒体服务 SDK 似乎不允许上传原始数据流。相反,我能找到的唯一上传方法使用路径字符串参数。
我想避免将文件保存到磁盘 (it's already streamed to disk by default),并且能够将请求发布的文件直接流式传输到 Azure。
到目前为止,这是我的代码:
public void SaveMedia(string fileName, System.IO.Stream stream)
{
CloudMediaContext mediaCloud = new CloudMediaContext("account", "key");
AssetCreationOptions assetOptions = new AssetCreationOptions();
var asset = mediaCloud.Assets.Create(fileName, assetOptions);
var assetFile = asset.AssetFiles.Create(fileName);
var accessPolicy = mediaCloud.AccessPolicies.Create(fileName, TimeSpan.FromDays(3), AccessPermissions.Write | AccessPermissions.List);
var locator = mediaCloud.Locators.CreateLocator(LocatorType.Sas, asset, accessPolicy);
assetFile.Upload("????????????");
locator.Delete();
accessPolicy.Delete();
}
如何做到这一点?这会与使用 ASP.NET MVC 4 和 Azure 媒体服务处理上传的任何“最佳实践”冲突吗?
【问题讨论】:
标签: c# azure asp.net-mvc-4 azure-media-services