Members
(constant) TRTCVideoResolution :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoResolution_120_120 |
Number |
[C] 建议码率80kbps |
TRTCVideoResolution_160_160 |
Number |
[C] 建议码率100kbps |
TRTCVideoResolution_270_270 |
Number |
[C] 建议码率200kbps |
TRTCVideoResolution_480_480 |
Number |
[C] 建议码率350kbps |
TRTCVideoResolution_160_120 |
Number |
[C] 建议码率100kbps |
TRTCVideoResolution_240_180 |
Number |
[C] 建议码率150kbps |
TRTCVideoResolution_280_210 |
Number |
[C] 建议码率200kbps |
TRTCVideoResolution_320_240 |
Number |
[C] 建议码率250kbps |
TRTCVideoResolution_400_300 |
Number |
[C] 建议码率300kbps |
TRTCVideoResolution_480_360 |
Number |
[C] 建议码率400kbps |
TRTCVideoResolution_640_480 |
Number |
[C] 建议码率600kbps |
TRTCVideoResolution_960_720 |
Number |
[C] 建议码率1000kbps |
TRTCVideoResolution_160_90 |
Number |
[C] 建议码率150kbps |
TRTCVideoResolution_256_144 |
Number |
[C] 建议码率200kbps |
TRTCVideoResolution_320_180 |
Number |
[C] 建议码率250kbps |
TRTCVideoResolution_480_270 |
Number |
[C] 建议码率350kbps |
TRTCVideoResolution_640_360 |
Number |
[C] 建议码率550kbps |
TRTCVideoResolution_960_540 |
Number |
[C] 建议码率850kbps |
TRTCVideoResolution_1280_720 |
Number |
[C] 摄像头采集 - 建议码率1200kbps |
TRTCVideoResolution_1920_1080 |
Number |
[S] 屏幕分享 - 建议码率2000kbps |
1.1 视频分辨率
此处仅定义了横屏分辨率,如果要使用360 × 640这样的竖屏分辨率,需要同时指定 TRTCVideoResolutionMode 为 Portrait。
Type:
- Number
(constant) TRTCVideoResolutionMode :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoResolutionModeLandscape |
Number |
横屏分辨率 |
TRTCVideoResolutionModePortrait |
Number |
竖屏分辨率 |
1.2 视频分辨率模式
- 横屏分辨率:TRTCVideoResolution_640_360 + TRTCVideoResolutionModeLandscape = 640 × 360
- 竖屏分辨率:TRTCVideoResolution_640_360 + TRTCVideoResolutionModePortrait = 360 × 640
Type:
- Number
(constant) TRTCVideoStreamType :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoStreamTypeBig |
Number |
大画面视频流 |
TRTCVideoStreamTypeSmall |
Number |
小画面视频流 |
TRTCVideoStreamTypeSub |
Number |
辅流(屏幕分享) |
1.3 视频流类型
TRTC 内部有三种不同的音视频流,分别是:
- 主画面:最常用的一条线路,一般用来传输摄像头的视频数据。
- 小画面:跟主画面的内容相同,但是分辨率和码率更低。
- 辅流画面:一般用于屏幕分享,以及远程播片(比如老师放一段视频给学生)。
注意:
- 如果主播的上行网络和性能比较好,则可以同时送出大小两路画面。
- SDK 不支持单独开启小画面,小画面必须依附于主画面而存在。
Type:
- Number
(constant) TRTCQuality :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCQuality_Unknown |
Number |
未定义 |
TRTCQuality_Excellent |
Number |
最好 |
TRTCQuality_Good |
Number |
好 |
TRTCQuality_Poor |
Number |
一般 |
TRTCQuality_Bad |
Number |
差 |
TRTCQuality_Vbad |
Number |
很差 |
TRTCQuality_Down |
Number |
不可用 |
1.4 画质级别
TRTC SDK 对画质定义了六种不同的级别,Excellent 代表最好,Down 代表不可用。
Type:
- Number
(constant) TRTCVideoFillMode :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoFillMode_Fill |
Number |
图像铺满屏幕,超出显示视窗的视频部分将被截掉 |
TRTCVideoFillMode_Fit |
Number |
图像长边填满屏幕,短边区域会被填充黑色 |
1.5 视频画面填充模式
如果画面的显示分辨率不等于画面的原始分辨率,就需要您设置画面的填充模式:
- TRTCVideoFillMode_Fill,图像铺满屏幕,超出显示视窗的视频部分将被截掉,所以画面显示可能不完整。
- TRTCVideoFillMode_Fit,图像长边填满屏幕,短边区域会被填充黑色,但画面的内容肯定是完整的。
Type:
- Number
(constant) TRTCVideoRotation :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoRotation0 |
Number |
顺时针旋转0度 |
TRTCVideoRotation90 |
Number |
顺时针旋转90度 |
TRTCVideoRotation180 |
Number |
顺时针旋转180度 |
TRTCVideoRotation270 |
Number |
顺时针旋转270度 |
1.6 视频画面旋转方向
TRTC SDK 提供了对本地和远程画面的旋转角度设置 API,如下的旋转角度都是指顺时针方向的。
Type:
- Number
(constant) TRTCBeautyStyle :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCBeautyStyleSmooth |
Number |
光滑,适用于美女秀场,效果比较明显。 |
TRTCBeautyStyleNature |
Number |
自然,磨皮算法更多地保留了面部细节,主观感受上会更加自然。 |
1.7 美颜(磨皮)算法
TRTC SDK 内置了多种不同的磨皮算法,您可以选择最适合您产品定位的方案。
Type:
- Number
(constant) TRTCVideoPixelFormat :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoPixelFormat_Unknown |
Number |
未定义 |
TRTCVideoPixelFormat_I420 |
Number |
I420 |
TRTCVideoPixelFormat_BGRA32 |
Number |
BGRA32 |
1.8 视频像素格式
TRTC SDK 提供针对视频的自定义采集和自定义渲染功能,在自定义采集功能中,您可以用如下枚举值描述您采集的视频像素格式。 在自定义渲染功能中,您可以指定您期望 SDK 回调的视频像素格式。
Type:
- Number
(constant) TRTCVideoBufferType :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoBufferType_Unknown |
Number |
未知类型 |
TRTCVideoBufferType_Buffer |
Number |
二进制Buffer类型 |
1.9 视频数据包装格式
Type:
- Number
(constant) TRTCVideoMirrorType :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoMirrorType_Auto |
Number |
只适用于移动端, 本地预览时,前置摄像头镜像,后置摄像头不镜像 |
TRTCVideoMirrorType_Enable |
Number |
所有画面均镜像 |
TRTCVideoMirrorType_Disable |
Number |
所有画面均不镜像 |
1.10 画面渲染镜像类型
TRTC 的画面镜像提供下列设置模式
Type:
- Number
(constant) TRTCAppScene :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCAppSceneVideoCall |
Number |
视频通话场景,支持720P、1080P高清画质,单个房间最多支持300人同时在线,最高支持50人同时发言。 |
TRTCAppSceneLIVE |
Number |
视频互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。 |
TRTCAppSceneAudioCall |
Number |
语音通话场景,支持 48kHz,支持双声道。单个房间最多支持300人同时在线,最高支持50人同时发言。 |
TRTCAppSceneVoiceChatRoom |
Number |
语音互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。 |
2.1 应用场景
TRTC 可用于视频会议和在线直播等多种应用场景,针对不同的应用场景,TRTC SDK 的内部会进行不同的优化配置:
- TRTCAppSceneVideoCall :视频通话场景,适合[1对1视频通话]、[300人视频会议]、[在线问诊]、[视频聊天]、[远程面试]等。
- TRTCAppSceneLIVE :视频互动直播,适合[视频低延时直播]、[十万人互动课堂]、[视频直播 PK]、[视频相亲房]、[互动课堂]、[远程培训]、[超大型会议]等。
- TRTCAppSceneAudioCall :语音通话场景,适合[1对1语音通话]、[300人语音会议]、[语音聊天]、[语音会议]、[在线狼人杀]等。
- TRTCAppSceneVoiceChatRoom:语音互动直播,适合:[语音低延时直播]、[语音直播连麦]、[语聊房]、[K 歌房]、[FM 电台]等。
Type:
- Number
(constant) TRTCRoleType :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCRoleAnchor |
Number |
主播 |
TRTCRoleAudience |
Number |
观众 |
2.2 角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom)
在直播场景中,多数用户只是观众,只有个别用户是主播,这种角色区分可以有利于 TRTC 进行更好的定向优化。
- Anchor:主播,可以上行视频和音频,一个房间里最多支持50个主播同时上行音视频。
- Audience:观众,只能观看,不能上行视频和音频,一个房间里的观众人数没有上限。
Type:
- Number
(constant) TRTCQosControlMode :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCQosControlModeClient |
Number |
客户端控制(用于 SDK 开发内部调试,客户请勿使用) |
TRTCQosControlModeServer |
Number |
云端控制(默认) |
2.3 流控模式
TRTC SDK 内部需要时刻根据网络情况调整内部的编解码器和网络模块,以便能够对网络的变化做出反应。 为了支持快速算法升级,SDK 内部设置了两种不同的流控模式:
- ModeClient: 本地控制,用于 SDK 开发内部调试,客户请勿使用。
- ModeServer: 云端控制,推荐模式,也是默认默认。
推荐您使用云端控制,这样每当我们升级 Qos 算法时,您无需升级 SDK 即可体验更好的效果。
Type:
- Number
(constant) TRTCVideoQosPreference :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCVideoQosPreferenceSmooth |
Number |
弱网下保流畅 |
TRTCVideoQosPreferenceClear |
Number |
弱网下保清晰 |
2.4 画质偏好
指当 TRTC SDK 在遇到弱网络环境时,您是希望“保清晰”还是“保流畅”:
- Smooth:弱网下保流畅,在遭遇弱网环境时首先确保声音的流畅和优先发送,画面会变得模糊且会有较多马赛克,但可以保持流畅不卡顿。
- Clear:弱网下保清晰,在遭遇弱网环境时,画面会尽可能保持清晰,但可能会更容易出现卡顿。
Type:
- Number
(constant) TRTCAudioFrameFormat :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCAudioFrameFormatNone |
Number |
未指定 |
TRTCAudioFrameFormatPCM |
Number |
PCM,每个采样点占16bit数据量。 |
3.1 音频帧的格式
Type:
- Number
(constant) TRTCScreenCaptureSourceType :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCScreenCaptureSourceTypeUnknown |
Number |
未知类型 |
TRTCScreenCaptureSourceTypeWindow |
Number |
该分享目标是某一个 Windows 或 Mac 窗口 |
TRTCScreenCaptureSourceTypeScreen |
Number |
该分享目标是整个 Windows 桌面或 Mac 桌面 |
TRTCScreenCaptureSourceTypeCustom |
Number |
该分享目标是自定义窗口(保留字段,暂无用法) |
3.2 屏幕分享目标信息
Type:
- Number
(constant) TRTCAudioQuality :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCAudioQualitySpeech |
Number |
语音模式:采样率:16k;单声道;音频裸码率:16kbps;适合语音通话为主的场景,比如在线会议,语音通话。 |
TRTCAudioQualityDefault |
Number |
标准模式(或者默认模式):采样率:48k;单声道;音频裸码率:50kbps;SDK 默认的音频质量,如无特殊需求推荐选择之。 |
TRTCAudioQualityMusic |
Number |
音乐模式:采样率:48k;双声道 + 全频带;音频裸码率:128kbps;适合需要高保真传输音乐的场景,比如K歌、音乐直播等。 |
3.3 音频质量
Type:
- Number
(constant) TRTCLogLevel :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCLogLevelNone |
Number |
不输出任何 SDK Log |
TRTCLogLevelVerbose |
Number |
输出所有级别的 Log |
TRTCLogLevelDebug |
Number |
输出 DEBUG,INFO,WARNING,ERROR 和 FATAL 级别的 Log |
TRTCLogLevelInfo |
Number |
输出 INFO,WARNNING,ERROR 和 FATAL 级别的 Log |
TRTCLogLevelWarn |
Number |
只输出WARNNING,ERROR 和 FATAL 级别的 Log |
TRTCLogLevelError |
Number |
只输出ERROR 和 FATAL 级别的 Log |
TRTCLogLevelFatal |
Number |
只输出 FATAL 级别的 Log |
4.1 Log 级别
Type:
- Number
(constant) TRTCDeviceState :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCDeviceStateAdd |
Number |
添加设备 |
TRTCDeviceStateRemove |
Number |
移除设备 |
TRTCDeviceStateActive |
Number |
设备已启用 |
4.2 设备操作
Type:
- Number
(constant) TRTCDeviceType :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCDeviceTypeUnknow |
Number |
未知类型 |
TRTCDeviceTypeMic |
Number |
麦克风 |
TRTCDeviceTypeSpeaker |
Number |
扬声器 |
TRTCDeviceTypeCamera |
Number |
摄像头 |
4.3 设备类型
Type:
- Number
(constant) TRTCWaterMarkSrcType :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCWaterMarkSrcTypeFile |
Number |
图片文件路径,支持 BMP、GIF、JPEG、PNG、TIFF、Exif、WMF 和 EMF 文件格式 |
TRTCWaterMarkSrcTypeBGRA32 |
Number |
BGRA32格式内存块 |
TRTCWaterMarkSrcTypeRGBA32 |
Number |
RGBA32格式内存块 |
4.4 水印图片的源类型
Type:
- Number
(constant) TRTCTranscodingConfigMode :Number
Properties:
Name | Type | Description |
---|---|---|
TRTCTranscodingConfigMode_Unknown |
Number |
非法值 |
TRTCTranscodingConfigMode_Manual |
Number |
全手动模式,灵活性最高,可以自由组合出各种混流方案,但易用性最差。 此模式下,您需要填写 TRTCTranscodingConfig 中的所有参数,并需要监听 TRTCCloudDelegate 中的 onUserVideoAvailable() 和 onUserAudioAvailable() 回调, 以便根据当前房间中各个上麦用户的音视频状态不断地调整 mixUsers 参数,否则会导致混流失败。 |
TRTCTranscodingConfigMode_Template_PureAudio |
Number |
纯音频模式,适用于语音通话(AudioCall)和语音聊天室(VoiceChatRoom)等纯音频场景。 只需要在进房后通过 setMixTranscodingConfig() 接口设置一次,之后 SDK 就会自动把房间内所有上麦用户的声音混流到当前用户的直播流上。 此模式下,您无需设置 TRTCTranscodingConfig 中的 mixUsers 参数,只需设置 audioSampleRate、audioBitrate 和 audioChannels 等参数。 |
TRTCTranscodingConfigMode_Template_PresetLayout |
Number |
预排版模式,通过占位符提前对各路画面进行排布 此模式下,您依然需要设置 mixUsers 参数,但可以将 userId 设置为占位符,可选的占位符有:
|
TRTCTranscodingConfigMode_Template_ScreenSharing |
Number |
屏幕分享模式,适用于在线教育场景等以屏幕分享为主的应用场景,仅支持 Windows 和 Mac 两个平台的 SDK。 SDK 会先根据您(通过 videoWidth 和 videoHeight 参数)设置的目标分辨率构建一张画布, 当老师未开启屏幕分享时,SDK 会将摄像头画面等比例拉伸绘制到该画布上;当老师开启屏幕分享之后,SDK 会将屏幕分享画面绘制到同样的画布上。 这样操作的目的是为了确保混流模块的输出分辨率一致,避免课程回放和网页观看的花屏问题(网页播放器不支持可变分辨率)。 由于教学模式下的视频内容以屏幕分享为主,因此同时传输摄像头画面和屏幕分享画面是非常浪费带宽的。 推荐的做法是直接将摄像头画面通过 setLocalVideoRenderCallback 接口自定义绘制到当前屏幕上。 在该模式下,您无需设置 TRTCTranscodingConfig 中的 mixUsers 参数,SDK 不会混合学生的画面,以免干扰屏幕分享的效果。 您可以将 TRTCTranscodingConfig 中的 width × height 设为 0px × 0px,SDK 会自动根据用户当前屏幕的宽高比计算出一个合适的分辨率:
|
5.10 混流参数配置模式
目前暂仅支持手动配置这一种模式,即需要指定 TRTCTranscodingConfig 的全部参数。
Type:
- Number