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

オーディオストリームクラス [詳解]

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

公開メンバ関数

 fk_AudioStream ()
 コンストラクタ [詳解]
 
 ~fk_AudioStream ()
 デストラクタ [詳解]
 
 !fk_AudioStream ()
 ファイナライザ [詳解]
 
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 形式のファイルに格納された音声の、 ストリーミング再生機能を提供します。

このクラスでの再生は、再生時にファイルの一部分のみを読み込み、 再生が進む過程で逐次ファイルの読み込みを行います。 従って、巨大なファイルの入力であってもメモリの使用量を節約できます。 長尺でループするような、BGM などの音源に適しています。

一方、頻繁な停止と再生の繰り返し、 Seek() を頻繁に用いた再生位置の変更、 即応性のある再生には対応できません。 そのため効果音等には向いていません。 効果音を制御するような用途としては、 fk_AudioOggBuffer, fk_AudioWavBuffer が適しています。

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

参照
fk_AudioBase, fk_AudioOggBuffer, fk_AudioWavBuffer

構築子と解体子

FK_CLI::fk_AudioStream::fk_AudioStream ( )

コンストラクタ

FK_CLI::fk_AudioStream::~fk_AudioStream ( )

デストラクタ

FK_CLI::fk_AudioStream::!fk_AudioStream ( )

ファイナライザ

関数詳解

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

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

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

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

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

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

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

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

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

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

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

再生メソッド

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

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

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

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

再生位置取得メソッド

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

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

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

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

再生位置頭出しメソッド

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

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

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

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

停止メソッド

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

参照
fk_AudioBase::Pause()

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

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

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

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

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

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