播放器源码全集

    技术2022-05-19  25

    在网页中插入视频播放代码全集

     

    [code]1.avi格式 

     

    代码片断如下: 

     

    <object id="video" width="400" height="200" border="0" 

    classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"> 

     

    <param name="ShowDisplay" value="0"> 

     

    <param name="ShowControls" value="1"> 

     

    <param name="AutoStart" value="1"> 

     

    <param name="AutoRewind" value="0"> 

     

    <param name="PlayCount" value="0"> 

     

    <param name="Appearance value="0 value="""> 

     

    <param name="BorderStyle value="0 value="""> 

     

    <param name="MovieWindowHeight" value="240"> 

     

    <param name="MovieWindowWidth" value="320"> 

     

    <param name="FileName" value="/Mbar.avi"> 

     

    <embed width="400" height="200" border="0" showdisplay="0" 

    showc autostart="1" autorewind="0" playcount="0" 

    moviewindowheight="240" moviewindowwidth="320" filename="/Mbar.avi" 

    src="Mbar.avi"> 

     

    </embed> 

     

    </object> 

     

    2.mpg格式 

     

    代码片断如下: 

     

    <object classid="clsid:05589FA1-C356-11CE-BF01-00AA0055595A" 

     

    id="ActiveMovie1" 

    width="239" height="250"> 

     

    <param name="Appearance" value="0"> 

     

    <param name="AutoStart" value="-1"> 

     

    <param name="AllowChangeDisplayMode" value="-1"> 

     

    <param name="AllowHideDisplay" value="0">

    <param name="AllowHideControls" value="-1"> 

     

    <param name="AutoRewind" value="-1"> 

     

    <param name="Balance" value="0"> 

     

    <param name="CurrentPosition" value="0"> 

     

    <param name="DisplayBackColor" value="0"> 

     

    <param name="DisplayForeColor" value="16777215"> 

     

    <param name="DisplayMode" value="0"> 

     

    <param name="Enabled" value="-1"> 

     

    <param name="EnableContextMenu" value="-1"> 

     

    <param name="EnablePositionControls" value="-1"> 

     

    <param name="EnableSelectionControls" value="0"> 

     

    <param name="EnableTracker" value="-1"> 

     

    <param name="Filename" value="/mpeg/halali.mpg" valuetype="ref"> 

     

    <param name="FullScreenMode" value="0"> 

     

    <param name="MovieWindowSize" value="0"> 

     

    <param name="PlayCount" value="1"> 

     

    <param name="Rate" value="1"> 

     

    <param name="SelectionStart" value="-1"> 

     

    <param name="SelectionEnd" value="-1"> 

     

    <param name="ShowControls" value="-1"> 

     

    <param name="ShowDisplay" value="-1"> 

     

    <param name="ShowPositionControls" value="0"> 

     

    <param name="ShowTracker" value="-1"> 

     

    <param name="Volume" value="-480"> 

     

    </object>

    3.smi格式 

     

    代码片断如下: 

     

    <OBJECT id=RVOCX classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA width=240 

    height=180> 

     

    <param name="_ExtentX" value="6350"> 

     

    <param name="_ExtentY" value="4763"> 

     

    <param name="AUTOSTART" value="-1"> 

     

    <param name="SHUFFLE" value="0"> 

     

    <param name="PREFETCH" value="0"> 

     

    <param name="NOLABELS" value="-1"> 

     

    <param name="SRC" value="rm.rm"> 

     

    <param name="CONTROLS" value="ImageWindow"> 

     

    <param name="CONSOLE" value="console1"> 

     

    <param name="LOOP" value="0"> 

     

    <param name="NUMLOOP" value="0"> 

     

    <param name="CENTER" value="0"> 

     

    <param name="MAINTAINASPECT" value="0"> 

     

    <param name="BACKGROUNDCOLOR" value="#000000"><embed 

    src="real.smi" type="audio/x-pn-realaudio-plugin" height="180" width="240" 

    autostart="true"></OBJECT> 

     

     

    4.rm格式 

     

    代码片断如下: 

     

    <OBJECT ID=video1 CLASSID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" 

    HEIGHT=288 WIDTH=352> 

     

    <param name="_ExtentX" value="9313"> 

     

    <param name="_ExtentY" value="7620"> 

     

    <param name="AUTOSTART" value="0"> 

     

    <param name="SHUFFLE" value="0"> 

     

    <param name="PREFETCH" value="0"> 

     

    <param name="NOLABELS" value="0">

    <param name="SRC" value="rtsp://203.*.*.35/vod/dawan-a.rm"> 

     

    <param name="CONTROLS" value="ImageWindow"> 

     

    <param name="CONSOLE" value="Clip1"> 

     

    <param name="LOOP" value="0"> 

     

    <param name="NUMLOOP" value="0"> 

     

    <param name="CENTER" value="0"> 

     

    <param name="MAINTAINASPECT" value="0"> 

     

    <param name="BACKGROUNDCOLOR" value="#000000"><embed 

    SRC type="audio/x-pn-realaudio-plugin" C C 

    HEIGHT="288" WIDTH="352" AUTOSTART="false"> 

     

    </OBJECT> 

     

    5.wmv格式 

     

    代码片断如下: 

     

    <object id="NSPlay" width=200 height=180 classid="CLSID:22d6f312-b0f6-11d0-

     

    94ab-0080c74c7e95" 

    codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.c

     

    ab#Version=6,4,5,715" 

    standby="Loading Microsoft Windows Media Player components..." 

     

    type="application/x-oleobject" 

    align="right" hspace="5"> 

     

    <param name="AutoRewind" value=1> 

     

    <param name="FileName" value="/blog/******.wmv"> 

     

    <param name="ShowControls" value="1"> 

     

    <param name="ShowPositionControls" value="0"> 

     

    <param name="ShowAudioControls" value="1"> 

     

    <param name="ShowTracker" value="0"> 

     

    <param name="ShowDisplay" value="0"> 

     

    <param name="ShowStatusBar" value="0"> 

     

    <param name="ShowGotoBar" value="0">

    <param name="ShowCaptioning" value="0"> 

     

    <param name="AutoStart" value=1> 

     

    <param name="Volume" value="-2500"> 

     

    <param name="AnimationAtStart" value="0"> 

     

    <param name="TransparentAtStart" value="0"> 

     

    <param name="AllowChangeDisplaySize" value="0"> 

     

    <param name="AllowScan" value="0"> 

     

    <param name="EnableContextMenu" value="0"> 

     

    <param name="ClickToPlay" value="0"> 

     

    </object> 

     

     

    6.wma格式 

     

    放在 <body> 里面.下面是部分解释: 

     

    <object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" 

     

    id="MediaPlayer1" 

     

    <param name="Filename" value="/blog/1.Wma"> <!--你文件的位置--> 

     

    <param name="PlayCount" value="1"><!--控制重复次数: “x”为几重复播放几次; 

    x=0,无限循环.--> 

     

    <param name="AutoStart" value="0"><!--控制播放方式: x=1,打开网页自动播放; 

    x=0,按播放键播放.--> 

     

    <param name="ClickToPlay" value="1"><!--控制播放开关: 

    x=1,可鼠标点击控制播放或暂停状态; x=0,禁用此功能.--> 

     

    <param name="DisplaySize" value="0"><!--控制播放画面: 

    x=0,原始大小; x=1,一半大小; x=2,2倍大小.--> 

     

    <param name="EnableFullScreen Controls" value="1"><!--控制切换全屏: 

    x=1,允许切换为全屏; x=0,禁用此功能.--> 

     

    <param name="ShowAudio Controls" value="1"><!--控制音量: 

    x=1,允许调节音量; x=0,禁止音量调节.--> 

     

    <param name="EnableContext Menu" value="1"><!--控制快捷菜单: 

    x=1,允许使用右键菜单; x=0,禁用右键菜单.--> 

     

    <param name="ShowDisplay" value="1"><!--控制版权信息: 

    x=1,显示电影及作者信息;x=0,不显示相关信息--> 

     

    </object>

    7.Windows Media Player 系列(不同面板样式) 

     

    综合型: 

     

    <object classid=clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95 

     

    codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.c

     

    ab#Version=6,1,5,217" 

     

    id=MediaPlayer type=application/x-oleobject width=210 height=340 

     

    standby="Loading 

    Microsoft Windows Media Player components..." VIEWASTEXT align=MIDDLE> 

     

    <param name=AudioStream value=-1> 

     

    <param name=AutoSize value=0> 

     

    <param name=AutoStart value=1> 

     

    <param name=AnimationAtStart value=0> 

     

    <param name=AllowScan value=-1> 

     

    <param name=AllowChangeDisplaySize value=0> 

     

    <param name=AutoRewind value=0> 

     

    <param name=Balance value=0> 

     

    <param name=BaseURL value=""> 

     

    <param name=BufferingTime value=5> 

     

    <param name=CaptioningID value=""> 

     

    <param name=ClickToPlay value=0> 

     

    <param name=CursorType value=32512> 

     

    <param name=CurrentPosition value=-1> 

     

    <param name=CurrentMarker value=0> 

     

    <param name=DefaultFrame value=1> 

     

    <param name=DisplayBackColor value=0> 

     

    <param name=DisplayForeColor value=16777215> 

     

    <param name=DisplayMode value=0> 

     

    <param name=DisplaySize value=0> 

     

    <param name=Enabled value=-1> 

     

    <param name=EnableContextMenu value=-1> 

     

    <param name=EnablePositionControls value=0> 

     

    <param name=EnableFullScreenControls value=0>

    <param name=EnableTracker value=1> 

     

    <param name=Filename value="http://202.102.*.*/flash/2/fff.swf"> 

     

    <param name=InvokeURLs value=-1> 

     

    <param name=Language value=-1> 

     

    <param name=Mute value=0> 

     

    <param name=PlayCount value=1> 

     

    <param name=PreviewMode value=0> 

     

    <param name=Rate value=1> 

     

    <param name=SAMILang value=""> 

     

    <param name=SAMIStyle value=""> 

     

    <param name=SAMIFileName value=""> 

     

    <param name=SelectionStart value=0> 

     

    <param name=SelectionEnd value=true> 

     

    <param name=SendOpenStateChangeEvents value=-1> 

     

    <param name=SendWarningEvents value=-1> 

     

    <param name=SendErrorEvents value=-1> 

     

    <param name=SendKeyboardEvents value=0> 

     

    <param name=SendMouseClickEvents value=0> 

     

    <param name=SendMouseMoveEvents value=0> 

     

    <param name=SendPlayStateChangeEvents value=-1> 

     

    <param name=ShowCaptioning value=0> 

     

    <param name=ShowControls value=1> 

     

    <param name=ShowAudioControls value=1> 

     

    <param name=ShowDisplay value=1> 

     

    <param name=ShowGotoBar value=1>

    <param name=ShowPositionControls value=1> 

     

    <param name=ShowStatusBar value=1> 

     

    <param name=ShowTracker value=1> 

     

    <param name=TransparentAtStart value=0> 

     

    <param name=VideoBorderWidth value=0> 

     

    <param name=VideoBorderColor value=0> 

     

    <param name=VideoBorder3D value=0> 

     

    <param name=Volume value=-1070> 

     

    <param name=WindowlessVideo value=1> 

     

    </object> 

     

    简易型: 

     

    <EMBED src=http://www.*.com/mediadate/lxlhbcn.asf style="HEIGHT: 45px; 

    WIDTH: 190px" type=audio/mpeg AUTOSTART="1" loop="0"> 

     

    </EMBED> 

     

     

    标签型: 

     

    <embed width=240 height=140 transparentatstart=true animationatstart=false 

    autostart=true autosize=false volume=100 displaysize=0 showdisplay=true 

     

    showstatusbar=true 

    showcontrols=true showaudiocontrols=true showtracker=true 

     

    showpositioncontrols=true 

    balance=true src="http://www.*.com/mediadate/lxlhbcn.asf"> 

     

    </embed> 

     

    引用内容 

     

    媒体播放器的外观界面 

     

    在网页中,你可以通过相关属性来控制媒体播放器的哪些部分出现,哪些部分不出现. 

     

    媒体播放器包括如下元素: 

     

    Video Display Panel:视频显示面板; 

     

    Video Border:视频边框; 

     

    Closed Captioning Display Panel;字幕显示面板; 

     

    Track Bar;搜索栏; 

     

    Control Bar with Audio and Position Controls:带有声音和位置控制的控制栏;

    Display Panel:显示面板; 

     

    Status Bar:状态栏; 

     

    下面的属性用来决定显示哪一个元素: 

     

    ShowControls 属性:是否显示控制栏(包括播放控件及可选的声音和位置控件); 

     

    ShowAudioControls 属性:是否在控制栏显示声音控件(静音按钮和音量滑块); 

     

    ShowPositionControls 属性:是否在控制栏显示位置控件(包括向后跳进、快退、快进

     

    、向前跳进、预览播放列表中的每个剪辑); 

     

    ShowTracker 属性:是否显示搜索栏; 

     

    ShowDisplay 属性:是否显示显示面板(用来提供节目与剪辑的信息); 

     

    ShowCaptioning 属性:是否显示字幕显示面板; 

     

    ShowGotoBar 属性:是否显示转到栏; 

     

    ShowStatusBar 属性:是否显示状态栏; 

     

     

    □播放列表 

     

    媒体播放器提供下面的方法来访问播放列表中的剪辑: 

     

    Next 方法,跳到节目(播放列表)中的下一个剪辑; 

     

    Previous 方法,跳回到节目中的上一个剪辑; 

     

    媒体播放器的一个特性是能够预览节目中的每一个剪辑,使用如下属性: 

     

    PreviewMode 属性,决定媒体播放器当前是否处于预览模式; 

     

    CanPreview 属性,决定媒体播放器能否处于预览模式; 

     

    在windows 媒体元文件中,可以为每一个剪辑指定预览时间——PREVIEWDURATION,如果

     

    没有指定,那么默认的预览时间是10秒钟. 

     

    你也可以用Windows 媒体元文件来添加 watermarks 与 banners,元文件也支持插入广

     

    告时的无间隙流切换. 

     

     

    □节目信息 

     

    使用 GetMediaInfoString 方法可以返回相关剪辑或节目的如下信息: 

     

    文件名:File name 

     

    标题:Title 

     

    描述:Description 

     

    作者:Author

    版权:Copyright 

     

    级别:Rating 

     

    URLs:logo icon、watermark、banner的地址 

     

    剪辑信息可以放在媒体文件中,也可以放在Windows 媒体元文件中,或者两者都放.如果

     

    在元文件中指定了剪辑信息,那么用 GetMediaInfoString 

    方法返回的就是元文件中的信息,而不会返回剪辑中包含的信息. 

     

    在元文件中,附加信息可以放置在每一个剪辑或节目的 PARAM标签中.你可以为每个剪辑

     

    添加任意多个 PARAM 标签,用来存储自定义的信息或链接到相关站点.在 

    PARAM 标签中的信息可以通过 GetMediaParameter 方法来访问. 

     

    下面的属性返回有关大小和时间的信息: 

     

    ImageSourceHeight、ImageSourceWidth:返回图像窗口的显示尺寸; 

     

    Duration 属性,返回剪辑的长度(秒), 要检测这个属性是否包含有效的数值,请检

     

    查IsDurationValid 属性.(对于广播的视频,其长度是不可预知的). 

     

     

    □字幕 

     

    你可以用 .smi 文件来为你的节目添加字幕.媒体播放器支持下面的属性来处理字幕: 

     

    SAMIFileName 属性,指定 .smi 文件的名字; 

     

    SAMILang 属性,指定字幕的语言(如果没有指定则使用第一种语言); 

     

    SAMIStyle 属性,指定字幕的文字大小和样式; 

     

    ShowCaptioning 属性,决定是否显示字幕显示面板; 

     

    □脚本命令 

     

    伴随音频、视频流,你可以在流媒体文件中加入脚本命令.脚本命令是多媒体流中与特定

     

    时间同步的多对Unicode串.第一个串标识待发命令的类型,第二个串指定要执行的命令. 

     

    当流播放到与脚本相关的时间时,控件会向网页发送一个 ScriptCommand事件,然后由

     

    事件处理进程来响应这个事件.脚本命令字符串会作为脚本命令事件的参数传递给事件处

     

    理器. 

     

    媒体播放器会自动处理下面类型的内嵌脚本命令: 

     

    1)URL型命令:当媒体播放器控件收到一个URL型的命令时,指定的URL会被装载到用户

     

    的默认浏览器.如果媒体播放器嵌在一个分帧的HTML文件中,URL页可以装载到由脚本命

     

    令指定的帧内.如果脚本命令没有指定一个帧,将由 

    DefaultFrame 属性决定将 URL 页装入哪一帧.

    你可以通过设置 InvokeURLs 属性来决定是否自动处理 URL 型的脚本命令.如果这个属

     

    性的值为 false ,媒体播放器控件将忽视 URL型命令.但是脚本命令事件仍会触发,这

     

    就允许你有选择地处理 

    URL 型命令. 

     

    URL 型命令指定的是 URL 的相对地址.基地址是由 BaseURL属性指定的.媒体播放器控件

     

    传送的脚本命令事件的命令参数是链接好的地址. 

     

    2)FILENAME型命令:当媒体播放器控件收到一个FILENAME型的命令时,它将 FileName

     

    属性设置为脚本命令提供的文件,之后媒体播放器会打开这个文件开始播放. 

    媒体播放器控件总是自动处理 FILENAME 型命令,不象 URL 型命令,它们不能被禁止. 

     

    3)TEXT型命令:当媒体播放器控件收到一个 TEXT型的命令时,它会将命令的内容显示

     

    在控件的字幕窗口.内容可以是纯文本的,也可以是 HTML. 

     

    4)EVENT型命令:当媒体播放器控件收到一个 EVENT型的命令时,它会在媒体元文件中

     

    搜索 EVENT 元素的 NAME 属性.如果 NAME 属性与脚本命令中的第二个字符串匹配,媒

     

    体播放器控件就执行包含在 

    EVENT 元素中的条目. 

     

    5)OPENEVENT型命令:当媒体播放器控件收到一个 OPENEVENT型的命令时,它会在媒体

     

    元文件中检查 EVENT 元素,并打开匹配的标题,但不播放,直到收到来自 

    EVENT型命令的同名真实事件. 

     

     

    □捕捉键盘和鼠标事件 

     

    EnableContextMenu 与 ClickToPlay 属性为用户提供了在图像窗口进行操作的方法. 

     

    如果 EnableContextMenu 属性为 true ,在图像窗口右击鼠标可以打开关联菜单,如果

     

    将ClickToPlay 属性设为 true ,用户可以单击图像窗口进行播放与暂停的切换. 

     

    要接收鼠标移动和单击事件,请将 SendMouseMoveEvents 和 SendMouseClickEvents 属

     

    性设为 true .鼠标事件有: 

     

    MouseDown,当用户按下鼠标时产生; 

     

    MouseUp,当用户释放鼠标时产生; 

     

    MouseMove,当用户移动鼠标时产生; 

     

    Click,当用户在媒体播放器上单击鼠标按钮时产生; 

     

    DbClick,当用户在媒体播放器上双击鼠标按钮时产生; 

     

    要接收键盘事件,请将 SendKeyboardEvents 属性设为 true .键盘事件有: 

     

    KeyDown,当用户按下一个键时产生; 

     

    KeyUp,当用户释放一个键时产生; 

     

    KeyPress,当用户按下并释放一个键时产生;

    □监测流状态与网络链接 

     

    流状态属性包括: 

     

    PlayState:播放状态; 

     

    OpenState:打开状态; 

     

    Bandwidth:带宽; 

     

    支持的事件有: 

     

    OpenStateChange:打开状态改变(仅当SendOpenStateChangeEvents属性为true时触发

     

    ) 

     

    PlayStateChange:播放状态改变(仅当SendPlayStateChangeEvents属性为true时触发

     

    ) 

     

    EndOfStream:流结束时触发; 

     

    NewStream:打开新流时触发; 

     

    网络接收属性包括: 

     

    ReceptionQuality:接收质量; 

     

    ReceivedPackets:已经收到的包; 

     

    LostPackets:丢失的包; 

     

    监测缓冲的属性有: 

     

    BufferingTime:缓冲时间; 

     

    BufferingCount:缓冲次数; 

     

    BufferingProgress:缓冲进程; 

     

    Buffering:缓冲事件; 

     

    □错误处理 

     

    媒体播放器提供了内建的错误处理功能——在对话框或状态栏显示错误信息. 另外,你

     

    可以自己添加错误处理程序.如果 SendErrorEvents 属性设置为 

    true,将不会显示错误框,而是发送错误事件;如果 SendErrorEvents 属性设置为 

     

    false,将显示错误框,而是发送错误事件. 

     

    媒体播放器支持下面的错误处理事件: 

     

    Error 事件,指有危险性错误发生;

    Warning 事件,指发生了非危险性的错误; 

     

    当你的应用程序接收到一个错误事件,你可以检测下面的属性来确定具体的错误信息: 

     

    HasError:检测目前的媒体播放器是否有错误; 

     

    ErrorCode:提供与该类型错误相关的代码值; 

     

    ErrorDescription:提供错误的描述信息; 

     

    ErrorCorrection:指定媒体播放器对该类型的错误进行校正; 

     

    □播放CD 

     

    媒体播放器将 CD 看作(在每个音轨的开头具有标记的)单一音频流. 要在网页中使用

     

    CD,你需要将 FileName 属性设为 CDAUDI,必须带有冒号,如下所示: 

     

    <HTML> 

     

    <HEAD><TITLE>CD Audio Playback Example</TITLE></HEAD> 

     

    <BODY> 

     

    <OBJECT ID="MediaPlayer" 

     

    CLASSID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" 

     

    WIDTH="320" 

     

    HEIGHT="508" 

     

    STYLE="position:absolute; left:0px; top:70px;" > 

     

    <PARAM NAME="FileName" VALUE="cdaudi"> 

     

    <PARAM NAME="AutoStart" VALUE="0"> 

     

    <PARAM NAME="ShowControls" VALUE="1"> 

     

    <PARAM NAME="ShowStatusBar" VALUE="1"> 

     

    <PARAM NAME="ShowDisplay" VALUE="1"> 

     

    </OBJECT> 

     

    </BODY> 

     

    </HTML> 

     

    之后你可以用 Play 方法播放 CD 了.

    你可以在 windows 媒体元文件中指定播放顺序以及每个音轨的信息.示例如下: 

     

    <ASX VERSION="3.0"> 

     

    <TITLE>CD Audio with the Media Player</TITLE> 

     

    <AUTHOR>Windows Media Technologies</AUTHOR> 

     

    <COPYRIGHT>(c) 1999, Microsoft, Inc.</COPYRIGHT> 

     

    <ENTRY> 

     

    <TITLE>Track 1: Title 1</TITLE> 

     

    <REF href="/blog/cdaudi" /> 

     

    <STARTMARKER NUMBER="1"/> 

     

    <ENDMARKER NUMBER="2"/> 

     

    </ENTRY> 

     

    <ENTRY> 

     

    <TITLE>Track 2: Title 2</TITLE> 

     

    <REF href="/blog/cdaudi" /> 

     

    <STARTMARKER NUMBER="2"/> 

     

    <ENDMARKER NUMBER="3"/> 

     

    </ENTRY> 

     

    <ENTRY> 

     

    <TITLE>Track 3: Title 3</TITLE> 

     

    <REF href="/blog/cdaudi" /> 

     

    <STARTMARKER NUMBER="3"/> 

     

    <ENDMARKER NUMBER="4"/> 

     

    </ENTRY> 

     

    <ENTRY> 

     

    <TITLE>Track 4: Title 4</TITLE> 

     

    <REF href="/blog/cdaudi" /> 

     

    <STARTMARKER NUMBER="4"/> 

     

    </ENTRY> 

     

    </ASX>[/code]


    最新回复(0)