CRIWARE Unity Plugin Manual
Last Updated: 2023-08-29
Unity Editor 上で音声をバウンスする
CriWare.Editor.CriAtomWaveFile
クラスでは以下のような用途向けに、ADX2で再生した音をwavファイルとして出力(バウンス)できます。
独自Editor拡張での描画
ADX2のコーデックで圧縮した音声を一時的に非圧縮データとして利用
動作概要
CriWare.CriAtomExPlayer
で再生した音声は以下のシーケンスたどり、ASR(Atom Sound Renderer)にレンダリングされHWから出力されます。
CriWare.Editor.CriAtomWaveFile
クラスでは、上記シーケンスの最終部であるASRでミキシングされた音声を
wavファイルとして書き出すことができます。
ASRのミキシング結果を出力するため、以下のような利用状況の最終的な出力を書き出すことができます。
CriAtomExPlayerのパラメーター変化適用結果
複数のCriAtomExPlayerでの音声再生結果
スナップショット機能などで音声再生中に、DSPバスの設定を切り替えた際の結果
注意
・バウンスを実時間より早く行うことはできません。
これはAtomのサウンド出力をリアルタイムに記録しているためです。
・バウンスの対象となるASRラックはCRIWARE Unityプラグイン内部で作成されたデフォルトのASRラックのみになります。
ユーザーアプリケーション上で作成したASRラックはバウンスの対象にはなりません。
使用方法
CRIWARE Library Initializer
コンポーネントや CriWareInitializer::Initialize
または
CriWare.Editor.CriAtomEditorUtilities.InitializeLibrary()
によって
ライブラリを初期化したあとバウンスを開始します。
以下のサンプルではバウンスを開始したあとに、プレーヤーで発音していますが、
バウンスを開始するタイミングとプレーヤーで発音するタイミングに制限はありません。
CriWare
.
Editor
.
CriAtomEditorUtilities
.
InitializeLibrary
();
string
outputFilePath;
//Bounced output file path
uint numChannels;
//Number of channels in the bounced file
CriWare
.
Editor
.
CriAtomEditorUtilities
.
PreviewPlayer
player;
CriWare
.
Editor
.
CriAtomWaveFile
.
StartBounce
(outputFilePath, numChannels);
~~
player.Play(acb, cueName);
// Get bounce time for progress bars, etc.
uint timeMs =
CriWare
.
Editor
.
CriAtomWaveFile
.
GetBounceTime
();
~~
// Stop bounce and flush file.
CriWare
.
Editor
.
CriAtomWaveFile
.
StopBounce
();
CriAtomPlugin.FinalizeLibrary();
注意
CriWare.Editor.CriAtomWaveFile.StartBounce()
のチャンネル数には制限があります。
指定可能なチャンネル数についてはリファレンスコメントを参照ください。
Copyright (c) CRI Middleware Co., Ltd. 1.8.10