[gstreamer-bugs] [Bug 430522] New: audioresample seems to be causing segfaults

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Mon Apr 16 19:43:01 PDT 2007


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=430522

  GStreamer | gst-plugins-base | Ver: 0.10.12
           Summary: audioresample seems to be causing segfaults
           Product: GStreamer
           Version: 0.10.12
          Platform: Other
        OS/Version: All
            Status: UNCONFIRMED
          Severity: critical
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: szuk at telusplanet.net
         QAContact: gstreamer-bugs at lists.sourceforge.net
     GNOME version: Unspecified
   GNOME milestone: Unspecified


Steps to reproduce:
I have a pipeline that uses an alsasrc to read audio from the mic and pass it
through an audioconvert and audioresample element and then into an adder.  I
have a second bin that consists of filesrc, decodebin, audioconvert and
audioresample elements and that feeds into another sink of the adder.  The
adder src outputs to an alsasink.  I use this pipline to be able to play an
audio file at any time and have it mixed with the microphone data.  I will
attach a test program that repeatedly plays a file while mixing it with the
mic.  When I use any audio file (wav or vorbis tested), the program will
eventually cause a segfault that seems to always be related to
audioresample_buffer_queue_pull in audioresample.  

Stack trace:
(gdb) thread apply all bt

Thread 7 (process 8535):
#0  0x044fcda9 in __lll_mutex_lock_wait () from /lib/libpthread.so.0
#1  0x044f8cd0 in _L_mutex_lock_88 () from /lib/libpthread.so.0
#2  0x044f86cd in pthread_mutex_lock () from /lib/libpthread.so.0
#3  0x0448c596 in pthread_mutex_lock () from /lib/libc.so.6
#4  0x04167037 in g_static_rec_mutex_lock () from /usr/lib/libglib-2.0.so.0
#5  0x0407d0c8 in post_activate (pad=0x7f0e358, new_mode=GST_ACTIVATE_NONE) at
gstpad.c:597
#6  0x04086600 in gst_pad_activate_push (pad=0x448c570, active=0) at
gstpad.c:893
#7  0x04086d7d in gst_pad_set_active (pad=0x8b91c00, active=0) at gstpad.c:655
#8  0x0406e3cb in activate_pads (pad=0x8b91c00, ret=0xbeacf348,
active=0xbeacf3a8) at gstelement.c:2371
#9  0x0407a377 in gst_iterator_fold (it=0x5cf7650, func=0x406e3a0
<activate_pads>, ret=0xbeacf348, user_data=0xbeacf3a8) at gstiterator.c:503
#10 0x0406de44 in iterator_activate_fold_with_resync (iter=0x5cf7650,
func=0x406e3a0 <activate_pads>, user_data=0xbeacf3a8) at gstelement.c:2403
#11 0x0406df08 in gst_element_pads_activate (element=0x53f83a8, active=0) at
gstelement.c:2446
#12 0x0406e1e1 in gst_element_change_state_func (element=0x53f83a8,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstelement.c:2523
#13 0x0406aaba in gst_element_change_state (element=0x53f83a8,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstelement.c:2291
#14 0x0406da74 in gst_element_set_state_func (element=0x53f83a8,
state=GST_STATE_READY) at gstelement.c:2252
#15 0x04069c73 in gst_element_set_state (element=0x53f83a8,
state=GST_STATE_READY) at gstelement.c:2160
#16 0x0405e9a2 in gst_bin_change_state_func (element=0x8b390b8,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbin.c:1767
#17 0x0406aaba in gst_element_change_state (element=0x8b390b8,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstelement.c:2291
#18 0x0406aba3 in gst_element_change_state (element=0x8b390b8,
transition=<value optimized out>) at gstelement.c:2324
#19 0x0406da74 in gst_element_set_state_func (element=0x8b390b8,
state=GST_STATE_NULL) at gstelement.c:2252
#20 0x04069c73 in gst_element_set_state (element=0x8b390b8,
state=GST_STATE_NULL) at gstelement.c:2160
#21 0x08048eb7 in playFile (filename=0xbeacf8ed "/home/sz/music/dome.wav") at
../src/main.c:94
#22 0x08049635 in main (argc=2, argv=0xbeacf7a4) at ../src/main.c:210

Thread 6 (process 8537):
#0  0x044faa12 in pthread_cond_timedwait@@GLIBC_2.3.2 () from
/lib/libpthread.so.0
#1  0x0448c474 in pthread_cond_timedwait () from /lib/libc.so.6
#2  0x0411a1b3 in ?? () from /usr/lib/libgthread-2.0.so.0
#3  0x047cdc28 in ?? ()
#4  0x047cdbe0 in ?? ()
#5  0x05111208 in ?? ()
#6  0x04066781 in gst_clock_adjust_unlocked (clock=0x47cdc28,
internal=365093935514648816) at gstclock.c:750
#7  0x04096110 in gst_system_clock_id_wait_jitter_unlocked (clock=0x47ac0f0,
entry=0x47cb0a0, jitter=0x0, restart=0) at gstsystemclock.c:410
#8  0x04096842 in gst_system_clock_async_thread (clock=0x47ac0f0) at
gstsystemclock.c:278
#9  0x041668bf in ?? () from /usr/lib/libglib-2.0.so.0
#10 0x047ac0f0 in ?? ()
#11 0x047ce100 in ?? ()
#12 0x044f1000 in ?? ()
#13 0x000130f4 in ?? ()
#14 0x043ba180 in ?? () from /lib/libc.so.6
#15 0x04503ff4 in ?? () from /lib/libpthread.so.0
#16 0x0448c570 in ?? () from /lib/libc.so.6
#17 0x04503ff4 in ?? () from /lib/libpthread.so.0
#18 0x00000000 in ?? ()

Thread 5 (process 8538):
#0  0x044fa7a1 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x0448c42d in pthread_cond_wait () from /lib/libc.so.6
#2  0x040967e8 in gst_system_clock_async_thread (clock=0x47ac1d8) at
gstsystemclock.c:260
#3  0x041668bf in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x047ac1d8 in ?? ()
#5  0x053f9ea8 in ?? ()
#6  0x00000000 in ?? ()

Thread 4 (process 8539):
#0  0x04475b99 in poll () from /lib/libc.so.6
#1  0x0489a9f5 in snd_pcm_wait_nocheck () from /usr/lib/libasound.so.2
#2  0x0489abff in snd_pcm_wait () from /usr/lib/libasound.so.2
#3  0x0489ad39 in snd_pcm_read_areas () from /usr/lib/libasound.so.2
#4  0x048a6bcf in snd_pcm_mmap_readi () from /usr/lib/libasound.so.2
#5  0x04894b05 in snd_pcm_readi () from /usr/lib/libasound.so.2
#6  0x046b553f in gst_alsasrc_read (asrc=0x47c6000, data=0x5dff8f0,
length=7520) at gstalsasrc.c:766
#7  0x047173b5 in audioringbuffer_thread_func (buf=0x47ac3a8) at
gstaudiosrc.c:222
#8  0x041668bf in ?? () from /usr/lib/libglib-2.0.so.0
#9  0x047ac3a8 in ?? ()
#10 0x05da2020 in ?? ()
#11 0x00000000 in ?? ()

Thread 3 (process 8540):
#0  0x044fa7a1 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x0448c42d in pthread_cond_wait () from /lib/libc.so.6
#2  0x04845f2c in gst_collect_pads_chain (pad=0x47cbef0, buffer=0x5e08d00) at
gstcollectpads.c:1209
#3  0x04082239 in gst_pad_chain_unchecked (pad=0x47cbef0, buffer=0x5e08d00) at
gstpad.c:3459
#4  0x0408294b in gst_pad_push (pad=0x47cbe30, buffer=0x5e08d00) at
gstpad.c:3625
#5  0x048434b4 in gst_base_transform_chain (pad=0x47cbd70, buffer=0x5e08d00) at
gstbasetransform.c:1571
#6  0x04082239 in gst_pad_chain_unchecked (pad=0x47cbd70, buffer=0x5e08d00) at
gstpad.c:3459
#7  0x0408294b in gst_pad_push (pad=0x47cbb30, buffer=0x5e08d00) at
gstpad.c:3625
#8  0x048434b4 in gst_base_transform_chain (pad=0x47cba70, buffer=0x5e08c60) at
gstbasetransform.c:1571
#9  0x04082239 in gst_pad_chain_unchecked (pad=0x47cba70, buffer=0x5e08c60) at
gstpad.c:3459
#10 0x0408294b in gst_pad_push (pad=0x47cb9b0, buffer=0x5e08c60) at
gstpad.c:3625
#11 0x048434b4 in gst_base_transform_chain (pad=0x47cb8f0, buffer=0x5e08cb0) at
gstbasetransform.c:1571
#12 0x04082239 in gst_pad_chain_unchecked (pad=0x47cb8f0, buffer=0x5e08cb0) at
gstpad.c:3459
#13 0x0408294b in gst_pad_push (pad=0x47cb830, buffer=0x5e08cb0) at
gstpad.c:3625
#14 0x0483ea26 in gst_base_src_loop (pad=0x47cb830) at gstbasesrc.c:1601
#15 0x0409b7ff in gst_task_func (task=0x5da2460, tclass=0x5da46a0) at
gsttask.c:192
#16 0x04168277 in ?? () from /usr/lib/libglib-2.0.so.0
#17 0x05da2460 in ?? ()
#18 0x05da46a0 in ?? ()
#19 0x00000000 in ?? ()

Thread 2 (process 8541):
#0  0x04475b99 in poll () from /lib/libc.so.6
#1  0x0489a9f5 in snd_pcm_wait_nocheck () from /usr/lib/libasound.so.2
#2  0x0489abff in snd_pcm_wait () from /usr/lib/libasound.so.2
#3  0x0489cb49 in snd_pcm_write_areas () from /usr/lib/libasound.so.2
#4  0x048a6ccf in snd_pcm_mmap_writei () from /usr/lib/libasound.so.2
#5  0x04894da5 in snd_pcm_writei () from /usr/lib/libasound.so.2
#6  0x046b19b7 in gst_alsasink_write (asink=0x53fa000, data=0x5ecf9c8,
length=340) at gstalsasink.c:785
#7  0x04716425 in audioringbuffer_thread_func (buf=0x47ac2c0) at
gstaudiosink.c:226
#8  0x041668bf in ?? () from /usr/lib/libglib-2.0.so.0
#9  0x047ac2c0 in ?? ()
#10 0x05ecfca0 in ?? ()
#11 0x00000000 in ?? ()

Thread 1 (process 8545):
#0  audioresample_buffer_queue_pull (queue=0x45c3ad8, length=2) at buffer.c:173
#1  0x046fe74b in resample_scale_ref (r=0x8a05dd8) at resample_ref.c:113
#2  0x046fd548 in resample_get_output_data (r=0x8a05dd8, data=0x5cf8068,
size=372) at resample.c:244
#3  0x046fc312 in audioresample_do_output (audioresample=0x53f83a8,
outbuf=0x89f41b0) at gstaudioresample.c:512
#4  0x04842142 in gst_base_transform_handle_buffer (trans=0x53f83a8,
inbuf=0x89f4250, outbuf=0x9749f28) at gstbasetransform.c:1456
#5  0x0484346a in gst_base_transform_chain (pad=0x8b91c00, buffer=0x89f4250) at
gstbasetransform.c:1565
#6  0x04082239 in gst_pad_chain_unchecked (pad=0x8b91c00, buffer=0x89f4250) at
gstpad.c:3459
#7  0x0408294b in gst_pad_push (pad=0x8b91b40, buffer=0x89f4250) at
gstpad.c:3625
#8  0x048434b4 in gst_base_transform_chain (pad=0x8b91a80, buffer=0x89f4200) at
gstbasetransform.c:1571
#9  0x04082239 in gst_pad_chain_unchecked (pad=0x8b91a80, buffer=0x89f4200) at
gstpad.c:3459
#10 0x0408294b in gst_pad_push (pad=0x8bf1460, buffer=0x89f4200) at
gstpad.c:3625
#11 0x04073d1a in gst_proxy_pad_do_chain (pad=0x8b92cb0, buffer=0x89f4200) at
gstghostpad.c:191
#12 0x04082239 in gst_pad_chain_unchecked (pad=0x8b92cb0, buffer=0x89f4200) at
gstpad.c:3459
#13 0x0408294b in gst_pad_push (pad=0x8a13660, buffer=0x89f4200) at
gstpad.c:3625
#14 0x08010cbf in gst_wavparse_stream_data (wav=0x8bac158) at
gstwavparse.c:1511
#15 0x080119c2 in gst_wavparse_loop (pad=0x8a13060) at gstwavparse.c:1599
#16 0x0409b7ff in gst_task_func (task=0x5da2500, tclass=0x5da46a0) at
gsttask.c:192
#17 0x04168277 in ?? () from /usr/lib/libglib-2.0.so.0
#18 0x05da2500 in ?? ()
#19 0x05da46a0 in ?? ()
#20 0x00000000 in ?? ()


Other information:
Backtrace was generated from core file dumped while running under valgrind. 
Core files show when not running under valgrind are similar.


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=430522.




More information about the Gstreamer-bugs mailing list