Beauty AR
  • Overview
  • Web
    • クイックスタート
    • インテグレーション
      • Overview
      • 内蔵カメラ
      • カスタムストリーム
      • 読み込みの最適化
      • エフェクト設定
      • 人物画像分割の使用
      • 絵文字とバーチャルキャラクターの設定
    • インターフェースドキュメンテーション
    • リリース説明
    • ベストプラクティス
      • WebRTC によるプッシュ
      • WebRTC によるプッシュ(事前初期化スキーム)
      • TRTC によるプッシュ
    • よくあるご質問
  • Android
    • インテグレーション
      • SDK の統合
      • TEBeautyKit の統合
    • インターフェースドキュメンテーション
    • リリース説明
    • ベストプラクティス
      • SDK サイズの削減
      • エフェクトパラメータ
    • 高度な機能
      • ジェスチャー認識
      • 顔認識
      • 仮想背景
    • 素材制作
      • 美顔 AR Studio の紹介
    • よくあるご質問
  • IOS
    • インテグレーション
      • SDK の統合
      • TEBeautyKit の統合
    • インターフェースドキュメンテーション
    • リリース説明
    • ベストプラクティス
      • SDK サイズの削減
      • エフェクトパラメータ
    • 高度な機能
      • ジェスチャー認識
      • 顔認識
      • 仮想背景
    • 素材制作
      • 美顔 AR Studio の紹介
    • よくあるご質問
  • Flutter
    • インテグレーション
    • インターフェースドキュメンテーション
    • 素材制作
      • 美顔 AR Studio の紹介
  • Overview
    • Overview
  • サービスをアクティブ化します
  • 価格
  • 体験バージョン
    • Web
    • モバイル端末
Beauty AR
このページは現在英語版のみで提供されており、日本語版も近日中に提供される予定です。ご利用いただきありがとうございます。

よくあるご質問

When I built my Android application for release, an error occurred saying that some methods were not found. What should I do?

If you enable optimization (by setting minifyEnabled to true) when building your application, some code that is not called at the Java layer will be removed. However, such code may be called at the native layer, causing a no xxx method error.
To fix the issue, add the following keep rules to prevent the code from being removed:
-keep class com.tencent.xmagic.** { *;}
-keep class org.light.** { *;}
-keep class org.libpag.** { *;}
-keep class org.extra.** { *;}
-keep class com.gyailib.**{ *;}
-keep class com.tencent.cloud.iai.lib.** { *;}
-keep class com.tencent.beacon.** { *;}
-keep class com.tencent.qimei.** { *;}
-keep class androidx.exifinterface.** { *;}

What should I do if a GSON library conflict error occurs when I integrate the SDK into my host Android project?

Add the following code to the build.gradle file of the host project:
Android{
configurations {
all*.exclude group: 'com.google.code.gson'
}
}

What should I do if the SO libraries fail to be loaded when Android targetSdkVersion is 31 or larger?

When Android targetSdkVersion is 31 or larger, you need to open the AndroidManifest.xml file in app and add the following tag to application:
<uses-native-library
android:name="libOpenCL.so"
android:required="true" />
//`true` indicates that the library is a must for the application to run. The application cannot be installed on a system without the library.
//`false` indicates that the application can use the library if it is available, but can also run without it. It can be installed on a system without the library. If you set the parameter to `false`, you need to deal with the issues that may arise due to the absence of the library.
//Android website introduction: %!s(<nil>)
For more information, see <uses-native-library>.

If the texture passed when using beauty filters is a horizontal texture, how to solve it?

You can use the 'convert' method in the TextureConverter.java utility class in the demo to rotate the texture and convert it to portrait mode, and then pass it to the beauty SDK.
/**
* This method is used to rotate and mirror the RGBA texture. The process is to first rotate the texture Proceed in a clockwise direction. by 'rotation' degrees (which can take values of 0, 90, 180, 270), and then perform a horizontal flip (flipHorizontal) and a vertical flip (flipVertical)
* Use case: Some streaming SDKs return horizontal textures or the characters in the image are facing the wrong direction, while the SDK requires that the characters in the texture are facing forward. Therefore, this method can be used to convert the texture.
*
* @param srcID: The RGBA texture.
* @param width: The width of the texture.
* @param height: The height of the texture.
* @param rotation: The angle of rotation.
* @Returns: The rotated texture. Note: If rotated 90 or 270 degrees, the width needs to be swapped.
*/
public int convert(int srcID, int width, int height, @RotationDegreesValue int rotation, boolean flipVertical, boolean flipHorizontal)

If the texture passed when using beauty filters is an OES texture, how to solve it?

You can use the 'oes2Rgba' method in the TextureConverter.java utility class in the demo to convert the texture to an RGBA texture, and then pass it to the beauty SDK.
/**
* This method is used to convert an OES texture to an RGBA texture
*
* @param srcID: The OES texture.
* @param width: The width of the texture.
* @param height: The height of the texture.
* @Returns: The ID of the RGBA texture.
*/
public int oes2Rgba(int srcID, int width, int height)

What if I want to use another version of PAG? Supported by V3.5.0

When the client integrates the beauty filter SDK:
If integrated through Maven, sdk can be introduced via implement. If you does not wish to use this version of pag, it can be excluded through:
implementation ('com.tencent.mediacloud:TencentEffect_S1-04:version'){ exclude group: "com.tencent.tav", module: "libpag"
}
If manually integrated with the beautification SDK through download, the dependency on aar is without pag. you would still need to add a line in their app's build.gradle to implement pag for usage.
implementation 'com.tencent.tav:libpag:4.3.33-noffavc'
To dynamically download the .so libraries, you need to obtain them from the official download page and only integrate the .aar.
1.1 

What are the relationships between different effect properties?