Класс CRendererPosPassThru
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Класс CRendererPosPassThru
обрабатывает команды поиска для фильтров отрисовщика, передавая их вышестоящий следующему фильтру.
Этот класс является производным от класса CPosPassThru . Он добавляет поддержку кэширования меток времени из образцов по мере их поступления. Используйте этот класс так же, как класс CPosPassThru . Дополнительные сведения см. в документации по CPosPassThru .
Фильтр отрисовщика должен обновить CRendererPosPassThru
кэшированные метки времени объекта следующим образом:
- Для каждого примера, получаемого фильтром, вызовите метод CRendererPosPassThru::RegisterMediaTime .
- Когда фильтр останавливается или получает вызов EndFlush , вызовите метод CRendererPosPassThru::ResetMediaTime .
- Когда фильтр получает уведомление об окончании потока, вызовите метод CRendererPosPassThru::EOS .
Пример использования этого класса см. в исходном коде CBaseRenderer .
Открытые методы | Описание |
---|---|
CRendererPosPassThru | Метод конструктора. |
GetMediaTime | Извлекает метки времени в текущем примере. |
RegisterMediaTime | Кэширует метки времени из текущего примера. |
ResetMediaTime | Сбрасывает кэшированные метки времени до нуля. |
EOS | Обновления кэшированные метки времени после уведомления об окончании потока. |
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|