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


Использование фильтра Smart Tee

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

Если фильтр записи имеет отдельные контакты для записи и предварительного просмотра, вы можете сделать запись из одного из них при предварительном просмотре из другого. Но если фильтр не имеет предварительного просмотра, вы можете сделать то же самое, включив фильтр Smart Tee в граф. Этот фильтр разделяет данные из закрепления записи на два одинаковых потока: один для записи и один для предварительного просмотра. Этот процесс представлен на схеме ниже.

Граф захвата с фильтром смарт-тройника

Метод ICaptureGraphBuilder2::RenderStream автоматически вставляет фильтр Smart Tee, если это необходимо. Однако если для построения графа используются методы IGraphBuilder , а не RenderStream, может потребоваться вставить фильтр Smart Tee.

Перед отрисовкой закреплений в фильтре захвата проверка, есть ли в фильтре контакт предварительного просмотра или закрепление видеопорта. Если это не так, и вы хотите предварительного просмотра, добавьте фильтр Smart Tee к графу и подключите его к закреплению в фильтре захвата.

Примечание

Пин-код видеопорта (VP) можно рассматривать как своего рода контакт предварительного просмотра, поэтому фильтру с контактом VP не требуется фильтр Smart Tee. Однако к контактам VP предъявляется ряд других особых требований. Дополнительные сведения см. в разделе Закрепления портов видео.

 

Расширенные разделы по сбору данных

Объединение захвата видео и предварительного просмотра

Работа с категориями закрепления