文章搜索:
打开支付宝首页搜索“510617664”,即可领红包
  首页--> 计算机--> 网页设计
 
实战代码分析 为网页加播放器
http://www.xxqqss.com 学习轻松网 点击量:6777
 

我们在网页上看到的播放器无外乎WMP/RealOne/Macromedia Flash Player,其他的无非是面板不同,或者添加了其他控件,对于计算机上安装的一些播放器也都是编码和解码器的整合,其最核心的编码和解码技术是相同的。例如:网络上最流行的windows media流(asf,wma,wmv格式...),Real流(rm,rmvb...),还有MPEG系列编码格式(MP4/MP3格式...)

  Windows Media Video 是微软推出的一种流媒体格式,它是在“同门”的ASF(Advanced Stream Format)格式升级延伸来得.在同等视频质量下,WMV格式的体积非常小,因此很适合在网上播放和传输。Windows Media Player9兼容所有格式的WMV,官方编码器是Windows Media Encoder ,但是如果你想转制 高质量的wmv文件,那您一定要有超大的内存来处理数据...

  无意中发现CASTPOST的播放器可以自己定义大小,对于WMV格式的在线播放可以说已经足够快了,然后就费了好大劲把一些精彩的短片和一些经典的MTV转化WMV格式放了上来,尽管现在不能下载了,但是只要不是连接人数过多,播放起来还是很流畅的^_^

  WMP加入了ActiveX解码器控件,不仅可以放曲子,还能放Flash和其它视频文件

  <object align=middle classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" class=OBJECT id=MediaPlayer width=196 height=196>
<param name=ShowStatusBar value=0>
<param name=Filename value="http://202.116.*.*/video/story/chinese/hynh/b.wmv">
<embed type=application/x-oleobject codebase="http://activex.microsoft.com/activex/con ... n/nsmp2inf.cab#Version=5,1,52,701" >
</embed>
</object>

  想用WMP连续播放请参照ASX元文件使用讲解:使用ASX播放列表吧

  上面的这个播放器是老式的那种,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="/blog/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>

  --------------------------------------------------------------------------------

  RealOne播放器代码:

  <object id="vid" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width=427 height=300>
<param name="_ExtentX" value="11298">
<param name="_ExtentY" value="7938">
<param name="AUTOSTART" value="-1">
<param name="SHUFFLE" value="0">
<param name="PREFETCH" value="0">
<param name="NOLABELS" value="-1">
<param name="SRC" value="rtsp://211.89.225.1/encoder/cnr3";>
<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> <object id="vid2" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width=427 height=30>
<param name="_ExtentX" value="11298">
<param name="_ExtentY" value="794">
<param name="AUTOSTART" value="-1">
<param name="SHUFFLE" value="0">
<param name="PREFETCH" value="0">
<param name="NOLABELS" value="-1">
<param name="SRC" value="rtsp://211.89.225.1/encoder/cnr3";>
<param name="CONTROLS" value="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>

  --------------------------------------------------------------------------------

  看着很多很复杂的样子,其实就是多了些播放器参数,可以不要...

  Real Player 网页播放器 参数含义

  参数:autostart 属性:True或是False 作用:指定是否自动播放指定的源文件

  参数:backgroundcolor 属性:任何用符号“#”开头的16进制数值或是任何预定义的颜色作用:指定图像窗口的背景颜色

  参数:center 属性:True或是False 作用:指定片断使用初始编码大小播放,并且在图像窗口的中央。

  参数:classid 属性:"clsid:CFCDAA03-8BE4-1lcf-B84B0020AFBBCCFA:** 作用:用于指定ActiveX控件的唯一的字符串标示,可以认出嵌入的RealPalyer播放器。

  参数:console 属性:任何字符串作用:可以将各种不同的RealPlayer控制聚集在网页上,这样它们可以交互使用或是保持独立,而且互相不影响

  参数:controls 属性:ImageWindow,All,ControlPanel,PlavButton,PlayOnlyButton, PauseButton,StopButton,FFCtrl,RWCtrl,MuteCtrl,MuteVolume,VolumeSlider,PositionSlider,TACCtrl,HomeCtrl,InfoVolumePanel,InfoPanel,StatusBar,StatusField,PositionField 作用:可以让你指定那些控制是可见的。

  参数:height 属性:任何整数值作用:指定RealPlayer元素的高度,单位:像素

  参数:id 属性:任何字符串作用:为标签中的RealPlayer元素指定名字。

  参数:imagestatus 属性:True或是False 作用:指定是否在图像窗口中显示状态信息,默认值是true

  参数:loop 属性:True或是False 作用:可以让你指定片断是否无限循环

  参数:maintainaspect 属性:True或是False 作用:默认RealPlayer拉伸所有的片断来充满整个图像窗口。

  参数:name 属性:任何字符串作用:为标签中的RealPlayer元素指定名字(在标签中使用id)

  参数:nojava 属性:True或是False 作用:避免启动Java虚拟机

  参数:nolabels 属性:True或是False 作用:可以禁止显示标题或是版权信息(realplayer5.0以上时,它是垃圾...)

  参数:nologo 属性:True或是False 作用:避免RealPlayer启动时在图像窗口中显示

  参数:numloop 属性:任何整数值作用:让你能够指定文件片循环的次数,不需要参数loop

  参数:prefetch 属性:True或是False 作用:指定在播放前,RealPlayer是否可以获得流描述信息,默认值是False

  参数:region 属性:任何字符串作用:同SMIL一起使用。允许你指定使用HTML代替SMIL

  参数:scriptcallbacks 属性:用逗号分割的列表作用:指定浏览器的回调监控(好高级的东东!)

  参数:shuffle 属性:True或是False 作用:同多文件片的ram文件或是SMIL文件一起使用。可以让RealPlayer随机播放列表中的文件

  参数:src 属性:任何合法的相对或是完整的URL 作用:指定播放的文件或是源文件的地址

  参数:type 属性:字符串作用:为嵌入插件指定MIME类型

  参数:width 属性:任何整数值作用:指定RealPlayer元素的宽度

  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 SetShowAbou

来源:天极网

打印】 【关闭
免责声明 :本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请发送fiyeadwyv@163.com
最热门点击排行
 
版权所有 2006-2021:学习轻松网 Copyright http://www.xxqqss.com All rights reserved 浙ICP备14013707号-1
广告联系电话: 13958357030 联系QQ:9792414 工具条下载