次のコードはローカル IIS では問題なく動作しますが、デプロイされたビデオはストリーミングされなくなります (ビデオはダウンロードされてから再生されます)。サーバー構成またはプロジェクト構成の問題のようです。誰かが私を助けたり、先導したりできますか?
try
{
ScreenDefinition sd = handler.Get();
Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
if (Format == "Ogg")
{
Response.ContentType = "video/ogg";
Response.AddHeader("Content-Length", sd.Ogg.Length.ToString());
Response.AddHeader("Content-Disposition", "attachment; filename=video.ogg");
Response.OutputStream.Write(sd.Ogg.ToArray(), 0, sd.Ogg.Length);
}
else {
Response.ContentType = "video/mp4";
Response.AddHeader("Content-Length", sd.WhatCanKADoScreenMp4.Length.ToString());
Response.AddHeader("Content-Disposition", "attachment; filename=video.mp4");
Response.OutputStream.Write(sd.Mp4.ToArray(), 0, sd.Mp4.Length);
}
Response.End();
}
catch
{
//videos streaming was canceled by user
//log it
}
ビュー内のコード:
<video width="400" height="300" controls="controls" autoplay="autoplay" style="margin-left: 270px; margin-bottom: 5px;">
<source src="@Url.Action("GetVideoStream", new { Format = "Mp4" })" type="video/mp4">
<source src="@Url.Action("GetVideoStream", new { Format = "Ogg" })" type="video/ogg">
Your browser does not support the video tag.
</video>