CBaseVideoRenderer (clase)
[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.
La CBaseVideoRenderer
clase base se usa para compilar filtros de representador de vídeo.
Miembros de datos protegidos | Descripción |
---|---|
m_bDrawLateFrames | Marca para indicar que no se van a quitar fotogramas. Solo depurar. Esto destruye la sincronización. |
m_bSupplierHandlingQuality | TRUE indica que se están controlando los mensajes de control de calidad. Esto permite que el representador sepa esperar hasta lo más tarde posible para quitar fotogramas y mostrar el siguiente fotograma muy pronto después de que el proveedor haya quitado un marco. |
m_cFramesDrawn | Número total de fotogramas que se han dibujado desde que se inició el streaming. |
m_cFramesDropped | Fotogramas acumulativos que se han quitado en el representador desde que se inició el streaming. También se pueden quitar fotogramas ascendentes sin que el representador los reconozca. |
m_idDecision | MSR_id para el código de decisión de ShouldDrawSampleNow. |
m_idDuration | MSR_id durante un fotograma. |
m_idFrameAccuracy | Identificador del registro de rendimiento durante el tiempo en milisegundos en los que el fotograma se ha retrasado. |
m_idFrameAvg | Identificador del registro de rendimiento para el tiempo medio de período que se usa para la sincronización y el control de calidad. |
m_idQualityRate | MSR_id para la tasa de calidad solicitada. |
m_idQualityTime | MSR_id para el tiempo de calidad solicitado. |
m_idRenderAvg | Identificador del registro de rendimiento del tiempo medio del representador registrado. |
m_idSchLateTime | MSR_id para saber hasta qué punto se programó el fotograma. |
m_idSendQuality | MSR_id para la sincronización de las notificaciones (sin usar). |
m_idTimeStamp | MSR_id para una marca de tiempo de período. |
m_idWait | Identificador del registro de rendimiento para el tiempo de espera registrado (sin usar). |
m_idWaitReal | Identificador del registro de rendimiento para el tiempo de espera verdadero. |
m_iSumFrameTime | Suma de los tiempos entre fotogramas; necesario para la página de propiedades. |
m_iSumSqAcc | Suma de los cuadrados de las precisiones (en milisegundos) necesarios para la página de propiedades. |
m_iSumSqFrameTime | Suma de los cuadrados de los tiempos entre fotogramas; necesario para la página de propiedades. |
m_iTotAcc | Suma de las precisiones (en milisegundos) necesarias para la página de propiedades. |
m_nNormal | Número de fotogramas consecutivos dibujados en su hora programada. Un número negativo indica que el representador acaba de quitar un marco. |
m_trDuration | Duración del último fotograma (diferencia entre las horas de inicio y finalización). |
m_trEarliness | Qué tan temprano se puede reproducir un fotograma cuando se acaba de quitar un fotograma. |
m_trFrame | Tiempo registrado más recientemente entre fotogramas. Se utiliza en mediciones estadísticas. |
m_trFrameAvg | Promedio de tiempo entre fotogramas en unidades de tiempo de referencia. |
m_trLastDraw | Hora del fotograma anterior. Se usa para las referencias de tiempo entre fotogramas. |
m_trLate | Cantidad de tiempo en que el marco actual se ha retrasado. Se utiliza en mediciones estadísticas. |
m_trRenderAvg | Tiempo que tardan los fotogramas en realizar la transferencia de bloques de bits. |
m_trRenderLast | Hora de la última transferencia de bloques de bits de fotograma. |
m_trRenderStart | Hora en que se inició la transferencia de bloques de bits. Se usa para obtener m_trRenderLast. |
m_trThrottle | Período para insertar después de representar cada fotograma, normalmente se usa cuando se ha aumentado la calidad del audio y se debe reducir el rendimiento del vídeo para permitir esto. |
m_trWaitAvg | Tiempo medio de espera en unidades de tiempo de referencia. |
m_tStreamingStart | Se usa para las estadísticas de la página de propiedades. Representa la hora de inicio del proceso de streaming actual o el proceso de streaming anterior si no se realiza actualmente el streaming. |
Funciones de miembro | Descripción |
CBaseVideoRenderer | Construye un objeto CBaseVideoRenderer . |
GetStdDev | Calcula la desviación estándar en milisegundos entre cuando cada fotograma se debe y cuando se representa realmente, para las estadísticas por fotograma. |
PreparePerformanceData | Establece los valores m_trLate y m_trFrame del marco actual. |
ThrottleWait | Inserta un período de espera después de cada fotograma. |
Funciones miembro reemplazables | Descripción |
JoinFilterGraph | Envía un evento EC_WINDOW_DESTROYED cuando se quita el filtro del gráfico de filtros. |
OnDirectRender | Recopila información de tiempo que controla la sincronización y el control de calidad. |
OnRenderEnd | Registra información sobre el control de calidad y la sincronización. |
OnRenderStart | Registra información sobre el control de calidad y la sincronización. |
OnStartStreaming | Restablece todas las veces que controla el streaming. |
OnStopStreaming | Se llama al final del streaming para corregir los tiempos del informe de página de propiedades. |
OnWaitEnd | Se llama cuando finaliza un tiempo de espera. Registro de rendimiento solo. |
OnWaitStart | Novedades tiempos dedicados a esperar y no esperar. Registro de rendimiento solo. |
RecordFrameLateness | Registra el tiempo en que se produjo la representación y recopila estadísticas de la página de propiedades. |
ResetStreamingTimes | Restablece todas las veces que controla el streaming. |
ScheduleSample | Configura un vínculo de aviso con el reloj. |
SendQuality | Envía un mensaje de calidad para indicar lo que el proveedor debe hacer sobre la calidad. |
ShouldDrawSampleNow | Determina si se debe dibujar el vídeo cuando sea debido, sin establecer un vínculo de aviso del temporizador con el reloj. |
Métodos IQualProp | Descripción |
get_Avg FrameRate | Recupera la velocidad media de fotogramas desde que se inició el streaming en fotogramas por 100 segundos. |
get_AvgSyncOffset | Recupera el promedio del tiempo en milisegundos entre el momento en que se debió cada fotograma y cuándo se representa realmente. Esto se aplica a todos los fotogramas desde que se inició el streaming. |
get_DevSyncOffset | Recupera la desviación estándar del tiempo en milisegundos entre cuándo se debe cada fotograma y cuándo se representa realmente para todos los fotogramas desde que se inició el streaming. |
get_FramesDrawn | Recupera el número de fotogramas dibujados desde que se inició el streaming. |
get_FramesDroppedInRenderer | Recupera el número de fotogramas quitados por el representador. También se pueden quitar fotogramas ascendentes. |
get_Jitter | Recupera la desviación estándar del tiempo en milisegundos entre cada fotograma y el siguiente. Esto se aplica a todos los fotogramas desde que se inició el streaming. |
Métodos IQualityControl | Descripción |
Notificar | Notifica al destinatario que se solicita un cambio de calidad. |
SetSink | Establece el objeto IQualityControl que recibirá mensajes de calidad. |