Поток данных для разработчиков фильтров

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

В этом разделе подробно описывается, как данные перемещаются по графу фильтров. Основное внимание уделяется переносу локальной памяти с помощью интерфейса IMemInputPin или IAsyncReader . Он предназначен для разработчиков, которые создают собственные настраиваемые фильтры. Общие сведения о том, как Microsoft DirectShow обрабатывает поток данных, см. в разделе Поток данных в графе фильтров.

Большое количество данных перемещается через диаграмму фильтра. Он делится примерно на две категории: данные мультимедиа и данные управления. Как правило, данные мультимедиа перемещается ниже по течению, а управляющие — вышестоящий. Данные мультимедиа включают видеокадры, примеры звука, пакеты MPEG и т. д., составляющие поток, но также команды очистки, уведомления об окончании потока и другие данные, передаваемые с потоком. Управляющие данные не являются частью потока мультимедиа. Примерами данных контроля являются запросы на контроль качества и команды поиска.

Этот раздел содержит следующие статьи.

Управление качеством

Потоки и критические разделы

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