实时音视频

  • 实时音视频 > API 文档 > iOS >QNTypeDefines

    QNTypeDefines

    最近更新时间: 2022-06-30 16:49:53

    类型定义管理类
    Index
    Enum
    Block
    Enum
    QNRTCLogLevel
    • @typedef NS_ENUM(NSUInteger, QNRTCLogLevel)
    • 日志输出等级

      code describe message
      QNRTCLogLevelVerbose Verbose 日志输出
      QNRTCLogLevelInfo Info 日志输出
      QNRTCLogLevelWarning Warning 日志输出
      QNRTCLogLevelError Error 日志输出
      QNRTCLogLevelNone None 日志输出
    QNRTCErrorDomain
    • NS_ERROR_ENUM(QNRTCErrorDomain)
    • 异常的错误码,指代具体出现错误的原因

      code describe message
      QNRTCErrorTokenError 鉴权失败 建议用户收到此错误代码时尝试重新获取 RoomToken 后再次加入房间
      QNRTCErrorTokenExpired RoomToken 过期 建议用户收到此错误代码时尝试重新获取 RoomToken 后再次加入房间
      QNRTCErrorRoomClosed 房间被管理员关闭 请联系服务器
      QNRTCErrorRoomIsFull 房间人数已超过限制 请联系服务器
      QNRTCErrorUserAlreadyExist 用户已存在,该用户可能已使用其他设备进入房间 请确认是否已使用其他设备进入房间
      QNRTCErrorNoPermission 当在进行踢人合流等操作没有权限时会返回此错误代码 请确定用户在进行操作时是否有对应权限
      QNRTCErrorInvalidParameter 参数错误 请确定当前操作输入参数是否合法
      QNRTCErrorMediaCapNotSupport 服务不可用 SDK 内部错误。用户无需处理
      QNRTCErrorSubscribeDisconnected 订阅失败,或订阅不存在 用户无需处理
      QNRTCErrorAuthFailed 鉴权失败 建议用户收到此错误代码时检查网络并尝试重新获取 RoomToken 后再次加入房间
      QNRTCErrorRoomStateError 当前房间状态不允许此操作 请在当前操作前,确定房间状态
      QNRTCErrorReconnectFailed 房间重连失败 建议重新加入房间
      QNRTCErrorNetworkTimeout 网络超时 请确认网络状态
      QNRTCErrorFatalError 非预期错误 SDK 内部错误。用户无需处理
      QNRTCErrorSignalTimeOut 信令超时 请重新尝试
      QNRTCErrorPushAudioBufferFailed 音频重采样失败 SDK 内部错误。用户无需处理
    QNAudioMixErrorDomain
    • NS_ERROR_ENUM(QNAudioMixErrorDomain)
    • 音频混音错误

      code describe message
      QNAudioMixErrorResampleFailed 音频混音重采样 请重新尝试混音操作
      QNAudioMixErrorAudioNotFound 音频文件不存在 请检查音频文件是否实际存在
      QNAudioMixErrorIOException 输入输出错误 请检查混音文件是否存在异常
      QNAudioMixErrorDecoderException 解码错误 音频格式支持 aac、mp3、mp4、wav、m4r、caf、ogg、opus、m4a、flac
      QNAudioMixErrorSeekFailed 跳转失败错误 请检查是否在开始混音前执行了 Seek 操作
    QNMediaRelayErrorDomain
    • NS_ERROR_ENUM(QNMediaRelayErrorDomain)
    • 跨房媒体转发错误

      code describe message
      QNMediaRelayErrorTokenError 跨房转推 Token 错误
      QNMediaRelayErrorAlreadyStart 当前跨房已开始
      QNMediaRelayErrorNotStart 当前跨房未开始
      QNMediaRelayErrorDestinationRoomNotExisted 目标房间不存在
      QNMediaRelayErrorPlayerInDestRoom 已在房间内
      QNMediaRelayErrorStartFailed 开始失败
      QNRTCErrorInvalidMode 使用场景不符
      QNRTCErrorInvalidRole 用户角色不符
    QNConnectionState
    • typedef NS_ENUM(NSUInteger, QNConnectionState)
    • 房间连接状态

      code describe message
      QNConnectionStateDisconnected 空闲状态,初始状态或者退出后都会进入该状态
      QNConnectionStateConnecting 正在加入的状态
      QNConnectionStateConnected 已加入的状态
      QNConnectionStateReconnecting 正在重连的状态
      QNConnectionStateReconnected 重连成功的状态
    QNAuthorizationStatus
    • typedef NS_ENUM(NSUInteger, QNAuthorizationStatus)
    • 设备授权状态

      code describe message
      QNAuthorizationStatusNotDetermined 还没有确定是否授权
      QNAuthorizationStatusRestricted 设备受限,一般在家长模式下设备会受限
      QNAuthorizationStatusDenied 拒绝授权
      QNAuthorizationStatusAuthorized 已授权
    QNAudioMusicMixerState
    • typedef NS_ENUM(NSUInteger, QNAudioMusicMixerState)
    • 背景音乐混音状态

      code describe message
      QNAudioMusicMixerStateIdle 初始状态
      QNAudioMusicMixerStateMixing 正在混音的状态
      QNAudioMusicMixerStatePaused 暂停混音的状态态
      QNAudioMusicMixerStateStopped 停止混音的状态
      QNAudioMusicMixerStateCompleted 混音完成的状态
    QNTrackKind
    • typedef NS_ENUM(NSUInteger, QNTrackKind)
    • 定义 Track 的类型

      code describe message
      QNTrackKindAudio 音频类型
      QNTrackKindVideo 视频类型
    QNAudioDeviceType
    • typedef NS_ENUM(NSUInteger, QNAudioDeviceType)
    • 音频设备的类型

      code describe message
      QNAudioDeviceTypeSpeaker 扬声器
      QNAudioDeviceTypeReceiver 听筒
      QNAudioDeviceTypeWiredHeadphone 有线耳机
      QNAudioDeviceTypeBluetooth 蓝牙
    QNRTCPolicy
    • typedef NS_ENUM(NSUInteger, QNRTCPolicy)
    • 媒体流的连接方式

      code describe message
      QNRTCPolicyForceUDP 使用 UDP
      QNRTCPolicyForceTCP 使用 TCP
      QNRTCPolicyPreferUDP 优先 UDP,不通的话自动改为 TCP
    QNNetworkGrade
    • typedef NS_ENUM(NSUInteger, QNNetworkGrade)
    • 网络质量等级

      code describe message
      QNNetworkGradeInvalid 初始状态
      QNNetworkGradeExcellent 网络优
      QNNetworkGradeGood 网络良
      QNNetworkGradeGeneral 网络一般
      QNNetworkGradePoor 网络差
    QNClientMode
    • typedef NS_ENUM(NSUInteger, QNClientMode)
    • 使用场景

      code describe message
      QNClientModeRTC 通信场景(默认)
      QNClientModeLive 直播场景
    QNClientRole
    • typedef NS_ENUM(NSUInteger, QNClientRole)
    • 用户角色

      code describe message
      QNClientRoleBroadcaster 主播角色
      QNClientRoleAudience 观众角色
    QNMediaRelayState
    • typedef NS_ENUM(NSUInteger, QNMediaRelayState)
    • 跨房媒体转发状态

      code describe message
      QNMediaRelayStateSuccess 成功
      QNMediaRelayStateStopped 主动停止
      QNMediaRelayStateInvalidToken 无效token
      QNMediaRelayStateNoRoom 目标房间不存在
      QNMediaRelayStateRoomClosed 目标房间已关闭
      QNMediaRelayStatePlayerExisted 目标房间存在相同用户名
      QNMediaRelayStateUnknown 未知状态
    QNVideoFillModeType
    • typedef enum {...}QNVideoFillModeType
    • 视频填充模式

      code describe message
      QNVideoFillModeNone 默认
      QNVideoFillModeStretch 拉伸以填充整个视图,这可能会使图像超出其正常纵横比
      QNVideoFillModePreserveAspectRatio 保持源图像的纵横比,添加指定背景色的条
      QNVideoFillModePreserveAspectRatioAndFill 保持源图像的纵横比,放大其中心以填充视图
    QNTrackProfile
    • typedef NS_ENUM(NSUInteger, QNTrackProfile)
    • 大小流等级

      code describe message
      QNTrackProfileLow 低分辨率
      QNTrackProfileMedium 中分辨率
      QNTrackProfileHigh 高分辨率
    QNConnectionDisconnectedReason
    • typedef NS_ENUM(NSUInteger, QNConnectionDisconnectedReason)
    • 断联原因

      code describe message
      QNConnectionDisconnectedReasonLeave 主动退出
      QNConnectionDisconnectedReasonKickedOut 被踢出房间
      QNConnectionDisconnectedReasonRoomClosed 房间被关
      QNConnectionDisconnectedReasonRoomFull 房间人数已满
      QNConnectionDisconnectedReasonError 发生错误异常断开
    Block
    QNPublishResultCallback
    • typedef void (^QNPublishResultCallback)(BOOL onPublished, NSError *error);
    • 用户发布 Track 的 Callback

    QNClientRoleResultCallback
    • typedef void (^QNClientRoleResultCallback)(QNClientRole newRole, NSError *error);
    • 设置用户角色的 Callback.

    QNMediaRelayResultCallback
    • typedef void (^QNMediaRelayResultCallback)(NSDictionary *state, NSError *error);
    • 跨房间媒体转发的 Callback.

      此接口回调的是所有跨房目标房间的状态。具体每个目标房间转发状态,需要参考回调参数中目标房间对应的 QNMediaRelayState

    以上内容是否对您有帮助?
  • Qvm free helper
    Close