数据类型
本章节列出了全平台C++ SDK的所有数据类型,您可以结合IHRTCEngine接口和回调进行开发。
类型 | 描述 |
|---|---|
日志信息 | |
用户信息 | |
端到端加密参数 | |
相机参数 | |
入会参数 | |
卡顿统计信息 | |
视频编码分辨率 | |
本地视频流信息 | |
远端视频流信息 | |
本地音频流信息 | |
远端音频流信息 | |
跨房信息 | |
媒体数据 | |
视频帧 | |
音频帧 | |
发言人音量信息 | |
网络探测参数配置 | |
网络探测结果参数 | |
网络探测结果 | |
流类型 | |
大小流模式流类型 | |
图像填充模式 | |
媒体类型 | |
用户角色 | |
日志级别 | |
网络连接状态 | |
网络状态变化原因 | |
系统音视频设备设备类型 | |
系统音视频设备设备状态 | |
离开房间原因 | |
视频帧图片存储格式 | |
视频帧缓冲区存储类型 | |
视频帧图片格式 | |
音频帧格式 | |
远端音频状态 | |
远端音频状态变化原因 | |
远端视频状态 | |
远端视频状态变化原因 | |
镜像模式 | |
数据源方向 | |
网络探测状态之成功与否 | |
网络质量信号等级 | |
常量说明 | |
摄像头参数 | |
声音播放模式 | |
远端流视图 | |
视频流旋转角度 | |
方向(横竖屏) | |
捕获的共享屏幕图像类型 | |
捕获的共享屏幕资源信息 | |
其他共享屏幕的可选补充信息 | |
共享类型 | |
区域共享的自定义位置(要求有效矩形) | |
辅流编码参数 | |
本地音频状态 | |
本地音频状态变化原因 | |
本地视频状态 | |
本地本地视频状态变化原因 | |
网络质量信息 | |
媒体连接状态类型 | |
媒体连接状态改变原因 | |
远端音频模式 | |
视频编码分辨率比例模式 | |
引擎初始化配置 | |
访问区域 | |
统计回调 | |
音频播放状态 | |
音频播放状态改变原因 | |
音视频自动选看和订阅选项 | |
SFU类型 | |
rtmp推流url列表 | |
rtmp推流参数结构体 | |
rtmp推流回调url状态列表 | |
模型类型 | |
音频设备测试回调数据 | |
正在共享的目标发生改变回调数据 | |
获取的缩略图数据分辨率 | |
带宽设置参数 | |
麦克风设备状态 | |
跨房配置 | |
源房间信息 | |
目标房间信息 | |
跨房状态 | |
跨房状态码 |
HRTCLogConfig
函数&属性 | 描述 |
|---|---|
HRTCLogLevel level | 日志级别,具体请参见HRTCLogLevel。
默认级别为DEBUG。 |
const char* path | 日志路径,长度不超过MAX_LOG_PATH_LEN =226。默认路径为当前程序目录“\\rtcLog”。 |
HRTCUserInfo
函数&属性 | 描述 |
|---|---|
HRTCRoleType roleType | 用户角色,具体请参见HRTCRoleType。 |
const char* userId | 用户ID,用户标识,长度不超过HRTC_MAX_USERID_LEN,支持64个字节的大小写字母、数字、下划线(_)中划线(-)随机组合。 |
const char* userName | 用户昵称,用户标识,长度不超过HRTC_MAX_USERNAME_LEN。 |
const char* signature | 鉴权签名字串。 |
long long ctime | UTC时间戳, 单位:秒。 |
const char* optionInfo | 预留字段,optionalInfo是一个KV的JSON字串,可选。例如:[{key:param1,value:value1},{key:param2,value:value2}] |
HRTCEncryptionConfig
函数&属性 | 描述 |
|---|---|
cryptionMode | HRTCCryptionMode,加密模式 |
suiteType | HRTCSuiteType,加密算法,仅模式HRTC_CRYPTO_AUTHENTICATION_SDK需要 |
cryptionSec | char *,加密密钥,仅模式HRTC_CRYPTO_AUTHENTICATION_SDK需要设置。必须是字符长度大于等于32位的16进制字符串。 |
secFormat | HRTCCryptionSecFormat,密钥格式,当前只支持16进制字符串。 |
HRTCCryptionMode
枚举值 | 描述 |
|---|---|
HRTC_CRYPTO_DEFAULT | 不开启端到端加密,此时srtp认证(包校验)+加密。 |
HRTC_CRYPTO_AUTHENTICATION_SDK | 开启端到端加密,srtp只认证(包校验),sdk内部加密,必须配置key。 |
HRTC_CRYPTO_AUTHENTICATION_APP | 开启端到端加密,srtp只认证(包校验),应用层加密,需注册回调。 |
HRTCCameraDirection
枚举值 | 描述 |
|---|---|
HRTC_CAMERA_REAR | 后置摄像头。 |
HRTC_CAMERA_FRONT | 前置摄像头。 |
HRTCJoinParam
函数&属性 | 描述 |
|---|---|
HRTCRoleType userRole | 用户角色,具体请参见HRTCRoleType。 |
const char* userId | 用户ID,用户标识,长度不超过HRTC_MAX_USERID_LEN,支持64个字节的大小写字母、数字、下划线(_)中划线(-)随机组合。 |
const char* userName | 用户昵称,用户标识,长度不超过HRTC_MAX_USERNAME_LEN。 |
const char* authorization | |
long long ctime | UTC时间戳, 单位:秒。 |
const char* optionInfo | 预留字段,optionalInfo是一个KV的JSON字串,可选。例如,[{key:param1,value:value1},{key:param2,value:value2}] |
const char* roomId | 房间号,支持最大长度64,支持数字、字母大小写、下划线、中线字符。 |
bool autoSubscribeAudio | 是否自动订阅音频。 |
bool autoSubscribeVideo | 是否自动订阅视频。 |
HRTCRemoteAudioMode scenario | 使用的场景,具体请参见HRTCRemoteAudioMode。
|
HRTCDeviceInfo
函数&属性 | 描述 |
|---|---|
char deviceName[HRTC_MAX_DEVICE_NAME_LEN+ 1] | 设备名称 |
char deviceId[HRTC_MAX_DEVICE_ID_LEN+ 1] | 设备id |
HRTCStatsInfo
函数&属性 | 描述 |
|---|---|
long long mildlyFrozenCounts | 600ms卡顿次数。 |
long long severelyFrozenCounts | 超过1s卡顿次数。 |
long long totalMildlyFrozenTime; | 600ms卡顿总时长。 |
long long totalSeverelyFrozenTime | 1s卡顿总时长。 |
long long totalActiveTime | 总时间,包括每一路选看时间总和。 |
HRTCVideoEncParam
函数&属性 | 描述 |
|---|---|
HRTCStreamType streamType; | 视频编码分辨率选择。具体请参见HRTCStreamType。 |
int width; | 视频宽,根据HRTCStreamType和不同分辨率下码率帧率推荐值设置需要的分辨率和宽高比 |
int height; | 视频高,根据HRTCStreamType和不同分辨率下码率帧率推荐值设置需要的分辨率和宽高比 |
int frameRate; | 视频帧率,可以参考不同分辨率下码率帧率推荐值和7.4.12-表14 不同场景下帧率和码率的推荐值进行设置 |
int minFrameRate; | 视频最小帧率,大于0,小于frameRate |
int bitrate; | 视频码率,可以参考不同分辨率下码率帧率推荐值和7.4.12-表14 不同场景下帧率和码率的推荐值进行设置 |
int minBitrate; | 视频最小码率,大于0,小于bitrate |
bool disableAdjustRes; | 表示上行流是否分辨率自适应,推荐开启自适应(即disableAdjustRes赋false) |
分辨率 | 分辨率类型 | 比例 | 最小帧率(fps) | 最大帧率(fps) | 最小码率 | 最大码率 |
|---|---|---|---|---|---|---|
320 X 180 | SD | 16:9 | 10 | 30 | 80 | 600 |
480 X 270 | HD | 16:9 | 10 | 30 | 160 | 1050 |
640 X 360 | HD | 16:9 | 10 | 30 | 200 | 1700 |
800 X 450 | FHD | 16:9 | 10 | 30 | 300 | 2100 |
960 X 540 | FHD | 16:9 | 10 | 30 | 400 | 2400 |
1120 X 630 | FHD | 16:9 | 10 | 30 | 450 | 2800 |
1280 X 720 | FHD | 16:9 | 10 | 30 | 500 | 4000 |
120 X 90 | LD | 4:3 | 10 | 30 | 64 | 240 |
160 X 120 | SD | 4:3 | 10 | 30 | 64 | 270 |
240 X 180 | SD | 4:3 | 10 | 30 | 80 | 450 |
320 X 240 | HD | 4:3 | 10 | 30 | 100 | 600 |
400 X 300 | HD | 4:3 | 10 | 30 | 200 | 900 |
480 X 360 | HD | 4:3 | 10 | 30 | 200 | 1000 |
640 X 480 | FHD | 4:3 | 10 | 30 | 250 | 1800 |
960 X 720 | FHD | 4:3 | 10 | 30 | 450 | 3000 |
分辨率 | 推荐帧率 | 通信场景推荐码率 | 直播场景推荐码率 |
|---|---|---|---|
320 X 180 | 15 | 200 | 400 |
480 X 270 | 15 | 350 | 700 |
640 X 360 | 15 | 450 | 900 |
640 X 360 | 30 | 850 | 1700 |
800 X 450 | 15 | 700 | 1400 |
800 X 450 | 30 | 1050 | 2100 |
960 X 540 | 15 | 850 | 1700 |
960 X 540 | 30 | 1200 | 2400 |
1120 X 630 | 15 | 950 | 1900 |
1120 X 630 | 30 | 1400 | 2800 |
1280 X 720 | 15 | 1200 | 2400 |
1280 X 720 | 30 | 2000 | 4000 |
120 X 90 | 15 | 80 | 160 |
160 X 120 | 15 | 90 | 180 |
240 X 180 | 15 | 150 | 300 |
320 X 240 | 15 | 200 | 400 |
400 X 300 | 15 | 300 | 600 |
480 X 360 | 15 | 350 | 700 |
480 X 360 | 30 | 500 | 1000 |
640 X 480 | 15 | 600 | 1200 |
640 X 480 | 30 | 900 | 1800 |
960 X 720 | 15 | 1000 | 2000 |
960 X 720 | 30 | 1500 | 3000 |
HRTCLocalVideoStats
属性 | 描述 |
|---|---|
int width | 视频宽 |
int height | 视频高 |
int bitRate | 视频码率 |
int frameRate | 视频帧率,单位:fps |
int packetLoss | 视频丢包率 |
int delay | 时延,单位:ms |
int jitter | 抖动 |
int sendFrameRate | 实际发送帧率,单位:fps |
HRTCRemoteVideoStats
属性 | 描述 |
|---|---|
char userId[HRTCConstant::HRTC_MAX_USERID_LEN + 1]; | 远端用户ID |
int width | 视频宽 |
int height | 视频高 |
int bitRate | 视频码率 |
int frameRate | 视频帧率,单位:fps |
int packetLoss | 视频丢包率 |
int delay | 时延,单位:ms |
int jitter | 抖动 |
int rendererOutputFrameRate | 渲染帧率,单位:fps |
int totalFrozenTime | 远端用户在加入房间后到离开房间前,发生视频卡顿的累计时长,单位:ms |
int frozenRate | 远端用户在加入房间后到离开房间前,发生视频卡顿的累计时长占视频总有效时长的百分比 |
HRTCLocalAudioStats
属性 | 描述 |
|---|---|
int sampleRate | 音频采样率 |
int channels | 音频频道数 |
int bitRate | 音频码率 |
int packetLoss | 音频丢包率 |
int delay | 时延,单位:ms |
int jitter | 抖动 |
HRTCRemoteAudioStats
属性 | 描述 |
|---|---|
char userId[HRTCConstant::HRTC_MAX_USERID_LEN + 1] | 远端用户ID |
int sampleRate | 音频采样率 |
int channels | 音频频道数 |
int bitRate | 音频码率 |
int packetLoss | 音频丢包率 |
int delay | 时延,单位:ms |
int jitter | 抖动 |
int totalFrozenTime | 远端用户在加入房间后到离开房间前,发生音频卡顿的累计时长,单位:ms |
int frozenRate | 远端用户在加入房间后到离开房间前,发生音频卡顿的累计时长占音频总有效时长的百分比 |
HRTCConnectInfo
函数&属性 | 描述 |
|---|---|
char roomId[HRTCConstant::HRTC_MAX_ROOMID_LEN + 1] | 跨房房间号 |
HRTCRoleType role | 跨房时角色,具体请参见HRTCRoleType。 |
HRTCVideoFrame
函数&属性 | 描述 |
|---|---|
HRTCVideoImageFormat format | 视频格式,具体请参见HRTCVideoImageFormat。 |
unsigned int width | 视频宽 |
unsigned int height | 视频高 |
unsigned char* data | 每帧视频数据 |
unsigned int dataLen | 每帧视频数据大小。例如,I420格式数据,dataLen =1.5 * width * heigh。 |
HRTCAudioFrame
函数&属性 | 描述 |
|---|---|
HRTCAudioFrameType frameType | 音频格式,具体请参见HRTCVideoImageFormat。 |
int sampleRate | 音频采样率 |
int samplesPerSec | 每秒采样数 |
int bytesPerSample | 每个采样点占用字节数 |
int channels | 声道数 |
unsigned char* data | 音频数据 |
unsigned int dataLen | 音频数据大小 |
HRTCVolumeInfo
函数&属性 | 描述 |
|---|---|
char userId[HRTCConstant::HRTC_MAX_USERID_LEN + 1] | 远端用户ID |
unsigned int volume; | 音量 |
HRTCNetworkTestConfig
函数&属性 | 描述 |
|---|---|
char* userId; | 网络探测,用户。 |
char* roomId; | 网络探测,房间号,建议用userId+随机数。 |
char* signature; | 网络探测,鉴权签名字串。 |
long long ctime; | 网络探测,UTC时间戳, 单位:秒。 |
int enableUplinkTest; | 网络探测,开启上行探测。 |
int enableDownlinkTest; | 网络探测,开启下行探测。 |
unsigned int expectedUplinkBitrate; | 用户期望的最高发送码率,单位为bps,范围为0以及[100000, 5000000],设为0表示由SDK指定最高码率。 |
unsigned int expectedDownlinkBitrate; | 用户期望的最高接收码率,单位为bps,范围为0以及[100000, 5000000],设为0表示由SDK指定最高码率。 |
HRTCNetworkTestResult
枚举值 | 描述 |
|---|---|
HRTCNetworkTestState | 网络探测状态,具体请参见HRTCNetworkTestState。 |
HRTCNetworkTestResultParam | 上行流测试结果,具体请参见HRTCNetworkTestResultParam。 |
HRTCNetworkTestResultParam | 下行流测试结果,具体请参见HRTCNetworkTestResultParam。 |
HRTCStreamType
枚举值 | 描述 |
|---|---|
HRTC_STREAM_TYPE_SD | 标清 |
HRTC_STREAM_TYPE_HD | 高清 |
HRTC_STREAM_TYPE_FHD | 全高清 |
HRTC_STREAM_TYPE_THD | 真高清 |
HRTCVideoStreamType
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_STREAM_TYPE_BIG | 大小流模式选看分辨率:大流类型。 |
HRTC_VIDEO_STREAM_TYPE_SMALL | 大小流模式选看分辨率:小流类型。 |
HRTCVideoDisplayMode
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_DISPLAY_MODE_FIT | 黑边模式,通过填充黑边的方式保持宽高比。 |
HRTC_VIDEO_DISPLAY_MODE_HIDDEN | 裁剪模式,通过裁剪的方式保持宽高比。 |
HRTC_VIDEO_DISPLAY_MODE_FILL | 缩放模式,缩放和拉伸视频尺寸以充满显示视窗。 |
HRTCRoleType
枚举值 | 描述 |
|---|---|
HRTC_ROLE_TYPE_JOINER | joiner角色,双向流角色,例如主播加入。 |
HRTC_ROLE_TYPE_PLAYER | player角色,接收流角色,例如观众。 |
HRTCLogLevel
枚举值 | 描述 |
|---|---|
HRTC_LOG_LEVEL_ERROR | 输出ERROR级别日志。 |
HRTC_LOG_LEVEL_WARNING | 输出WARNING级别日志。 |
HRTC_LOG_LEVEL_INFO | 输出INFO级别日志。 |
HRTC_LOG_LEVEL_DEBUG | 输出DEBUG级别日志。 |
HRTCConnStateTypes
枚举值 | 描述 |
|---|---|
HRTC_CONN_DISCONNECTED | 连接断开。 |
HRTC_CONN_CONNECTING | 建立网络连接中。 |
HRTC_CONN_CONNECTED | 网络连接成功。 |
HRTC_CONN_RECONNECTING | 重新建立网络连接中。 |
HRTC_CONN_FAILED | 网络连接失败。 |
HRTCConnChangeReason
枚举值 | 描述 |
|---|---|
HRTC_CONN_CHANGED_CONNECTING | 正在连接。 |
HRTC_CONN_CHANGED_JOIN_SUCCESS | 加入房间成功。 |
HRTC_CONN_CHANGED_RECONNECTING | 重连中。 |
HRTC_CONN_CHANGED_RECONNECT_SUCCESS | 重连成功。 |
HRTC_CONN_CHANGED_JOIN_FAILED | 加入房间失败。 |
HRTC_CONN_CHANGED_RECONNCET_FAILED | 重连失败。 |
HRTC_CONN_CHANGED_INTERRUPTED | 连接中断。 |
HRTC_CONN_CHANGED_KEEP_ALIVE_TIMEOUT | 心跳超时。 |
HRTC_CONN_CHANGED_LEAVE_ROOM | 主动离开房间。 |
HRTC_CONN_CHANGED_JOIN_ROOM_SERVER_ERROR | 服务器异常。 |
HRTC_CONN_CHANGED_SFU_BREAKDOWN | sfu服务故障。 |
HRTC_CONN_CHANGED_JOIN_ROOM_AUTH_FAILED | 鉴权失败,appid或者签名错误。 |
HRTC_CONN_CHANGED_JOIN_ROOM_AUTH_RETRY | 鉴权重试。 |
HRTC_CONN_CHANGED_JOIN_ROOM_AUTH_CLOCK_SYNC | 时钟同步。 |
HRTC_CONN_CHANGED_JOIN_ROOM_URL_NOT_RIGHT | URL错误400。 |
HRTC_CONN_CHANGED_JOIN_ROOM_SERVICE_UNREACHABLE | 服务不可达503。 |
HRTC_CONN_CHANGED_INTERNAL_ERROR | 内部错误。 |
HRTC_CONN_CHANGED_KICKED_OFF | 被踢出房间。 |
HRTC_CONN_CHANGED_SIGNATURE_EXPIRED | 签名过期。 |
HRTC_CONN_REASON_USER_REMOVED | 用户移除。 |
HRTC_CONN_REASON_ROOM_DISMISSED | 房间解散。 |
HRTC_CONN_CHANGED_REGION_NOT_COVERED | 区域未覆盖,所在区域不能提供SparkRTC服务。 |
HRTCDeviceType
枚举值 | 描述 |
|---|---|
HRTC_DEVTYPE_AUDIO_PLAYBACK | 音频播放设备。 |
HRTC_DEVTYPE_AUDIO_RECORDING | 音频录制设备。 |
HRTC_DEVTYPE_VIDEO_CAPTURE | 视频采集设备。 |
HRTCDeviceState
枚举值 | 描述 |
|---|---|
HRTC_DEVICE_STATE_ACTIVE | 激活状态,设备可用。 |
HRTC_DEVICE_STATE_DISABLED | 设备禁用。 |
HRTC_DEVICE_STATE_UNPLUGGED | 设备拔出。 |
HRTCLeaveReason
枚举值 | 描述 |
|---|---|
HRTC_LEAVE_REASON_USER_LEAVE_ROOM | 用户主动离开。 |
HRTC_LEAVE_REASON_SERVER_ERROR | 服务器异常。 |
HRTC_LEAVE_REASON_BREAKDOWN | sfu服务故障。 |
HRTC_LEAVE_REASON_SERVICE_UNREACHABLE | 服务不可达。 |
HRTC_LEAVE_REASON_INTERNAL_ERROR | 内部错误。 |
HRTC_LEAVE_REASON_KICKED_OFF | 被踢。 |
HRTC_LEAVE_REASON_SIGNATURE_EXPIRED | 签名过期。 |
HRTC_LEAVE_REASON_RECONNECT_FAILED | 重连超时。 |
HRTC_LEAVE_REASON_NETWORK_TEST | 网络探测结束,UI不用关注。 |
HRTC_LEAVE_REASON_USER_REMOVED | 用户移除 |
HRTC_LEAVE_REASON_ROOM_DISMISSED | 房间解散 |
HRTC_LEAVE_REASON_REGION_NOT_COVERED | 区域未覆盖,所在区域不能提供SparkRTC服务。 |
HRTCVideoImageFormat
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_IMAGE_FORMAT_YUV420P | YUV I420格式 |
HRTC_VIDEO_IMAGE_FORMAT_RGBA | RGBA格式 |
HRTC_VIDEO_IMAGE_FORMAT_2D | texture2d格式 (仅支持Android) |
HRTCVideoImageBufferType
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_IMAGE_BUFFER_BYTE_ARRAY | Array类型,对应HRTCVideoImageFormat的YUV、RGBA格式 |
HRTCImageBufferFormat
函数&属性 | 描述 |
|---|---|
HRTCVideoImageFormat format | 视频帧图片存储格式 |
HRTCVideoImageBufferType bufferType | 视频帧缓冲区存储类型 |
HRTCRemoteAudioStreamState
枚举值 | 描述 |
|---|---|
HRTC_REMOTE_AUDIO_STATE_STOPPED | 远端音频流关闭发送。 |
HRTC_REMOTE_AUDIO_STATE_STARTING | 远端音频流正常编码发送。 |
HRTC_REMOTE_AUDIO_STATE_FIRST_DECODED | 远端音频首包解码。 |
HRTCRemoteAudioStreamStateReason
枚举值 | 描述 |
|---|---|
HRTC_REMOTE_AUDIO_REASON_REMOTE_OFFLINE | 远端用户离线。 |
HRTC_REMOTE_AUDIO_REASON_REMOTE_MUTED | 远端用户停止音频流发送。 |
HRTC_REMOTE_AUDIO_REASON_REMOTE_UNMUTED | 远端用户开启音频流发送。 |
HRTC_REMOTE_AUDIO_REASON_REMOTE_FIRST_DECODED | 远端音频首包解码。 |
HRTCRemoteVideoStreamState
枚举值 | 描述 |
|---|---|
HRTC_REMOTE_VIDEO_STATE_STOPPED | 远端视频流关闭发送。 |
HRTC_REMOTE_VIDEO_STATE_DECODING | 远端视频流正常编码发送。 |
HRTCRemoteVideoStreamStateReason
枚举值 | 描述 |
|---|---|
HRTC_REMOTE_VIDEO_REASON_REMOTE_OFFLINE | 远端用户离线 |
HRTC_REMOTE_VIDEO_REASON_REMOTE_MUTED | 远端用户停止视频流发送 |
HRTC_REMOTE_VIDEO_REASON_REMOTE_UNMUTED | 远端用户开启视频流发送 |
HRTC_REMOTE_VIDEO_REASON_LOCAL_MUTED | 本端已取消选看远端视频流 |
HRTC_REMOTE_VIDEO_REASON_LOCAL_UNMUTED | 本端已开启选看远端视频流 |
HRTCVideoMirrorType
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_MIRROR_TYPE_AUTO | 移动端使用,Windows设置效果同HRTC_VIDEO_MIRROR_TYPE_DISABLE,关闭镜像。 |
HRTC_VIDEO_MIRROR_TYPE_ENABLE | 开启镜像。 |
HRTC_VIDEO_MIRROR_TYPE_DISABLE | 关闭镜像。 |
HRTCNetworkQualityLevel
枚举值 | 描述 |
|---|---|
HRTC_NETWORK_QUALITY_UNKNOWN=0 | 网络质量未知 |
HRTC_NETWORK_QUALITY_EXCELLENT | 网络质量非常好 |
HRTC_NETWORK_QUALITY_GOOD | 网络质量好 |
HRTC_NETWORK_QUALITY_POOR | 网络质量一般 |
HRTC_NETWORK_QUALITY_BAD | 网络质量差 |
HRTC_NETWORK_QUALITY_VBAD | 网络质量非常差 |
HRTCConstant
常量 | 值 |
|---|---|
int HRTC_MAX_DOMAIN_LEN | 119,域名长度。 |
int HRTC_MAX_APPID_LEN | 128,app_id长度。 |
int HRTC_MAX_LOG_PATH_LEN | 226,日志路径。 |
int HRTC_MAX_USERID_LEN | 128,用户ID。 |
int HRTC_MAX_USERNAME_LEN | 128,用户昵称。 |
int HRTC_MAX_ROOMID_LEN | 128,房间号。 |
int HRTC_MAX_SIGNATURE_LEN | 128,签名。 |
int HRTC_MAX_OPTION_INFO_LEN | 1024,预留。 |
int HRTC_MAX_CODEC_NAME_LEN | 64,编码详情。 |
int HRTC_MAX_DEVICE_NAME_LEN | 256,设备名称。 |
int HRTC_MAX_DEVICE_ID_LEN | 256,设备id。 |
HRTCRotationParam
属性 | 描述 |
|---|---|
int captureIndex |
|
int captureRotation |
|
int wndType | 保留参数,当前默认设置为1 |
int displayRotation |
|
HRTCVideoRemoteView
属性 | 描述 |
|---|---|
void* view | 窗口句柄 |
HRTCStreamType streamType | 流模式(LD/SD/HD/FHD/THD) |
const char* userId | 用户ID |
int disableAdjustRes | 是否自适应 |
HRTCStreamType minResolution | 自适应场景下,建议的最低选择档位 |
HRTCVideoRotation
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_ROTATION_0 | 不旋转 |
HRTC_VIDEO_ROTATION_1 | 逆时针旋转90度 |
HRTC_VIDEO_ROTATION_2 | 逆时针旋转180度 |
HRTC_VIDEO_ROTATION_3 | 逆时针旋转270度 |
HRTCVideoOrientation
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_ORIENTATION__LANSCAPE | 横屏 |
HRTC_VIDEO_ORIENTATION__PORTRAIT | 竖屏 |
HRTCScreenShareIconType
枚举值 | 描述 |
|---|---|
HRTC_SCREENSHARE_SMALL_ICON | 小图标类型 |
HRTC_SCREENSHARE_BIG_ICON | 大图标类型 |
HRTCScreenShareSourceInfo
属性 | 描述 |
|---|---|
void* sourceId | 采集源ID,如果是窗口共享,则为窗口句柄(HWND) |
char sourceName[HRTCConstant::HRTC_MAX_SOURCE_NAME_LEN + 1] | 采集源名称,如果是窗口共享,则为窗口对应名称 |
HRTCScreenShareType type | 共享类型,具体请参见HRTCScreenShareType |
void* icon | type是HRTC_WINDOW_CAPTURE才有效,返回类型是Windows资源类型HICON |
HRTCSrceenCaptureOptionalInfo
属性 | 描述 |
|---|---|
bool disableCaptureMouse | 是否禁止鼠标采集,默认false采集鼠标 |
HRTCRect rect | 程序共享下支持区域共享,宽不能超过1920高度不能超过1080,最小宽不能小于320,高度不能小于240,共享前设置,区域要求是固定的,具体请参见HRTCRect |
HRTCRect
枚举值 | 描述 |
|---|---|
unsigned int left | 自共享对象(屏幕或窗口)左上角起取的坐标,上下左右要求构成一个有效矩形(Rect),方可实现自定义区域共享 |
unsigned int top | |
unsigned int right | |
unsigned int bottom |
HRTCVideoAuxiliaryEncParam
属性&函数 | 描述 |
|---|---|
int frameRate | 帧率,推荐帧率15。 |
int width | 宽 |
int height | 高 |
int bitrate | 码率,可以参考7.4.12-表13 不同分辨率下帧率和码率的推荐值和7.4.12-表14 不同场景下帧率和码率的推荐值进行设置 |
HRTCLocalAudioStreamState
枚举值 | 描述 |
|---|---|
HRTC_LOCAL_AUDIO_STATE_STOPPED | 本地音频流默认初始状态 |
HRTC_LOCAL_AUDIO_STATE_RECORDING | 本地音频流录制设备启动成功 |
HRTC_LOCAL_AUDIO_STATE_FAILED | 本地音频流启动失败 |
HRTCLocalAudioStreamStateReason
枚举值 | 描述 |
|---|---|
HRTC_LOCAL_AUDIO_REASON_ERROR_OK | 本地音频流状态正常 |
HRTC_LOCAL_AUDIO_REASON_ERROR_FAILURE | 本地音频流出错原因不明确 |
HRTC_LOCAL_AUDIO_REASON_ERROR_RECORD_FAILURE | 本地音频流录制失败,建议您检查录制设备是否正常工作 |
HRTC_LOCAL_AUDIO_REASON_ERROR_STOP_FAILURE | 关闭采集失败 |
HRTC_LOCAL_AUDIO_REASON_ERROR_ACCESS_DENIED | 音频设备无法访问,可能是设备隐私权限设置问题 |
HRTC_LOCAL_AUDIO_REASON_ERROR_ON_EXCLUSIVE_MODE | 音频设备处于独占模式,且被其他应用独占,可以通知用户取消独占模式 |
HRTC_LOCAL_AUDIO_REASON_ERROR_ENDPOINT_CREATE_FAILED | 音频设备终端创建失败,音频设备被拔出,或者已重新配置,禁用,删除了音频硬件或关联的硬件资源不可用。使用其他音频设备,重启或者更新驱动(仅适用于Windows) |
HRTC_LOCAL_AUDIO_REASON_ERROR_MMSYSERR_INVALPARAM | 音频设备API非法参数,目前已知是杀毒软件导致(仅适用于Windows) |
HRTC_LOCAL_AUDIO_REASON_ERROR_MMSYSERR_NODRIVER | 音频设备API返回无驱动,需要用户升级驱动(仅适用于Windows) |
HRTC_LOCAL_AUDIO_REASON_ERROR_AUDIO_SERVER_NOT_RUNNING | 用户windows audio服务未启动,或者启动失败(仅适用于Windows) |
HRTC_LOCAL_AUDIO_REASON_ERROR_NO_DEVICE | 没有设备(仅适用于Windows) |
HRTC_LOCAL_AUDIO_REASON_ERROR_RESTART_FAILED | 扬声器播放无数据,重启失败 |
HRTCLocalVideoStreamState
枚举值 | 描述 |
|---|---|
HRTC_LOCAL_VIDEO_STATE_STOPPED | 本地视频流默认初始状态 |
HRTC_LOCAL_VIDEO_STATE_CAPTURING | 本地视频流采集设备启动成功 |
HRTC_LOCAL_VIDEO_STATE_FAILED | 本地视频流启动失败 |
HRTCLocalVideoStreamStateReason
枚举值 | 描述 |
|---|---|
HRTC_LOCAL_VIDEO_REASON_ERROR_OK | 本地视频流状态正常 |
HRTC_LOCAL_VIDEO_REASON_ERROR_FAILURE | 本地视频流出错原因不明确 |
HRTC_LOCAL_VIDEO_REASON_ERROR_CAPTURE_FAILURE | 本地视频流录制失败,建议您检查录制设备是否正常工作 |
HRTC_LOCAL_VIDEO_REASON_ERROR_STOP_FAILURE | 关闭采集失败 |
HRTC_LOCAL_VIDEO_REASON_ERROR_CAPTURE_DEVICE_NO_PERMISSION | 没有摄像头权限 |
HRTC_LOCAL_VIDEO_REASON_ERROR_CAPTURE_DEVICE_BUSY | 摄像头设备已占用 |
HRTC_LOCAL_VIDEO_REASON_ERROR_CAPTURE_APP_IN_BACKGROUND | 应用处于后台,仅适用Android和iOS |
HRTC_LOCAL_VIDEO_REASON_ERROR_CAPTURE_OPEN_CAMERA_FAILED | 打开摄像头设备失败 |
HRTC_LOCAL_VIDEO_REASON_ERROR_CAPTURE_MULTIPLE_FOREGROUND_APP | 应用窗口处于侧拉、分屏、画中画模式(仅适用于iOS) |
HRTC_LOCAL_VIDEO_REASON_ERROR_CAPTURE_DEVICE_DISCONNECTED | 本地视频采集设备未连接(仅适用Windows和macOS) |
HRTCQualityInfo
属性 | 描述 |
|---|---|
char userId[HRTCConstant::HRTC_MAX_USERID_LEN + 1] | 用户ID |
int width | 宽 |
int height | 高 |
HRTCNetworkQualityLevel level | 网络质量等级 |
HRTCMediaType mediaType | 媒体流类型 |
HRTCMediaConnStateTypes
枚举值 | 描述 |
|---|---|
HRTC_MEDIA_CONN_CONNECTED | 与媒体服务器连接成功 |
HRTC_MEDIA_CONN_FAILED | 与媒体服务器建链失败 |
HRTCMediaConnChangeReason
枚举值 | 描述 |
|---|---|
HRTC_MEDIA_CONN_CHANGED_CONNECTED | 连接成功 |
HRTC_MEDIA_CONN_CHANGED_NAT_FAILED | 与媒体服务器NAT未打通 |
HRTCRemoteAudioMode
枚举值 | 描述 |
|---|---|
HRTC_REMOTE_AUDIO_SUBSCRIBED =0 | 订阅模式(自主订阅) |
HRTC_REMOTE_AUDIO_TOP_THREE =1 | TopN模式(收音量最大的三路流) |
HRTC_REMOTE_AUDIO_P2P =2 | P2P模式 |
HRTC_REMOTE_AUDIO_RTSA_CMD =3 | RTSA-CMD模式 |
HRTCVideoEncodeResolutionMode
枚举值 | 描述 |
|---|---|
HRTC_VIDEO_ENCODE_RESOLUTION_MODE_NONE =0 | 不固定比例 |
HRTC_VIDEO_ENCODE_RESOLUTION_MODE_CONST_RATIO =1 | 固定比例 |
HRTCEngineConfig
HRTCNetProxyConfig
属性 | 描述 |
|---|---|
bool autoNetProxy | 是否开启自动代理 |
const char *address | 代理的地址 |
int port | 代理端口 |
const char *name | 代理认证的账号名 |
const char *pwd | 代理认证的账号密码 |
HRTCAreaCode
枚举值 | 描述 |
|---|---|
HRTC_AREA_CODE_GLOB | 全球(默认) |
HRTC_AREA_CODE_CN | 中国 |
HRTC_AREA_CODE_NA | 中北美 |
HRTC_AREA_CODE_SA | 拉美 |
HRTC_AREA_CODE_EU | 欧洲 |
HRTC_AREA_CODE_SEA | 东南亚 |
HRTC_AREA_CODE_AF | 非洲 |
HRTC_AREA_CODE_AS | 亚洲 |
HRTCSetupRemoteViewResult
属性&函数 | 描述 |
|---|---|
char userId[HRTCConstant::HRTC_MAX_USERID_LEN + 1] | 用户ID |
unsigned char result | 选看结果 |
int code | 状态码
|
char reason[HRTCConstant::HRTC_MAX_WATCH_RESULT_REASON_LEN + 1] | 原因描述 |
HRTCOnStats
属性 | 描述 |
|---|---|
double cpuAppUsage | app的cpu利用率 |
double cpuTotalUsage | cpu总利用率 |
unsigned int memoryAppUsageInKbytes | app占用内存 |
double memoryAppUsageRatio | app内存占用率 |
double memoryTotalUsageRatio | 总的内存利用率 |
int gatewayRtt | 到本地网关的延迟 |
unsigned long long sendBytes | 总的发送字节数 |
unsigned long long sendVideoBytes | 视频的发送字节数 |
unsigned long long sendAudioBytes | 音频的发送字节数 |
unsigned long long receiveBytes | 总的接收字节数 |
unsigned long long receiveVideoBytes | 视频的接收字节数 |
unsigned long long receiveAudioBytes | 音频的接收字节数 |
unsigned int sendBitRate | 总的发送比特率 |
unsigned int sendVideoBitRate | 视频的发送比特率 |
unsigned int sendAudioBitRate | 音频的发送比特率 |
unsigned int receiveBitRate | 总的接收比特率 |
unsigned int receiveVideoBitRate | 视频的接收比特率 |
unsigned int receiveAudioBitRate | 音频的接收比特率 |
unsigned int sendLossRate | 发送丢包率 |
unsigned int receiveLossRate | 接收丢包率 |
unsigned int lastmileDelay | 到服务器的延迟 |
HRTCAudioFileState
枚举值 | 描述 |
|---|---|
HRTC_AUDIO_FILE_OPEN_COMPLETED | 成功打开音频文件 |
HRTC_AUDIO_FILE_OPENING | 正在打开音频文件 |
HRTC_AUDIO_FILE_IDLE | 音频文件播放就绪 |
HRTC_AUDIO_FILE_PLAYING | 音频文件播放中 |
HRTC_AUDIO_FILE_PLAY_COMPLETED | 音频文件播放完成 |
HRTC_AUDIO_FILE_PAUSED | 音频文件暂停播放 |
HRTC_AUDIO_FILE_STOPPED | 音频文件停止播放 |
HRTC_AUDIO_FILE_FAILED | 音频文件播放失败 |
HRTC_AUDIO_FILE_POSITION_UPDATE | 音频文件播放进度更新 |
HRTC_AUDIO_FILE_STATE_UNKNOWN | 音频文件播放状态未知 |
HRTCAudioFileReason
枚举值 | 描述 |
|---|---|
HRTC_AUDIO_FILE_REASON_NONE | 没有错误 |
HRTC_AUDIO_FILE_REASON_URL_NOT_FOUND | 未找到URL |
HRTC_AUDIO_FILE_REASON_CODEC_NOT_SUPPORTED | 解码器不支持该编码 |
HRTC_AUDIO_FILE_REASON_INVALID_ARGUMENTS | 非法参数 |
HRTC_AUDIO_FILE_REASON_SRC_BUFFER_UNDERFLOW | 播放缓冲区数据不足 |
HRTC_AUDIO_FILE_REASON_INTERNAL | 内部错误 |
HRTC_AUDIO_FILE_REASON_INVALID_STATE | 播放器内部状态错误 |
HRTC_AUDIO_FILE_REASON_NO_RESOURCE | 没有该资源 |
HRTC_AUDIO_FILE_REASON_OBJ_NOT_INITIALIZED | 对象未初始化 |
HRTC_AUDIO_FILE_REASON_INVALID_CONNECTION_STATE | 播放器与服务器连接无效 |
HRTC_AUDIO_FILE_REASON_UNKNOWN_STREAM_TYPE | 未知的媒体流类型 |
HRTC_AUDIO_FILE_REASON_VIDEO_RENDER_FAILED | 渲染失败 |
HRTC_AUDIO_FILE_REASON_INVALID_MEDIA_SOURCE | 无效的媒体资源 |
HRTC_AUDIO_FILE_REASON_UNKNOWN | 状态未知 |
HRTCMediaOptions
属性 | 描述 |
|---|---|
bool autoSubscribeAudio | 自动订阅远端用户音频流 |
bool autoSubscribeVideo | 自动订阅远端用户视频流 |
HRTCMediaOptions() { autoSubscribeAudio =true; autoSubscribeVideo =true; } | 初始化构造默认true自动订阅和选看 |
HRTCAudioQualityLevel
枚举值 | 描述 |
|---|---|
HRTC_AUDIO_QUALITY_LEVEL_DEFAULT | 默认值,表示使用采样率16KHZ、单声道、编码码率最大值为30Kbps |
HRTCTranscodeConfig
属性 | 描述 |
|---|---|
HRTCRtmpConfig config | Rtmp推流通用配置,如码率等,具体请参见表85 |
HRTCRtmpUserInfo rtmpUserInfo[50] | Rtmp推流的用户流信息,具体请参见表86 |
属性 | 描述 |
|---|---|
int width | 旁路推流的输出视频流的总宽度,单位为px。默认值为360,取值范围为[64-1920] |
int height | 旁路推流的输出视频流的总高度,单位为px。默认值为640,取值范围为[64-1920] |
int videoBitrate | 旁路推流的输出视频的码率,单位为Kbps。默认值为400Kbps,取值范围为[32-2760] |
int videoFramerate | 旁路推流的输出视频的帧率,单位为fps。默认值为15,取值范围为[10,30] |
int videoGop | 用于旁路直播的输出视频的GOP,单位为帧。默认值为30帧,取值范围为[1-300] |
int audioSampleRate | 用于旁路直播的输出音频的采样率,默认为16000,取值范围为[16000-96000] |
int audioBitrate | 旁路直播的输出音频的码率,单位为Kbps。默认值为48,最大值为128,取值范围为[1-128] |
int audioChannels | 旁路直播的输出音频的声道数,默认为1,取值范围为[1-5] |
int tmplate | 0表示悬浮,1表示九宫格,2表示屏幕分享,默认为0 |
属性 | 描述 |
|---|---|
char userId[64] | 用户id |
bool main | 是否推大流 |
bool slides | 是否推小流 |
bool desktop | 是否推桌面流 |
bool audio | 是否推音频流 |
属性 | 描述 |
|---|---|
int nSize | 数组大小 |
HRTCRtmpUserInfo rtmpUserInfo[50] | 结构体数组 |
HRTCUrlStatusList
属性 | 描述 |
|---|---|
char url[1025] | url字符串 |
int status | 状态码 |
int errCode | 错误码 |
属性 | 描述 |
|---|---|
int nSize | 数组大小 |
HRTCRtmpUrlInfo rtmpUrlInfo[5] | url状态数组,具体请参见表86 |
HRTCAudioOperateMode
属性 | 描述 |
|---|---|
enum HRTCAudioOperateMode.HRTC_AUDIO_OPERATE_READ_AND_WRITE | 可读可写模式 |
HRTCModelType
属性 | 描述 |
|---|---|
HRTC_MODEL_VOICE_ACTIVITY_DETECTION | 人声检测 |
HRTC_MODEL_VOICE_HOWLING_SUPPRESSION | 啸叫抑制 |
HRTCEngineContext
属性 | 类型 | 描述 |
|---|---|---|
engineConfig | HRTCEngineConfig | 引擎配置项,具体请参见HRTCEngineConfig。 |
logConfig | HRTCLogConfig | 日志配置项,具体请参见HRTCLogConfig。 |
eventHandler | IHRTCEngineEventHandler | 事件回调,具体请参见IHRTCEngineEventHandler。 |
HRTCLogConfig
属性 | 类型 | 描述 |
|---|---|---|
level | HRTCLogLevel | 日志级别,具体请参见HRTCLogLevel,默认值 HRTC_LOG_LEVEL_DEBUG,推荐使用HRTC_LOG_LEVEL_DEBUG。 |
path | const char * | 日志路径,需调用方保证路径合法可用,rtc仅做基础校验 |
logSize | int | 日志大小,默认值10M,推荐10M |
enable | bool | 日志开关 |
HWRtcGSensorMode
属性 | 描述 |
|---|---|
HWRtcGSensorModeDisable | 关闭重力感应 |
HWRtcGSensorModeUIAutoLayout | 开启重力感应 注意:SDK不会根据陀螺仪自动调整本地View的画面方向,而是需要您的APP开启了重力感应进行适配 |
HRTCBeautyOptions
属性 | 类型 | 描述 |
|---|---|---|
buffingLevel | float | 磨皮档位,取0-1浮点数,默认值为0.5,推荐使用默认值0.5 |
complexionAlpha | float | 肤色档位,取0-1浮点数,默认值为0.5,推荐使用默认值0.5 |
HRTCAudioDeviceTestVolumeNotify
属性 | 描述 |
|---|---|
recordVolume | 麦克风音量 |
playbackVolume | 扬声器音量 |
HRTCShareSourceInfoChangedType
属性 | 描述 |
|---|---|
HRTC_SHARE_SOURCE_INFO_CHANGED_DIALED_OUT | 正在共享的屏幕被拨出 |
HRTC_SHARE_SOURCE_INFO_CHANGED_RESOLUTION_CHANGE | 分辨率有变化 |
HRTC_SHARE_SOURCE_INFO_CHANGED_REGION_CHANGE | 区域有变化 |
HRTC_SHARE_SOURCE_INFO_CHANGED_NUM_REDUCE | 屏幕个数有减少 |
HRTC_SHARE_SOURCE_INFO_CHANGED_NUM_INCREASE | 屏幕个数有增加 |
HRTC_SHARE_SOURCE_INFO_CHANGED_IS_BLOCKED | 正在共享的窗口被遮挡了 |
HRTC_SHARE_SOURCE_INFO_CHANGED_CLOSE | 正在共享的窗口关闭了 |
HRTC_SHARE_SOURCE_INFO_CHANGED_MINIMIZE | 正在共享的窗口最小化了 |
HRTC_SHARE_SOURCE_INFO_CHANGED_VALID_AREA_LESS_THAN_96 | 窗口有效区域小于96 |
HRTCMultiRoomMediaRelayConfiguration
属性 | 类型 | 描述 |
|---|---|---|
srcRoomMediaInfo | 源房间的鉴权信息 | |
destRoomMediaInfo | 目的跨房的房间信息以及鉴权信息 |
HRTCSrcMultiRoomMediaInfo
属性 | 类型 | 描述 |
|---|---|---|
authorization | const char* | 源房间的鉴权信息 |
userId | const char* | 源房间的用户名 (必须为0) |
roomId | const char* | 源房间的房间号 |
ctime | long long | 鉴权时间信息 |
HRTCDstMultiRoomMediaInfo
属性 | 类型 | 描述 |
|---|---|---|
authorization | const char* | 目标跨房的鉴权信息 |
userId | const char* | 目标跨房的虚拟用户名 |
roomId | const char* | 目标跨房房间号 |
userRole | 跨房角色 | |
ctime | long long | 鉴权时间信息 |
HRTCMultiRoomMediaRelayState
属性 | 描述 |
|---|---|
HRTC_MULTI_ROOM_MEDIA_RELAY_STATE_IDLE | 就绪状态 |
HRTC_MULTI_ROOM_MEDIA_RELAY_STATE_CONNECTING | 正在连接 |
HRTC_MULTI_ROOM_MEDIA_RELAY_STATE_RUNNING | 主播成功加入目标房间 |
HRTC_MULTI_ROOM_MEDIA_RELAY_STATE_FAILURE | 发生异常 |
HRTCMultiRoomMediaRelayStateCode
属性 | 描述 |
|---|---|
HRTC_MULTI_ROOM_MEDIA_RELAY_OK | 正常状态 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_SERVER_NO_RESPONSE | 服务端无响应 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_INTERNAL_ERROR | 服务器内部出错 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_USER_OVER_LIMIT | 用户跨房超出限制数 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_OVER_LIMIT | 房间跨房用户超出限制数 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_REQ_EMPTY | 跨房请求消息体为空 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_OPERATION_CONFLICT | 跨房请求,加入和退出存在冲突 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_SRC_USERINFO_INVALID | 跨房请求原用户信息无效 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_WITH_ORI | 跨房房间与原用户房间相同 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_REPEAT | 跨房请求房间重复 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_USER_EXISTED | 跨房用户已存在 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_INVALID_REQUEST | 无效请求 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_ROOM_IS_NOT_EXIST | 房间不存在 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_FRAME_TYPE_NOT_EQUAL | 跨房源房间和目的房间加密模式不一致 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_AUTHENTICATION_FAILURE | 鉴权失败 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_REMOVE_INFO_NOT_EXIST | 退出跨房信息不存在 |
HRTC_MULTI_ROOM_MEDIA_RELAY_ERROR_EXCEPTION_STOP | 异常退出跨房 |

