統合
Create が nullptr を返す
resource_pathはresource.fbdファイルである必要があります(ディレクトリではありません)license_tokenまたは有効なapp_id+app_keyを設定しますCreateの前にSetLogConfigを呼び出しますfacebetter.dllがインポートライブラリと一致することを確認します
ヘッダーが見つからない / リンクエラー
SDK のinclude をインクルードパスに追加します。facebetter.lib をリンクし、facebetter.dll を実行ファイルの隣に置きます。
SetRenderView がない
この API は iOS / macOS のみです。Windows では ProcessImage の出力を自分で GL テクスチャへアップロードするか、D3D 相互運用を行います。
効果
美顔が弱い、またはまったく見えない
デフォルト強度は0(オフ)です。SetBeautyTypeEnabled はありません。リシェイプ / メイクには顔検出が必要です。カメラでは FrameType::Video を使います。
リシェイプの方向が逆
範囲は[-1.0, 1.0] です。正負は逆方向です。パラメータ列挙 を参照してください。
フィルター / ステッカーが効かない
SetFilter / SetSticker に .fbd の パスまたはバイトを渡します。次の ProcessImage のあとで有効になります。
バーチャル背景 / クロマキー
SetVirtualBackgroundBlur、SetVirtualBackground(path|bytes)、ClearVirtualBackground を使います。キーイング: SetChromaKey(ChromaKeyColor::Green) のあと similarity / smoothness / desaturation。ClearChromaKey() はポートレートセグメンテーションを復元します。
パフォーマンス
プレビューがカクつく
解像度を下げ、FrameType::Video を使い、ステッカー / バーチャル背景を減らし、GetStats().avg_process_time_ms を確認します。毎フレームファイルから ImageFrame を作らず、カメラバッファを直接渡してください。ギャラリーの大きな静止画は、開いたときに小さいプレビューフレームを作り、書き出しで原寸を 1 回処理します。ベストプラクティス を参照してください。
メモリ使用量が高い
ピクセルバッファを再利用します。使わないshared_ptr<ImageFrame> は速やかに解放します。毎フレーム新しいエンジンを作らないでください。
リモートデスクトップ / VM でプレビューがない
ハードウェア OpenGL がない場合があります。独立 GPU ドライバのあるマシンでテストしてください。認証
license_token と app_id + app_key
license_token が空でない場合は優先されます(トークン / {token} JSON / .lic)。それ以外のネイティブオンライン v2 は app_id + app_key を使います。認証とライセンス を参照してください。
イベント 1 または 101
認証失敗または初期化失敗です。コールバックの message と Debug ログを確認してください。

