AlivcLivePusher  4.4.6
Aliyun Live Pusher API Reference Manual for iOS Platforms
AlivcLivePushConfig Class Reference

推流配置类 More...

Inheritance diagram for AlivcLivePushConfig:

Instance Methods

(void) - addWatermarkWithPath:watermarkCoordX:watermarkCoordY:watermarkWidth:
 添加水印 最多支持3个水印 More...
 
(NSArray< NSDictionary * > *) - getAllWatermarks
 获取全部水印 More...
 
(CGSize) - getPushResolution
 获取推流宽高具体数值 More...
 
(instancetype) - initWithResolution:
 init 分辨率 其余值为默认值 More...
 
(void) - removeWatermarkWithPath:
 移除水印 More...
 

Properties

int audioBitrate
 音频编码码率 默认 : 64 范围 : [10,1000] 单位 : Kbps More...
 
AlivcLivePushAudioChannel audioChannel
 声道数 默认 : AlivcLivePushAudioChannel_1 单声道 More...
 
AlivcLivePushAudioEncoderMode audioEncoderMode
 音频编码模式 默认 : AlivcLivePushAudioEncoderModeSoft More...
 
AlivcLivePushAudioEncoderProfile audioEncoderProfile
 音频编码格式 默认 : AlivcLivePushAudioEncoderProfile_AAC_LC More...
 
BOOL audioFromExternal
 外部自定义数据是否包含音频 默认 : YES 注:在ios录屏推流中,可以将audioFromExtern设置成NO,这样音频由sdk负责,视频由插件负责 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置audioFromExternal,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流 More...
 
bool audioOnly
 纯音频推流,只有RTMP推流才支持纯音频推流,当前RTC不支持纯音频推流 默认 : false 注 : 与 videoOnly互斥 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置audioOnly,AlivcLivePushInteractiveMode模式下暂时不支持纯音频推流 More...
 
AlivcLivePushAudioSampleRate audioSampleRate
 音频采样率 默认 : AlivcLivePushAudioSampleRate48000 More...
 
AlivcLivePusherAudioScenario audioScene
 音频应用场景 默认:AlivcLivePusherAudioScenarioDefaultMode 默认模式 More...
 
AlivcLivePusherAudioSessionOperationRestriction audioSessionOperationRestriction
 设置SDK对AVAudioSession的控制权限 默认: AlivcLivePusherAudioSessionOperationRestrictionNone More...
 
bool autoFocus
 自动聚焦 默认 : true More...
 
NSDictionary * businessInfo
 业务信息 More...
 
AlivcLivePushCameraType cameraType
 摄像头类型 默认 : AlivcLivePushCameraTypeFront More...
 
int connectRetryCount
 重连次数 默认 : 5 范围 : [0,100] More...
 
float connectRetryInterval
 重连时长 默认 : 1000 范围 : (0,10000] 单位 : ms More...
 
bool enableAutoBitrate
 是否打开码率自适应 默认 : true More...
 
bool enableAutoResolution
 是否打开分辨率自适应 (动态分辨率) 默认 : false 注 : qualityMode在custom模式下,分辨率自适应无效 More...
 
BOOL enableExternSampleBufferSize
 外部自定义数据时,针对不包含在AlivcLivePushResolution枚举中提供通用的长宽比,为了避免图像被裁剪,开启enableExternSampleBufferSize开关,SDK将使用sampleBufferSize 输入的分辨率为目标分辨率 注:仅用于外部自定义数据推流,并且输入的视频不是通用长宽比,避免图像被裁剪,例如在ios录屏推流中可使用 默认值:NO 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置sampleBufferSize,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流 More...
 
bool enableNarrowbandAndHDForScreenPusher
 是否在抓屏推流场景下打开窄带高清(更低的带宽,更高的清晰度)开关 默认 : true More...
 
AlivcLivePushAudioFormat externAudioFormat
 外部自定义音频数据 默认 : unknown 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置externAudioFormat,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流 More...
 
bool externMainStream
 是否外部自定义数据推流 默认 : false 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置externMainStream,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流 More...
 
AlivcLivePushVideoFormat externVideoFormat
 外部自定义视频数据 默认 : unknown 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置externVideoFormat,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流 More...
 
bool flash
 是否开启闪光灯 默认 : false More...
 
AlivcLivePushFPS fps
 视频采集帧率 默认 : AlivcLivePushFPS20 单位 : Frames per Second More...
 
int initialVideoBitrate
 初始视频编码码率 默认 : 800 范围 : [100,5000] 单位 : Kbps More...
 
AlivcLivePushMode livePushMode
 默认:AlivcLivePushBasicMode 基础模式 SDK 的工作模式,SDK提供基础模式和互动模式 基础模式不支持连麦、PK等实时互动需求,常规的RTMP推流、RTS推流使用次模式即可 互动模式,支持连麦、PK等实时互动,如果一场直播有互动需求,建议使用该模式 More...
 
AlivcLivePushFPS minFps
 最小视频采集帧率 默认 : AlivcLivePushFPS8 单位 : Frames per Second 不可大于 视频采集帧率fps More...
 
int minVideoBitrate
 最小视频编码码率 默认 : 200 范围 : [100,5000] 单位 : Kbps More...
 
AlivcLivePushMonitorLevel monitorLevel
 SDK质量监控等级,针对嵌入式场景,可以指定精简的监控信息 More...
 
UIImage * networkPoorImg
 码率低图片 More...
 
bool openBFrame
 视频硬编模式下是否开启B帧 默认:NO More...
 
AlivcLivePushOrientation orientation
 推流方向 : 竖屏、90度横屏、270度横屏 默认 : AlivcLivePushOrientationPortrait More...
 
UIImage * pauseImg
 暂停推流图片 More...
 
AlivcPusherPreviewDisplayMode previewDisplayMode
 预览显示模式 默认 : fit More...
 
bool previewMirror
 预览镜像 默认 : false 关闭镜像 More...
 
bool pushMirror
 推流镜像 默认 : false 关闭镜像 More...
 
AlivcLivePushQualityMode qualityMode
 推流模式 默认 : AlivcLivePushQualityModeResolutionFirst 清晰度优先 描述 : 选择 ResolutionFirst 模式时,SDK内部会优先保障推流视频的清晰度; 选择 FluencyFirst 模式时,SDK内部会优先保障推流视频的流畅度; 以上两种模式下,所有码率与帧率的设置均不生效,SDK会根据您设置的分辨率做出默认设置。 选择 Custom 模式时,SDK会根据您自定义设置的帧率与码率进行推流。 More...
 
BOOL requireGLSharedContext
 开启 openGL Shared Context 模式 默认 : false More...
 
AlivcLivePushResolution resolution
 分辨率 默认 : AlivcLivePushDefinition540P More...
 
CGSize sampleBufferSize
 外部自定义数据时,针对不包含在AlivcLivePushResolution枚举中提供的通用长宽比,为了避免图像被裁剪,可以指定输入视频的长宽比为输出视频的长宽比 注:该字段可以用在ios屏幕推流中,只有enableExternBufferSize设置为YES后,才将sampleBufferSize作为目标分辨率 当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置sampleBufferSize,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流 More...
 
int sendDataTimeout
 网络发送数据超时 默认 : 3000 单位 : ms More...
 
int targetVideoBitrate
 目标视频编码码率 默认 : 800 范围 : [100,5000] 单位 : Kbps More...
 
bool useAliyunPlayerForBGM
 设置背景音乐使用阿里云播放器来播放,默认使用内置播放 内置播放支持大部分场景,若有需要特别的格式,可以切换至阿里云播放器,需要app添加阿里云播放器5.4.1及以上版本的依赖 默认:false More...
 
AlivcLivePushVideoEncodeGOP videoEncodeGop
 关键帧间隔 默认 : AlivcLivePushVideoEncodeGOP_2 单位 : s More...
 
AlivcLivePushVideoEncoderMode videoEncoderMode
 视频编码模式 默认 : AlivcLivePushVideoEncoderModeHard More...
 
AlivcLivePushVideoEncoderModeHardCodec videoHardEncoderCodec
 视频硬编码方式 (当videoEncoderMode设置为AlivcLivePushVideoEncoderModeHard时,有两种可选的视频硬件编码方式:H264和HEVC(H265)) 默认:AlivcLivePushVideoEncoderModeHardCodecH264,使用H264进行硬件编码 More...
 
bool videoOnly
 纯视频推流,只有RTMP推流才支持纯视频推流,当前RTC不支持纯视频推流 默认 : false 注 : 与 audioOnly互斥 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置videoOnly,AlivcLivePushInteractiveMode模式下暂时不支持纯视频推流 More...
 

Detailed Description

推流配置类

Method Documentation

◆ addWatermarkWithPath:watermarkCoordX:watermarkCoordY:watermarkWidth:

- (void) addWatermarkWithPath: (NSString *)  path
watermarkCoordX: (CGFloat)  coordX
watermarkCoordY: (CGFloat)  coordY
watermarkWidth: (CGFloat)  ALIVCLIVEPUSH_DEPRECAETD_WATERMARK_API 

添加水印 最多支持3个水印

Parameters
path水印路径
coordX水印左上顶点x的相对坐标 [0,1]
coordY水印左上顶点y的相对坐标 [0,1]
width水印的相对宽度 (水印会根据水印图片实际大小和水印宽度等比缩放) (0,1] 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置水印相关接口,AlivcLivePushInteractiveMode模式下暂时不支持设置水印

◆ getAllWatermarks

- (NSArray<NSDictionary *> *) getAllWatermarks

获取全部水印

key:watermarkPath value:水印图片路径 key:watermarkCoordX value:x值 key:watermarkCoordY value:y值 key:watermarkWidth value:width值

Returns
全部水印配置数组

◆ getPushResolution

- (CGSize) getPushResolution

获取推流宽高具体数值

Returns
推流宽高Rect

◆ initWithResolution:

- (instancetype) initWithResolution: (AlivcLivePushResolution)  resolution

init 分辨率 其余值为默认值

Parameters
resolution推流分辨率
Returns
self

◆ removeWatermarkWithPath:

- (void) removeWatermarkWithPath: (NSString *)  ALIVCLIVEPUSH_DEPRECAETD_WATERMARK_API

移除水印

Parameters
path水印路径

Property Documentation

◆ audioBitrate

- (int) audioBitrate
readwritenonatomicassign

音频编码码率 默认 : 64 范围 : [10,1000] 单位 : Kbps

◆ audioChannel

- (AlivcLivePushAudioChannel) audioChannel
readwritenonatomicassign

声道数 默认 : AlivcLivePushAudioChannel_1 单声道

◆ audioEncoderMode

- (AlivcLivePushAudioEncoderMode) audioEncoderMode
readwritenonatomicassign

音频编码模式 默认 : AlivcLivePushAudioEncoderModeSoft

◆ audioEncoderProfile

- (AlivcLivePushAudioEncoderProfile) audioEncoderProfile
readwritenonatomicassign

音频编码格式 默认 : AlivcLivePushAudioEncoderProfile_AAC_LC

◆ audioFromExternal

- (BOOL) audioFromExternal
readwritenonatomicassign

外部自定义数据是否包含音频 默认 : YES 注:在ios录屏推流中,可以将audioFromExtern设置成NO,这样音频由sdk负责,视频由插件负责 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置audioFromExternal,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流

◆ audioOnly

- (bool) audioOnly
readwritenonatomicassign

纯音频推流,只有RTMP推流才支持纯音频推流,当前RTC不支持纯音频推流 默认 : false 注 : 与 videoOnly互斥 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置audioOnly,AlivcLivePushInteractiveMode模式下暂时不支持纯音频推流

◆ audioSampleRate

- (AlivcLivePushAudioSampleRate) audioSampleRate
readwritenonatomicassign

音频采样率 默认 : AlivcLivePushAudioSampleRate48000

◆ audioScene

- (AlivcLivePusherAudioScenario) audioScene
readwritenonatomicassign

音频应用场景 默认:AlivcLivePusherAudioScenarioDefaultMode 默认模式

◆ audioSessionOperationRestriction

- (AlivcLivePusherAudioSessionOperationRestriction) audioSessionOperationRestriction
readwritenonatomicassign

设置SDK对AVAudioSession的控制权限 默认: AlivcLivePusherAudioSessionOperationRestrictionNone

◆ autoFocus

- (bool) autoFocus
readwritenonatomicassign

自动聚焦 默认 : true

◆ businessInfo

- (NSDictionary*) businessInfo
readwritenonatomiccopy

业务信息

◆ cameraType

- (AlivcLivePushCameraType) cameraType
readwritenonatomicassign

摄像头类型 默认 : AlivcLivePushCameraTypeFront

◆ connectRetryCount

- (int) connectRetryCount
readwritenonatomicassign

重连次数 默认 : 5 范围 : [0,100]

◆ connectRetryInterval

- (float) connectRetryInterval
readwritenonatomicassign

重连时长 默认 : 1000 范围 : (0,10000] 单位 : ms

◆ enableAutoBitrate

- (bool) enableAutoBitrate
readwritenonatomicassign

是否打开码率自适应 默认 : true

◆ enableAutoResolution

- (bool) enableAutoResolution
readwritenonatomicassign

是否打开分辨率自适应 (动态分辨率) 默认 : false 注 : qualityMode在custom模式下,分辨率自适应无效

◆ enableExternSampleBufferSize

- (BOOL) enableExternSampleBufferSize
readwritenonatomicassign

外部自定义数据时,针对不包含在AlivcLivePushResolution枚举中提供通用的长宽比,为了避免图像被裁剪,开启enableExternSampleBufferSize开关,SDK将使用sampleBufferSize 输入的分辨率为目标分辨率 注:仅用于外部自定义数据推流,并且输入的视频不是通用长宽比,避免图像被裁剪,例如在ios录屏推流中可使用 默认值:NO 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置sampleBufferSize,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流

◆ enableNarrowbandAndHDForScreenPusher

- (bool) enableNarrowbandAndHDForScreenPusher
readwritenonatomicassign

是否在抓屏推流场景下打开窄带高清(更低的带宽,更高的清晰度)开关 默认 : true

◆ externAudioFormat

- (AlivcLivePushAudioFormat) externAudioFormat
readwritenonatomicassign

外部自定义音频数据 默认 : unknown 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置externAudioFormat,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流

◆ externMainStream

- (bool) externMainStream
readwritenonatomicassign

是否外部自定义数据推流 默认 : false 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置externMainStream,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流

◆ externVideoFormat

- (AlivcLivePushVideoFormat) externVideoFormat
readwritenonatomicassign

外部自定义视频数据 默认 : unknown 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置externVideoFormat,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流

◆ flash

- (bool) flash
readwritenonatomicassign

是否开启闪光灯 默认 : false

◆ fps

- (AlivcLivePushFPS) fps
readwritenonatomicassign

视频采集帧率 默认 : AlivcLivePushFPS20 单位 : Frames per Second

◆ initialVideoBitrate

- (int) initialVideoBitrate
readwritenonatomicassign

初始视频编码码率 默认 : 800 范围 : [100,5000] 单位 : Kbps

◆ livePushMode

- (AlivcLivePushMode) livePushMode
readwritenonatomicassign

默认:AlivcLivePushBasicMode 基础模式 SDK 的工作模式,SDK提供基础模式和互动模式 基础模式不支持连麦、PK等实时互动需求,常规的RTMP推流、RTS推流使用次模式即可 互动模式,支持连麦、PK等实时互动,如果一场直播有互动需求,建议使用该模式

◆ minFps

- (AlivcLivePushFPS) minFps
readwritenonatomicassign

最小视频采集帧率 默认 : AlivcLivePushFPS8 单位 : Frames per Second 不可大于 视频采集帧率fps

◆ minVideoBitrate

- (int) minVideoBitrate
readwritenonatomicassign

最小视频编码码率 默认 : 200 范围 : [100,5000] 单位 : Kbps

◆ monitorLevel

- (AlivcLivePushMonitorLevel) monitorLevel
readwritenonatomicassign

SDK质量监控等级,针对嵌入式场景,可以指定精简的监控信息

◆ networkPoorImg

- (UIImage*) networkPoorImg
readwritenonatomicretain

码率低图片

◆ openBFrame

- (bool) openBFrame
readwritenonatomicassign

视频硬编模式下是否开启B帧 默认:NO

◆ orientation

- (AlivcLivePushOrientation) orientation
readwritenonatomicassign

推流方向 : 竖屏、90度横屏、270度横屏 默认 : AlivcLivePushOrientationPortrait

◆ pauseImg

- (UIImage*) pauseImg
readwritenonatomicretain

暂停推流图片

◆ previewDisplayMode

- (AlivcPusherPreviewDisplayMode) previewDisplayMode
readwritenonatomicassign

预览显示模式 默认 : fit

◆ previewMirror

- (bool) previewMirror
readwritenonatomicassign

预览镜像 默认 : false 关闭镜像

◆ pushMirror

- (bool) pushMirror
readwritenonatomicassign

推流镜像 默认 : false 关闭镜像

◆ qualityMode

- (AlivcLivePushQualityMode) qualityMode
readwritenonatomicassign

推流模式 默认 : AlivcLivePushQualityModeResolutionFirst 清晰度优先 描述 : 选择 ResolutionFirst 模式时,SDK内部会优先保障推流视频的清晰度; 选择 FluencyFirst 模式时,SDK内部会优先保障推流视频的流畅度; 以上两种模式下,所有码率与帧率的设置均不生效,SDK会根据您设置的分辨率做出默认设置。 选择 Custom 模式时,SDK会根据您自定义设置的帧率与码率进行推流。

◆ requireGLSharedContext

- (BOOL) requireGLSharedContext
readwritenonatomicassign

开启 openGL Shared Context 模式 默认 : false

◆ resolution

- (AlivcLivePushResolution) resolution
readwritenonatomicassign

分辨率 默认 : AlivcLivePushDefinition540P

◆ sampleBufferSize

- (CGSize) sampleBufferSize
readwritenonatomicassign

外部自定义数据时,针对不包含在AlivcLivePushResolution枚举中提供的通用长宽比,为了避免图像被裁剪,可以指定输入视频的长宽比为输出视频的长宽比 注:该字段可以用在ios屏幕推流中,只有enableExternBufferSize设置为YES后,才将sampleBufferSize作为目标分辨率 当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置sampleBufferSize,AlivcLivePushInteractiveMode模式下暂时不支持外部音视频推流

◆ sendDataTimeout

- (int) sendDataTimeout
readwritenonatomicassign

网络发送数据超时 默认 : 3000 单位 : ms

◆ targetVideoBitrate

- (int) targetVideoBitrate
readwritenonatomicassign

目标视频编码码率 默认 : 800 范围 : [100,5000] 单位 : Kbps

◆ useAliyunPlayerForBGM

- (bool) useAliyunPlayerForBGM
readwritenonatomicassign

设置背景音乐使用阿里云播放器来播放,默认使用内置播放 内置播放支持大部分场景,若有需要特别的格式,可以切换至阿里云播放器,需要app添加阿里云播放器5.4.1及以上版本的依赖 默认:false

◆ videoEncodeGop

- (AlivcLivePushVideoEncodeGOP) videoEncodeGop
readwritenonatomicassign

关键帧间隔 默认 : AlivcLivePushVideoEncodeGOP_2 单位 : s

◆ videoEncoderMode

- (AlivcLivePushVideoEncoderMode) videoEncoderMode
readwritenonatomicassign

视频编码模式 默认 : AlivcLivePushVideoEncoderModeHard

◆ videoHardEncoderCodec

- (AlivcLivePushVideoEncoderModeHardCodec) videoHardEncoderCodec
readwritenonatomicassign

视频硬编码方式 (当videoEncoderMode设置为AlivcLivePushVideoEncoderModeHard时,有两种可选的视频硬件编码方式:H264和HEVC(H265)) 默认:AlivcLivePushVideoEncoderModeHardCodecH264,使用H264进行硬件编码

◆ videoOnly

- (bool) videoOnly
readwritenonatomicassign

纯视频推流,只有RTMP推流才支持纯视频推流,当前RTC不支持纯视频推流 默认 : false 注 : 与 audioOnly互斥 注:当前SDK暂时只支持在livePushMode = AlivcLivePushBasicMode 模式下 设置videoOnly,AlivcLivePushInteractiveMode模式下暂时不支持纯视频推流


The documentation for this class was generated from the following file: