【问题标题】:Play AVI file from byte array in ASP.Net [duplicate]从 ASP.Net 中的字节数组播放 AVI 文件 [重复]
【发布时间】:2012-10-12 20:15:54
【问题描述】:

可能重复:
Is it possible to use data URIs in video and audio tags?

是否可以像显示数据库中的图像一样简单地播放存储在数据库中的视频文件?

要显示来自 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。

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    您可以使用 windows 媒体播放器播放 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) 以将此文件流式传输到媒体播放器。 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

    【讨论】:

    • 感谢您的回答。我非常喜欢通用处理程序方法。我刚刚完成了我的处理程序的编码,但我没有得到对象部分。如何将代码部分中的这部分 VALUE="handler.ashx?file=yourFile" 添加到
    • 您可以渲染整个控件或写入参数,如下所示: 函数 GetHandlerUrl 应在内部声明为 public页面类。
    • 我会尽快尝试这个解决方案,我相信它会起作用 ;) 谢谢你的时间
    猜你喜欢
    • 1970-01-01
    • 2012-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-21
    • 2023-03-07
    • 2020-07-13
    相关资源
    最近更新 更多