FineKernelToolKit  3.1.0
公開メンバ関数 | 全メンバ一覧
FK_CLI::fk_AudioOggBuffer クラス

Ogg Vorbis オーディオバッファクラス [詳解]

+ FK_CLI::fk_AudioOggBuffer の継承関係図
+ FK_CLI::fk_AudioOggBuffer 連携図

公開メンバ関数

 fk_AudioOggBuffer ()
 コンストラクタ [詳解]
 
 ~fk_AudioOggBuffer ()
 デストラクタ [詳解]
 
 !fk_AudioOggBuffer ()
 ファイナライザ [詳解]
 
virtual bool Open (String^ filename) 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
 オーディオデータ解放メソッド [詳解]
 
- 基底クラス FK_CLI::fk_AudioBase に属する継承公開メンバ関数
 fk_AudioBase ()
 コンストラクタ [詳解]
 
 ~fk_AudioBase ()
 デストラクタ [詳解]
 
 !fk_AudioBase ()
 ファイナライザ [詳解]
 
void Pause (void)
 ポーズメソッド [詳解]
 
void SetLoopArea (double start, double end)
 ループエリア設定メソッド [詳解]
 
double GetLoopStartTime (void)
 ループ開始点取得メソッド [詳解]
 
double GetLoopEndTime (void)
 ループ終了点取得メソッド [詳解]
 

その他の継承メンバ

- 基底クラス FK_CLI::fk_AudioBase に属する継承静的公開メンバ関数
static bool Init (void)
 オーディオシステム初期化メソッド [詳解]
 
static bool GetInit (void)
 オーディオシステム初期化状態取得メソッド [詳解]
 
static void Sleep (double time)
 プロセススリープメソッド [詳解]
 
static void SetListenerModel (fk_Model^ model)
 サラウンドリスナー同期モデル設定メソッド [詳解]
 
static fk_ModelGetListenerModel (void)
 サラウンドリスナーモデル取得メソッド [詳解]
 
- 基底クラス FK_CLI::fk_AudioBase に属する継承プロパティ
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]
 サラウンド効果状態プロパティ [詳解]
 

詳解

Ogg Vorbis オーディオバッファクラス

このクラスは、Ogg Vorbis 形式のファイルに格納された音声を、 オンメモリで再生する機能を提供します。

このクラスは、ファイルを読み込む時点で全ての音声データをメモリ上に展開します。 これにより、頻繁な再生と停止を繰り返したり、 Seek() を頻繁に用いて再生位置を変更するといった、 即応性の高い再生を可能としています。 短くて頻繁に再生と停止を繰り返すような、効果音などの音源に適しています。 また、サラウンドにも対応しています。

しかしながら、全てのデータをメモリ上に展開するという仕様上、 巨大な音声データを入力した場合にはかなりのメモリを使用してしまいます。 長尺で単調に再生するような BGM 再生などの用途には向いていません。 そのような用途を想定する場合は、 fk_AudioStream クラスを利用して下さい。

また、Wave 形式のファイルを再生したい場合は fk_AudioWavBuffer クラスを利用してください。 本クラスとほぼ同一の機能を持ちます。

なお、本クラスは fk_AudioBase クラスの派生クラスであり、 音量やループ再生の制御、サラウンド効果の使用といった機能の利用については fk_AudioBase のメソッドを用いて行います。

参照
fk_AudioBase, fk_AudioWavBuffer, fk_AudioStream

構築子と解体子

FK_CLI::fk_AudioOggBuffer::fk_AudioOggBuffer ( )

コンストラクタ

FK_CLI::fk_AudioOggBuffer::~fk_AudioOggBuffer ( )

デストラクタ

FK_CLI::fk_AudioOggBuffer::!fk_AudioOggBuffer ( )

ファイナライザ

関数詳解

virtual bool FK_CLI::fk_AudioOggBuffer::Open ( String^  filename)
overridevirtual

オーディオデータ読み込みメソッド

Ogg Vorbis 形式のファイルを指定することで、 音声データを読み込みます。

覚え書き
サラウンド効果を有効とするためには、 音源はモノラルでなければなりません。
引数
[in]filenameファイル名。
戻り値
入力に成功すれば true を、 失敗すれば false を返します。

FK_CLI::fk_AudioBaseを実装しています。

FK_CLI::fk_AudioWavBufferで再実装されています。

virtual bool FK_CLI::fk_AudioOggBuffer::Ready ( void  )
overridevirtual

再生開始可能状態取得メソッド

Open() によってファイルから音声を入力した後、 再生可能な状態になっているかどうかを取得します。

覚え書き
本メソッドは、通常の利用においてはユーザが使用する必要はありません。
戻り値
再生可能状態であれば true を、 まだ再生の準備ができていない状態であれば false を返します。

FK_CLI::fk_AudioBaseを実装しています。

virtual bool FK_CLI::fk_AudioOggBuffer::Play ( void  )
overridevirtual

再生メソッド

実際に音声の再生を行うメソッドです。 このメソッドは、再生を行いたい状況においては1秒に数回以上の割合で、 連続して実行する必要があります。 通常は、画面更新のためのメインループ中に一度ずつ実行します。

戻り値
音声再生が完了していない場合は true を、 完了している場合 false を返します。

FK_CLI::fk_AudioBaseを実装しています。

virtual double FK_CLI::fk_AudioOggBuffer::Tell ( void  )
overridevirtual

再生位置取得メソッド

現在の再生位置を返します。単位は秒です。 このメソッドが返す値は再生時間ではなく、 音源での始端からの時間となります。

戻り値
現時点での再生位置。
参照
Seek()

FK_CLI::fk_AudioBaseを実装しています。

virtual void FK_CLI::fk_AudioOggBuffer::Seek ( double  time)
overridevirtual

再生位置頭出しメソッド

現在の再生位置を変更します。単位は秒です。

引数
[in]time再生位置。
参照
Tell()

FK_CLI::fk_AudioBaseを実装しています。

virtual void FK_CLI::fk_AudioOggBuffer::Stop ( void  )
overridevirtual

停止メソッド

音声の再生を停止し、再生位置も初期化します。 この後に Play() を実行した場合、 停止位置ではなく始端(または指定した箇所)から再生されます。 一時停止を行いたい場合は fk_AudioBase::Pause() を利用して下さい。

参照
fk_AudioBase::Pause()

FK_CLI::fk_AudioBaseを実装しています。

virtual void FK_CLI::fk_AudioOggBuffer::End ( void  )
overridevirtual

オーディオデータ解放メソッド

Open() 等で確保したデータを解放します。

参照
Open(), Stop(), fk_AudioBase::Pause()

FK_CLI::fk_AudioBaseを実装しています。