LVRTCEngine Class Reference
Inherits from | NSObject |
---|---|
Declared in | LVRTCEngine.h |
Other Methods
+ alloc
不能直接使用,请通过 sharedInstance 获取该实例
+ (instancetype)alloc
Discussion
Warning: 不能直接使用
Declared In
LVRTCEngine.h
– init
不能直接使用,请通过 sharedInstance 获取该实例
- (instancetype)init
Discussion
Warning: 不能直接使用
Declared In
LVRTCEngine.h
+ new
不能直接使用,请通过 sharedInstance 获取该实例
+ (instancetype)new
Discussion
Warning: 不能直接使用
Declared In
LVRTCEngine.h
+ versionName
LVRTCEngine SDK 版本号(1.0.1)
+ (NSString *)versionName
Return Value
版本号
Discussion
开发者使用本 API 获取 SDK 版本号
Declared In
LVRTCEngine.h
+ versionNumber
LVRTCEngine SDK 版本号,数字(10001)
+ (NSInteger)versionNumber
Return Value
版本号
Discussion
开发者使用本 API 获取 SDK 版本号
Declared In
LVRTCEngine.h
+ setISOCountryCode:
设置 ISO 国家码, 辅助调度信息.
+ (void)setISOCountryCode:(NSString *)iso
Parameters
iso |
iso 国家码参数 |
---|
Declared In
LVRTCEngine.h
+ setPublishQualityMonitorCycle:
设置推流时数据统计信息回调的频率,回调方法请看 OnPublishQualityUpdate 回调
+ (void)setPublishQualityMonitorCycle:(int)sec
Parameters
sec |
回调频率(1 / sec) |
---|
Declared In
LVRTCEngine.h
+ setPlayQualityMonitorCycle:
设置拉流时数据统计信息回调的频率,回调方法请看 OnPlayQualityUpate 回调
+ (void)setPlayQualityMonitorCycle:(int)sec
Parameters
sec |
回调频率(1 / sec) |
---|
Declared In
LVRTCEngine.h
+ setLogLevel:
设置日志打印级别(SDK 日志保存在缓存目录的 cmliveroom 目录下)
+ (void)setLogLevel:(LVLoggingSeverity)level
Parameters
level |
日志打印级别 |
---|
Declared In
LVRTCEngine.h
+ setUseTestEnv:
是否使用测试环境
+ (void)setUseTestEnv:(BOOL)env
Parameters
env |
YES 为使用测试环境,NO 为不使用测试环境(默认为 NO) |
---|
Declared In
LVRTCEngine.h
+ setDebugServerIp:
设置调试的 signal IP 地址
+ (void)setDebugServerIp:(NSString *)ip
Parameters
ip |
signal IP 地址 |
---|
Declared In
LVRTCEngine.h
+ setDecoderPixelType:
设置接收到视频数据时解码的像素格式类型
+ (bool)setDecoderPixelType:(OSType)osType
Parameters
osType |
像素格式类型(CVPixelFormatType) |
---|
Declared In
LVRTCEngine.h
+ setEncoderPixelType:
设置视频数据编码的像素格式类型
+ (bool)setEncoderPixelType:(OSType)osType
Parameters
osType |
像素格式类型(CVPixelFormatType) |
---|
Declared In
LVRTCEngine.h
– auth:skStr:userId:completion:
SDK 鉴权
- (void)auth:(NSString *)appId skStr:(NSString *)skStr userId:(NSString *)userId completion:(LVServiceCompletion)completion
Parameters
appId |
向 LiveMe 申请的 appId |
---|---|
skStr |
SDK 签名字符串 |
userId |
用户 ID |
completion |
鉴权完成回调 |
Declared In
LVRTCEngine.h
– setAVConfig:
设置视频编码参数
- (void)setAVConfig:(LVAVConfig *)config
Parameters
config |
编码参数配置 |
---|
Discussion
注:如果后面设置的视频采集分辨率大于之前设置的分辨率,摄像头可能会进行重庆操作
Declared In
LVRTCEngine.h
– loginRoom:roomId:isHost:isOnlyAudio:delegate:
加入音视频房间(音视频会议)
- (void)loginRoom:(NSString *)userId roomId:(NSString *)roomId isHost:(bool)isHost isOnlyAudio:(bool)isOnlyAudio delegate:(id<LVRTCEngineDelegate>)delegate
Parameters
userId |
用户 ID |
---|---|
roomId |
房间 ID |
isHost |
是否是主持人 |
isOnlyAudio |
是否以音频模式加入 |
delegate |
房间回调代理 |
Declared In
LVRTCEngine.h
– logoutRoom:
退出房间
- (void)logoutRoom:(LVServiceCompletion)completion
Parameters
completion |
离开房间结果回调 |
---|
Declared In
LVRTCEngine.h
– mixStream:
开始远端视频混流(将多路视频流混合在一个视频流中),混流成功与否通过 OnMixComplete 回调告知
- (bool)mixStream:(LVMixStreamConfig *)config
Parameters
config |
混乱配置 |
---|
Declared In
LVRTCEngine.h
– startPublishing
发布音视频数据(推流),如果登录房间时 isOnlyAudio 为 YES 则只发送音频数据,视频数据不发送,推流状态的变更通过 OnPublishStateUpdate: 回调
- (bool)startPublishing
Declared In
LVRTCEngine.h
– startPlayingStream:
开始播放一路音视频流,播放状态的变更通过 OnPlayStateUpdate:userId: 回调
- (void)startPlayingStream:(NSString *)userId
Parameters
userId |
要播放的音视频流用户 ID |
---|
Declared In
LVRTCEngine.h
– stopPlayingStream:
停止播放一路音视频流
- (void)stopPlayingStream:(NSString *)userId
Parameters
userId |
要停止播放的音视频流用户 ID |
---|
Declared In
LVRTCEngine.h
– linkRoom:
房间之间 PK(跨房间连麦功能)
- (void)linkRoom:(NSString *)roomId
Parameters
roomId |
房间 ID |
---|
Declared In
LVRTCEngine.h
– unlinkRoom:
取消跨房间连麦功能
- (void)unlinkRoom:(NSString *)roomId
Parameters
roomId |
房间 ID |
---|
Declared In
LVRTCEngine.h
– linkRoom:linkUserId:
房间之间 PK(跨房间连麦功能)
- (void)linkRoom:(NSString *)roomId linkUserId:(NSString *)linkUserId
Parameters
roomId |
房间 ID |
---|---|
linkUserId |
PK 对象的 userId |
Declared In
LVRTCEngine.h
– unlinkRoom:unlinkUserId:
取消跨房间连麦功能
- (void)unlinkRoom:(NSString *)roomId unlinkUserId:(NSString *)unlinkUserId
Parameters
roomId |
房间 ID |
---|---|
unlinkUserId |
取消 pk 对象的 userId |
Declared In
LVRTCEngine.h
– switchCamera:
切换摄像头
- (void)switchCamera:(LVRTCCameraPosition)position
Parameters
position |
摄像头位置 |
---|
Declared In
LVRTCEngine.h
– addDisplayView:
为音视频设置预览视图,请先加入房间后再进行设置,SDK 内部会自动将视图和接收到的音视频数据进行绑定操作
- (void)addDisplayView:(LVRTCDisplayView *)view
Parameters
view |
视图信息 |
---|
Discussion
如果不传 uid 则该视图默认为当前登录用户
Declared In
LVRTCEngine.h
– removeDisplayView:
移除预览视图
- (void)removeDisplayView:(LVRTCDisplayView *)view
Parameters
view |
视图信息 |
---|
Declared In
LVRTCEngine.h
– enableMic:
开启或关闭麦克风
- (bool)enableMic:(bool)enbale
Parameters
enbale |
true 开启,false 关闭(默认为 true) |
---|
Return Value
true 成功,false 失败
Discussion
推流时可调用本 API 进行参数配置
Declared In
LVRTCEngine.h
– enableSpeakerphone:
扬声器和听筒切换功能
- (bool)enableSpeakerphone:(bool)enable
Parameters
enable |
true 视同扬声器播放音频,false 使用听筒播放音频。(默认 true) |
---|
Return Value
true 成功,false 失败
Declared In
LVRTCEngine.h
– setAudioRecordFlag:
声音数据回调参数设置,支持多种录制模式,录制结果通过 OnAudioMixStream: samples:nchannel:nchannel flag: 回调
- (void)setAudioRecordFlag:(LVAudioRecordType)flag
Parameters
flag |
参考 CMAudioRecodType, 默认 CMAudioRecodTypeNone 标识不回调 |
---|
Declared In
LVRTCEngine.h
– startSoundLevelMonitor:
开启音量变化监听,并设置音量变化监听回调频率,成功后回调 OnAudioVolumeUpdate:
- (void)startSoundLevelMonitor:(unsigned int)timeInMS
Parameters
timeInMS |
单位毫秒(默认回调频率为 100 ms 回调一次) |
---|
Declared In
LVRTCEngine.h
– getSoundLevelByUserId:
获取用户的音量信息
- (int)getSoundLevelByUserId:(NSString *)userId
Parameters
userId |
用户 ID |
---|
Return Value
用户 ID 对应的音量数据
Declared In
LVRTCEngine.h
– enableVideoAutoRotation:
设置是否允许 SDK 自动根据设备的方向调整视频的输出方向
- (void)enableVideoAutoRotation:(BOOL)enable
Parameters
enable |
打开和关闭(默认是 YES) |
---|
Declared In
LVRTCEngine.h
– setOutputVideoRotation:
设置手动管理视频输出方向,该方法需要先调用 enableVideoAutoRotateAdapter,将自动旋转方法关闭才能生效
- (void)setOutputVideoRotation:(LVVideoRotation)rotation
Parameters
rotation |
视频输出方向,(默认是 LVVideoRotation_0) |
---|
Declared In
LVRTCEngine.h
– startAudioMixing:mode:loop:
开始播放音乐文件及混音(声音伴奏)
- (int)startAudioMixing:(NSString *)filePath mode:(LVAudioMixingMode)mode loop:(int)loop
Parameters
filePath |
文件路径 |
---|---|
mode |
LVAudioMixingMode,设置混音模式 |
loop |
指定音频文件循环播放的次数,正整数:循环的次数 -1:无限循环 |
Return Value
0 : 方法调用成功,!0:失败
Declared In
LVRTCEngine.h
– setAudioMixingMode:
动态调整混音模式
- (void)setAudioMixingMode:(LVAudioMixingMode)mode
Parameters
mode |
混音模式参数 |
---|
Declared In
LVRTCEngine.h
– stopAudioMixing
停止播放音乐文件及混音。请在房间内调用该方法。
- (int)stopAudioMixing
Return Value
0:方法调用成功 !0:方法调用失败
Declared In
LVRTCEngine.h
– pauseAudioMixing
暂停播放音乐文件及混音。请在房间内调用该方法。
- (int)pauseAudioMixing
Return Value
0:方法调用成功 !0:方法调用失败
Declared In
LVRTCEngine.h
– resumeAudioMixing
恢复播放音乐文件及混音。请在房间内调用该方法。
- (int)resumeAudioMixing
Return Value
0:方法调用成功 !0:方法调用失败
Declared In
LVRTCEngine.h
– getAudioMixingVolume
获取当前伴奏音量,请在伴奏开始后调用
- (int)getAudioMixingVolume
Return Value
-1:伴奏未开始 0~100:当前伴奏音量
Declared In
LVRTCEngine.h
– adjustAudioMixingVolume:
调节音乐文件的播放音量。请在房间内调用该方法。
- (int)adjustAudioMixingVolume:(int)volume
Parameters
volume |
音量:0~100 |
---|
Return Value
0:方法调用成功 !0:方法调用失败
Declared In
LVRTCEngine.h
– getAudioMixingTotalLength
获取当前伴奏文件总时长,单位毫秒。请在房间内调用该方法。
- (long)getAudioMixingTotalLength
Return Value
文件长度
Declared In
LVRTCEngine.h
– getAudioMixingCurrentPosition
获取音乐文件的播放进度。单位为毫秒。请在房间内调用该方法。
- (long)getAudioMixingCurrentPosition
Return Value
<0:方法调用失败 >=0:方法调用成功并返回伴奏播放进度
Declared In
LVRTCEngine.h
– setAudioMixingPosition:
设置音乐文件的播放位置。请在房间内调用该方法。
- (long)setAudioMixingPosition:(int)pos
Parameters
pos |
整数。进度条位置,单位为毫秒 |
---|
Return Value
0:方法调用成功 !0:方法调用失败
Declared In
LVRTCEngine.h
– setExternalAudioConfig:
设置外置音频数据参数
- (void)setExternalAudioConfig:(LVExternalAudioConfig *)audioConfig
Parameters
audioConfig |
音频参数 |
---|
Declared In
LVRTCEngine.h
– getExternalAudioConfig
获取当前外置音频参数
- (LVExternalAudioConfig *)getExternalAudioConfig
Return Value
外置音频参数
Declared In
LVRTCEngine.h
– enableExternalAudioInput:
打开和关闭外置音频采集功能,该参数如果打卡会自动将 SDK 内置麦克风功能禁用,由用户向 SDK 输入音频 PCM 数据。请在加入房间之前设置
- (void)enableExternalAudioInput:(bool)enable
Parameters
enable |
true: 打卡,false: 关闭 |
---|
Declared In
LVRTCEngine.h
– sendAudioFrame:length:
发送外置音频数据,注:只有调用 enableExternalAudioInput 打开外部音频输入接口之后才会生效
- (int)sendAudioFrame:(int16_t *)audioFrameBuffer length:(int)length
Parameters
audioFrameBuffer |
音频数据 |
---|---|
length |
音频数据长度(int16_t 数组数据长度) |
Return Value
发送成功与否
Declared In
LVRTCEngine.h
– sendVideoFrame:
外部采集的视频数据
- (void)sendVideoFrame:(CMSampleBufferRef)sampleBuffer
Parameters
sampleBuffer |
视频数据(必须是解码的视频数据) |
---|
See Also
Declared In
LVRTCEngine.h
– sendVideoFrame:sei:
外部采集的视频数据(可以随视频附加其他信息) 注:调用 startCapture 后该方法会被忽略
- (void)sendVideoFrame:(CMSampleBufferRef)sampleBuffer sei:(NSString *)sei
Parameters
sampleBuffer |
视频数据(必须是解码的视频数据) |
---|---|
sei |
媒体附加数据,该数据会随视频一起发送到接收端 |
See Also
Declared In
LVRTCEngine.h
– setPlayVolume:userId:
控制远端音频流音量, 加入房间成功后调用
- (void)setPlayVolume:(int)volume userId:(NSString *)userId
Parameters
volume |
音量大小(0,100) |
---|---|
userId |
被控制的用户ID |
Declared In
LVRTCEngine.h
– setPlayVolume:
控制所有远端音频流音量, 加入房间成功后调用
- (void)setPlayVolume:(int)volume
Parameters
volume |
音量大小(0,100) |
---|
Declared In
LVRTCEngine.h
– getLVBeautyManager
获取美颜参数管理(美颜管理器)
- (LVBeautyManager *)getLVBeautyManager
Declared In
LVRTCEngine.h
– setAecMode:
设置回声消除音频模式
- (void)setAecMode:(LVAudio3AMode)mode
Parameters
mode |
模式参数 |
---|
Declared In
LVRTCEngine.h
– setNsMode:
设置降噪模式
- (void)setNsMode:(LVAudio3AMode)mode
Parameters
mode |
模式参数 |
---|
Declared In
LVRTCEngine.h
– setAgcMode:
设置自动增益模式
- (void)setAgcMode:(LVAudio3AMode)mode
Parameters
mode |
模式参数 |
---|
Declared In
LVRTCEngine.h
DEPRECATED Methods
– startAudioMixing:replace:loop:
开始播放音乐文件及混音(声音伴奏)
- (int)startAudioMixing:(NSString *)filePath replace:(BOOL)replace loop:(int)loop
Parameters
filePath |
文件路径 |
---|---|
replace |
true: 只推动设置的本地音频文件,不传输麦克风收录的音频 false:音频文件内容将会和麦克风采集的音频流进行混音 |
loop |
指定音频文件循环播放的次数,正整数:循环的次数 -1:无限循环 |
Return Value
0 : 方法调用成功,!0:失败
Declared In
LVRTCEngine.h
+ setUseInternationalEnv:
是否使用国际版本,该接口已废弃,SDK 内部会自动调度到国际或国内服务
+ (void)setUseInternationalEnv:(BOOL)env
Parameters
env |
YES 为国际版本,NO 为国内版本 |
---|
Declared In
LVRTCEngine.h