使用 DMO 媒体类型

编解码器 DSO 使用的输入和输出媒体类型是使用 DMO_MEDIA_TYPE 结构定义的。 此结构与 Windows Media Format SDK 中定义的 WM_MEDIA_TYPEMicrosoft DirectShow® 中定义的 AM_MEDIA_TYPE 相同。 根据应用程序,可以使用定义为这三种类型之一的变量。 可将指向其中一个媒体类型结构的指针强制转换为另一个。 例如:

    DMO_MEDIA_TYPE MediaType;
    WM_MEDIA_TYPE* pMedia = NULL;
    pMedia = (WM_MEDIA_TYPE*)&MediaType;

编解码器使用的格式类型通常仅限于 VIDEOINFOHEADERWAVEFORMATEX 结构描述的格式类型。 为方便起见,这些格式类型的常量包含在 wmcodecconst.h 头文件中。 常量名称分别WMCFORMAT_VideoInfo和WMCFORMAT_WaveFormatEx。 在某些情况下,音频编解码器可以与 WAVEFORMATEXTENSIBLE 结构一起使用,并且必须在其他情况下使用它。 但是, DMO_MEDIA_TYPE.formattype 设置为与 WAVEFORMATEX 的值相同。 有关使用 WAVEFORMATEXTENSIBLE 的详细信息,请参阅 使用High-Definition音频

注意

   必须在用于存储压缩数据的任何容器中包括用作编码器输出的格式类型结构。 解码器需要原始格式结构来解压缩内容。 除了结构的成员之外,压缩的 Windows 媒体音频和视频类型还需要附加格式信息,这些信息将追加到结构中。 有关详细信息,请参阅 使用音频处理视频

 

使用编解码器 DME