我创建了一个基本的应用程序并上传到Azure。我想嵌入视频,以便用户可以从列表中进行选择并查看每个视频的视频;例如,选择一部电影并观看它的预告片。如何在Azure上的MVC应用程序中托管和嵌入视频?
我在MVC解决方案中创建了两个文件夹:'/ Posters'包含.jpg文件作为每个视频的背景,'/ Videos'包含.mp4文件作为每个视频的源文件。
的.cshtml片段是在这里:
<video controls="controls" poster="@Model.PosterPath" width="640" height="360">
<source src="@Model.VideoPath" type="video/mp4" />
<object type="application/x-shockwave-flash" data="http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf" width="640" height="360">
<param name="movie" value="http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf" />
<param name="allowFullScreen" value="true" />
<param name="wmode" value="transparent" />
<param name="flashVars" value="config={'playlist':['@Model.PosterUrl',{'url':'@Model.VideoUrl','autoPlay':false}]}" />
<img alt="@Model.AltText" src="@Model.PosterPath" width="640" height="360" title="No video playback capabilities" />
</object>
</video>
发布后,视频元素是存在的,而海报显示正常,但是当我点击播放按钮,我得到一个“流未找到”错误。
我使用用于将videoPath和PosterPath值的相对路径,如下所示:
../../Videos/myvideo.mp4
的VideoUrl和PosterUrl值需要是绝对路径,用“:”和“/”的值更换,所以“http://mywebsite.azurewebsites.net/Videos/myvideo.mp4”被示出如下:
http%3A%2F%2Fmywebsite.azurewebsites.net%2FVideos%2Fmyvideo.mp4
有明显的机会,所述路径(相对和绝对)是不正确的;但由于海报显示正确,我仍然想知道是否有其他原因。
我有什么方法可以测试视频是否已正确发布?道歉,如果这是一个非常基本的问题,这是:-)
感谢
我的第一个Azure应用程序