2
protected void Button2_Click(object sender, EventArgs e)
{
    UploadLogic bl = new UploadLogic();
    input = ListBox1.SelectedIndex >= 0 ? ListBox1.SelectedItem.ToString() : "";
    DataSet ds = new DataSet();
    ds = bl.Content_details(input);

    if (ds.Tables[0].Rows.Count > 0)
    {
        Byte[] bytes = (Byte[])ds.Tables[0].Rows[0].ItemArray.GetValue(3);
        Response.Buffer = true;

        Response.Charset = "utf-16";

        Response.Cache.SetCacheability(HttpCacheability.NoCache);

        Response.ContentEncoding = System.Text.Encoding.GetEncoding("windows-1250");

        Response.ContentType = ds.Tables[0].Rows[0].ItemArray.GetValue(2).ToString();

        Response.AddHeader("content-disposition", string.Format("File_Path; filename={0}", input));

        Response.OutputStream.Write(bytes, 0, input.Length);
        Response.BinaryWrite(bytes);

        Response.Flush();

        Response.End();
    }
    else
    {
        Label1.Text = "No File Found..!";
    }
}

我写了这段代码,但它只从数据库下载文件。如果我想播放音频和视频,那我该怎么做呢?

4

2 回答 2

4

首先,在您的代码中,您只是获取并发送文件(视频或音频),并且您认为浏览器知道如何处理。另一方的浏览器将在两种想法中做出决定,一种是在整页中显示/播放您发送的内容,或者只是要求下载。因为是找到File_Path,所以决定要用户下载。

现在如何实际播放音频或视频到网页。到目前为止,大多数浏览器都不支持直接播放音频/视频,解决方案是使用 adobe flash 播放器。使用在 adobe 上制作的播放器,您可以将视频/音频文件(以正确的格式)发送给它,他可以播放它。Microsoft silverlight也可以做到这一点。

现在有了新的浏览器和html 5,你可以直接在一个页面上播放音频和视频。

因此,由您决定采用哪种方式,flash、silverlight、html5。

一些例子:

使用html5直接播放音频/视频

http://www.w3schools.com/html/html_videos.asp

http://www.w3schools.com/html/tryit.asp?filename=tryhtml_video_html5_4

http://www.web-video-player.com/

http://jplayer.org/latest/demos/

使用“Flash Player”播放音频/视频

http://flowplayer.org/

http://applian.com/flvplayer/

使用 Silverlight 播放音频/视频

http://slvideoplayer.codeplex.com/

http://openvideoplayer.sourceforge.net/

http://www.longtailvideo.com/players/jw-wmv-player/

如何在播放器上发送视频

让我们看看这部分代码:

<embed width="320" height="240" src="movie.swf">

在这段代码中,movie.swf是您喜欢播放的文件。要直接从数据库中获取它,您必须做的是将其更改为处理程序,然后从该处理程序发送此文件。

<embed width="320" height="240" src="loadmovie.ashx?movie.swf">

现在在里面loadmovie.ashx运行你的代码,从数据库中读取电影/音频,然后将其发送到播放器,参数来自 url 行。

如何在页面中打开它

我看到您尝试在单击按钮时显示视频。更好的方法是使用打开包含视频的新页面的链接,或者在页面内打开一个 javascript 窗口并显示它,或者只是在页面内显示一个 div 块并显示它。查看“YouTube w/fade effect”上的示例http://highslide.com/#examples ,了解如何在同一页面中打开它并播放它。

相对:如何在 ASP.NET 中处理视频?

如何使用 vb.net 在 asp.net 中播放声音?

于 2012-05-18T07:47:44.693 回答
0

只需将此标签添加到您的网页。

scrolling="no" frameborder="0" marginheight="0" marginwidth="0">
音乐名称

于 2013-11-19T13:33:47.393 回答