参考信息
第三方云存储地区说明
使用自定义录制和自定义截图功能时,你可以通过 StorageConfig
进行录制文件和截图文件的第三方云存储配置,其中 vendor
字段(第三方云存储平台)的取值决定了 region
字段(第三方云存储地区)的取值。
本文介绍 vendor
的不同取值下,region
字段可以配置的值。
- 1
- 2
- 3
- 5
- 6
- 7
- 8
当 vendor
= 1,即第三方云存储为 Amazon S3 时,region
可取如下值:
0
:US_EAST_11
:US_EAST_22
:US_WEST_13
:US_WEST_24
:EU_WEST_15
:EU_WEST_26
:EU_WEST_37
:EU_CENTRAL_18
:AP_SOUTHEAST_19
:AP_SOUTHEAST_210
:AP_NORTHEAST_111
:AP_NORTHEAST_212
:SA_EAST_113
:CA_CENTRAL_114
:AP_SOUTH_115
:CN_NORTH_116
:CN_NORTHWEST_118
:AF_SOUTH_119
:AP_EAST_120
:AP_NORTHEAST_321
:EU_NORTH_122
:ME_SOUTH_124
:AP_SOUTHEAST_325
:EU_SOUTH_1
当 vendor
= 2,即第三方云存储为阿里云时,region
可取如下值:
0
:CN_Hangzhou1
:CN_Shanghai2
:CN_Qingdao3
:CN_Beijing4
:CN_Zhangjiakou5
:CN_Huhehaote6
:CN_Shenzhen7
:CN_Hongkong8
:US_West_19
:US_East_110
:AP_Southeast_111
:AP_Southeast_212
:AP_Southeast_313
:AP_Southeast_514
:AP_Northeast_115
:AP_South_116
:EU_Central_117
:EU_West_118
:EU_East_119
:AP_Southeast_620
:CN_Heyuan21
:CN_Guangzhou22
:CN_Chengdu23
:CN_Nanjing24
:CN_Fuzhou25
:CN_Wulanchabu26
:CN_Northeast_227
:CN_Southeast_7
详见阿里云参考文档。
当 vendor
= 3,即第三方云存储为腾讯云时,region
可取如下值:
0
:AP_Beijing_11
:AP_Beijing2
:AP_Shanghai3
:AP_Guangzhou4
:AP_Chengdu5
:AP_Chongqing6
:AP_Shenzhen_FSI7
:AP_Shanghai_FSI8
:AP_Beijing_FSI9
:AP_Hongkong10
:AP_Singapore11
:AP_Mumbai12
:AP_Seoul13
:AP_Bangkok14
:AP_Tokyo15
:NA_Siliconvalley16
:NA_Ashburn17
:NA_Toronto18
:EU_Frankfurt19
:EU_Moscow
当 vendor
= 5,即第三方云存储为 Microsoft Azure 时,无需设置 region
字段,即使设置也不生效。
当 vendor
= 6,即第三方云存储为谷歌云时,无需设置 region
字段,即使设置也不生效。
当 vendor
= 7,即第三方云存储为华为云时,region
可取如下值:
0
:CN_North_11
:CN_North_42
:CN_East_23
:CN_East_34
:CN_South_15
:CN_Southwest_26
:AP_Southeast_17
:AP_Southeast_28
:AP_Southeast_39
:AF_South_110
:SA_Argentina_111
:SA_Peru_112
:NA_Mexico_113
:SA_Brazil_114
:LA_South_215
:SA_Chile_1
当 vendor
= 8,即第三方云存储为百度智能云时,region
可取如下值:
1
:Baoding2
:Suzhou3
:Guangzhou4
:Hongkong5
:Singapore6
:Wuhan7
:Shanghai
媒体流输出模式设置
本节介绍媒体流输出模式。
调用 start
开启单流录制时,你可以在 clientRequest
字段中的 recordingConfig.streamMode
字段设置媒体流的输出模式。streamMode
的支持取值和各模式对比如下:
streamMode | 描述 | 生成索引文件 | 生成切片文件 | 视频编码 | 音频编码 | 支持的功能 |
---|---|---|---|---|---|---|
default | 默认模式 | 每个 UID 生成一个 M3U8 音频索引文件和一个 M3U8 视频索引文件。 | 每个 UID 生成多个 TS 音频切片文件和多个 TS 视频切片文件。如果在 Web 端使用 VP8 编码,则生成多个 TS 音频切片文件和多个 WebM 格式的视频切片文件。 | 不转码 | 转码 | 单流录制、云端截图、延时转码。 |
standard | 标准模式 | 每个 UID 生成一个 M3U8 音频索引文件、一个 M3U8 视频索引文件和一个合并的 M3U8 音视频索引文件。如果在 Web 端使用 VP8 编码,则生成一个合并的 MPD 音视频索引文件。 | 每个 UID 生成多个 TS 音频切片文件和多个 TS 视频切片文件。 如果在 Web 端使用 VP8 编码,则生成多个 WebM 格式的音频文件和多个 WebM 格式的视频文件。 | 不转码 | 转码 | 单流录制、云端截图。 |
original | 原始模式。仅订阅音频时(streamTypes 为 0 )时该字段生效。 | 每个 UID 生成一个 M3U8 音频索引文件。 | 每个 UID 生成多个 TS 音频切片文件。 | 无 | 不转码 | 单流音频不转码录制、延时混音。 |
常用视频属性
单流录制模式下,录制输出的视频属性(分辨率、帧率、码率等)与用户的原始视频属性一致,无法修改。
合流录制模式下,你可以通过 transcodingConfig
字段设置录制输出的视频属性。声网推荐你使用默认值。你也可以参考下表设值。如果设置的码率超出合理范围,声网服务器会在合理区间内自动调整码率。
分辨率(宽 × 高) | 帧率 (fps) | 通信场景下码率(Kbps) | 直播场景下码率(Kbps) |
---|---|---|---|
160 × 120 | 15 | 65 | 130 |
120 × 120 | 15 | 50 | 100 |
320 × 180 | 15 | 140 | 280 |
180 × 180 | 15 | 100 | 200 |
240 × 180 | 15 | 120 | 240 |
320 × 240 | 15 | 200 | 400 |
240 × 240 | 15 | 140 | 280 |
424 × 240 | 15 | 220 | 440 |
640 × 360 | 15 | 400 | 800 |
360 × 360 | 15 | 260 | 520 |
640 × 360 | 30 | 600 | 1200 |
360 × 360 | 30 | 400 | 800 |
480 × 360 | 15 | 320 | 640 |
480 × 360 | 30 | 490 | 980 |
640 × 480 | 15 | 500 | 1000 |
480 × 480 | 15 | 400 | 800 |
640 × 480 | 30 | 750 | 1500 |
480 × 480 | 30 | 600 | 1200 |
848 × 480 | 15 | 610 | 1220 |
848 × 480 | 30 | 930 | 1860 |
640 × 480 | 10 | 400 | 800 |
1280 × 720 | 15 | 1130 | 2260 |
1280 × 720 | 30 | 1710 | 3420 |
960 × 720 | 15 | 910 | 1820 |
960 × 720 | 30 | 1380 | 2760 |
1920 × 1080 | 15 | 2080 | 4160 |
1920 × 1080 | 30 | 3150 | 6300 |
订阅名单设置
默认情况下,云端录制会订阅频道内所有发布的音视频流。你也可以使用 API 进行灵活的 UID 订阅。此外,你还可以分别设置音频和视频的订阅白名单或黑名单,并在录制过程中更新订阅名单:
音频订阅名单
云端录制提供了如下字段用来设置音频订阅名单。你可以根据场景需要选择其中一个字段进行设置。
subscribeAudioUids
:通过 UID 指定要订阅的音频流,即音频订阅白名单。unSubscribeAudioUids
:指定不订阅的音频流,即音频订阅黑名单。
subscribeAudioUids
和 unSubscribeAudioUids
不可以同时设置。
视频订阅名单
云端录制提供了如下字段用来设置音频订阅名单。你可以根据场景需要选择其中一个字段进行设置。
subscribeVideoUids
:通过 UID 指定要订阅的视频流,即视频订阅白名单。unSubscribeVideoUids
:指定不订阅的视频流,即视频订阅黑名单。
subscribeVideoUids
和 unSubscribeVideoUids
不可以同时设置。
示例说明
假设录制开始时,频道内共有 111
、222
、333
、444
四个用户,中途又进入两个 UID 未知的用户。下表列出了几种常见的订阅方式以及推荐的字段设置。
订阅方式 | 推荐字段设置 |
---|---|
订阅全部音频流和视频流 | 无需设置订阅相关字段。 |
订阅全部音频流,只订阅 111 和 222 的视频流 | subscribeAudioUids : ["#allstream#"] subscribeVideoUids: ["111","222"] |
订阅全部音频流,不订阅 111 和 222 的视频流 | subscribeAudioUids: ["#allstream#"] unSubscribeVideoUids: ["111","222"] 。云端录制会订阅全部音频流以及 333 、444 和两个 UID 未知用户的视频流。 |
订阅全部音频流,不订阅视频流 | subscribeAudioUids: ["#allstream#"] 。将 streamType 设置为 0 ,也可达到同样的效果。 |
不订阅 222 的音频流,只订阅 111 的视频流 | unSubscribeAudioUids: ["222"] subscribeVideoUids: ["111"] 。云端录制会订阅 111 、333 、444 和两个 UID 未知用户的音频流,以及 111 的视频流。 |
上述示例中的 ["#allstream#"]
为通配符,指频道内所有 UID。
开发注意事项
在设置订阅名单时,你还需要关注如下注意事项:
- 音频和视频订阅需要的单独设置。如果你仅设置了音频的订阅名单,但没有设置视频的订阅名单,云端录制服务不会订阅任何视频流。反之亦然。
- 如果
recordingConfig
中的streamTypes
为0
(只订阅音频),则不可设置视频订阅名单; 如果recordingConfig
中的streamTypes
为1
(只订阅视频),则不可设置音频订阅名单。 - 当订阅的 UID 超过 17 人时,云端录制会按 UID 加入频道的时间顺序,订阅前 17 个 UID 的视频。当某个订阅的 UID 离开频道,云端录制会自动订阅第 18 个加入频道的 UID,以此类推。