CRIWARE Unity Plugin Manual  Last Updated: 2024-04-24
[CriAtom]サウンドファイル再生

サンプル内容

概要

cri4u_samples_criatom_prim01_game_mini.png

本サンプルはADXで圧縮していないサウンドファイルを再生するシンプルなシーンです。
コンポーネントを使用せず、下記の関数コールによって簡単にサウンドファイルを再生できます。

操作方法

  • [Playback File (MUSIC)]、 [Playback File (SE)]ボタン
    指定したサウンドファイルを再生します。

  • [Stop]ボタン
    サウンド再生を停止します。

シーン情報


ミドルウェア CRI ADX (CRI Atom)
サンプル Primitiveサンプル
格納場所 /cri/unity/samples/UnityProject/Assets/Scenes/criatom/primitive/
シーンファイル Scene_01_PlaybackFile.unity


プログラムの解説

プログラムの流れ

スクリプトでは下記の関数コールによりサウンドファイルを再生します。
  • (1) プレーヤーの作成
    this.player = new CriAtomExPlayer();

  • (2) 再生するファイルの設定
    this.player.SetFile(null, Path.Combine(CriWare.streamingAssetsPath, "sample_music.wav"));

  • (3) サウンドフォーマットの設定 (SetFormat関数)
    this.player.SetFormat(CriAtomEx.Format.WAVE);

  • (4) 再生開始の指示
    this.player.Start();

VoicePool クラスの作成

音声を再生するには以下のようにフォーマットに合わせた VoicePool クラスを作成します。
プレーヤーで音声の再生を行うと、プレーヤーは作成されたボイスプールからボイスを取得し再生を行います。
使用例
WAVE ファイルを再生するために CriAtomExWaveVoicePool を 以下のように作成します。

private CriAtomExWaveVoicePool waveVoicePool;
this.waveVoicePool = new CriAtomExWaveVoicePool(2, 2, 48000, true);

本サンプルで使用するWAVEファイルはチャンネル数最大 2、サンプリングレート最大 48kHz であるため、
VoicePool 作成時にチャンネル数 2、サンプリングレート 48000 の値を指定しています。

注意
一部 CriAtomExWaveVoicePool クラスに対応していないプラットフォームがあります。

注意
本サンプルで再生するWAVE形式の音声データには同時再生数の制限設定を設けられません。
連続で再生要求を行うとCRIライブラリ側でエラーメッセージを出力することがあります。
このような場合、アプリケーション側でCRIライブラリの初期化パラメータを見直す必要があります。