LiteAVSDK
腾讯云音视频 SDK ,服务于数万家企业客户的高可用组件,致力于最大限度地节省您的研发成本。
关键类型定义

详细描述

腾讯云视频通话功能的关键类型定义


结构体说明

◆ ManageLiteAV::TRTCImageBuffer

struct ManageLiteAV::TRTCImageBuffer

Public 成员函数

 TRTCImageBuffer ()
 

成员变量

array< Byte > ^ buffer
 
UInt32 length
 
UInt32 width
 
UInt32 height
 

构造及析构函数说明

◆ TRTCImageBuffer()

TRTCImageBuffer ( )
inline

结构体成员变量说明

◆ buffer

array<Byte> ^ buffer

图内容

◆ height

UInt32 height

图高

◆ length

UInt32 length

图缓存大小

◆ width

UInt32 width

图宽

◆ ManageLiteAV::TRTCScreenCaptureSourceInfo

struct ManageLiteAV::TRTCScreenCaptureSourceInfo

Public 成员函数

 TRTCScreenCaptureSourceInfo ()
 

成员变量

TRTCScreenCaptureSourceType type
 
IntPtr sourceId
 
String ^ sourceName
 
TRTCImageBufferthumbBGRA
 
TRTCImageBuffericonBGRA
 
bool isMinmizeWindow
 
bool isMainScreen
 

构造及析构函数说明

◆ TRTCScreenCaptureSourceInfo()

结构体成员变量说明

◆ iconBGRA

TRTCImageBuffer ^ iconBGRA

图标内容

◆ isMainScreen

bool isMainScreen

【字段含义】是否为主显示屏(适用于多显示器的情况)

◆ isMinmizeWindow

bool isMinmizeWindow

【字段含义】是否为最小化窗口

◆ sourceId

IntPtr sourceId

采集源ID;对于窗口,该字段指示窗口句柄;对于屏幕,该字段指示屏幕ID

◆ sourceName

String ^ sourceName

采集源名称,UTF8编码

◆ thumbBGRA

TRTCImageBuffer ^ thumbBGRA

缩略图内容

◆ type

采集源类型

◆ ManageLiteAV::SIZE

struct ManageLiteAV::SIZE
成员变量
long cx
long cy

◆ ManageLiteAV::TRTCScreenCaptureProperty

struct ManageLiteAV::TRTCScreenCaptureProperty

Public 成员函数

 TRTCScreenCaptureProperty ()
 

成员变量

bool enableCaptureMouse
 
bool enableHighLight
 
bool enableHighPerformance
 
bool enableCaptureChildWindow
 
int highLightColor
 
int highLightWidth
 

构造及析构函数说明

◆ TRTCScreenCaptureProperty()

结构体成员变量说明

◆ enableCaptureChildWindow

bool enableCaptureChildWindow

【字段含义】窗口采集时是否采集子窗口(需要子窗口与被采集窗口具有 Owner 或 Popup 属性),默认为 false。

◆ enableCaptureMouse

bool enableCaptureMouse

是否采集目标内容时顺带采集鼠标,默认为 true

◆ enableHighLight

bool enableHighLight

是否高亮正在共享的窗口,默认为 true

◆ enableHighPerformance

bool enableHighPerformance

是否开启高性能模式(只会在分享屏幕时会生效),开启后屏幕采集性能最佳,但无法过滤远端的高亮边框,默认为 true

◆ highLightColor

int highLightColor

指定高亮边框颜色,RGB格式,传入0时采用默认颜色,默认颜色为 #8CBF26

◆ highLightWidth

int highLightWidth

指定高亮边框的宽度,传入0时采用默认描边宽度,默认宽度为 5,最大值为 50

◆ ManageLiteAV::TRTCLocalRecordingParams

struct ManageLiteAV::TRTCLocalRecordingParams
成员变量
String ^ filePath 【字段含义】文件路径(必填),录制的文件地址,请自行指定,确保路径有读写权限且合法,否则录制文件无法生成。 【特别说明】该路径需精确到文件名及格式后缀,格式后缀决定录制文件的格式,目前支持的格式只有 mp4。 Windows建议在应用的私有数据目录中指定存放路径。 【示例代码】在 appdata%\test 目录下录制 example.mp4 文件 std::string filePath; std::wstring path; wchar_t fullPath[MAX_PATH] = { 0 }; SHGetFolderPathW(NULL, CSIDL_APPDATA, NULL, 0, fullPath); path=fullPath; path += L"\\test\\example.mp4"; filePath = txf_wstr2utf8(path);
int interval interval 录制中事件(onLocalRecordDoing)的回调频率,单位毫秒,有效范围:1000-10000,默认为-1表示不回调
TRTCLocalRecordType recordType 【字段含义】媒体录制类型,默认为同时录制音频和视频。

◆ ManageLiteAV::ITRTCScreenCaptureSourceList

interface ManageLiteAV::ITRTCScreenCaptureSourceList

Public 成员函数

UInt32 getCount ()
 
TRTCScreenCaptureSourceInfogetSourceInfo (UInt32 index)
 
void release ()
 

成员函数说明

◆ getCount()

UInt32 getCount ( )

窗口个数

◆ getSourceInfo()

TRTCScreenCaptureSourceInfo ^ getSourceInfo ( UInt32  index)

窗口信息

◆ release()

void release ( )

遍历完窗口列表后,调用release释放资源。

◆ ManageLiteAV::TRTCParams

struct ManageLiteAV::TRTCParams

Public 成员函数

 TRTCParams ()
 

成员变量

UInt32 sdkAppId
 
String ^ userId
 
String ^ userSig
 
UInt32 roomId
 
String ^ strRoomId
 
TRTCRoleType role
 
String ^ streamId
 
String ^ userDefineRecordId
 
String ^ privateMapKey
 
String ^ businessInfo
 

构造及析构函数说明

◆ TRTCParams()

TRTCParams ( )
inline

结构体成员变量说明

◆ businessInfo

String ^ businessInfo

【字段含义】业务数据 [非必填],部分高级特性才需要使用该字段。

【推荐取值】不建议使用

◆ privateMapKey

String ^ privateMapKey

【字段含义】房间签名 [非必填],当您希望某个房间只能让特定的 userId 进入时,需要使用 privateMapKey 进行权限保护。

【推荐取值】仅建议有高级别安全需求的客户使用,更多详情请参见 进房权限保护

◆ role

【字段含义】直播场景下的角色,仅适用于直播场景(TRTCAppSceneLIVE),视频通话场景下指定无效。

【推荐取值】默认值:主播(TRTCRoleAnchor)

◆ roomId

UInt32 roomId

【字段含义】房间号码 [必填],在同一个房间内的用户可以看到彼此并进行视频通话。

【推荐取值】您可以自定义设置该参数值,但不可重复。如果您的用户帐号 ID (userId)为数字类型,可直接使用创建者的用户 ID 作为 roomId。

◆ sdkAppId

UInt32 sdkAppId

【字段含义】应用标识 [必填],腾讯视频云基于 sdkAppId 进行计费统计。

实时音视频控制台 创建应用后可在帐号信息页面中得到该 ID。

◆ streamId

String ^ streamId

【字段含义】绑定腾讯云直播 CDN 流 ID[非必填],设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流。

【推荐取值】限制长度为64字节,可以不填写,一种推荐的方案是使用 “sdkappid_roomid_userid_main” 作为 streamid,这样比较好辨认且不会在您的多个应用中发生冲突。

【特殊说明】要使用腾讯云直播 CDN,您需要先在控制台 中的功能配置页开启“启用旁路推流”开关。

【参考文档】CDN 旁路直播

◆ strRoomId

String ^ strRoomId

【字段含义】字符串房间号码,在同一个房间里的用户(userId)可以彼此看到对方并进行视频通话。

【推荐取值】限制长度为64字节。以下为支持的字符集范围(共 89 个字符):

  • 大小写英文字母(a-zA-Z);
  • 数字(0-9);
  • 空格、"!"、"#"、"$"、"%"、"&amp"、"("、")"、"+"、"-"、":"、";"、"&lt;"、"="、"."、"&gt;"、"?"、"@"、"["、"]"、"^"、"_"、" {"、"}"、"|"、"~"、","。

【特殊说明】roomId 与 strRoomId 必填一个,若您选用 strRoomId,则 roomId 需要填写为0。若两者都填,将优先选用 roomId。

◆ userDefineRecordId

String ^ userDefineRecordId

【字段含义】设置云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调。

【推荐取值】限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

【参考文档】云端录制

◆ userId

String ^ userId

【字段含义】用户标识 [必填],当前用户的 userId,相当于用户名,使用 UTF-8 编码。

【推荐取值】如果一个用户在您的帐号系统中的 ID 为“abc”,则 userId 即可设置为“abc”。

◆ userSig

String ^ userSig

【字段含义】用户签名 [必填],当前 userId 对应的验证签名,相当于登录密码。

【推荐取值】具体计算方法请参见 如何计算UserSig

◆ ManageLiteAV::TRTCVideoEncParam

struct ManageLiteAV::TRTCVideoEncParam

Public 成员函数

 TRTCVideoEncParam ()
 

成员变量

TRTCVideoResolution videoResolution
 
TRTCVideoResolutionMode resMode
 
UInt32 videoFps
 
UInt32 videoBitrate
 
UInt32 minVideoBitrate
 
bool enableAdjustRes
 

构造及析构函数说明

◆ TRTCVideoEncParam()

TRTCVideoEncParam ( )
inline

结构体成员变量说明

◆ enableAdjustRes

bool enableAdjustRes

【字段含义】是否允许调整分辨率

【推荐取值】

- 手机直播建议选择 NO。

- 视频通话模式,若更关注流畅性,建议选择 YES,此时若遇到带宽有限的弱网,SDK 会自动降低分辨率以保障更好的流畅度(仅针对 TRTCVideoStreamTypeBig 生效)。

- 默认值:NO。

【特别说明】若有录制需求,选择 YES 时,请确保通话过程中,调整分辨率不会影响您的录制效果。

◆ minVideoBitrate

UInt32 minVideoBitrate

【字段含义】最低视频码率,SDK 会在网络不佳的情况下主动降低视频码率,最低会降至 minVideoBitrate 所设定的数值。

【推荐取值】

- 如果您追求“允许卡顿但要保持清晰”的效果,可以设置 minVideoBitrate 为 videoBitrate 的 60;

- 如果您追求“允许模糊但要保持流畅”的效果,可以设置 minVideoBitrate 为 200kbps;

- 如果您将 videoBitrate 和 minVideoBitrate 设置为同一个值,等价于关闭 SDK 的自适应调节能力;

- 默认值:0,此时最低码率由 SDK 根据分辨率情况,自动设置合适的数值。

【特别说明】

- 当您把分辨率设置的比较高时,minVideoBitrate 不适合设置的太低,否则会出现画面模糊和大范围的马赛克宏块。

比如把分辨率设置为 720p,把码率设置为 200kbps,那么编码出的画面将会出现大范围区域性马赛克。

◆ resMode

【字段含义】分辨率模式(横屏分辨率 - 竖屏分辨率)

【推荐取值】手机直播建议选择 Portrait,Window 和 Mac 建议选择 Landscape。

【特别说明】如果 videoResolution 指定分辨率 640 × 360,resMode 指定模式为 Portrait,则最终编码出的分辨率为360 × 640。

◆ videoBitrate

UInt32 videoBitrate

【字段含义】目标视频码率,SDK 会按照目标码率进行编码,只有在网络不佳的情况下才会主动降低视频码率。

【推荐取值】请参考本 TRTCVideoResolution 在各档位注释的最佳码率,也可以在此基础上适当调高。

比如 TRTCVideoResolution_1280_720 对应 1200kbps 的目标码率,您也可以设置为 1500kbps 用来获得更好的清晰度观感。

【特别说明】SDK 会努力按照 videoBitrate 指定的码率进行编码,只有在网络不佳的情况下才会主动降低视频码率,最低会降至 minVideoBitrate 所设定的数值。

如果您追求“允许卡顿但要保持清晰”的效果,可以设置 minVideoBitrate 为 videoBitrate 的 60;

如果您追求“允许模糊但要保持流畅”的效果,可以设置 minVideoBitrate 为 200kbps;

如果您将 videoBitrate 和 minVideoBitrate 设置为同一个值,等价于关闭 SDK 的自适应调节能力。

◆ videoFps

UInt32 videoFps

【字段含义】视频采集帧率

【推荐取值】15fps 或 20fps。5fps以下,卡顿感明显。10fps以下,会有轻微卡顿感。20fps以上,则过于浪费(电影的帧率为24fps)。

【特别说明】很多 Android 手机的前置摄像头并不支持15fps以上的采集帧率,部分过于突出美颜功能的 Android 手机前置摄像头的采集帧率可能低于10fps。

◆ videoResolution

TRTCVideoResolution videoResolution

【字段含义】 视频分辨率

【推荐取值】

- 视频通话建议选择360 × 640及以下分辨率,resMode 选择 Portrait。

- 手机直播建议选择540 × 960,resMode 选择 Portrait。

- Window 和 iMac 建议选择640 × 360 及以上分辨率,resMode 选择 Landscape。

【特别说明】 TRTCVideoResolution 默认只有横屏模式的分辨率,例如640 × 360。

如需使用竖屏分辨率,请指定 resMode 为 Portrait,例如640 × 360结合 Portrait 则为360 × 640。

◆ ManageLiteAV::TRTCNetworkQosParam

struct ManageLiteAV::TRTCNetworkQosParam

Public 成员函数

 TRTCNetworkQosParam ()
 

成员变量

TRTCVideoQosPreference preference
 
TRTCQosControlMode controlMode
 

构造及析构函数说明

◆ TRTCNetworkQosParam()

TRTCNetworkQosParam ( )
inline

结构体成员变量说明

◆ controlMode

TRTCQosControlMode controlMode

【字段含义】视频分辨率(云端控制 - 客户端控制)

【推荐取值】云端控制

【特别说明】

- Server 模式(默认):云端控制模式,若无特殊原因,请直接使用该模式

- Client 模式:客户端控制模式,用于 SDK 开发内部调试,客户请勿使用

◆ preference

【字段含义】弱网下是“保清晰”或“保流畅”

【特别说明】

- 弱网下保流畅:在遭遇弱网环境时,画面会变得模糊,且出现较多马赛克,但可以保持流畅不卡顿

- 弱网下保清晰:在遭遇弱网环境时,画面会尽可能保持清晰,但可能容易出现卡顿

◆ ManageLiteAV::TRTCQualityInfo

struct ManageLiteAV::TRTCQualityInfo

Public 成员函数

 TRTCQualityInfo ()
 

成员变量

String ^ userId
 
TRTCQuality quality
 

构造及析构函数说明

◆ TRTCQualityInfo()

TRTCQualityInfo ( )
inline

结构体成员变量说明

◆ quality

TRTCQuality quality

视频质量

◆ userId

String ^ userId

用户标识

◆ ManageLiteAV::TRTCVolumeInfo

struct ManageLiteAV::TRTCVolumeInfo

Public 成员函数

 TRTCVolumeInfo ()
 

成员变量

String ^ userId
 
UInt32 volume
 

构造及析构函数说明

◆ TRTCVolumeInfo()

TRTCVolumeInfo ( )
inline

结构体成员变量说明

◆ userId

String ^ userId

说话者的 userId,字符编码格式为 UTF-8

◆ volume

UInt32 volume

说话者的音量, 取值范围0 - 100

◆ ManageLiteAV::TRTCVideoFrame

struct ManageLiteAV::TRTCVideoFrame

Public 成员函数

 TRTCVideoFrame ()
 

成员变量

TRTCVideoPixelFormat videoFormat
 
TRTCVideoBufferType bufferType
 
array< Byte > ^ data
 
int textureId
 
UInt32 length
 
UInt32 width
 
UInt32 height
 
UInt64 timestamp
 
TRTCVideoRotation rotation
 

构造及析构函数说明

◆ TRTCVideoFrame()

TRTCVideoFrame ( )
inline

结构体成员变量说明

◆ bufferType

TRTCVideoBufferType bufferType

视频数据结构类型

◆ data

array<Byte> ^ data

视频数据,字段bufferType是LiteAVVideoBufferType_Buffer时生效

◆ height

UInt32 height

画面的高度

◆ length

UInt32 length

视频数据的长度,单位是字节,对于i420而言, length = width * height * 3 / 2,对于BGRA32而言, length = width * height * 4

◆ rotation

画面旋转角度

◆ textureId

int textureId

视频纹理ID,字段bufferType是LiteAVVideoBufferType_Texture时生效

◆ timestamp

UInt64 timestamp

时间戳,单位ms

◆ videoFormat

TRTCVideoPixelFormat videoFormat

视频帧的格式

◆ width

UInt32 width

画面的宽度

◆ ManageLiteAV::TRTCAudioFrame

struct ManageLiteAV::TRTCAudioFrame

Public 成员函数

 TRTCAudioFrame ()
 

成员变量

TRTCAudioFrameFormat audioFormat
 
array< Byte > ^ data
 
UInt32 length
 
UInt32 sampleRate
 
UInt32 channel
 
UInt64 timestamp
 

构造及析构函数说明

◆ TRTCAudioFrame()

TRTCAudioFrame ( )
inline

结构体成员变量说明

◆ audioFormat

TRTCAudioFrameFormat audioFormat

音频帧的格式

◆ channel

UInt32 channel

声道数

◆ data

array<Byte> ^ data

音频数据

◆ length

UInt32 length

音频数据的长度

◆ sampleRate

UInt32 sampleRate

采样率

◆ timestamp

UInt64 timestamp

时间戳,单位ms

◆ ManageLiteAV::TRTCSpeedTestResult

struct ManageLiteAV::TRTCSpeedTestResult

Public 成员函数

 TRTCSpeedTestResult ()
 

成员变量

String ^ ip
 
TRTCQuality quality
 
float upLostRate
 
float downLostRate
 
int rtt
 

构造及析构函数说明

◆ TRTCSpeedTestResult()

TRTCSpeedTestResult ( )
inline

结构体成员变量说明

◆ downLostRate

float downLostRate

下行丢包率,范围是0 - 1.0,例如,0.2表示每从服务器收取10个数据包可能会在中途丢失2个。

◆ ip

String ^ ip

服务器 IP 地址

◆ quality

TRTCQuality quality

网络质量,内部通过评估算法测算出的网络质量,loss 越低,rtt 越小,得分便越高

◆ rtt

int rtt

延迟(毫秒),指当前设备到腾讯云服务器的一次网络往返时间,该值越小越好,正常数值范围是10ms - 100ms

◆ upLostRate

float upLostRate

上行丢包率,范围是0 - 1.0,例如,0.3表示每向服务器发送10个数据包可能会在中途丢失3个。

◆ ManageLiteAV::RECT

struct ManageLiteAV::RECT
成员变量
int bottom 下坐标点
int left 左坐标点
int right 右坐标点
int top 上坐标点

◆ ManageLiteAV::TRTCMixUser

struct ManageLiteAV::TRTCMixUser

Public 成员函数

 TRTCMixUser ()
 

成员变量

String ^ userId
 
String ^ roomId
 
RECTrect
 
int zOrder
 
bool pureAudio
 
TRTCVideoStreamType streamType
 
TRTCMixInputType inputType
 

构造及析构函数说明

◆ TRTCMixUser()

TRTCMixUser ( )
inline

结构体成员变量说明

◆ inputType

TRTCMixInputType inputType

【字段含义】该用户的输入流类型(该字段是对 pureAudio 字段的升级) 【推荐取值】

  • 默认值:TRTCMixInputTypeUndefined
  • 如果您没有对 pureAudio 字段进行设置,您可以根据实际需要设置该字段
  • 如果您已经设置了 pureAudio 为 YES,请设置该字段为 TRTCMixInputTypeUndefined

◆ pureAudio

bool pureAudio

是否纯音频

◆ rect

RECT ^ rect

图层位置坐标以及大小,左上角为坐标原点(0,0) (绝对像素值)

◆ roomId

String ^ roomId

参与混流的 roomId,跨房流传入的实际 roomId,当前房间流传入 roomId = NULL

◆ streamType

TRTCVideoStreamType streamType

参与混合的是主路画面(TRTCVideoStreamTypeBig)或屏幕分享(TRTCVideoStreamTypeSub)画面

◆ userId

String ^ userId

参与混流的 userId

◆ zOrder

int zOrder

图层层次(1 - 15)不可重复

◆ ManageLiteAV::TRTCTranscodingConfig

struct ManageLiteAV::TRTCTranscodingConfig

Public 成员函数

 TRTCTranscodingConfig ()
 

成员变量

TRTCTranscodingConfigMode mode
 
UInt32 appId
 
UInt32 bizId
 
UInt32 videoWidth
 
UInt32 videoHeight
 
UInt32 videoBitrate
 
UInt32 videoFramerate
 
UInt32 videoGOP
 
UInt32 backgroundColor
 
String ^ backgroundImage
 
UInt32 audioSampleRate
 
UInt32 audioBitrate
 
UInt32 audioChannels
 
array< TRTCMixUser^> ^ mixUsersArray
 
UInt32 mixUsersArraySize
 
String ^ streamId
 

构造及析构函数说明

◆ TRTCTranscodingConfig()

结构体成员变量说明

◆ appId

UInt32 appId

【字段含义】腾讯云直播 AppID

【推荐取值】请在 实时音视频控制台 选择已经创建的应用,单击【帐号信息】后,在“直播信息”中获取

◆ audioBitrate

UInt32 audioBitrate

【字段含义】最终转码后的音频码率。

【推荐取值】默认值:64kbps,取值范围是 [32,192]。

◆ audioChannels

UInt32 audioChannels

【字段含义】最终转码后的音频声道数

【推荐取值】默认值:1。取值范围为 [1,2] 中的整型。

◆ audioSampleRate

UInt32 audioSampleRate

【字段含义】最终转码后的音频采样率。

【推荐取值】默认值:48000Hz。支持12000HZ、16000HZ、22050HZ、24000HZ、32000HZ、44100HZ、48000HZ。

◆ backgroundColor

UInt32 backgroundColor

【字段含义】混流背景颜色,格式为 0xRRGGBB。

【推荐取值】默认值:0x000000,黑色。

◆ backgroundImage

String ^ backgroundImage

【字段含义】混合后画面的背景图。

【推荐取值】默认值:null,即不设置背景图

【特别说明】背景图需要您事先在 “控制台 => 应用管理 => 功能配置 => 素材管理” 中上传,

上传成功后可以获得对应的“图片ID”,然后将“图片ID”转换成字符串类型并设置到 backgroundImage 里即可。

例如:假设“图片ID” 为 63,可以设置 backgroundImage = "63";

◆ bizId

UInt32 bizId

【字段含义】腾讯云直播 bizid

【推荐取值】请在 实时音视频控制台 选择已经创建的应用,单击【帐号信息】后,在“直播信息”中获取

◆ mixUsersArray

array<TRTCMixUser^> ^ mixUsersArray

【字段含义】每一路子画面的位置信息

◆ mixUsersArraySize

UInt32 mixUsersArraySize

【字段含义】 数组 mixUsersArray 的大小

◆ mode

【字段含义】转码 config 模式

◆ streamId

String ^ streamId

【字段含义】输出到 CDN 上的直播流 ID 如不设置该参数,SDK 会执行默认逻辑,即房间里的多路流会混合到该接口调用者的视频流上,也就是 A + B => A; 如果设置该参数,SDK 会将房间里的多路流混合到您指定的直播流 ID 上,也就是 A + B => C。 【推荐取值】默认值:null,即房间里的多路流会混合到该接口调用者的视频流上。

◆ videoBitrate

UInt32 videoBitrate

【字段含义】最终转码后的视频分辨率的码率(kbps)

【推荐取值】如果填0,后台会根据videoWidth和videoHeight来估算码率,您也可以参考枚举定义TRTCVideoResolution_640_480的注释。

◆ videoFramerate

UInt32 videoFramerate

【字段含义】最终转码后的视频分辨率的帧率(FPS)

【推荐取值】默认值:15fps,取值范围是 (0,30]。

◆ videoGOP

UInt32 videoGOP

【字段含义】最终转码后的视频分辨率的关键帧间隔(又称为 GOP),单位秒

【推荐取值】默认值:2,单位为秒,取值范围是 [1,8]。

◆ videoHeight

UInt32 videoHeight

【字段含义】最终转码后的视频分辨率的高度(px)

【推荐取值】推荐值:640px ,如果你是纯音频推流,请将 width × height 设为 0px × 0px,否则混流后会携带一条画布背景的视频流。

◆ videoWidth

UInt32 videoWidth

【字段含义】最终转码后的视频分辨率的宽度(px)

【推荐取值】推荐值:360px ,如果你是纯音频推流,请将 width × height 设为 0px × 0px,否则混流后会携带一条画布背景的视频流。

◆ ManageLiteAV::TRTCPublishCDNParam

struct ManageLiteAV::TRTCPublishCDNParam

Public 成员函数

 TRTCPublishCDNParam ()
 

成员变量

UInt32 appId
 
UInt32 bizId
 
String ^ url
 

构造及析构函数说明

◆ TRTCPublishCDNParam()

TRTCPublishCDNParam ( )
inline

结构体成员变量说明

◆ appId

UInt32 appId

腾讯云 AppID,请在 实时音视频控制台 选择已经创建的应用,单击【帐号信息】,在“直播信息”中获取

◆ bizId

UInt32 bizId

腾讯云直播 bizid,请在 实时音视频控制台 选择已经创建的应用,单击【帐号信息】,在“直播信息”中获取

◆ url

String ^ url

旁路转推的 URL

◆ ManageLiteAV::TRTCAudioRecordingParams

struct ManageLiteAV::TRTCAudioRecordingParams

Public 成员函数

 TRTCAudioRecordingParams ()
 

成员变量

String ^ filePath
 
TRTCAudioRecordingContent recordingContent
 

构造及析构函数说明

◆ TRTCAudioRecordingParams()

结构体成员变量说明

◆ filePath

String ^ filePath

【字段含义】文件路径(必填),录音文件的保存路径。该路径需要用户自行指定,请确保路径存在且可写。 【特别说明】该路径需精确到文件名及格式后缀,格式后缀决定录音文件的格式,目前支持的格式有 PCM、WAV 和 AAC。 例如,指定路径为 path/to/audio.aac,则会生成一个 AAC 格式的文件。 请指定一个有读写权限的合法路径,否则录音文件无法生成。

◆ recordingContent

TRTCAudioRecordingContent recordingContent

【字段含义】音频录制内容类型。 【特别说明】默认录制所有本地和远端音频

◆ ManageLiteAV::TRTCAudioEffectParam

struct ManageLiteAV::TRTCAudioEffectParam

Public 成员函数

 TRTCAudioEffectParam (const int _effectId, String^ _path)
 

成员变量

int effectId
 
String ^ path
 
int loopCount
 
bool publish
 
int volume
 

构造及析构函数说明

◆ TRTCAudioEffectParam()

TRTCAudioEffectParam ( const int  _effectId,
String^  _path 
)
inline

结构体成员变量说明

◆ effectId

int effectId

【字段含义】音效 ID 【特别说明】SDK 允许播放多路音效,因此需要音效 ID 进行标记,用于控制音效的开始、停止、音量等

◆ loopCount

int loopCount

【字段含义】循环播放次数 【推荐取值】取值范围为0 - 任意正整数,默认值:0。0表示播放音效一次;1表示播放音效两次;以此类推

◆ path

String ^ path

【字段含义】音效路径

◆ publish

bool publish

【字段含义】音效是否上行 【推荐取值】YES:音效在本地播放的同时,会上行至云端,因此远端用户也能听到该音效;NO:音效不会上行

◆ volume

int volume

【字段含义】音效音量 【推荐取值】取值范围为0 - 100;默认值:100

◆ ManageLiteAV::TRTCSwitchRoomConfig

struct ManageLiteAV::TRTCSwitchRoomConfig

Public 成员函数

 TRTCSwitchRoomConfig ()
 

成员变量

uint32_t roomId
 
String ^ strRoomId
 
String ^ userSig
 
String ^ privateMapKey
 

构造及析构函数说明

◆ TRTCSwitchRoomConfig()

结构体成员变量说明

◆ privateMapKey

String ^ privateMapKey

【字段含义】房间签名 [选填],当您希望某个房间只能让特定的 userId 进入时,需要使用 privateMapKey 进行权限保护。 【推荐取值】仅建议有高级别安全需求的客户使用,更多详情请参见 进房权限保护

◆ roomId

uint32_t roomId

【字段含义】数字房间号码 [选填],在同一个房间内的用户可以看到彼此并进行视频通话。 【推荐取值】取值范围:1 - 4294967294。 【特别说明】roomId 和 strRoomId 必须并且只能填一个。若两者都填,则优先选择 roomId。

◆ strRoomId

String ^ strRoomId

【字段含义】字符串房间号码 [选填],在同一个房间内的用户可以看到彼此并进行视频通话。 【特别说明】roomId 和 strRoomId 必须并且只能填一个。若两者都填,则优先选择 roomId。

◆ userSig

String ^ userSig

【字段含义】用户签名 [选填],当前 userId 对应的验证签名,相当于登录密码。不填时,SDK 会继续使用旧的 userSig, 但用户必须保证旧的 userSig 仍在有效期内,否则会造成进房失败等后果。 【推荐取值】具体计算方法请参见 如何计算UserSig

◆ ManageLiteAV::TRTCRenderParams

struct ManageLiteAV::TRTCRenderParams

Public 成员函数

 TRTCRenderParams ()
 

成员变量

TRTCVideoRotation rotation
 
TRTCVideoFillMode fillMode
 
TRTCVideoMirrorType mirrorType
 

构造及析构函数说明

◆ TRTCRenderParams()

TRTCRenderParams ( )
inline

结构体成员变量说明

◆ fillMode

视频画面填充模式,默认值为 TRTCVideoFillMode_Fit

◆ mirrorType

TRTCVideoMirrorType mirrorType

视频画面镜像模式,默认值为 TRTCVideoMirrorType_Disable

◆ rotation

视频画面旋转方向,默认值为 TRTCVideoRotation0

◆ ManageLiteAV::TRTCLocalStatistics

struct ManageLiteAV::TRTCLocalStatistics
成员变量
UInt32 audioBitrate 音频发送码率(Kbps)
UInt32 audioSampleRate 音频采样率(Hz)
UInt32 frameRate 帧率(fps)
UInt32 height 视频高度
TRTCVideoStreamType streamType 流类型(大画面 | 小画面 | 辅路画面)
UInt32 videoBitrate 视频发送码率(Kbps)
UInt32 width 视频宽度

◆ ManageLiteAV::TRTCRemoteStatistics

struct ManageLiteAV::TRTCRemoteStatistics
成员变量
UInt32 audioBitrate 音频码率(Kbps)
UInt32 audioSampleRate 音频采样率(Hz)
UInt32 finalLoss 该线路的总丢包率(%)

这个值越小越好,例如,丢包率为0表示网络很好。

丢包率是该线路的 userId 从上行到服务器再到下行的总丢包率。

如果 downLoss 为0,但是 finalLoss 不为0,说明该 userId 上行时出现了无法恢复的丢包。

UInt32 frameRate 接收帧率(fps)
UInt32 height 视频高度
TRTCVideoStreamType streamType 流类型(大画面 | 小画面 | 辅路画面)
String ^ userId 用户 ID,指定是哪个用户的视频流
UInt32 videoBitrate 视频码率(Kbps)
UInt32 width 视频宽度

◆ ManageLiteAV::TRTCStatistics

struct ManageLiteAV::TRTCStatistics
成员变量
UInt32 appCpu 当前 App 的 CPU 使用率(%)
UInt32 downLoss S -> C 下行丢包率(%), 该值越小越好,例如,丢包率为0表示网络很好, 丢包率为30%则意味着 SDK 向服务器发送的数据包中会有30%丢失在下行传输中。
array< TRTCLocalStatistics^> ^ localStatisticsArray 本地的音视频统计信息,可能有主画面、小画面以及辅路画面等多路的情况,因此是一个数组
UInt32 localStatisticsArraySize 数组 localStatisticsArray 的大小
UInt32 receivedBytes 总接收字节数(包含信令和音视频)
array< TRTCRemoteStatistics^> ^ remoteStatisticsArray 远端成员的音视频统计信息,可能有主画面、小画面以及辅路画面等多路的情况,因此是一个数组
UInt32 remoteStatisticsArraySize 数组 remoteStatisticsArray 的大小
UInt32 rtt 延迟(毫秒),指 SDK 到腾讯云服务器的一次网络往返时间,该值越小越好。

一般低于50ms的 rtt 相对理想,而高于100ms的 rtt 会引入较大的通话延时。

由于数据上下行共享一条网络连接,所以 local 和 remote 的 rtt 相同。

UInt32 sentBytes 总发送字节总数(包含信令和音视频)
UInt32 systemCpu 当前系统的 CPU 使用率(%)
UInt32 upLoss C -> S 上行丢包率(%),

该值越小越好,例如,丢包率为0表示网络很好, 丢包率为30%则意味着 SDK 向服务器发送的数据包中会有30%丢失在上行传输中。

枚举类型说明

◆ TRTCAppScene

enum TRTCAppScene
strong

应用场景

TRTC 可用于视频会议和在线直播等多种应用场景,针对不同的应用场景,TRTC SDK 的内部会进行不同的优化配置:

- TRTCAppSceneVideoCall :视频通话场景,适合[1对1视频通话]、[300人视频会议]、[在线问诊]、[视频聊天]、[远程面试]等。

- TRTCAppSceneLIVE :视频互动直播,适合[视频低延时直播]、[十万人互动课堂]、[视频直播 PK]、[视频相亲房]、[互动课堂]、[远程培训]、[超大型会议]等。

- TRTCAppSceneAudioCall :语音通话场景,适合[1对1语音通话]、[300人语音会议]、[语音聊天]、[语音会议]、[在线狼人杀]等。

- TRTCAppSceneVoiceChatRoom:语音互动直播,适合:[语音低延时直播]、[语音直播连麦]、[语聊房]、[K 歌房]、[FM 电台]等。

枚举值
TRTCAppSceneVideoCall 

视频通话场景,支持720P、1080P高清画质,单个房间最多支持300人同时在线,最高支持50人同时发言。

适合:[1对1视频通话]、[300人视频会议]、[在线问诊]、[视频聊天]、[远程面试]等。

TRTCAppSceneLIVE 

视频互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。

适合:[视频低延时直播]、[十万人互动课堂]、[视频直播 PK]、[视频相亲房]、[互动课堂]、[远程培训]、[超大型会议]等。

注意:此场景下,您必须通过 TRTCParams 中的 role 字段指定当前用户的角色。

TRTCAppSceneAudioCall 

语音通话场景,支持 48kHz,支持双声道。单个房间最多支持300人同时在线,最高支持50人同时发言。

适合:[1对1语音通话]、[300人语音会议]、[语音聊天]、[语音会议]、[在线狼人杀]等。

TRTCAppSceneVoiceChatRoom 

语音互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。

适合:[语音低延时直播]、[语音直播连麦]、[语聊房]、[K 歌房]、[FM 电台]等。

注意:此场景下,您必须通过 TRTCParams 中的 role 字段指定当前用户的角色。

◆ TRTCAudioFrameFormat

enum TRTCAudioFrameFormat
strong

音频帧的格式

枚举值
TRTCAudioFrameFormatNone 
TRTCAudioFrameFormatPCM 

【字段含义】 PCM,每个采样点占16bit数据量。

◆ TRTCAudioQuality

enum TRTCAudioQuality
strong

声音音质

音频音质用来衡量声音的保真程度,TRTCAudioQualitySpeech 适用于通话场景,TRTCAudioQualityMusic 适用于高音质音乐场景。

枚举值
TRTCAudioQualitySpeech 

summary> 【字段含义】 流畅音质:采样率:16k;单声道;音频裸码率:16kbps;适合语音通话为主的场景,比如在线会议,语音通话。 /summary> summary> 【字段含义】 默认音质:采样率:48k;单声道;音频裸码率:50kbps;SDK 默认的音频质量,如无特殊需求推荐选择之。 /summary>

TRTCAudioQualityDefault 

summary> 【字段含义】 高音质:采样率:48k;双声道 + 全频带;音频裸码率:128kbps;适合需要高保真传输音乐的场景,比如K歌、音乐直播等。 /summary>

TRTCAudioQualityMusic 

◆ TRTCAudioRecordingContent

音频录制内容类型 该枚举类型用于音频录制接口startAudioRecording,用于指定录制音频的内容。

枚举值
TRTCAudioRecordingContentAll 

【字段含义】 录制本地和远端所有音频

TRTCAudioRecordingContentLocal 

【字段含义】 仅录制本地音频

TRTCAudioRecordingContentRemote 

【字段含义】 仅录制远端音频

◆ TRTCAVStatusChangeReason

视频状态类型 该枚举类型用于视频状态变化回调接口{},用于指定当前的视频状态。

枚举值
TRTCAVStatusChangeReasonInternal 

【字段含义】缺省值

TRTCAVStatusChangeReasonBufferingBegin 

【字段含义】网络缓冲

TRTCAVStatusChangeReasonBufferingEnd 

【字段含义】结束缓冲

TRTCAVStatusChangeReasonLocalStarted 

【字段含义】本地启动视频流播放

TRTCAVStatusChangeReasonLocalStopped 

【字段含义】本地停止视频流播放

TRTCAVStatusChangeReasonRemoteStarted 

【字段含义】远端视频流开始(或继续)

TRTCAVStatusChangeReasonRemoteStopped 

【字段含义】远端视频流停止(或中断)

◆ TRTCAVStatusType

enum TRTCAVStatusType
strong

视频状态类型 该枚举类型用于视频状态变化回调接口onRemoteVideoStatusUpdated,用于指定当前的视频状态。

枚举值
TRTCAVStatusStopped 

【字段含义】停止播放

TRTCAVStatusPlaying 

【字段含义】正在播放

TRTCAVStatusLoading 

【字段含义】正在加载

◆ TRTCBeautyStyle

enum TRTCBeautyStyle
strong

美颜(磨皮)算法

TRTC SDK 内置多种不同的磨皮算法,您可以选择最适合您产品定位的方案。

枚举值
TRTCBeautyStyleSmooth 

光滑,适用于美女秀场,效果比较明显。

TRTCBeautyStyleNature 

自然,磨皮算法更多地保留了面部细节,主观感受上会更加自然。

◆ TRTCDeviceState

enum TRTCDeviceState
strong

设备操作

枚举值
TRTCDeviceStateAdd 

【字段含义】 添加设备

TRTCDeviceStateRemove 

【字段含义】 移除设备

TRTCDeviceStateActive 

【字段含义】 设备已启用

◆ TRTCLocalRecordType

enum TRTCLocalRecordType
strong

本地录制类型

枚举值
TRTCLocalRecordType_Audio 

仅录制音频

TRTCLocalRecordType_Video 

仅录制视频

TRTCLocalRecordType_Both 

同时录制音频、视频

◆ TRTCLogLevel

enum TRTCLogLevel
strong

Log 级别

枚举值
TRTCLogLevelVerbose 

【字段含义】 输出所有级别的 Log

TRTCLogLevelDebug 

【字段含义】 输出 DEBUG,INFO,WARNING,ERROR 和 FATAL 级别的 Log

TRTCLogLevelInfo 

【字段含义】 输出 INFO,WARNING,ERROR 和 FATAL 级别的 Log

TRTCLogLevelWarn 

【字段含义】 只输出 WARNING,ERROR 和 FATAL 级别的 Log

TRTCLogLevelError 

【字段含义】 只输出ERROR 和 FATAL 级别的 Log

TRTCLogLevelFatal 

【字段含义】 只输出 FATAL 级别的 Log

TRTCLogLevelNone 

【字段含义】 不输出任何 SDK Log

◆ TRTCMixInputType

enum TRTCMixInputType
strong

混流输入类型

枚举值
TRTCMixInputTypeUndefined 

【字段含义】 不指定,根据pureAudio值决定混流类型

TRTCMixInputTypeAudioVideo 

【字段含义】 混入音视频

TRTCMixInputTypePureVideo 

【字段含义】 只混入视频

TRTCMixInputTypePureAudio 

【字段含义】 只混入音频

◆ TRTCQosControlMode

enum TRTCQosControlMode
strong

流控模式

TRTC SDK 内部需要时刻根据网络情况调整内部的编解码器和网络模块,以便能够对网络的变化做出反应。

为了支持快速算法升级,SDK 内部设置了两种不同的流控模式:

- ModeServer: 云端控制,默认模式,推荐选择。

- ModeClient: 本地控制,用于 SDK 开发内部调试,客户请勿使用。

推荐您使用云端控制,这样每当我们升级 Qos 算法时,您无需升级 SDK 即可体验更好的效果。

枚举值
TRTCQosControlModeClient 

【字段含义】 客户端控制(用于 SDK 开发内部调试,客户请勿使用)

TRTCQosControlModeServer 

【字段含义】 云端控制 (默认)

◆ TRTCQuality

enum TRTCQuality
strong

画质级别

TRTC SDK 对画质定义了六种不同的级别,Excellent 表示最好,Down 表示不可用。

枚举值
TRTCQuality_Unknown 

未定义

TRTCQuality_Excellent 

最好

TRTCQuality_Good 

TRTCQuality_Poor 

一般

TRTCQuality_Bad 

TRTCQuality_Vbad 

很差

TRTCQuality_Down 

不可用

◆ TRTCRoleType

enum TRTCRoleType
strong

角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom)

在直播场景中,多数用户仅为观众,个别用户是主播,这种角色区分有利于 TRTC 进行更好的定向优化。

- Anchor:主播,可以上行视频和音频,一个房间里最多支持50个主播同时上行音视频。

- Audience:观众,只能观看,不能上行视频和音频,一个房间里的观众人数没有上限。

枚举值
TRTCRoleAnchor 

【字段含义】主播

TRTCRoleAudience 

【字段含义】观众

◆ TRTCScreenCaptureSourceType

屏幕分享目标信息

您可以通过 getScreenCaptureSources() 枚举可共享的窗口列表,列表通过 ITRTCScreenCaptureSourceList 返回

枚举值
TRTCScreenCaptureSourceTypeUnknown 
TRTCScreenCaptureSourceTypeWindow 

该分享目标是某一个Windows窗口

TRTCScreenCaptureSourceTypeScreen 

该分享目标是整个Windows桌面

TRTCAVScreenCaptureSourceTypeCustom 

◆ TRTCSnapshotSourceType

视频截图来源

枚举值
TRTCSnapshotSourceTypeStream 

【字段含义】从视频流上截取视频画面

TRTCSnapshotSourceTypeView 

【字段含义】从渲染 View 上截取视频画面

◆ TRTCTranscodingConfigMode

混流参数配置模式

目前暂仅支持手动配置这一种模式,即需要指定 TRTCTranscodingConfig 的全部参数。

枚举值
TRTCTranscodingConfigMode_Unknown 

非法值

TRTCTranscodingConfigMode_Manual 

全手动模式,灵活性最高,可以自由组合出各种混流方案,但易用性最差。

此模式下,您需要填写 TRTCTranscodingConfig 中的所有参数,并需要监听 TRTCCloudDelegate 中的 onUserVideoAvailable() 和 onUserAudioAvailable() 回调,

以便根据当前房间中各个上麦用户的音视频状态不断地调整 mixUsers 参数,否则会导致混流失败。

TRTCTranscodingConfigMode_Template_PureAudio 

纯音频模式,适用于语音通话(AudioCall)和语音聊天室(VoiceChatRoom)等纯音频场景。

只需要在进房后通过 setMixTranscodingConfig() 接口设置一次,之后 SDK 就会自动把房间内所有上麦用户的声音混流到当前用户的直播流上。

此模式下,您无需设置 TRTCTranscodingConfig 中的 mixUsers 参数,只需设置 audioSampleRate、audioBitrate 和 audioChannels 等参数。

TRTCTranscodingConfigMode_Template_PresetLayout 

预排版模式,通过占位符提前对各路画面进行排布

此模式下,您依然需要设置 mixUsers 参数,但可以将 userId 设置为占位符,可选的占位符有:

- "$PLACE_HOLDER_REMOTE$" : 指代远程用户的画面,可以设置多个。

- "$PLACE_HOLDER_LOCAL_MAIN$" : 指代本地摄像头画面,只允许设置一个。

- "$PLACE_HOLDER_LOCAL_SUB$" : 指代本地屏幕分享画面,只允许设置一个。

但是您可以不需要监听 TRTCCloudDelegate 中的 onUserVideoAvailable() 和 onUserAudioAvailable() 回调进行实时调整,

只需要在进房成功后调用一次 setMixTranscodingConfig() 即可,之后 SDK 会自动将真实的 userId 补位到您设置的占位符上。

TRTCTranscodingConfigMode_Template_ScreenSharing 

屏幕分享模式,适用于在线教育场景等以屏幕分享为主的应用场景,仅支持 Windows 和 Mac 两个平台的 SDK。

SDK 会先根据您(通过 videoWidth 和 videoHeight 参数)设置的目标分辨率构建一张画布,

当老师未开启屏幕分享时,SDK 会将摄像头画面等比例拉伸绘制到该画布上;当老师开启屏幕分享之后,SDK 会将屏幕分享画面绘制到同样的画布上。

这样操作的目的是为了确保混流模块的输出分辨率一致,避免课程回放和网页观看的花屏问题(网页播放器不支持可变分辨率)。

由于教学模式下的视频内容以屏幕分享为主,因此同时传输摄像头画面和屏幕分享画面是非常浪费带宽的。

推荐的做法是直接将摄像头画面通过 setLocalVideoRenderCallback 接口自定义绘制到当前屏幕上。

在该模式下,您无需设置 TRTCTranscodingConfig 中的 mixUsers 参数,SDK 不会混合学生的画面,以免干扰屏幕分享的效果。

您可以将 TRTCTranscodingConfig 中的 width × height 设为 0px × 0px,SDK 会自动根据用户当前屏幕的宽高比计算出一个合适的分辨率:

- 如果老师当前屏幕宽度 <= 1920px,SDK 会使用老师当前屏幕的实际分辨率。

- 如果老师当前屏幕宽度 > 1920px,SDK 会根据当前屏幕宽高比,选择 1920x1080(16:9)、1920x1200(16:10)、1920x1440(4:3) 三种分辨率中的一种。

◆ TRTCVideoBufferType

enum TRTCVideoBufferType
strong

视频数据包装格式

枚举值
TRTCVideoBufferType_Unknown 

【字段含义】未知类型

TRTCVideoBufferType_Buffer 

【字段含义】二进制Buffer类型

TRTCVideoBufferType_Texture 

【字段含义】纹理类型

◆ TRTCVideoFillMode

enum TRTCVideoFillMode
strong

视频画面填充模式

如果画面的显示分辨率不等于画面的原始分辨率,就需要您设置画面的填充模式:

- TRTCVideoFillMode_Fill,超出显示视窗的视频部分将被裁剪,画面显示可能不完整。

- TRTCVideoFillMode_Fit,图像长边填满屏幕,短边区域会被填充黑色,但画面的内容肯定是完整的。

枚举值
TRTCVideoFillMode_Fill 

图像铺满屏幕,超出显示视窗的视频部分将被裁剪

TRTCVideoFillMode_Fit 

图像长边填满屏幕,短边区域会被填充黑色

◆ TRTCVideoMirrorType

enum TRTCVideoMirrorType
strong

画面渲染镜像类型

TRTC 的画面镜像提供下列设置模式

枚举值
TRTCVideoMirrorType_Enable 

【字段含义】所有画面均镜像

TRTCVideoMirrorType_Disable 

【字段含义】所有画面均不镜像

◆ TRTCVideoPixelFormat

enum TRTCVideoPixelFormat
strong

视频像素格式

TRTC SDK 提供针对视频的自定义采集和自定义渲染功能,在自定义采集功能中,您可以用下列枚举值描述您采集的视频像素格式。

在自定义渲染功能中,您可以指定您期望 SDK 回调的视频像素格式。

枚举值
TRTCVideoPixelFormat_Unknown 

【字段含义】未知类型

TRTCVideoPixelFormat_I420 

【字段含义】I420

TRTCVideoPixelFormat_Texture_2D 

【字段含义】OpenGL 2D 纹理

TRTCVideoPixelFormat_BGRA32 

【字段含义】BGRA32

TRTCVideoPixelFormat_RGBA32 

【字段含义】RGBA32

◆ TRTCVideoQosPreference

画质偏好

指当 TRTC SDK 在遇到弱网络环境时,您期望“保清晰”或“保流畅”:

- Smooth:弱网下保流畅。即在遭遇弱网环境时首先确保声音的流畅和优先发送,画面会变得模糊且会有较多马赛克,但可以保持流畅不卡顿。

- Clear:弱网下保清晰。即在遭遇弱网环境时,画面会尽可能保持清晰,但可能会更容易出现卡顿。

枚举值
TRTCVideoQosPreferenceSmooth 

【字段含义】 弱网下保流畅

TRTCVideoQosPreferenceClear 

弱网下保清晰 【字段含义】

◆ TRTCVideoResolution

enum TRTCVideoResolution
strong

视频分辨率

此处仅定义横屏分辨率,如需使用竖屏分辨率(例如360 × 640),需要同时指定 TRTCVideoResolutionMode 为 Portrait。

枚举值
TRTCVideoResolution_120_120 

建议码率80kbps

TRTCVideoResolution_160_160 

建议码率100kbps

TRTCVideoResolution_270_270 

建议码率200kbps

TRTCVideoResolution_480_480 

建议码率350kbps

TRTCVideoResolution_160_120 

建议码率100kbps

TRTCVideoResolution_240_180 

建议码率150kbps

TRTCVideoResolution_280_210 

建议码率200kbps

TRTCVideoResolution_320_240 

建议码率250kbps

TRTCVideoResolution_400_300 

建议码率300kbps

TRTCVideoResolution_480_360 

建议码率400kbps

TRTCVideoResolution_640_480 

建议码率600kbps

TRTCVideoResolution_960_720 

建议码率1000kbps

TRTCVideoResolution_160_90 

建议码率150kbps

TRTCVideoResolution_256_144 

建议码率200kbps

TRTCVideoResolution_320_180 

建议码率250kbps

TRTCVideoResolution_480_270 

建议码率350kbps

TRTCVideoResolution_640_360 

建议码率550kbps

TRTCVideoResolution_960_540 

建议码率850kbps

TRTCVideoResolution_1280_720 

摄像头采集 - 建议码率1200kbps

屏幕分享 - 建议码率 低清:1000kbps 高清:1600kbps

TRTCVideoResolution_1920_1080 

屏幕分享 - 建议码率2000kbps

◆ TRTCVideoResolutionMode

视频分辨率模式

- 横屏分辨率:TRTCVideoResolution_640_360 + TRTCVideoResolutionModeLandscape = 640 × 360

- 竖屏分辨率:TRTCVideoResolution_640_360 + TRTCVideoResolutionModePortrait = 360 × 640

枚举值
TRTCVideoResolutionModeLandscape 

横屏分辨率

TRTCVideoResolutionModePortrait 

竖屏分辨率

◆ TRTCVideoRotation

enum TRTCVideoRotation
strong

视频画面旋转方向

TRTC SDK 提供了对本地和远程画面的旋转角度设置 API,下列的旋转角度都是指顺时针方向的。

枚举值
TRTCVideoRotation0 

顺时针旋转0度

TRTCVideoRotation90 

顺时针旋转90度

TRTCVideoRotation180 

顺时针旋转180度

TRTCVideoRotation270 

顺时针旋转270度

◆ TRTCVideoStreamType

enum TRTCVideoStreamType
strong

视频流类型

TRTC 内部有三种不同的音视频流,分别为:

-主画面:最常用的一条线路,一般用来传输摄像头的视频数据。

-小画面:跟主画面的内容相同,但是分辨率和码率更低。

-辅流画面:一般用于屏幕分享或远程播片(例如老师播放视频给学生观看)。

  • 如果主播的上行网络和性能比较好,则可以同时送出大小两路画面。

- SDK 不支持单独开启小画面,小画面必须依附于主画面而存在。

枚举值
TRTCVideoStreamTypeBig 

主画面视频流

TRTCVideoStreamTypeSmall 

小画面视频流

TRTCVideoStreamTypeSub 

辅流(屏幕分享)

◆ TRTCWaterMarkSrcType

enum TRTCWaterMarkSrcType
strong

水印图片的源类型

枚举值
TRTCWaterMarkSrcTypeFile 

【字段含义】 图片文件路径,支持 BMP、GIF、JPEG、PNG、TIFF、Exif、WMF 和 EMF 文件格式

TRTCWaterMarkSrcTypeBGRA32 

【字段含义】 BGRA32格式内存块

TRTCWaterMarkSrcTypeRGBA32 

【字段含义】 RGBA32格式内存块