Azure blob流视频 - ASP.NET MVC

时间:2016-05-25 03:36:10

标签: azure video-streaming html5-video azure-storage-blobs video.js

我正在使用azure block blob并确保在从我的asp.net mvc应用程序上传视频时将内容类型设置为video / mp4。我正在使用videoJs框架来传输视频。问题是,我无法转发视频或使用其他控件,例如回到视频中。

我已经阅读了有关服务器在初始请求后可能不愿意接受部分内容请求(206)的各种帖子,而在其他一些情况下,可能没有设置您的内容类型。

以下是我尝试渲染的示例视频:

https://qasimalishah.blob.core.windows.net/videoscontainer/2016-May-25-02-52-59_Realize%20Your%20Love%20to%20Family%20Qasim%20Ali%20Shah%20Urdu%20Hindi%20WaqasNasir.mp4

在此页page上但不能转发它。例如。

这就是我在视图中呈现它的方式

<video id="really-cool-video" class="video-js vjs-default-skin" controls poster="@Model.MediaThumbnailUrl"
                            preload="auto" style="width: 100%; min-height: 380px; height: 100%;"
                            data-setup='{}'>
                        <source src="@Model.MediaUrl" type="video/mp4"/>
                        <p class="vjs-no-js">
                            To view this video please enable JavaScript, and consider upgrading to a web browser
                            that supports HTML5 video.
                        </p>
                    </video>

其中@MediaUrl是azure public blob的引用。 这可能在2016年听起来很愚蠢,但我在这里缺少什么?

1 个答案:

答案 0 :(得分:3)

我通过将存储版本设置为最新版本来实现它。这是荒谬的,因为我认为微软可能已经在2016年覆盖了它,但经过调查我看到DefaultServiceVersion为空。

CloudBlobClient cloudBlobClient = cloudStorageAccount.CreateCloudBlobClient();
            var properties = cloudBlobClient.GetServiceProperties();
            if (String.IsNullOrEmpty(properties.DefaultServiceVersion))
            {
                //set the version of storage to latest
                properties.DefaultServiceVersion = "2015-04-05";
                cloudBlobClient.SetServiceProperties(properties);
            }

感谢blog我能够弄明白。可能在将来帮助某人。

由于