可能重复:
Is it possible to use data URIs in video and audio tags?
是否可以播放存储在数据库中的视频文件,就像从db显示图像一样简单?
要显示db中的图像,这就是我使用的;
aspx文件
<asp:Image ID="PicImage" runat="server" />
cs文件
PicImage.Attributes.Add("src", "data:image/png;base64," + Convert.ToBase64String(PictureByteArray));
你认为,我可以在下使用这些内容而不先在服务器中创建文件吗?
<embed src="video.avi" />
<img dynsrc="video.avi" />
<object data="video.avi" type="video/avi" />
我怎样才能做到这一点?
我知道Silverlight不播放.avi文件,但只播放wmv。
答案 0 :(得分:5)
您可以使用Windows Media Player播放avi文件。这是html代码:
<OBJECT ID="MediaPlayer" WIDTH="320" HEIGHT="160" CLASSID="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
STANDBY="Loading Windows Media Player components..." TYPE="application/x-oleobject">
<PARAM NAME="FileName" VALUE="yourFile.avi">
<PARAM name="autostart" VALUE="false">
<PARAM name="ShowControls" VALUE="true">
<param name="ShowStatusBar" value="false">
<PARAM name="ShowDisplay" VALUE="false">
<EMBED TYPE="application/x-mplayer2" SRC="yourFile.avi" NAME="MediaPlayer"
WIDTH="320" HEIGHT="160" ShowControls="1" ShowStatusBar="0" ShowDisplay="0" autostart="0"> </EMBED>
</OBJECT>
也可以使用FlashPlayer。
因为您将文件作为字节数组(数据库源),您需要创建通用处理程序(ashx)以将此文件传输到Media Player。 FileName的Html参数看起来像这样:
<PARAM NAME="FileName" VALUE="handler.ashx?file=yourFile">
确保在ashx处理程序中设置正确的ContentType,如下所示:
context.Response.ContentType = "video/avi";
context.Response.Write(fileData, 0, fileData.Length);
以下是开始使用ashx文件的链接:
http://msdn.microsoft.com/en-us/library/bb398986(v=vs.100).aspx