unreliable xvimagesink rendering to GTK+ elements

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

unreliable xvimagesink rendering to GTK+ elements

Daniel Drake-5
Hi,

I am attempting to create a pipeline which includes an xvimagesink,
where the output will be mapped onto a GTK+ element. Something like
the video player example here:
http://pygstdocs.berlios.de/pygst-tutorial/capabilities.html

But, this example (plus my own app) does not run reliably. Sometimes
it works, most of the time it doesn't. A whole assortment of errors
are possible, including:

python: xcb_io.c:140: dequeue_pending_request: Assertion `req ==
dpy->xcb->pending_requests' failed.
test.py: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
python: xcb_io.c:221: poll_for_event: Assertion `(((long)
(event_sequence) - (long) (dpy->request)) <= 0)' failed.

Gdk-ERROR **: The program 'test.py' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 195 error_code 3 request_code 2 minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)


Here is a test program which you can use to see this:
http://dev.laptop.org/~dsd/20110119/gst_xv_gtk.txt

It shows xvimagesink on top of a GtkDrawingArea for 2 seconds, then
exits. Run it in a loop to catch the errors:
# while python gst_xv_gtk.txt; do :; done

Interestingly, if I instead try to render on a GtkWindow, everything
works reliably. (see the commented out section of on_sync_message().

Am I doing something wrong in my code? Is this a bug? Can other people
reproduce it?

Thanks,
Daniel

------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand
malware threats, the impact they can have on your business, and how you
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: unreliable xvimagesink rendering to GTK+ elements

Tim-Philipp Müller-2
On Wed, 2011-01-19 at 16:21 +0000, Daniel Drake wrote:

Hi Daniel,

have you read through the docs at
http://www.gstreamer.net/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstxoverlay.html#gst-plugins-base-libs-gstxoverlay.description yet?

(Sure, it's C, but the same applies in pygtk really)

Cheers
 -Tim



------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand
malware threats, the impact they can have on your business, and how you
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: unreliable xvimagesink rendering to GTK+ elements

Daniel Drake-5
On 19 January 2011 18:39, Tim-Philipp Müller <[hidden email]> wrote:
> On Wed, 2011-01-19 at 16:21 +0000, Daniel Drake wrote:
>
> Hi Daniel,
>
> have you read through the docs at
> http://www.gstreamer.net/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstxoverlay.html#gst-plugins-base-libs-gstxoverlay.description yet?
>
> (Sure, it's C, but the same applies in pygtk really)

Thanks Tim & whoever wrote that page, thats exactly what I needed.
Makes perfect sense.

Daniel

------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand
malware threats, the impact they can have on your business, and how you
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel