Windows Media流媒体可以通过MMS协议或HTTP协议,在WindowsMedia Player中或在网页中嵌入相应ActiveX进行播放,我们主要讨论在网页中播放ASF流媒体文件的方法,这在网络教育中更有普遍意义。
1. 在网页中播放ASF流媒体文件的原理
在网页中播放ASF流媒体文件就是在网页中嵌入Windows Media Player ActiveX控件,通过此控件进行ASF文件的播放。以下是插入此控件的HTML代码。
codebase="http://activex.microsoft.com/activex/controls/mplayer/en
/nsmp2inf.cab#Version=5,1,52,701"
standby="Loading Microsoft Windows Media Player components…" type="application/x-oleobject">
pluginspage="http://www.microsoft.com/isapi/redir.dll?
prd=windows&sbp=mediaplayer&ar=media&sba=plugin"
filename="demo.asf"
displaysize="0"
name="WMPlay"
width=320 height=240
>
其中标签和标签的嵌套使用是为解决IE与Netscape浏览器的兼容性问题。在标签中,classid指出了Windows Media Player ActiveX控件的版本;ID用于在网页中给这个控件命名,以便在网页中使用脚本(如javascript)对其进行调用(在标签中使用的是name);width和 height用于设定播放时整个显示区域的尺寸,PARAM用于设定控件的属性,例如name指出属性的名称,相应value则设定其属性值。
特别要注意的是:设定播放的文件名属性时,通常是指向ASX文件,而并非直接指向ASF文件。这是因为ASX文件是meta文件。在使用Windows Media 服务功能来加强流媒体传输性能时,必须使用此ASX文件(详见文后的讨论),而不使用Windows Media 服务功能时也可使用ASX文件来对ASF文件定向,因此此处应将文件名属性指定为ASX文件,这样可在今后对流媒体的播放方式上有变化时不必修改网页。