After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 691240 - frei0r-filter-opencvfacedetect: crash when adding filter to a clip in pitivi
frei0r-filter-opencvfacedetect: crash when adding filter to a clip in pitivi
Status: RESOLVED INCOMPLETE
Product: GStreamer
Classification: Platform
Component: dont know
0.10.36
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-01-06 18:50 UTC by Jean-François Fortin Tam
Modified: 2013-03-16 12:37 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jean-François Fortin Tam 2013-01-06 18:50:33 UTC
This is what happens with 0.10.x (not tested in 1.x due to the brokenness of it at the moment):


(gdb) set pagination 0
(gdb) run /usr/bin/pitivi 
Starting program: /usr/bin/python /usr/bin/pitivi
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
** Message: pygobject_register_sinkfunc is deprecated (GstObject)
[New Thread 0xb6427b40 (LWP 12967)]
[Thread 0xb6427b40 (LWP 12967) exited]
[New Thread 0xb6427b40 (LWP 12968)]
[Thread 0xb6427b40 (LWP 12968) exited]
Detaching after fork from child process 12969.
/usr/share/pitivi/python/pitivi/application.py:255: Warning: g_object_set_qdata: assertion `G_IS_OBJECT (object)' failed
  self.mainloop.run()
[New Thread 0xb6427b40 (LWP 12971)]
/usr/share/pitivi/python/pitivi/ui/filechooserpreview.py:72: Warning: g_object_set_qdata: assertion `G_IS_OBJECT (object)' failed
  self.__videosink = self.player.get_property("video-sink")
[New Thread 0xaff3cb40 (LWP 12972)]
[New Thread 0xaf5ffb40 (LWP 12973)]
[New Thread 0xaebffb40 (LWP 12974)]
[New Thread 0xae3feb40 (LWP 12975)]
[New Thread 0xadbfdb40 (LWP 12976)]
[New Thread 0xad3fcb40 (LWP 12977)]
[Thread 0xb6427b40 (LWP 12971) exited]
[Thread 0xae3feb40 (LWP 12975) exited]
[Thread 0xaf5ffb40 (LWP 12973) exited]
[Thread 0xadbfdb40 (LWP 12976) exited]
[Thread 0xad3fcb40 (LWP 12977) exited]
[Thread 0xaebffb40 (LWP 12974) exited]
[New Thread 0xaebffb40 (LWP 12978)]
[New Thread 0xad3fcb40 (LWP 12979)]
[New Thread 0xadbfdb40 (LWP 12980)]
[New Thread 0xaf5ffb40 (LWP 12981)]
[New Thread 0xb6427b40 (LWP 12982)]
[New Thread 0xae3feb40 (LWP 12983)]
[Thread 0xb6427b40 (LWP 12982) exited]
[Thread 0xae3feb40 (LWP 12983) exited]
[Thread 0xaebffb40 (LWP 12978) exited]
[Thread 0xaf5ffb40 (LWP 12981) exited]
[Thread 0xaff3cb40 (LWP 12972) exited]
[Thread 0xad3fcb40 (LWP 12979) exited]
[New Thread 0xad3fcb40 (LWP 12985)]
[New Thread 0xaf5ffb40 (LWP 12986)]
[New Thread 0xaff3cb40 (LWP 12987)]
[New Thread 0xae3feb40 (LWP 12988)]
[New Thread 0xac2ffb40 (LWP 12989)]
[New Thread 0xabafeb40 (LWP 12990)]
[New Thread 0xa6509b40 (LWP 12996)]
[Thread 0xac2ffb40 (LWP 12989) exited]
[Thread 0xabafeb40 (LWP 12990) exited]
[Thread 0xae3feb40 (LWP 12988) exited]
[Thread 0xaff3cb40 (LWP 12987) exited]
[Thread 0xaf5ffb40 (LWP 12986) exited]
[Thread 0xad3fcb40 (LWP 12985) exited]
[Thread 0xadbfdb40 (LWP 12980) exited]
[New Thread 0xadbfdb40 (LWP 12998)]
[New Thread 0xad3fcb40 (LWP 12999)]
[New Thread 0xaf5ffb40 (LWP 13000)]
[New Thread 0xaff3cb40 (LWP 13001)]
[New Thread 0xac2ffb40 (LWP 13002)]
[New Thread 0xabafeb40 (LWP 13003)]
[New Thread 0xab2fdb40 (LWP 13004)]
[New Thread 0xaa9aab40 (LWP 13005)]
[New Thread 0xa9aadb40 (LWP 13006)]
[New Thread 0xa8f27b40 (LWP 13007)]
[New Thread 0xa8726b40 (LWP 13008)]
[New Thread 0xa7f25b40 (LWP 13009)]
[Thread 0xaff3cb40 (LWP 13001) exited]
[New Thread 0xaff3cb40 (LWP 13010)]
[Thread 0xa7f25b40 (LWP 13009) exited]

Program received signal SIGSEGV, Segmentation fault.

Thread 2915031872 (LWP 12998)

  • #0 __strlen_sse2_bsf
    at ../sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S line 51
  • #1 length
    at /usr/src/debug/gcc-4.7.2-20120921/obj-i686-redhat-linux/i686-redhat-linux/libstdc++-v3/include/bits/char_traits.h line 261
  • #3 set_param_value
    at ../include/frei0r.hpp line 152
  • #4 f0r_set_param_value
    at ../include/frei0r.hpp line 354
  • #5 gst_frei0r_instance_construct
    at gstfrei0r.c line 267
  • #6 gst_frei0r_filter_transform
    at gstfrei0rfilter.c line 100
  • #7 gst_base_transform_handle_buffer
    at gstbasetransform.c line 2520
  • #8 gst_base_transform_chain
    at gstbasetransform.c line 2639
  • #9 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #10 gst_pad_push_data
    at gstpad.c line 4506
  • #11 gst_pad_push
    at gstpad.c line 4730
  • #12 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #13 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #14 gst_pad_push_data
    at gstpad.c line 4506
  • #15 gst_pad_push
    at gstpad.c line 4730
  • #16 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #17 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #18 gst_pad_push_data
    at gstpad.c line 4506
  • #19 gst_pad_push
    at gstpad.c line 4730
  • #20 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #21 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #22 gst_pad_push_data
    at gstpad.c line 4506
  • #23 gst_pad_push
    at gstpad.c line 4730
  • #24 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #25 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #26 gst_pad_push_data
    at gstpad.c line 4506
  • #27 gst_pad_push
    at gstpad.c line 4730
  • #28 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #29 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #30 gst_pad_push_data
    at gstpad.c line 4506
  • #31 gst_pad_push
    at gstpad.c line 4730
  • #32 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #33 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #34 gst_pad_push_data
    at gstpad.c line 4506
  • #35 gst_pad_push
    at gstpad.c line 4730
  • #36 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #37 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #38 gst_pad_push_data
    at gstpad.c line 4506
  • #39 gst_pad_push
    at gstpad.c line 4730
  • #40 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #41 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #42 gst_pad_push_data
    at gstpad.c line 4506
  • #43 gst_pad_push
    at gstpad.c line 4730
  • #44 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #45 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #46 gst_pad_push_data
    at gstpad.c line 4506
  • #47 gst_pad_push
    at gstpad.c line 4730
  • #48 gst_queue_push_one
    at gstqueue.c line 1156
  • #49 gst_queue_loop
    at gstqueue.c line 1264
  • #50 gst_task_func
    at gsttask.c line 327
  • #51 default_func
    at gsttaskpool.c line 70
  • #52 g_thread_pool_thread_proxy
    at gthreadpool.c line 309
  • #53 g_thread_proxy
    at gthread.c line 801
  • #54 start_thread
    at pthread_create.c line 309
  • #55 clone
    at ../sysdeps/unix/sysv/linux/i386/clone.S line 133

Thread 24 (Thread 0xadbfdb40 (LWP 12998))

  • #0 __strlen_sse2_bsf
    at ../sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S line 51
  • #1 length
    at /usr/src/debug/gcc-4.7.2-20120921/obj-i686-redhat-linux/i686-redhat-linux/libstdc++-v3/include/bits/char_traits.h line 261
  • #3 set_param_value
    at ../include/frei0r.hpp line 152
  • #4 f0r_set_param_value
    at ../include/frei0r.hpp line 354
  • #5 gst_frei0r_instance_construct
    at gstfrei0r.c line 267
  • #6 gst_frei0r_filter_transform
    at gstfrei0rfilter.c line 100
  • #7 gst_base_transform_handle_buffer
    at gstbasetransform.c line 2520
  • #8 gst_base_transform_chain
    at gstbasetransform.c line 2639
  • #9 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #10 gst_pad_push_data
    at gstpad.c line 4506
  • #11 gst_pad_push
    at gstpad.c line 4730
  • #12 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #13 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #14 gst_pad_push_data
    at gstpad.c line 4506
  • #15 gst_pad_push
    at gstpad.c line 4730
  • #16 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #17 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #18 gst_pad_push_data
    at gstpad.c line 4506
  • #19 gst_pad_push
    at gstpad.c line 4730
  • #20 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #21 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #22 gst_pad_push_data
    at gstpad.c line 4506
  • #23 gst_pad_push
    at gstpad.c line 4730
  • #24 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #25 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #26 gst_pad_push_data
    at gstpad.c line 4506
  • #27 gst_pad_push
    at gstpad.c line 4730
  • #28 gst_proxy_pad_chain_default
    at gstghostpad.c line 261
  • #29 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #30 gst_pad_push_data
    at gstpad.c line 4506
  • #31 gst_pad_push
    at gstpad.c line 4730
  • #32 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #33 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #34 gst_pad_push_data
    at gstpad.c line 4506
  • #35 gst_pad_push
    at gstpad.c line 4730
  • #36 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #37 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #38 gst_pad_push_data
    at gstpad.c line 4506
  • #39 gst_pad_push
    at gstpad.c line 4730
  • #40 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #41 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #42 gst_pad_push_data
    at gstpad.c line 4506
  • #43 gst_pad_push
    at gstpad.c line 4730
  • #44 gst_base_transform_chain
    at gstbasetransform.c line 2674
  • #45 gst_pad_chain_data_unchecked
    at gstpad.c line 4271
  • #46 gst_pad_push_data
    at gstpad.c line 4506
  • #47 gst_pad_push
    at gstpad.c line 4730
  • #48 gst_queue_push_one
    at gstqueue.c line 1156
  • #49 gst_queue_loop
    at gstqueue.c line 1264
  • #50 gst_task_func
    at gsttask.c line 327
  • #51 default_func
    at gsttaskpool.c line 70
  • #52 g_thread_pool_thread_proxy
    at gthreadpool.c line 309
  • #53 g_thread_proxy
    at gthread.c line 801
  • #54 start_thread
    at pthread_create.c line 309
  • #55 clone
    at ../sysdeps/unix/sysv/linux/i386/clone.S line 133

Comment 1 Tim-Philipp Müller 2013-01-06 18:58:23 UTC
1) Please try to come up with a gst-launch pipeline to reproduce the issue

2) If you must file bugs against 0.10, please at least try with 0.10 from git.
Comment 2 Jean-François Fortin Tam 2013-01-11 18:16:31 UTC
As for using 0.10 git, the 0.10 series is not exactly the most changing thing out there these days, with 1.x around...

Full repro instructions with pitivi are:
- start pitivi 0.15 provided by your friendly distro
- drag a video file (ex: big buck bunny) to the media library, then to the timeline
- click the clip on the timeline
- in the effects library, drag "Opencvfacedetect" into the clip's effects (the "Clip properties" tab)

Boom, segfault. But then I understand it's not as easy as just executing gst launch and that's annoying, but that's the best I can provide for the time being. I'm sorry about not being able to provide better quality info, as gst-launch is black magic to me.
Comment 3 Tim-Philipp Müller 2013-03-16 12:37:22 UTC
Sorry, but no one is going to look into 0.10 bugs any more.

I have tried a static pipeline in 1.0 such as

gst-launch-1.0 v4l2src ! videoconvert ! frei0r-filter-opencvfacedetect ! videoconvert ! ximagesink sync=false

and I have also added the frei0r-filter-opencvfacedetect element to the gst-plugins-base/tests/icles/test-effect-switch test to see how it behaves with dynamically switching stuff, and didn't notice any problems there. Dynamic switching is something that has changed in 1.0.

So let's just close this for now, it's not really useful to keep around.

The stack trace also looks a bit wrong.

If it's still an issue with 1.0, someone will run into it sooner or later and file a new bug.