Класс CBaseVideoRenderer
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Базовый CBaseVideoRenderer
класс используется для создания фильтров отрисовщика видео.
Защищенные члены данных | Описание |
---|---|
m_bDrawLateFrames | Флаг, указывающий, что кадры не удаляются. Только отладка. Это разрушает синхронизацию. |
m_bSupplierHandlingQuality | Значение TRUE указывает, что обрабатываются сообщения контроля качества. Это позволяет отрисовщику подождать как можно позже, чтобы удалить сами кадры, и отобразить следующий кадр очень рано после того, как поставщик убрал кадр. |
m_cFramesDrawn | Общее количество кадров, которые были нарисованы с момента начала потоковой передачи. |
m_cFramesDropped | Совокупные кадры, которые были удалены в отрисовщике с момента запуска потоковой передачи. Кадры также можно удалять вышестоящий без их распознавания отрисовщиком. |
m_idDecision | MSR_id для кода принятия решения ShouldDrawSampleNow. |
m_idDuration | MSR_id для длительности кадра. |
m_idFrameAccuracy | Идентификатор журнала производительности для времени в миллисекундах, когда кадр был запаздыв. |
m_idFrameAvg | Идентификатор журнала производительности для среднего времени кадра, используемого для синхронизации и контроля качества. |
m_idQualityRate | MSR_id запрашиваемого уровня качества. |
m_idQualityTime | MSR_id для запрошенного времени качества. |
m_idRenderAvg | Идентификатор журнала производительности для среднего записанного времени отрисовщика. |
m_idSchLateTime | MSR_id, насколько поздно кадр был запланирован. |
m_idSendQuality | MSR_id время отправки уведомлений (неиспользуемых). |
m_idTimeStamp | MSR_id для метки времени кадра. |
m_idWait | Идентификатор журнала производительности для записанного времени ожидания (неиспользуемого). |
m_idWaitReal | Идентификатор журнала производительности для истинного времени ожидания. |
m_iSumFrameTime | Сумма времени межфрейма; требуется для страницы свойств. |
m_iSumSqAcc | Сумма квадратов точности (в миллисекундах), необходимых для страницы свойств. |
m_iSumSqFrameTime | Сумма квадратов времени межфрейма; требуется для страницы свойств. |
m_iTotAcc | Сумма точности (в миллисекундах), необходимых для страницы свойств. |
m_nNormal | Количество последовательных кадров, нарисованных в запланированное время. Отрицательное число указывает, что кадр только что был удален отрисовщиком. |
m_trDuration | Длительность последнего кадра (разница между временем начала и окончания). |
m_trEarliness | Как рано можно воспроизводить кадр, когда кадр только что был удален. |
m_trFrame | Последнее записанное время между кадрами. Используется в статистических измерениях. |
m_trFrameAvg | Среднее время межкадрового интервала в единицах времени отсчета. |
m_trLastDraw | Время предыдущего кадра. Используется для ссылок между кадрами времени. |
m_trLate | Время задержки текущего кадра. Используется в статистических измерениях. |
m_trRenderAvg | Время, за которое требуется кадрам для передачи битовых блоков. |
m_trRenderLast | Время передачи последнего битового блока кадра. |
m_trRenderStart | Время начала передачи битового блока. Используется для получения m_trRenderLast. |
m_trThrottle | Период вставки после отрисовки каждого кадра, как правило, используется при повышении качества звука и снижении производительности видео для этого. |
m_trWaitAvg | Среднее время ожидания в единицах ссылочного времени. |
m_tStreamingStart | Используется для статистики страниц свойств. Представляет время начала текущего процесса потоковой передачи или предыдущего процесса потоковой передачи, если он не является текущим. |
Функции элементов | Описание |
CBaseVideoRenderer | Создает объект CBaseVideoRenderer . |
GetStdDev | Оценивает стандартное отклонение в миллисекундах между сроком выполнения каждого кадра и фактическим отображением для статистики по кадру. |
PreparePerformanceData | Задает значения m_trLate и m_trFrame текущего кадра. |
ThrottleWait | Вставляет период ожидания после каждого кадра. |
Переопределимые функции-члены | Описание |
JoinFilterGraph | Отправляет событие EC_WINDOW_DESTROYED при удалении фильтра из графа фильтра. |
OnDirectRender | Собирает сведения о времени, которые управляют синхронизацией и контролем качества. |
OnRenderEnd | Записывает сведения для контроля качества и синхронизации. |
OnRenderStart | Записывает сведения для контроля качества и синхронизации. |
OnStartStreaming | Сбрасывает все время управления потоковой передачей. |
OnStopStreaming | Вызывается в конце потоковой передачи, чтобы исправить время отчета на странице свойств. |
OnWaitEnd | Вызывается по истечении времени ожидания. Только ведение журнала производительности. |
OnWaitStart | Обновления времени, потраченного на ожидание, а не на ожидание. Только ведение журнала производительности. |
RecordFrameLateness | Записывает, как своевременно выполнялась отрисовка, и собирает статистику для страницы свойств. |
ResetStreamingTimes | Сбрасывает все время управления потоковой передачей. |
ScheduleSample | Устанавливает ссылку на советы с часами. |
SendQuality | Отправляет сообщение о качестве, чтобы указать, что поставщик должен делать с качеством. |
ShouldDrawSampleNow | Определяет, следует ли отрисовывать видео в момент его окончания, не устанавливая ссылку таймера с часами. |
Методы IQualProp | Описание |
get_Avg FrameRate | Извлекает среднюю частоту кадров с момента начала потоковой передачи в кадрах за 100 секунд. |
get_AvgSyncOffset | Извлекает среднее время (в миллисекундах) между временем выполнения каждого кадра и фактической отрисовки. Это относится ко всем кадрам с момента начала потоковой передачи. |
get_DevSyncOffset | Извлекает стандартное отклонение времени в миллисекундах между временем выполнения каждого кадра и фактическим отображением для всех кадров с момента начала потоковой передачи. |
get_FramesDrawn | Извлекает количество кадров, нарисованных с момента начала потоковой передачи. |
get_FramesDroppedInRenderer | Извлекает количество кадров, удаленных отрисовщиком. Кадры также можно удалять вышестоящий. |
get_Jitter | Извлекает стандартное отклонение времени в миллисекундах между каждым кадром и следующим. Это относится ко всем кадрам с момента начала потоковой передачи. |
Методы IQualityControl | Описание |
Уведомление | Уведомляет получателя о запросе изменения качества. |
SetSink | Задает объект IQualityControl , который будет получать сообщения о качестве. |