更新时间:2024-10-24 GMT+08:00
分享

数据类型

本章节列出了Android SDK的所有数据类型,您可以结合HRtcEngine接口和回调进行开发。

表1 数据类型

类型

描述

HRTCLogInfo

日志信息

HRTCCameraConfig

相机配置

HRTCEncryptionConfig

端到端加密参数

HRTCUserInfo

用户信息

HRTCJoinParam

入会参数

HRTCStatsInfo

卡顿统计信息

HRTCVideoEncParam

视频编码参数列表

HRTCLocalVideoStats

本地视频流信息

HRTCLocalAudioStats

本地音频流信息

HRTCRemoteVideoStats

远端视频流信息

HRTCRemoteAudioStats

远端音频流信息

HRTCConnectInfo

跨房信息

HRTCVideoFrame

视频帧信息

HRTCAudioFrame

音频帧信息

HRTCFrameBuffer

媒体帧信息

HRTCLogLevel

日志级别

HRTCMediaType

媒体类型

HRTCSpeakerModel

声音播放模式

HRTCAudioRoute

音频路由

HRTCStreamType

流类型

HRTCRoleType

角色类型

HRTCVideoDisplayMode

图像填充模式

HRTCConnStateTypes

网络连接状态

HRTCConnChangeReason

网络连接状态发生变化原因

HRTCRotationType

辅流角度

HRTCVideoFrameFormat

视频格式

HRTCAudioFrameType

音频格式

HRTCLeaveReason

离开房间的原因

HRTCVideoMirrorType

镜像模式类型

HRTCRemoteAudioStreamStateReason

远端音频流状态发生变化原因

HRTCRemoteAudioStreamState

远端音频流状态

HRTCRemoteVideoStreamState

远端视频流状态

HRTCRemoteVideoStreamStateReason

远端视频流状态发生变化原因

HRTCVolumeInfo

发言人音量

HRTCNetworkTestConfig

网络探测参数

HRTCNetworkTestResult

网络探测结果数据

HRTCNetworkQualityLevel

网络质量级别

HRTCNetworkTestState

网络探测结果状态

HRTCNetworkTestResultParam

网络探测结果参数

HRTCMediaDirection

媒体方向指示

HRTCVideoStreamType

视频流类型

HWRtcVideoEncodeResolutionMode

视频编码比例模式

HRTCQualityInfo

网络质量信息

HRTCLocalAudioStreamStateReason

本地音频流状态发生变化原因

HRTCLocalAudioStreamState

本地音频流状态

HRTCLocalVideoStreamState

本地视频流状态

HRTCLocalVideoStreamStateReason

本地视频流状态发生变化原因

HRTCRemoteAudioMode

远端音频模式

HRTCMediaConnStateTypes

媒体服务器状态变更类型

HRTCMediaConnChangeReason

媒体连接状态变更原因

HRTCVideoAuxiliaryEncParam

辅流的编码参数

HRTCVideoImageBufferType

视频原始数据帧内图像数据类型

HRTCImageBufferFormat

视频原始数据格式类型

HRTCEngineConfig

引擎创建相关参数

HRTCAreaCode

服务器的访问区域

HRTCOnStats

会话统计信息

HRTCAudioFileState

音频文件播放状态

HRTCAudioFileReason

音频文件播放状态变化原因

HRTCMediaOptions

媒体选参

HRTCEngineContext

引擎初始化参数

HRTCLogConfig

日志配置参数

HRTCSfuType

SFU类型

HRTCDeviceType

系统音视频设备设备类型

HRTCDeviceState

系统音视频设备设备状态

HRTCUrlStatusList

rtmp推流回调url状态列表

HRTCVideoRemoteView

远端流视图

HRTCRemoteMicState

远端麦克风设备状态

HRTCMultiRoomMediaRelayConfiguration

跨房配置

HRTCSrcMultiRoomMediaInfo

源房间信息

HRTCDstMultiRoomMediaInfo

目标房间信息

HRTCMultiRoomMediaRelayState

跨房状态

HRTCMultiRoomMediaRelayStateCode

跨房状态码

HRTCLogInfo

表2 日志信息

属性

类型

描述

level

HRTCLogLevel

日志级别

path

String

日志存储路径

HRTCCameraConfig

表3 相机配置

属性

类型

描述

cameraDirection

HRTCCameraDirection

相机方向,只适合移动端选择(Android和iOS)

HRTCCameraDirection

表4 相机方向

枚举值

描述

HRTC_CAMERA_REAR

后置摄像头

HRTC_CAMERA_FRONT

前置摄像头

HRTCEncryptionConfig

表5 端到端加密参数

属性

类型

描述

cryptionMode

HRTCCryptionMode

加密模式

cryptionSec

String

加密密钥,仅sdk加密模式下需要设置。必须是长度大于等于32的16进制字符串。

suiteType

HRTCSuiteType

加密算法,当前仅支持HRTC_ENCRYPTION_128_CTR,sdk加密模式下需要设置

secFormat

HRTCCryptionSecFormat

密钥格式,当前只支持16进制字符串。

HRTCCryptionSecFormat

表6 密钥格式。

枚举值

描述

HRTC_HEX_STRING

默认模式,16进制字符串。当前只支持此格式。

HRTCCryptionMode

表7 端到端加密模式

枚举值

描述

HRTC_CRYPTO_DEFAULT

默认模式,srtp认证+加密

HRTC_CRYPTO_AUTHENTICATION_SDK

sdk加密,srtp认证

HRTC_CRYPTO_AUTHENTICATION_APP

app层加密,srtp认证

HRTCUserInfo

表8 用户信息

属性

类型

描述

userId

String

用户ID

userName

String

用户名,UTF-8编码格式,可选。

ctime

long

签名时间戳,单位秒,有signature时必选。

signature

String

签名,可选,具体生成方法请参见接入鉴权

role

HRTCRoleType

角色

optionalInfo

String

可选JSON字串[{key:param1,value:value1},{key:param2,value:value2}]

HRTCJoinParam

表9 入会参数

属性

类型

描述

userId

String

用户ID,支持最大长度64,支持数字、字母大小写、下划线、中线、"."字符。

userName

String

用户名,UTF-8编码格式,可选,支持最大长度128。

ctime

long

签名时间戳,单位秒,有signature时必选。

authorization

String

签名,必填,鉴权私钥请在应用管理中获取。签名的具体生成方法请参见接入鉴权。支持最大长度为1024。

role

HRTCRoleType

角色。

optionalInfo

String

可选JSON字串[{key:param1,value:value1},{key:param2,value:value2}]

roomId

String

房间Id,支持最大长度64,支持数字、字母大小写、下划线、中线字符。

autoSubscribeVideo

boolean

是否自动订阅视频。

autoSubscribeAudio

boolean

是否自动订阅音频。

scenario

HRTCRemoteAudioMode

使用的场景。

  • 0:主动订阅(默认)。
  • 1:TopN(千人)。
  • 2:P2P。
  • 3:RTSA CMD自动订阅。

HRTCDeviceType

表10 系统音视频设备类型

枚举值

描述

HRTC_DEVTYPE_AUDIO_PLAYBACK

音频播放设备。

HRTC_DEVTYPE_AUDIO_RECORDING

音频录制设备。

HRTC_DEVTYPE_VIDEO_CAPTURE

视频采集设备。

HRTCStatsInfo

表11 统计信息

属性

类型

描述

mildlyFrozenCounts

long

600ms卡顿次数

severelyFrozenCounts

long

超过1s卡顿次数

totalMildlyFrozenTime

long

600ms卡顿总时长

totalSeverelyFrozenTime

long

1s卡顿总时长

totalActiveTime

long

总时间,包括每一路选看的视频流启动到停止的时间总和

HRTCVideoEncParam

表12 视频编码参数属性说明

属性

类型

描述

streamType

HRTCStreamType

视频流类型,根据HRTCStreamType表14 不同分辨率下帧率和码率的推荐值设置需要的分辨率和宽高比

width

int

视频宽度

height

int

视频高度

frameRate

int

视频帧率,可参考表14中的帧率进行设置

minFrameRate

int

视频最小帧率,大于等于0,小于等于frameRate

bitRate

int

视频码率,可参考表14中的码率进行设置

minBitrate

int

视频最小码率,大于等于0,小于等于bitrate

表13 视频编码参数方法说明

方法

描述

public HRTCVideoEncParam(HRTCStreamType streamType, int width, int height, int frameRate, int minFrameRate, int bitrate, int minBitrate);

【功能说明】

HRTCVideoEncParam构造函数。

【请求参数】

  • streamType:视频流类型,具体请参见HRTCStreamType
  • width:视频宽度。
  • height:视频高度。
  • frameRate:视频帧率。
  • minFrameRate:视频最小帧率。
  • bitrate:视频码率。
  • minBitrate:视频最小码率。

【返回参数】

HRTCVideoEncParam类对象。

public HRTCStreamType getStreamType();

【功能说明】

获取视频流类型。

【请求参数】

【返回参数】

视频流类型,具体参见HRTCStreamType

public void setStreamType(HRTCStreamType streamType);

【功能说明】

设置视频流类型。

【请求参数】

streamType:流类型,具体请参见HRTCStreamType

【返回参数】

视频流类型,具体参见HRTCStreamType

表14 不同分辨率下帧率和码率的推荐值

分辨率

分辨率类型

比例

最小帧率(fps)

最大帧率(fps)

最小码率

最大码率

160 X 90

LD

16:9

10

30

64

270

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

表15 不同场景下帧率和码率的推荐值

分辨率

推荐帧率

通信场景推荐码率

直播场景推荐码率

160 X 90

15

90

180

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

表16 本地视频流信息详情

属性

类型

描述

width

int

视频宽

height

int

视频高

bitRate

int

视频码率

frameRate

int

视频帧率,单位:fps

packetLoss

int

视频丢包率

delay

int

时延,单位:ms

jitter

int

抖动

bytes

long

字节数

sendFrameRate

int

实际发送帧率,单位:fps

HRTCLocalAudioStats

表17 本地音频流信息详情

属性

类型

描述

sampleRate

int

音频采样率

channels

int

音频频道数

sendVEL

int

发送语音电平

bitRate

int

音频码率

packetLoss

int

音频丢包率

delay

int

时延,单位:ms

jitter

int

抖动

bytes

long

字节数

HRTCRemoteVideoStats

表18 远端视频流信息详情

属性

类型

描述

userId

String

远端用户userId

width

int

视频宽

height

int

视频高

bitRate

int

视频码率

frameRate

int

视频帧率,单位:fps

packetLoss

int

视频丢包率

delay

int

时延,单位:ms

jitter

int

抖动

bytes

long

字节数

rendererOutputFrameRate

int

渲染帧率,单位:fps

totalFrozenTime

int

远端用户在加入房间后到离开房间前,发生视频卡顿的累计时长,单位:ms

frozenRate

int

远端用户在加入房间后到离开房间前,发生视频卡顿的累计时长占视频总有效时长的百分比,单位:%

HRTCRemoteAudioStats

表19 远端音频流信息详情

属性

类型

描述

userId

String

远端用户ID

sampleRate

int

音频采样率

channels

int

音频频道数

recvVEL

int

接收语音电平

bitRate

int

音频码率

packetLoss

int

音频丢包率

delay

int

时延,单位:ms

jitter

int

抖动

bytes

long

字节数

totalFrozenTime

int

远端用户在加入房间后到离开房间前,发生音频卡顿的累计时长,单位:ms

frozenRate

int

远端用户在加入房间后到离开房间前,发生音频卡顿的累计时长占音频总有效时长的百分比,单位:%

HRTCConnectInfo

表20 跨房信息

属性

类型

描述

roomId

String

跨房房间号

role

HRTCRoleType

跨房时角色,具体请参见HRTCRoleType

HRTCVideoFrame

表21 视频帧

属性

类型

描述

format

HRTCVideoFrameFormat

支持的视频格式

videoData

byte[]

视频数据

width

int

宽度,图像宽度,作为输入时,范围为[90,1920],必须是4的整数倍

height

int

高度,图像高度,作为输入时,范围为[90,1200],必须是2的整数倍

HRTCAudioFrame

表22 音频帧

属性

类型

描述

frameType

HRTCAudioFrameType

音频格式

sampleRate

int

音频采样率

samplesPerSec

int

每秒采样数

bytesPerSample

int

每个采样点占用字节数

channels

int

声道数

data

byte[]

音频数据

buffer

ByteBuffer

音频数据

HRTCFrameBuffer

表23 媒体帧数据

属性

类型

描述

mediaType

HRTCMediaType

媒体帧类型

buffer

ByteBuffer

媒体数据

HRTCLogLevel

表24 日志级别

枚举值

描述

HRTC_LOG_LEVEL_ERROR

错误级别日志

HRTC_LOG_LEVEL_WARNING

警告级别日志

HRTC_LOG_LEVEL_INFO

信息级别日志

HRTC_LOG_LEVEL_DEBUG

调试级别日志

HRTCMediaType

表25 媒体类型

枚举值

描述

HRTC_MEDIA_TYPE_AUDIO

音频,暂不支持

HRTC_MEDIA_TYPE_VIDEO

音频+视频

HRTCSpeakerModel

表26 声音播放模式

枚举值

描述

HRTC_SPEAKER_MODE_EARPIECE

听筒模式

HRTC_SPEAKER_MODE_SPEAKER

外放模式

HRTCAudioRoute

表27 音频路由

枚举值

描述

HRTC_AUDIO_ROUTE_SPEAKER

外放模式

HRTC_AUDIO_ROUTE_BLUETOOTH

蓝牙模式

HRTC_AUDIO_ROUTE_RECEIVER

听筒模式

HRTC_AUDIO_ROUTE_HEADSET

耳机模式

HRTCStreamType

表28 流类型

枚举值

描述

HRTC_STREAM_TYPE_LD

流畅

HRTC_STREAM_TYPE_SD

标清

HRTC_STREAM_TYPE_HD

高清

HRTC_STREAM_TYPE_FHD

全高清

HRTCRoleType

表29 用户角色

枚举值

描述

HRTC_ROLE_TYPE_JOINER

双向流角色,例如主播加入

HRTC_ROLE_TYPE_PLAYER

接收流角色,例如观众

HRTCVideoDisplayMode

表30 图像填充模式

枚举值

描述

HRTC_VIDEO_DISPLAY_MODE_FIT

(不拉伸)黑边模式,通过扩边的方式保持宽高比。

HRTC_VIDEO_DISPLAY_MODE_HIDDEN

(不拉伸)裁剪模式,通过裁剪的方式保持宽高比。

HRTC_VIDEO_DISPLAY_MODE_FILL

视频尺寸进行缩放和拉伸以充满显示视窗。

HRTCConnStateTypes

表31 网络连接状态

枚举值

描述

HRTC_CONN_DISCONNECTED

连接断开

HRTC_CONN_CONNECTING

建立网络连接中

HRTC_CONN_CONNECTED

网络连接成功

HRTC_CONN_RECONNETING

重新建立网络连接中

HRTC_CONN_FAILED

网络连接失败

HRTC_CONN_LOST

网络连接异常

HRTC_CONN_INTERRUPTED

网络连接中断

HRTCConnChangeReason

表32 网络连接状态变化原因

枚举值

描述

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服务。

HRTC_CONN_CHANGED_LOST

连接异常

HRTCRotationType

表33 旋转类型

枚举值

描述

HRTC_ROTATION_TYPE_0

不旋转

HRTC_ROTATION_TYPE_90

顺时针旋转90度

HRTC_ROTATION_TYPE_180

顺时针旋转180度

HRTC_ROTATION_TYPE_270

顺时针旋转270度

HRTCVideoFrameFormat

表34 视频帧格式

枚举值

描述

HRTC_VIDEO_FRAME_FORMAT_YUV420P

YUV420格式

HRTC_VIDEO_IMAGE_FORMAT_RGBA

RGBA格式

HRTC_VIDEO_IMAGE_FORMAT_2D

texture2d格式

HRTCAudioFrameType

表35 音频帧格式

枚举值

描述

HRTC_AUDIO_FRAME_TYPE_PCM16

PCM 16位

HRTCVideoImageBufferType

表36 视频帧缓冲区类型

枚举值

描述

HRTC_VIDEO_IMAGE_BUFFER_BYTE_ARRAY

Array类型,对应HRTCVideoFrameFormat中的YUV、RGBA格式

HRTCLeaveReason

表37 离开房间原因

枚举值

描述

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

重连超时

HRTCVideoMirrorType

表38 视频镜像类型

枚举值

描述

HRTC_VIDEO_MIRROR_TYPE_AUTO

SDK决定镜像方式:前置摄像头镜像,后置摄像头不镜像

HRTC_VIDEO_MIRROR_TYPE_ENABLE

前置摄像头和后置摄像头都镜像

HRTC_VIDEO_MIRROR_TYPE_DISABLE

前置摄像头和后置摄像头都不镜像

HRTCRemoteAudioStreamStateReason

表39 远端音频状态变化原因

枚举值

描述

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

远端用户音频解码第一帧

HRTCRemoteAudioStreamState

表40 远端音频状态

枚举值

描述

HRTC_REMOTE_VIDEO_STATE_STOPPED

远端音频流关闭发送

HRTC_REMOTE_AUDIO_STATE_STARTING

远端音频流开启发送

HRTC_REMOTE_AUDIO_STATE_FIRST_DECODED

远端音频流解码第一帧

HRTCRemoteVideoStreamState

表41 远端视频状态

枚举值

描述

HRTC_REMOTE_VIDEO_STATE_STOPPED

远端视频流关闭发送

HRTC_REMOTE_VIDEO_STATE_STARTING

远端视频流开启发送

HRTCRemoteVideoStreamStateReason

表42 远端视频状态变化原因

枚举值

描述

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

本端已开启选看远端视频流

HRTCVolumeInfo

表43 发言人音量

属性

类型

描述

roomId

String

房间ID

userId

String

用户ID

volume

int

音量

HRTCNetworkTestConfig

表44 网络探测参数

属性

类型

描述

userId

String

必选,用户ID

roomId

String

房间ID,必选,建议值:userId+随机数拼接

signature

String

必选,签名鉴权

ctime

long

必选,时间戳

enableUplinkTest

boolean

必选,是否开启上行流探测

enableDownlinkTest

boolean

必选,是否开启上行流探测

expectedUplinkBitrate

int

必选,用户期望的最高发送码率,单位为bps,范围为0以及 [100000, 5000000],设为0表示由SDK指定最高码率

expectedDownlinkBitrate

int

必选,用户期望的最高接收码率,单位为bps,范围为0以及 [100000, 5000000],设为0表示由SDK指定最高码率

HRTCNetworkTestResult

表45 网络探测结果数据

属性

类型

描述

testState

HRTCNetworkTestState

测试结果

uplinkResult

HRTCNetworkTestResultParam

上行探测结果

downlinkResult

HRTCNetworkTestResultParam

下行探测结果

HRTCNetworkQualityLevel

网络质量级别的数值越大,信号越好。

表46 网络质量级别

枚举值

描述

HRTC_NETWORK_QUALITY_UNKNOWN

网络质量未知

HRTC_NETWORK_QUALITY_EXCELLENT

网络质量非常好

HRTC_NETWORK_QUALITY_GOOD

网络质量好

HRTC_NETWORK_QUALITY_POOR

网络质量一般

HRTC_NETWORK_QUALITY_BAD

网络质量差

HRTC_NETWORK_QUALITY_VBAD

网络质量非常差

HRTCNetworkTestState

表47 网络探测结果状态

枚举值

描述

HRTC_NETWORK_TEST_OK

探测成功

HRTC_NETWORK_TEST_FAIL

探测失败

HRTCNetworkTestResultParam

表48 网络探测结果参数

属性

类型

描述

bitRate

int

探测的带宽

packetLoss

int

探测的丢包

delay

int

探测的时延

jitter

int

探测的抖动

HRTCMediaDirection

表49 媒体方向指示

枚举值

描述

HRTC_MEDIA_LOCAL

本地媒体流

HRTC_MEDIA_REMOTE

远端媒体流

HRTCVideoStreamType

表50 视频流类型

枚举值

描述

HRTC_VIDEO_STREAM_TYPE_BIG

视频大流

HRTC_VIDEO_STREAM_TYPE_SMALL

视频小流

HRTCVideoEncodeResolutionMode

表51 视频编码分辨率比例模式

属性

描述

HRTC_VIDEO_ENCODE_RESOLUTION_MODE_NONE

不固定比例

HRTC_VIDEO_ENCODE_RESOLUTION_MODE_CONST_RATIO

固定比例

HRTCStreamPacketInfo

表52 收包流的信息

属性

类型

描述

userId

String

用户ID

recvPacketCount

long

收包数,订阅的用户视频流收包数一直累加,重新订阅后数量清零

isAux

boolean

是否辅流

HRTCQualityInfo

表53 网络质量信息

属性

类型

描述

userId

String

用户ID

width

int

宽度

height

int

高度

level

HRTCNetworkQualityLevel

网络质量级别

mediaType

HRTCMediaType

媒体流类型

HRTCLocalAudioStreamStateReason

表54 本地音频状态变化原因

枚举值

描述

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

扬声器播放无数据,重启失败

HRTCLocalAudioStreamState

表55 本地音频状态

枚举值

描述

HRTC_LOCAL_AUDIO_STATE_STOPPED

本地音频流默认初始状态

HRTC_LOCAL_AUDIO_STATE_RECORDING

本地音频流录制设备启动成功

HRTC_LOCAL_AUDIO_STATE_FAILED

本地音频流启动失败

HRTCLocalVideoStreamState

表56 本地视频状态

枚举值

描述

HRTC_LOCAL_VIDEO_STATE_STOPPED

本地视频流默认初始状态

HRTC_LOCAL_VIDEO_STATE_CAPTURING

本地视频流采集设备启动成功

HRTC_LOCAL_VIDEO_STATE_FAILED

本地视频流启动失败

HRTCLocalVideoStreamStateReason

表57 本地视频状态变化原因

枚举值

描述

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

应用处于后台

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)

HRTCRemoteAudioMode

表58 视频编码分辨率比例模式

属性

描述

RTC_REMOTE_AUDIO_SUBSCRIBED

订阅模式,接收所有已订阅远端声音

RTC_REMOTE_AUDIO_TOP_THREE

TopN模式,接收远端声音最大三路音频

HRTC_REMOTE_AUDIO_P2P

P2P模式

HRTC_REMOTE_AUDIO_RTSA_CMD

RTSA-CMD模式

HRTCMediaConnStateTypes

表59 媒体连接状态类型

属性

描述

HRTC_MEDIA_CONN_CONNECTED

与媒体服务器连接成功

HRTC_MEDIA_CONN_FAILED

与媒体服务器建链失败

HRTCMediaConnChangeReason

表60 媒体连接状态变化原因

属性

描述

HRTC_MEDIA_CONN_CHANGED_CONNECTED

连接成功

HRTC_MEDIA_CONN_CHANGED_NAT_FAILED

与媒体服务器NAT未打通

HRTCImageBufferFormat

表61 视频帧图片格式

属性

类型

描述

format

HRTCVideoFrameFormat

视频帧图片存储格式

bufferType

HRTCVideoImageBufferType

视频帧缓冲区存储类型

HRTCVideoAuxiliaryEncParam

表62 辅流编码参数

属性

类型

描述

width

int

宽度

height

int

高度

frameRate

int

帧率

bitrate

int

码率

HRTCEngineConfig

表63 引擎创建相关参数

属性

类型

描述

context

Context

上下文

appId

String

应用ID,只有App ID相同的应用程序才能进入同一个房间进行互动。appId获取方法请参见应用管理

countryCode

String

国家码,具体请参见国家码对照表

logEnable

boolean

日志是否输出到文件,true为输出到文件,false为不输出到文件

logLevel

HRTCLogLevel

日志等级,取值为HRTC_LOG_LEVEL_ERROR、HRTC_LOG_LEVEL_WARNING、HRTC_LOG_LEVEL_INFO或HRTC_LOG_LEVEL_DEBUG,默认为HRTC_LOG_LEVEL_DEBUG

logPath

String

日志路径,需调用方保证路径合法可用,rtc仅做基础校验

logSize

int

日志大小,单位为字节,目前固定10*1024

HRTCAreaCode

表64 访问区域

枚举值

描述

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

亚洲

HRTCOnStats

表65 引擎创建相关参数

属性

类型

描述

cpuAppUsage

double

app的cpu利用率,单位(%)

cpuTotalUsage

double

cpu总利用率,单位(%)

memoryAppUsageInKbytes

int

app占用内存,单位KB

memoryAppUsageRatio

double

app占用的内存率,单位(%)

memoryTotalUsageRatio

double

总的内存利用率,单位(%)

gatewayRtt

int

到本地网关的延迟,单位ms

sendBytes

long

总的发送字节数,单位bytes

sendVideoBytes

long

视频的发送字节数,单位bytes

sendAudioBytes

long

音频的发送字节数,单位bytes

receiveBytes

long

总的接收字节数,单位bytes

receiveVideoBytes

long

视频的接收字节数,单位bytes

receiveAudioBytes

long

音频的接收字节数,单位bytes

sendBitRate

int

总的发送比特率,单位Kbps

sendVideoBitRate

int

视频的发送比特率,单位Kbps

sendAudioBitRate

int

音频的发送比特率,单位Kbps

receiveBitRate

int

总的接收比特率,单位Kbps

receiveVideoBitRate

int

视频的接收比特率,单位Kbps

receiveAudioBitRate

int

音频的接收比特率,单位Kbps

sendLossRate

int

发送丢包率,单位(%)

receiveLossRate

int

接收丢包率,单位(%)

lastmileDelay

int

到服务器的延迟,单位ms

HRTCAudioFileState

表66 音频文件播放状态

属性

描述

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

表67 音频播放状态变化原因

枚举值

描述

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

表68 媒体选参

属性

类型

描述

autoSubscribeAudio

bool

自动订阅远端音频

autoSubscribeVideo

bool

自动订阅远端视频

HRTCEngineContext

表69 引擎初始化参数

属性

类型

描述

engineConfig

HRTCEngineConfig

引擎配置项,具体请参见HRTCEngineConfig

logConfig

HRTCLogConfig

日志配置项,具体请参见HRTCLogConfig

eventHandler

IHRTCEngineEventHandler

事件回调,具体请参见IHRTCEngineEventHandler

HRTCLogConfig

表70 日志参数

属性

类型

描述

level

HRTCLogLevel

日志级别,具体请参见HRTCLogLevel

path

const char *

日志路径

logSize

int

日志大小

enable

bool

日志开关

HRTCSfuType

表71 Sfu类型

枚举值

描述

HRTC_SFU_TYPE_PUBLIC_NETWORK

公网sfu资源

HRTCDeviceState

表72 系统音视频设备状态

枚举值

描述

HRTC_DEVICE_STATE_ACTIVE

激活状态,设备可用

HRTC_DEVICE_STATE_DISABLED

设备禁用

HRTC_DEVICE_STATE_UNPLUGGED

设备拔出

HRTCUrlStatusList

表73 HRTCRtmpUrlInfo

属性

描述

char url[1025]

url字符串

int status

状态码

int errCode

错误码

HRTCVideoRemoteView

表74 远端流视图

属性

描述

SurfaceView view

窗口句柄

HRTCStreamType streamType

流模式(LD/SD/HD/FHD/THD)

String userId

用户ID

boolean disableAdjustRes

是否自适应

HRTCStreamType minResolution

自适应场景下,建议的最低选择档位

HRTCNetWorkBandwidth

表75 HRTCNetWorkBandwidth

属性

描述

int maxBandwidth

网络带宽上限,有效范围为[3072,51200],即3M~50M。

HRTCRemoteMicState

表76 远端麦克风设备状态

枚举值

描述

HRTC_REMOTE_MIC_STATE_UNMUTE

麦克风设备状态正常

HRTC_REMOTE_MIC_STATE_MUTE

麦克风设备状态静音

HRTCMultiRoomMediaRelayConfiguration

表77 HRTCMultiRoomMediaRelayConfiguration

属性

类型

描述

srcRoomMediaInfo

HRTCSrcMultiRoomMediaInfo

源房间的鉴权信息

destRoomMediaInfo

HRTCDstMultiRoomMediaInfo

目的跨房的房间信息以及鉴权信息

HRTCSrcMultiRoomMediaInfo

表78 HRTCSrcMultiRoomMediaInfo

属性

类型

描述

authorization

const char*

源房间的鉴权信息

userId

const char*

源房间的用户名(必须为0)

roomId

const char*

源房间的房间号

ctime

long long

鉴权时间信息

HRTCDstMultiRoomMediaInfo

表79 HRTCDstMultiRoomMediaInfo

属性

类型

描述

authorization

const char*

目标跨房的鉴权信息

userId

const char*

目标跨房的虚拟用户名

roomId

const char*

目标跨房房间号

userRole

HRTCRoleType

跨房角色

ctime

long long

鉴权时间信息

HRTCMultiRoomMediaRelayState

表80 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

表81 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

异常退出跨房

相关文档