On 11/16/05, Smoof . <[EMAIL PROTECTED]> wrote:
> 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.
>

Most hardware only has one overlay so each widget will be fighting for
it.  only the one that has it at any given moment will actually
display the video; the rest will show the colorkey.

Alex

> Thanks for your help
>

_______________________________________________
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel

Reply via email to