que estoy tratando de mostrar el vídeo a 60 fps en una QPainter (en un OpenGLwidget)QPainter tasa de rendimiento de alta marco
Estoy teniendo un problema que a veces el dibujo toma demasiado tiempo y el próximo evento repinte sucede mientras QPainter está en use - que genera una advertencia y bloqueos aleatorios.
Un par de preguntas:
¿Hay un 'camino Qt' de enclavamiento eficientemente llama a volver a pintar, ya que presumiblemente QPainter sabe que se está utilizando - o sólo debo usar mi plataformas de apoyo mutex?
¿Existe alguna forma mejor de dibujar a altas velocidades de cuadro (que por supuesto también necesita estar bloqueado en VSync) que solo un temporizador que llama a repintado()?
¿Cuál es exactamente la instrucción a la que llama cuando se dispara el temporizador? O bien, si no llama nada por su cuenta, ¿cómo aplica los 60 fps? –
repintado(), luego sobrecargo paintEvent() para obtener mis datos de imagen y rellenarlos en un QImage que se procesa –
Bueno, podría crear QImages en un subproceso separado, por lo que el subproceso de pintura necesitará menos tiempo en cada paintEvent. – smerlin