I am working on an application and I have a problem that I just cannot find a solution to. The application is written in vC ++. What I need to do is display a YUV video feed with text on top of it.
Now it works correctly, drawing text in the OnPaint method, using GDI and video on the DirectDraw overlay. I need to get rid of the overlay because it causes a lot of problems. It will not work on some graphics cards, Vista, 7, etc.
I cannot find a way to complete the same thing in a more compatible way. I can draw a video using DirectDraw with a reverse buffer and just copy it to the primary buffer. The problem here is that the text drawn in GDI is blinking due to the number of video updates being updated. I would really like the code to not draw text, if possible, as it works well.
Is there a way to draw text directly in the DirectDraw buffer or in the memory buffer or something else and then delete it in the back buffer? Should I look at another method together? The two important OSs are XP and 7. If anyone has any ideas, just let me know and I'll check them out. Thanks.
windows-7 windows-xp gdi directshow directdraw
thecaptain0220
source share