1. 程式人生 > >在網頁中插入視訊播放程式碼全集

在網頁中插入視訊播放程式碼全集

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" showcontrols="1" 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" console="Console1" controls="ImageWindow" 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" CONSOLE="Clip1" CONTROLS="ImageWindow" 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.cab#Version=6,4,5,715" st andby="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.cab#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=SendM ouseMoveEvents 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:帶有聲音和位置控制的控制欄;

Go To Bar:轉到欄;

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>