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 356132 - segfault transcoding wmv avi to ogg/theora with pitfdll
segfault transcoding wmv avi to ogg/theora with pitfdll
Status: RESOLVED INCOMPLETE
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
0.10.6
Other All
: Normal critical
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-09-15 14:45 UTC by Jp Calderone
Modified: 2006-10-26 18:15 UTC
See Also:
GNOME target: ---
GNOME version: 2.13/2.14


Attachments
media file used as input to pipeline (997.14 KB, application/x-bzip)
2006-09-15 14:49 UTC, Jp Calderone
Details

Description Jp Calderone 2006-09-15 14:45:41 UTC
Steps to reproduce:
1. Get attached avi file
2. Run this command: gst-launch oggmux name=mux filesrc location=small.avi ! avidemux name=demux demux. ! decodebin ! ffmpegcolorspace ! theoraenc ! mux. demux. ! mad ! audioconvert ! vorbisenc ! mux.
3. 


Stack trace:
  • #0 theora_encode_packetout
    from /usr/lib/libtheora.so.0
  • #1 gst_theora_enc_get_type
    from /usr/lib/gstreamer-0.10/libgsttheora.so
  • #2 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #3 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #4 gst_base_transform_set_passthrough
    from /usr/lib/libgstbase-0.10.so.0
  • #5 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #6 gst_proxy_pad_get_type
    from /usr/lib/libgstreamer-0.10.so.0
  • #7 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #8 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #9 gst_pad_event_default
    from /usr/lib/libgstreamer-0.10.so.0
  • #10 dshow_adec_register
    from /usr/lib/gstreamer-0.10/libpitfdll.so
  • #11 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #12 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #13 gst_pad_event_default
    from /usr/lib/libgstreamer-0.10.so.0
  • #14 gst_type_find_element_get_type
    from /usr/lib/gstreamer-0.10/libgstcoreelements.so
  • #15 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #16 gst_proxy_pad_get_type
    from /usr/lib/libgstreamer-0.10.so.0
  • #17 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #18 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #19 gst_avi_demux_get_type
    from /usr/lib/gstreamer-0.10/libgstavi.so
  • #20 gst_task_get_type
    from /usr/lib/libgstreamer-0.10.so.0
  • #21 g_thread_pool_free
    from /usr/lib/libglib-2.0.so.0
  • #22 g_static_private_free
    from /usr/lib/libglib-2.0.so.0
  • #23 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #24 clone
    from /lib/tls/i686/cmov/libc.so.6



Other information:
Output from the command is thus:

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
DMO dll supports VO Optimizations 0 1
DMO dll might use previous sample when requested
Total Unfree 60 bytes cnt 1 [(nil),0]
Failed creating a video decoder: type was not accepted on input pin 0
Segmentation fault (core dumped)
Comment 1 Jp Calderone 2006-09-15 14:49:57 UTC
Created attachment 72856 [details]
media file used as input to pipeline
Comment 2 Jp Calderone 2006-09-15 15:14:37 UTC
Stack traces from all threads:

(gdb) thr apply all bt

Thread 4 (process 2146)

  • #0 g_hash_table_lookup
    from /usr/lib/libglib-2.0.so.0
  • #1 g_quark_from_string
    from /usr/lib/libglib-2.0.so.0
  • #2 gst_structure_set_value
    from /usr/lib/libgstreamer-0.10.so.0
  • #3 gst_structure_get_string
    from /usr/lib/libgstreamer-0.10.so.0
  • #4 gst_message_parse_error
    from /usr/lib/libgstreamer-0.10.so.0
  • #5 _start

Thread 1 (process 2147)

  • #0 theora_encode_packetout
    from /usr/lib/libtheora.so.0
  • #1 gst_theora_enc_get_type
    from /usr/lib/gstreamer-0.10/libgsttheora.so
  • #2 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #3 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #4 gst_base_transform_set_passthrough
    from /usr/lib/libgstbase-0.10.so.0
  • #5 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #6 gst_proxy_pad_get_type
    from /usr/lib/libgstreamer-0.10.so.0
  • #7 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #8 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #9 gst_pad_event_default
    from /usr/lib/libgstreamer-0.10.so.0
  • #10 dshow_adec_register
    from /usr/lib/gstreamer-0.10/libpitfdll.so
  • #11 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #12 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #13 gst_pad_event_default
    from /usr/lib/libgstreamer-0.10.so.0
  • #14 gst_type_find_element_get_type
    from /usr/lib/gstreamer-0.10/libgstcoreelements.so
  • #15 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #16 gst_proxy_pad_get_type
    from /usr/lib/libgstreamer-0.10.so.0
  • #17 gst_pad_send_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #18 gst_pad_push_event
    from /usr/lib/libgstreamer-0.10.so.0
  • #19 gst_avi_demux_get_type
    from /usr/lib/gstreamer-0.10/libgstavi.so
  • #20 gst_task_get_type
    from /usr/lib/libgstreamer-0.10.so.0
  • #21 g_thread_pool_free
    from /usr/lib/libglib-2.0.so.0
  • #22 g_static_private_free
    from /usr/lib/libglib-2.0.so.0
  • #23 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #24 clone
    from /lib/tls/i686/cmov/libc.so.6

Comment 3 Tim-Philipp Müller 2006-09-21 14:26:48 UTC
Where does your pitfdll version come from? How up-to-date is it? Could you try with pitfdll CVS?

Any chance you could get us a stack trace with debugging symbols? (If you are running ubuntu, there are -dbg packages for gstreamer and -plugins).


Can't reproduce the problem either (with CVS of GStreamer).

Your pipeline just hangs for me (as is to be expected), but adding the required queues (and linking oggmux to a fakesink) doesn't change much (just makes oggmux hang, but that's sort of a known issue, see commented out testcase for oggmux in gst-plugins-base).


What happens if you do

 $ gst-launch-0.10 -v playbin uri=file:///path/to/foo.avi

? Does that work?
Comment 4 Jp Calderone 2006-09-21 18:43:28 UTC
pitfdll is the version packaged in Ubuntu's Edgy distribution.  Its version is 0.9.1.1+cvs20060515-1.  I will try with CVS at some point in the near future.

I have the debug versions installed already, so if the stack traces are missing information, I'm not sure how to make it show up.

exarkun@charm:~$ gst-launch-0.10 -v playbin uri=file:///home/exarkun/small.avi
Setting pipeline to PAUSED ...
/playbin0/decoder/typefind.src: caps = video/x-msvideo
Pipeline is PREROLLING ...
/playbin0/selector_audio_src1: active-pad = "sink0"
/playbin0/selector_video_src0: active-pad = "sink0"
Segmentation fault
exarkun@charm:~$ 
Comment 5 Tim-Philipp Müller 2006-10-12 11:42:59 UTC
Does this also crash?

 $ gst-launch-0.10 filesrc location=/home/exarcun/small.avi ! avidemux name=demux  demux.video_00 ! dmodec_wmvdmodv3 ! fakesink


Could you please install the various gstreamer -dbg packages in ubuntu and try to get a new stack trace with those? The above traces aren't really that useful.


FWIW, it works all fine on my edgy installation (on x86) with edgy packages (well, no crashes and the clip plays back fine in playbin at least).
Comment 6 Tim-Philipp Müller 2006-10-26 18:15:13 UTC
Closing this bug report as no further information has been provided. Please feel free to reopen this bug if you can provide the information asked for.
Thanks!