C# 视频播放类

 更新时间:2009年06月02日 17:31:43   作者:  
c#下实现视频播放的类代码。
复制代码 代码如下:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/// <summary>
/// PlayClass 的摘要说明
/// </summary>
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();
}
}
}

相关文章

  • C#实现进程管理的启动和停止实例

    C#实现进程管理的启动和停止实例

    这篇文章主要介绍了C#实现进程管理的启动和停止方法,以操作记事本程序为例,实例分析了C#针对进程操作的基本技巧,需要的朋友可以参考下
    2015-07-07
  • c#系列 list详情

    c#系列 list详情

    这篇文章主要介绍了c#系列 list,list 本质是一个数组,。就跟我们操作系统一样,提前申请内存大小。所以我们程序一般都有一个申请内存,实际使用内存,内存碎片这几个概念,下面俩看文章详细内容吧
    2021-10-10
  • Unity实现倒计时功能

    Unity实现倒计时功能

    这篇文章主要为大家详细介绍了Unity实现倒计时功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-05-05
  • C#目录和文件管理操作详解

    C#目录和文件管理操作详解

    在C#中常用的目录操作类有Directory,DirectoryInfo,下面这篇文章主要给大家介绍了关于C#目录和文件管理操作的相关资料,需要的朋友可以参考下
    2022-10-10
  • Unity3D撤回命令开发详解

    Unity3D撤回命令开发详解

    这篇文章主要为大家详细介绍了Unity3D撤回命令开发,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-03-03
  • 浅析c#范型中的特殊关键字where & default

    浅析c#范型中的特殊关键字where & default

    以下是对c#范型中的特殊关键字where和default进行了详细的介绍,需要的朋友可以过来参考下
    2013-09-09
  • C#实现的文件操作封装类完整实例【删除,移动,复制,重命名】

    C#实现的文件操作封装类完整实例【删除,移动,复制,重命名】

    这篇文章主要介绍了C#实现的文件操作封装类,结合完整实例形式分析了C#封装文件的删除,移动,复制,重命名等操作相关实现技巧,需要的朋友可以参考下
    2017-03-03
  • C# 从Excel读取数据向SQL server写入

    C# 从Excel读取数据向SQL server写入

    这篇文章主要介绍了C# 从Excel读取数据向SQL server写入的方法,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下
    2021-03-03
  • Unity实现识别图像中主体及其位置

    Unity实现识别图像中主体及其位置

    EasyDL基于飞桨开源深度学习平台,面向企业AI应用开发者提供零门槛AI开发平台,实现零算法基础定制高精度AI模型。本文将利用Unity和EasyDL实现识别图像中主体及其位置,感兴趣的可以了解一下
    2022-02-02
  • C# 扩展方法的使用

    C# 扩展方法的使用

    这篇文章主要介绍了C# 扩展方法的使用,帮助大家更好的理解和学习c#编程语言,感兴趣的朋友可以了解下
    2020-12-12

最新评论