ByteRTCVideoEffect class

Inheritance
  • Object
  • NativeClass
  • ByteRTCVideoEffect

Constructors

ByteRTCVideoEffect([NativeClassOptions? options])

Properties

$resource → NativeResource
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
ready Future<void>
Whether the instance is initialized
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

appendEffectNodes(NSArray<NSString> effectNodes) FutureOr<int>
@hidden for internal use only @detail api @author zhushufan.ref @brief 叠加视频特效素材包。 @param effectNodes 特效素材包路径数组。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note 该接口会在 setEffectNodes:{@link #ByteRTCVideoEffect#setEffectNodes} 设置的特效基础上叠加特效。
applyStickerEffect(NSString stickerPath) FutureOr<int>
@hidden for internal use only @detail api @author zhushufan.ref @brief 私有接口
设置视频特效素材包 @param stickerPath 特效素材包绝对路径。
要取消当前视频特效,将此参数设置为 null。 @return - 0: 调用成功。 - 1000: 未集成特效 SDK。 - 1001: 特效 SDK 不支持该功能。 - < 0: 调用失败。具体错误码,参看 错误码表。 @note 在调用这个方法之前,你须先调用 enableVideoEffect{@link #ByteRTCVideoEffect#enableVideoEffect}。
destroy() → void
inherited
disableFaceDetection() FutureOr<int>
@detail api @author wangjunlin.3182 @brief 关闭人脸识别功能。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表
disableVideoEffect() FutureOr<int>
@detail api @author zhushufan.ref @brief 关闭视频特效。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note 调用 enableVideoEffect{@link #ByteRTCVideoEffect#enableVideoEffect} 开启视频特效。
disableVirtualBackground() FutureOr<int>
@detail api @author wangjunlin.3182 @brief 关闭虚拟背景。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note 调用 enableVirtualBackground:withSource:{@link #ByteRTCVideoEffect#enableVirtualBackground:withSource} 开启虚拟背景后,可以调用此接口关闭虚拟背景。
enableFaceDetection(id<ByteRTCFaceDetectionObserver> observer, NSUInteger interval, NSString path) FutureOr<int>
@detail api @author wangjunlin.3182 @brief 开启人脸识别功能,并设置人脸检测结果回调观察者。
此观察者后,你会周期性收到 onFaceDetectResult:{@link #ByteRTCFaceDetectionObserver#onFaceDetectResult} 回调。 @param observer 人脸检测结果回调观察者,参看 ByteRTCFaceDetectionObserver{@link #ByteRTCFaceDetectionObserver}。 @param interval 两次回调之间的最小时间间隔,必须大于 0,单位为毫秒。实际收到回调的时间间隔大于 interval,小于 interval+视频采集帧间隔。 @param path 人脸检测算法模型文件路径,一般为 ttfacemodel 文件夹中 tt_face_vXXX.model 文件的绝对路径。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - -1004: 初始化中,初始化完成后启动此功能。 - < 0: 调用失败,错误码对应具体描述参看 错误码表
enableVideoEffect() FutureOr<int>
@detail api @author zhushufan.ref @brief 开启高级美颜、滤镜等视频特效。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note - 调用本方法前,必须先调用 initCVResource:withAlgoModelDir:{@link #ByteRTCVideoEffect#initCVResource:withAlgoModelDir} 进行初始化。 - 调用该方法后,特效不直接生效,你还需调用 setEffectNodes:{@link #ByteRTCVideoEffect#setEffectNodes} 设置视频特效素材包或调用 setColorFilter:{@link #ByteRTCVideoEffect#setColorFilter} 设置滤镜。 - 调用 disableVideoEffect{@link #ByteRTCVideoEffect#disableVideoEffect} 关闭视频特效。
enableVirtualBackground(NSString backgroundStickerPath, ByteRTCVirtualBackgroundSource source) FutureOr<int>
@detail api @author zhushufan.ref @brief 将摄像头采集画面中的人像背景替换为指定图片或纯色背景。 @param backgroundStickerPath 背景贴纸特效素材绝对路径。 @param source 背景贴纸对象,参看 ByteRTCVirtualBackgroundSource{@link #ByteRTCVirtualBackgroundSource}。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note - 调用本方法前,必须先调用 initCVResource:withAlgoModelDir:{@link #ByteRTCVideoEffect#initCVResource:withAlgoModelDir} 进行初始化。 - 调用 disableVirtualBackground{@link #ByteRTCVideoEffect#disableVirtualBackground} 关闭虚拟背景。
getAuthMessage(NSString ppmsg) FutureOr<int>
@detail api @author zhushufan.ref @brief 从特效 SDK 获取授权消息,用于获取在线许可证。 @param ppmsg 授权消息字符串地址 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note - 使用视频特效的功能前,你必须获取特效 SDK 的在线许可证。 - 通过此接口获取授权消息后,参考 在线授权说明,自行实现获取在线许可证的业务逻辑。获取许可证后,你必须调用 initCVResource:withAlgoModelDir:{@link #ByteRTCVideoEffect#initCVResource:withAlgoModelDir} 确认许可证有效。然后,你才可以使用 CV 功能。
getVideoEffectHandle() FutureOr<void>
@hidden for internal use only @detail api @author zhushufan.ref @brief 返回视频特效句柄。私有接口。
initCVResource(NSString licenseFile, NSString algoModelDir) FutureOr<int>
@detail api @author zhushufan.ref @brief 检查视频特效证书,设置算法模型路径,并初始化特效模块。 @param licenseFile 证书文件的绝对路径,用于鉴权。 @param algoModelDir 算法模型绝对路径,即存放特效 SDK 所有算法模型的目录。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note 鉴权时,会检查 CV 服务端时间和本地设备的时间差异。你必须保证本地系统时间和实际时间一致。
nativeCall<T>(String method, [List? args, NativeMethodMeta? meta]) Future<T>
Call instance method
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
removeEffectNodes(NSArray<NSString> effectNodes) FutureOr<int>
@hidden for internal use only @detail api @author zhushufan.ref @brief 移除指定的视频特效资源。 @param effectNodes 特效素材包路径数组。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note 移除 setEffectNodes:{@link #ByteRTCVideoEffect#setEffectNodes} 或 appendEffectNodes:{@link #ByteRTCVideoEffect#appendEffectNodes} 设置的视频特效资源。
sendInstanceGet<T>(String property) Future<T>
Get instance property
inherited
sendInstancePropertiesGet(dynamic nativeClass) Future<Map<String, dynamic>>
Get instance properties
inherited
sendInstanceSet(String property, dynamic value) Future<void>
Set instance property
inherited
setColorFilter(NSString filterRes) FutureOr<int>
@detail api @author zhushufan.ref @brief 设置颜色滤镜。 @param filterRes 滤镜资源包绝对路径。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note 调用 setColorFilterIntensity:{@link #ByteRTCVideoEffect#setColorFilterIntensity} 设置已启用颜色滤镜的强度。设置强度为 0 时即关闭颜色滤镜。
setColorFilterIntensity(float intensity) FutureOr<int>
@detail api @author zhushufan.ref @brief 设置已启用颜色滤镜的强度。 @param intensity 滤镜强度。取值范围 0,1,超出范围时设置无效。
当设置滤镜强度为 0 时即关闭颜色滤镜。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表
setEffectNodes(NSArray<NSString>? effectNodes) FutureOr<int>
@detail api @author zhushufan.ref @brief 设置视频特效素材包。 @param effectNodes 特效素材包绝对路径数组。
要取消当前视频特效,将此参数设置为 null。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表。 @note 调用本方法前,必须先调用 enableVideoEffect{@link #ByteRTCVideoEffect#enableVideoEffect}。
setVideoEffectExpressionDetect(ByteRTCExpressionDetectConfig config) FutureOr<int>
@hidden for internal use only @detail api @author zhushufan.ref @brief 开启人像属性检测。 @param config 人像属性检测参数,参看 ByteRTCExpressionDetectConfig{@link #ByteRTCExpressionDetectConfig}。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表
toString() String
A string representation of this object.
inherited
updateEffectNode(NSString node, NSString key, float value) FutureOr<int>
@detail api @author zhushufan.ref @brief 设置特效强度。 @param node 特效素材包绝对路径,参考素材包结构说明。 @param key 需要设置的素材 key 名称,参考素材 key 对应说明。 @param value 特效强度值,取值范围 0,1,超出范围时设置无效。 @return - 0: 调用成功。 - –1000: 未集成特效 SDK。 - –1001: 特效 SDK 不支持该功能。 - –1002: 特效 SDK 版本不兼容。 - < 0: 调用失败,错误码对应具体描述参看 错误码表
updateResource(NativeResource resource) → void
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

codegen_$namespace → dynamic
no setter