MGL::Audio 各種定義
Contents
MGL::Audio各種定義#
概要#
MGL::Audioで定義されている、オーディオに関わる定義です。
型#
種類 |
名前 |
内容 |
---|---|---|
型 |
オーディオボイスを表すキー |
|
列挙型 |
初期化モード |
|
列挙型 |
サンプルタイプ |
|
列挙型 |
ループタイプ |
構造体#
種類 |
名前 |
内容 |
---|---|---|
構造体 |
データフォーマット |
定数#
名前 |
内容 |
---|---|
ボイスキーを生成する際のシード値 |
VoiceKey#
オーディオボイスを表すキー
宣言#
namespace MGL::Audio
{
enum class VoiceKey : uint32_t {};
}
説明#
オーディオボイスと関連付けるための一意のキーを表す型です。
この値はMGL::Audio::LoadVoiceでオーディオボイスを読み込む際に指定し、以降はそのボイスキーを用いてオーディオボイスにアクセスします。
値の生成にはMGL::Audio::MakeVoiceKeyが利用可能です。
関連#
InitializeMode#
初期化モード
宣言#
namespace MGL::Audio
{
enum class InitializeMode : uint8_t
{
None, //!< なし
Sample44k1ch, //!< 44KHz 1ch
Sample44k2ch, //!< 44KHz 2ch
Sample22k1ch, //!< 22KHz 1ch
Sample22k2ch, //!< 22KHz 2ch
SystemDefault, //!< システムのデフォルト
};
}
説明#
初期化時に指定するオーディオの初期化モードを表す値です。この値は特定のサンプリング周波数やチャンネル数でオーディオを扱いたい場合、もしくはオーディオを利用しない場合に使用します。
値の内容は次の通りです。
- None
オーディオを使用しません。このモードを選んだ場合、オーディオスレッドは起動せず、オーディオ再生に関わる全ての機能は利用できません。
- Sample44k1ch
サンプリング周波数44.1KHzのモノラル出力を使用します。
- Sample44k2ch
サンプリング周波数44.1KHzのステレオ出力を使用します。
- Sample22k1ch
サンプリング周波数22.05KHzのモノラル出力を使用します。
- Sample22k2ch
サンプリング周波数22.05KHzのステレオ出力を使用します。
- SystemDefault
システム標準のサンプリング周波数およびチャンネル数を使用します。
バージョン情報#
MGL 1.0.0より利用可能。
MGL 1.1.13から、型のサイズをデフォルトからuint8_t
に変更。
SampleType#
サンプルタイプ
宣言#
namespace MGL::Audio
{
enum class SampleType : uint8_t
{
SignedInt, //!< 符号付き整数
UnsignedInt, //!< 符号なし整数
Float, //!< 浮動小数点数
};
}
説明#
量子化された音量のフォーマットを表す値です。値の内容は次の通りです。
- SignedInt
符号付きの整数値で量子化されていることを表す値です。
- UnsignedInt
符号なし整数値で量子化されていることを表す値です。
- Float
浮動小数点数で量子化されていることを表す値です。
この型では値の形式のみを表し、サイズや格納方式などは規定しません。詳細はDataFormatを参照してください。
関連#
バージョン情報#
MGL 1.0.0から利用可能。
LoopType#
ループタイプ
宣言#
namespace MGL::Audio
{
enum class LoopType : uint8_t
{
Disable, //!< 無効(ループしない)
Enable, //!< 有効(ループする)
ResourceDefault //!< リソースが持つ情報に委ねる
};
}
説明#
ループ再生の動作を指定するための値です。値の内容は次の通りです。
- Disable
ループ再生を行いません。
- Enable
ループ再生を行います。
- ResourceDefault
ループ再生を行うか否かをリソースの設定に委ねます。
関連#
バージョン情報#
MGL 1.0.0から利用可能。
MGL 1.1.13より、型のサイズをデフォルトからuint8_t
に変更。
DataFormat#
データフォーマット
宣言#
namespace MGL::Audio
{
struct DataFormat
{
float samplesPerSec; //!< サンプリングレート
SampleType sampleType; //!< サンプルタイプ
size_t bitsPerSample; //!< 1サンプルあたりのビット数
size_t channelCount; //!< チャンネル数
bool isInterleaved; //!< インターリーブかどうかのフラグ
};
}
説明#
オーディオデータのフォーマットを表す構造体です。メンバ変数の内容は次の通りです。
- float samplesPerSec
サンプリングレートを表す値です。1秒間あたりのサンプル数を表しています。
- MGL::Audio::SampleType sampleType
量子化された音量のフォーマットを表す値です。
- size_t bitsPerSample
1サンプルあたりのビット数を表す値です。
- size_t channelCount
チャンネル数を表す値です。
- bool isInterleaved
サンプリングデータがインターリーブで格納されているかを表す値です。
バージョン情報#
MGL 1.0.0から利用可能。
kDefaultVoiceKeySeed#
ボイスキーを生成する際のシード値
宣言#
namespace MGL::Audio
{
constexpr uint32_t kDefaultVoiceKeySeed = MGL::Hash::kFNV1aDefaultValue32;
}
説明#
ボイスキーを生成する際にデフォルトで使用するシード値を表す値です。
MGL::Audio::MakeVoiceKeyの第2引数を省略した場合にこの値が使用されます。
関連#
バージョン情報#
MGL 1.0.0から利用可能。