华为云用户手册

  • HRTCEngineConfig 表71 引擎初始化配置 属性 类型 描述 appId const char * 应用ID,只有App ID相同的应用程序才能进入同一个房间进行互动。appId获取方法请参见应用管理。 countryCode const char * 国家码,具体值请参见国家码对照表 enableHaTrace bool 打点开关 muteAudioRoute bool 是否禁音频路由 enableAudio bool 音频模块开关 enableVideo bool 视频模块开关 enableShare bool 共享模块开关 audioScene HRTCAudioSceneType 音频场景,会议/音乐 audioQualityLevel HRTCAudioQualityLevel 音频档位,16k/48k
  • HRTCRotationParam 表51 摄像头参数 属性 描述 int captureIndex 0:前置摄像头 1:后置摄像头 int captureRotation 0:不旋转 1:逆时针旋转90度 2:逆时针旋转180度 3:逆时针旋转270度 int wndType 保留参数,当前默认设置为1 int displayRotation 0:不旋转 1:逆时针旋转90度 2:逆时针旋转180度 3:逆时针旋转270度
  • HRTCRemoteVideoStreamStateReason 表45 远端视频状态变化原因 枚举值 描述 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 本端已开启选看远端视频流
  • HR TCS creenShareSourceInfo 表57 共享屏幕对象信息 属性 描述 void* sourceId 采集源ID,如果是窗口共享,则为窗口句柄(HWND) char sourceName[HRTCConstant::HRTC_MAX_SOURCE_NAME_LEN + 1] 采集源名称,如果是窗口共享,则为窗口对应名称 HRT CS creenShareType type 共享类型,具体请参见HRTCScreenShareType void* icon type是HRTC_WINDOW_CAPTURE才有效,返回类型是Windows资源类型HICON
  • HRTCRemoteAudioMode 表69 远端音频流收流模式 枚举值 描述 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模式
  • HRTCNetworkQualityLevel 表49 网络质量信号等级 枚举值 描述 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 网络质量非常差
  • HRTCLocalVideoStreamStateReason 表65 本地视频状态变化原因 枚举值 描述 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)
  • HRTCConstant 表50 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。
  • HRTCAudioFrame 表22 音频帧详情 函数&属性 描述 HRTCAudioFrameType frameType 音频格式,具体请参见HRTCVideoImageFormat。 int sampleRate 音频采样率 int samplesPerSec 每秒采样数 int bytesPerSample 每个采样点占用字节数 int channels 声道数 unsigned char* data 音频数据 unsigned int dataLen 音频数据大小
  • HRTCNetworkTestConfig 表24 网络探测结果参数 函数&属性 描述 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指定最高码率。
  • HRTCConnChangeReason 表34 网络状态变化原因 枚举值 描述 HRTC_CONN_CHANGED_CONNECTING 正在连接。 HRTC_CONN_CHANGED_JOIN_SUC CES S 加入房间成功。 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服务。
  • 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 重连超时。 HRTC_LEAVE_REASON_NETWORK_TEST 网络探测结束,UI不用关注。 HRTC_LEAVE_REASON_USER_REMOVED 用户移除 HRTC_LEAVE_REASON_ROOM_DISMISSED 房间解散 HRTC_LEAVE_REASON_REGION_NOT_COVERED 区域未覆盖,所在区域不能提供SparkRTC服务。
  • HRTCVideoFrame 表21 视频帧详情 函数&属性 描述 HRTCVideoImageFormat format 视频格式,具体请参见HRTCVideoImageFormat。 unsigned int width 视频宽 unsigned int height 视频高 unsigned char* data 每帧视频数据 unsigned int dataLen 每帧视频数据大小。例如,I420格式数据,dataLen = 1.5 * width * heigh。
  • HRTCNetworkTestResult 表26 网络探测结果 枚举值 描述 HRTCNetworkTestState 网络探测状态,具体请参见HRTCNetworkTestState。 HRTCNetworkTestResultParam 上行流测试结果,具体请参见HRTCNetworkTestResultParam。 HRTCNetworkTestResultParam 下行流测试结果,具体请参见HRTCNetworkTestResultParam。
  • HRTCRemoteAudioStreamStateReason 表43 远端音频状态变化原因 枚举值 描述 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 远端音频首包解码。
  • HRTCRemoteVideoStats 表16 远端视频流信息详情 属性 描述 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 远端用户在加入房间后到离开房间前,发生视频卡顿的累计时长占视频总有效时长的百分比
  • HRTCRemoteAudioStats 表18 远端音频流信息详情 属性 描述 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 远端用户在加入房间后到离开房间前,发生音频卡顿的累计时长占音频总有效时长的百分比
  • HRTCVideoEncParam 表12 视频编码分辨率 函数&属性 描述 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) 表13 不同分辨率下帧率和码率的推荐值 分辨率 分辨率类型 比例 最小帧率(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 表14 不同场景下帧率和码率的推荐值 分辨率 推荐帧率 通信场景推荐码率 直播场景推荐码率 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
  • HRTCJoinParam 表9 入会参数 函数&属性 描述 HRTCRoleType userRole 用户角色,具体请参见HRTCRoleType。 const char* userId 用户ID,用户标识,长度不超过HRTC_MAX_USERID_LEN,支持64个字节的大小写字母、数字、下划线(_)中划线(-)随机组合。 const char* userName 用户昵称,用户标识,长度不超过HRTC_MAX_USERNAME_LEN。 const char* authorization 签名,鉴权私钥请在应用管理中获取,签名的具体生成方法请参见接入鉴权。支持最大长度为1024。 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。 0:主动订阅(默认)。 1:TopN(千人)。 2:P2P。 3:RTSA CMD自动订阅。
  • HRTCStatsInfo 表11 卡顿统计信息 函数&属性 描述 long long mildlyFrozenCounts 600ms卡顿次数。 long long severelyFrozenCounts 超过1s卡顿次数。 long long totalMildlyFrozenTime; 600ms卡顿总时长。 long long totalSeverelyFrozenTime 1s卡顿总时长。 long long totalActiveTime 总时间,包括每一路选看时间总和。
  • HRTCCryptionMode 表6 加密模式 枚举值 描述 HRTC_CRYPTO_DEFAULT 不开启端到端加密,此时srtp认证(包校验)+加密。 HRTC_CRYPTO_AUTHENTICATION_SDK 开启端到端加密,srtp只认证(包校验),sdk内部加密,必须配置key。 HRTC_CRYPTO_AUTHENTICATION_APP 开启端到端加密,srtp只认证(包校验),应用层加密,需注册回调。
  • HRTCLogConfig 表2 日志信息 函数&属性 描述 HRTCLogLevel level 日志级别,具体请参见HRTCLogLevel。 ERROR:错误级别日志 WARNING:警告级别日志 INFO:信息级别日志 DEBUG:调试级别日志 默认级别为DEBUG。 const char* path 日志路径,长度不超过MAX_LOG_PATH_LEN = 226。默认路径为当前程序目录“\\rtcLog”。
  • HRTCUserInfo 表3 用户信息 函数&属性 描述 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 表4 相机参数 函数&属性 描述 cryptionMode HRTCCryptionMode,加密模式 suiteType HRTCSuiteType,加密算法,仅模式HRTC_CRYPTO_AUTHENTICATION_SDK需要 cryptionSec char *,加密秘钥,仅模式HRTC_CRYPTO_AUTHENTICATION_SDK需要设置。必须是字符长度大于等于32位的16进制字符串。 secFormat HRTCCryptionSecFormat,秘钥格式,当前只支持16进制字符串。
  • HWRtcStartAudioFileParam 表80 音频文件参数 属性 类型 描述 fullFilePath NSString 音频文件路径 playMode HWRtcAudioFilePlayMode 播放模式 cycle NSUInteger 音频播放次数,0表示无限循环 replace NSUInteger 是否用音频文件替换麦克风采集的声音。1表示只使用音频文件发送到远端,0表示将本地麦克风采集并和音频文件混音后发送到远端
  • HRTCMultiRoomMediaRelayStateCode 表97 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_F RAM E_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 异常退出跨房
  • HWRtcRemoteAudioStats 表64 远端音频统计回调 属性 描述 @(strong, nonatomic) NSString *userId; 用户ID(本地音频信息为空) @ (assign, nonatomic) NSUInteger sampleRate; 音频采样率 @ (assign, nonatomic) NSUInteger channels; 音频声道数 @ (assign, nonatomic) NSUInteger bitRate; 音频码率 @ (assign, nonatomic) NSUInteger packetLoss; 音频丢包率 @ (assign, nonatomic) NSUInteger delay; 音频时延 @ (assign, nonatomic) NSUInteger jitter; 音频抖动 @ (assign, nonatomic) NSUInteger totalFrozenTime; 远端用户在加入房间后到离开房间前,发生音频卡顿的累计时长,单位:ms 说明:仅onRemoteAudioStatsNotify回调中携带此数据 @ (assign, nonatomic) NSUInteger frozenRate; 远端用户在加入房间后到离开房间前,发生音频卡顿的累计时长占音频总有效时长的百分比,单位:% 说明:仅onRemoteAudioStatsNotify回调中携带此数据
  • HRTCMultiRoomMediaRelayState 表96 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 发生异常
  • HWRTCCryptionMode 表69 加密模式 枚举值 描述 HWRTCCryptionModeDefault 不开启端到端加密,此时srtp认证(包校验)+加密 HWRTCCryptionModeAuthenticationSdk 开启端到端加密,srtp只认证(包校验),sdk内部加密, 必现配置key HWRTCCryptionModeAuthenticationApp 开启端到端加密,srtp只认证(包校验),应用层加密,需注册回调
  • HWRtcVideoAuxiliarEncParam 表85 辅流编码能力 属性 类型 描述 frameRate NSInteger 编码帧率,推荐帧率15帧 width NSInteger 编码辅流宽。(iOS下根据宽,根据高按比例缩放) height NSInteger 编码辅流高。(iOS下如果屏幕宽度不超过1080,则视频源宽为720,否则为1080) bitrate NSInteger 码率,具体设置参考表56和表57。
共100000条