Skip to main content
このページは SDK 2.0.0 に対応します。クラス名: FBEngine。メイク / リシェイプ列挙: パラメータ列挙。認証: 認証とライセンス。

FBEngineConfig

作成時に appId + appKey、または licenseToken を渡します。licenseToken が空でない場合はトークン経路になり、appId / appKey でネットワークを呼びません。

FBEngine

FBEngine.create でインスタンスを作成します。プロセス単位のシングルトンではありません。externalContext: true のエンジンは同時に 1 台だけ processTexture にバインドできます。 美顔 / リシェイプ / メイク / クロマキー / ぼかし / clear* / setFilterIntensity は同期です。フィルター、ステッカー、背景画像、静止画 API は Future を返します。

肌

setSmoothing、setSmoothingStyle(FBSmoothingStyle)、setWhitening、setWhiteningStyle(FBWhiteningStyle)、setSharpening、setRosiness、setBeautySkinOnly(bool) — 強度 [0, 1]。

リシェイプ

setReshape(FBReshape param, double intensity) — [-1.0, 1.0]。Dart 名: FBReshape.faceThin、faceVShape、… browThickness。表は パラメータ列挙。

ボディリシェイプ

setBodyReshape(FBBodyReshape param, double intensity) — [0.0, 1.0]。Dart 名: FBBodyReshape.bodySlim … torsoLong。先に addResourcePack で resource_body.fbd。パラメータ列挙、オプションリソースパック。

メイク

フィルター / ステッカー / バーチャル背景 / クロマキー

path と data は排他で、どちらか一方だけ必須です。3D ステッカーとボディリシェイプ: オプションリソースパック。

静止画

externalContext: false が必要です。それ以外は StateError を投げます。リアルタイム前処理動画には使わないでください。

可観測性

FBStats: fps、avgProcessTimeMs、sessionTimeSeconds。 FBEngineEvent: code、message、eventCode → FBEngineEventCode:

エラーコード

ネイティブが < 0 を返すと FBException を投げます。

その他の型

  • FBBitmap — width、height、stride、pixels(RGBA8888 コピー)
  • FBLogLevel — trace … critical

ネイティブテクスチャ(Dart を経由しない)

externalContext: true で create したあと、相手 SDK の GL スレッド上で呼びます。ライブエンジンは同時に 1 台だけバインドできます。先のエンジンを dispose() する前に 2 台目を create(externalContext: true) すると例外になります。静止画エンジン(externalContext: false)はこのスロットを使いません。
  • iOS: [FacebetterPlugin processTexture:width:height:]
  • Android: FacebetterPlugin.processTexture(textureId, width, height)
失敗時は 0 を返します。完全な断片は サードパーティ連携 を参照してください。