Ich arbeite an einer Anwendung und ich habe ein Problem, für das ich einfach keine Lösung finden kann. Die Anwendung ist in VC++ geschrieben. Was ich tun muss, ist ein YUV-Video-Feed mit Text darüber anzuzeigen.Zeichnen von Video mit Text an der Spitze
Im Moment funktioniert es richtig, indem Sie den Text in der OnPaint-Methode mit GDI und das Video auf einem DirectDraw-Overlay zeichnen. Ich muss das Overlay loswerden, weil es zu vielen Problemen führt. Es funktioniert nicht auf einigen Grafikkarten, Vista, 7, etc.
Ich kann nicht einen Weg finden, die gleiche Sache in einer kompatiblen Weise abzuschließen. Ich kann das Video mit DirectDraw mit einem Back-Buffer zeichnen und es einfach in den primären Puffer kopieren. Das Problem hierbei ist, dass der Text, der in GDI gezeichnet wird, aufgrund der Anzahl der Wiederholungen des Videos blinkt. Ich würde wirklich gerne den Code behalten, um den Text intakt zu zeichnen, da es gut funktioniert.
Gibt es eine Möglichkeit, den Text direkt zu einem DirectDraw-Puffer oder Speicherpuffer oder etwas zu zeichnen und es dann in den Backbuffer zu blt? Sollte ich alle zusammen eine andere Methode betrachten? Die zwei wichtigen Betriebssysteme sind XP und 7. Wenn jemand irgendwelche Ideen hat, lass es mich wissen und ich werde sie ausprobieren. Vielen Dank.
+1 für die Frage – gyurisc