指定该音视频流是否包含音频资源
指定是否开启音效处理
声学回声消除
默认为 true
,即开启。如果你不需要启用声学回声消除,将 AEC
设为 false
。
Note:
Safari 不支持此设置。
自动增益控制
默认为 true
,即开启。如果你不需要启用自动增益控制,将 AGC
设为 false
。
Note:
Safari 不支持此设置。
自动噪声抑制
默认为 true
,即开启。如果你不需要启用自动噪声抑制,将 ANS
设为 false
。
Note:
指定音视频流的音频源
通过 getDevices 方法获取的摄像头设备 ID。
获取的 ID 为 ASCII 字符,字符串长度大于 0 小于 256 字节。
Chrome 插件 ID
ASCII 字符,字符串长度大于 0 小于 256 字节。
使用 Chrome 屏幕共享插件需要设置该属性,详见 Chrome 屏幕共享插件。
Note:
Chrome 72 及以后的版本支持无插件屏幕共享。如果你没有填写 extensionId
,则默认使用无插件的屏幕共享方式;如果填写了 extensionId
,则需使用插件共享屏幕。
Firefox 浏览器的屏幕共享模式
如果你使用的是 Firefox 浏览器,设置该属性可以开启屏幕共享:
"screen"
: (默认值)共享屏幕"application"
: 共享某一个 App 的所有窗口"window"
: 共享某一个 App 的某一个窗口详细用法见Firefox 屏幕共享。
通过 getDevices 方法获取的麦克风设备 ID
获取的 ID 为 ASCII 字符,字符串长度大于 0 小于 256 字节。
指定本地视频流在本地显示的时候是否为镜像(不适用于屏幕共享)
默认为 true
。建议在使用前置摄像头时开启,使用后置摄像头时关闭。
指定该音视频流是否包含屏幕共享功能
音视频流 ID
请将音视频流 ID 设置为与 uid 相同,可通过 Client.join 方法的回调获取。
指定该音视频流是否包含视频资源
指定音视频流的视频源
Note:
视频源如来自 canvas,需要在 canvas 内容不变时,每隔 1 秒重新绘制 canvas 内容,以保持视频流的正常发布。
定义 createStream 中的
spec
参数的类。创建音视频流
创建音视频流有两种方法:
设置
audio
、video
及screen
属性var stream = AgoraRTC.createStream({ streamID: uid, audio:true, video:true, screen:false });
设置
audioSource
和videoSource
属性与前一种方法相比,设置 audioSource 和 videoSource 属性可以指定创建的音视频流要使用的音视频 Track。使用这种方法可以在创建音视频流之前对音视频进行处理。
通过
mediaStream
方法从MediaStreamTrack
获得音视频 Track,然后指定audioSource
和videoSource
,如下所示:navigator.mediaDevices.getUserMedia( {video: true, audio: true} ).then(function(mediaStream){ var videoSource = mediaStream.getVideoTracks()[0]; var audioSource = mediaStream.getAudioTracks()[0]; // 对 videoSource 和 audioSource 进行处理后 var localStream = AgoraRTC.createStream({ video: true, audio: true, videoSource: videoSource, audioSource: audioSource }); localStream.init(function(){ client.publish(localStream, function(e){ //... }); }); });
Note:
MediaStreamTrack
对象是指浏览器原生支持的MediaStreamTrack
对象,具体用法和浏览器支持状况请参考 MediaStreamTrack API 说明。目前音视频前处理功能仅支持 Chrome 浏览器。
Chrome 浏览器开启屏幕共享
var stream = AgoraRTC.createStream({ streamID: uid, audio:false, video:false, screen:true, extensionId:"minllpmhdgpndnkomcoccfekfegnlikg"});
Firefox 浏览器开启屏幕共享
localStream = AgoraRTC.createStream({ streamID: uid, audio: false, video: false, screen: true, mediaSource: "screen", });
完整的网页端屏幕共享指南,请参考进行屏幕共享。
Note:
不要同时将
video
和screen
设置为true
。使用 Firefox 浏览器屏幕共享功能时,请确保
screen
属性设置为true
,并且通过mediaSource
指定屏幕共享类型。