オーディオ サブタイプ
次の表は、オーディオ メディア サブタイプを示している。
GUID | 説明 |
MEDIASUBTYPE_PCM | PCM オーディオ。 |
MEDIASUBTYPE_PCMAudioObsolete | 使われていない。使用しないこと。 |
MEDIASUBTYPE_MPEG1Packet | MPEG1 オーディオ パケット。 |
MEDIASUBTYPE_MPEG1Payload | MPEG1 オーディオ ペイロード。 |
MEDIASUBTYPE_MPEG2_AUDIO | MPEG-2 オーディオ データ。 |
MEDIASUBTYPE_DVD_LPCM_AUDIO | DVD オーディオ データ。 |
MEDIASUBTYPE_MPEG2_AUDIO | MPEG-2 オーディオ データ。 |
MEDIASUBTYPE_DRM_Audio | WAVE_FORMAT_DRM に対応する。 |
MEDIASUBTYPE_IEEE_FLOAT | WAVE_FORMAT_IEEE_FLOAT に対応する。 |
MEDIASUBTYPE_DOLBY_AC3 | Dolby データ。 |
MEDIASUBTYPE_DOLBY_AC3_SPDIF | SPDIF の Dolby AC3 |
MEDIASUBTYPE_RAW_SPORT | MEDIASUBTYPE_DOLBY_AC3_SPDIF と同等。 |
MEDIASUBTYPE_SPDIF_TAG_241h | MEDIASUBTYPE_DOLBY_AC3_SPDIF と同等。 |
WAVEFORMATEX 構造体の wFormatTag フィールドは、オーディオ フォーマット タイプを指定する。一般的にフォーマット タイプは、FORMAT_WaveFormatEx である。メディア サンプルは、一般的に、WAVEFORMATEX 構造体の wBitsPerSample フィールドで指定されるサンプル全体である。この条件は、元がパケット化されたストリームである可能性があり、したがって、必ずしもサンプル/フレーム境界上にパッケージされていない MPEG オーディオ サンプルには当てはまらない。MPEG オーディオの場合、メディア サンプルのタイム スタンプは、フレームの最初のバイトがメディア サンプルに含まれている最初のフレームのタイム スタンプである。
それぞれの wFormatTag に対応するメディア サブタイプの定義を次に示す。
- メディア サブタイプの Data1 サブフィールドは、wFormatTag 値と同じ。
- Data 2 フィールドは 0。
- Data 3 フィールドは 0x0010。
- Data 4 フィールドは、0x80、0x00、0x00、0xAA、0x00、0x38、0x9B、0x71。
したがって、PCM オーディオのサブタイプ GUID (uuids.h 内で MEDIASUBTYPE_PCM として定義される) は、次のようになる。
{00000001-0000-0010-8000-00AA00389B71}
パディングされた AC3 を指定するには、wFormatTag および対応するサブタイプ MEDIASUBTYPE_DOLBY_AC3_SPDIF に 0x0092 を使う。値 0x240 および 0x241 もパディングされた AC3 の指定に使われてきたが、Microsoft は 0x0092 の使用を推奨している。
CreateAudioMediaType 関数を使って、WAVEFORMATEX 構造体から AM_MEDIA_TYPE 構造体を作成できる。
参照