Opened 13 years ago

Closed 13 years ago

#28901 closed defect (duplicate)

gstreamer: segfault when playing mp3

Reported by: nick@… Owned by: rmstonecipher@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: Cc:
Port: orc gstreamer

Description (last modified by jmroot (Joshua Root))

MacPorts 1.9.2
Xcode: 3.2.5
Mac OS X 10.6.6, Intel

port -v installed | grep gst
  gst-ffmpeg @0.10.11_1 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-bad @0.10.21_0+no_x11 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-base @0.10.32_0+no_gnome_vfs+no_x11 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-gl @0.10.2_1 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-good @0.10.27_1 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-ugly @0.10.17_0 (active) platform='darwin 10' archs='x86_64'
  gstreamer @0.10.32_1 (active) platform='darwin 10' archs='x86_64'

Hi,

When I try gst-launch uri="file:///Users/me/music.mp3" I get Caught SIGSEGV accessing address 0x24f3e1e gdb thread apply all bt shows:


Thread 4 (process 74278):
#0  0x00007fff85f82fca in __semwait_signal ()
#1  0x00007fff85f82e59 in nanosleep ()
#2  0x0000000100375e85 in g_usleep ()
#3  0x000000010000575a in _print ()
#4  <signal handler called>
Cannot access memory at address 0x90

Thread 3 (process 74278):
#0  0x00007fff85f6116a in kevent ()
#1  0x00007fff85f6303d in _dispatch_mgr_invoke ()
#2  0x00007fff85f62d14 in _dispatch_queue_invoke ()
#3  0x00007fff85f6283e in _dispatch_worker_thread2 ()
#4  0x00007fff85f62168 in _pthread_wqthread ()
#5  0x00007fff85f62005 in start_wqthread ()

Thread 2 (process 74278):
#0  0x00007fff85f82fca in __semwait_signal ()
#1  0x00007fff85f86de1 in _pthread_cond_wait ()
#2  0x000000010121c6a8 in gst_queue_chain ()
#3  0x000000010004f09c in gst_pad_push ()
#4  0x000000010004f09c in gst_pad_push ()
#5  0x00000001005d4d67 in gst_stream_synchronizer_sink_chain ()
#6  0x000000010004f09c in gst_pad_push ()
#7  0x0000000101228426 in gst_tee_chain ()
#8  0x000000010004f09c in gst_pad_push ()
#9  0x000000010004f09c in gst_pad_push ()
#10 0x0000000101213cc1 in gst_selector_pad_chain ()
#11 0x000000010004f09c in gst_pad_push ()
#12 0x000000010004f09c in gst_pad_push ()
#13 0x000000010004f09c in gst_pad_push ()
#14 0x00000001014c212b in gst_mad_chain ()
#15 0x000000010004f09c in gst_pad_push ()
#16 0x00000001013b97ac in gst_base_parse_push_buffer ()
#17 0x00000001013beefb in gst_base_parse_handle_and_push_buffer ()
#18 0x00000001013c18df in gst_base_parse_loop ()
#19 0x0000000100078377 in gst_task_func ()
#20 0x0000000100375420 in g_thread_pool_thread_proxy ()
#21 0x000000010037388a in g_thread_create_proxy ()
#22 0x00007fff85f81536 in _pthread_start ()
#23 0x00007fff85f813e9 in thread_start ()

Thread 1 (process 74278):
#0  0x00007fff85f8be92 in select$DARWIN_EXTSN ()
#1  0x000000010035b632 in g_poll ()
#2  0x000000010034e36f in g_main_context_iterate ()
#3  0x000000010034e655 in g_main_loop_run ()
#4  0x0000000100020631 in gst_bus_poll ()
#5  0x000000010000592b in _print ()
#6  0x0000000100006cbe in _print ()
#7  0x0000000100005564 in _print ()

--- snip ---

I also tried the build.py from http://code.google.com/p/ossbuild/source/browse/trunk#trunk%2FMain%2FGStreamer%2FMacOSX%2FMacPorts But it did not seem to make any difference...

Any more information please do let me know

Thanks,

Nick

Change History (7)

comment:1 Changed 13 years ago by jmroot (Joshua Root)

Description: modified (diff)
Owner: changed from macports-tickets@… to rmstonecipher@…
Port: gstreamer added
Summary: gstreamer needs updatinggstreamer: segfault when playing mp3
Type: updatedefect

Please remember to preview and use WikiFormatting, fill in the Port field, and cc the maintainer.

comment:2 Changed 13 years ago by rmstonecipher@…

Nick,
This seems similar to #28766 but with a more accurate description and a more direct way to reproduce the error.
You seem much better-equipped to troubleshoot this problem than I am - I maintain gstreamer-related ports out of my interest in ensuring quod libet has a functional and up-to-date backend.
Where would you suggest we start looking for the source of this error?

Ryan Stonecipher

comment:3 Changed 13 years ago by nick@…

Good Morning Ryan,

I am new to the Mac and Mac port world. I would start by upgrading the gst-plugins-good to 0.10.28 - I would try this my self but I do not know how to build gstreamer on the Mac - when I run make I get all kind of errors :(

It is a very odd crash and does not give much information to point to what it could be causing it...

Cheers,

Nick

comment:4 Changed 13 years ago by promac@…

I can confirm this bug. Gstreamer does not play anything: mp3 or wav.

I have the latest versions installed:

  • xcode: Version 3.2.6 (1761)
  • Macports: 1.9.2
roma: $ port -v installed | grep gst
  gst-ffmpeg @0.10.11_1 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-bad @0.10.21_0 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-base @0.10.32_0 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-good @0.10.28_0 (active) platform='darwin 10' archs='x86_64'
  gst-plugins-ugly @0.10.17_0 (active) platform='darwin 10' archs='x86_64'
  gstreamer @0.10.32_2 (active) platform='darwin 10' archs='x86_64
roma: ~/temp$ gst-launch playbin uri=file:////Users/roma/temp/01%20-%20Bolero%20\(Tempo%20Di%20Bolero%20Moderato%20Assai\).wav
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Caught SIGSEGV accessing address 0x17b3218
#0  0x00007fff82a35e52 in select$DARWIN_EXTSN ()
#1  0x0000000100347622 in g_poll ()
#2  0x000000010033a36f in g_main_context_iterate ()
#3  0x000000010033a655 in g_main_loop_run ()
#4  0x00000001000185f1 in gst_bus_poll ()
#5  0x000000010000192b in find_highest_version ()
#6  0x0000000100002cbe in _print ()
#7  0x0000000100001564 in main ()
Spinning.  Please run 'gdb gst-launch 810' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
^\Quit

comment:5 Changed 13 years ago by mike@…

This problem seems to be due to an issue known upstream. Originally reported against GStreamer (https://bugzilla.gnome.org/show_bug.cgi?id=628415), it now looks like a problem with Orc (https://bugs.freedesktop.org/show_bug.cgi?id=33836).

The problem can be avoided by using the ORC_CODE environment variable, e.g., ORC_CODE=backup gst-launch playbin uri=...

Perhaps upgrading the MacPorts Orc package will fix this issue. Otherwise, we could compile the GStreamer packages without Orc support.

comment:6 Changed 13 years ago by rmstonecipher@…

Mike,
Thanks for the tip.
Orc was upgraded in r78126.
Quod Libet now plays music without segfaults.

Everyone,
Please upgrade orc then chime in if your gstreamer-based application(s) of choice still exhibit(s) the misbehavior described in this ticket.
I will close this ticket as fixed in roughly one week unless one or more of you give me reason to believe the issue remains unresolved.

Cheers,
Ryan Stonecipher

comment:7 Changed 13 years ago by jmroot (Joshua Root)

Port: orc added
Resolution: duplicate
Status: newclosed
Note: See TracTickets for help on using tickets.