我正在尝试创建一个显示多个培训视频的视图。虽然我确实得到了以下代码,但我现在只获得了黑色视频帧。
我的VideoController:
public ActionResult GetVideo()
{
var videoPath =
Request.MapPath("~/Content/videoFile/IQ3612 Benefits.mp4");
FileStream fs =
new FileStream(videoPath, FileMode.Open);
return new FileStreamResult(fs, "video/mp4");
}
public ActionResult GetVideo2()
{
var videoPath2 =
Request.MapPath("~/Content/videoFile/IQ3612 Technical.mp4");
FileStream fs2 =
new FileStream(videoPath2, FileMode.Open);
return new FileStreamResult(fs2, "video/mp4");
}
我的观点:
<body>
<h1>Training Video Index</h1>
<div>
<video width="320" height="240" controls="controls" >
<source src="@Url.Action("GetVideo","Video")" type="video/mp4">
</video>
</div>
<div></div>
<div>
<video width="320" height="240" controls="controls">
<source src="@Url.Action("GetVideo2","Video")" type="video/mp4">
</video>
</div>
答案 0 :(得分:0)
请检查web.config
文件中是否正确设置了.mp4格式的MIME类型。
<system.webServer>
<staticContent>
<mimeMap fileExtension=".mp4" mimeType="video/mp4" />
</staticContent>
</system.webServer>
答案 1 :(得分:0)
虽然我确实得到了以下代码,但我现在只得到黑色 视频帧。
自上次工作测试以来,文件路径是否已更改?您不应该在文件名中使用空格作为Web URL。例如:IQ3612 Benefits.mp4
应为IQ3612_Benefits.mp4
(此处为下划线,或使用短划线或完整停靠点)。
最终网址:~/Content/videoFile/IQ3612_Benefits.mp4
。
也尽量尝试直接路径。这意味着将您的文件放在服务器上并直接链接到它们。尝试HTTP版~
,而不是代替../Content/videoFile/IQ3612_Benefits.mp4
,但像http://www.mysite/Content/videoFile/IQ3612_Benefits.mp4
这样的直接链接效果最好。