FineKernelToolKit 4.2.13
読み取り中…
検索中…
一致する文字列を見つけられません
公開メンバ関数 | 全メンバ一覧
FK_CLI::fk_AudioOggBuffer クラス

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

#include <CLI/FK_CLI/include/AudioOggBuffer_CLI.h>

+ 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_VectorPosition [get, set]
 サラウンド音源位置プロパティ
 
fk_ModelModel [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_AudioOggBuffer()

FK_CLI::fk_AudioOggBuffer::fk_AudioOggBuffer ( )

コンストラクタ

◆ ~fk_AudioOggBuffer()

FK_CLI::fk_AudioOggBuffer::~fk_AudioOggBuffer ( )

デストラクタ

◆ !fk_AudioOggBuffer()

FK_CLI::fk_AudioOggBuffer::!fk_AudioOggBuffer ( )

ファイナライザ

関数詳解

◆ Open()

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

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

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

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

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

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

◆ Ready()

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

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

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

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

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

◆ Play()

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

再生メソッド

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

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

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

◆ Tell()

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

再生位置取得メソッド

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

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

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

◆ Seek()

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

再生位置頭出しメソッド

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

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

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

◆ Stop()

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

停止メソッド

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

参照
fk_AudioBase::Pause()

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

◆ End()

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

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

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

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

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