NERoomRtcBaseController
@objcMembers
public class NERoomRtcBaseController : NSObject, NEBaseController
extension NERoomRtcBaseController: NERoomNotificationCenterProtocol
音视频基类控制器
-
初始化方法
Declaration
Swift
override public init()
-
Declaration
Swift
public var isSupported: Bool { get }
-
开始预览
Declaration
Swift
@discardableResult public func startPreview() -> Int
Return Value
调用结果
-
开始预览
Declaration
Swift
@discardableResult public func startPreview(canvas: NERoomVideoView?) -> Int
Parameters
canvas
渲染画布模型
Return Value
调用结果
-
关闭预览
Declaration
Swift
@discardableResult public func stopPreview() -> Int
Return Value
0: 代表成功 否则失败
-
关闭预览
Declaration
Swift
@discardableResult public func stopPreview(releaseRtc: Bool) -> Int
Parameters
releaseRtc
是否销毁Rtc
Return Value
0: 代表成功 否则失败
-
切换摄像头
Declaration
Swift
@discardableResult public func switchCamera() -> Int
Return Value
回调闭包
-
切换摄像头,可指定前置或后置
Declaration
Swift
@discardableResult public func switchCamera(position: NERoomCameraPosition) -> Int
Parameters
position
位置
Return Value
0: 成功 否则失败
-
设置本端画布
Declaration
Swift
@discardableResult public func setupLocalVideoCanvas(videoView: NERoomVideoView?) -> Int
Parameters
canvas
需要渲染的画布
callback
回调闭包
-
启用美颜模块
在开启视频之前,调用 startBeauty 开启美颜功能模块。开启美颜功能之后才能使用全局美颜、滤镜等美颜效果。 调用此接口后,开启美颜引擎。如果后续不再需要使用美颜功能,可以调用 stopBeauty 结束美颜功能模块,销毁美颜引擎并释放资源。 开启美颜功能模块后,默认开启全局美颜效果,您也可以通过 setBeautyEffect 或其他滤镜、贴纸相关接口设置美颜、滤镜等效果。
Declaration
Swift
@discardableResult public func startBeauty() -> Int
Return Value
0: 方法调用成功 其他: 方法调用失败
-
结束美颜功能模块
如果后续不再需要使用美颜功能,可以调用 stopBeauty 结束美颜功能模块,SDK 会自动销毁美颜引擎并释放资源。
Declaration
Swift
@discardableResult public func stopBeauty() -> Int
Return Value
0: 方法调用成功 其他: 方法调用失败
-
打开美颜功能,leave channel不会重置
Declaration
Swift
@discardableResult public func enableBeauty(isOpenBeauty: Bool) -> Int
Parameters
isOpenBeauty
true为打开美颜功能,false为关闭
callback
回调 0: 方法调用成功 其他: 方法调用失败
-
调用 setBeautyEffect 开启指定美颜效果,并设置美颜强度
Declaration
Swift
@discardableResult public func setBeautyEffect(beautyType: NERoomBeautyEffectType, level: Float) -> Int
Parameters
beautyType
参数用于指定美颜效果。目前支持美白、磨皮等美颜效果,具体枚举值请参考下表 [NERoomBeautyEffectType]
level
参数用于指定美颜强度。取值范围为 [0,1],各种美颜效果的默认值不同。取值越大,美颜强度越大,开发者可以根据业务需要自定义设置美颜强度
Return Value
0: 方法调用成功 其他: 方法调用失败
-
添加滤镜效果,并通过 setBeautyFilterLevel 设置滤镜强度
滤镜效果可以和全局美颜效果互相叠加,但是不支持叠加多个滤镜。需要更换滤镜时,重复调用此接口使用新的滤镜资源即可。 添加滤镜时,需要通过 path 指定滤镜模型所在路径,支持 SD 卡上的绝对路径,或 asset 目录下的相对路径。 参数 level 用于指定滤镜强度,取值范围为 [0,1],默认为 0.5。取值越大,滤镜越明显,开发者可以根据业务需要自定义设置滤镜强度。
Declaration
Swift
@discardableResult public func addBeautyFilter(path: String) -> Int
Parameters
path
滤镜资源或模型所在的路径。应指定为绝对路径。
Return Value
0: 方法调用成功 其他: 方法调用失败
-
设置滤镜强度
Declaration
Swift
@discardableResult public func setBeautyFilterLevel(level: Float) -> Int
Parameters
level
滤镜强度。取值范围为 [0 - 1],默认值为 0.5
Return Value
0: 方法调用成功 其他: 方法调用失败
-
移除滤镜
Declaration
Swift
@discardableResult public func removeBeautyFilter() -> Int
Return Value
0: 方法调用成功 其他: 方法调用失败
-
添加贴纸效果
此接口用于加载贴纸资源,添加对应的贴纸效果。需要更换贴纸时,重复调用此接口使用新的贴纸资源即可。 使用滤镜、贴纸和美妆等自定义美颜效果之前,需要先准备好对应的美颜资源或模型。 贴纸效果可以和全局美颜、滤镜、美妆等效果互相叠加,但是不支持叠加多个贴纸。
Declaration
Swift
@discardableResult public func addBeautySticker(path: String) -> Int
Parameters
path
贴纸资源或模型所在的路径。应指定为绝对路径。
Return Value
0: 方法调用成功 其他: 方法调用失败
-
取消贴纸效果
Declaration
Swift
@discardableResult public func removeBeautySticker() -> Int
Return Value
0: 方法调用成功 其他: 方法调用失败
-
Declaration
Swift
@discardableResult public func enableVirtualBackground(enable: Bool, backgroundSource: NERoomVirtualBackgroundSource?) -> Int
-
Declaration
Swift
@discardableResult public func enableVirtualBackground(enable: Bool, backgroundSource: NERoomVirtualBackgroundSource?, force: Bool) -> Int
-
添加视频监听
Declaration
Swift
public func setVideoFrameDelegate(_ delegate: NERoomVideoFrameDelegate)
Parameters
listener
监听器
-
设置本地视频主流编码参数
Declaration
Swift
public func setLocalVideoConfig(width: Int, height: Int, fps: Int) -> Int
Parameters
width
分辨率宽
height
分辨率高
fps
帧率
Return Value
0: 方法调用成功 其他: 方法调用失败
-
获取虚拟背景支持类型
Declaration
Swift
public func getVirtualBackgroundSupportedType() -> NERoomVirtualBackgroundSupportedType
Return Value
虚拟背景支持类型