Поделиться через


Работа с типами мультимедиа DMO

Входные и выходные типы носителей, используемые кодеком DMOs, определяются с помощью структуры DMO_MEDIA_TYPE. Эта структура идентична как WM_MEDIA_TYPE, которая определена в пакете SDK для формата Windows Media и AM_MEDIA_TYPE, который определен в Microsoft DirectShow®. В зависимости от приложения можно использовать переменные, определенные как любой из этих трех типов. Безопасно приводить указатель с одной структуры типов мультимедиа на другую. Например:

    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 аудио.

Заметка

   Необходимо включить структуру типа формата, используемую в качестве выходных данных кодировщика в любом контейнере, который используется для хранения сжатых данных. Декодеры требуют исходную структуру формата, чтобы распаковать содержимое. Помимо элементов структуры сжатые типы аудио и видео Windows Media требуют дополнительных сведений о формате, которые добавляются в структуру. Дополнительные сведения см. в разделе Работа с аудио и работа с видео.

 

Работа с кодеками DMO