js下流媒体的在线播放

1.声音,如:wma,mp3

只需要一个html标签就可以搞定:<embed>,它会自动调用本机的mediaplayer来对其进行播放。

2.flash

也是只需要一个html标签就可以搞定:<embed>。

3.视频:wmv

也是只需要一个html标签就可以搞定:<embed>。

但是如果想用JS以编程的方式进行控制,还是老老实实的用ActiveX对象吧:

 <OBJECT class=OBJECT id=MediaPlayer height=480 width=640 align=left classid=CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95> 
<param name="AudioStream" value="-1">
<param name="AutoSize" value="0">
<param name="AutoStart" value="0">
<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">
<param name="BaseURL" value="">
<param name="BufferingTime" value="5">
<param name="CaptioningID" value>
<param name="ClickToPlay" value="-1">
<param name="CursorType" value="0">
<param name="CurrentPosition" value="-1">
<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="4">
<param name="Enabled" value="-1">
<param name="EnableContextMenu" value="-1">
<param name="EnablePositionControls" value="-1">
<param name="EnableFullScreenControls" value="0">
<param name="EnableTracker" value="-1">
<param name="Filename" value="http://ljzforever.gicp.net/media/高等数学/上/gdsxs08.wmv">
<param name="InvokeURLs" value="-1">
<param name="Language" value="-1">
<param name="Mute" value="0">
<param name="PlayCount" value="0">
<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="-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="0">
<param name="VideoBorderWidth" value="0">
<param name="VideoBorderColor" value="0">
<param name="VideoBorder3D" value="0">
<param name="Volume" value="0">
<param name="WindowlessVideo" value="0">
</OBJECT>

以下是JS控制方式:

play()播放

stop()停止

pause()暂停

filename设置文件路径

4.视频:rm

代码如下:

<object classid="clsid:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA" id="RealAudio1" width="300" height="227"> 
<param name="_ExtentX" value="7938">
<param name="_ExtentY" value="6006">
<param name="AUTOSTART" value="-1">
<param name="SHUFFLE" value="-1">
<param name="PREFETCH" value="0">
<param name="NOLABELS" value="0">
<param name="SRC" value="http://ljzforever.gicp.net/a.rm">
<param name="CONTROLS" value="ImageWindow,StatusBar,controlpanel">
<param name="LOOP" value="0">
<param name="NUMLOOP" value="0">
<param name="CENTER" value="-1">
<param name="MAINTAINASPECT" value="0">
<param name="BACKGROUNDCOLOR" value="#000000">
</object>

js的控制代码如下:

DoStop() 停止
DoPlay()播放
doPause()暂停
setSource()设置文件来源

SetPosition()设置进度

5.视频:flv

播放这种格式的视频很有意思,通常都是用一个播放器软件来播放视频,而这则是用一个视频充当播放器来播放另一个视频。现在在网上能找到的有两类:开源的vcastr与Google的googleplayer

vcastr有2.2版与3.0版

2.2版,可以直接在参数后写地址:

<embed src="http://192.168.0.195/vcastr.swf" FlashVars="vcastr_file=http://192.168.0.195/2.flv" allowFullScreen="true" quality="high" type="application/x-shockwave-flash" width="400" height="300"></embed>

 

3.0版,则全部由xml来表达:

<object type="application/x-shockwave-flash" data="vcastr3.swf" width="650" height="500" id="vcastr3"> 
<param name="movie" value="http://192.168.0.195/vcastr3.swf"/>
<param name="allowFullScreen" value="true" />
<param name="FlashVars" value="xml=
<vcastr>
<channel>
<item>
<source>http://192.168.0.195/2.flv</source>
<duration></duration>
<title></title>
</item>
</channel>
<config>
<isAutoPlay>false</isAutoPlay>
</config>
<plugins>
</plugins>
</vcastr>"/>
</param>
</object>

googleplayer则是通过在googleplayer自己地址的后面通过参数来传达flv地址:

<embed src="http://ljzforever.gicp.net/googleplayer.swf?videoUrl=http://ljzforever.gicp.net/2.flv" type="application/x-shockwave-flash" wmode="transparent" quality="high" width="450" height="370" autostart="true"></embed> 

 

更多的参数与写法,请参考下面的文章。

我个人推荐用vcastr3.0版,因为其该有的功能都有了,且体积小,只有20+K,而其2.2版无音量调节功能,60+K,googleplayer则有100+K

6.csf

这个格式就不用多说了,大学课程基本用的都是这个格式

首先需要安装ScenicPlayer1.16以上版本。

 

<object id="obj_CSF" classid="clsid:8EF11386-FCAF-426D-88B0-62C68E9B5770" width="640px" height="480px" codebase="http://download.collegesoft.com.cn/product/publish/xplayer.cab"> 
<param name="ValidationCode" value=""/>
<param name="url" value=""/>
<param name="ShowToolbar" value="1"/>
<param name="BufferTime" value="5000"/>
<param name="AutoPlay" value="1"/>
<param name="AutoReplay" value="0"/>
<param name="AutoFullScreen" value="0"/>
<param name="AutoScreenStretch" value="0"/>
<param name="DisableVideoAccel" value="0"/>
<param name="DisableOverlay" value="0"/>
<param name="UseMoreMonitor" value="0"/>
<param name="ConnectStyle" value="0"/>
<param name="MonitorIndex" value="0"/>
<param name="MainMonitorMode" value="1"/>
<param name="MaxVideoNumPerMonitor" value="4"/>
</object>

 

JS控制:

play()播放

pause()暂停

stop()停止

open()打开

说明:

我在使用ScenicPlayer进行在线播放的时候,是通过div的隐藏与显示来控制的,发现如果页面初始化的时候如果ScenicPlayer是隐藏的,则将它显示出来加载影片播放时需要加载两次,如果一开始就是显示状态,则是正常的,只需加载一次

下载:

vcastr2.2,vcastr3.0,googleplayer:

http://ljzforever.qupan.com/?folder=950889

参考的文章:

embed属性详解

http://hi.baidu.com/cfugcfug/blog/item/f2384a959bb55348d0135e61.html/cmtid/a980241e8c88161641341714

如何将音乐文件(如mp3,rm)嵌入到网页中

http://www.cnblogs.com/renyu732/archive/2005/06/11/172707.html

如何在网页中播放rm视频文件

http://topic.csdn.net/t/20050715/15/4147116.htm

Vcastr 2.2 flv 网络播放器

http://blog.chinaunix.net/u1/44422/showart_384999.html

Vcastr 3.0 - flash video(flv) player (开源 Open Source)

http://www.ruochigroup.com/main/2008/03/19/vcastr-30/

使用googleplayer.swf在线播放flv文件+googleplayer.swf下载

http://429006.com/article/Technology/1215.htm

在网页中嵌入ScenicPlayer控件播放课件和接收直播

http://download.collegesoft.com.cn/Forums/ShowPost.aspx?PostID=117

在网页内激活ScenicPlayer应用程序播放课件和接收直播

http://download.collegesoft.com.cn/Forums/ShowPost.aspx?PostID=118

 

posted @ 2010-03-09 11:43  永远的阿哲  阅读(936)  评论(0编辑  收藏  举报