类名 VHPublisher

方法

init

初始化推流


/**
 * 初始化推流
 */
  VHPublisher.init({
    roomId:'',//房间名称
    videoNode:'',//推流容器
    /*
     推流依赖的flash文件路径
     1.不传或传空则默认为:./images
     2.结尾不加反斜线"/"
     3.支持相对路径或绝对路径
     4.如果传相对路径,则需是相对当前推流页面的目录
     5.如果传绝对路径,则需保证与当前推流页面为同域
    */
    swfFilePath:'./images',
    //实例化成功回调
    success: function(){
       //TODO
    },
    //实例化失败回调
    fail: function(reason){
      console.info(reason);
    },
    //实例化完成回调
    complete:function(){
      //TODO
    }
  });

注意:

1.此方法必需写在Vhall.ready事件里。

2.roomId获取方式,登陆微吼云>>进入应用管理>>找到对应需要推流的应用>>点“直播管理”>>房间管理>>取得相应房间ID。

3.videoNode,为推流回显容器的Id,需要开发者自己在需要显示回显的地方,创建一个空div,然后给Id命名,再将id名称写入此参数。参考 “直播使用流程step5: 创建推流器对象”

失败回调(fail)错误码说明(见下错误码对照表)

startPush

开始推流
此方法既可以不传任何参数来调用(使用默认参数),也可以自定义参数来调用,如下示例:


  /**
   * 开始推流,简单调用方法
   */
  VHPublisher.startPush();

  /**
   * 开始推流,自定义参数调用方法
   */
  VHPublisher.startPush({
    camera:'',//摄像头名称,不传值则使用默认摄像头
    mic:'',//麦克风名称,不传值则使用默认麦克风
    width:'',//推流分辨率的宽度,不传值则使用默认分辨率:853,
    height:'',//推流分辨率的高度,不传值则使用默认分辨率:480
    //成功回调,非必填
    success:function(){
      //after success todo 
    },
    //失败回调,非必填
    fail:function(){
      //after failed todo
    }
  });


注意: 此方法必需写在Vhall.ready事件里。

失败回调(fail)错误码说明(见下错误码对照表)

stopPush

停止推流

此方法既可以不传任何参数来调用,也可以自定义参数(设置推流回调)来调用,如下示例:


  /**
   * 停止推流,简单调用方法
   */
  VHPublisher.stopPush();

  /**
   * 停止推流,自定义参数调用方法
   */
  VHPublisher.stopPush({
    //停止推流完成事件,非必填
    complete:function(){
      //TODO
    }
  });

error

异常事件监听
VHPublisher.error

  /**
   * 异常事件监听
   */
  VHPublisher.error(function(e){
    //返回值 res {code:消息码, msg: 提示}
  });

startPushAudioOnly

音频推流,只有音频无视频 VHPublisher.startPushAudioOnly


  /**
   * 开始音频推流,简单调用方法
   */
  VHPublisher.startPushAudioOnly();

  /**
   * 开始音频推流,自定义参数调用方法
   */
  VHPublisher.startPush({
    mic:'',//麦克风名称,不传值则使用默认麦克风
    width:'',//音频推流flash窗口宽度,不传值则默认853,
    height:'',//音频推流flash窗口高度,不传值则默认480
    //成功回调,非必填
    success:function(){
      //after success todo 
    },
    //失败回调,非必填
    fail:function(){
      //after failed todo
    }
  });

注意事项

  • 必须打开浏览器麦克风权限;
  • 必须在推流器初始化以后才能调用推流器的相关方法,否则会报错失败;
  • Chrome 60+ 建议使用https方式推流, http方式可能会获取不到设备名称导致推流不成功;

错误码对照表

code 说明
211002 roomId不能为空
211003 当前浏览器版本,在http协议下,不支持获取设备信息
211004 推流地址错误,请先初始化,再推流
211005 获取房间信息失败
211006 网络错误
211007 活动已发起
211008 获取推流设备出错
211010 推流token验证失败
211011 流名在黑名单
211013 被管理者踢了