关闭音视频流
该方法关闭视频流或音频流。调用该方法会取消摄像头和麦克风的访问权限。
禁用音频轨道
该方法禁用音频轨道。在 createStream 时将 audio
设置为 true
才可使用该方法。
禁用视频轨道
该方法禁用视频轨道。在 createStream 时将 video
设置为 true
才可使用该方法。
启用音频轨道
该方法启用音频轨道。在 createStream 时将 audio
设置为 true
才可使用该方法。
音频轨道默认为开启状态。如果你调用了 disableAudio,可调用本方法启用音频。
启用视频轨道
该方法启用视频轨道。在 createStream 时将 video
设置为 true
才可使用该方法。
视频轨道默认为开启状态。如果你调用了 disableVideo,可调用本方法启用视频。
获取当前音量
该方法获取的是当前时刻的音量。如果你想表示本地或远端音量的变化,我们建议你使用 setTimeout
或者 setInterval
方法实时获取。
获取音视频流 ID
该方法可以获取音视频流 ID。
获取连接数据
该方法获取音视频流的连接数据。
回调包含音视频流的连接统计数据:
获取音频 flag
获取视频 flag
初始化音视频对象
该方法初始化音视频流对象。如果调用失败,回调函数会返回错误信息,例如:{type: "error", msg: "MEDIA_OPTION_INVALID"}
。
可能出现的错误码信息如下:
方法调用成功时执行的回调函数
方法调用失败时执行的回调函数
该回调通知 App 已获取本地摄像头/麦克风使用权限。
该回调通知 App 已禁止本地摄像头/麦克风使用权限。
该回调通知 App 屏幕共享已停止。
播放音视频流
该方法播放视频流或音频流。
设置音频输出
该方法可以在语音场景下设置音频输出设备,在通话时切换麦克风和扬声器。
Note:
目前只有 Chrome 49 以上的浏览器支持该方法。
设备 ID,可以通过 getDevices 获得。
设置音频属性
该方法设置音频属性,为可选项,且须在 Stream.init 之前调用。默认值为 "music_standard"
。
Note:
由于各浏览器的限制,部分浏览器对设置的音频属性不一定能全部适配:
音频属性,包含以下选项:
调节远端流音量大小
该方法可以调节远端流的音量大小。
音量,范围为 0 到 100。
设置屏幕属性
该方法设置屏幕共享时屏幕的显示属性。
屏幕属性,详见下表定义。
Screen Profile Definition
屏幕属性 | 分辨率 | 帧率 |
---|---|---|
480p_1 | 640 × 480 | 5 |
480p_2 | 640 × 480 | 30 |
720p_1 | 1280 × 720 | 5 |
720p_2 | 1280 × 720 | 30 |
1080p_1 | 1920 × 1080 | 5 |
1080p_2 | 1920 × 1080 | 30 |
Note:
由于设备和浏览器的限制,部分浏览器对设置的屏幕属性不一定能全部适配。这种情况下浏览器会自动调整分辨率,计费也将按照实际分辨率计算。
设置视频属性
该方法设置视频属性,为可选项,且须在 Stream.init 之前调用。默认值为 "480p_1"
。
视频属性。详见下表的定义及不同场景支持的属性。
Video Profile Definition
视频属性 | 分辨率(宽×高) | 帧率(fps) | 码率(Kbps) | Chrome | Firefox/Opera | Safari |
---|---|---|---|---|---|---|
120p | 160 × 120 | 15 | 65 | ✓ | ||
120p_1 | 160 × 120 | 15 | 65 | ✓ | ||
120p_3 | 120 × 120 | 15 | 50 | ✓ | ||
180p | 320 × 180 | 15 | 140 | ✓ | ||
180p_1 | 320 × 180 | 15 | 140 | ✓ | ||
180p_3 | 180 × 180 | 15 | 100 | ✓ | ||
180p_4 | 240 × 180 | 15 | 120 | ✓ | ||
240p | 320 × 240 | 15 | 200 | ✓ | ||
240p_1 | 320 × 240 | 15 | 200 | ✓ | ||
240p_3 | 240 × 240 | 15 | 140 | ✓ | ||
240p_4 | 424 × 240 | 15 | 220 | ✓ | ||
360p | 640 × 360 | 15 | 400 | ✓ | ||
360p_1 | 640 × 360 | 15 | 400 | ✓ | ||
360p_3 | 360 × 360 | 15 | 260 | ✓ | ||
360p_4 | 640 × 360 | 30 | 600 | ✓ | ||
360p_6 | 360 × 360 | 30 | 400 | ✓ | ||
360p_7 | 480 × 360 | 15 | 320 | ✓ | ||
360p_8 | 480 × 360 | 30 | 490 | ✓ | ||
360p_9 | 640 × 360 | 15 | 800 | ✓ | ||
360p_10 | 640 × 360 | 24 | 800 | ✓ | ||
360p_11 | 640 × 360 | 24 | 1000 | ✓ | ||
480p | 640 × 480 | 15 | 500 | ✓ | ✓ | ✓ |
480p_1 | 640 × 480 | 15 | 500 | ✓ | ✓ | ✓ |
480p_2 | 648 × 480 | 30 | 1000 | ✓ | ✓ | ✓ |
480p_3 | 480 × 480 | 15 | 400 | ✓ | ✓ | ✓ |
480p_4 | 640 × 480 | 30 | 750 | ✓ | ✓ | ✓ |
480p_6 | 480 × 480 | 30 | 600 | ✓ | ✓ | ✓ |
480p_8 | 848 × 480 | 15 | 610 | ✓ | ✓ | ✓ |
480p_9 | 848 × 480 | 30 | 930 | ✓ | ✓ | ✓ |
480p_10 | 640 × 480 | 10 | 400 | ✓ | ✓ | ✓ |
720p | 1280 × 720 | 15 | 1130 | ✓ | ✓ | ✓ |
720p_1 | 1280 × 720 | 15 | 1130 | ✓ | ✓ | ✓ |
720p_2 | 1280 × 720 | 15 | 2080 | ✓ | ✓ | ✓ |
720p_3 | 1280 × 720 | 30 | 1710 | ✓ | ✓ | ✓ |
720p_5 | 960 × 720 | 15 | 910 | ✓ | ✓ | ✓ |
720p_6 | 960 × 720 | 30 | 1380 | ✓ | ✓ | ✓ |
1080p | 1920 × 1080 | 15 | 2080 | ✓ | ✓ | |
1080p_1 | 1920 × 1080 | 15 | 2080 | ✓ | ✓ | |
1080p_2 | 1920 × 1080 | 30 | 3000 | ✓ | ✓ | |
1080p_3 | 1920 × 1080 | 30 | 3150 | ✓ | ✓ | |
1080p_5 | 1920 × 1080 | 60 | 4780 | ✓ | ✓ | |
1440p | 2560 × 1440 | 30 | 4850 | ✓ | ✓ | |
1440p_1 | 2560 × 1440 | 30 | 4850 | ✓ | ✓ | |
1440p_2 | 2560 × 1440 | 60 | 7350 | ✓ | ✓ | |
4K | 3840 × 2160 | 30 | 8910 | ✓ | ✓ | |
4K_1 | 3840 × 2160 | 30 | 8910 | ✓ | ✓ | |
4K_3 | 3840 × 2160 | 60 | 13500 | ✓ | ✓ |
Note:
视频能否达到 1080P 以上的分辨率取决于设备的性能,在性能配备较低的设备上有可能无法实现。如果采用720P分辨率而设备性能跟不上,则有可能出现帧率过低的情况。声网将继续在后续版本中为较低端设备进行视频优化。如设备有特别需求,请联系 support@agora.io。
Safari 浏览器视频帧率为 30 fps,不支持自定义视频帧率。
由于设备和浏览器的限制,部分浏览器对设置的 Video Profile 不一定能全部适配。这种情况下浏览器会自动调整分辨率,计费也将按照实际分辨率计算。
停止音视频流
调用该方法停止播放 Stream.play 播放的音视频流。
通过 createStream 创建的音视频流对象。
一个音视频流对象指通话中的本地或远程音视频流。