GNOME Bugzilla – Bug 454996
[xvimagesink] Deal with X server stride and size for images
Last modified: 2012-07-12 15:57:54 UTC
System: Ubuntu Feisty Device: Creative Live! Cam Optia Driver: linux-uvc (both packaged and svn) $ gst-launch-0.10 'v4l2src ! xvimagesink' Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... WARNING: from element /pipeline0/v4l2src0: The closest framerate from 15/2 is 10/1, on device '/dev/video0' Additional debug info: v4l2src_calls.c(334): gst_v4l2src_set_capture (): /pipeline0/v4l2src0: Updating framerate from 15/2 to 101 Setting pipeline to PLAYING ... New clock: GstSystemClock ERROR: from element /pipeline0/xvimagesink0: Failed to create output image buffer of 640x480 pixels Additional debug info: xvimagesink.c(2129): gst_xvimagesink_show_frame (): /pipeline0/xvimagesink0: XServer allocated buffer size did not match input buffer Execution ended after 492212000 ns. Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... FREEING pipeline ... Let me know what other information I should provide. I haven't tried with a newer version or CVS because I couldn't find a bug like this that claimed to be fixed.
Bug #377400 might be related. Could you do this: $ export GST_DEBUG_NO_COLOR=1 $ GST_DEBUG=*:5 gst-launch-0.10 v4l2src ! xvimagesink 2>dbg.log $ gzip dbg.log and attach the dbg.log.gz file to this bug report? (If you're already running gutsy, then preferably with that, but either should be fine).
Created attachment 96729 [details] Feisty debug log
So, I tried it with my gutsy machine, and it works now. For completeness, I got the debug output from feisty (still broken), in case someone wants to link this bug to whatever the problem was.
It's a case where the X server does not allocate a buffer of the size we expect. We don't currently deal with whatever stride and size the X server uses.
I think this handled fine now in git master (0.11/1.0).