FineKernelToolKit: FK_CLI::fk_AudioOggBuffer クラス

FineKernelToolKit 4.3.0

読み取り中…
検索中…
一致する文字列を見つけられません
公開メンバ関数 | 全メンバ一覧
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_Model ^ | GetListenerModel (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_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を実装しています。