tencent cloud

Feedback

EffectMode (High-Performance Mode) Usage Guide.

Last updated: 2024-11-20 18:06:58

    EffectMode

    Starting from SDK V3.9.0, when creating an SDK, you must specify EffectMode, which has two values: EffectMode_Normal and EffectMode_Pro.
    EffectMode_Normal is equivalent to the "High Performance Mode" of the older SDK version.
    EffectMode_Pro is equivalent to the default mode of the old SDK version.
    The differences between the two are as follows:
    

    High performance mode

    "High performance mode" was a concept before SDK V3.9.0. At that time, the SDK had two modes: high performance mode and default mode.
    From V3.9.0 onwards, high performance mode became EffectMode_Normal and default mode became EffectMode_Pro.
    For the differences between high performance mode and default mode, please refer to the differences between EffectMode_Normal and EffectMode_Pro mentioned above.

    How to set EffectMode in V3.9.0 and later versions

    Android
    iOS
    Flutter
    uniapp
    Method 1
    If you are directly using the XmagicApi object, then please specify EffectMode when creating the XmagicApi object in the constructor method:
    public XmagicApi(Context context, EffectMode effectMode, String resDir)
    
    public XmagicApi(Context context, EffectMode effectMode, String resDir, OnXmagicPropertyErrorListener xmagicPropertyErrorListener)
    Method 2
    If you are using the TEBeautyKit object, you can call the following method to enable high performance mode.
    public TEBeautyKit(Context context, EffectMode effectMode)
    
    public static void create(@NonNull Context context, EffectMode effectMode, @NonNull OnInitListener initListener)
    The EffectMode is defined as follows:
    public enum EffectMode{
    NORMAL(0),
    PRO(1);
    private final int value;
    EffectMode(int value) {
    this.value = value;
    }
    public int getValue() {
    return value;
    }
    }
    Method 1
    If you are directly using the XMagic object, then you need to specify EffectMode when initializing XMagic, as shown in the following code:
    NSDictionary *assetsDict = @{@"core_name":@"LightCore.bundle",
    @"root_path":[[NSBundle mainBundle] bundlePath],
    @"effect_mode":@(effectMode)
    };
    self.xmagic = [[XMagic alloc] initWithRenderSize:CGSizeMake(720, 1280) assetsDict:assetsDict];
    Method 2
    If you are using the TEBeautyKit object, please pass in the EffectMode parameter when calling the createXMagic method.
    + (void)createXMagic:(EffectMode)effectMode onInitListener:(OnInitListener _Nullable )onInitListener;
    The EffectMode is defined as follows:
    typedef NS_ENUM(NSInteger, EffectMode) {
    EFFECT_MODE_NORMAL = 0,
    EFFECT_MODE_PRO = 1,
    };
    You can enable it by calling the TencentEffectApi method setDowngradePerformance.
    Note:
    This method needs to be called before activating beauty features, i.e., before the enableCustomVideoProcess method in TRTC or Live.
    You can enable it by calling the XmagicApi method setDowngradePerformance.
    Note:
    This method needs to be called before activating beauty features, i.e., before the enableCustomVideoProcess method.

    How to enable high performance mode before V3.9.0

    Android
    iOS
    Flutter
    uniapp
    Method 1
    If you are directly using the XmagicApi object, then please call the following interface immediately after creating the XmagicApi object to enable high-performance mode:
    For SDK 3.7.0 and later: Call the enableHighPerformance method.
    For SDK before 3.7.0: Call the setDowngradePerformance method.
    Method 2
    If you are using the TEBeautyKit object, you can call the following method to enable high performance mode.
    /**
    * @param context ApplicationContext
    * @param isEnableHighPerformance Does it enable high-performance pattern?
    */
    public TEBeautyKit(Context context, boolean isEnableHighPerformance)
    /**
    *
    * Asynchronously create a TEBeautyKit object
    * @param context Android application context
    * @param isEnableHighPerformance Whether to enable enhanced mode
    * @param initListener Initialization callback interface
    */
    public static void create(@NonNull Context context, boolean isEnableHighPerformance, @NonNull OnInitListener initListener)
    Method 1
    If you are directly using the XMagic object, you can enable it during the initialization of XMagic:
    For SDK 3.7.0 and later: please set enableHighPerformance to YES in the assetsDict dictionary.
    For SDK prior to 3.7.0: please set setDowngradePerformance to YES in the assetsDict dictionary.
    NSDictionary *assetsDict = @{
    @"core_name":@"LightCore.bundle",
    @"root_path":[NSBundle mainBundle] bundlePath],
    @"setDowngradePerformance":@(YES)//YES: Enables high-performance mode; NO: Does not enable high-performance mode. By default, high-performance mode is not enabled.
    };
    self.xmagic = [[XMagic alloc] initWithRenderSize:CGSizeMake(720, 1280) assetsDict:assetsDict];
    
    Method 2
    If you are using the TEBeautyKit object, you can call the following method to enable high performance mode.
    /**
    *
    * Create a TEBeautyKit object
    * @param isEnableHighPerformance Whether to enable high-performance mode. YES: Enable high-performance mode; NO: Do not enable high-performance mode
    * @param initListener Initialization callback interface
    */
    + (void)create:(BOOL)isEnableHighPerformance onInitListener:(OnInitListener _Nullable )onInitListener;
    
    You can enable it by calling the TencentEffectApi method setDowngradePerformance.
    Note:
    This method needs to be called before activating beauty features, i.e., before the enableCustomVideoProcess method in TRTC or Live.
    You can enable it by calling the XmagicApi method setDowngradePerformance.
    Note:
    This method needs to be called before activating beauty features, i.e., before the enableCustomVideoProcess method.
    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support