-
Notifications
You must be signed in to change notification settings - Fork 271
errorCode
shixuemei edited this page Aug 18, 2017
·
10 revisions
代码通过以下属性获取推流errorCode:
_kit.streamerBase.streamErrorCode
通过getKSYStreamErrorCodeName可以查询到错误码对应的字符串描述
- (NSString*) getKSYStreamErrorCodeName:(KSYStreamErrorCode)code;
详细重连请见wiki: retryConnect 需要考虑的重连错误码:
- KSYStreamErrorCode_CONNECT_BREAK,网络连接断开(服务器关闭或者网络切换失败)
- KSYStreamErrorCode_AV_SYNC_ERROR,音视频同步失败
- KSYStreamErrorCode_CODEC_OPEN_FAILED
出现DNS解析错误,大致有以下几种场景:
- 手机没有连接网络(3G/4G/WiFi)
- 当前连接的WiFi没有网络权限
- 设置的url没有成功解析出ip,此时有可能domain错误,或者dns解析异常
建议:主播调整网络环境后重新发起推流。
- 提供的url,域名解析成功(避免了KSYStreamErrorCode_DNS_Parse_failed)。
- 与对应的ip连接失败,比如对方1935端口关闭。
建议:
- 确认填写的url是否正确.
- 主播网络是否封禁了1935端口.
- RTMP服务提供方(源站)无法访问.
- 提供的url,域名解析成功,避免了KSYStreamErrorCode_DNS_Parse_failed。.
- 与对应的ip连接成功,避免了KSYStreamErrorCode_CONNECT_FAILED
- 填入的url不是rtmp协议,或者对端服务不支持rtmp协议
建议:出现在联调阶段,请确保url下发正确。
当前视频帧编码失败,会进行该通知。 建议:推流方无需做任何处理,该错误是内部错误。编码工作仍然会继续下去。
状态名称 | value | 状态说明 | 备注 |
---|---|---|---|
KSYStreamErrorCode_NONE | 0 | 正常无错误 | |
KSYStreamErrorCode_KSYAUTHFAILED | 1 | SDK 鉴权失败 (暂时正常推流5~8分钟后终止推流)(KSY 自定义,已经不会出现) | |
KSYStreamErrorCode_ENCODE_FRAMES_FAILED | 2 | 当前帧编码失败 | |
KSYStreamErrorCode_CODEC_OPEN_FAILED | 3 | 无法打开配置指示的CODEC,一般出现在VT264编码时,当出现该错误的时候需要重试 | |
KSYStreamErrorCode_CONNECT_FAILED | 4 | 连接出错,检查地址 | |
KSYStreamErrorCode_CONNECT_BREAK | 5 | 网络连接中断 , 当出现该错误的时候建议重推流 | |
KSYStreamErrorCode_ RTMP_NonExistDomain |
6 | rtmp 推流域名不存在 (KSY 自定义) | |
KSYStreamErrorCode_ RTMP_NonExistApplication |
7 | rtmp 应用名不存在(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_AlreadyExistStreamName |
8 | rtmp 流名已存在(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_ForbiddenByBlacklist |
9 | rtmp 被黑名单拒绝(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_InternalError |
10 | rtmp 内部错误(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_URLExpired |
11 | rtmp URL 地址已过期(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_SignatureDoesNotMatch |
12 | rtmp URL 地址签名错误(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_InvalidAccessKeyId |
13 | rtmp URL 中AccessKeyId非法(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_BadParams |
14 | rtmp URL 中参数错误(KSY 自定义) | |
KSYStreamErrorCode_ RTMP_ForbiddenByRegion |
15 | rtmp URL 中的推流不在发布点内(KSY 自定义) | |
KSYStreamErrorCode_FRAMES_THRESHOLD | 16 | SDK 因为鉴权失败停止推流 | |
KSYStreamErrorCode_NO_INPUT_SAMPLE | 17 | 没有输入的数据,无法开始推流 | |
KSYStreamErrorCode_DNS_Parse_failed | 18 | 对于URL中的域名解析失败 | |
KSYStreamErrorCode_ Connect_Server_failed |
19 | 对于URL对应的服务器连接失败(无法建立TCP连接) | |
KSYStreamErrorCode_ RTMP_Publish_failed |
20 | 跟RTMP服务器完成握手后,向{appname}/{streamname} 推流失败 | |
KSYStreamErrorCode_AV_SYNC_ERROR | 21 | 音视频同步失败 (输入的音频和视频的时间戳的差值超过5s) | |
KSYStreamErrorCode_INVALID_ADDRESS | 22 | 非法地址(地址为空或url中的协议或本地文件的后缀SDK不支持, 请检查) | |
KSYStreamErrorCode_NETWORK_UNREACHABLE | 23 | 开始推流时发现网络不通 | v2.0.3+ |
KSYStreamErrorCode_RTMP_GetUserIdFailed | 24 | 获取user id失败 (KSY 自定义) | v2.6.0+ |
KSYStreamErrorCode_RTMP_AkAndUserIsNotMatch | 25 | AK和user id不匹配 (KSY 自定义) | v2.6.0+ |
KSYStreamErrorCode_RTMP_GetServerInfoFailed | 26 | 获取服务器信息失败 (KSY 自定义) | v2.6.0+ |
KSYStreamErrorCode_RTMP_IllegalOutsideUrl | 27 | 非法的外部url (KSY 自定义) | v2.6.0+ |
KSYStreamErrorCode_RTMP_OutsideAuthFailed | 28 | 外部鉴权失败 (KSY 自定义) | v2.6.0+ |
KSYStreamErrorCode_RTMP_SimpleAuthFailed | 29 | 简单鉴权失败(KSY 自定义) | v2.6.0+ |
KSYStreamErrorCode_RTMP_InvalidAuthType | 30 | 无效的鉴权类型 (KSY 自定义) | v2.6.0+ |
KSYStreamErrorCode_RTMP_IllegalUserId | 31 | 非法的user id (KSY 自定义) | v2.6.0+ |