DMO メディアの種類の操作
コーデック DNO によって使用される入出力メディアの種類は、 DMO_MEDIA_TYPE 構造を使用して定義されます。 この構造は、Windows Media Format SDK で定義されている WM_MEDIA_TYPEと、Microsoft DirectShow® で定義されている AM_MEDIA_TYPEの両方と同じです。 アプリケーションによっては、これら 3 つの型のいずれかとして定義された変数を使用できます。 いずれかのメディア型構造体へのポインターを別の形式としてキャストしても安全です。 次に例を示します。
DMO_MEDIA_TYPE MediaType;
WM_MEDIA_TYPE* pMedia = NULL;
pMedia = (WM_MEDIA_TYPE*)&MediaType;
コーデックで使用される形式の種類は、一般に VIDEOINFOHEADER および WAVEFORMATEX 構造体によって記述される形式に制限されます。 便宜上、これらの形式の種類の定数は wmcodecconst.h ヘッダー ファイルに含まれています。 定数名はそれぞれWMCFORMAT_VideoInfoされ、WMCFORMAT_WaveFormatExされます。 オーディオ コーデックは、状況によっては WAVEFORMATEXTENSIBLE 構造で動作し、他の環境で使用する必要があります。 ただし、 DMO_MEDIA_TYPE.formattype は WAVEFORMATEX の場合と同じ値に設定されます。 WAVEFORMATEXTENSIBLE の使用の詳細については、「High-Definition Audio の使用」を参照してください。
注意
圧縮データの格納に使用するコンテナーには、エンコーダー出力として使用される形式の型構造を含める必要があります。 デコーダーでは、コンテンツを展開するために元の形式構造が必要です。 圧縮された Windows Media Audio 型と Video 型には、構造体のメンバーに加えて、その構造に追加される追加の形式情報が必要です。 詳細については、「 オーディオの操作 」と「 ビデオの操作」を参照してください。
関連トピック