使用說明:把代碼中的視頻路徑換成與自己的相對(duì)路徑或絕對(duì)路徑,播放器的窗口大小,根據(jù)需要修改高和寬的參數(shù)。
1.avi格式
復(fù)制代碼 代碼如下:
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="https://www.jb51.net/sample.avi">
embed width="400" height="200" border="0" showdisplay="0" showcontrols="1" autostart="1" autorewind="0" playcount="0" moviewindowheight="240" moviewindowwidth="320" filename="https://www.jb51.net/sample.avi" src="sample.avi">
/embed>
/object>
2.mpg格式
復(fù)制代碼 代碼如下:
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="https://www.jb51.net/sample.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.rm格式
復(fù)制代碼 代碼如下:
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.207.131.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" CONSOLE="Clip1" CONTROLS="ImageWindow" HEIGHT="288" WIDTH="352" AUTOSTART="false"> /OBJECT>
4.wmv格式
復(fù)制代碼 代碼如下:
object id="NSPlay" width=200 height=180 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" align="right" hspace="5">
!-- ASX File Name -->
param name="AutoRewind" value=1>
param name="FileName" value="xxxxxx.wmv">
!-- Display Controls -->
param name="ShowControls" value="1">
!-- Display Position Controls -->
param name="ShowPositionControls" value="0">
!-- Display Audio Controls -->
param name="ShowAudioControls" value="1">
!-- Display Tracker Controls -->
param name="ShowTracker" value="0">
!-- Show Display -->
param name="ShowDisplay" value="0">
!-- Display Status Bar -->
param name="ShowStatusBar" value="0">
!-- Diplay Go To Bar -->
param name="ShowGotoBar" value="0">
!-- Display Controls -->
param name="ShowCaptioning" value="0">
!-- Player Autostart -->
param name="AutoStart" value=1>
!-- Animation at Start -->
param name="Volume" value="-2500">
param name="AnimationAtStart" value="0">
!-- Transparent at Start -->
param name="TransparentAtStart" value="0">
!-- Do not allow a change in display size -->
param name="AllowChangeDisplaySize" value="0">
!-- Do not allow scanning -->
param name="AllowScan" value="0">
!-- Do not show contect menu on right mouse click -->
param name="EnableContextMenu" value="0">
!-- Do not allow playback toggling on mouse click -->
param name="ClickToPlay" value="0">
/object>
5:最簡(jiǎn)單的播放代碼
復(fù)制代碼 代碼如下:
embed src="https://www.jb51.net/sample.wmv" autostart="true" loop="true" width="200" height="150" >
6:有圖像的rm格式
復(fù)制代碼 代碼如下:
OBJECT classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=288 id=video1 width=305 VIEWASTEXT>
param name=_ExtentX value=5503>
param name=_ExtentY value=1588>
param name=AUTOSTART value=-1>
param name=SHUFFLE value=0>
param name=PREFETCH value=0>
param name=NOLABELS value=0>
param name=SRC value=https://www.jb51.net/sample.ram>
param name=CONTROLS value=Imagewindow,StatusBar,ControlPanel>
param name=CONSOLE value=RAPLAYER>
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>
/OBJECT>
7:無圖像的rm格式:(如相聲,歌曲...)
復(fù)制代碼 代碼如下:
object ID=video2 WIDTH=300 HEIGHT=62 CLASSID=CLSID:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA>
param name=_ExtentX value=9657>
param name=_ExtentY value=847>
param name=AUTOSTART value=-1>
param name=SHUFFLE value=0>
param name=PREFETCH value=0>
param name=NOLABELS value=0>
param name=SRC value=https://www.jb51.net/sample.rm>
param name=CONTROLS value=StatusBar,controlpanel>
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>
/object>
8:最簡(jiǎn)單的media格式的播放器
復(fù)制代碼 代碼如下:
embed src=mms://www.jb51.net/sample.wmv width=200 height=200 autostart=true loop=true>/embed>
9:有圖像的media播放器,自動(dòng)調(diào)用網(wǎng)上的插件
復(fù)制代碼 代碼如下:
object id=nstv classid=CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6 width=280 height=265 codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701standby=Loading Microsoft? Windows Media? Player components... type=application/x-oleobject>
param name=URL value=https://www.jb51.net/sample.wma>
PARAM NAME=UIMode value=full>PARAM NAME=AutoStart value=true>
PARAM NAME=Enabled value=true>
PARAM NAME=enableContextMenu value=false>
param name=WindowlessVideo value=true>/object>
10:無圖像的media播放器
復(fù)制代碼 代碼如下:
object id=nstv classid=CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6 width=280 height=60 codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701standby=Loading Microsoft? Windows Media? Player components... type=application/x-oleobject>
param name=URL value=https://www.jb51.net/sample.wma>
PARAM NAME=UIMode value=full>PARAM NAME=AutoStart value=true>
PARAM NAME=Enabled value=true>
PARAM NAME=enableContextMenu value=false>
/object>
11:在線播放rm格式視頻代碼
復(fù)制代碼 代碼如下:
object id="player" name="player" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="400" height="272">
param name="_ExtentX" value="18415">
param name="_ExtentY" value="9102">
param name="AUTOSTART" value="-1">
param name="SHUFFLE" value="0">
param name="PREFETCH" value="0">
param name="NOLABELS" value="-1">
param name="SRC" value="https://www.jb51.net/sample.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">
/object>br>
object ID="RP2" CLASSID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" WIDTH="400" HEIGHT="57">
param name="_ExtentX" value="18415">
param name="_ExtentY" value="1005">
param name="AUTOSTART" value="-1">
param name="SHUFFLE" value="0">
param name="PREFETCH" value="0">
param name="NOLABELS" value="-1">
param name="SRC" value="https://www.jb51.net/sample.rm">
PARAM NAME="CONTROLS" VALUE="ControlPanel,StatusBar">
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">
/object>
媒體播放器的外觀界面
在網(wǎng)頁中,你可以通過相關(guān)屬性來控制媒體播放器的哪些部分出現(xiàn),哪些部分不出現(xiàn)。
媒體播放器包括如下元素:
VideoDisplayPanel:視頻顯示面板;
VideoBorder:視頻邊框;
ClosedCaptioningDisplayPanel;字幕顯示面板;
TrackBar;搜索欄;
ControlBarwithAudioandPositionControls:帶有聲音和位置控制的控制欄;
GoToBar:轉(zhuǎn)到欄;
DisplayPanel:顯示面板;
StatusBar:狀態(tài)欄;
下面的屬性用來決定顯示哪一個(gè)元素:
ShowControls屬性:是否顯示控制欄(包括播放控件及可選的聲音和位置控件);
ShowAudioControls屬性:是否在控制欄顯示聲音控件(靜音按鈕和音量滑塊);
ShowPositionControls屬性:是否在控制欄顯示位置控件(包括向后跳進(jìn)、快退、快進(jìn)、向前跳進(jìn)、預(yù)覽播放列表中的每個(gè)剪輯);
ShowTracker屬性:是否顯示搜索欄;
ShowDisplay屬性:是否顯示顯示面板(用來提供節(jié)目與剪輯的信息);
ShowCaptioning屬性:是否顯示字幕顯示面板;
ShowGotoBar屬性:是否顯示轉(zhuǎn)到欄;
ShowStatusBar屬性:是否顯示狀態(tài)欄;
播放列表
媒體播放器提供下面的方法來訪問播放列表中的剪輯:
Next方法,跳到節(jié)目(播放列表)中的下一個(gè)剪輯;
Previous方法,跳回到節(jié)目中的上一個(gè)剪輯;
媒體播放器的一個(gè)特性是能夠預(yù)覽節(jié)目中的每一個(gè)剪輯,使用如下屬性:
PreviewMode屬性,決定媒體播放器當(dāng)前是否處于預(yù)覽模式;
CanPreview屬性,決定媒體播放器能否處于預(yù)覽模式;
在windows媒體元文件中,可以為每一個(gè)剪輯指定預(yù)覽時(shí)間——PREVIEWDURATION,如果沒有指定,那么默認(rèn)的預(yù)覽時(shí)間是10秒鐘。
你也可以用Windows媒體元文件來添加watermarks與banners,元文件也支持插入廣告時(shí)的無間隙流切換。
節(jié)目信息
使用GetMediaInfoString方法可以返回相關(guān)剪輯或節(jié)目的如下信息:
文件名:Filename
標(biāo)題:Title
描述:Description
作者:Author
版權(quán):Copyright
級(jí)別:Rating
URLs:logoicon、watermark、banner的地址
剪輯信息可以放在媒體文件中,也可以放在Windows媒體元文件中,或者兩者都放。如果在元文件中指定了剪輯信息,那么用GetMediaInfoString方法返回的就是元文件中的信息,而不會(huì)返回剪輯中包含的信息。
在元文件中,附加信息可以放置在每一個(gè)剪輯或節(jié)目的PARAM標(biāo)簽中。你可以為每個(gè)剪輯添加任意多個(gè)PARAM標(biāo)簽,用來存儲(chǔ)自定義的信息或鏈接到相關(guān)站點(diǎn)。在PARAM標(biāo)簽中的信息可以通過GetMediaParameter方法來訪問。
下面的屬性返回有關(guān)大小和時(shí)間的信息:
ImageSourceHeight、ImageSourceWidth:返回圖像窗口的顯示尺寸;
Duration屬性,返回剪輯的長(zhǎng)度(秒),要檢測(cè)這個(gè)屬性是否包含有效的數(shù)值,請(qǐng)檢查IsDurationValid屬性。(對(duì)于廣播的視頻,其長(zhǎng)度是不可預(yù)知的)。
字幕
你可以用.smi文件來為你的節(jié)目添加字幕。媒體播放器支持下面的屬性來處理字幕:
SAMIFileName屬性,指定.smi文件的名字;
SAMILang屬性,指定字幕的語言(如果沒有指定則使用第一種語言);
SAMIStyle屬性,指定字幕的文字大小和樣式;
ShowCaptioning屬性,決定是否顯示字幕顯示面板;
腳本命令
伴隨音頻、視頻流,你可以在流媒體文件中加入腳本命令。腳本命令是多媒體流中與特定時(shí)間同步的多對(duì)Unicode串。第一個(gè)串標(biāo)識(shí)待發(fā)命令的類型,第二個(gè)串指定要執(zhí)行的命令。
當(dāng)流播放到與腳本相關(guān)的時(shí)間時(shí),控件會(huì)向網(wǎng)頁發(fā)送一個(gè)ScriptCommand事件,然后由事件處理進(jìn)程來響應(yīng)這個(gè)事件。腳本命令字符串會(huì)作為腳本命令事件的參數(shù)傳遞給事件處理器。
媒體播放器會(huì)自動(dòng)處理下面類型的內(nèi)嵌腳本命令:
1)URL型命令:當(dāng)媒體播放器控件收到一個(gè)URL型的命令時(shí),指定的URL會(huì)被裝載到用戶的默認(rèn)瀏覽器。如果媒體播放器嵌在一個(gè)分幀的HTML文件中,URL頁可以裝載到由腳本命令指定的幀內(nèi)。如果腳本命令沒有指定一個(gè)幀,將由DefaultFrame屬性決定將URL頁裝入哪一幀。
你可以通過設(shè)置InvokeURLs屬性來決定是否自動(dòng)處理URL型的腳本命令。如果這個(gè)屬性的值為false,媒體播放器控件將忽視URL型命令。但是腳本命令事件仍會(huì)觸發(fā),這就允許你有選擇地處理URL型命令。
URL型命令指定的是URL的相對(duì)地址。基地址是由BaseURL屬性指定的。媒體播放器控件傳送的腳本命令事件的命令參數(shù)是鏈接好的地址。
2)FILENAME型命令:當(dāng)媒體播放器控件收到一個(gè)FILENAME型的命令時(shí),它將FileName屬性設(shè)置為腳本命令提供的文件,之后媒體播放器會(huì)打開這個(gè)文件開始播放。媒體播放器控件總是自動(dòng)處理FILENAME型命令,不象URL型命令,它們不能被禁止。
3)TEXT型命令:當(dāng)媒體播放器控件收到一個(gè)TEXT型的命令時(shí),它會(huì)將命令的內(nèi)容顯示在控件的字幕窗口。內(nèi)容可以是純文本的,也可以是HTML。
4)EVENT型命令:當(dāng)媒體播放器控件收到一個(gè)EVENT型的命令時(shí),它會(huì)在媒體元文件中搜索EVENT元素的NAME屬性。如果NAME屬性與腳本命令中的第二個(gè)字符串匹配,媒體播放器控件就執(zhí)行包含在EVENT元素中的條目。
5)OPENEVENT型命令:當(dāng)媒體播放器控件收到一個(gè)OPENEVENT型的命令時(shí),它會(huì)在媒體元文件中檢查EVENT元素,并打開匹配的標(biāo)題,但不播放,直到收到來自EVENT型命令的同名真實(shí)事件。
捕捉鍵盤和鼠標(biāo)事件
EnableContextMenu與ClickToPlay屬性為用戶提供了在圖像窗口進(jìn)行操作的方法。
如果EnableContextMenu屬性為true,在圖像窗口右擊鼠標(biāo)可以打開關(guān)聯(lián)菜單,如果將ClickToPlay屬性設(shè)為true,用戶可以單擊圖像窗口進(jìn)行播放與暫停的切換。
要接收鼠標(biāo)移動(dòng)和單擊事件,請(qǐng)將SendMouseMoveEvents和SendMouseClickEvents屬性設(shè)為true。鼠標(biāo)事件有:
MouseDown,當(dāng)用戶按下鼠標(biāo)時(shí)產(chǎn)生;
MouseUp,當(dāng)用戶釋放鼠標(biāo)時(shí)產(chǎn)生;
MouseMove,當(dāng)用戶移動(dòng)鼠標(biāo)時(shí)產(chǎn)生;
Click,當(dāng)用戶在媒體播放器上單擊鼠標(biāo)按鈕時(shí)產(chǎn)生;
DbClick,當(dāng)用戶在媒體播放器上雙擊鼠標(biāo)按鈕時(shí)產(chǎn)生;
要接收鍵盤事件,請(qǐng)將SendKeyboardEvents屬性設(shè)為true。鍵盤事件有:
KeyDown,當(dāng)用戶按下一個(gè)鍵時(shí)產(chǎn)生;
KeyUp,當(dāng)用戶釋放一個(gè)鍵時(shí)產(chǎn)生;
KeyPress,當(dāng)用戶按下并釋放一個(gè)鍵時(shí)產(chǎn)生;
監(jiān)測(cè)流狀態(tài)與網(wǎng)絡(luò)鏈接
流狀態(tài)屬性包括:
PlayState:播放狀態(tài);
OpenState:打開狀態(tài);
Bandwidth:帶寬;
支持的事件有:
OpenStateChange:打開狀態(tài)改變(僅當(dāng)SendOpenStateChangeEvents屬性為true時(shí)觸發(fā))
PlayStateChange:播放狀態(tài)改變(僅當(dāng)SendPlayStateChangeEvents屬性為true時(shí)觸發(fā))
EndOfStream:流結(jié)束時(shí)觸發(fā);
NewStream:打開新流時(shí)觸發(fā);
網(wǎng)絡(luò)接收屬性包括:
ReceptionQuality:接收質(zhì)量;
ReceivedPackets:已經(jīng)收到的包;
LostPackets:丟失的包;
監(jiān)測(cè)緩沖的屬性有:
BufferingTime:緩沖時(shí)間;
BufferingCount:緩沖次數(shù);
BufferingProgress:緩沖進(jìn)程;
Buffering:緩沖事件;
錯(cuò)誤處理
媒體播放器提供了內(nèi)建的錯(cuò)誤處理功能——在對(duì)話框或狀態(tài)欄顯示錯(cuò)誤信息。另外,你可以自己添加錯(cuò)誤處理程序。如果SendErrorEvents屬性設(shè)置為true,將不會(huì)顯示錯(cuò)誤框,而是發(fā)送錯(cuò)誤事件;如果SendErrorEvents屬性設(shè)置為false,將顯示錯(cuò)誤框,而是發(fā)送錯(cuò)誤事件。
媒體播放器支持下面的錯(cuò)誤處理事件:
Error事件,指有危險(xiǎn)性錯(cuò)誤發(fā)生;
Warning事件,指發(fā)生了非危險(xiǎn)性的錯(cuò)誤;
當(dāng)你的應(yīng)用程序接收到一個(gè)錯(cuò)誤事件,你可以檢測(cè)下面的屬性來確定具體的錯(cuò)誤信息:
HasError:檢測(cè)目前的媒體播放器是否有錯(cuò)誤;
ErrorCode:提供與該類型錯(cuò)誤相關(guān)的代碼值;
ErrorDescription:提供錯(cuò)誤的描述信息;
ErrorCorrection:指定媒體播放器對(duì)該類型的錯(cuò)誤進(jìn)行校正;
播放CD
媒體播放器將CD看作(在每個(gè)音軌的開頭具有標(biāo)記的)單一音頻流。要在網(wǎng)頁中使用CD,你需要將FileName屬性設(shè)為CDAUDI,必須帶有冒號(hào),如下所示:
復(fù)制代碼 代碼如下:
HTML>
HEAD>TITLE>CDAudioPlaybackExample/TITLE>/HEAD>
BODY>
OBJECTID="MediaPlayer"
CLASSID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"
WIDTH="320"
HEIGHT="508"
STYLE="position:absolute;left:0px;top:70px;">
PARAMNAME="FileName"VALUE="cdaudi">
PARAMNAME="AutoStart"VALUE="0">
PARAMNAME="ShowControls"VALUE="1">
PARAMNAME="ShowStatusBar"VALUE="1">
PARAMNAME="ShowDisplay"VALUE="1">
/OBJECT>
/BODY>
/HTML>
之后你可以用Play方法播放CD了。
你可以在windows媒體元文件中指定播放順序以及每個(gè)音軌的信息。示例如下:
ASXVERSION="3.0">
TITLE>CDAudiowiththeMediaPlayer/TITLE>
AUTHOR>WindowsMediaTechnologies/AUTHOR>
COPYRIGHT>(c)1999,Microsoft,Inc./COPYRIGHT>
ENTRY>
TITLE>Track1:Title1/TITLE>
REFhref="/blog/cdaudi"/>
STARTMARKERNUMBER="1"/>
ENDMARKERNUMBER="2"/>
/ENTRY>
ENTRY>
TITLE>Track2:Title2/TITLE>
REFhref="/blog/cdaudi"/>
STARTMARKERNUMBER="2"/>
ENDMARKERNUMBER="3"/>
/ENTRY>
ENTRY>
TITLE>Track3:Title3/TITLE>
REFhref="/blog/cdaudi"/>
STARTMARKERNUMBER="3"/>
ENDMARKERNUMBER="4"/>
/ENTRY>
ENTRY>
TITLE>Track4:Title4/TITLE>
REFhref="/blog/cdaudi"/>
STARTMARKERNUMBER="4"/>
/ENTRY>
/ASX>
您可能感興趣的文章:- 超級(jí)REAL視頻播放器
- C# 視頻播放類
- Jquery實(shí)現(xiàn)視頻播放頁面的關(guān)燈開燈效果
- android webvie指定視頻播放器播放網(wǎng)站視頻
- python使用beautifulsoup從愛奇藝網(wǎng)抓取視頻播放
- 分享一款基于jQuery的視頻播放插件
- 基于js與flash實(shí)現(xiàn)的網(wǎng)站flv視頻播放插件代碼
- java制作仿微信視頻播放控件
- javascript實(shí)現(xiàn)簡(jiǎn)單的html5視頻播放器
- js的flv視頻播放器插件使用方法
- WinForm實(shí)現(xiàn)仿視頻播放器左下角滾動(dòng)新聞效果的方法
- 基于Flowplayer打造一款免費(fèi)的WEB視頻播放器附源碼
- jquery點(diǎn)擊縮略圖切換視頻播放特效代碼分享