视频通话或直播时,用户常常希望向对方呈现良好的肌肤状态和精神面貌。RTC SDK 提供 API 帮助开发者轻松实现基础美颜功能。用户可以开启美颜功能并调节美白、磨皮、祛痘、红润效果等美颜选项,实现自然的美颜效果。
setBeautyEffectOptions
前确保已集成如下动态库:
libagora_video_process_extension.so
AgoraVideoProcessExtension.xcframework
AgoraVideoProcessExtension.framework
或 AgoraVideoProcessExtension.xcframework
libagora_video_process_extension.dll
// Java
mRtcEngine.setBeautyEffectOptions(true, new BeautyOptions(LIGHTENING_CONTRAST_NORMAL, 0.5F, 0.5F, 0.5F));
// Swift
let options = AgoraBeautyOptions()
options.lighteningContrastLevel = .normal
options.rednessLevel = 0
options.smoothnessLevel = 0
options.lighteningLevel = 0
agoraKit.setBeautyEffectOptions(true, options: options)
// Objective-C
AgoraBeautyOptions *options = [[AgoraBeautyOptions alloc] init];
options.lighteningContrastLevel = AgoraLighteningContrastNormal;
options.rednessLevel = 0;
options.smoothnessLevel = 0;
options.lighteningContrastLevel = 0;
[self.agoraKit setBeautyEffectOptions:YES options:options];
// C++
bool enabled = true;
agora::rtc::BeautyOptions options;
options.lighteningContrastLevel = BeautyOptions::LIGHTENING_CONTRAST_NORMAL;
options.lighteningLevel = 0.7;
options.smoothnessLevel = 0.5;
options.rednessLevel = 0.1;
m_lpAgoraEngine->setBeautyEffectOptions(enabled, options);
// Web 3.x
// setBeautyEffectOptions 为异步方法,必须使用 Promise 或 async/await 关键字进行调用。
// 如果需要在创建视频流后立即开启美颜,可以在 Client.on("stream-published") 回调中调用 setBeautyEffectOptions。
var streamPublishedHandler = async function() {
await localStream.setBeautyEffectOptions(true, {
lighteningContrastLevel: 1,
lighteningLevel: 0.7,
smoothnessLevel: 0.5,
rednessLevel: 0.1
});
client.off("stream-published", streamPublishedHandler);
}
client.on("stream-published", streamPublishedHandler);
// Web 4.x
// 请在 LocalVideoTrack 上调用 setBeautyEffect 设置基础美颜功能。
// 如下示例中的 localVideoTrack 是通过 AgoraRTC.createCameraVideoTrack 创建的本地摄像头视频轨道对象。
localVideoTrack.setBeautyEffect(true, {
lighteningContrastLevel: 1,
lighteningLevel: 0.7,
smoothnessLevel: 0.5,
rednessLevel: 0.1
}).then(() => { console.log("set Beauty Effect Options success!") });
声网还提供在线 Demo 供你体验基础美颜功能。
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffect
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffectOptions
setBeautyEffectOptions
方法时,请注意该方法有调用时序限制且美颜选项(options
)仅对视频大流生效。详见 Web 3.x API 参考。