其一,体验下全球最大的互联网公司的博客功能。
其二,宣传自己的网站,众所周知,网站最重要的一点便是宣传的力度。所以不能再秉承酒香不怕巷子深的理念。
其三,作为一个学习心得记录的地方。最近在研究这款开源的播放器,不但能解决公司的燃眉之急,也可以提高自己对as语言在网络上应用的水平。
Vcastr 3.0 – flash video(flv) player (开源 Open Source) < type="text/javascript">
特点
使用as3.0重新写了播放器
播放器大小缩小,在20+k左右
可以通过xml对播放器设置
可以播放多个影片,并且有影片列表
可以设置循环播放,自动播放,是否直接开始下载,控制栏的颜色和模式
控制栏可以适应超小的尺寸
可以使用插件扩充播放器的功能
可以用插件设置logo及连接
可以用插件来用javascript控制播放器
可以用插件来用设定播放器开始或者结束的图片或者flash(swf) beta
更新历史 http://groups.google.com/group/vcastr/edit/vcastr-update
下载
beta 实例 http://vcastr.googlecode.com/svn/trunk/vcastr3/beta/example/example.zip
beta 源代码 http://vcastr.googlecode.com/svn/trunk/vcastr3/beta/src.zip
实例 http://vcastr.googlecode.com/svn/trunk/vcastr3/release/example/example.zip
源代码 http://vcastr.googlecode.com/svn/trunk/vcastr3/release/src.zip
Google Code Project Hosting http://code.google.com/p/vcastr/
官方网站:http://www.ruochi.com/main/2008/03/19/vcastr-30/
使用方法:
第一步:
<object type="application/x-shockwave-flash" data="9vcastr3.swf" width="230" height="190" id="vcastr3">
————————————————————————————————————
插入代码
直接写入参数
复制内容到剪贴板
如果你需要符合w3c的标准,可以用”{”"}”替换xml中的”<"">“,例子程 序代码
<object type="application/x-shockwave-flash" data="vcastr3.swf" width="400" height="300" id="vcastr3">
<param name="movie" value="vcastr3.swf"/>
<param name="allowFullScreen" value="true" />
<param name="FlashVars" value="xml=
<vcastr><channel><item>
<source>http://bbs.aboutin.com/flv/movie/20090109_video.flv</source>
<duration></duration>
<title></title>
</item></channel>
<config></config>
<plugIns><logoPlugIn>
<url>logoPlugIn.swf</url>
<logoText>www.msland.cn</logoText>
<logoTextAlpha>0.75</logoTextAlpha>
<logoTextFontSize>20</logoTextFontSize>
<logoTextLink>http://www.msland.cn</logoTextLink>
<controlPanelBgColor>0xff6600</controlPanelBgColor>
<controlPanelBtnColor>0xffffff</controlPanelBtnColor>
<contralPanelBtnGlowColro>0xffff00</contralPanelBtnGlowColro>
<isAutoPlay>flase</isAutoPlay>
<isLoadBegin>true</isLoadBegin>
<scaleMode>showAll</scaleMode>
<isRepeat>false</isRepeat>
<textMargin>10 10 auto auto</textMargin>
</logoPlugIn>
</plugIns>
</vcastr>"/>
</object>
<param name="movie" value="vcastr3.swf"/>
<param name="allowFullScreen" value="true" />
<param name="FlashVars" value="xml=
<vcastr><channel><item>
<source>http://bbs.aboutin.com/flv/movie/20090109_video.flv</source>
<duration></duration>
<title></title>
</item></channel>
<config></config>
<plugIns><logoPlugIn>
<url>logoPlugIn.swf</url>
<logoText>www.msland.cn</logoText>
<logoTextAlpha>0.75</logoTextAlpha>
<logoTextFontSize>20</logoTextFontSize>
<logoTextLink>http://www.msland.cn</logoTextLink>
<controlPanelBgColor>0xff6600</controlPanelBgColor>
<controlPanelBtnColor>0xffffff</controlPanelBtnColor>
<contralPanelBtnGlowColro>0xffff00</contralPanelBtnGlowColro>
<isAutoPlay>flase</isAutoPlay>
<isLoadBegin>true</isLoadBegin>
<scaleMode>showAll</scaleMode>
<isRepeat>false</isRepeat>
<textMargin>10 10 auto auto</textMargin>
</logoPlugIn>
</plugIns>
</vcastr>"/>
</object>
使用xml传递参数
复制内容到剪贴板
程 序代码
参数说明
xml的可以设置的全部参数,以及默认的数值复制内容到剪贴板
以下用”.”描述xml树结构并说明参数作用程 序代码
<vcastr>
<channel>
<item>
<source>http://vcastr.ruochi.com/video/happy_feet.flv</source>
<duration></duration>
<title></title>
</item>
<item>
<source>http://vcastr.ruochi.com/video/happy_feet.flv</source>
<duration></duration>
<title></title>
</item>
<item>
<source>http://vcastr.ruochi.com/video/happy_feet.flv</source>
<duration></duration>
<title></title>
</item>
</channel>
<config>
<bufferTime>4</bufferTime>
<contralPanelAlpha>0.75</contralPanelAlpha>
<controlPanelBgColor>0xff6600</controlPanelBgColor>
<controlPanelBtnColor>0xffffff</controlPanelBtnColor>
<contralPanelBtnGlowColro>0xffff00</contralPanelBtnGlowColro>
<controlPanelMode>float</controlPanelMode>
<defautVolume>0.8</defautVolume>
<isAutoPlay>true</isAutoPlay>
<isLoadBegin>true</isLoadBegin>
<isShowAbout>true</isShowAbout>
<scaleMode>showAll</scaleMode>
</config>
<plugIns>
<logoPlugIn>
<url>LogoPlugIn.swf</url>
<logoText>Ruochi.com</logoText>
<logoTextAlpha>0.75</logoTextAlpha>
<logoTextFontSize>24</logoTextFontSize>
<logoTextColor>0xffffff</logoTextColor>
<textMargin>10 auto auto 10</textMargin>
<logoClipUrl>http://www.ruochigroup.com/images/logo.png</logoClipUrl>
<logoClipAlpha>1</logoClipAlpha>
<clipMargin>10 10 auto auto</clipMargin>
</logoPlugIn>
<beginEndImagePlugIn>
<url>beginEndImagePlugIn.swf</url>
<source>beginSwfTest.swf</source>
<type>begin</type>
<scaleType>exactFit</scaleType>
</beginEndImagePlugIn>
<javaScriptPlugIn>
<url>javaScriptPlugIn.swf</url>
</javaScriptPlugIn>
</plugIns>
</vcastr>
<channel>
<item>
<source>http://vcastr.ruochi.com/video/happy_feet.flv</source>
<duration></duration>
<title></title>
</item>
<item>
<source>http://vcastr.ruochi.com/video/happy_feet.flv</source>
<duration></duration>
<title></title>
</item>
<item>
<source>http://vcastr.ruochi.com/video/happy_feet.flv</source>
<duration></duration>
<title></title>
</item>
</channel>
<config>
<bufferTime>4</bufferTime>
<contralPanelAlpha>0.75</contralPanelAlpha>
<controlPanelBgColor>0xff6600</controlPanelBgColor>
<controlPanelBtnColor>0xffffff</controlPanelBtnColor>
<contralPanelBtnGlowColro>0xffff00</contralPanelBtnGlowColro>
<controlPanelMode>float</controlPanelMode>
<defautVolume>0.8</defautVolume>
<isAutoPlay>true</isAutoPlay>
<isLoadBegin>true</isLoadBegin>
<isShowAbout>true</isShowAbout>
<scaleMode>showAll</scaleMode>
</config>
<plugIns>
<logoPlugIn>
<url>LogoPlugIn.swf</url>
<logoText>Ruochi.com</logoText>
<logoTextAlpha>0.75</logoTextAlpha>
<logoTextFontSize>24</logoTextFontSize>
<logoTextColor>0xffffff</logoTextColor>
<textMargin>10 auto auto 10</textMargin>
<logoClipUrl>http://www.ruochigroup.com/images/logo.png</logoClipUrl>
<logoClipAlpha>1</logoClipAlpha>
<clipMargin>10 10 auto auto</clipMargin>
</logoPlugIn>
<beginEndImagePlugIn>
<url>beginEndImagePlugIn.swf</url>
<source>beginSwfTest.swf</source>
<type>begin</type>
<scaleType>exactFit</scaleType>
</beginEndImagePlugIn>
<javaScriptPlugIn>
<url>javaScriptPlugIn.swf</url>
</javaScriptPlugIn>
</plugIns>
</vcastr>
影片信息
channel.item
影片信息,可以设置多个影片channel.itme.source
flv影片地址参数,此参数是唯一必须要有的参数,其他参数都可以不要,播放器有默认参数channel.itme.duration
对应影片的总时间, 单位是秒,由于有些影片在制作过程中时间信息丢失,可以通过这里来设置channel.itme.tilte
对应影片的标题channel.itme.link
对应影片点击后的链接播放器设置
config.bufferTime
在缓存区影片的时间,单位是秒config.contralPanelAlpha
控制栏的透明度,在 0 — 1 之间config.controlPanelBgColor
控制栏背景的颜色config.controlPanelBtnColor
控制按钮的颜色config.contralPanelBtnGlowColro
控制按钮光晕的颜色config.defautVolume
默认的声音大小,最大为1,最小为0config.controlPanelMode
控制栏的显示模式,“float”: 默认的浮动模式,鼠标移除播放器就会隐藏掉
“normal”: 正常模式,任何时候都在影片的下部浮动显示
“bottom”: 下部模式,不浮动在影片之上,而是显示在影片下方
“none”: 不显示播放器控制栏
config.isAutoPlay
是否影片自动开始播放,默认是trueconfig.isLoadBegin
是否一开始就读取影片,默认是trueconfig.isRepeat
是否循环播放影片,默然是falseconfig.isShowAbout
是否显示关于信息config.scaleMode
影片放缩模式:“showAll”: 可以看到全部影片,保持比例,可能上下或者左右
“exactFil”: 放缩影片到播放器的尺寸,可能比例失调
“noScale”: 影片的原始尺寸,无放缩
“noBorder”: 影片充满播放器,保持比例,可能会被裁剪
插件设置
plugIns 中每一个子节点代表一个插件,可以设置多个插件
plugIns.logoPlugIn,显示logo插件的参数设置
plugIns.logoPlugIn.url
插件的地址,可以使用绝对地址,也可以使用相对地址,绝对地址需要http:// 开始
plugIns.logoPlugIn.logoText
logo文字,注意之可以使用英文和英文标点,不支持中文,如果想放中文,就把中 文做成文字png透明图片,用plugIns.logoPlugIn.logoClipUrl参数设置
plugIns.logoPlugIn.logoTextAlpha
文字的透明度plugIns.logoPlugIn.logoTextLink
文字的连接plugIns.logoPlugIn.logoTextFontSize
文字字体的大小plugIns.logoPlugIn.logoTextColor
文字的颜色plugIns.logoPlugIn.textMargin
文字的位置,用了css的margin概念,四个数值代表 上 右 下 左 相对于播放器的距离,四个数值用空格分开,不需具体数值用”auto”填写 ,比如左上对齐并都有10像素的距离可以写 “10 auto auto 10″, 右下角对齐是”auto 10 10 auto”plugIns.logoPlugIn.logoClipUrl
图片logo的url,可以使用绝对地址,也可以使用相对地址,绝对地址需要 http://开始plugIns.logoPlugIn.logoClipAlpha
图片logo的透明度plugIns.logoPlugIn.logoClipLink
图片logo的连接plugIns.logoPlugIn.clipMargin
图片logo的位置,用了css的margin概念,四个数值代表 上 右 下 左 相对于播放器的距离,四个数值用空格分开,不需具体数值用”auto”填写 ,比如左上对齐并都有10像素的距离可以写 “10 auto auto 10″, 右下角对齐是”auto 10 10 auto”plugIns.javaScriptPlugIn,javaScript控制插 件的参数设置
plugIns.javaScriptPlugIn.url
插件的地址,可以使用绝对地址,也可以使用相对地址,绝对地址需要http:// 开始javaScript插件
使用方法参看实例页面http://vcastr.ruochi.com/v3/vcastr_javaScript_example.htmljavaScript可以控制播放器 播放,暂停,停止,快进,快退,下一个,上一个,音量控制,影片跳转到需要的时间
在javaScript可以获得播放器的事件,有四个参数回来,分别是type:事件种类,state:当前状态, phayHeadTime:当前播放时间,loadPersent:下载百分比
事件 type有
stateChange,播放状态变化,播放或者暂停
complete,播放完毕
init,播放器初始化完毕
ready,影片下载了一部分,已经可以开始播放
playheadUpdate,每一秒即发一次
startBuffering,开始缓冲
stopBuffering,缓冲结束
状态 state
playing,播放中
paused,暂停中
beginEndImagePlugIn 影片开始和结尾需要加载外部资源(可以是图片或者swf)的插件
beginEndImagePlugIn.logoPlugIn.url
插件的地址,可以使用相对或者绝对地址,绝对地址需要http://开始beginEndImagePlugIn.logoPlugIn.source
开始的图片或者swf的地址beginEndImagePlugIn.logoPlugIn.type
显示方式,有3种显示方法,begin:在开始的显示,end:结尾部分显 示,beginEnd:在开始和结尾部分同时显示beginEndImagePlugIn.logoPlugIn.scaleType
“showAll”: 可以看到全部影片,保持比例,可能上下或者左右“exactFil”: 放缩影片到播放器的尺寸,可能比例失调
“noScale”: 影片的原始尺寸,无放缩
“noBorder”: 影片充满播放器,保持比例,可能会被裁剪
意见和反馈
必须部分,设置的flash的大小,地址,如果需要脚本使用,还可以设置id的名称
<param name=“allowFullScreen” value=“true” />
<param name=“FlashVars” value=“xml=vcastr.xml” />
<param name=“bgColor” value=“#ff6600″ />
<param name=“menu” value=“false” />
<param name=“quality” value=“high” />
<param name=“scale” value=“default” />
<param name=“wmode” value=“default” />
<param name=“salign” value=“TL” />
<param name=“base” value=“url” />
以上的内容是摘自网络的,当然,自己也在公司官网上尝试过。基本的播放速度是完全满足的。但有一点功能,还有待进一步去研究,那就是如何用vcastr实现多个视频播放,并在界面上显示每个视频的缩略图。
没有评论:
发表评论