CRIWARE Unity Plugin Manual
Last Updated: 2024-04-24
ADX LipSync Library
ADX LipSyncとは?
ADX LipSyncは、音声波形を解析して口形状情報(口パターン)を自動生成するミドルウェアです。
機械学習と信号処理技術を組み合わせて、音声データから自然な口パターンを生成します。
キャラクターを音声に合わせて口パクさせるためには、「事前にモーション付けを行う」方法と、
「再生する音声からリアルアイムに口の形状を決定する」方法の二通りがあります。
ADX LipSyncはこれら両方のケースで利用することができ、口パク品質の向上や作業量の削減に寄与します。
ADX LipSyncの利用形態
ADX LipSyncは、キャラクターの口パクをどのように設定するかに応じて、以下の二通りの
利用形態があります。
ADX LipSync Toolsによる事前解析
ADX LipSync Libraryによるリアルタイム解析
「ADX LipSync Toolsによる事前解析」
では、コマンドラインツールに音声ファイルを
入力すると、テキスト形式で口パターンデータを出力します。
これをDCCツールに取り込んで編集することで、キャラクターのフェイシャルモーション付けに
活用することができます。
事前解析用のツールは本SDKパッケージ内に含まれています。
以下のパスのマニュアルを参照してください。
cri/tools/ADXLipSync/manual/ja/ADX_LipSync_Tool_Manual_ja.html
「ADX LipSync Libraryによるリアルタイム解析」
では、ゲーム中で再生した音声を
リアルタイムで解析し、口パターンの取得が可能です。
音源である CriAtomSource と接続することで、複雑なコーディングなしにモデルの口パクを制御
することができます。
本マニュアルでは、主にリアルタイム解析での利用を想定しつつ、ADX LipSyncの利用方法について説明します。
リアルタイム解析の概念図
Tips
ADX LipSyncで取得可能な口パターン情報
ADX LipSyncに適したフェイシャルの口形状
プラグインコンポーネントを用いたリアルタイム口パク制御
リアルタイム解析利用時のCPU負荷/メモリ消費
ADX LipSyncの機能
CRI Lipsコンポーネント
複数キャラクターでのリップシンク使用方法
Animatorによる制御方法
リリースノート
ADX LipSyncの特徴
音声データの入力から自然な口パターンを自動生成対応
入力された音声データの波形を解析し、自動で最適な口の形を出力します。
また舌の位置や両唇音による口の開閉など、実際の発音に即して再現することが可能です。
2D/3Dモデルの両方に対応
生成した口パターンは様々なモデルデータに組み込みやすい形式で出力されます。
2D/3Dの両方に対応しており、幅広い用途・ジャンルでより豊かなゲーム体験を実現します。
言語に依存しない多言語対応
日本語のみならず、あらゆる言語で口パターンを生成することができます。
あらかじめ各言語の辞書データなどを用意する必要もありません。
複数言語でワールドワイド展開をするタイトルの開発を大幅に効率化します。
幅広い声質に対応
老若男女、さまざまな声質のセリフを解析することができます。
音程の高さ・低さに関わらずあらゆる声質に対応し、口パターンを生成します。
機能詳細と制限事項
口形状解析の詳細
(1)
Lips ライブラリは Atom の波形フィルターコールバック(
criAtomExPlayer_SetFilterCallback()
など)相当のタイミングで解析を行います。
上記は
CriWare.CriLipsAtomAnalyzer.AttachToAtomExPlayer
などによって、プラグインライブラリの内部で行われております。
この動作についてユーザー側でとくに操作などは必要ありませんが、
使用している機能の影響でいくつかの制限事項が存在します。
(2)
Lips ライブラリで取得可能なこれらの情報はそれぞれ独立した解析器(ニューラルネットワーク)で音声を解析しています。
CriWare.CriLipsMouth.Info
CriWare.CriLipsMouth.MorphTargetBlendAmountAsJapanese
よってこれらの値を組み合わせて使用することで、より表現力の高いリップシンクが可能となります。
例えば片方の解析結果を、もう片方の解析結果で補うような使用方法も効果的です。
(3)
再生する音声が日本語以外(英語、中国語等)であっても
CriWare.CriLipsMouth.MorphTargetBlendAmountAsJapanese
をご利用いただいて問題ありません。
Lips ライブラリから取得できる解析結果は、その結果を適用する先の
キャラクターモデルの表現
に合わせた形式であり
入力音声を制限するものではありません。
ただし、英語にしか存在しない音素の形状は
CriWare.CriLipsMouth.MorphTargetBlendAmountAsJapanese
では表現できません。
英語音声をLipsで解析し日本語5母音で解析結果を取得した場合は、日本語5母音の口形状で英語を発音したような表現となります。
この表現が許容できるかどうかは、実際にアプリケーションが期待する動作となるかテストデータなどで確認されることをおすすめしています。
Lips ライブラリから取得できる解析結果のそれぞれの詳細について以下のページを参照ください。
ADX LipSyncで取得可能な口パターン情報
制限事項
注意
以下の項目はライブラリ使用時に注意が必要です。
HCA-MXコーデックやプラットフォーム固有の音声圧縮コーデックを使用している場合、
CriWare.CriLipsAtomAnalyzer.AttachToAtomExPlayer
は利用できません
利用した場合、常に無音状態相当の情報が取得できます
これは上記波形フィルターコールバックが呼び出されないためで、解析自体行われません
キューに配置されているトラックの先頭波形のみ解析対象となります
複数のトラックが配置されている場合は先頭波形のみ解析されます
Lips の解析時にはキューに設定されているパラメータは無視されます
ボリューム情報やピッチシフト情報は無視されます
Copyright (c) CRI Middleware Co., Ltd. 1.8.10