非常全的javascript控制MediaPlayer與realplayer對象

來源:互聯網
上載者:User

以下是MediaPlayer
發現了1ting的代碼,歌詞同步代碼,真不錯,把基礎控制,整理下以後想好好弄下
播放: MediaPlayer.Play()
暫停: MediaPlayer.Pause()
定位: MediaPlayer.SetCurrentEntry(lWhichEntry)
    MediaPlayer.Next()
    MediaPlayer.Previous()
迴圈: MediaPlayer.PlayCount = 0
0:the clip plays repeatedly
1:once
停止: MediaPlayer.Stop()
==================================
AllowChangeDisplaySize 返回或設定終端使用者是否能設定顯示尺寸(邏輯型)
AllowScan 返回或設定是否允許掃描(邏輯型)
AnimationAtStart 返回或設定控制項開始播放之前是否先播放一個動畫序列(邏輯型)
AudioStream 返回或設定音頻流的編號(用於多音頻流的剪輯,預設為-1)(長整型)
AutoRewind 返回或設定媒體檔案播放完畢後是否自動迴繞(邏輯型)
AutoSize 返回或設定是否自動調整控制項大小來適應載入的媒體(邏輯型)
AutoStart 返回或設定在載入媒體檔案之後是否自動開始播放(邏輯型)
Balance 返回或設定指定立體聲媒體檔案的播放聲道(-10000為左聲道,10000為右聲道,0為立體聲)(長整型)
Bandwidth 返回或設定當前檔案的頻寬(長整型)
BaseURL 返回基本的 HTTP URL(字串)
BufferingCount 返回媒體檔案回放時緩衝的總時間(長整型)
BufferingProgress 返回緩衝完成的百分比(長整型)
BufferingTime 返回緩衝的時間(雙精確度型)
CanPreview 返回或設定當前顯示的剪輯是能否被預覽(邏輯型)
CanScan 返回或設定當前檔案是否支援快進或快退(邏輯型)
CanSeek 返回或設定當前檔案是否能搜尋並定位到某個時間(邏輯型)
CanSeekToMarkers 返回或設定檔案是否支援搜尋到標籤(邏輯型)
CaptioningID 返回在標題中顯示的幀或控制項的名稱(字串)
ChannelDescription 返回電台的描述(字串)
ChannelName 返回電台的名稱(字串)
ChannelURL 返回電台的元檔案的位置(字串)
ClickToPlay 返回或設定是否可以通過點擊映像暫停或播放剪輯(邏輯型)
ClientID 返回用戶端唯一的標識符(字串)
CodecCount 返迴文件使用的可安裝的 codecs 的個數(長整型)
ContactAddress 返回電台的聯絡地址(字串)
ContactEmail 返回電台的聯絡電子郵件地址(字串)
ContactPhone 返回電台的聯絡電話(字串)
CreationDate 返回剪輯的建立日期(日期型)
CurrentMarker 返回或設定當前書籤號碼(長整型)
CurrentPosition 返回或設定剪輯的當前位置(雙精確度型)
CursorType 返回或設定指標類型(長整型)
DefaultFrame 返回或設定控制項的預設目標 Http 幀(字串)
DisplayBackColor 返回或設定顯示面板的背景色(OLE_COLOR 值)
DisplayForeColor 返回或設定顯示面板的前景色彩(OLE_COLOR 值)
DisplayMode 返回或設定顯示面板是否用秒或幀的形式顯示當前位置(MPDisplayModeConstants 值)
DisplaySize 返回或設定映像顯示視窗的大小(MPDisplaySizeConstant 值)
Duration 返回或設定剪輯剪輯的播放時間(雙精確度型)
EnableContextMenu 返回或設定是否允許使用操作功能表(邏輯型)
Enabled 返回或設定控制項是否可用(邏輯型)
EnableFullScreenControls 返回或設定全螢幕控制是否可用(邏輯型)
EnablePositionControls 返回或設定位置控制是否可用(邏輯型)
EnableTracker 返回或設定搜尋欄控制是否可用(邏輯型)
ErrorCode 返回當前錯誤碼(長整型)
ErrorCorrection 返回當前剪輯的錯誤修正類型(長整型)
ErrorDescription 返回當前錯誤的描述(字串)
FileName 返回或設定要播放的剪輯的檔案名稱(字串)
HasError 返回控制項是否發生錯誤(邏輯型)
HasMultipleItems 返回或設定控制項是否包含某些多重項目的內容(邏輯型)
ImageSourceHeight 返回或設定當前剪輯的原始映像高度(長整型)
ImageSourceWidth 返回或設定當前剪輯的原始映像寬度(長整型)
InvokeURLs 返回或設定 URL 是否自動發送請求(邏輯型)
IsBroadcast 返回或設定源是否進行廣播(邏輯型)
IsDurationValid 返回或設定期間值是否有效(邏輯型)
Language 返回或設定用於本地化語言支援的目前範圍語言(長整型)
LostPackets 返回丟失的資料包數量(長整型)
MarkerCount 返迴文件書籤的數量(長整型)
Mute 返回或設定控制項是否播放聲音(邏輯型)
OpenState 返回控制項的內容來源狀態(長整型)
PlayCount 返回或設定一個剪輯播放的次數(長整型)
PlayState 返回控制項的當前操作狀態(長整型)
PreviewMode 返回或設定控制項是否處在預覽模式(邏輯型)
Rate 返回或設定回放幀頻(雙精確度型)
ReadyState 返回控制項是否準備就緒(ReadyStateConstant 值)
ReceivedPackets 返回已接收到的資料包的數量(長整型)
ReceptionQuality 返回最後 30 秒接收到的資料包的百分比(長整型)
RecoveredPackets 返回已轉換的資料包的數量(長整型)
SAMIFileName 返回或設定 closed-captioning 檔案名稱(字串)
SAMILang 返回或設定 closed captioning 語言(字串)
SAMIStyle 返回或設定 closed captioning 風格(字串)
SelectionEnd 返回或設定流的結束位置(雙精確度型)
SelectionStart 返回或設定流的起始位置(雙精確度型)
SendErrorEvents 返回或設定控制項是否發送錯誤事件(邏輯型)
SendKeyboardEvents 返回或設定控制項是否發送鍵盤事件(邏輯型)
SendMouseClickEvents 返回或設定控制項是否發送按一下滑鼠事件(邏輯型)
SendMouseMoveEvents 返回或設定控制項是否發送滑鼠移動事件(邏輯型)
SendOpenStateChangeEvents 返回或設定控制項是否發送開啟狀態改變事件(邏輯型)
SendPlayStateChangeEvents 返回或設定控制項是否發送播放狀態改變事件(邏輯型)
SendWarningEvents 返回或設定控制項是否發送警告事件(邏輯型)
ShowAudioControls 返回或設定是否顯示音頻控制(邏輯型)
ShowCaptioning 返回或設定是否顯示字幕(邏輯型)
ShowControls 返回或設定控制台是否可見(邏輯型)
ShowDisplay 返回或設定是否顯示顯示面板(邏輯型)
ShowGotoBar 返回或設定是否顯示跳轉欄(邏輯型)
ShowPositionControls 返回或設定是否顯示位置控制(邏輯型)
ShowStatusBar 返回或設定是否顯示狀態列(邏輯型)
ShowTracker 返回或設定是否顯示搜尋欄(邏輯型)
SourceLink 返回內容檔案的路徑(字串)
SourceProtocol 返回用於接收資料的協議(長整型)
StreamCount 返回媒體幀的數量(長整型)
TransparentAtStart 返回或設定在開始播放之前和停止之後控制項是否透明(邏輯型)
VideoBorder3D 返回或設定視頻邊框是否顯示為 3D 效果(邏輯型)
VideoBorderColor 返回或設定視頻邊框的顏色(OLE_顏色)
VideoBorderWidth 返回或設定視頻邊框的寬度(長整型)
Volume 返回或設定音量(長整型)
==============================================
Mediaplayer屬性和方法

屬性/方法名:說明:
[基本屬性]  
URL:String; 指定媒體位置,本機或網路地址
uiMode:String; 播放器介面模式,可為Full, Mini, None, Invisible
playState:integer; 播放狀態,1=停止,2=暫停,3=播放,6=正在緩衝,9=正在串連,10=準備就緒
enableContextMenu:Boolean; 啟用/禁用右鍵菜單
fullScreen:boolean; 是否全螢幕顯示
[controls] wmp.controls //播放器基本控制
controls.play; 播放
controls.pause; 暫停
controls.stop; 停止
controls.currentPosition:double; 當前進度
controls.currentPositionString:string; 當前進度,字串格式。如“00:23”
controls.fastForward; 快進
controls.fastReverse; 快退
controls.next; 下一曲
controls.previous; 上一曲
[settings] wmp.settings //播放器基本設定
settings.volume:integer; 音量,0-100
settings.autoStart:Boolean; 是否自動播放
settings.mute:Boolean; 是否靜音
settings.playCount:integer; 播放次數
[currentMedia] wmp.currentMedia //當前媒體屬性
currentMedia.duration:double; 媒體總長度
currentMedia.durationString:string; 媒體總長度,字串格式。如“03:24”
currentMedia.getItemInfo (const string); 擷取當前媒體資訊"Title"=媒體標題,"Author"=藝術家,"Copyright"=著作權資訊, "Description"=媒體內容描述,"Duration"=期間(秒),"FileSize"=檔案大小,"FileType"=檔案類型, "sourceURL"=原始地址
currentMedia.setItemInfo(const string); 通過屬性名稱設定媒體資訊
currentMedia.name:string; 同 currentMedia.getItemInfo("Title")
[currentPlaylist] wmp.currentPlaylist //當前播放清單屬性
currentPlaylist.count:integer; 當前播放清單所包含媒體數
currentPlaylist.Item[integer]; 擷取或設定指定項目媒體資訊,其子屬性同wmp.currentMedia
以下是realplayer:

<object ID="javademo" CLASSID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" HEIGHT="280" WIDTH="200">
<param name="AUTOSTART" value="0">
<param name="SHUFFLE" value="0">
<param name="PREFETCH" value="0">
<param name="NOLABELS" value="0">
<param name="SRC" value="yy.wma">
<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>

//控制開始
<input type=button value=play onclick="javademo.DoPlay()">
  <input type=button value=pause onclick="javademo.DoPause()">
  <input type=button value=stop onclick="javademo.DoStop()">
REAL PLAYER控制
player.DoPlay() 播放
player.DoPause() 暫停
player.DoStop() 停止
player.GetLength() 返回播放檔案的總長度(以毫秒為單位)
player.GetPosition() 返回播放檔案的目前時間位置(以毫秒為單位)
player.GetPlayState() 返回播放器狀態(0:停止,1:串連,2:緩衝,3:播放,4:暫停,5:尋找)
player.SetPosition(n) 時間位置跳到n的地方(n取值以毫秒為單位)
player.SetVolume(n) 設定音量(n取值為0到100)
player.SetMute(s) 靜音(s取值為true和false)
player.SetFullScreen() 全屏
player.setSource() 設定檔案來源
media player控制
player.controls.play(); 播放
player.controls.stop(); 停止
player.controls.pause(); 暫停
player.controls.currentPosition 返回播放檔案的目前時間位置(以秒為單位)
player.controls.currentPositionString 時間格式的字串 "0:32"
player.currentMedia.duration 返回播放檔案的總長度(以秒為單位)
player.currentMedia.durationString 時間格式的字串 "4:34"
player.settings.volume 音量 (0-100)
player.settings.balance 聲道,通過它應該可以進行立體聲、左聲道、右聲道的控制。但對應的取值尚不清楚。
player.settings.mute = s 靜音(s取值為true和false)
player.closedCaption.CaptioningID 網頁中出現字幕的容器的ID
player.closedCaption.SAMIFileName 字幕檔案地址
player.playState 返回播放器狀態( 3:現正播放,2:暫停1:已停止)
屬性
all
顯示全部功能表
controlpanel
顯示控制面版
infovolumepanel
顯示聲音面版
infopanel
顯示資訊面版
statusbar
顯示狀態列
playbutton
顯示開始鈕
stopbutton
顯示停止鈕
volumeslider
顯示聲音調整按鈕
posititonslider
顯示位置調整按鈕
positionfield
顯示位置區
statusfield
顯示狀態列
src
聲音來源位置
autostart
是否自動播放
nolabels
是否顯示title、author與coptright等資訊
autogotourl
是否自動傳送url事件
方法
aboutbox
顯示about對話方塊
canplaypause
是否可以暫停、重播
canstop
是否能停止realaudio
doplaypause
設定播放或暫停
dostop
停止播放
donextitem
播放下一個音效檔
doprevitem
播放上一個音效檔
editpreferences
開啟設定的對話方塊
hasnextitem
檢查是否有下一個音效檔
hasprevitem
檢查是否有上一個音效檔
hideshowstatistics
設定開啟或關閉連線統計的對話方塊
isstatisticsvisible
檢查是否已開啟連線統計的對話方塊
dogotourl
載入設定的的realaudio音效檔
事件
onclipopened
開啟realaudio音效檔時觸發的事件
onclipclosed
關閉realaudio音效檔時觸發的事件
onshowstatus
狀態列文字改變時觸發的事件
ongotourl
播放音效時,遇到url事件時,觸發的事件
預設0為否,-1或1為是)
<object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" id="MediaPlayer1" width="286" height="225">
<param name="AudioStream" value="/-1">
<param name="AutoSize" value="-1">
<!--是否自動調整播放大小-->
<param name="AutoStart" value="-1">
<!--是否自動播放-->
<param name="AnimationAtStart" value="-1">
<param name="AllowScan" value="-1">
<param name="AllowChangeDisplaySize" value="-1">
<param name="AutoRewind" value="0">
<param name="Balance" value="0">
<!--左右聲道平衡,最左-9640,最右9640-->
<param name="BaseURL" value>
<param name="BufferingTime" value="15">
<!--緩衝時間-->
<param name="CaptioningID" value>
<param name="ClickToPlay" value="-1">
<param name="CursorType" value="0">
<param name="CurrentPosition" value="0">
<!--當前播放進度 -1 表示不變,0表示開頭單位是秒,比如10表示從第10秒處開始播放,值必須是-1.0或大於等於0-->
<param name="CurrentMarker" value="0">
<param name="DefaultFrame" value>
<param name="DisplayBackColor" value="0">
<param name="DisplayForeColor" value="16777215">
<param name="DisplayMode" value="0">
<param name="DisplaySize" value="0">
<!--視頻1-50%, 0-100%, 2-200%,3-全屏其它的值作0處理,小數則採用四捨五入然後按前的處理-->
<param name="Enabled" value="-1">
<param name="EnableContextMenu" value="-1">
<!-是否用右鍵快顯功能表控制-->
<param name="EnablePositionControls" value="-1">
<param name="EnableFullScreenControls" value="-1">
<param name="EnableTracker" value="-1">
<!--是否允許拉動播放進度條到任意地方播放-->
<param name="Filename" value="01.wma" valuetype="ref">
<!--播放的檔案地址-->
<param name="InvokeURLs" value="-1">
<param name="Language" value="-1">
<param name="Mute" value="0">
<!--是否靜音-->
<param name="PlayCount" value="10">
<!--重複播放次數,0為始終重複-->
<param name="PreviewMode" value="-1">
<param name="Rate" value="1">
<!--播放速率控制,1為正常,允許小數-->
<param name="SAMIStyle" value>
<!--SAMI樣式-->
<param name="SAMILang" value>
<!--SAMI語言-->
<param name="SAMIFilename" value>
<!--字幕ID-->
<param name="SelectionStart" value="-1">
<param name="SelectionEnd" value="-1">
<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="0">
<!--顯示節目資訊,比如著作權等-->
<param name="ShowGotoBar" value="0">
<!--是否啟用操作功能表-->
<param name="ShowPositionControls" value="-1">
<!--是否顯示往前往後及列表,如果顯示一般也都是灰色不可控制-->
<param name="ShowStatusBar" value="-1">
<!--當前播放資訊,顯示是否現正播放,及總播放時間和當前播放至的時間-->
<param name="ShowTracker" value="-1">
<!--是否顯示當前播放跟蹤條,即當前的播放進度條-->
<param name="TransparentAtStart" value="-1">
<param name="VideoBorderWidth" value="0">
<!--顯示部的寬部,如果小於視頻寬,則最小為視頻寬,或者加大到指定值,並自動加大高度.此改變只改變四周的黑框大小,不改變視頻大小-->
<param name="VideoBorderColor" value="0">
<!--顯示黑色框的顏色, 為RGB值,比如ffff00為黃色-->
<param name="VideoBorder3D" value="0">
<param name="Volume" value="0">
<!--音量大小,負值表示是當前音量的減值,值自動會取絕對值,最大為0,最小為-9640-->
<param name="WindowlessVideo" value="0">
<!--如果是0可以允許全屏,否則只能在視窗中查看-->
</object>
上面的這個播放器是老式的那種,6.4版本!新式播放器是在MediaPlayer9.0以後出現的,也就是說只有裝了9.0或9.0以上的播放器才能正常使用的。
-------------------------------------------------------------------------------
下面是新式播放器代碼,相對以前的來說要簡單很多:
<object id="player" height="64" width="260" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">
<param NAME="AutoStart" VALUE="-1">
<!--是否自動播放-->
<param NAME="Balance" VALUE="0">
<!--調整左右聲道平衡,同上面舊播放器代碼-->
<param name="enabled" value="-1">
<!--播放器是否可人為控制-->
<param NAME="EnableContextMenu" VALUE="-1">
<!--是否啟用操作功能表-->
<param NAME="url" VALUE="1.wma">
<!--播放的檔案地址-->
<param NAME="PlayCount" VALUE="1">
<!--播放次數控制,為整數-->
<param name="rate" value="1">
<!--播放速率控制,1為正常,允許小數,1.0-2.0-->
<param name="currentPosition" value="0">
<!--控制項設定:當前位置-->
<param name="currentMarker" value="0">
<!--控制項設定:當前標記-->
<param name="defaultFrame" value="">
<!--顯示預設架構-->
<param name="invokeURLs" value="0">
<!--指令碼命令設定:是否調用URL-->
<param name="baseURL" value="">
<!--指令碼命令設定:被調用的URL-->
<param name="stretchToFit" value="0">
<!--是否按比例伸展-->
<param name="volume" value="50">
<!--預設聲音大小0%-100%,50則為50%-->
<param name="mute" value="0">
<!--是否靜音-->
<param name="uiMode" value="mini">
<!--播放器顯示模式:Full顯示全部;mini最簡化;None不顯示播放控制,只顯示視頻視窗;invisible全部不顯示-->
<param name="windowlessVideo" value="0">
<!--如果是0可以允許全屏,否則只能在視窗中查看-->
<param name="fullScreen" value="0">
<!--開始播放是否自動全屏-->
<param name="enableErrorDialogs" value="-1">
<!--是否啟用錯誤提示報告-->
<param name="SAMIStyle" value>
<!--SAMI樣式-->
<param name="SAMILang" value>
<!--SAMI語言-->
<param name="SAMIFilename" value>
<!--字幕ID-->
</object>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.