Интерфейс IAMStreamControl (strmif.h)
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Интерфейс IAMStreamControl
управляет отдельными потоками в фильтре. Закрепление на некоторых фильтрах предоставляет этот интерфейс. Например, мультиплексный фильтр AVI поддерживает этот интерфейс на входных контактах, а фильтр аудиозахвата и фильтр видеозахвата WDM поддерживают его на выходных контактах.
Этот интерфейс позволяет приложению включать и отключать потоки в указанное время. Например, приложение может отключить звуковой поток, чтобы отключить звук во время предварительного просмотра видео. Приложения записи могут использовать этот интерфейс для указания точного времени начала и остановки записи, а также для управления потоками записи и предварительного просмотра независимо друг от друга.
Чтобы использовать этот интерфейс, вызовите метод IAMStreamControl::StartAt , чтобы указать, когда закрепление начнет доставлять данные, и метод IAMStreamControl::StopAt , чтобы указать, когда он прекратит доставку данных. Затем вызовите IMediaControl::Run в диспетчере графов фильтров, чтобы запустить граф фильтра. Все время относится к моменту начала работы графа.
При использовании этого интерфейса следует учитывать следующие ограничения.
- В графе фильтра должны быть ссылочные часы.
- Предварительный просмотр контактов на картах захвата с аппаратным наложением не поддерживает этот интерфейс.
- Если звук и видео записываются в файл AVI с чередованием, фильтр AVI Mux требует передачи данных в оба потока. Если остановить один поток, фильтр не сможет чередовать данные. Дополнительные сведения см. в разделе Интерфейс IConfigInterleaving.
Разработчики фильтров. Этот интерфейс реализуется в базовом классе CBaseStreamControl .
Наследование
Интерфейс IAMStreamControl наследуется от интерфейса IUnknown . IAMStreamControl также имеет следующие типы членов:
Методы
Интерфейс IAMStreamControl содержит следующие методы.
IAMStreamControl::GetInfo Метод GetInfo извлекает сведения о текущих параметрах управления потоком, включая время запуска и остановки. |
IAMStreamControl::StartAt Метод StartAt сообщает закреплению, когда следует начать доставку данных. |
IAMStreamControl::StopAt Метод StopAt сообщает контакту, когда следует прекратить доставку данных. |
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | strmif.h (включая Dshow.h) |