实时音视频云

  • 媒体流采集

    最近更新时间:2018-08-02 09:42:16

    媒体流采集就是将 摄像头/麦克风 的数据采集成可以用于连麦的媒体流。这用到的方法是 getLocalStream, 通过调用这个 API 来获取本地的媒体流,之后再用于发布。

    基本使用

    通过传入的参数我们可以控制 分辨率/码率/帧率

    try {
      const localStream = await QNRTC.deviceManager.getLocalStream({
        audio: {
                enabled: true, // 开启音频
                bitrate: 32, // 设置音频码率
            },
        video: {
                enabled: true,
                bitrate: 1024, // 设置视频分辨率
                frameRate: 30, // 设置视频帧率
                width: 1280,
                height: 720, // 设置分辨率
            },
      });
    
        // localStream 就是本地的媒体流对象
    } catch (e) {
      console.log('getLocalStream Error!', e);
    }
    `
    

    纯音频连麦

    在某些场景比如在线通话中,并不需要视频的参与,这里我们就推荐使用纯音频连麦。注意这里的纯音频是一个采集上的概念,也就是在采集端只采集麦克风不采集摄像头。而不是同时采集摄像头和麦克风,只在发送的时候将视频 mute 掉(纯音频的错误用法)。

    所以纯音频连麦就是一个更换采集参数的过程,参见我们 getLocalStream 的说明, 只要不传入 video 字段或者将 video 字段的 enabled 设置为 false 就能不采集摄像头,

    try {
      const localStream = await QNRTC.deviceManager.getLocalStream({
        audio: {
                enabled: true, // 开启音频
                bitrate: 32, // 设置音频码率
            },
        video: {
                enabled: false, // 纯音频连麦(audio-only)
            },
      });
    
        // localStream 就是本地的媒体流对象
    } catch (e) {
      console.log('getLocalStream Error!', e);
    }
    
    以上内容是否对您有帮助?
  • Close