转CSDN:播放媒体文件_ASP.NET播放视频文件,开源代码

///C#中的媒体播放类   
   using    System;   
   namespace    ConfigTools   
   {   
   ///    <summary>   
   ///    PlayClass    的摘要说明。   
   ///原作CSDN,经本人稍加修改   
   ///    </summary>   
   public    class    PlayClass   
   {   
   public    PlayClass()   
   {   
       //   
       //    TOD    在此处添加构造函数逻辑   
       //   
   }   
   public    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(".jpg")||strTmp.EndsWith(".gif"))   
       {   
       return    img(url,width,    height);   
       }     
       else    if(strTmp.EndsWith(".rm"))   
       {   
       return    rm(url,width,    height);   
       }   
    
       else   
       {   
       return    "数据错误";   
       }         
   }   
    
    
   ///    <summary>   
   ///    wmv格式文件播放   
   ///    </summary>   
   ///    <param    name="url"></param>   
   ///    <returns></returns>   
    
   private    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    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    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    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    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    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=6,0,29,0\"    ");   
       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    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    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();   
   }   
   }   
    
    
   }  
用法:   
    

   ConfigTools.PlayClass    pc=new    ConfigTools.PlayClass();   
    
   Label1.Text=pc.Play("文件路径",高度,宽度);  

posted on 2008-08-12 17:10  草原和大树  阅读(1200)  评论(0编辑  收藏  举报