Multiple Xv overlays cause blue flashing

"Smoof ." <[email protected]>
Newsgroups gmane.comp.xfree86.devel
Message-ID <[email protected]>
Hello,

I am writing an application that will display up to 9 independent video 
streams (each stream is 320 x 240).  I'm new to Xv and may not be using the 
correct terminology so please bear with me.  I have tried two approaches:

The first approach was to create one large overlay using XvShmCreateImage 
and tile in the video frames.  Once all frames are tiled in, use 
XvShmPutImage to send them to the X server.  This method works perfectly.  
However, my ultimate goal is to send each video stream to it's own GTK 
widget so I can have each video stream playing in a window that can be 
moved, be surrounded by buttons, minimized, etc...

I implemented this by creating a simple GTK app with three drawing areas 
(ultimately I will have 9) of 320x240 and used some GDK functions to 
determine the X window id's for the widgets.  I created a separate overlay 
(again using  XvShmCreateImage) for each window.  Then I call XvShmPutImage 
once for each window.  Finally I call XFlush so send the requests to the X 
server.  I tried using XSync but it seemed to interfere with the GTK event 
loop.

The problem with this second approach is that the overlays are flashing blue 
(the overlay color key from what I've read).  So I looking for advice on how 
to update multiple overlays at a rate of 24fps without any flashing.  Or if 
you don't think this is possible then please let me know and I'll just have 
to get by with my first implementation.

Thanks for your help
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.