您的位置:首页 > 编程语言 > ASP

如何在asp.net中如何在线播放各类视频文件

2013-02-17 15:12 561 查看
一。后台拼字符串动态加载写法

前台调用代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

< html xmlns="http://www.w3.org/1999/xhtml" >

< head id="Head1" runat="server">

    <title>视频播放</title>

< /head>

< body>

    <form id="form1" runat="server">

    <div>

    <table>

      <tr>

        <td><div id="video_content" runat="server" style=""></div>     </td>

      </tr>

    </table>

    </div>

    </form>

< /body>

< /html>

后台调用代码

protected void Page_Load(object sender, EventArgs e)

    {

        this.video_content.InnerHtml = PlayMedia.Play("http://hot.tudou.com/flv/005/680/205/5680205.flv", 472,385);

      }

视频播放类:

using System;

using System.Collections.Generic;

using System.Text;

namespace Common

{

    public class PlayMedia

    {

        public PlayMedia()

        {

            //   

            //   TOD   在此处添加构造函数逻辑   

            //   

        }

        public static string Play(string url, int width, int height)

        {

            string strTmp = url.ToLower();

            if (strTmp.EndsWith(".wmv") || strTmp.EndsWith(".mp3") || strTmp.EndsWith(".wma") || strTmp.EndsWith(".avi") || strTmp.EndsWith(".asf") || strTmp.EndsWith(".mpg"))

            {

                return wmv(url, width, height);

            }

            else if (strTmp.EndsWith(".mp3"))

            {

                return mp3(url, width, height);

            }

            else if (strTmp.EndsWith(".swf"))

            {

                return swf(url, width, height);

            }

            else if (strTmp.EndsWith(".flv"))

            {

                return flv(url, width, height);

            }

            else if (strTmp.EndsWith(".jpg") || strTmp.EndsWith(".gif"))

            {

                return img(url, width, height);

            }

            else if (strTmp.EndsWith(".rm"))

            {

                return rm(url, width, height);

            }

            else

            {

                return "视频文件数据错误";

            }

        }

        ///   <summary>   

        ///   flv格式文件播放   

        ///   </summary>   

        ///   <param   name="url"></param>   

        ///   <returns></returns>   

        private static string flv(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   codeBase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,22,87\"   ");

            sb.Append("classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" ");

            sb.Append(" height=\"" + height + "\"   width=\"" + width + "\"   >");

            sb.Append("<param   name=\"FlashVars\"   value=\"vcastr_file="+ url +"&LogoText=www.um173.com&BufferTime=3\">");

            sb.Append("<param   name=\"Movie\"   value=\"\">");           

            sb.Append("<param   name=\"allowFullScreen\"   value=\"true\">");

            sb.Append("<param   name=\"WMode\"   value=\"Window\">");

            sb.Append("<param   name=\"Play\"   value=\"1\">");

            sb.Append("<param   name=\"Loop\"   value=\"-1\">");

            sb.Append("<param   name=\"Quality\"   value=\"High\">");

            sb.Append("<param   name=\"SAlign\"   value=\"\">");

            sb.Append("<param   name=\"Menu\"   value=\"0\">");

            sb.Append("<param   name=\"Base\"   value=\"\">");

            sb.Append("<param   name=\"AllowScriptAccess\"   value=\"always\">");

            sb.Append("<param   name=\"Scale\"   value=\"ShowAll\">");

            sb.Append("<param   name=\"DeviceFont\"   value=\"0\">");

            sb.Append("<param   name=\"EmbedMovie\"   value=\"0\">");

            sb.Append("<param   name=\"BGColor\"   value=\"\">");

            sb.Append("<param   name=\"SWRemote\"   value=\"\">");

            sb.Append("<param   name=\"MovieData\"   value=\"\">");

            sb.Append("<param   name=\"SeamlessTabbing\"   value=\"1\">");

            sb.Append("<param   name=\"Profile\"   value=\"0\">");

            sb.Append("<param   name=\"ProfileAddress\"   value=\"\">");

            sb.Append("<param   name=\"ProfilePort\"   value=\"0\">");

            sb.Append("<embed   src=\"\" flashvars=\"vcastr_file="+ url +"&LogoText=www.um173.com\"   height=\"" + height + "\"   width=\"" + width + "\"   quality=\"high\"   pluginspage=\"http://www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\"  
menu=\"false\">");

            sb.Append("</embed>");

            sb.Append("</object>");

            return sb.ToString();

        }        

          

        ///   <summary>   

        ///   wmv格式文件播放   

        ///   </summary>   

        ///   <param   name="url"></param>   

        ///   <returns></returns>  

        private static string wmv(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   id=\"WMPlay\"   style=\"WIDTH:   " + width + "px;height:" + height + "px\"   \n");

            sb.Append("classid=\"CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6\"   type=application/x-oleobject   standby=\"Loading   Windows   Media   Player   components...\"");

            sb.Append("codebase=\"downloads/mediaplayer9.0_cn.exe\"   VIEWASTEXT>\n");

            sb.Append("<param   name=\"URL\"   value='" + url + "'>\n");

            sb.Append("<param   name=\"controls\"   value=\"ControlPanel,StatusBa\">");

            //<param   name="CONTROLS"   VALUE="ControlPanel,StatusBar">   

            sb.Append("<param   name=\"hidden\"   value=\"1\">");

            sb.Append("<param   name=\"ShowControls\"   value=\"0\">");

            sb.Append("<param   name=\"rate\"   value=\"1\">\n");

            sb.Append("<param   name=\"balance\"   value=\"0\">\n");

            sb.Append("<param   name=\"currentPosition\"   value=\"-1\">\n");

            sb.Append("<param   name=\"defaultFrame\"   value=\"\">\n");

            sb.Append("<param   name=\"playCount\"   value=\"100\">\n");

            sb.Append("<param   name=\"autoStart\"   value=\"-1\">\n");

            sb.Append("<param   name=\"currentMarker\"   value=\"0\">\n");

            sb.Append("<param   name=\"invokeURLs\"   value=\"-1\">\n");

            sb.Append("<param   name=\"baseURL\"   value=\"\">\n");

            sb.Append("<param   name=\"volume\"   value=\"85\">\n");

            sb.Append("<param   name=\"mute\"   value=\"0\">\n");

            sb.Append("<param   name=\"uiMode\"   value=\"mini\">\n");

            sb.Append("<param   name=\"stretchToFit\"   value=\"0\">\n");

            sb.Append("<param   name=\"windowlessVideo\"   value=\"0\">\n");

            sb.Append("<param   name=\"enabled\"   value=\"-1\">\n");

            sb.Append("<param   name=\"enableContextMenu\"   value=\"false\">\n");

            sb.Append("<param   name=\"fullScreen\"   value=\"0\">\n");

            sb.Append("<param   name=\"SAMIStyle\"   value=\"\">\n");

            sb.Append("<param   name=\"SAMILang\"   value=\"\">\n");

            sb.Append("<param   name=\"SAMIFilename\"   value=\"\">\n");

            sb.Append("<param   name=\"captioningID\"   value=\"\">\n");

            sb.Append("</object><br>\n");

            return sb.ToString();

        }

        private static string wma(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   id=\"WMPlay\"   classid=\"clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95\"   style=\"Z-INDEX:   101;   LEFT:   40px;   WIDTH:   240px;   POSITION:   absolute;   TOP:   32px;   HEIGHT:   248px\"   >");

            sb.Append("<param   name=\"Filename\"   value=\"" + url + "\">");

            sb.Append("<param   name=\"PlayCount\"   value=\"1\">");

            sb.Append("<param   name=\"AutoStart\"   value=\"0\">");

            sb.Append("<param   name=\"ClickToPlay\"   value=\"1\">");

            //sb.Append("<param   name=\"DisplaySize\"   value=\"0\">");   

            sb.Append("<param   name=\"EnableFullScreen   Controls\"   value=\"1\">");

            sb.Append("<param   name=\"ShowAudio   Controls\"   value=\"1\">");

            sb.Append("<param   name=\"EnableContext   Menu\"   value=\"1\">");

            sb.Append("<param   name=\"ShowDisplay\"   value=\"1\">");

            sb.Append("</object>");

            return sb.ToString();

        }

        ///   <summary>   

        ///   avi格式文件播放   

        ///   </summary>   

        ///   <param   name="url"></param>   

        ///   <returns></returns>   

        private static string avi(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   id=\"WMPlay\"   width=\"400\"   height=\"200\"   border=\"0\"   classid=\"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA\">");

            sb.Append("<param   name=\"ShowDisplay\"   value=\"0\">");

            sb.Append("<param   name=\"ShowControls\"   value=\"1\">");

            sb.Append("<param   name=\"AutoStart\"   value=\"1\">");

            sb.Append("<param   name=\"AutoRewind\"   value=\"0\">");

            sb.Append("<param   name=\"PlayCount\"   value=\"0\">");

            sb.Append("<param   name=\"Appearance   value=\"0   value=\"\"\">");

            sb.Append("<param   name=\"BorderStyle   value=\"0   value=\"\"\">");

            sb.Append("<param   name=\"MovieWindowHeight\"   value=\"240\">");

            sb.Append("<param   name=\"MovieWindowWidth\"   value=\"320\">");

            sb.Append("<param   name=\"FileName\"   value=\"" + url + "\">");

            sb.Append("</object>");

            return sb.ToString();

        }

        private static string mpg(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   classid=\"clsid:05589FA1-C356-11CE-BF01-00AA0055595A\"   id=\"WMPlay\"   width=\"239\"   height=\"250\">");

            sb.Append("<param   name=\"Filename\"   value=\"" + url + "\"   valuetype=\"ref\">");

            sb.Append("<param   name=\"Appearance\"   value=\"0\">");

            sb.Append("<param   name=\"AutoStart\"   value=\"-1\">");

            sb.Append("<param   name=\"AllowChangeDisplayMode\"   value=\"-1\">");

            sb.Append("<param   name=\"AllowHideDisplay\"   value=\"0\">");

            sb.Append("<param   name=\"AllowHideControls\"   value=\"-1\">");

            sb.Append("<param   name=\"AutoRewind\"   value=\"-1\">");

            sb.Append("<param   name=\"Balance\"   value=\"0\">");

            sb.Append("<param   name=\"CurrentPosition\"   value=\"0\">");

            sb.Append("<param   name=\"DisplayBackColor\"   value=\"0\">");

            sb.Append("<param   name=\"DisplayForeColor\"   value=\"16777215\">");

            sb.Append("<param   name=\"DisplayMode\"   value=\"0\">");

            sb.Append("<param   name=\"Enabled\"   value=\"-1\">");

            sb.Append("<param   name=\"EnableContextMenu\"   value=\"-1\">");

            sb.Append("<param   name=\"EnablePositionControls\"   value=\"-1\">");

            sb.Append("<param   name=\"EnableSelectionControls\"   value=\"0\">");

            sb.Append("<param   name=\"EnableTracker\"   value=\"-1\">");

            sb.Append("<param   name=\"FullScreenMode\"   value=\"0\">");

            sb.Append("<param   name=\"MovieWindowSize\"   value=\"0\">");

            sb.Append("<param   name=\"PlayCount\"   value=\"1\">");

            sb.Append("<param   name=\"Rate\"   value=\"1\">");

            sb.Append("<param   name=\"SelectionStart\"   value=\"-1\">");

            sb.Append("<param   name=\"SelectionEnd\"   value=\"-1\">");

            sb.Append("<param   name=\"ShowControls\"   value=\"-1\">");

            sb.Append("<param   name=\"ShowDisplay\"   value=\"-1\">");

            sb.Append("<param   name=\"ShowPositionControls\"   value=\"0\">");

            sb.Append("<param   name=\"ShowTracker\"   value=\"-1\">");

            sb.Append("<param   name=\"Volume\"   value=\"-480\">");

            sb.Append("</object>");

            return sb.ToString();

        }

        private static string rm(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   ID=\"WMPlay\"   codebase=\"downloads/RealPlayer10-5GOLD_cn0302.exe\"   CLASSID=\"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA\"   HEIGHT=" + height + "   WIDTH=" + width + ">");

            sb.Append("<param   name=\"SRC\"   value=\"" + url + "\">");

            //sb.Append("<param   name=\"_ExtentX\"   value=\"9313\">");   

            //sb.Append("<param   name=\"_ExtentY\"   value=\"7620\">");   

            sb.Append("<param   name=\"AUTOSTART\"   value=\"0\">");

            sb.Append("<param   name=\"SHUFFLE\"   value=\"0\">");

            sb.Append("<param   name=\"PREFETCH\"   value=\"0\">");

            sb.Append("<param   name=\"NOLABELS\"   value=\"0\">");

            sb.Append("<param   name=\"CONTROLS\"   value=\"ImageWindow,ControlPanel,statusbar\">");

            sb.Append("<param   name=\"CONSOLE\"   value=\"Clip1\">");

            sb.Append("<param   name=\"LOOP\"   value=\"0\">");

            sb.Append("<param   name=\"NUMLOOP\"   value=\"0\">");

            sb.Append("<param   name=\"CENTER\"   value=\"0\">");

            sb.Append("<param   name=\"MAINTAINASPECT\"   value=\"0\">");

            sb.Append("<param   name=\"BACKGROUNDCOLOR\"   value=\"#000000\">");

            //sb.Append("<embed   SRC   type=\"audio/x-pn-realaudio-plugin\"   CONSOLE=\"Clip1\"   CONTROLS=\"ImageWindow\"   HEIGHT=\"250\"   WIDTH=\"354\"   AUTOSTART=\"false\">");  

            sb.Append("</object>");

            return sb.ToString();

        }

        private static string swf(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   codeBase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,22,87\"   ");

            sb.Append("   height=\"" + height + "\"   width=\"" + width + "\"   >");

            sb.Append("<param   name=\"FlashVars\"   value=\"\">");

            sb.Append("<param   name=\"Movie\"   value=\"" + url + "\">");

            sb.Append("<param   name=\"Src\"   value=\"" + url + "\">");

            sb.Append("<param   name=\"WMode\"   value=\"Window\">");

            sb.Append("<param   name=\"Play\"   value=\"-1\">");

            sb.Append("<param   name=\"Loop\"   value=\"-1\">");

            sb.Append("<param   name=\"Quality\"   value=\"High\">");

            sb.Append("<param   name=\"SAlign\"   value=\"\">");

            sb.Append("<param   name=\"Menu\"   value=\"0\">");

            sb.Append("<param   name=\"Base\"   value=\"\">");

            sb.Append("<param   name=\"AllowScriptAccess\"   value=\"always\">");

            sb.Append("<param   name=\"Scale\"   value=\"ShowAll\">");

            sb.Append("<param   name=\"DeviceFont\"   value=\"0\">");

            sb.Append("<param   name=\"EmbedMovie\"   value=\"0\">");

            sb.Append("<param   name=\"BGColor\"   value=\"\">");

            sb.Append("<param   name=\"SWRemote\"   value=\"\">");

            sb.Append("<param   name=\"MovieData\"   value=\"\">");

            sb.Append("<param   name=\"SeamlessTabbing\"   value=\"1\">");

            sb.Append("<embed   src=\"" + url + "\"   height=\"" + height + "\"   width=\"" + width + "\"   quality=\"high\"   pluginspage=\"http://www.macromedia.com/go/getflashplayer\"type=\"application/x-shockwave-flash\"   menu=\"false\">"); sb.Append("</embed>");

            sb.Append("</object>");

            return sb.ToString();

        }

        private static string mp3(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<object   classid=\"WMPlay\"   codebase=\"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715\"   type=\"application/x-oleobject\"   width=\"   +   width   +   \"   height=\"   +   height   +   \"  
hspace=\"0\"   standby=\"Loading   Microsoft   Windows   Media   Player   components...\"   id=\"NSPlay\">");

            sb.Append("<param   name=\"AutoRewind\"   value=\"0\">");

            sb.Append("<param   name=\"FileName\"   value=\"   +   url   +   \">");

            sb.Append("<param   name=\"ShowControls\"   value=\"1\">");

            sb.Append("<param   name=\"ShowPositionControls\"   value=\"0\">");

            sb.Append("<param   name=\"ShowAudioControls\"   value=\"1\">");

            sb.Append("<param   name=\"ShowTracker\"   value=\"0\">");

            sb.Append("<param   name=\"ShowDisplay\"   value=\"0\">");

            sb.Append("<param   name=\"ShowStatusBar\"   value=\"1\">");

            sb.Append("<param   name=\"ShowGotoBar\"   value=\"0\">");

            sb.Append("<param   name=\"ShowCaptioning\"   value=\"0\">");

            sb.Append("<param   name=\"AutoStart\"   value=\"1\">");

            sb.Append("<param   name=\"Volume\"   value=\"-2500\">");

            sb.Append("<param   name=\"AnimationAtStart\"   value=\"0\">");

            sb.Append("<param   name=\"TransparentAtStart\"   value=\"0\">");

            sb.Append("<param   name=\"AllowChangeDisplaySize\"   value=\"0\">");

            sb.Append("<param   name=\"AllowScan\"   value=\"0\">");

            sb.Append("<param   name=\"EnableContextMenu\"   value=\"0\">");

            sb.Append("<param   name=\"ClickToPlay\"   value=\"0\">");

            sb.Append("</object>");

            return sb.ToString();

        }

        private static string img(string url, int width, int height)

        {

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<img   src=\"" + url + "\"   height=\"" + height + "\"   width=\"" + width + "\"   border=\"0\">");

            return sb.ToString();

        }

    }

}

二。前台拼字符串JS调用写法

FLV需要播放器,其它视频格式直接插入相应的代码即可。
-------------------------------------
/**
*参数说明
u - 媒体URL
w - 媒体宽度width
h - 媒体高度height
*/

//播放Mediaplayer格式的视频,包括.avi .mpg .mpeg .wmv .wma .asf .mid .mp3等
function pv_m(u, w, h){
var pv='';
pv += '<object width="'+w+'" height="'+h+'" id="iask_v" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject">';
pv += '<param name="FileName" value="'+u+'">';
pv += '<param name="AutoStart" value="1">';
pv += '<param name="AutoSize" value="1">';
pv += '<param name="ShowControls" value="1">';
pv += '<param name="ShowPositionControls" value="0">';
pv += '<param name="ShowAudioControls" value="1">';
pv += '<param name="ShowTracker" value="1">';
pv += '<param name="ShowDisplay" value="0">';
pv += '<param name="ShowStatusBar" value="1">';
pv += '<param name="ShowGotoBar" value="0">';
pv += '<param name="ShowCaptioning" value="0">';
pv += '<param name="PlayCount" value="1">';
pv += '<param name="AnimationAtStart" value="0">';
pv += '<param name="TransparentAtStart" value="0">';
pv += '<param name="AllowScan" value="0">';
pv += '<param name="EnableContextMenu" value="0">';
pv += '<param name="ClickToPlay" value="0">';
pv += '<param name="InvokeURLs" value="1">';
pv += '<param name="DefaultFrame" value="">';
pv += '<embed src="'+u+'" width="'+w+'" height="'+h+'" type="application/x-mplayer2" pluginspage="http://www.microsoft.com/isapi/redir.dll?prd=windows&;sbp=mediaplayer&ar=media&sba=plugin&" name="MediaPlayer" showcontrols="1" showpositioncontrols="0" showaudiocontrols="1" showtracker="1" showdisplay="0" showstatusbar="1" autosize="0" showgotobar="0" showcaptioning="0" autostart="1" autorewind="0" animationatstart="0" transparentatstart="0" allowscan="1" enablecontextmenu="1" clicktoplay="0" invokeurls="1" defaultframe=""></embed>';
pv += '</object>';
document.write(pv);
}

//播放Realplay格式的视频,包括.rm .ram .rmvb等
function pv_r(u, w, h){
var pv='';
pv += '<object width="'+w+'" height="'+h+'" id="iask_v" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA">';
pv += '<param name="SRC" value="'+u+'">';
pv += '<param name="AUTOSTART" value="1">';
pv += '<param name="CONTROLS" value="Imagewindow,StatusBar,ControlPanel">';
pv += '<param name="_ExtentX" value="18415">';
pv += '<param name="_ExtentY" value="9102">';
pv += '<param name="SHUFFLE" value="0">';
pv += '<param name="PREFETCH" value="0">';
pv += '<param name="NOLABELS" value="0">';
pv += '<param name="CONSOLE" value="Clip1">';
pv += '<param name="LOOP" value="0">';
pv += '<param name="NUMLOOP" value="0">';
pv += '<param name="CENTER" value="0">';
pv += '<param name="MAINTAINASPECT" value="0">';
pv += '<param name="BACKGROUNDCOLOR" value="#000000">';
pv += '<embed src="'+u+'" width="'+w+'" height="'+h+'" type="audio/x-pn-realaudio-plugin" console="Clip1" controls="Imagewindow,StatusBar,ControlPanel" autostart="true">';
pv += '</object>';
document.write(pv);
}

//播放Quicktime格式的视频,包括.mov .amr .3gp等
function pv_q(u, w, h){
var pv='';
pv += '<object width="'+w+'" height="'+h+'" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab">';
pv += '<param name="src" value="'+u+'">';
pv += '<param name="controller" value="true">';
pv += '<param name="type" value="video/quicktime">';
pv += '<param name="autoplay" value="true">';
pv += '<param name="target" value="myself">';
pv += '<param name="bgcolor" value="black">';
pv += '<param name="pluginspage" value="http://www.apple.com/quicktime/download/index.html">';
pv += '<embed src="'+u+'" width="'+w+'" height="'+h+'" controller="true" align="middle" bgcolor="black" target="myself" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/index.html"></embed>';
pv += '</object>';
document.write(pv);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: