音声再生を行うコンポーネントの基底クラス
[詳解]
|
CriAtomExPlayer | player [get, protected set] |
| 内部で使用している CriAtomExPlayer です。 [詳解]
|
|
CriAtomEx3dSource | source [get, protected set] |
| 内部で使用している CriAtomEx3dSource です。 [詳解]
|
|
bool | playOnStart [get, set] |
| 実行開始時に再生するかどうかを設定/取得します。 [詳解]
|
|
bool | use3dPositioning [get, set] |
| 3Dポジショニングを使用するかを設定します。 [詳解]
|
|
bool | freezeOrientation [get, set] |
| 3D音源の向きを固定するかどうかを設定します。 [詳解]
|
|
bool | use3dRandomization [get, set] |
| 3D音源の位置のランダム化を使用するかを設定します。 [詳解]
|
|
uint | randomPositionListMaxLength [get, set] |
| 3D音源における位置のランダム化に関する座標リストの要素数の最大値を設定します。 [詳解]
|
|
CriAtomRegion | region3d [get, set] |
| 音源の3Dリージョンの設定及び取得 [詳解]
|
|
CriAtomListener | listener [get, set] |
| 音源のリスナーの設定及び取得 [詳解]
|
|
CriAtomRegion | regionOnStart [get, set] |
| 初期リージョンを設定します。 [詳解]
|
|
CriAtomListener | listenerOnStart [get, set] |
| 初期リスナーを設定します。 [詳解]
|
|
bool | loop [get, set] |
| ループ再生の切り替え [詳解]
|
|
float | volume [get, set] |
| ボリュームを設定/取得します。 [詳解]
|
|
float | pitch [get, set] |
| ピッチを設定/取得します。 [詳解]
|
|
float | pan3dAngle [get, set] |
| パンニング3D角度を設定/取得します。 [詳解]
|
|
float | pan3dDistance [get, set] |
| パンニング3D距離を設定/取得します。 [詳解]
|
|
int | startTime [get, set] |
| 再生開始位置を設定/取得します。 [詳解]
|
|
long | time [get] |
| 再生時刻(ミリ秒単位)を取得します。 [詳解]
|
|
Status | status [get] |
| ステータスを取得します。 [詳解]
|
|
bool | attenuationDistanceSetting [get, set] |
| 距離減衰有効化設定を設定/取得します。 [詳解]
|
|
bool | androidUseLowLatencyVoicePool [get, set] |
| 低遅延再生ボイスプールから再生を行うかどうかを設定/取得します。 [詳解]
|
|
音声再生を行うコンポーネントの基底クラス
- 説明:
- 音声再生を行うコンポーネントの基底クラスです。
本クラスを継承することで音声再生向けコンポーネントをカスタマイズできます。
CriAtomSourceの再生状態を示す値です。
- 説明:
- CriAtomSource::status プロパティにより取得できます。
列挙値 |
---|
Stop |
停止中
|
Prep |
再生準備中
|
Playing |
再生中
|
PlayEnd |
再生完了
|
Error |
エラーが発生
|
指定したキュー名のキューを再生開始します。
- 引数
-
- 戻り値
- 再生ID
- 説明:
- キュー指定用プロパティの設定に関わらず、本関数に指定したキュー名のキューを再生します。
指定したキューIDのキューを再生開始します。
- 引数
-
- 戻り値
- 再生ID
- 説明:
- キュー指定用プロパティの設定に関わらず、本関数に指定したキューIDのキューを再生します。
一時停止/再開します。
- 引数
-
- 説明:
- 再生のポーズ/ポーズ解除を行います。
sw に True を指定して本関数を実行すると、 CriAtomSource コンポーネントは再生中の音声をポーズ(一時停止)します。
sw に False を指定して本関数を実行すると、 CriAtomSource コンポーネントはポーズを解除し、一時停止していた音声の再生を再開します。
void SetBusSendLevel |
( |
string |
busName, |
|
|
float |
level |
|
) |
| |
|
inline |
バス名を指定してバスセンドレベルを設定します。
- 備考:
- キュー再生時、データ側にバスセンドレベルが設定されている場合に本関数を呼び出すと、 データ側に設定されている値と本関数による設定値とを乗算した値が適用されます。
例えば、データ側のバスセンドレベルが0.8f、 CriAtomSource のバスセンドレベルが0.5fの場合、 実際に適用されるバスセンドレベルは0.4fになります。
void SetBusSendLevel |
( |
int |
busId, |
|
|
float |
level |
|
) |
| |
|
inline |
void SetBusSendLevelOffset |
( |
string |
busName, |
|
|
float |
levelOffset |
|
) |
| |
|
inline |
バス名を指定してバスセンドレベルをオフセット指定で設定します。
- 説明:
- キュー再生時、データ側にバスセンドレベルが設定されている場合に本関数を呼び出すと、 データ側に設定されている値と本関数による設定値とを加算した値が適用されます。
例えば、データ側のバスセンドレベルが0.2f、 CriAtomSource のバスセンドレベルが0.5fの場合、 実際に適用されるバスセンドレベルは0.7fになります。
void SetBusSendLevelOffset |
( |
int |
busId, |
|
|
float |
levelOffset |
|
) |
| |
|
inline |
void SetAisac |
( |
string |
controlName, |
|
|
float |
value |
|
) |
| |
|
inline |
void SetAisac |
( |
uint |
controlId, |
|
|
float |
value |
|
) |
| |
|
inline |
実行開始時に再生するかどうかを設定/取得します。
- 説明:
- Trueが設定されていると、実行開始時に再生を開始します。
- 備考:
- 再生開始が行われるタイミングは、MonoBehaviour::Start 関数が呼ばれるタイミングです。
- 注意:
- WebGL などの非同期 ACB ロードが有効なプラットフォームで本フラグによる 実行開始時のキュー再生を行う場合は、必ずキューシート名を指定してください。
指定しない場合、ロード待ちを行うべきキューシートが特定できないため、 キューの再生に失敗します。
3Dポジショニングを使用するかを設定します。
- 説明:
デフォルトの設定では、3Dポジショニングの使用は有効になっています。
本パラメータは任意のタイミングで切り替えることができます。
3D音源の向きを固定するかどうかを設定します。
- 説明:
デフォルトの設定では、GameObjectの向きに従い3D音源の向きを設定します。
本パラメータをtrueに設定すると、音源の向きをそのタイミングの値に固定することができます。
3D音源の位置のランダム化を使用するかを設定します。
- 説明:
デフォルトの設定では、音源位置のランダム化は無効になっています。
本パラメータは任意のタイミングで切り替えることができます。
uint randomPositionListMaxLength |
|
getset |
3D音源における位置のランダム化に関する座標リストの要素数の最大値を設定します。
- 説明:
デフォルトではリスト要素数の最大値が0になっています。
本パラメータはCriAtomSouceのAwakeが実行される前にしか変更できません。
音源の3Dリージョンの設定及び取得
- 注意:
- 3Dポジショニングが無効の場合、リージョンの設定は行えません。
音源のリスナーの設定及び取得
- 備考:
- リスナーが設定されていない場合は音源に最も近いリスナーが利用されます。
- 注意:
- 3Dポジショニングが無効の場合、リスナーの設定は行えません。
初期リージョンを設定します。
- 説明:
- Startが実行されるタイミングで適用するリージョンを設定します。
3Dポジショニング有効時にのみ適用されます。
空(null)の場合は適用されません。
初期リスナーを設定します。
- 説明:
- Startが実行されるタイミングで適用するリスナーを設定します。
3Dポジショニング有効時にのみ適用されます。
空(null)の場合は適用されません。
- 備考:
- リスナーが設定されていない場合は音源に最も近いリスナーが利用されます。
ループ再生の切り替え
- 引数
-
loop | ループスイッチ(True: ループモード、False: ループモード解除) |
- 説明:
- ループポイントを持たない波形データに対し、ループ再生のON/OFFを切り替えます。
デフォルトはループOFFです。
ループ再生をONにした場合は、音声終端まで再生しても再生は終了せず先頭に戻って再生を繰り返します。
- 注意:
- 本関数の設定は波形データに対して適用されます。
シーケンスデータに対して本関数を実行した場合、 シーケンスデータ内の個々の波形データがループ再生される形になります。
本関数による指定は、ループポイントを持たない波形データに対してのみ有効です。
ループポイントを持つ波形データを再生する場合、本関数の指定に関係なく、 波形データのループ位置に従ってループ再生が行われます。
本関数は内部的にシームレス連結再生機能を使用します。
そのため、シームレス連結再生に未対応のフォーマット(HCA-MX等)を使用した場合、 ループ位置にある程度の無音が入る形になります。
本パラメータが評価されるのは、CriAtomSource コンポーネントのステータスが停止状態で、 CriAtomSource::Play 関数を呼び出した場合です。
ボリュームを設定/取得します。
- 説明:
- 出力音声のボリューム(音量)を設定/取得します。
ボリューム値は音声データの振幅に対する倍率です(単位はデシベルではありません)。
例えば、1.0fを指定した場合、原音はそのままのボリュームで出力されます。
0.5fを指定した場合、原音波形の振幅を半分にしたデータと同じ音量(-6dB)で 音声が出力されます。
0.0fを指定した場合、音声はミュートされます(無音になります)。
ボリュームのデフォルト値は1.0fです。
- 備考:
- キュー再生時、データ側にボリュームが設定されている場合に本関数を呼び出すと、 データ側に設定されている値と本関数による設定値とを乗算した値が適用されます。
例えば、データ側のボリュームが0.8f、 CriAtomSource のボリュームが0.5fの場合、 実際に適用されるボリュームは0.4fになります。
ピッチを設定/取得します。
- 説明:
- 出力音声のピッチ(音の高さ)を設定/取得します。
ピッチはセント単位で指定します。
1セントは1オクターブの1/1200です。半音は100セントです。
例えば、100.0fを指定した場合、ピッチが半音上がります。-100.0fを指定した場合、ピッチが半音下がります。
ピッチのデフォルト値は0.0fです。
- 備考:
- キュー再生時、データ側にピッチが設定されている場合に本関数を呼び出すと、 データ側に設定されている値と本関数による設定値とを加算した値が適用されます。
例えば、データ側のピッチが-100.0f、 CriAtomSource のピッチが200.0fの場合、 実際に適用されるピッチは100.0fになります。
パンニング3D角度を設定/取得します。
- 説明:
- パンニング3D角度を設定/取得します。
角度は度単位で指定します。
前方を0度とし、右方向(時計回り)に180.0f、左方向(反時計回り)に-180.0fまで設定できます。
例えば、45.0fを指定した場合、右前方45度に定位します。-45.0fを指定した場合、左前方45度に定位します。
- 備考:
- キュー再生時、データ側にパンニング3D角度が設定されている場合に本関数を呼び出すと、 データ側に設定されている値と本関数による設定値とを加算した値が適用されます。
例えば、データ側のパンニング3D角度が15.0f、 CriAtomSource のパンニング3D角度が30.0fの場合、 実際に適用されるパンニング3D角度は45.0fになります。
実際に適用されるパンニング3D角度が180.0fを超える値になった場合、値を-360.0fして範囲内に納めます。
同様に、実際に適用されるボリューム値が-180.0f未満の値になった場合は、値を+360.0fして範囲内に納めます。
(+360.0f, -360.0fしても定位は変わらないため、実質的には-180.0f~180.0fの範囲を超えて設定可能です。)
パンニング3D距離を設定/取得します。
- 説明:
- パンニング3Dでインテリアパンニングを行う際の距離を設定/取得します。
距離は、リスナー位置を0.0f、スピーカーの配置されている円周上を1.0fとして、-1.0f~1.0fの範囲で指定します。
負値を指定すると、パンニング3D角度が180度反転し、逆方向に定位します。
- 備考:
- キュー再生時、データ側にパンニング3D距離が設定されている場合に本関数を呼び出すと、 データ側に設定されている値と本関数による設定値とを乗算した値が適用されます。
例えば、データ側のパンニング3D距離が0.8f、 CriAtomSource のパンニング3D距離が0.5fの場合、 実際に適用されるパンニング3D距離は0.4fになります。
実際に適用されるパンニング3D距離が1.0fを超える値になった場合、値は1.0fにクリップされます。
同様に、実際に適用されるパンニング3D距離が-1.0f未満の値になった場合も、値は-1.0fにクリップされます。
再生開始位置を設定/取得します。
- 説明:
- 再生を開始する位置を設定/取得します。 再生開始位置を設定すると、音声データを途中から再生することができます。
再生開始位置の指定はミリ秒単位で行います。例えば、 10000 を設定すると、 次に再生する音声データは 10 秒目の位置から再生されます。
- 備考:
- 音声データ途中からの再生は、音声データ先頭からの再生に比べ、発音開始の タイミングが遅くなります。
これは、一旦音声データのヘッダを解析後、指定位置にジャンプしてからデータを読み 直して再生を開始するためです。
- 注意:
- 再生開始位置を指定してシーケンスを再生した場合、指定位置よりも前に配置された 波形データは再生されません。
(シーケンス内の個々の波形が途中から再生されることはありません。)
再生時刻(ミリ秒単位)を取得します。
- 説明:
- 再生時刻が取得できている場合、本プロパティは 0 以上の値を示します。
再生時刻が取得できない場合(ボイスの取得に失敗した場合等)、本関数は負値を示します。
- 備考:
- 同一 CriAtomSource コンポーネントで複数の音声を再生した場合は、 "最後に"再生した音声の時刻を示します。
複数の音声に対して再生時刻をチェックする必要がある場合には、 再生する音声の数分だけ CriAtomSource コンポーネントを作成してください。
本プロパティが示す再生時刻は、「再生開始後からの経過時間」です。
ループ再生時や、シームレス連結再生時を行った場合でも、 再生位置に応じて時刻が巻き戻ることはありません。
CriAtomSource::Pause 関数でポーズをかけた場合、 再生時刻のカウントアップも停止します。
(ポーズを解除すれば再度カウントアップが再開されます。)
- 注意:
- 戻り値の型はlongですが、現状、32bit以上の精度はありません。
再生時刻を元に制御を行う場合、約24日で再生時刻が異常になる点に注意が必要です。
( 2147483647 ミリ秒を超えた時点で、再生時刻がオーバーフローし、負値になります。)
再生中の音声が発音数制御によって消去された場合、 再生時刻のカウントアップもその時点で停止します。
また、再生開始時点で発音数制御によりボイスが割り当てられなかった場合、 本関数は正しい時刻を返しません。
(負値が返ります。)
ファイル読み込みが間に合わない等の理由により、一時的に音声データの供給が途切れた場合でも、 再生時刻のカウントアップが途切れることはありません。
(データ供給停止により再生が停止した場合でも、時刻は進み続けます。)
そのため、本関数で取得した時刻を元に映像との同期を行った場合、 データ供給不足が発生する度に同期が大きくズレる可能性があります。
bool attenuationDistanceSetting |
|
getset |
距離減衰有効化設定を設定/取得します。
- 説明:
- 距離減衰による音量の変動を有効にするか無効にするかを設定/取得します。
デフォルトは有効です。
bool androidUseLowLatencyVoicePool |
|
getset |
低遅延再生ボイスプールから再生を行うかどうかを設定/取得します。
- 説明:
- Trueが設定されていると、低遅延再生ボイスプールを使って再生を開始します。
- 備考:
- 本フラグを有効にする場合は、CriWareInitializerの低遅延再生ボイスプール数を設定しておく必要があります。
このクラス詳解は次のファイルから抽出されました: