【遂にmacにも対応】CRI ADX2 LE アップデート(Ver.2.10)のお知らせ


ADX2 LE SDK Ver.2.10をリリースしました。

2/5 追記
Unity Pluginをお使いで 2019/2/5 14時以前にDLされた方へ
C#スクリプトに更新を行ったため、お手数ですが再度ダウンロードしご対応くださいませ。よろしくお願い致します。
修正内容は以下


[2019-02-04 CRIWARE Unity Plugin Ver.2.30.41.01] ----------------------
C#スクリプトバージョンのみ更新
(1) 不具合修正
<CRI ADX2>
[機種共通]
  (a) CriAtomSourceコンポーネントのインスペクタ上でキューを再生した後、
      Unity Editor でゲームシーンをプレビュー実行すると、CRI FileSystem 
      ライブラリの終了処理が多重に実行されてしまう問題を修正しました。

トピックス

編集ツールのUIリニューアル

オーサリングツール、CRI Atom CraftのUIをリニューアルしました!
V3のUI紹介はこちら (LEでは外部プラグインは非対応です。ご了承くださいませ)


編集ツールがmacにも対応

以前から要望の多かったmacOSに対応しました!

追加機能 一部紹介

Unity版でのわかりやすい追加機能

■ ビート同期情報が設定されているキューの再生時に同期位置を検出するコールバック機能を追加しました。
– CriAtomExBeatSync.SetCallback
■ エディタ上でプラグインの動作状況を確認できる CRI Profiler を追加しました。
エディタの「Window」メニュ -> 「CRIWARE」 -> 「CRI PRofiler」から起動できます。

Unity Editor上でのプロファイラ

■ プレーヤ及びバスにアタッチ可能な出力音声解析モジュールを追加しました。
レベルメータ、スペクトラムアナライザ、波形取得機能が利用できます。
– CriAtomExOutputAnalyzer
■ CriAtomExOutputAnalyzer に出力波形データをコールバックで取得する機能を
追加しました。出力音声の録音などの用途にご利用いただけます。フラグを有効にしたコンフィグでアナライザを生成した上で、下記 API を呼び出してください。
– CriAtomExOutputAnalyzer.SetPcmCaptureCallback
– CriAtomExOutputAnalyzer.ExecutePcmCaptureCallback
■ プラグイン動作を無効にするヘッドレスモードを追加しました。
CRIWARE_ENABLE_HEADLESS_MODE マクロを有効にすると、プラグインライブラリの関数呼び出しを全てスキップします。
■ CriAtomSourceコンポーネントのインスペクタにプレビュ再生機能を追加しました。
■ 再生しているキューのビート同期情報を取得するAPIを追加しました。
– CriAtomExPlayback.GetBeatSyncInfo

UE4版でのわかりやすい追加機能

■ シーケンサエディタにキューを配置した際、トラックに波形のプレビューが表示されるようになりました。

タイムラインでの波形プレビュー

■ CRI Atom Craftでキューに対してドップラー係数を設定している場合に、ドップラー効果が適用されるようになりました。

変更内容詳細

Unreal Engine 4 プラグイン


(1) 開発環境
 - Unreal Engine 4.21.1 に対応しました
 - macOS 版 Unreal Engine Editor に対応しました

(2) 機能追加
 - Local Multiplayerに対応しました。
   Player Controllerが複数存在する場合、3Dポジショニング設定された
   音声は、最も距離の近いリスナから音声が再生されます。
 - AAtomSoundData::CueSheetの値がブループリントで参照できるように
   なりました。
 - シーケンサエディタ上で、再生カーソルを移動した際、カーソル位置
   付近の音声が一瞬再生されるようになりました。
 - AtomComponentID指定でAtomComponentを破棄する機能を追加しました。
   - UAtomComponent::DestroyComponentByID
 - スピーカー角度の設定機能を追加しました。
   - UCriWareFunctionLibrary::SetSpeakerAngleArray
 - シーケンサエディタにキューを配置した際、トラックに波形のプレビュー
   が表示されるようになりました。
 - UAtomCueSheetLoaderComponent::CueSheetReferenceがブループリント
   から変更できるようになりました。
 - Atom Cue Sheetアセットを非同期でロードするブループリントを追加
   しました。
   - Async Load Atom Cue Sheet
   ※ブループリントのみで使用可能(C++呼び出し不可)です。
 - カテゴリAISACコントロールをリセットするAPIを追加しました。
   - static bool UAtomCategory::ResetAllAisacControlById(int32 CategoryId);
   - static bool UAtomCategory::ResetAllAisacControlByName(FString CategoryName);
 - カテゴリにアタッチされているAISAC数を取得するAPIを追加しました。
   - static int32 UAtomCategory::GetNumAttachedAisacsById(int32 CategoryId);
   - static int32 UAtomCategory::GetNumAttachedAisacsByName(FString CategoryName);
 - カテゴリにアタッチされているAISACの情報を取得するAPIを追加しました。
   - static FAtomExAisacInfo UAtomCategory::GetAttachedAisacInfoById(int32 CategoryId, int32 AisacAttachedIndex);
   - static FAtomExAisacInfo UAtomCategory::GetAttachedAisacInfoByName(FString CategoryName, int32 AisacAttachedIndex);
 - カテゴリAISACコントロールの現在値を取得するAPIを追加しました。
   - static float UAtomCategory::GetCurrentAisacControlValueById(int32 CategoryId, int32 AisacControlId);
   - static float UAtomCategory::GetCurrentAisacControlValueByName(FString CategoryName, FString AisacControlName);
 - LLMTrackerのAudioタブでのメモリトラッキングが可能となるよう、メモリ
   アロケート処理を行っている関数にLLM_SCOPEを追加しました。
 - Atom Parameterコンポーネントを追加しました。
   アクタにAtom Parameterコンポーネントを追加することで、当該
   アクタで再生する音声に対し、任意のSoundObjectを適用することが
   可能です。
 - SoundAttenuationをSoundAtomCueに直接指定できるようになりました。
 - エフェクトのバイパス設定機能を追加しました。
   - UAtomAsrRack::SetEffectBypass
 - SoundObjectの情報をプロファイルに表示する機能を追加しました。
   cri.ShowProfileInfoに2を設定するとSoundObjectの情報が表示されます。
 - UE4の"Non-Spatialized Radius"設定を反映するように機能を追加しました。
 - AtomPlayGateのプロパティにFollowを追加しました。
   FollowをONに設定することで、AtomPlayGateで発音した3Dポジショニング
   音がキャラクターの移動を追従します。
 - CRI Atom Craftでキューに対してドップラー係数を設定している場合に、
   ドップラー効果が適用されるようになりました。
 - コンソールコマンドを用いたADX2サウンドのProfile結果を表示する機能
   を追加しました。
   (Experimentalな機能のため今後仕様変更を行う可能性があります。)
 - ACBファイルをインポートした際、Atom Cueアセットを自動的に作成する
   かどうかを選択できるようになりました。
   具体的には、プロジェクト設定UIの [Automatically Create Cue Asset] 
   の項目をOFFに設定することで、ACBファイルをインポートしても、
   Atom Cueアセットが作成されないよう動作が変更されます。
   (Atom Cue Sheetアセットのみが作成されます。)
 - USoundAtomCueSheetからUSoundAtomCueを取得するAPIを追加しました。
   - USoundAtomCueSheet::GetAtomCueByIndex(キューインデックス指定)
   - USoundAtomCueSheet::GetAtomCueById(キューID指定)
   - USoundAtomCueSheet::GetAtomCueByName(キュー名指定)
 - 以下のコンソールコマンドでAtomのサーバ処理回数、サーバ処理負荷、
   サーバ処理間隔を確認できるようになりました。
   - stat CRIWARE
 - Atom Cueアセットのシームレス連結再生機能を追加しました。
   - UAtomComponent::EnqueueSound
   UAtomComponent::EnqueueSound関数で複数の音声をAtomComponentに
   キューイングすることで、それらの音声がシームレスに連結されて再生
   されます。
 - Atom Cue Sheetアセットを非同期にロードする機能を追加しました。
   - UAtomCueSheetLoaderComponent
 - Atom Cue Sheetアセットのプロパティで、関連するAWBファイルの数を
   確認できるようになりました。
 - キューシートがロード済みかどうかを確認するAPIを追加しました。
   - USoundAtomCueSheet::IsLoaded
 - スペクトラムアナライザ機能を追加しました。
 - Sofdec2について、シームレス連結再生とキューポイント機能が併用
   できるようになりました。
 - Atom Cueアセットのプロパティで、キューに設定されたカテゴリの一覧、
   および利用可能なAISACコントロールの一覧が確認できるようになりました。
 【注意】
   カテゴリやAISACコントロールの情報はAtom Configアセット内に保存
   されています。
   そのため、キューに設定されたカテゴリやAISACコントロールの一覧を
   確認するには、当該キューの情報を保持したAtom Configアセットが
   プロジェクト設定UIで選択されている必要があります。
 - Atom Cue Sheetアセット指定でアセットをロードするAPIを追加しました。
   - USoundAtomCueSheet::LoadAtomCueSheet
 - 任意のタイミングでACFデータの再読み込みを行う機能を追加しました。
 - Attenuation機能利用時、Spatialize機能の有効無効を指定する機能を
   追加しました。
 - レベル測定結果の取得機能を追加しました。
 - OnEventPointのEventをDynamicDelegateからDynamicMulticastDelegate
   に変更しました。
 - Asr Rack IDを設定する関数を追加しました。
 - Root化したAtomComponentを作成する機能を追加しました。
   - UAtomStatics::CreateRootedAtomComponent
 - 再生中の音声を全て停止する機能を追加しました。
   - UAtomStatics::StopAllSounds
 - 指定したカテゴリの音声を全て停止する機能を追加しました。
   - UAtomCategory::StopByName

(3) 仕様変更
 - PersonaでのAnimNotifyで、Boneに追従しないようFollowフラグを無効にした
   PlayAtomCue通知でサウンド再生した際に、AtomComponentを作成しないように
   変更しました。
 - UAtomCategory::GetAttachedAisacInfo系ブループリントAPIの仕様を変更し、
   UE4のブループリントAPIとして違和感のないものにしました。
 - 下記コンポーネントのエディタ上の表示カテゴリをCRIWAREに変更しま
   した。
   - UAtomComponent
   - UAtomCueSheetLoaderComponent
 - SoundConcurrency判定を行う際に、判定に影響するOwnerをActor単位からObject
   単位での指定ができるよう変更しました。
 - SoundObjectのプロパティが反映されない場合がある不具合を修正しました。
 - UAtomStatics::SpawnSoundAtLocation関数に音声データを指定しない場合に、
   音声を再生せずにAtomComponentを返すよう動作を変更しました。
   本修正により、UAtomStatics::SpawnSoundAtLocation関数が返すAtomComponent
   にサウンドオブジェクト等を設定し、再生することが可能となります。
 - シームレス連結再生を使用するかどうかを、AtomComponentのプロパティ
   で明示的に指定するよう仕様を変更しました。
   シームレス連結再生を行う場合、AtomComponentの [Use Playlist] 
   プロパティをONに設定する必要があります。
 - コンテンツブラウザ上にあるAtomConfigのReimport時に、AtomConfig
   パラメータ更新のためのエディタ再起動が必要なくなりました。
 - ACBファイルをインポートした際、プライベートキューをアセット化
   しないよう動作を変更しました。
 - UAtomComponent::SetSoundを行った際に、音声再生中の場合に音声が
   再生されないようになりました。
 - プロジェクト設定UIから [Maximum Number of Files] の項目を削除
   しました。
 - プロジェクト設定UIに [Maximum Path Length] の項目を追加しました。

(4) 不具合修正
 - オーディオスレッド上からプラグインAPIの呼び出しが行われ、
   プラグインがクラッシュする不具合を修正しました。
 - AtomCueSheetLoaderを使用してロードしたACBデータに含まれる
   キューシートを、Spawn Sound 2Dを使用してレベルをまたいで音声を
   再生した場合に、アクセス違反が発生する不具合を修正しました。
 - 既にロード済みのAtom Cue Sheetアセットを再度AtomCueSheetLoaderで
   ロードした場合に、同一のアセットが複数ロードされる不具合を修正
   しました。
 - CRI ネイティブライブラリの不具合を修正しました。
   詳細は各 CRI ネイティブライブラリの変更履歴を参照してください。
 - CueSheetの非同期読み込みを行っている際にCultureを切り替えても、
   CueSheetの参照が残ってしまい言語が切り替わらない場合がある不具合を
   修正しました。
 - Auto ActivateがOFFに設定されているAtomComponentに対し、
   UAtomComponent::Play関数を実行する前に以下のAPIを呼び出しても、
   設定が正しく反映されない不具合を修正しました。
   - UAtomComponent::Pause
   - UAtomComponent::SetPitch
   - UAtomComponent::SetAisacByName
   - UAtomComponent::SetBusSendLevel
   - UAtomComponent::SetBusSendLevelByName
   - UAtomComponent::SetBusSendLevelOffset
   - UAtomComponent::SetBusSendLevelOffsetByName
   - UAtomComponent::SetSelectorLabel
   - UAtomComponent::SetAsrRackID
 - マルチリスナーのとき一定距離以上離れると音が聞こえなくなる不具合を
   修正しました。
 - エディタプレビュー時やスタンドアローン起動時に
   AtomCueSheetLoaderComponentでAtom Cue Sheetアセットをロード
   すると、クラッシュする不具合を修正しました。
 - 同一のAtomCueSheetLoaderComponentで複数のAtom Cue Sheetをロード
   した場合に、使用済みのAtom Cue SheetがGCされない不具合を修正
   しました。
 - AtomCueSheetLoaderコンポーネントを使用してAtom Cue Sheetアセット
   をロードすると、アプリケーション終了時に無限ループに陥る不具合を
   修正しました。
 - パッケージ起動時に、Async Load Atom Cue Sheetブループリントを
   使用したアセットのロードが失敗する不具合を修正しました。
 - 環境依存でプラグインのビルドに失敗する不具合を修正しました。
 - Windows環境向けにビルドを行った際、"PKEY_NAMEは既に定義されています"
   などのビルドエラーが発生するケースがあった不具合を修正しました。
 - AnimNotifyのPlayAtomCue通知でFollowを無効にした場合に、発音時の場所に
   とどまらずアタッチされたモデルに位置が追従してしまう不具合を修正しました。
 - シーケンサエディタ上で、再生カーソルを波形の先頭以前に移動した
   場合にエラーログが出力される不具合を修正しました。
 - シーケンサトラックに配置した音声について、再生終了後に音声の後半
   部分が再度発音されたり、再生開始時に音が途切れたりする不具合を
   修正しました。
 - cri.ShowSoundLocationコマンドで表示される音の範囲が正しいサイズ
   で描画されない不具合を修正しました。
 - カメラの回転が3Dポジショニングに反映されない不具合を修正しました。
   ※Ver.1.17.00以降のプラグインで発生していました。
 - UAtomComponent::EnqueueSoundにnullptrを指定した場合に、アクセス
   違反が発生する不具合を修正しました。
 - 同一のAtomComponentに対してSetSoundObjectを複数回呼び出すと、
   アクセス違反が発生する不具合を修正しました。
 - UE4.19以前のバージョンで作成したループ音声を含むシーケンサーを
   ロードした場合に、エラーが表示され、ループ音声のトラックの長さが
   0になる不具合を修正しました。
 - エディタ上でゲームを開始及び終了したとき、カテゴリボリュームが
   1.0に変更される不具合を修正しました。
 - Listenerに設定するドップラー係数に誤った値がセットされていた不具合を
   修正しました。
 - Auto DestroyをOFFに設定してAtomStatics::SpawnSoundAtLocation等の
   関数で音声を再生した場合に、再生終了後にイベントが繰り返し呼び
   出される不具合を修正しました。
 - Auto DestroyをONに設定して以下のAPIを実行した後、再生が終了する
   前にAtomComponent::Stop関数で明示的に音声の再生を停止した場合に、
   AtomComponentが破棄されない不具合を修正しました。
   - AtomStatics::SpawnSoundAtLocation
   - AtomStatics::SpawnSoundAttached
 - Spawn Sound 2Dに対して再生開始時刻を指定した場合でも、音声が先頭
   から再生されてしまう不具合を修正しました。
 - エディターを閉じる時に、
   "TextureResource was not released before destroyed." 
   のエラーが発生する不具合を修正しました。
 - Persist Across Level TransitionをONに設定してSpawn Sound 2Dで再生
   を行った場合に、以下の問題が発生する不具合を修正しました。
   - 再生が終了してもAtomComponentのIsPlayingがfalseにならず、
  OnAudioFinishedイベントも実行されない。
   - Auto DestroyをONに設定している場合でも、再生終了後に
  AtomComponentが破棄されない。
 - Atomトラックを含むシーケンスアセットをクックした際、エラーが発生
   してクックに失敗する不具合を修正しました。
 - Atom CueアセットのプロパティでCue Sheetが指定されていないアセット
   をプレビューすると、エディタがクラッシュする不具合を修正しました。
 - UAtomAsrRackクラスのAPIをC++コードで呼び出した場合に、リンクエラー
   になる不具合を修正しました。
 - AnimNotifyでボーンにアタッチしたサウンドがボーンのポジションで再生
   されない不具合を修正しました。
 - Ver.1.23.05以前のプラグインからバージョンアップを行った場合に、
   ACFアセットがロードできなくなる不具合を修正しました。
 - Atom Cueアセットを指定せずにUAtomComponent::Play関数を呼び出した
   場合(またはAutoActivateがONの場合)に、エラーログが出力される
   不具合を修正しました。
 - プロジェクト設定UI上でASRラック設定を破棄した場合に、エディタが
   クラッシュする不具合を修正しました。
 - パッケージ化したアプリケーションでUSoundAtomCueSheet::LoadAcbを
   使用した場合に、Atom Cue Sheetアセットが正しくロードされない不具合
   を修正しました。
 - DestroyComponentを明示的に行った際にSpawnSound2D/SpawnSoundAttached/
   PlaySoundAttachedで作成したAtomComponentが正しく破棄されない不具合を
   修正しました。
 - ブループリントでUSoundAtomCueSheetオブジェクト変数を生成できない
   不具合を修正しました。

Unity プラグイン


(1) 機能追加
[Editor]
 - エディタ上でプラグインの動作状況を確認できる CRI Profiler を追加しました。
   エディタの「Window」メニュ -> 「CRIWARE」 -> 「CRI Profiler」から起動
   できます。
[機種共通]
 - 各ライブラリが初期化済みかどうかを判断するAPIを追加しました。
   - CriAtomPlugin.IsLibraryInitialized
 - プラグイン動作を無効にするヘッドレスモードを追加しました。
   CRIWARE_ENABLE_HEADLESS_MODE マクロを有効にすると、プラグインライブラリの
   関数呼び出しを全てスキップします。
 - CriWareInitializer によるプラグインの終了処理をスクリプトから呼び出し
   可能にしました。
   - CriWareInitializer.Shutdown
 - プレーヤにプリディレイタイムを設定するAPIを追加しました。 
  - CriAtomExPlayer.SetPreDelayTime
 - 再生しているキューのビート同期情報を取得するAPIを追加しました。
  - CriAtomExPlayback.GetBeatSyncInfo
 - 3D 音源に対してインテリアパンニング境界を設定する API を追加しました。
   - CriAtomEx3dSource.SetInteriorPanField
 - ACF に設定された DSP バス数を取得するデバッグ用関数を追加しました。
   - CriAtomExAcfDebug.GetNumBuses
 - DSP バスエフェクトのバイパスを設定する API を追加しました。
   - CriAtomExAsr.SetEffectBypass
[機種共通]
 - ライブラリ初期化時にコンフィグが設定済みかどうかの判定を修正し、関連する
   警告を変更しました。
 - CriWareInitializer.InitializeDecrypter 関数は非推奨になりました。
   CriWareDecypter.Initialize 関数をご利用ください。
 - セレクタに対するグローバル参照ラベルを設定する関数を追加しました
   - CriAtomEx.SetGlobalLabelToSelectorByIndex
   - CriAtomEx.SetGlobalLabelToSelectorByName
 - プレーヤ及びバスにアタッチ可能な出力音声解析モジュールを追加しました。
   レベルメータ、スペクトラムアナライザ、波形取得機能が利用できます。
   - CriAtomExOutputAnalyzer
 - ASR 出力チャンネル数を CriWareInitializer にて指定可能にしました。
   "ASR Output Mode" から設定を選択してください。
 - CriAtomExOutputAnalyzer に出力波形データをコールバックで取得する機能を
   追加しました。出力音声の録音などの用途にご利用いただけます。
   フラグを有効にしたコンフィグでアナライザを生成した上で、下記 API を呼び
   出してください。
   - CriAtomExOutputAnalyzer.SetPcmCaptureCallback
   - CriAtomExOutputAnalyzer.ExecutePcmCaptureCallback

(2) 仕様変更
[機種共通]
 - CriAtomPlugin の以下のメンバ定数を削除しました。
   - CriAtomPlugin.criAtomUnityEditorVersion 
 - CriAtom の以下の API のアクセスレベルを public に変更しました。
   - CriAtom.Seup
   - CriAtom.Shutdown
 - ネイティブプラグイン内でのエラーがアプリケーションのメインスレッドにおいて
   発生した場合に、CriWareErrorHandler によるログ出力をネイティブプラグイン
   からのコールバック経由で行うようにしました。
   これにより、ログ出力部分にブレイクポイントを設定することで、エラーの原因と
   なった C# レイヤの関数呼び出しがスタックトレースから参照可能になりました。
 - CriAtomExPlayerOutputAnalyzer を非推奨としました。
   今後は CriAtomExOutputAnalyzer をご利用ください。
 - CriAtomSource にて「Low Latency Playback」が無効な場合にサウンドレンダラの
   設定を「デフォルト」とするように動作を変更しました。
   ※従来は「ASR」となっていました。
 - 各コンポーネントにおける DSP バス関連の ID 指定関数を Obsolete に変更
   しました。今後はバス名指定関数をご利用ください。

(3) 不具合修正
<全般>
[Editor]
 - Editor 実行中にスクリプトホットリロードが発生した際にクラッシュする問題を
   修正しました。
 - Atom Window 上でキューを選択して GameObject を作成する等の操作を行うと、
   エラーが発生する場合があった問題を修正しました。
[機種共通]
 - CriAtomExOutputAnalyzer の破棄時などに、多重に不要なエラーが発生していた
   問題を修正しました。
 - Unity 2017.2 以降のバージョンでエディタ実行中にポーズすると、プラグイン内
   でのポーズ処理が行われていなかった問題を修正しました。
 - Unity 2018.1.0 Beta においてコンパイルエラーが発生していた問題をを修正
   しました。
 - CriAtomSource の再生制御 API を呼び出した際に NULL 参照が発生する場合が
   あった問題を修正しました。
 - CriAtomSource に対してキューシート名を指定しない状態では“Play On Start”
   フラグによるシーン開始時のキュー再生が行えない問題を修正しました。
[PC]
 - Unity 2017.3 等のバージョンにおいてプラグインをインポートした際に
   プラットフォーム設定が書き換えられてしまい、スタンドアローンビルド時に
   エラーが発生していた問題を修正しました。
[iOS]
 - イヤホン接続時に通話を行った状態でアプリケーションに復帰すると、アプリケー
   ションの音声再生が復帰してしまう問題を修正しました。
 - Scripting Backend として Mono が選択された場合にビルドエラーが発生する問題
   を修正しました。
 - アプリケーションのサスペンド/レジューム時に稀にクラッシュが発生する問題を
   修正しました。
[Android]
 - パラメータパレットによるサウンドレンダラ設定が正常に動作していなかった問題
   を修正しました。

PC版 / Cocos2d-x対応版


(1) 機能追加
 - モニタライブラリ使用したインゲームプレビューにおいて、オーサリングツ
   ールからのACFデータ, ACBデータの更新処理の開始・終了情報を取得するた
   めの機能を追加しました。
   - criAtomExMonitor_SetDataUpdateNotificationCallback
 - プレーヤに対して複数のASRラックIDを指定可能な関数を追加しました。
   - criAtomExPlayer_SetAsrRackIdArray
   【補足】
   1つのプレーヤに対して設定可能なASRラックの最大数は下記のマクロ定数に
   定義されています。
   - CRIATOMEXPLAYER_MAX_ASR_RACKS
 - CriAtomEx3dSourcHn、CriAtomEx3dListenerHnから座標値を設定されている
   取得する関数を追加しました。
   - criAtomEx3dSource_GetPosition
   - criAtomEx3dListener_GetPosition
 - 一つのキューに紐づけることができるAISACの最大数が変更可能になりました。
   (以前は8個で固定でした。)
   AISACの最大数を変更するにはCriAtomExConfig構造体のメンバ変数である
   "max_aisacs"の値を変更します。
   指定できる最大値はCRIATOMPARAMETER2_MAX_NUM_AISACS以下の値です。
 - 任意のカテゴリが持つ全てのAISACコントロール値をデフォルト値にリセット
   する機能を追加しました。
   - criAtomExCategory_ResetAllAisacControlById
   - criAtomExCategory_ResetAllAisacControlByName
 - 任意のカテゴリAISACコントロールの現在値を取得する機能を追加しました。
   - criAtomExCategory_GetCurrentAisacControlValueById
   - criAtomExCategory_GetCurrentAisacControlValueByName
 - 下記関数によって取得できるAISAC情報の種類を追加しました。
   - criAtomExPlayer_GetAttachedAisacInfo
   - criAtomExCategory_GetAttachedAisacInfoById
   - criAtomExCategory_GetAttachedAisacInfoByName
   取得可能なAISAC情報一覧
   - AISAC名
   - デフォルトコントロール値が設定されているか(新)
   - デフォルトAISACコントロール値(新)
   - Control Id(新)
   - Control Name(新)
 - プレーヤにプリディレイタイムを設定するAPIを追加しました。
   - criAtomExPlayer_SetPreDelayTime
 - 再生しているキューからビート同期情報を取得するAPIを追加しました。
   - criAtomExPlayback_GetBeatSyncInfo
 - CriAtomExBeatSyncInfo構造体に以下のメンバ変数を追加しました。
   - bpm: 現在のBPM
   - beat_progress: 拍の進捗割合(0.0f~1.0f)
 - ブロック再生での分割遷移時に分割位置を維持する機能に対応しました。
 - ポーズ、レジュームアクションに対応しました。
 - 開始ブロック番号指定のスタートアクションに対応しました。
 - キューのデフォルトセレクタラベルに対応しました。
 - MixDownCenterボリュームとMixDownLFEボリュームのデータ設定値に対して、
   オフセット値を加算する下記APIを追加しました。
   - criAtomExPlayer_AddMixDownCenterVolumeOffset
   - criAtomExPlayer_AddMixDownLFEVolumeOffset
 - Headphone Virtual Surroundエフェクトを追加しました。
 - キュー内のどのトラックが再生されたかを取得する機能を追加しました。
   - criAtomExPlayback_GetPlaybackTrackInfo

(2) 仕様変更
 - 以下のAPIを非推奨としました。使用はお控え下さい。
   - criAtomEx_SetDefaultConfigForAcf
   - CriAtomExAcfConfig
   - criAtomEx_CalculateWorkSizeForRegisterAcfConfig
   - criAtomEx_RegisterAcfConfig
 - ACFデータの解除処理の条件から、「生成済みの全てのACBハンドルの解放」を
   無くし、任意のタイミングでの解除処理が行えるように仕様を変更しました。
   本仕様変更に伴い、以下の点が変更されています。
   - ユーザーアロケータを利用したライブラリ初期化を行なった場合に、これまで
  初期化時に確保していたカテゴリやREACT用のワーク領域をACF登録時に確保
  するよう変更しました。
  (ワーク領域を独自に確保してライブラリを初期化している場合は、これまで
  同様に初期化時に指定された領域を使用してACFの登録処理が行われます。)
   - ACF登録関数(criAtomEx_RegisterAcfConfig、criAtomEx_RegisterAcfData、
  criAtomEx_RegisterAcfFile、criAtomEx_RegisterAcfFileById)を実行すると、
  再生中の音声をすべて停止するよう変更しました。
   - ACF登録解除関数(criAtomEx_UnregisterAcf)を実行すると、再生中の音声を
  すべて停止し、プレイヤに設定しているパラメータを一部リセットするよう
  変更しました。
  登録解除後の再生では必要に応じて、パラメータの再設定を行ってください。
   - ワーク領域を独自に確保してライブラリを初期化している状態で、ASRの初期化
  時に指定した最大バス数を超えたACFを登録した場合に、登録処理が失敗するよ
  うに変更しました。
  (これまでは登録処理は成功するが、バス設定適用が失敗するようになって
  いました。)
   - criAtomEx_CalculateWorkSizeForRegisterAcfFile関数でACFファイルの読み込み
  を行うため、利用にはユーザアロケータの登録が必須となりました。
 - ツールとライブラリ間の通信インターフェースへの機能追加に伴い、接続に
   関する後方互換性が無くなります。
   本SDK内のAtomCraftを使用してインゲーム及びプロファイラーを使用するには
   CRI Atom Library Ver.2.16.18以上のライブラリが必要となります。
 - 以下の警告(ピッチ上限違反)が発生した際、コールバックの最終引数
   に問題が発生したCriAtomPlayerHnのアドレスを格納するよう動作を
   変更しました。
   - W2010110801
   - W2015113001
 - 以下の条件を満たした状態で、criAtomExSoundObject_AddPlayer関数を実行
   した際に再生中の音声が停止しないよう仕様を変更しました。
   - 指定したサウンドオブジェクトとAtomExプレーヤが既に関連付けられている


(2) 不具合修正
 - criAtomExPlayback_GetTimeSyncedWithAudio により取得可能な再生時刻が一時
   停止中も進んでしまう問題を修正しました。
 - criAtomEx_CalculateWorkSizeForRegisterAcfFileがメモリアロケータ必須と
   なっていたのを、メモリアロケータなしでもワークサイズ領域の計算を行える
   よう修正しました。
 - AtomCraftで「AtomExPlayerのパラメータを無視する」をtrueに設定した音声
   を再生すると意図しないエラーが発生する場合がある不具合を修正ました。
 - セレクタによるトラック遷移タイプキューの再生で、トラック遷移と再生開
   始の同期処理が登録されている場合に、再生開始処理が正しく処理されない
   不具合を修正しました。
 - セレクタによるトラック遷移タイプキューの再生で、アクションによって切
   り替えたセレクタ設定がプレーヤに対するパラメータ更新処理の適用を行う
   ことで無効化されてしまう不具合を修正しました。
 - 下記条件を満たす時、ACFデータが登録されていない状態になってしまう不具合を
   修正しました。
   - 下記の関数を実行している
  - criAtomEx_RegisterAcfData 関数
  - criatomEx_RegisterAcfFile 関数
   - 下記関数を上記関数実行後に実行している
  - criAtomEx_CalculateWorkSizeForRegisterAcfData 関数
  - criAtomEx_CalculateWorkSizeForRegisterAcfFile 関数
   ※CRI Atom Ver.2.16.18より発生していました。
 - コンプレッサ、リミッタエフェクトをサイドチェインにより駆動する際、
   スナップショットを適用すると、振幅解析器の解析結果に連動しなくなる
   不具合を修正しました。
 - ブロックシーケンス再生でのブロック遷移時にサーバー間隔による遷移タイ
   ミング補正が入っていない不具合を修正しました。
 - 再生IDを指定して各種パラメータを取得する以下の関数について、再生IDの状態が
 PREP/PLAYING状態でもパラメータが未設定の場合に失敗する不具合を修正しました。
   - criAtomExPlayback_GetParameterFloat32
   - criAtomExPlayback_GetParameterUint32
   - criAtomExPlayback_GetParameterSint32
   - criAtomExPlayback_GetAisacById
   - criAtomExPlayback_GetAisacByName
 - AISAC数を8個以外に設定したときワークサイズ計算の不整合が生じる場合が
   ある不具合を修正しました。
 - ストリームAWBを使用するACBに対してAWBをアタッチしないままインゲーム
   プレビューを行った場合、サーバー処理内で無限ループが発生する不具合を修正。
 - キューリンクを用いた音声再生で距離減衰AISACが適用できない不具合を修正
   しました。
 - ACFデータ内にあるカテゴリキューリミット用ワーク領域の初期化時に、本来
   は領域外となるパディング用領域をもワークとして使用してた不具合を修正し
   ました。
 - プリディレイとエンベロープのアタックを同時に使用したとき、
   プリディレイとアタックが同時に開始されてしまう不具合を修正しました。
   プリディレイが完了してからアタックが始まるのが正しい挙動です。
 - 以下の条件を満たすとき、再生した音声に対して criAtomExPlayer_SetAsrRackId 
   関数等にて設定した出力先ASRラックIDが適用されない不具合を修正しました。
   - 再生する音声がキューリンクである
   - キューリンク元のパラメータパレットにて出力先ASRラックIDが指定されている
 - パラメータ適用処理内で例外が発生することがある不具合を修正しました。
   ※CRI Atom Ver.2.17.12 以降のライブラリで発生していました。
 - シーク再生を行った際、criAtomExPlayer_GetTimeによって得られる再生時間が
   シークした時刻からではなく、0から進んでしまう不具合修正を修正しました。
   ※CRI AtomEx Sequencer Ver.1.05.05以降のライブラリで発生していました。
 - CriAtomPlayerConfigのmax_aisacsを奇数に設定すると例外が発生することがある
   不具合を修正しました。
 - 音声再生中にASRラックを破棄すると、アクセス違反が発生する不具合
   を修正しました。
 - コンプレッサ・リミッタのアタックタイムもしくはリリースタイムが
   0に設定されている際に、ゲインの適用処理が正しく適用されない
   不具合を修正しました。
 - インサーションDSPのピッチシフタを使用して再生を行うと、
   CriAtomExPlayerの状態がPLAYENDに遷移しない不具合を修正しました。
 - 以下の条件を満たした場合に音声出力が無音になる可能性がある不具合を修正しました。
   - DSPバスエフェクトのピッチシフタを使用している
   - ピッチシフタの入力として、以下いずれかのDSPバスエフェクトの出力を使用している
  - リバーブ
  - I3DL2リバーブ
  - バイクアッドフィルタ
  - バンドパスフィルタ
 - ACBハンドルリリース時にエラーE2011080599が発生し、処理が進まなく
   なる不具合を修正しました。
 - PanTypeがAutoで設定されているキューがランタイム実行時に強制的にPantypeが
   Pan3dとなってしまう不具合を修正しました。
 - ブロック再生での指定分割遷移時に、遷移時分割位置維持が設定されてない
   場合でも最大で1フレーム分のシークが行われてしまう不具合を修正しました。
 - ASRの出力サンプリングレートよりも低いレートの音声を再生した場合、
   AtomExPlayerのステータスがPLAYENDに遷移しない場合がある不具合を
   修正しました。
 - DSPバスエフェクトのコンプレッサ、またはリミッタを使用した際、
   無音入力から再度音声入力を行うと、無音入力前の状態から
   出力ゲインがフェードインしてしまう不具合を修正しました。
 - シーク再生を行なったデータに対して再生の停止を行うと、
   以下の関数により得られるサンプル数が巻き戻ってしまう不具合を修正しました。
   - criAtomExPlayback_GetNumPlayedSamples 関数
   - criAtomPlayer_GetNumPlayedSamples 関数
 - 以下の条件を満たしたときに、再生中にバスセンドのリセット動作を行うと
   再生音声が無音になる不具合を修正しました。
    - 再生データにバスセンドが設定されていない
   → データ再生あるいはエンコーダで作成したキューが該当します。
   以下の条件を満たす場合には、不具合は発生しません。
    - モニターライブラリを使用し、かつキュー再生を行う
   【補足】
   バスセンドのリセットは、以下の関数呼び出しにより発生します
    - DSPバス設定のアタッチ
   criAtomEx_AttachDspBusSetting, またはcriAtomExAsr_AttachDspBusSetting
 - Atomライブラリを使用し、以下の条件  -,   -,   -を全て満たした際に
   再生時に無音となる不具合を修正しました。
 - Atomモニターライブラリ使用し、以下の条件  -,   -,   -を全て満たすか、
  -,   -,   -を全て満たした際に、再生時に無音となる不具合を修正しました。
    - 以下のツールを使用して作成したACBデータを使用している
   - CriAtomEncoder.exe
   - criatomencd.exe
    - 以下の関数を実行して"MasterOut"以外のバスセンドを
   設定している
   - criAtomExPlayer_SetBusSendLevel
   - criAtomExPlayer_SetBusSendLevelByName
    - 再生中に以下の関数を実行する
   - criAtomEx_AttachDspBusSetting
   - criAtomEx_DetachDspBusSetting
    - 以下の関数を実行して再生パラメータの更新を行う
   - criAtomExPlayer_Update
   - criAtomExParameter_UpdateAll
 - Acfファイルを登録した際に、DspBusSettingが自動でアタッチされない場合
   がある不具合を修正しました。
 - criAtomExAcf_GetAisacControlNameById関数に対して、ACFデータ内に存在す
   るAISACコントロールIDを指定してもAISACコントロール名取得が行えない不具
   合を修正しました。
 - 以下のバージョンのAtomCraftで作成したACFについて、
   サラウンダのパラメータ解釈を正しく行えていなかった不具合を修正しました。
    - AtomCraft Ver.2.32.00 - Ver.2.35.00
    - AtomCraft Ver.3.34.00 - Ver.3.35.01
 - AdmPlayerのワークサイズ計算時に、エラー E2017020301 および
   E2017041802 が発生する不具合を修正しました。
 - ピッチシフタエフェクトをバスに使用している際、以下の条件を満たすと、
   処理系によってはバスの出力が無音になる不具合を修正しました。
    - ピッチ周波数をサンプリングレートの半分より大きい値に設定する
 - 下記条件を満たす時、REACT制御用のカテゴリ内発音数が不正になり、駆動した
   REACTが戻らなくなる不具合を修正しました。
   - フェーダーをプレーヤにアタッチしている
   - REACTの設定にて、「ポーズ中のキューも含む」をoffに設定している
 - 下記条件を満たす時、REACT制御用のカテゴリ内発音数が不正になり、駆動した
   REACTが戻らなくなる不具合を修正しました。
   - criAtomExPlayer_Prepare関数またはPause関数を実行し、プレーヤまたは
  プレイバックのステータスが再生準備状態(PREP)になっている
   - 同一フレーム内でPause解除とStop関数を実行している
 - 停止処理によりエンベロープリリース中のボイスに対してパラメータ更新
   処理が適用されると、停止処理によって下げたボイス優先度が元に戻って
   しまう不具合を修正しました。
 - ビート同期による同期待ちのキューが、再生開始時にキューリミット処理等
   で発音キャンセルとなった場合に不正アクセスが発生する可能性のある不具合
   を修正しました。
 - プリペア解除時にキューリミット処理が適用されない不具合を修正しました。
 - 再生中にイヤホン抜き差しなどにより長時間出力がブロックされた場合に、音声
   同期タイマから取得した時刻が音声から大きくずれてしまう問題を修正しました。
 - スイッチタイプキューをプレイリストモードに設定し、再生を行った場合に
   2回目以降のリスト再生時にスイッチ処理が行われず、無音となってしまう
   不具合を修正しました。
 - 下記条件を満たす時、データに指定していた出力先ASRラックナンバーパラメータ
   (ASRラックID)が適用されない不具合を修正しました。
   - プレーヤに対してcriAtomExPlayer_ResetParameters関数を実行している
 - 下記条件を満たす時、criAtomExPlayer_SetAsrRackId関数にて指定した
   ASRラックIDを使用して、パラメータパレットに設定したASRラックID数分の
   キュー再生が行われてしまう不具合を修正しました。
   - criAtomExPlayer_SetAsrRackId関数にてプレーヤにASRラックIDを指定した
   - パラメータパレットにて、複数のASRラックIDを指定しているキューを
  当該プレーヤにて再生した
   【補足】
   本来は、criAtomExPlayer_SetAsrRackId関数にて指定したASRラックID分のみの
   キュー再生が行われることを想定していました。
 - 以下の条件を満たしたときに、バス名指定APIがエラーコールバックを返し、
   処理が完了しない不具合を修正しました。
    - 複数のASRラックを使用している。
    - デフォルトASRラックはDSPバス設定をアタッチしている
    - デフォルトではない方のASRラックにDSPバス設定をアタッチしていない
  【補足】
    バス名指定APIとは criAtomExAsrRack_(任意の文字列)ByName の命名規則を
    満たす関数です。
 - 以下の条件を満たしたときに、当該プレーヤまたはデータを使用した再生を行う
   と、バスセンドの設定が無視され、MasterOutに対して直接出力されていた不具合
   を修正しました。
   - バスセンドをプレーヤまたはデータに設定している
   - 存在しないASRラックIDをプレーヤまたはデータに指定している
 - ACFデータでReact数をCategory数より多く設定している場合に、E2010110100が
   発生する不具合を修正しました。
 - AtomExライブラリの初期化処理に置いて、ユーザアロケータを利用した
   初期化を行った際に、ASRとHcaMXのメモリ領域が二重に確保されてしまう
   不具合を修正しました。
 - criAtomEx_RegisterAcfFile関数で余分なメモリ領域が確保されてしまう不具
   合を修正しました。
 - criAtomEx_CalculateWorkSizeForRegisterAcfData関数で余分なメモリ
   領域が確保されてしまう不具合を修正しました。
 - criAtomEx_RegisterAcfConfig関数実行後にACFデータにアクセスする処理を
   実行すると、アクセス例外が発生する不具合を修正しました。
   【補足】
   criAtomEx_RegisterAcfConfig関数は次回SDKアップデート(Ver.2.18.00)にて
   廃止する予定です。
 - インゲームプレビュー中にオーサリングツール上でのACFデータ情報の編集に
   伴うACFデータ更新処理が行われたときに、ゲーム変数情報が初期化されてし
   まう不具合を修正しました。
 - モニタライブラリ使用時に以下のツールを使用して作成したACBデータが無音
   再生となってしまう不具合を修正しました。
   - CriAtomEncoder.exe
   - criatomencd.exe
 - 音声再生中にサーバ処理とAtomExプレーヤの作成がクリティカルな
   タイミングで複数スレッドから同時に行われた場合に、アプリケーション
   がクラッシュする可能性がある不具合を修正しました。
 - ブロックシーケンス再生で設定されていた再生レート情報がブロックループ
   時にクリアされてしまう不具合を修正しました。
 - ACBデータロード後、ランダムノーリピートタイプキューの初回再生で、常に
   1トラック目が再生される不具合を修正しました。
 - 以下の条件に一致した場合に、MasterOutバスに対するバス名指定系APIが
   失敗してしまう不具合を修正しました。
   - ACFをワーク領域渡しによって登録している。
   - DSPバス設定をアタッチしていない。
 - モニタライブラリを使用したインゲームプレビューで、アプリケーション起
   動中、2回目以降のインゲームプレビューの開始処理にてAtomCraftによるACF
   データの更新が行われない不具合を修正しました。
   ※CRI Atom Ver.2.14.29以降のバージョンで発生していました。
 - 以下の条件に一致した場合に、ラックID "0" 以外で再生する音声が意図
   したバスを経由せずに再生される不具合を修正しました。
   - 複数のASRラックを使用し、それぞれにDSPバス設定を適用している。
   - ラック毎に設定しているDSPバス設定のバス名の並び順が異なっている。
   - ラックID "0" 以外の指定をAPIにて行っている。
   - ラックID "0" 以外の再生でMasterOutバスへの直接出力ではなく、複数
  のバスを経由した再生をしている。
 - サウンド処理の停止/再開関数を実行した際に、稀にクラッシュが発生する問題を
   修正しました。

最後に

大幅にパワーアップした CRI ADX2 LE
以下のサイトにて学習コンテンツも充実してきておりますので、ぜひお試しください。
CRIWARE for Games 学ぶ チュートリアル他


またLEについては個別のサポートを行っておりませんが、以下のコミュニティにて活発に意見交換が行われております。ぜひご活用くださいませ。

ゲームサウンド制作よろず(Discord)
ゲームサウンド制作に関する話題が広く集まるチャットコミュニティです。CRIのスタッフも常駐しており、ADX2 LEについても気軽に質問が可能です。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です