TUILiveKit Release Notes
Live SDK Release Notes
BaseBeautyStore is the module in AtomicXCore responsible for managing basic portrait beautification effects. This module enables you to easily add natural beautification features to your live streaming or video calling applications.Core Concept | Type | Core Responsibilities and Description |
BaseBeautyState | data | Represents the current state of the basic beautification module. Contains the currently applied intensity values for smoothing (smoothLevel), whitening (whitenessLevel), and rosy (ruddyLevel). |
BaseBeautyStore | abstract | The core management class for interacting with basic beautification features. Implemented as a global singleton (shared), responsible for setting, resetting, and synchronizing all basic beautification parameters. |
BaseBeautyStore and subscribe to receive real-time updates of the current beautification parameter state.BaseBeautyStore.shared() to access the global instance.baseBeautyStore.baseBeautyState to receive real-time updates of BaseBeautyState.import io.trtc.tuikit.atomicxcore.api.device.BaseBeautyStateimport io.trtc.tuikit.atomicxcore.api.device.BaseBeautyStoreimport kotlinx.coroutines.CoroutineScopeimport kotlinx.coroutines.Dispatchersimport kotlinx.coroutines.launchimport kotlinx.coroutines.flow.MutableStateFlowclass BeautyManager() {// 1. Obtain singletonprivate val baseBeautyStore = BaseBeautyStore.shared()private val coroutineScope = CoroutineScope(Dispatchers.Main)private val _smoothLevel = MutableStateFlow(0f)private val _whitenessLevel = MutableStateFlow(0f)private val _ruddyLevel = MutableStateFlow(0f)// Expose beauty state externallyval baseBeautyState = BaseBeautyState(smoothLevel = _smoothLevel,whitenessLevel = _whitenessLevel,ruddyLevel = _ruddyLevel)init {// 2. Subscribe to statesubscribeToBeautyState()}private fun subscribeToBeautyState() {coroutineScope.launch(Dispatchers.Main) {baseBeautyStore.baseBeautyState.smoothLevel.collect { smoothLevel ->_smoothLevel.value = smoothLevel}}coroutineScope.launch(Dispatchers.Main) {baseBeautyStore.baseBeautyState.whitenessLevel.collect { whitenessLevel ->_whitenessLevel.value = whitenessLevel}}coroutineScope.launch(Dispatchers.Main) {baseBeautyStore.baseBeautyState.ruddyLevel.collect { ruddyLevel ->_ruddyLevel.value = ruddyLevel}}}// ... subsequent methods}
SeekBar). [0, 9], where 0 means the effect is off, and 9 means the effect is most prominent. You need to map the UI control value (e.g., 0.0 - 1.0 for a UISlider) to the 0 - 9 range.setSmoothLevel(smoothLevel:), setWhitenessLevel(whitenessLevel:), and setRuddyLevel(ruddyLevel:) to set the smoothing, whitening, and rosy intensities.class BeautyManager() {private val baseBeautyStore = BaseBeautyStore.shared()// Set smoothing level (input range 0–100, internally converted to 0–9)fun updateSmoothLevel(uiLevel: Int) {val sdkLevel = (uiLevel / 100.0f * 9.0f)baseBeautyStore.setSmoothLevel(sdkLevel)println("Set smoothing level: UI=$uiLevel, SDK=$sdkLevel")}// Set whitening level (input range 0–100, internally converted to 0–9)fun updateWhitenessLevel(uiLevel: Int) {val sdkLevel = (uiLevel / 100.0f * 9.0f)baseBeautyStore.setWhitenessLevel(sdkLevel)println("Set whitening level: UI=$uiLevel, SDK=$sdkLevel")}// Set rosy level (input range 0–100, internally converted to 0–9)fun updateRuddyLevel(uiLevel: Int) {val sdkLevel = (uiLevel / 100.0f * 9.0f)baseBeautyStore.setRuddyLevel(sdkLevel)println("Set rosy level: UI=$uiLevel, SDK=$sdkLevel")}}
baseBeautyStore.reset() method.class BeautyManager() {private val baseBeautyStore = BaseBeautyStore.shared()// Reset all basic beautification effectsfun resetBeautyEffects() {baseBeautyStore.reset()}}
Comparison Item | Basic Beautification (BaseBeautyStore) | Advanced Beautification (TEBeautyKit, requires additional integration) |
Core Features | Smoothing, Whitening, Rosy | Includes all basic features, plus V-shape face, eye distance adjustment, nose slimming, 3D stickers, filters, makeup, and more |
Pricing | Free (included with AtomicXCore license) | Paid (requires separate Tencent Effects SDK license) |
Integration Method | Built-in by default; use BaseBeautyStore.shared() directly | Requires additional integration of the TEBeautyKit component and authentication |
Recommended Scenarios | Scenarios with basic beautification needs and rapid implementation requirements | Scenarios requiring advanced beautification, shaping, stickers, filters, and other premium features |
Store/Component | Feature Description | API Documentation |
LiveCoreView | Core view component for displaying and interacting with live video streams. Handles video rendering and view widgets, supports host streaming, audience co-hosting, host connections, and more. | |
BaseBeautyStore | Basic beautification: adjust smoothing, whitening, and rosy (levels 0–9), reset status, synchronize effect parameters. | |
DeviceStore | Audio and video device control: microphone (on/off, volume), camera (on/off, switch, quality), screen sharing, real-time device status monitoring. |
TEBeautyKit (advanced beautification), ensure you are using the APIs provided by TEBeautyKit to adjust beautification effects.Esta página foi útil?
Você também pode entrar em contato com a Equipe de vendas ou Enviar um tíquete em caso de ajuda.
comentários