Compartir a través de


Sincronización de la VMR con la frecuencia de actualización del monitor

[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.

En escenarios poco frecuentes, es posible que desee sincronizar precisamente la representación de vídeo con la frecuencia de actualización del monitor, de modo que se presente exactamente un nuevo fotograma cada vez que se actualice el monitor. La manera más confiable de hacerlo es crear un moderador de asignador personalizado que usa una operación de volteo en lugar de una operación delit para escribir los bits de vídeo en la superficie principal. Se llama "Voltear" cada vez que se actualiza el monitor, por lo que si la secuencia de vídeo no contiene marcas de tiempo, VMR se representará lo más rápido posible en la superficie principal, pero la superficie bloqueará la secuencia hasta que se complete la operación Flip. Esto significa que, siempre que la CPU no se supere, el siguiente fotograma siempre estará esperando en la superficie principal cada vez que se actualice el monitor. Sin embargo, si se está ejecutando algún otro proceso intensivo de CPU, es posible que se muestre el subproceso de streaming de DirectShow para que no pueda entregar fotogramas de vídeo lo suficientemente rápido como para la superficie principal.

Modo de reproducción sin representación de VMR (presentadores de asignadores personalizados)