FineKernelToolKit 4.2.13
|
オーディオ基底クラス [詳解]
#include <CLI/FK_CLI/include/AudioBase_CLI.h>
公開メンバ関数 | |
fk_AudioBase () | |
コンストラクタ | |
~fk_AudioBase () | |
デストラクタ | |
!fk_AudioBase () | |
ファイナライザ | |
再生制御メソッド | |
virtual bool | Open (String^ name) override |
オーディオデータ読み込みメソッド | |
virtual bool | Ready (void) override |
再生開始可能状態取得メソッド | |
virtual bool | Play (void) override |
再生メソッド | |
virtual double | Tell (void) override |
再生位置取得メソッド | |
virtual void | Seek (double time) override |
再生位置頭出しメソッド | |
virtual void | Stop (void) override |
停止メソッド | |
virtual void | End (void) override |
オーディオデータ解放メソッド | |
void | Pause (void) |
ポーズメソッド | |
ループ再生制御メソッド | |
void | SetLoopArea (double start, double end) |
ループエリア設定メソッド | |
double | GetLoopStartTime (void) |
ループ開始点取得メソッド | |
double | GetLoopEndTime (void) |
ループ終了点取得メソッド | |
静的公開メンバ関数 | |
システム全体初期化・制御メソッド | |
static bool | Init (void) |
オーディオシステム初期化メソッド | |
static bool | GetInit (void) |
オーディオシステム初期化状態取得メソッド | |
static void | Sleep (double time) |
プロセススリープメソッド | |
サラウンドリスナー制御メソッド | |
static void | SetListenerModel (fk_Model^ model) |
サラウンドリスナー同期モデル設定メソッド | |
static fk_Model ^ | GetListenerModel (void) |
サラウンドリスナーモデル取得メソッド | |
プロパティ | |
double | Gain [get, set] |
音量プロパティ | |
int | QueueSize [get, set] |
キューバッファサイズプロパティ | |
bool | LoopMode [get, set] |
ループモードプロパティ | |
fk_Vector^ | Position [get, set] |
サラウンド音源位置プロパティ | |
fk_Model^ | Model [get, set] |
サラウンド音源同期モデルプロパティ | |
double | Distance [get, set] |
サラウンド音源有効距離プロパティ | |
bool | SurroundMode [get, set] |
サラウンド効果状態プロパティ | |
オーディオ基底クラス
このクラスは、FK が提供するオーディオクラスの基底クラスとなっています。 オーディオ全般で共通して利用するクラスメソッドを実装しています。 FKでは、オーディオシステムとして OpenAL を採用しています。 (OpenAL は FK のインストール時に自動的にインストールされます。)
このクラスの派生クラスによるインスタンスは、 音声再生を制御するための基本的な機能となる再生、 停止、繰り返し再生、音量調整を制御できます。
加えて、サラウンド(立体音響)を利用することもできます。 サラウンド機能においては、 各音源自体の3次元空間での位置を fk_Model と同期を取ることで実現します。 そのため、FK の 3D プログラムと高い親和性を持ちます。 また、3Dグラフィックスにおける「カメラ」に相当するような、 自分自身を指す言葉を「リスナー」と呼びます。 リスナーも fk_Model と同期を取ることができます。
FK_CLI::fk_AudioBase::fk_AudioBase | ( | ) |
コンストラクタ
FK_CLI::fk_AudioBase::~fk_AudioBase | ( | ) |
デストラクタ
FK_CLI::fk_AudioBase::!fk_AudioBase | ( | ) |
ファイナライザ
|
pure virtual |
オーディオデータ読み込みメソッド
データを開くための仮想メソッドです。 具体的な仕様は各派生クラスの Open() を参照して下さい。
[in] | name | データ名称。 |
FK_CLI::fk_AudioOggBuffer, FK_CLI::fk_AudioStream, FK_CLI::fk_AudioWavBufferで実装されています。
|
pure virtual |
再生開始可能状態取得メソッド
データ入力やデバイスの初期化等の処理が終了し、 再生が可能な状態となっているかどうかを取得するメソッドです。
FK_CLI::fk_AudioOggBuffer, FK_CLI::fk_AudioStreamで実装されています。
|
pure virtual |
再生メソッド
実際に音声の再生を行うメソッドです。 本メソッドは、再生を行いたい状況においては1秒に数回以上の割合で、 連続して実行する必要があります。
FK_CLI::fk_AudioOggBuffer, FK_CLI::fk_AudioStreamで実装されています。
|
pure virtual |
再生位置取得メソッド
現在の再生位置を返します。単位は秒です。 このメソッドが返す値は再生時間ではなく、 音源での始端からの時間となります。
FK_CLI::fk_AudioOggBuffer, FK_CLI::fk_AudioStreamで実装されています。
|
pure virtual |
再生位置頭出しメソッド
現在の再生位置を変更します。単位は秒です。
[in] | time | 再生位置。 |
FK_CLI::fk_AudioOggBuffer, FK_CLI::fk_AudioStreamで実装されています。
|
pure virtual |
停止メソッド
音声の再生を停止し、再生位置も初期化します。 この後に Play() を実行した場合、 停止位置ではなく始端(または指定した箇所)から再生されます。 一時停止を行いたい場合は Pause() を利用して下さい。
FK_CLI::fk_AudioOggBuffer, FK_CLI::fk_AudioStreamで実装されています。
|
pure virtual |
void FK_CLI::fk_AudioBase::Pause | ( | void | ) |
void FK_CLI::fk_AudioBase::SetLoopArea | ( | double | start, |
double | end | ||
) |
double FK_CLI::fk_AudioBase::GetLoopStartTime | ( | void | ) |
double FK_CLI::fk_AudioBase::GetLoopEndTime | ( | void | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
getset |
音量プロパティ
音量(減衰率)の参照や設定を行います。 0 で無音、1 で最大音量となります。 0 未満または 1 を超過する値が指定された場合は、 音量の変化を行いません。
|
getset |
キューバッファサイズプロパティ
キューバッファサイズの参照や設定を行います。 デフォルトは 64 です。
|
getset |
ループモードプロパティ
ループモードの参照や設定を行います。 ループモードとは、音源の最後まで再生が終了した際に、 最初から再び再生を開始するかどうかを設定するためのモードです。 具体的には、再生が音源の最後となった時点での play() の挙動が異なってきます。 ループモードが ON (true) の場合、 再生位置が最初の時点に戻り音源の再生を行います。 OFF の場合 play() は再生を終了し、OFF (false) となります。
|
getset |
サラウンド音源位置プロパティ
音源インスタンス 3 次元位置の参照や設定を行います。 Model プロパティによる同期モデルの指定が行われた場合は、 同期モデル位置が優先されます。 デフォルトは原点です。
|
getset |
サラウンド音源同期モデルプロパティ
音源インスタンスの3次元空間中での位置と同期するモデルの参照や指定を行います。 ここで指定したモデルが移動することにより、 音源もサラウンド効果の中で移動します。 同期を解除したい場合は null を代入します。
|
getset |
サラウンド音源有効距離プロパティ
3次元空間中で音源が届く距離の参照や指定を行います。 サラウンド効果においては、 音源はリスナーから離れるほど出力音量が小さくなり、 ここで指定する距離より大きい場合に聞こえなくなります。
|
getset |
サラウンド効果状態プロパティ
このインスタンスのサラウンド効果を制御します。 true の場合、サラウンド効果を有効とします。 false の場合は無効とします。