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


Предоставление форматов захвата и сжатия

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

В этой статье описывается, как возвращать форматы записи и сжатия с помощью метода IAMStreamConfig::GetStreamCaps . Этот метод может получить больше сведений о принятых типах мультимедиа, чем традиционный способ перечисления типов мультимедиа контакта, поэтому обычно его следует использовать. GetStreamCaps может возвращать сведения о типах форматов, разрешенных для аудио или видео. Кроме того, в этой статье представлен пример кода, демонстрирующий, как повторно подключить входной контакт фильтра преобразования, чтобы убедиться, что фильтр может создавать определенные выходные данные.

Метод GetStreamCaps возвращает массив пар типов мультимедиа и структур возможностей. Тип носителя является AM_MEDIA_TYPE структурой, а возможности представлены либо структурой AUDIO_STREAM_CONFIG_CAPS , либо структурой VIDEO_STREAM_CONFIG_CAPS . В первом разделе этой статьи представлен пример видео, а во втором — пример звука.

Эта статья включает следующие разделы:

Написание фильтров DirectShow