メディアタイプ関数

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

DirectShow 基本クラスには、 AM_MEDIA_TYPE 構造体を処理するためのヘルパー関数が用意されています。

AM_MEDIA_TYPE構造体には、別のメモリ ブロック (format ブロックと呼ばれます) へのポインター (pbFormat メンバー) が含まれています。 そのため、この構造を使用する場合は、メモリ リークを回避するためにメモリ割り当てに注意する必要があります。

次の関数はメモリを割り当てます。

  • CreateMediaType は、新しい AM_MEDIA_TYPE 構造体と書式ブロックを割り当てます。
  • CopyMediaType は既存の AM_MEDIA_TYPE 構造体にコピーしますが、書式ブロックを割り当てます。
  • CreateAudioMediaType は、既存の AM_MEDIA_TYPE 構造体を初期化し、必要に応じてフォーマット ブロックを割り当てます。

次の関数はメモリを解放します。

  • FreeMediaType はフォーマット ブロックを解放します。
  • DeleteMediaType は、書式ブロックを含む AM_MEDIA_TYPE 構造体を解放します。
関数 説明
CopyMediaType タスクによって割り当てられた AM_MEDIA_TYPE構造体を コピーします。
CreateAudioMediaType ウェーブ形式の構造体を指定して、メディアの種類の構造体を初期化します。
CreateMediaType 既存のAM_MEDIA_TYPE構造体から、AM_MEDIA_TYPE構造体を割り当てて初期化します。
DeleteMediaType タスクによって割り当てられた AM_MEDIA_TYPE構造体を 削除します。
FreeMediaType タスクによって割り当てられた AM_MEDIA_TYPE構造体を メモリから解放します。

 

要件

要件
ヘッダー
Mtype.h (Streams.h を含む)
ライブラリ
Strmbase.lib (製品版ビルド);
Strmbasd.lib (デバッグ ビルド)