CRI ADX  Last Updated: 2025-04-04 09:23 p
プロファイラーログリプレイ機能

プロファイラーでは、記録したログや読み込んだログの情報をもとに、 ADXで起こった発音を再現する(リプレイ)機能を実装しています。

リプレイ機能とは

プロファイラーがログを記録する際には、ほぼ全ての外部APIコールが同時に記録されます。
それをもとに「プロファイラーが記録したときに流れていた音声の再現」を試みる機能です。

音声の再現の際には、Atom Exライブラリを使用し可能な限り正確な再現を試みます。

ログにはプロファイラーが接続していた時に読み込まれていたキューシートの情報が保存されており、 ログを記録した時に使用したキューシートファイルとは異なるファイルの使用や、 Atomの初期化パラメータの変更も可能です。

リプレイ機能の使用方法

リプレイにはトランスポートバーのボタンを主に使用します。

トランスポートバーの表示

起動直後、もしくはリセット直後のトランスポートバーはこのような表示になります。

トランスポートバー

ログが読み込まれている場合、トランスポートバーの表示が以下のように変化します。

ログが読み込まれたトランスポートバー

トランスポートバーの各ボタンの動作は以下の通りです。

ボタン 動作
既存のログを開きます (プロファイラーの状態はリセットされます)。
ログを新規に取得します (プロファイラーの状態はリセットされます)。
選択位置(タイムライン上黄色のライン)を0秒地点に戻します。
リプレイの設定に基づき、選択位置からリプレイを開始します。
リプレイを開始した後、一時中断します。
リプレイを停止します。
オートスクロールを切り替えます。ONの時に水色になります。
リプレイに関する設定画面を開きます。→ プロファイラーログリプレイ設定画面

なお、全てのボタンが同時に表示されたりクリック可能になるわけではありません (リプレイの状況によって変化します)。

また、ここでの一時中断とはリプレイの完全な中断ではなく、ログに記録されたイベントのリプレイのみを中断します。
そのため、例えば一時中断の瞬間に再生中だった音は鳴り続けます。

リプレイに関する設定

プロファイラーに読み込んだログでリプレイを行う場合は、 リプレイに関する設定画面から必要な情報を設定する必要があります。
設定方法に関しては、対応する別ページを参照してください。

リプレイ機能の動作について

リプレイの設定が正しく行われていれば、ログに記録されたイベントをもとに、 ログを記録した時に鳴っていた音が再現されます。
また、タイムラインをクリックして0秒以外の地点を選択している場合 (タイムライン中の黄色のライン)、 その部分から音が再現されます。

リプレイ中は、タイムラインに緑色のラインでどの部分がリプレイされているかを表示します。
オートスクロールがONの場合、緑色のラインが表示領域外に移動すると自動で表示領域が追従します。
テキストログビューアー の表示は追従しません。

リプレイ中にエラーコールバックが発生した場合は、 リプレイエラーログビューアー にその内容が出力されます。

注意
途中からリプレイを開始した場合、開始地点より前のキューは発音しません。 そのため、ログを取った時とは異なるタイミングで音が再生されるなどの違いが発生します。

リプレイ機能の制限事項

リプレイ機能には、再現性に関して一部制限があります。

  • ログを取得し始めたときに発音していたボイスについては発音しません。
  • 既に存在するACBハンドルに追加でAWBファイルをアタッチする動作には対応していません。
  • CriAtomEx3DSource等の3D音源に関する位置情報等は、対応する設定用のAPIが再現されるまで(0, 0, 0)と扱われます。
  • Atom Exの初期化時に独自の乱数生成器を使用している場合でも、リプレイ時には使用されません。
    • そのため、シード値を設定で合わせても異なる再現音になります。
  • 音声の再現に用いるAtom Exライブラリは、プロファイラーを起動したOSのもの向けとなります。
    • 例えばWindows環境で取得したログをmacOS版プロファイラーに読み込ませて再現を試みても、 使用されるAtom ExライブラリはmacOS版のものとなります。