如何采集屏幕共享的音频?

使用 RTCLib 5.X 版本,屏幕共享是采集不到系统音频,该如何处理
发布时间: 2022-01-10 17:14

回答:

目前 5.X RTCLib SDK 不支持获取屏幕共享的音频,如果有用户业务场景需要采集到音频,需要应用层自己调用 Web RTC API 来实现,原理:调用 navigator.mediaDevices.getDisplayMedia 方法,参数 audio 设置为 true。

代码示例如下:

navigator.mediaDevices.getDisplayMedia({audio: true, video: true}).then((mediastream)=>{
    // rtcClient 是 rtc 初始化的实例  'tag' 为标识符(字符串类型),用户可以自己定义
    rtcClient.createLocalAudioTrack('tag',mediastream.getAudioTracks()[0]).then((audioTrack)=>{
     console.log(audioTrack)
    })
    rtcClient.createLocalVideoTrack('tag',mediastream.getVideoTracks()[0]).then((videoTrack)=>{
     console.log(videoTrack)
    })
}