On Thu, Mar 28, 2013 at 10:21:30AM +0000, Jonathan Dowland wrote:
> UI ("No device found"). Interesting stuff. I'm going to try splicing some
> debug statements into the code to see at what point it reaches and whether
> that helps get any further.

I've poked around a little, attached is a backtrace taken when interrupting the
spinning process. It shows the last routine executed in cheese code as
cheese_camera_play. Poking around in the C, 

cheese_camera_play (CheeseCamera *camera)
{
  …
    gst_element_set_state (priv->camerabin, GST_STATE_PLAYING);

    ^^

That's as far as cheese gets. So, is this a gstreamer bug? (or
gstreamer0.10-plugins-bad)? Seems it uses 'camerabin', which has been
deprecated in favour of 'camerabin2' in gst 0.10, and dropped by 1.0.
Cheese moved to camerabin2 between 3.5.5 and 3.5.091.
#0  type_check_is_value_type_U (type=<optimized out>)
    at /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gobject/gtype.c:4098
#1  g_type_check_value (value=value@entry=0x1dddfb0)
    at /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gobject/gtype.c:4140
#2  0x00007ffff7769d9c in gst_value_init_and_copy (dest=0x1e33520, 
src=0x1dddfb0) at gstvalue.c:4007
#3  0x00007ffff776a03f in copy_garray_of_gstvalue (
    src=<error reading variable: Unhandled dwarf expression opcode 0xfa>, 
    src=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at 
gstvalue.c:230
#4  0x00007ffff776a130 in gst_value_copy_list_or_array (src_value=<optimized 
out>, 
    dest_value=0x7fffffffd8b0) at gstvalue.c:241
#5  0x00007ffff776d35f in gst_value_list_append_value 
(value=value@entry=0x7fffffffd970, 
    append_value=append_value@entry=0x7fffffffd8f0) at gstvalue.c:314
#6  0x00007ffff776da4b in gst_value_intersect_list (dest=0x7fffffffd970, 
value2=0x1a40460, 
    value1=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at 
gstvalue.c:2752
#7  0x00007ffff776d999 in gst_value_intersect_list (dest=0x7fffffffd9f0, 
value2=0x1a40460, 
    value1=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at 
gstvalue.c:2746
#8  0x00007ffff776d999 in gst_value_intersect_list (dest=0x7fffffffda70, 
value2=0x1d84658, 
    value1=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at 
gstvalue.c:2746
#9  0x00007ffff776d999 in gst_value_intersect_list (dest=0x7fffffffdaf0, 
value2=0x1d84658, 
    value1=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at 
gstvalue.c:2746
#10 0x00007ffff776d999 in gst_value_intersect_list (dest=0x7fffffffdb70, 
value2=0x1d84658, 
    value1=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at 
gstvalue.c:2746
#11 0x00007ffff776d999 in gst_value_intersect_list (dest=0x7fffffffdbf0, 
value2=0x1d84658, 
    value1=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at 
gstvalue.c:2746
#12 0x00007ffff7750a73 in gst_structure_intersect_field1 (id=3915, 
val1=0x1a3d4a8, data=0x7fffffffdc60)
    at gststructure.c:2981
#13 0x00007ffff7750fc1 in gst_structure_foreach (structure=0x1a5fb90, 
    func=0x7ffff7750a20 <gst_structure_intersect_field1>, 
user_data=0x7fffffffdc60) at gststructure.c:1097
#14 0x00007ffff7753c00 in gst_structure_intersect 
(struct1=struct1@entry=0x1a5fb90, struct2=0x1c88330)
    at gststructure.c:3030
#15 0x00007ffff770f3a4 in gst_caps_intersect_first (caps2=0x19d1e80, 
caps1=0x198ce40) at gstcaps.c:1423
#16 gst_caps_intersect_full (caps1=caps1@entry=0x198ce40, 
caps2=caps2@entry=0x19d1e80, 
    mode=mode@entry=GST_CAPS_INTERSECT_FIRST) at gstcaps.c:1454
#17 0x00007fffefff4c94 in gst_base_transform_getcaps (pad=0x19c9d90) at 
gstbasetransform.c:768
#18 0x00007ffff772cf96 in gst_pad_get_caps_unlocked (pad=pad@entry=0x19c9d90) 
at gstpad.c:2254
#19 0x00007ffff77305b5 in gst_pad_get_caps_reffed (pad=pad@entry=0x19c9d90) at 
gstpad.c:2338
#20 0x00007ffff776148b in gst_element_get_compatible_pad 
(element=element@entry=0x1b8e240, 
    pad=pad@entry=0x19c9d90, caps=caps@entry=0x0) at gstutils.c:1146
#21 0x00007ffff776216a in gst_element_link_pads_full (src=src@entry=0x1a16090, 
    srcpadname=srcpadname@entry=0x0, dest=dest@entry=0x1b8e240, 
destpadname=destpadname@entry=0x0, 
    flags=flags@entry=GST_PAD_LINK_CHECK_CAPS) at gstutils.c:1799
#22 0x00007fffe16020ea in gst_camerabin_try_add_element 
(bin=bin@entry=0x196e020, 
    new_elem=new_elem@entry=0x1b8e240) at camerabingeneral.c:99
#23 0x00007fffe160228f in gst_camerabin_add_element (bin=bin@entry=0x196e020, 
    new_elem=new_elem@entry=0x1b8e240) at camerabingeneral.c:56
#24 0x00007fffe160247d in gst_camerabin_create_and_add_element 
(bin=bin@entry=0x196e020, 
    elem_name=<optimized out>, elem_name@entry=0x7fffe16043fd "videoscale", 
    instance_name=instance_name@entry=0x7fffe16043f9 "src-videoscale") at 
camerabingeneral.c:146
#25 0x00007fffe15f67a0 in camerabin_create_src_elements (camera=0x196e020) at 
gstcamerabin.c:623
#26 camerabin_create_elements (camera=0x196e020) at gstcamerabin.c:779
#27 gst_camerabin_change_state (element=0x196e020, 
transition=GST_STATE_CHANGE_NULL_TO_READY)
    at gstcamerabin.c:3892
#28 0x00007ffff771a81c in gst_element_change_state 
(element=element@entry=0x196e020, 
    transition=transition@entry=GST_STATE_CHANGE_NULL_TO_READY) at 
gstelement.c:2761
#29 0x00007ffff771b168 in gst_element_set_state_func (element=0x196e020, 
state=GST_STATE_PLAYING)
    at gstelement.c:2717
#30 0x00007ffff7bd23f5 in cheese_camera_play (camera=0x1774d90) at 
libcheese/cheese-camera.c:725
#31 0x000000000041805e in cheese_main_window_setup_camera (self=<optimized 
out>, uri=<optimized out>)
    at src/cheese-window.c:5059
#32 0x0000000000418f64 in cheese_main_on_app_activate (self=0x13f67c0) at 
src/cheese-main.c:205
#33 0x00007ffff585a6e0 in g_closure_invoke (closure=0x646cd0, return_value=0x0, 
n_param_values=1, 
    param_values=0x7fffffffe3e0, invocation_hint=0x7fffffffe380)
    at /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gobject/gclosure.c:777
#34 0x00007ffff586b750 in signal_emit_unlocked_R (node=node@entry=0x1626670, 
detail=detail@entry=0, 
    instance=instance@entry=0x13f67c0, 
emission_return=emission_return@entry=0x0, 
    instance_and_params=instance_and_params@entry=0x7fffffffe3e0)
    at /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gobject/gsignal.c:3551
#35 0x00007ffff58736bc in g_signal_emit_valist (instance=0x13f67c0, 
signal_id=<optimized out>, detail=0, 
    var_args=var_args@entry=0x7fffffffe628)
    at /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gobject/gsignal.c:3300
#36 0x00007ffff5873852 in g_signal_emit (instance=instance@entry=0x13f67c0, 
signal_id=<optimized out>, 
    detail=detail@entry=0) at 
/tmp/buildd/glib2.0-2.33.12+really2.32.4/./gobject/gsignal.c:3356
#37 0x00007ffff5d53feb in g_application_activate 
(application=application@entry=0x13f67c0)
    at /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gio/gapplication.c:1295
#38 0x0000000000418c0c in cheese_main_real_local_command_line (base=0x13f67c0, 
arguments=0x7fffffffe780, 
    exit_status=0x7fffffffe77c) at src/cheese-main.c:277
#39 0x00007ffff5d54488 in g_application_run 
(application=application@entry=0x13f67c0, 
    argc=<optimized out>, argv=0x7fffffffe8d8)
    at /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gio/gapplication.c:1449
#40 0x0000000000419198 in _vala_main (args=0x7fffffffe8d8, args_length1=1) at 
src/cheese-main.c:469
#41 0x00007ffff4fa899d in __libc_start_main () from 
/lib/x86_64-linux-gnu/libc.so.6
#42 0x000000000040e131 in _start ()

Reply via email to