Media Player在Web应用中的一些要点

1.对本地播放列表的权限操作
程序代码 程序代码
function setMediaAccess(){
Player.settings.requestMediaAccessRights("full");
}

设置之后就能对本地的播放列表进行添加删除操作了,不过会弹出一个安全提示框,说某某站点正对您要取得您本地播放列表的操作权限,
问你是否愿意.
MediaAccessRights有三个属性值 "none", "read", or "full" (read/write). 看字面就知道是做什么用的了.这里就不多说了

2.创建一个Meida对象
程序代码 程序代码
var media="2.mp3";
Player.newMedia(media);

Player是已经定义好的MediaPlayer对象

3.创建当前播放列表
程序代码 程序代码
Player.playlistCollection.newPlaylist("playlist");

playlist是播放列表的名字.以后你可以通过这个名字找到这个播放列表

4.取得当前播放列表
程序代码 程序代码
Player.playlistCollection.getAll().item(index);

index是播放列表的索引值,相当于一个数组的下标,从0开始

5.删除指定的播放列表
程序代码 程序代码
var playObj=Player.playlistCollection.getAll().item(index);
Player.playlistCollection.remove(playObj);

index定义同4

6.播放状态的检测
程序代码 程序代码
var istart=0;
function chkStatus(){
    var arg=arguments;
    switch(arg[0]){
        case 1:{
            switch(arg[1]){
                case 6:{
                    Play_state.innerText=" 断开连接";
                    break;
                };
                case 8:{
                    Play_state.innerText=" 同步读取出错";
                    break;
                };
                case 9:{
                    Play_state.innerText=" 正在定位媒体";
                    break;
                };
                case 10:{
                    Play_state.innerText=" 正在打开媒体";
                    break;
                };
                case 12:{
                    Play_state.innerText=" 正在打开媒体";
                    break;
                };
                case 13:{
                    Play_state.innerText=" 持续连接中";
                    break;
                };
                case 21:{
                    Play_state.innerText=" 打开未知地址";
                    break;
                };
                default:{
                    Play_state.innerText=arg[0]+":"+arg[1];
                    break;
                };
            };
            break;
        };
        case 2:{
            switch(arg[1]){
                case 1:{
                    Play_state.innerText=" 已停止";
                    break;
                };
                case 2:{
                    Play_state.innerText=" 已暂停";
                    break;
                };
                case 3:{
                    if(istart==0)Play_state.innerText=" 开始播放";
                    else Play_state.innerText=" 正在播放";
                    istart=1-istart;
                    break;
                };
                case 6:{
                    Play_state.innerText=" 开始缓冲";
                    break;
                };
                case 8:{
                    Play_state.innerText=" 跳到下一首";
                    break;
                };
                case 9:{
                    Play_state.innerText=" 正在连接到媒体";
                    break;
                };
                case 10:{
                    Play_state.innerText=" 准备就绪 等待中";
                    break;
                };
                default:{
                    Play_state.innerText=arg[0]+":"+arg[1];
                    break;
                };
                
            };
            break;
            
        };
        case 3:{
            switch(arg[1].toString ().toLowerCase()){
                case "true":{
                    Play_state.innerText=" 缓冲中";
                    break;
                };
                case "false":{
                    Play_state.innerText=" 缓冲完成";
                    break;
                };
                default:{
                    Play_state.innerText=arg[0]+":"+arg[1];
                    break;
                };
            };
            break;
        };
    };
};
Play_state在网页中的定义:
程序代码 程序代码
<span id="Play_state"></span>

下面是调用的方式
程序代码 程序代码
<SCRIPT language="JavaScript" type="text/JavaScript" event=openStateChange(lResult) for=Player>
chkStatus(1,lResult);
</SCRIPT>

<SCRIPT language="JavaScript" type="text/JavaScript" event=playStateChange(lResult) for=Player>
chkStatus(2,lResult);
</SCRIPT>
<SCRIPT language="JavaScript" type="text/JavaScript" event=Buffering(lResult) for=Player>
chkStatus(3,lResult);
</SCRIPT>

7.错误的检测
程序代码 程序代码
<SCRIPT language=javascript event=Error() for=Player>
if (Player.ErrorCode==-1072889837)
Play_state.value = "无法连接到服务器,可能是网络问题,请重试。";
if (Player.ErrorCode==-2147220992)
Play_state.value = "没有适当的解码器,请重试或安装新的微软播放器。";
if (Player.ErrorCode==-2147220945)
Play_state.value = "文件格式错,请通知我们,我们将尽快进行维修。";
if (Player.ErrorCode==-1072889830)
Play_state.value = "文件打不开,请通知我们,我们将尽快进行维修。";
if (Player.ErrorCode==-2146697211)
Play_state.value = "无法访问这个服务器,可能是代理服务器不可用。";
if (Player.ErrorCode==-1072887822)
Play_state.value = "无法连接到一个广播频道。";
</SCRIPT>

8.重要的一些属性
//播放器控制属性
controls.play;  播放
controls.pause;  暂停
controls.stop;  停止
controls.currentPosition:double;  当前进度
controls.currentPositionString:string;  当前进度,字符串格式。如“00:23”
controls.fastForward;  快进
controls.fastReverse;  快退
controls.next;  下一曲
controls.previous;  上一曲
*注:上一曲和下一曲属性一般不能使用,因为这种功能是对一个播放列表气作用的,而对于新版本的播放器,js脚本一般没有权限去新建和修改播放列表的。只能自己去设计一个播放列表,自己去修改url属性去选曲。

//播放器基本属性
settings.volume:integer;  音量,0-100
settings.autoStart:Boolean;  是否自动播放
settings.mute:Boolean;  是否静音
settings.playCount:integer;  播放次数

//当前播放媒体的属性
currentMedia.duration:double;  媒体总长度
currentMedia.durationString:string;  媒体总长度,字符串格式。如“03:24”
currentMedia.getItemInfo(const  string);  获取当前媒体信息"Title"=媒体标题,"Author"=艺术家,"Copyright"=版权信息,"Description"=媒体内容描述,"Duration"=持续时间(秒),"FileSize"=文件大小,"FileType"=文件类型,"sourceURL"=原始地址
currentMedia.setItemInfo(const  string);  通过属性名设置媒体信息
currentMedia.name:string;  同  currentMedia.getItemInfo("Title")
[currentPlaylist]  wmp.currentPlaylist  //当前播放列表属性
currentPlaylist.count:integer;  当前播放列表所包含媒体数
currentPlaylist.Item[integer];  获取或设置指定项目媒体信息,其子属性同wmp.currentMedia
posted @ 2008-07-15 14:37  老大卫  阅读(2648)  评论(0编辑  收藏  举报