RealPlayer的一些函数、方法和过程
这是 Real Player ActiveX Control Library (Version 1.0) 的所有函数与方法,有兴趣可以研究一下。 function GetSource: WideString; procedure SetSource(const lpszNewValue: WideString); function GetConsole: WideString; procedure SetConsole(const lpszNewValue: WideString); function GetControls: WideString; procedure SetControls(const lpszNewValue: WideString); function GetNoLabels: WordBool; procedure SetNoLabels(bNewValue: WordBool); function GetAutoStart: WordBool; procedure SetAutoStart(bNewValue: WordBool); function GetAutoGotoURL: WordBool; procedure SetAutoGotoURL(bNewValue: WordBool); function GetVolume: Smallint; procedure SetVolume(nVol: Smallint); function GetMute: WordBool; procedure SetMute(bMute: WordBool); function GetLoop: WordBool; procedure SetLoop(bVal: WordBool); function GetImageStatus: WordBool; procedure SetImageStatus(bEnable: WordBool); function GetPacketsTotal: Integer; function GetPacketsReceived: Integer; function GetPacketsOutOfOrder: Integer; function GetPacketsMissing: Integer; function GetPacketsEarly: Integer; function GetPacketsLate: Integer; function GetBandwidthAverage: Integer; function GetBandwidthCurrent: Integer; procedure DoPlayPause; procedure DoStop; procedure DoNextItem; procedure DoPrevItem; function CanPlayPause: WordBool; function CanStop: WordBool; function HasNextItem: WordBool; function HasPrevItem: WordBool; function HasNextEntry: WordBool; function HasPrevEntry: WordBool; procedure DoNextEntry; procedure DoPrevEntry; procedure AboutBox; procedure EditPreferences; procedure HideShowStatistics; function IsStatisticsVisible: WordBool; procedure DoGotoURL(const url: WideString; const target: WideString); procedure DoPlay; procedure DoPause; function GetPosition: Integer; function GetPlayState: Integer; function GetLength: Integer; function GetTitle: WideString; function GetAuthor: WideString; function GetCopyright: WideString; function GetClipWidth: Integer; function GetClipHeight: Integer; function CanPlay: WordBool; function CanPause: WordBool; procedure SetPosition(lPosition: Integer); function GetNumLoop: Integer; procedure SetNumLoop(lVal: Integer); function GetCenter: WordBool; procedure SetCenter(bVal: WordBool); function GetNoLogo: WordBool; procedure SetNoLogo(bVal: WordBool); function GetMaintainAspect: WordBool; procedure SetMaintainAspect(bVal: WordBool); function GetBackgroundColor: WideString; procedure SetBackgroundColor(const pVal: WideString); function GetStereoState: WordBool; function GetLiveState: WordBool; function GetShowStatistics: WordBool; procedure SetShowStatistics(bVal: WordBool); function GetShowPreferences: WordBool; procedure SetShowPreferences(bVal: WordBool); function GetShowonmouseover WordBool; procedure SetShowAbout(bVal: WordBool); function GetOriginalSize: WordBool; procedure SetOriginalSize; function GetDoubleSize: WordBool; procedure SetDoubleSize; function GetFullScreen: WordBool; procedure SetFullScreen; function GetEnableContextMenu: WordBool; procedure SetEnableContextMenu(bVal: WordBool); function GetEnableOriginalSize: WordBool; procedure SetEnableOriginalSize(bVal: WordBool); function GetEnableDoubleSize: WordBool; procedure SetEnableDoubleSize(bVal: WordBool); function GetEnableFullScreen: WordBool; procedure SetEnableFullScreen(bVal: WordBool); function GetEnableMessageBox: WordBool; procedure SetEnableMessageBox(bVal: WordBool); procedure SetTitle(const pVal: WideString); procedure SetAuthor(const pVal: WideString); procedure SetCopyright(const pVal: WideString); function GetWantKeyboardEvents: WordBool; procedure SetWantKeyboardEvents(bWantsEvents: WordBool); function GetWantMouseEvents: WordBool; procedure SetWantMouseEvents(bWantsEvents: WordBool); function GetNumEntries: Smallint; function GetCurrentEntry: Smallint; function GetEntryTitle(uEntryIndex: Smallint): WideString; function GetEntryAuthor(uEntryIndex: Smallint): WideString; function GetEntryCopyright(uEntryIndex: Smallint): WideString; function GetEntryAbstract(uEntryIndex: Smallint): WideString; procedure SetCanSeek(bCanSeek: WordBool); function GetCanSeek: WordBool; function GetBufferingTimeElapsed: Integer; function GetBufferingTimeRemaining: Integer; function GetConnectionBandwidth: Integer; function GetPreferedLanguageString: WideString; function GetPreferedLanguageID: Integer; function GetUserCountryID: Integer; function GetNumSources: Smallint; function GetSourceTransport(nSourceNum: Smallint): WideString; function GetWantErrors: WordBool; procedure SetWantErrors(bVal: WordBool); function GetShuffle: WordBool; procedure SetShuffle(bVal: WordBool); function GetVersionInfo: WideString; function GetLastMessage: WideString; function GetLastErrorSeverity: Integer; function GetLastErrorRMACode: Integer; function GetLastErrorUserCode: Integer; function GetLastErrorUserString: WideString; function GetLastErrorMoreInfoURL: WideString; procedure SetPreFetch(bVal: WordBool); function GetPreFetch: WordBool; procedure SetRegion(const pVal: WideString); function GetRegion: WideString; function GetIsPlus: WordBool; function GetConsoleEvents: WordBool; procedure SetConsoleEvents(bVal: WordBool); function GetDRMInfo(const pVal: WideString): WideString; property ControlInterface: IRealAudio read GetControlInterface; property DefaultInterface: IRealAudio read GetControlInterface; |
网页中wmp视频控制之使用指南
//wmplayer.controls.currentPosition = wmplayer.currentMedia.duration * (i / 100)
//
//
//
□播放方法和属性
除播放、暂停、停止外,媒体播放器还可用下面的属性:
扫描(Scanning)——与录像机的快进快倒功能类似;
搜索(Seeking)——直接移到剪辑中标记的特定上演时间;
□播放
媒 体播放器提供了两种技术来指定要播放的媒体名称(剪辑),你可以设置 FileName 属性,或调用 Open 方法。 如果 AutoStart 属性的值是 true 的话,当 FileName 属性被设置成该电影剪辑的 URL 后,该电影剪辑将开始播放;否则电影剪辑不会开始播放, 除非你调用 Play 方法。 Open 方法开始播放是异步的,它不象 Play 方法要等到其他的进程结束后才开始播放。
媒体播放器提供了下面的类似录像机的属性和方法来控制流媒体的播放:
Play、Stop、Pause 方法,来开始、停止、暂停流媒体。
PlayCount 属性,设置文件播放的次数。
AutoRewind 属性,确定当停止播放时是否返回到电影剪辑的开始部分。
□音频控制
媒体播放器提供了下面的属性来管理音频:
Balance 属性,确定左右音箱的声音平衡;
Volume 属性,用来加大或降低音量;
Mute 属性,用来关闭或打开声音;
※你可以将 ShowAudioControls 属性设为 true 来在控制栏添加处理声音的控件。
□扫描
媒体播放器提供了下面的属性用以扫描:
FastForward 方法,快进;
FastReverse 方法,快倒;
Rate属性,改变播放速率;
※要想使电影剪辑能被扫描,必须将 CanScan 和 AllowScan 属性设为 true。
□搜索
用于搜索的属性有:
MarkerCount 属性,指剪辑中标记的总数量;
CurrentMaker、GetMarkerName、GetMarkerTime 方法,用于返回标记信息;
MarkerHit 事件,当遇到标记时触发;
CurrentPosition 属性,当前位置(用秒度量),可用来将播放头移到剪辑中指定的点;
PositionChange 事件,当设置 CurrentPosition 属性时触发;
※要想搜索到任意的时间,必须将 CanSeek 属性设为 true,要想搜索到标记点,必须将 CanSeekToMarkers 属性设为 true。
□媒体播放器的外观界面
在网页中,你可以通过相关属性来控制媒体播放器的哪些部分出现,哪些部分不出现。
媒体播放器包括如下元素:
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 媒体元文件中,或者两者都放。
剪辑信息可以放在媒体文件中,也可以放在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:带宽;
她 们真的非常重要。一个网页播放器,不管如何变化多端,都是这些方法、事件和属性衍生的功能延伸,如快进、快退,左、右声道,截取片段,重复、循环、随机播 放,拖放,点播,进度条滚动,时间正序、倒序及上一首、下一首、第一首、末一首等等。这里需要说明的是,上面 Windows Media Player 的方法属性是针对 WMP 6.4 以上版本而言,6.4 以下版本的某些地方如全屏等是不同而有区别的。 简单的网页播放器谱乐在前面的专题中已列举了许多实例。即在 HTML 代码中插入: |
windows Media Player 9.0网页播放器 (mp3.wma.wmv.asf) 以下图片为一般播mp3.wma文件时调用windows自带播放器windows Midia Player9.0所显示外观,非9.0版所显示的面板外观可能不同! |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
代码简介: width(播放器面板宽度) height(播放器面板高度) autostart(自动播放,“=1”或“=true”即是功能有效,“=0”即是手动播放) loop(循环播放,“=2”即是循环播放两次,“=-1”或“=true”即是无限次循环播放) <script type="text/javascript"> //图片自动调整的模式,1为按比例调整 ,2 按大小调整。 var resizemode=1 function imgresize(o){ if (resizemode==2 || o.onmousewheel){ if(o.width > 500 ){ o.style.width='500px'; } if(o.height > 800){ o.style.height='800px'; } }else{ var parentNode=o.parentNode.parentNode if (parentNode){ if (o.offsetWidth>=parentNode.offsetWidth) o.style.width='98%'; }else{ var parentNode=o.parentNode if (parentNode){ if (o.offsetWidth>=parentNode.offsetWidth) o.style.width='98%'; } } } } </script>可变值:false 或 0(手动开启);true 或 1(自动开启) |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
(无文件信息显示) |
银灰面板 <embed src="链接地址" width="300" height="45" loop="-1" autostart="true"></EMBED> |
灰白面板 <embed style="FILTER: Gray()" src="链接地址" width="300" height="45" loop="-1" autostart="true"></EMBED> |
棕色面板 <embed style="FILTER: invert()" src="链接地址" width=300 height=45 loop="-1" autostart="true"></EMBED> |
黑色面板 <embed style="FILTER: xray()" src="链接地址" width=300 height=45 loop="-1" autostart="true"></EMBED> |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
(带显示文件播放信息) |
<embed src="链接地址" width=300 height=69 type=application/x-mplayer2 loop="-1" showcontrols="1" ShowDisplay="0" ShowStatusBar="1" autostart="1"></EMBED> |
灰白色面板 <embed style="FILTER: Gray()" src="链接地址" width=300 height=69 type=application/x-mplayer2 loop="-1" showcontrols="1" ShowDisplay="0" ShowStatusBar="1" autostart="1"></EMBED> |
<embed style="FILTER: invert()" src="链接地址" width=300 height=69 type=application/x-mplayer2 loop="-1" showcontrols="1" ShowDisplay="0" ShowStatusBar="1" autostart="1"></EMBED> |
<embed style="FILTER: xray()" src="链接地址" width=300 height=69 type=application/x-mplayer2 loop="-1" showcontrols="1" ShowDisplay="0" ShowStatusBar="1" autostart="1"></EMBED> |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
(显示文件标签信息) |
<embed src="链接地址" loop="-1"width=300 height=140 balance="true" showpositioncontrols="true" showtracker="true" showaudiocontrols="true" showcontrols="true" showstatusbar="true" showdisplay="true" displaysize="0" volume="100" autosize="true" autostart="true" animationatstart="true" transparentatstart="true"></EMBED> |
<embed style="FILTER: Gray()" src="链接地址" loop="-1"width=300 height=140 balance="true" showpositioncontrols="true" showtracker="true" showaudiocontrols="true" showcontrols="true" showstatusbar="true" showdisplay="true" displaysize="0" volume="100" autosize="true" autostart="true" animationatstart="true" transparentatstart="true"></EMBED> |
<embed style="FILTER: invert()" src="链接地址" loop="-1"width=300 height=140 balance="true" showpositioncontrols="true" showtracker="true" showaudiocontrols="true" showcontrols="true" showstatusbar="true" showdisplay="true" displaysize="0" volume="100" autosize="true" autostart="true" animationatstart="true" transparentatstart="true"></EMBED> |
<embed style="FILTER: xray()" src="链接地址" loop="-1"width=300 height=140 balance="true" showpositioncontrols="true" showtracker="true" showaudiocontrols="true" showcontrols="true" showstatusbar="true" showdisplay="true" displaysize="0" volume="100" autosize="true" autostart="true" animationatstart="true" transparentatstart="true"></EMBED> |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
(有图像的media播放器) |
<param name="volume" value="100">是调整默认音量的选项,100是最大音量!
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
以下三种加特效面板修改播放面板尺寸时,须将两组播放尺寸数值修改为一致才能正确显示。 如下例:width: 300px; HEIGHT: 300px" width="300" height="300" |
光晕特效。 ----------------- opacity(不透明度)、finishopacity(平滑度)、style(风格类型) style(风格类型): “1”(强光偏左)、“2”(强光居中)、 “3”(方形发散强光)“4”(透明) |
波浪扭曲: lightstrength(亮度)、strength(波幅)、freq(波频) ----------------------------------------------------------------------- |
边缘雾化 ----------- |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
RealPlayer网页播放面板 (rm.rmvb.ram) |
音频播放器(无信息显示) |
音频播放器(显示播放数据)
<
object
classid
="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"
width
="300"
height
="50"
id
="RP2"
>
< param name ="_ExtentX" value ="10001" > < param name ="_ExtentY" value ="1270" > < param name ="AUTOSTART" value ="-1" > < param name ="SHUFFLE" value ="0" > < param name ="PREFETCH" value ="0" > < param name ="NOLABELS" value ="-1" > < param name ="SRC" value ="链接地址" > < param name ="CONTROLS" value ="ControlPanel,StatusBar" > < param name ="CONSOLE" value ="clip1" > < param name ="LOOP" value ="true" > < param name ="NUMLOOP" value ="0" > < param name ="CENTER" value ="0" > < param name ="MAINTAINASPECT" value ="0" > < param name ="BACKGROUNDCOLOR" value ="#000000" > </ object > |
调整高度可变化面板 显示播放数据
<
embed
src
="链接地址"
width
="300"
height
="60"
autostart
="true"
loop
="true"
></
EMBED
>
显示播放数据及文件信息
<
embed
src
="链接地址"
width
="300"
height
="90"
autostart
="true"
loop
="true"
></
EMBED
>
|
视频播放器 面板分为上下两部分,所以上下分别需要输入链接、调整高宽度。 -----------------------------------------
<
object
classid
="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"
name
="player"
width
="300"
height
="240d="
player"
>
< param name ="_ExtentX" value ="10001" > < param name ="_ExtentY" value ="6879" > < param name ="AUTOSTART" value ="-1" > < param name ="SHUFFLE" value ="0" > < param name ="PREFETCH" value ="0" > < param name ="NOLABELS" value ="-1" > < param name ="SRC" value ="链接地址" > < param name ="CONTROLS" value ="Imagewindow" > < param name ="CONSOLE" value ="clip1" > < param name ="LOOP" value ="true" > < param name ="NUMLOOP" value ="0" > < param name ="CENTER" value ="0" > < param name ="MAINTAINASPECT" value ="0" > < param name ="BACKGROUNDCOLOR" value ="#000000" > </ object > < object classid ="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width ="300" height ="50" id ="RP2" > < param name ="_ExtentX" value ="10001" > < param name ="_ExtentY" value ="1270" > < param name ="AUTOSTART" value ="-1" > < param name ="SHUFFLE" value ="0" > < param name ="PREFETCH" value ="0" > < param name ="NOLABELS" value ="-1" > < param name ="SRC" value ="链接地址" > < param name ="CONTROLS" value ="ControlPanel,StatusBar" > < param name ="CONSOLE" value ="clip1" > < param name ="LOOP" value ="true" > < param name ="NUMLOOP" value ="0" > < param name ="CENTER" value ="0" > < param name ="MAINTAINASPECT" value ="0" > < param name ="BACKGROUNDCOLOR" value ="#000000" > </ object > |