1 调用说明

所有接口通过VhallPlayer对象来调用,参数是一个对象,除了每个接口本身需要传的参数之外,还有以下通用参数:

  1. success:接口调用成功时执行的回调函数。
  2. fail:接口调用失败时执行的回调函数。
  3. complete:接口调用完成时执行的回调函数,无论成功或失败都会执行。

2 API接口

2.1 VhallPlayer.init 播放器初始化


    VhallPlayer.init({
        roomId:'', //房间ID,直播必填,点播不写
        recordId:'',//回放Id,点播必填,直播不写
        type:'live',//播放类型,必填,live 直播, vod 为点播
        videoNode:'',//推流视频回显节点id,必填
        complete:function(){

        }
    });

注意:

  1. 此方法必需写在Vhall.ready事件里。
  2. roomId获取方式,登陆微吼云>>进入应用管理>>找到对应需要推流的应用>>点“直播管理”>>房间管理>>取得相应房间ID。
  3. videoNode,为推流回显容器的Id,需要开发者自己在需要显示回显的地方,创建一个空div,然后给Id命名,再将id名称写入此参数。

2.2 播放

VhallPlayer.play 播放


    VhallPlayer.play();

2.3 暂停

VhallPlayer.pause;


VhallPlayer.pause();

2.4 获取视频清晰度

VhallPlayer.getQuality


/**
 * 获取视频清晰度
 * @return {Array}   清晰度数组,如: [same,720,480],same为原画
 */
VhallPlayer.getQuality();

返回清晰度数组,数组元素为清晰度值

2.5 设置视频清晰度

此方法的参数为视频清晰度,值必须来源于getQuality方法, 获取方式:调用getQuality,将返回数组中的任何一个值,传入即可。示例代码如下。 VhallPlayer.setQuality


/**
 *  @param {string} quality 视频清晰度,值来源于getQuality方法
 */
VhallPlayer.setQuality(VhallPlayer.getQuality()[0]);

2.6 设置全屏

VhallPlayer.setFullScreen


/**
 * 设置全屏
 * @param {bool}  true 或空为全屏,false为退出全屏      
 */
VhallPlayer.setFullScreen(bool);

2.7 获取当前是否全屏

VhallPlayer.isFullscreen


/**
 * 获取当前是否全屏
 * @return {bool}   是否全屏,true or false
 */
VhallPlayer.isFullscreen();

2.8 设置音量

VhallPlayer.setVolume


/**
 * 设置音量
 * @param {int} volume 0~100 的数字,0 静音
 */
VhallPlayer.setVolume(volume);

注意:默认音量为60

2.9 设置播宽度

VhallPlayer.setWidth


/**
 * 设置宽度
 * @param {int} width 整形数字
 */
VhallPlayer.setWidth(width);

注意:默认视频宽度为,step5中设置的容器的宽度。

2.10 设置高度

VhallPlayer.setHeight


/**
 * 设置宽度
 * @param {int} height 整形数字
 */
VhallPlayer.setHeight(height);

注意:默认视频高度为,step4中设置的容器的高度。

2.11 获取当前视频总时长

VhallPlayer.getDuration


/**
 * 获取当前视频总时长
 * @return {int}  单位秒
 */
VhallPlayer.getDuration();

2.12 获取当前播放的时间

VhallPlayer.getCurrentTime


/**
 * 获取当前播放的时间
 * @return {int}  单位秒
 */
VhallPlayer.getCurrentTime();

2.13 设置当前播放时间

VhallPlayer.seek


/**
 * 设置当前播放时间
 * @return {int}  单位秒
 */
VhallPlayer.seek(time);

此接口只支持点播

2.14 获取当前网络状态

VhallPlayer.getNetworkState


/**
 * 获取当前网络状态
 * @return {int}  0:音频/视频尚未初始化,1:音频/视频是活动的且已选取资源,但并未使用网络,2:浏览器正在下载数据,3:未找到音频/视频来源
 */
VhallPlayer.getNetworkState();

返回码 说明
0 音频/视频尚未初始化
1 音频/视频是活动的且已选取资源,但并未使用网络
2 浏览器正在下载数据
3 未找到音频/视频来源

2.15 推流端开始推流事件

此事件发起直播时才会触发,注册方法如下:

VhallPlayer.onPublishStart


VhallPlayer.onPublishStart(function(){
    console.log('直播开始!');
})

2.16 推流端停止推流事件

此事件停止直播时才会触发,注册方法如下:

VhallPlayer.onPublishStop


VhallPlayer.onPublishStop(function(){
    console.log('直播结束!');
})