FineKernelToolKit 2.9.0

- メインページ
- ネームスペース
- クラス
- ファイル

- 構成
- クラス階層
- 構成メンバ

全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義 ページ
Public メソッド | すべてのメンバ一覧
クラス fk_AudioStream

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

fk_AudioStreamに対する継承グラフ
[凡例]
fk_AudioStreamのコラボレーション図
[凡例]

## Public メソッド
| fk_AudioStream (void)
| コンストラクタ [詳細]
virtual | ~fk_AudioStream ()
| デストラクタ [詳細]
bool | open (const std::string &filename)
| オーディオデータ読み込み関数 [詳細]
bool | ready (void)
| 再生開始可能状態取得関数 [詳細]
bool | play (void)
| 再生関数 [詳細]
double | tell (void)
| 再生位置取得関数 [詳細]
void | seek (double time)
| 再生位置頭出し関数 [詳細]
void | stop (void)
| 停止関数 [詳細]
void | end (void)
| オーディオデータ解放関数 [詳細]
Public メソッド inherited from fk_AudioBase
| fk_AudioBase (void)
| コンストラクタ [詳細]
virtual | ~fk_AudioBase ()
| デストラクタ [詳細]
void | pause (void)
| ポーズ関数 [詳細]
void | setGain (double gain)
| 音量設定関数 [詳細]
double | getGain (void)
| 音量取得関数 [詳細]
void | setQueueSize (int size)
| キューバッファサイズ設定関数 [詳細]
int | getQueueSize (void)
| キューバッファサイズ取得関数 [詳細]
void | setLoopMode (bool mode)
| ループモード設定関数 [詳細]
bool | getLoopMode (void)
| ループモード取得関数 [詳細]
void | setLoopArea (double start, double end)
| ループエリア設定関数 [詳細]
double | getLoopStartTime (void)
| ループ開始点取得関数 [詳細]
double | getLoopEndTime (void)
| ループ終了点取得関数 [詳細]
void | setPosition (const fk_Vector &pos)
| サラウンド音源位置設定関数 [詳細]
fk_Vector | getPosition (void)
| サラウンド音源座標取得関数 [詳細]
void | setModel (fk_Model *model)
| サラウンド音源同期モデル設定関数1 [詳細]
void | setModel (fk_Model &model)
| サラウンド音源同期モデル設定関数2 [詳細]
fk_Model * | getModel (void)
| サラウンド音源同期モデル取得関数 [詳細]
void | setReferenceDist (double dist)
| サラウンド音源有効距離設定関数 [詳細]
double | getReferenceDist (void)
| サラウンド音源座有効距離取得関数 [詳細]
void | setSurroundMode (bool mode)
| サラウンド効果状態設定関数 [詳細]
bool | getSurroundMode (void)
| サラウンド効果状態取得関数 [詳細]

## Additional Inherited Members
Static Public メソッド inherited from fk_AudioBase
static bool | init (void)
| オーディオシステム初期化関数 [詳細]
static bool | getInit (void)
| オーディオシステム初期化状態取得関数 [詳細]
static void | sleep (double time)
| プロセススリープ関数 [詳細]
static void | setListenerModel (fk_Model *model)
| サラウンドリスナー同期モデル設定関数1 [詳細]
static void | setListenerModel (fk_Model &model)
| サラウンドリスナー同期モデル設定関数2 [詳細]
static fk_Model * | getListenerModel (void)
| サラウンドリスナーモデル取得関数 [詳細]

## 説明

オーディオストリームクラス

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

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

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

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

参照
  fk_AudioBase, fk_AudioOggBuffer, fk_AudioWavBuffer

## コンストラクタとデストラクタ

fk_AudioStream::fk_AudioStream | ( | void |  | ) |

コンストラクタ

virtual fk_AudioStream::~fk_AudioStream | ( |  | ) |
| virtual

デストラクタ

## 関数

bool fk_AudioStream::open | ( | const std::string & | filename | ) |
| virtual

オーディオデータ読み込み関数

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

覚え書き
  サラウンド効果を有効とするためには、 音源はモノラルでなければなりません。

引数

  [in] | filename | ファイル名。

戻り値
  入力に成功すれば true を、 失敗すれば false を返します。

fk_AudioBaseを実装しています。

bool fk_AudioStream::ready | ( | void |  | ) |
| virtual

再生開始可能状態取得関数

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

覚え書き
  本関数は、通常の利用においてはユーザが使用する必要はありません。

戻り値
  再生可能状態であれば true を、 まだ再生の準備ができていない状態であれば false を返します。

fk_AudioBaseを実装しています。

bool fk_AudioStream::play | ( | void |  | ) |
| virtual

再生関数

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

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

fk_AudioBaseを実装しています。

double fk_AudioStream::tell | ( | void |  | ) |
| virtual

再生位置取得関数

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

戻り値
  現時点での再生位置。

参照
  seek()

fk_AudioBaseを実装しています。

void fk_AudioStream::seek | ( | double | time | ) |
| virtual

再生位置頭出し関数

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

引数

  [in] | time | 再生位置。

参照
  tell()

fk_AudioBaseを実装しています。

void fk_AudioStream::stop | ( | void |  | ) |
| virtual

停止関数

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

参照
  fk_AudioBase::pause()

fk_AudioBaseを実装しています。

void fk_AudioStream::end | ( | void |  | ) |
| virtual

オーディオデータ解放関数

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

参照
  open(), stop(), fk_AudioBase::pause()

fk_AudioBaseを実装しています。