LiteAVSDK
腾讯云音视频 SDK ,服务于数万家企业客户的高可用组件,致力于最大限度地节省您的研发成本。
TXLivePushConfig

详细描述

腾讯云直播推流参数配置模块


结构体说明

◆ TXLivePushConfig

class TXLivePushConfig

属性

int homeOrientation
 
BOOL touchFocus
 
BOOL enableZoom
 
TXImagewatermark
 
CGPoint watermarkPos
 
CGRect watermarkNormalization
 
int localVideoMirrorType
 
int pauseTime
 
int pauseFps
 
TXImagepauseImg
 
int videoResolution
 
int videoFPS
 
int videoEncodeGop
 
int videoBitratePIN
 
BOOL enableAutoBitrate
 
int autoAdjustStrategy
 
int videoBitrateMax
 
int videoBitrateMin
 
int audioSampleRate
 
int audioChannels
 
BOOL enableAudioPreview
 
BOOL enablePureAudioPush
 
int connectRetryCount
 
int connectRetryInterval
 
int customModeType
 
CGSize sampleBufferSize
 
BOOL autoSampleBufferSize
 
BOOL enableNAS
 
BOOL enableAEC
 
BOOL enableHWAcceleration
 
BOOL enableAudioAcceleration
 
BOOL enableAGC
 
TXSystemAudioVolumeType volumeType
 
BOOL enableMute
 
BOOL frontCamera
 
float beautyFilterDepth
 
float whiteningFilterDepth
 
BOOL enableNearestIP
 
int rtmpChannelType
 
NSDictionary * metaData
 

属性说明

◆ audioChannels

- (int) audioChannels
readwritenonatomicassign

【字段含义】音频声道数,默认值:1(单声道)。

◆ audioSampleRate

- (int) audioSampleRate
readwritenonatomicassign

【字段含义】音频采样率,采样率越高音质越好,对于有音乐的场景请使用48000的采样率。
【推荐取值】AUDIO_SAMPLE_RATE_48000

◆ autoAdjustStrategy

- (int) autoAdjustStrategy
readwritenonatomicassign

【字段含义】码率自适应算法
【推荐取值】AUTO_ADJUST_BITRATE_STRATEGY_1

◆ autoSampleBufferSize

- (BOOL) autoSampleBufferSize
readwriteatomic

【字段含义】仅开启自定义采集时有效,YES 代表编码分辨率等于输入的 SampleBuffer 的分辨率,默认值:NO。

◆ beautyFilterDepth

- (float) beautyFilterDepth
readwritenonatomicassign

【字段含义】美颜强度,待废弃,建议直接使用 TXLivePusher 的 setBeautyStyle 函数。

◆ connectRetryCount

- (int) connectRetryCount
readwritenonatomicassign

【字段含义】推流遭遇网络连接断开时 SDK 默认重试的次数,取值范围1 - 10,默认值:3。

◆ connectRetryInterval

- (int) connectRetryInterval
readwritenonatomicassign

【字段含义】网络重连的时间间隔,单位秒,取值范围3 - 30,默认值:3。

◆ customModeType

- (int) customModeType
readwritenonatomicassign

【字段含义】自定义采集和自定义处理开关
【特别说明】该字段需要使用与运算符进行级联操作(自定义采集和自定义处理不能同时开启): 开启自定义视频采集:_config.customModeType |= CUSTOM_MODE_VIDEO_CAPTURE; 开启自定义音频采集:_config.customModeType |= CUSTOM_MODE_AUDIO_CAPTURE;

◆ enableAEC

- (BOOL) enableAEC
readwritenonatomicassign

【字段含义】是否开启回声抑制
【推荐取值】NO:回声抑制会启用通话模式音量,导致音质变差,非连麦场景下请不要开启。
【特别说明】只有在连麦模式下才需要开启 AEC,如果是普通的直播,将主播的手机和观众的手机放在一起所产生的啸叫是正常现象。

◆ enableAGC

- (BOOL) enableAGC
readwritenonatomicassign

【字段含义】是否开启音频自动增益,默认值:NO。

◆ enableAudioAcceleration

- (BOOL) enableAudioAcceleration
readwritenonatomicassign

【字段含义】开启音频硬件加速, 默认值:YES。

◆ enableAudioPreview

- (BOOL) enableAudioPreview
readwritenonatomicassign

【字段含义】是否开启耳返特效
【推荐取值】NO
【特别说明】开启耳返会消耗更多的 CPU,只有在主播带耳机唱歌的时候才有必要开启此功能。

◆ enableAutoBitrate

- (BOOL) enableAutoBitrate
readwritenonatomicassign

【字段含义】码率自适应开关,开启后,SDK 会根据网络情况自动调节视频码率,调节范围在 (videoBitrateMin - videoBitrateMax)。
【推荐取值】NO

◆ enableHWAcceleration

- (BOOL) enableHWAcceleration
readwritenonatomicassign

【字段含义】开启视频硬件加速, 默认值:YES。

◆ enableMute

- (BOOL) enableMute
readwritenonatomicassign

【字段含义】开启静音,默认值:NO。

◆ enableNAS

- (BOOL) enableNAS
readwritenonatomicassign

【字段含义】是否开启噪声抑制(注意:早期版本引入了拼写错误,考虑到接口兼容一直没有修正,正确拼写应该是 ANS)
【推荐取值】NO:ANS 对于直播环境中由其它设备外放的音乐是不友好的,通过 playBGM 设置的背景音不受影响。
【特别说明】如果直播场景只有主播在说话,ANS 有助于让主播的声音更清楚,但如果主播在吹拉弹唱,ANS 会损伤乐器的声音。

◆ enableNearestIP

- (BOOL) enableNearestIP
readwritenonatomicassign

【字段含义】是否开启就近选路,待废弃,默认值:YES。

◆ enablePureAudioPush

- (BOOL) enablePureAudioPush
readwritenonatomicassign

【字段含义】是否为纯音频推流
【推荐取值】NO
【特别说明】如果希望实现纯音频推流的功能,需要在推流前就设置该参数,否则播放端会有兼容性问题。

◆ enableZoom

- (BOOL) enableZoom
readwritenonatomicassign

【字段含义】是否允许双指手势放大预览画面,默认值:NO。

◆ frontCamera

- (BOOL) frontCamera
readwritenonatomicassign

【字段含义】是否前置摄像头,待废弃,建议直接使用 TXLivePusher 的 frontCamera 属性和 switchCamera 函数。

◆ homeOrientation

- (int) homeOrientation
readwritenonatomicassign

【字段含义】HOME 键所在方向,用来切换横竖屏推流,默认值:HOME_ORIENTATION_DOWN(竖屏推流)。
【特别说明】常用的还有 HOME_ORIENTATION_RIGHT 和 HOME_ORIENTATION_LEFT,也就是横屏推流。 改变该字段的设置以后,本地摄像头的预览画面方向也会发生改变,请调用 TXLivePush 的 setRenderRotation 进行矫正。

◆ localVideoMirrorType

- (int) localVideoMirrorType
readwritenonatomicassign

【字段含义】本地预览画面的镜像类型,默认值:LocalVideoMirrorType_Auto 即前置摄像头镜像,后置摄像头不镜像

◆ metaData

- (NSDictionary*) metaData
readwritenonatomiccopy

【字段含义】自定义 MetaData 以 key,value 方式填入 MetaData,value 只支持字符串类型,最多只支持12组数据
【特别说明】需要在推流前设置,设置的值放到 RTMP 流的 MetaData 段,播放端收到对应的 MetaData

◆ pauseFps

- (int) pauseFps
readwritenonatomicassign

【字段含义】垫片推流时的视频帧率,取值范围3 - 8,默认值:5 FPS。

◆ pauseImg

- (TXImage*) pauseImg
readwritenonatomicretain

【字段含义】垫片推流时使用的图片素材,最大尺寸不能超过1920 x 1920。

◆ pauseTime

- (int) pauseTime
readwritenonatomicassign

【字段含义】垫片推流的最大持续时间,单位秒,默认值:300s。
【特别说明】调用 TXLivePusher 的 pausePush() 接口,会暂停摄像头采集并进入垫片推流状态,如果该状态一直保持, 可能会消耗主播过多的手机流量,本字段用于指定垫片推流的最大持续时间,超过后即断开与云服务器的连接。

◆ rtmpChannelType

- (int) rtmpChannelType
readwritenonatomicassign

【字段含义】RTMP 传输通道的类型,待废弃,默认值为:AUTO。

◆ sampleBufferSize

- (CGSize) sampleBufferSize
readwriteatomicassign

【字段含义】仅开启自定义采集时有效,用于设置编码分辨率。
【特别说明】此值设置需与调用 sendVideoSampleBuffer 时传入的 SampleBuffer 的宽高比一致,否则会引起画面变形。 如果指定 autoSampleBufferSize 为 YES,则不需要设置该字段。

◆ touchFocus

- (BOOL) touchFocus
readwritenonatomicassign

【字段含义】是否允许点击曝光聚焦,默认值:NO。

◆ videoBitrateMax

- (int) videoBitrateMax
readwritenonatomicassign

【字段含义】码率自适应 - 最高码率,默认值:1000kpbs

◆ videoBitrateMin

- (int) videoBitrateMin
readwritenonatomicassign

【字段含义】码率自适应 - 最低码率,默认值:500kpbs
【推荐取值】不要设置太低的数值,过低的码率会导致运动画面出现大面积马赛克。

◆ videoBitratePIN

- (int) videoBitratePIN
readwritenonatomicassign

【字段含义】视频编码的平均码率,默认值:800kbps。
【特别说明】推荐直接使用 TXLivePusher 的 setVideoQuality 接口调整画面质量。

◆ videoEncodeGop

- (int) videoEncodeGop
readwritenonatomicassign

【字段含义】视频编码 GOP,也就是常说的关键帧间隔,单位:秒;默认值:3s。
【特别说明】推荐直接使用 TXLivePusher 的 setVideoQuality 接口调整画面质量。

◆ videoFPS

- (int) videoFPS
readwritenonatomicassign

【字段含义】视频帧率,默认值:15FPS。
【特别说明】推荐直接使用 TXLivePusher 的 setVideoQuality 接口调整画面质量。

◆ videoResolution

- (int) videoResolution
readwritenonatomicassign

【字段含义】视频分辨率,默认值:VIDEO_RESOLUTION_TYPE_360_640。
【特别说明】推荐直接使用 TXLivePusher 的 setVideoQuality 接口调整画面质量。

◆ volumeType

- (TXSystemAudioVolumeType) volumeType
readwritenonatomicassign

【字段含义】系统音量类型,默认值:SYSTEM_VOLUME_TYPE_AUTO。

◆ watermark

- (TXImage*) watermark
readwritenonatomicretain

【字段含义】水印图片,设为 nil 等同于关闭水印。

◆ watermarkNormalization

- (CGRect) watermarkNormalization
readwritenonatomicassign

【字段含义】水印图片相对于推流分辨率的归一化坐标
【推荐取值】假设推流分辨率为:540x960,该字段设置为:(0.1,0.1,0.1,0.0),那么水印的实际像素坐标为: (540 × 0.1, 960 × 0.1, 水印宽度 × 0.1,水印高度会被自动计算)
【特别说明】watermarkNormalization 的优先级高于 watermarkPos。

◆ watermarkPos

- (CGPoint) watermarkPos
readwritenonatomicassign

【字段含义】水印图片位置,水印大小为图片实际大小,待废弃,推荐使用 watermarkNormalization。

◆ whiteningFilterDepth

- (float) whiteningFilterDepth
readwritenonatomicassign

【字段含义】美白强度,待废弃,建议直接使用 TXLivePusher 的 setBeautyStyle 函数。