类名 VhallPlayer

方法

init

播放器初始化

	
	/**
	 * 播放器初始化
	 */
    VhallPlayer.init({
        roomId:'', //房间ID,直播必填,点播不写
        recordId:'',//回放Id,点播必填,直播不写
        type:'live',//播放类型,必填,live 直播, vod 为点播
        videoType: 'hls',//视频类型,可选值:hls或flv。hls兼容性好,但是延时高;flv延时低,但是兼容性不如hls需要浏览器支持MSE。
        videoNode:'',//推流视频回显节点id,必填
        quality:'480p',//默认清晰度
        complete:function(){

        },
        //播放器ready事件
        ready:function(){
           console.log('player ready');
        },
        //播放器播放结束事件
        end:function(){
           console.log('player end');
        },
        //播放器错误事件监听
        error:function(reason){
            console.log('player error');
        }
    });

注意:

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

play

播放

	
	/**
	 * 播放
	 */
	VhallPlayer.play();

pause

暂停


	/**
	 * 暂停
	 */
	VhallPlayer.pause();

getQualitys

获取视频清晰度


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

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

setQuality

设置视频清晰度

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


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

setFullScreen

设置全屏


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

isFullscreen

获取当前是否全屏


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

setVolume

设置音量

VhallPlayer.setVolume


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

注意:默认音量为60

getDuration

获取当前视频总时长


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

getCurrentTime

获取当前播放的时间


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

seek

设置当前播放时间


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

此接口只支持点播

getNetworkState

获取当前网络状态


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

destroy

销毁当前实例


    /**
	* 销毁当前实例
     */
	VhallPlayer.destroy();

getCurrentQuality

获取当前清晰度


    /**
	* 获取当前清晰度
	* @return {string} 当前清晰度,如:720p
    */
	VhallPlayer.getCurrentQuality();

getUsableSpeed

获取当前可选倍速


	/**
	 * 获取当前可选倍速
	 * @return {object} 可选倍速,返回值示例:[{ 'speed':'normal','description':'正常'}]
	 */
	VhallPlayer.getUsableSpeed();

setPlaySpeed

设置倍速播放


	/**
	 * 设置倍速播放
	 * @param {string} speed 倍速值,必填,支持倍速值有:0.25,0.5,0.75,1,1.25,1.5,1.75,2
	 * 参数倍速值,可通过getUsableSpeed接口获取,如:VhallPlayer.setPlaySpeed(VhallPlayer.getUsableSpeed()[0].speed);
	 * 也可直接传可选倍速值,如:VhallPlayer.setPlaySpeed('0.5');
	 */
	 VhallPlayer.setPlaySpeed(VhallPlayer.getUsableSpeed()[3].speed);

videoScreenshot

视频截图

	//简单调用
	var imgBase64Data = VhallPlayer.videoScreenshot()

	/**
	* 视频截图
	* @param  {number} params.width 图片宽度,选填,默认为视频原始尺寸
	* @param  {object} params.height 图片高度,选填 默认为视频原始尺寸
	* @param  {object} params.type 图片类型,,枚举值:b为base64数据,u为Uint8Array二进制jpeg图像,i为ImageData类型原始图像,选填,默认值为b
	* @return          图像数据
	*/
	var imgBase64Data = VhallPlayer.videoScreenshot({
		width:100,
		height:100,
		type:'b'
	})

setLimitSeek

设置seek限制

	/**
	*简单调用方法
	*@param {boolean} 开启/关闭Seek限制,true值为开启限制,仅回放点播有效;false值为关闭限制,必填参数
	*/
	VhallPlayer.setLimitSeek(true);

	/**
	* 设置seek限制,支持重载
	* 当参数为boolean类型时,true值为开启限制,仅点播有效;false值为关闭限制,必填参数
	* 当参数为object对象时,参数设置如下:
	* @param {boolean} params.enable 开启/关闭限制,true开启,仅回放点播有效,false关闭;
	* @param {number} params.maxTime 设置初始化最大可seek时间点,单位为秒,选填,默认为当前播放时间点
	* @return {object} 当前seek限制信息,返回值为object对象,示例:{  enable: true, maxTime: 60 }
	*/
	VhallPlayer.setLimitSeek({
		enable:true,
		maxTime:60
	});

getLimitSeek

获取当前seek限制信息

	/**
	* 获取当前seek限制信息
	* @return {object} 返回值为object对象,示例:{  enable: true, maxTime: 60 }
	*/
	VhallPlayer.getLimitSeek();