产品百科 |Web 端没有麦克风设备如何推视频流

音视频通信 RTC(Real-Time Communication)是阿里云覆盖全球的实时音视频开发平台,依托核心音视频编解码、信道传输、网络调度技术,提供高可用、高品质、超低延时的音视频通信服务,让用户快速搭建多端实时应用,适用于在线教育、视频会议、互动娱乐、音视频社交等场景。


产品链接:https://www.aliyun.com/product/rtc


通过阅读本文,您可以了解到当 Web 端没有麦克风时,设备推视频流的方法。

  1. 设置纯订阅模式跳过 isSupport 设备检测。
aliWebrtc.isSupport({isReceiveOnly: true}).then((re)=>{
    // 支持纯订阅模式
}).catch(err => {
    // 不支持纯订阅模式
})
  1. 获取 audiotrack,设置外部输入 setExternalMediaTrack 替换音频流。可通过 audio、video 或 canvas 播放音频或视频,使用captureStream方法获取 mediaStream,然后调用mediaStream.getAudioTracks()获取音频列表,再获取其中某一个 audiotrack。最后设置外部输入setExternalMediaTrack替换音频流。
let mediaStream = video.captureStream(); // video为播放视频的media标签
let audiotracks = mediaStream && mediaStream.getAudioTracks()
let audiotrack = (audiotracks && audiotracks.length) ? audiotracks[0]
aliWebrtc.setExternalMediaTrack(audiotrack, 0);

说明

    • 设置外部输入前需要先停止正在进行的推流。
    • 每次停止推流后都需要重新设置外部输入。
  1. 正常推流(此时可以不推音频流,SDK 内部识别出已经推了外部输入音频,因此会跳过设备检测)。


「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实践技术文章,在这里与音视频领域一流工程师交流切磋。

产品百科 |Web 端没有麦克风设备如何推视频流

上一篇:产品百科 |零门槛玩转 RTC Android Demo


下一篇:产品百科 | Ali RTC SDK 如何设置音频属性