腾讯云直播服务(LVB)关键类型定义
视频相关类型定义 | |
enum | V2TXLiveVideoResolution : NSInteger |
enum | V2TXLiveVideoResolutionMode : NSInteger |
enum | V2TXLiveMirrorType : NSInteger |
enum | V2TXLiveFillMode : NSInteger |
enum | V2TXLiveRotation : NSInteger |
enum | V2TXLivePixelFormat : NSInteger |
enum | V2TXLiveBufferType : NSInteger |
音频相关类型定义 | |
enum | V2TXLiveAudioQuality : NSInteger |
连接状态相关枚举值定义 | |
enum | V2TXLivePushStatus : NSInteger |
公共配置组件有关的枚举值的定义 | |
enum | V2TXLiveLogLevel : NSInteger |
class V2TXLiveVideoEncoderParam |
构造函数 | |
(instancetype _Nonnull) | - initWith: |
属性 | |
V2TXLiveVideoResolution | videoResolution |
V2TXLiveVideoResolutionMode | videoResolutionMode |
int | videoFps |
int | videoBitrate |
int | minVideoBitrate |
- (instancetype _Nonnull) initWith: | (V2TXLiveVideoResolution) | resolution |
|
readwritenonatomicassign |
【字段含义】最低视频码率,SDK 会在网络不佳的情况下主动降低视频码率以保持流畅度,最低会降至 minVideoBitrate 所设定的数值。
【推荐取值】您可以通过同时设置 videoBitrate 和 minVideoBitrate 两个参数,用于约束 SDK 对视频码率的调整范围:
|
readwritenonatomicassign |
【字段含义】目标视频码率,SDK 会按照目标码率进行编码,只有在弱网络环境下才会主动降低视频码率。
【推荐取值】请参考 V2TXLiveVideoResolution 在各档位注释的最佳码率,也可以在此基础上适当调高。 比如:V2TXLiveVideoResolution1280x720 对应 1200kbps 的目标码率,您也可以设置为 1500kbps 用来获得更好的观感清晰度。
【特别说明】您可以通过同时设置 videoBitrate 和 minVideoBitrate 两个参数,用于约束 SDK 对视频码率的调整范围:
|
readwritenonatomicassign |
【字段含义】视频采集帧率
【推荐取值】15fps 或 20fps。5fps 以下,卡顿感明显。10fps 以下,会有轻微卡顿感。20fps 以上,会浪费带宽(电影的帧率为 24fps)。
|
readwritenonatomicassign |
【字段含义】 视频分辨率
【特别说明】如需使用竖屏分辨率,请指定 videoResolutionMode 为 Portrait,例如: 640 × 360 + Portrait = 360 × 640。
【推荐取值】
|
readwritenonatomicassign |
【字段含义】分辨率模式(横屏分辨率 or 竖屏分辨率)
【推荐取值】桌面平台(Windows、Mac)建议选择 Landscape。
【特别说明】如需使用竖屏分辨率,请指定 resMode 为 Portrait,例如: 640 × 360 + Portrait = 360 × 640。
class V2TXLiveVideoFrame |
属性 | |
V2TXLivePixelFormat | pixelFormat |
V2TXLiveBufferType | bufferType |
NSData * | data |
CVPixelBufferRef | pixelBuffer |
NSUInteger | width |
NSUInteger | height |
V2TXLiveRotation | rotation |
GLuint | textureId |
|
readwritenonatomicassign |
【字段含义】视频数据包装格式 【推荐取值】V2TXLiveBufferTypePixelBuffer
|
readwritenonatomicstrong |
【字段含义】bufferType 为 V2TXLiveBufferTypeNSData 时的视频数据
|
readwritenonatomicassign |
【字段含义】视频高度
|
readwritenonatomicassign |
【字段含义】bufferType 为 V2TXLiveBufferTypePixelBuffer 时的视频数据
|
readwritenonatomicassign |
【字段含义】视频帧像素格式 【推荐取值】V2TXLivePixelFormatNV12
|
readwritenonatomicassign |
【字段含义】视频帧的顺时针旋转角度
|
readwritenonatomicassign |
【字段含义】视频纹理ID
|
readwritenonatomicassign |
【字段含义】视频宽度
class V2TXLiveAudioFrame |
class V2TXLivePusherStatistics |
属性 | |
NSUInteger | appCpu |
NSUInteger | systemCpu |
NSUInteger | width |
NSUInteger | height |
NSUInteger | fps |
NSUInteger | videoBitrate |
NSUInteger | audioBitrate |
|
readwritenonatomicassign |
【字段含义】当前 App 的 CPU 使用率(%)
|
readwritenonatomicassign |
【字段含义】音频码率(Kbps)
|
readwritenonatomicassign |
【字段含义】帧率(fps)
|
readwritenonatomicassign |
【字段含义】视频高度
|
readwritenonatomicassign |
【字段含义】当前系统的 CPU 使用率(%)
|
readwritenonatomicassign |
【字段含义】视频码率(Kbps)
|
readwritenonatomicassign |
【字段含义】视频宽度
class V2TXLivePlayerStatistics |
属性 | |
NSUInteger | appCpu |
NSUInteger | systemCpu |
NSUInteger | width |
NSUInteger | height |
NSUInteger | fps |
NSUInteger | videoBitrate |
NSUInteger | audioBitrate |
|
readwritenonatomicassign |
【字段含义】当前 App 的 CPU 使用率(%)
|
readwritenonatomicassign |
【字段含义】音频码率(Kbps)
|
readwritenonatomicassign |
【字段含义】帧率(fps)
|
readwritenonatomicassign |
【字段含义】视频高度
|
readwritenonatomicassign |
【字段含义】当前系统的 CPU 使用率(%)
|
readwritenonatomicassign |
【字段含义】视频码率(Kbps)
|
readwritenonatomicassign |
【字段含义】视频宽度
class V2TXLiveMixStream |
属性 | |
NSString * | userId |
NSString * | streamId |
NSInteger | x |
NSInteger | y |
NSInteger | width |
NSInteger | height |
NSUInteger | zOrder |
V2TXLiveMixInputType | inputType |
|
readwritenonatomicassign |
【字段含义】图层位置高度(绝对像素值)
|
readwritenonatomicassign |
【字段含义】该直播流的输入类型
|
readwritenonatomiccopy |
【字段含义】参与混流的 userId 所在对应的推流 streamId,nil 表示当前推流 streamId
|
readwritenonatomiccopy |
【字段含义】参与混流的 userId
|
readwritenonatomicassign |
【字段含义】图层位置宽度(绝对像素值)
|
readwritenonatomicassign |
【字段含义】图层位置 x 坐标(绝对像素值)
|
readwritenonatomicassign |
【字段含义】图层位置 y 坐标(绝对像素值)
|
readwritenonatomicassign |
【字段含义】图层层次(1 - 15)不可重复
class V2TXLiveTranscodingConfig |
属性 | |
NSUInteger | videoWidth |
NSUInteger | videoHeight |
NSUInteger | videoBitrate |
NSUInteger | videoFramerate |
NSUInteger | videoGOP |
NSUInteger | backgroundColor |
NSString * | backgroundImage |
NSUInteger | audioSampleRate |
NSUInteger | audioBitrate |
NSUInteger | audioChannels |
NSArray< V2TXLiveMixStream * > * | mixStreams |
NSString * | outputStreamId |
|
readwritenonatomicassign |
【字段含义】最终转码后的音频码率 【推荐取值】默认值:64kbps,取值范围是 [32,192],单位:kbps
|
readwritenonatomicassign |
【字段含义】最终转码后的音频声道数 【推荐取值】默认值:1。取值范围为 [1,2] 中的整型
|
readwritenonatomicassign |
【字段含义】最终转码后的音频采样率 【推荐取值】默认值:48000Hz。支持12000HZ、16000HZ、22050HZ、24000HZ、32000HZ、44100HZ、48000HZ
|
readwritenonatomicassign |
【字段含义】混合后画面的底色颜色,默认为黑色,格式为十六进制数字,比如:“0x61B9F1” 代表 RGB 分别为(97,158,241) 【推荐取值】默认值:0x000000,黑色
|
readwritenonatomiccopy |
【字段含义】混合后画面的背景图 【推荐取值】默认值:nil,即不设置背景图 【特别说明】背景图需要您事先在 “控制台 => 应用管理 => 功能配置 => 素材管理” 中上传, 上传成功后可以获得对应的“图片ID”,然后将“图片ID”转换成字符串类型并设置到 backgroundImage 里即可。 例如:假设“图片ID” 为 63,可以设置 backgroundImage = "63";
|
readwritenonatomiccopy |
【字段含义】每一路子画面的位置信息
|
readwritenonatomiccopy |
【字段含义】输出到 CDN 上的直播流 ID 如不设置该参数,SDK 会执行默认逻辑,即房间里的多路流会混合到该接口调用者的视频流上,也就是 A + B => A; 如果设置该参数,SDK 会将房间里的多路流混合到您指定的直播流 ID 上,也就是 A + B => C。 【推荐取值】默认值:nil,即房间里的多路流会混合到该接口调用者的视频流上。
|
readwritenonatomicassign |
【字段含义】最终转码后的视频分辨率的码率(kbps) 【推荐取值】如果填0,后台会根据 videoWidth 和 videoHeight 来估算码率,您也可以参考枚举定义 V2TXLiveVideoResolution 的注释
|
readwritenonatomicassign |
【字段含义】最终转码后的视频分辨率的帧率(FPS) 【推荐取值】默认值:15fps,取值范围是 (0,30]
|
readwritenonatomicassign |
【字段含义】最终转码后的视频分辨率的关键帧间隔(又称为 GOP) 【推荐取值】默认值:2,单位为秒,取值范围是 [1,8]
|
readwritenonatomicassign |
【字段含义】最终转码后的视频分辨率的高度 【推荐取值】推荐值:640px,如果你是纯音频推流,请将 width × height 设为 0px × 0px,否则混流后会携带一条画布背景的视频流
|
readwritenonatomicassign |
【字段含义】最终转码后的视频分辨率的宽度 【推荐取值】推荐值:360px,如果你是纯音频推流,请将 width × height 设为 0px × 0px,否则混流后会携带一条画布背景的视频流
class V2TXLiveLogConfig |
属性 | |
V2TXLiveLogLevel | logLevel |
BOOL | enableObserver |
BOOL | enableConsole |
BOOL | enableLogFile |
NSString * | logPath |
|
readwritenonatomicassign |
【字段含义】是否允许 SDK 在编辑器(XCoder、Android Studio、Visual Studio 等)的控制台上打印 Log 【推荐取值】默认值:NO
|
readwritenonatomicassign |
【字段含义】是否启用本地 Log 文件 【特殊说明】如非特殊需要,请不要关闭本地 Log 文件,否则腾讯云技术团队将无法在出现问题时进行跟踪和定位。 【推荐取值】默认值:YES
|
readwritenonatomicassign |
【字段含义】是否通过 V2TXLivePremierObserver 接收要打印的 Log 信息 【特殊说明】如果您希望自己实现 Log 写入,可以打开此开关,Log 信息会通过 V2TXLivePremierObserver::onLog 回调给您。 【推荐取值】默认值:NO
|
readwritenonatomicassign |
【字段含义】设置 Log 级别 【推荐取值】默认值:V2TXLiveLogLevelAll
|
readwritenonatomiccopy |
【字段含义】设置本地 Log 的存储目录,默认 Log 存储位置: iOS & Mac: sandbox Documents/log
typedef NSImage TXImage |
typedef NSView TXView |
enum V2TXAudioRoute : NSInteger |
enum V2TXLiveAudioQuality : NSInteger |
enum V2TXLiveBufferType : NSInteger |
视频数据包装格式。
enum V2TXLiveFillMode : NSInteger |
enum V2TXLiveLogLevel : NSInteger |
日志级别枚举值
enum V2TXLiveMirrorType : NSInteger |
enum V2TXLiveMixInputType : NSInteger |
enum V2TXLiveMode : NSUInteger |
enum V2TXLivePixelFormat : NSInteger |
enum V2TXLivePushStatus : NSInteger |
enum V2TXLiveRotation : NSInteger |
enum V2TXLiveVideoResolution : NSInteger |
视频分辨率
enum V2TXLiveVideoResolutionMode : NSInteger |