複数の音声を再生するには以下3つの方法があります。
複数の音を1つのキューにまとめて再生する
CRI Atom Craftでは、1つのキューに複数の音声波形データを入力することができます。
時間軸上、重ならないように順番に再生するデータを作成できます。
また、複数トラック作成し、時間軸上同時に複数の音声を再生するデータも作成できます。
メリット
・デザイナの意図としたタイミングやバランスで再生できます。
・プログラムは非常に単純で、1つのキューに対して再生を指示するだけです。
デメリット
・意図通りに再生できなかった場合、データ制作まで立ち返って調整する必要があります。
(ただし、CRI Atom Craftでプレビューしながら調整できるので、プログラマに渡してから再調整することは少ないです。)
1つのプレーヤに対して複数再生リクエストする
1つのAtomExプレーヤで複数の再生リクエストを実行することができます。
具体的には、以下のコードになります。
CriAtomExPlaybackId criAtomExPlayer_Start(CriAtomExPlayerHn player)
再生の開始
CriAtomExPlayerHn criAtomExPlayer_Create(const CriAtomExPlayerConfig *config, void *work, CriSint32 work_size)
AtomExPlayerの作成
void criAtomExPlayer_SetCueId(CriAtomExPlayerHn player, CriAtomExAcbHn acb_hn, CriAtomExCueId id)
音声データのセット(キューID指定)
詳細については、サンプルプログラム「
キューID再生 」を参考にしてください。
メリット
・再生タイミングの変更やパラメーターの調整など、プログラムで自由にできます。
デメリット
・プレーヤが1つなので、各音に対する再生中の制御はできません。
複数のプレーヤを作成してそれぞれに再生リクエストする
具体的には、以下のコードになります。
メリット
・再生タイミングの変更やパラメーターの調整など、プログラムで自由にできます。
・各音に対する再生中の制御が可能です。
デメリット
・複数のプレーヤを管理するので、プログラムが複雑になります。