Camerabin - how to specify size of image for capture

Tim Müller tim at centricular.com
Tue Jan 28 16:26:05 PST 2014


On Tue, 2014-01-28 at 16:45 +0000, Ian Davidson wrote:

Hi Ian,

>    caps = gst_caps_from_string("width=800,height=600");

These are not valid caps, there is no media type.

> /*  caps = gst_caps_from_string("image-width=800,image-height=600");*/

Same here.

> /*  caps = gst_caps_from_string("video/x-raw, width=(int)800, 
> height=(int)600");*/

This looks better.

>    g_object_set (G_OBJECT (cambin), "image-capture-caps", caps, NULL);
>    gst_caps_unref (caps);
> 
> If I use the code as shown, I get the message
> GStreamer-CRITICAL **: gst_mini_object_unref: assertion `mini_object != 
> NULL' failed

This would indicate a refcount error somewhere, possibly in camerabin
(maybe for the caps you pass - does it also happen if you remove the
[correct] gst_caps_unref that's there?)

You can run your app with G_DEBUG=fatal_warnings gdb --args ./yourapp

and then it will abort at the critical and you can get a stack trace in
gdb to see where it comes from exactly.

 Cheers
  -Tim

-- 
Tim Müller, Centricular Ltd - http://www.centricular.com



More information about the gstreamer-devel mailing list