AlivcLivePusher  v4.4.8
Aliyun Live Pusher API Reference Manual for iOS Platforms
AlivcLivePushConstants.h File Reference

Functions

typedef NS_ENUM (NSInteger, AlivcLiveBufferType)
 视频数据类型 More...
 
typedef NS_ENUM (NSInteger, AlivcLiveLicenseCheckResultCode)
 SDK License 校验枚举 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePlayerError)
 互动模式拉流错误码 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePlayRotationMode)
 视频旋转角度 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushAudioChannel)
 声道数 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushAudioEffectReverbMode)
 音效混响模式 AlivcLivePushAudioEffectReverb_Off 关闭混响 AlivcLivePushAudioEffectReverb_Vocal_I 人声I AlivcLivePushAudioEffectReverb_Vocal_II 人声II AlivcLivePushAudioEffectReverb_Bathroom 澡堂 AlivcLivePushAudioEffectReverb_Small_Room_Bright 明亮小房间 AlivcLivePushAudioEffectReverb_Small_Room_Dark 黑暗小房间 AlivcLivePushAudioEffectReverb_Medium_Room 中等房间 AlivcLivePushAudioEffectReverb_Large_Room 大房间 AlivcLivePushAudioEffectReverb_Church_Hall 教堂走廊 AlivcLivePushAudioEffectReverb_Mode_Max 占位符 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushAudioEffectVoiceChangeMode)
 变声音效模式 AlivcLivePushAudioEffectvVoiceChange_OFF 关闭变声音效 AlivcLivePushAudioEffectvVoiceChange_OLD_MAN 老人 AlivcLivePushAudioEffectvVoiceChange_BABYBOY 男孩 AlivcLivePushAudioEffectvVoiceChange_BABYGILR 女孩 AlivcLivePushAudioEffectvVoiceChange_ROBOT 机器人 AlivcLivePushAudioEffectvVoiceChange_DAIMO 大魔王 AlivcLivePushAudioEffectvVoiceChange_KTV KTV AlivcLivePushAudioEffectvVoiceChangeR_ECHO 回声 AlivcLivePushAudioEffectvVoiceChange_MAX 占位符 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushAudioEncoderMode)
 音频编码模式 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushAudioEncoderProfile)
 音频编码格式 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushAudioFormat)
 sound format More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushAudioSampleRate)
 音频采样率 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushCameraType)
 摄像头方向 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePusherAudioScenario)
 音频应用场景 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePusherAudioSessionOperationRestriction)
 SDK对Audio Session的控制权限 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushFPS)
 
typedef NS_ENUM (NSInteger, AlivcLivePushLogLevel)
 SDK log级别 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushMode)
 支持模式 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushMonitorLevel)
 SDK监控多个质量信息,针对嵌入式场景,可以指定精简的监控信息 AlivcLivePushMonitorLevelAll 监控全量质量信息 AlivcLivePushMonitorLevelCut 监控精简质量信息 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushOrientation)
 推流屏幕方向 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushPublishType)
 推流协议 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushQualityMode)
 推流模式 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushResolution)
 分辨率 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushScallingMode)
 缩放模式 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushStatus)
 推流状态 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushUserRole)
 用户角色 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushVideoEncodeGOP)
 关键帧间隔 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushVideoEncoderMode)
 视频编码模式 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushVideoEncoderModeHardCodec)
 硬编码方式 More...
 
typedef NS_ENUM (NSInteger, AlivcLivePushVideoFormat)
 Image format. More...
 
typedef NS_ENUM (NSInteger, AlivcLiveTranscodingCropMode)
 云端混流(转码)裁剪模式 More...
 
typedef NS_ENUM (NSInteger, AlivcPusherErrorCode)
 接口返回值错误码 More...
 
typedef NS_ENUM (NSInteger, AlivcPusherPreviewDisplayMode)
 预览窗口显示模式 More...
 
typedef NS_ENUM (NSUInteger, AlivcLivePlayRenderMode)
 视图显示模式 More...
 

Function Documentation

◆ NS_ENUM() [1/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLiveBufferType   
)

视频数据类型

YUV裸数据

CVPixelBuffer数据

◆ NS_ENUM() [2/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLiveLicenseCheckResultCode   
)

SDK License 校验枚举

  • AlivcLiveLicenseCheckResultCodeSuccess SDK校验license成功,可使用SDK功能
  • AlivcLiveLicenseCheckResultCodeCertInvalid licenseFile证书非法
  • AlivcLiveLicenseCheckResultCodeCertExpired licenseFile证书过期
  • AlivcLiveLicenseCheckResultCodeLicenseExpired licenseKey过期
  • AlivcLiveLicenseCheckResultCodeAppIdInvalid APPID非法
  • AlivcLiveLicenseCheckResultCodeLicenseError license错误,license key或者 license file 非法
  • AlivcLiveLicenseCheckResultCodeBusinessInvalid 无效的业务信息
  • AlivcLiveLicenseCheckResultCodePlatformInvalid 该平台未购买
  • AlivcLiveLicenseCheckResultCodeUninitialized 未初始化

◆ NS_ENUM() [3/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePlayerError   
)

互动模式拉流错误码

  • AlivcLivePlayErrorStreamNotFound 播放URL指定的播放流不存在
  • AlivcLivePlayErrorStreamStopped 播放URL指定的播放流已停止推流

◆ NS_ENUM() [4/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePlayRotationMode   
)

视频旋转角度

  • AlivcLivePlayRotationMode_0 视频旋转角度 - 0
  • AlivcLivePlayRotationMode_90 视频旋转角度 - 90
  • AlivcLivePlayRotationMode_180 视频旋转角度 - 180
  • AlivcLivePlayRotationMode_270 视频旋转角度 - 270

◆ NS_ENUM() [5/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushAudioChannel   
)

声道数

  • AlivcLivePushAudioChannelOne: 单声道
  • AlivcLivePushAudioChannelTwo: 双声道

◆ NS_ENUM() [6/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushAudioEffectReverbMode   
)

音效混响模式 AlivcLivePushAudioEffectReverb_Off 关闭混响 AlivcLivePushAudioEffectReverb_Vocal_I 人声I AlivcLivePushAudioEffectReverb_Vocal_II 人声II AlivcLivePushAudioEffectReverb_Bathroom 澡堂 AlivcLivePushAudioEffectReverb_Small_Room_Bright 明亮小房间 AlivcLivePushAudioEffectReverb_Small_Room_Dark 黑暗小房间 AlivcLivePushAudioEffectReverb_Medium_Room 中等房间 AlivcLivePushAudioEffectReverb_Large_Room 大房间 AlivcLivePushAudioEffectReverb_Church_Hall 教堂走廊 AlivcLivePushAudioEffectReverb_Mode_Max 占位符

关闭混响

人声I

人声II

澡堂

明亮小房间

黑暗小房间

中等房间

大房间

教堂走廊

占位符

◆ NS_ENUM() [7/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushAudioEffectVoiceChangeMode   
)

变声音效模式 AlivcLivePushAudioEffectvVoiceChange_OFF 关闭变声音效 AlivcLivePushAudioEffectvVoiceChange_OLD_MAN 老人 AlivcLivePushAudioEffectvVoiceChange_BABYBOY 男孩 AlivcLivePushAudioEffectvVoiceChange_BABYGILR 女孩 AlivcLivePushAudioEffectvVoiceChange_ROBOT 机器人 AlivcLivePushAudioEffectvVoiceChange_DAIMO 大魔王 AlivcLivePushAudioEffectvVoiceChange_KTV KTV AlivcLivePushAudioEffectvVoiceChangeR_ECHO 回声 AlivcLivePushAudioEffectvVoiceChange_MAX 占位符

关闭变声音效

老人

男孩

女孩

机器人

大魔王

KTV

回声

占位符

◆ NS_ENUM() [8/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushAudioEncoderMode   
)

音频编码模式

  • AlivcLivePushAudioEncoderModeHard: 硬编码
  • AlivcLivePushAudioEncoderModeSoft: 软编码

◆ NS_ENUM() [9/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushAudioEncoderProfile   
)

音频编码格式

  • AlivcLivePushAudioEncoderProfile_AAC_LC: AAC_LC
  • AlivcLivePushAudioEncoderProfile_HE_AAC: HE_AAC
  • AlivcLivePushAudioEncoderProfile_HE_AAC_V2: HE_AAC_V2
  • AlivcLivePushAudioEncoderProfile_AAC_LD: AAC_LD

◆ NS_ENUM() [10/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushAudioFormat   
)

sound format

◆ NS_ENUM() [11/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushAudioSampleRate   
)

音频采样率

  • AlivcLivePushAudioSample32000: 32000Hz

◆ NS_ENUM() [12/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushCameraType   
)

摄像头方向

  • AlivcLivePushCameraTypeBack: 后置摄像头
  • AlivcLivePushCameraTypeFront: 前置摄像头

◆ NS_ENUM() [13/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePusherAudioScenario   
)

音频应用场景

  • AlivcLivePusherAudioScenarioDefaultMode 默认场景,一般的直播场景推荐使用
  • AlivcLivePusherAudioScenarioMediaMode 媒体场景,保真人声与音乐音质等 推荐使用
  • AlivcLivePusherAudioScenarioMusicMode 音乐场景,高保真音乐音质,乐器教学等对音乐音质有要求的场景推荐使用

◆ NS_ENUM() [14/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePusherAudioSessionOperationRestriction   
)

SDK对Audio Session的控制权限

  • AlivcLivePusherAudioSessionOperationRestrictionNone 默认,无限制,SDK完全控制AVAudioSession
  • AlivcLivePusherAudioSessionOperationRestrictionSetCategory SDK不能修改AVAudioSession的Category
  • AlivcLivePusherAudioSessionOperationRestrictionConfigureSession SDK不能修改AVAudioSession的配置,包括Category,Mode,CategoryOptions
  • AlivcLivePusherAudioSessionOperationRestrictionDeactivateSession SDK不能关闭AVAudioSession的活动状态,离开频道时,AVAudioSession依然处于活动状态

◆ NS_ENUM() [15/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushFPS   
)

◆ NS_ENUM() [16/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushLogLevel   
)

SDK log级别

  • AlivcLivePushLogLevelAll: 全部
  • AlivcLivePushLogLevelVerbose: 冗长
  • AlivcLivePushLogLevelDebug: 调试
  • AlivcLivePushLogLevelInfo: 提示
  • AlivcLivePushLogLevelWarn: 警告
  • AlivcLivePushLogLevelError: 错误
  • AlivcLivePushLogLevelNone: 不输出日志

◆ NS_ENUM() [17/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushMode   
)

支持模式

  • AlivcLivePushBasicMode:基础模式,默认模式,常规的RTMP推流、RTS推流,不支持连麦、PK等实时互动,如果一场直播没有互动需求,建议使用该模式 -AlivcLivePushInteractiveMode:互动模式,支持连麦、PK等实时互动,如果一场直播有互动需求,建议使用该模式

◆ NS_ENUM() [18/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushMonitorLevel   
)

SDK监控多个质量信息,针对嵌入式场景,可以指定精简的监控信息 AlivcLivePushMonitorLevelAll 监控全量质量信息 AlivcLivePushMonitorLevelCut 监控精简质量信息

◆ NS_ENUM() [19/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushOrientation   
)

推流屏幕方向

  • AlivcLivePushOrientationPortrait: 竖屏推流
  • AlivcLivePushOrientationLandscapeLeft: 横屏Left方向
  • AlivcLivePushOrientationLandscapeRight: 横屏Right方向

◆ NS_ENUM() [20/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushPublishType   
)

推流协议

  • AlivcLivePushPublishType_RTMP: RTMP协议推流
  • AlivcLivePushPublishType_RTP: RTP协议推流

◆ NS_ENUM() [21/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushQualityMode   
)

推流模式

  • AlivcLivePushQualityModeResolutionFirst: 清晰度优先模式
  • AlivcLivePushQualityModeFluencyFirst: 流畅度优先模式
  • AlivcLivePushQualityModeCustom: 自定义模式

◆ NS_ENUM() [22/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushResolution   
)

分辨率

  • AlivcLivePushResolution180P: 180P
  • AlivcLivePushResolution240P: 240P
  • AlivcLivePushResolution360P: 360P
  • AlivcLivePushResolution480P: 480P
  • AlivcLivePushResolution540P: 540P
  • AlivcLivePushResolution720P: 720P
  • AlivcLivePushResolution1080P:1080P
  • AlivcLivePushResolutionPassThrough: pass through only used for external main video stream

◆ NS_ENUM() [23/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushScallingMode   
)

缩放模式

  • AlivcLivePushScallingModeFit: 填充
  • AlivcLivePushScallingModeCrop: 裁剪

◆ NS_ENUM() [24/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushStatus   
)

推流状态

  • AlivcLivePushStatusIdle: 空闲
  • AlivcLivePushStatusInitialized: 初始化成功
  • AlivcLivePushStatusPreviewing: 打开预览中
  • AlivcLivePushStatusPreviewed: 正在预览
  • AlivcLivePushStatusPushing: 推流连接中
  • AlivcLivePushStatusPushed: 正在推流
  • AlivcLivePushStatusStoping: 停止推流中
  • AlivcLivePushStatusPausing: 暂停推流中
  • AlivcLivePushStatusPaused: 暂停推流
  • AlivcLivePushStatusResuming: 恢复推流中
  • AlivcLivePushStatusRestarting: 重启推流中
  • AlivcLivePushStatusError: 错误状态

◆ NS_ENUM() [25/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushUserRole   
)

用户角色

  • AliLiveRoomUserRoleAnchor:主播 -AliLiveRoomUserRoleInteractiveAudience:互动观众/连麦观众,和主播进行实时互动的观众

◆ NS_ENUM() [26/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushVideoEncodeGOP   
)

关键帧间隔

  • AlivcLivePushVideoEncodeGOP_1: 1s
  • AlivcLivePushVideoEncodeGOP_2: 2s
  • AlivcLivePushVideoEncodeGOP_3: 3s
  • AlivcLivePushVideoEncodeGOP_4: 4s
  • AlivcLivePushVideoEncodeGOP_5: 5s

◆ NS_ENUM() [27/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushVideoEncoderMode   
)

视频编码模式

  • AlivcLivePushVideoEncoderModeHard: 硬编码
  • AlivcLivePushVideoEncoderModeSoft: 软编码

◆ NS_ENUM() [28/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushVideoEncoderModeHardCodec   
)

硬编码方式

  • AlivcLivePushVideoEncoderModeHardTypeH264: 使用H264硬编码
  • AlivcLivePushVideoEncoderModeHardTypeHEVC: 使用H265硬编码

◆ NS_ENUM() [29/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLivePushVideoFormat   
)

Image format.

◆ NS_ENUM() [30/33]

typedef NS_ENUM ( NSInteger  ,
AlivcLiveTranscodingCropMode   
)

云端混流(转码)裁剪模式

  • AlivcLiveTranscodingCropModeCrop 剪裁
  • AlivcLiveTranscodingCropModeFill 填充

◆ NS_ENUM() [31/33]

typedef NS_ENUM ( NSInteger  ,
AlivcPusherErrorCode   
)

接口返回值错误码

◆ NS_ENUM() [32/33]

typedef NS_ENUM ( NSInteger  ,
AlivcPusherPreviewDisplayMode   
)

预览窗口显示模式

◆ NS_ENUM() [33/33]

typedef NS_ENUM ( NSUInteger  ,
AlivcLivePlayRenderMode   
)

视图显示模式

  • AlivcLivePlayRenderModeAuto 自动模式
  • AlivcLivePlayRenderModeStretch 延伸模式
  • AlivcLivePlayRenderModeFill 填充模式
  • AlivcLivePlayRenderModeCrop 裁剪模式