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

详细描述

视频录制关键类型定义


结构体说明

◆ TXUGCPartsManager

class TXUGCPartsManager

构造函数

(float) - getDuration
 
(NSArray *) - getVideoPathList
 
(void) - deleteLastPart
 
(void) - deletePart:
 
(void) - deleteAllParts
 
(void) - insertPart:atIndex:
 
(void) - joinAllParts:complete:
 

函数文档

◆ deleteAllParts()

- (void) deleteAllParts

删除当前录制视频所有片段,默认删除本地视频文件

◆ deleteLastPart()

- (void) deleteLastPart

删除当前录制视频最后一片段,默认删除本地视频文件

◆ deletePart:()

- (void) deletePart: (int)  index

删除当前录制视频指定片段,默认删除本地视频文件

◆ getDuration()

- (float) getDuration

获取当前录制视频片段的总时长 单位:s

◆ getVideoPathList()

- (NSArray *) getVideoPathList

获取当前录制所有视频片段路径

◆ insertPart:atIndex:()

- (void) insertPart: (NSString *)  videoPath
atIndex: (int)  index 

您可以添加当前录制视频之外的视频,调用合joinAllParts的时候,SDK会把所有的视频合成(这里添加的视频需要和录制视频的分辨率保持一致,否则会合成失败) videoPath 添加视频的文件路径 index 添加视频的所在整个视频list的位置

◆ joinAllParts:complete:()

- (void) joinAllParts: (NSString *)  videoOutputPath
complete: (void(^)(int))  result 

合成当前录制视频所有片段(这里需要保证视频片段的分辨率一致,否则会合成失败) videoPath 合成后视频文件存放地址 result 0:成功 -1:失败

◆ TXUGCSimpleConfig

class TXUGCSimpleConfig

属性

TXVideoQuality videoQuality
 
BOOL frontCamera
 
float minDuration
 
float maxDuration
 
BOOL touchFocus
 

属性说明

◆ frontCamera

- (BOOL) frontCamera
readwritenonatomicassign

是否是前置摄像头

◆ maxDuration

- (float) maxDuration
readwritenonatomicassign

设置视频录制的最大时长,建议不超过300 (s)

◆ minDuration

- (float) minDuration
readwritenonatomicassign

设置视频录制的最小时长,大于0 (s)

◆ touchFocus

- (BOOL) touchFocus
readwritenonatomicassign

否开启手动聚焦,默认是false,为自动聚焦模式

◆ videoQuality

- (TXVideoQuality) videoQuality
readwritenonatomicassign

录制视频质量

◆ TXUGCCustomConfig

class TXUGCCustomConfig

属性

TXVideoResolution videoResolution
 
int videoFPS
 
int videoBitratePIN
 
BOOL frontCamera
 
TXVideoEncodeMode encodeMode
 
BOOL enableBFrame
 
BOOL enableAEC
 
int GOP
 
TXAudioSampleRate audioSampleRate
 
float minDuration
 
float maxDuration
 
BOOL touchFocus
 

属性说明

◆ audioSampleRate

- (TXAudioSampleRate) audioSampleRate
readwritenonatomicassign

音频采样率

◆ enableAEC

- (BOOL) enableAEC
readwritenonatomicassign

是否开启回声消除(默认开启) @discussion 开启回声消除,可以录制人声,BGM,人声+BGM (注意:录制中开启回声消除,BGM的播放模式是手机通话模式,这个模式下系统静音会失效,而视频播放预览走的是媒体播放模式,播放模式的不同会导致录制和预览在相同系统音量下播放声音大小有一定区别) 关闭回声消除,可以录制人声、BGM,耳机模式下可以录制人声 + BGM ,外放模式下不能录制人声+BGM

◆ enableBFrame

- (BOOL) enableBFrame
readwritenonatomicassign

是否开启B帧 (默认开启,相同码率下能获得更好的画面质量)

◆ encodeMode

- (TXVideoEncodeMode) encodeMode
readwritenonatomicassign

编码方式 (默认VBR编码方式,相同码率下能获得更好的画面质量)

◆ frontCamera

- (BOOL) frontCamera
readwritenonatomicassign

是否是前置摄像头

◆ GOP

- (int) GOP
readwritenonatomicassign

关键帧间隔(1 ~10),默认3s (s)

◆ maxDuration

- (float) maxDuration
readwritenonatomicassign

设置视频录制的最大时长,建议不超过300 (s)

◆ minDuration

- (float) minDuration
readwritenonatomicassign

设置视频录制的最小时长,大于0 (s)

◆ touchFocus

- (BOOL) touchFocus
readwritenonatomicassign

否开启手动聚焦,默认是false,为自动聚焦模式

◆ videoBitratePIN

- (int) videoBitratePIN
readwritenonatomicassign

自定义码率 建议值:600~12000 (SDK上限不再做限制) 单位kbps/s,这里需要注意的是,这里设置的码率只是给编码器一个参考值,实际出来视频的码率是会在这个参考值上下波动的

◆ videoFPS

- (int) videoFPS
readwritenonatomicassign

自定义fps 15~30

◆ videoResolution

- (TXVideoResolution) videoResolution
readwritenonatomicassign

自定义分辨率

◆ TXUGCRecordResult

class TXUGCRecordResult

属性

TXUGCRecordResultCode retCode
 
NSString * descMsg
 
NSString * videoPath
 
UIImage * coverImage
 

属性说明

◆ coverImage

- (UIImage*) coverImage
readwritenonatomicstrong

视频封面

◆ descMsg

- (NSString*) descMsg
readwritenonatomicstrong

错误描述信息

◆ retCode

- (TXUGCRecordResultCode) retCode
readwritenonatomicassign

错误码

◆ videoPath

- (NSString*) videoPath
readwritenonatomicstrong

视频文件path

枚举类型说明

◆ TXAudioSampleRate

enum TXAudioSampleRate : NSInteger
枚举值
AUDIO_SAMPLERATE_8000 
AUDIO_SAMPLERATE_16000 
AUDIO_SAMPLERATE_32000 
AUDIO_SAMPLERATE_44100 
AUDIO_SAMPLERATE_48000 

◆ TXUGCRecordResultCode

enum TXUGCRecordResultCode : NSInteger

录制结果错误码定义

枚举值
UGC_RECORD_RESULT_OK 

录制成功(业务层主动结束录制),会生成最终视频

UGC_RECORD_RESULT_OK_INTERRUPT 

录制成功(因为进后台,或则闹钟,电话打断等自动结束录制),会生成最终视频

UGC_RECORD_RESULT_OK_UNREACH_MINDURATION 

录制成功(录制时长未达到设置的最小时长),会生成最终视频

UGC_RECORD_RESULT_OK_BEYOND_MAXDURATION 

录制成功(录制时长超过设置的最大时长),会生成最终视频

UGC_RECORD_RESULT_FAILED 

录制失败,不会生成最终视频

◆ TXVideoAspectRatio

enum TXVideoAspectRatio : NSInteger

CameraRecord 录制视频比例类型定义

枚举值
VIDEO_ASPECT_RATIO_3_4 

3:4

VIDEO_ASPECT_RATIO_9_16 

9:16

VIDEO_ASPECT_RATIO_1_1 

1:1

VIDEO_ASPECT_RATIO_16_9 

16:9

VIDEO_ASPECT_RATIO_4_3 

4:3

◆ TXVideoBeautyStyle

enum TXVideoBeautyStyle : NSInteger

美颜类型

枚举值
VIDOE_BEAUTY_STYLE_SMOOTH 

光滑

VIDOE_BEAUTY_STYLE_NATURE 

自然

VIDOE_BEAUTY_STYLE_PITU 

pitu美颜

◆ TXVideoEncodeMode

enum TXVideoEncodeMode : NSInteger

编码方式

枚举值
VIDEO_ENCODER_MODE_CBR 

CBR 编码方式

VIDEO_ENCODER_MODE_VBR 

VBR 编码方式

◆ TXVideoHomeOrientation

enum TXVideoHomeOrientation : NSInteger

横竖屏录制类型定义

枚举值
VIDOE_HOME_ORIENTATION_RIGHT 

home在右边横屏录制

VIDEO_HOME_ORIENTATION_DOWN 

home在下面竖屏录制

VIDEO_HOME_ORIENTATION_LEFT 

home在左边横屏录制

VIDOE_HOME_ORIENTATION_UP 

home在上面竖屏录制

◆ TXVideoQuality

enum TXVideoQuality : NSInteger

CameraRecord 录制视频质量类型

枚举值
VIDEO_QUALITY_LOW 
VIDEO_QUALITY_MEDIUM 
VIDEO_QUALITY_HIGH 

◆ TXVideoRecordSpeed

enum TXVideoRecordSpeed : NSInteger

CameraRecord 录制视频速率

枚举值
VIDEO_RECORD_SPEED_SLOWEST 

极慢速

VIDEO_RECORD_SPEED_SLOW 

慢速

VIDEO_RECORD_SPEED_NOMAL 

正常速

VIDEO_RECORD_SPEED_FAST 

快速

VIDEO_RECORD_SPEED_FASTEST 

极快速

◆ TXVideoRenderMode

enum TXVideoRenderMode : NSInteger

CameraRecord 视频渲染模式类型定义

枚举值
VIDEO_RENDER_MODE_FULL_FILL_SCREEN 

填充模式,尽可能充满屏幕不留黑边,所以可能会裁剪掉一部分画面

VIDEO_RENDER_MODE_ADJUST_RESOLUTION 

黑边模式,尽可能保持画面完整,但当宽高比不合适时会有黑边出现

◆ TXVideoResolution

enum TXVideoResolution : NSInteger

CameraRecord 录制分辨率类型定义,如果设备不支持当前分辨率录制,SDK会默认采取低一级别的分辨率录制

枚举值
VIDEO_RESOLUTION_360_640 

360P 分辨率

VIDEO_RESOLUTION_540_960 

540P 分辨率

VIDEO_RESOLUTION_720_1280 

720P 分辨率

VIDEO_RESOLUTION_1080_1920 

1080P 分辨率

◆ TXVideoReverbType

enum TXVideoReverbType : NSInteger

混响效果

枚举值
VIDOE_REVERB_TYPE_0 

关闭混响

VIDOE_REVERB_TYPE_1 

KTV

VIDOE_REVERB_TYPE_2 

小房间

VIDOE_REVERB_TYPE_3 

大会堂

VIDOE_REVERB_TYPE_4 

低沉

VIDOE_REVERB_TYPE_5 

洪亮

VIDOE_REVERB_TYPE_6 

金属声

VIDOE_REVERB_TYPE_7 

磁性

◆ TXVideoVoiceChangerType

enum TXVideoVoiceChangerType : NSInteger

变声类型

枚举值
VIDOE_VOICECHANGER_TYPE_0 

关闭变声

VIDOE_VOICECHANGER_TYPE_1 

熊孩子

VIDOE_VOICECHANGER_TYPE_2 

萝莉

VIDOE_VOICECHANGER_TYPE_3 

大叔

VIDOE_VOICECHANGER_TYPE_4 

重金属

VIDOE_VOICECHANGER_TYPE_5 

感冒

VIDOE_VOICECHANGER_TYPE_6 

外国人

VIDOE_VOICECHANGER_TYPE_7 

困兽

VIDOE_VOICECHANGER_TYPE_8 

死肥仔

VIDOE_VOICECHANGER_TYPE_9 

强电流

VIDOE_VOICECHANGER_TYPE_10 

重机械

VIDOE_VOICECHANGER_TYPE_11 

空灵