FS#29121 - [deadbeef] ape file support doesn't work (+segfault)

Attached to Project: Community Packages
Opened by Nikita Zvonarev (FuriousBean) - Monday, 26 March 2012, 12:28 GMT
Last edited by Lukas Fleischer (lfleischer) - Friday, 18 May 2012, 11:38 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Lukas Fleischer (lfleischer)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 4
Private No

Details

Description:
Deadbeef-0.5.2 doesn't want to play ape files.

Steps to solve:
Add yasm to make depencies in PKGBUILD, install yasm and build with ffap plugin.
This task depends upon

Closed by  Lukas Fleischer (lfleischer)
Friday, 18 May 2012, 11:38 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed in 0.5.4-2.
Comment by Alexander F. Rødseth (xyproto) - Tuesday, 27 March 2012, 06:55 GMT
I tried finding an .ape file to reproduce the problem, with no luck, then tried converting a .wav with audacity, but it didn't support APE.
Do you happen to have a short .ape file we can test with?
Comment by Ternia (Prickle) - Tuesday, 27 March 2012, 07:28 GMT
Here you are.
   1.ape (1.89 MiB)
Comment by Alexander F. Rødseth (xyproto) - Tuesday, 27 March 2012, 07:51 GMT
Thanks! Bug confirmed. When trying to open 1.ape from the GUI, nothing happens.

When trying to open 1.ape on the commandline ("deadbeaf 1.ape"), I get a segfault:

playlist load fail (/home/alexander/download/1.ape)!
Segmentation Fault
backtrace() returned 7 addresses
deadbeef() [0x403570]
/lib/libc.so.6(+0x349f0) [0x7fe2ad5dd9f0]
deadbeef() [0x407a70]
deadbeef() [0x403ac7]
deadbeef() [0x403146]
/lib/libc.so.6(__libc_start_main+0xed) [0x7fe2ad5ca38d]
deadbeef() [0x403479]
Comment by Alexey Yakovenko (waker) - Tuesday, 27 March 2012, 12:36 GMT
hi. i'm the deadbeef developer. our QA guy just tried to reproduce the segfault which you had, with the same conditions (ape plugin missing, trying to open ape file from cmdline), but segfault doesnt' happen. if you are able to repeat it -- could you make a GDB backtrace? thanks.
Comment by Alexander F. Rødseth (xyproto) - Tuesday, 27 March 2012, 15:04 GMT
Hi,

When compiling with "-O0 -fbuiltin -g" I don't get the segfault anymore, but these (unrelated?) errors:

loading plugin /usr/lib/deadbeef/wildmidi.so
dlopen error: /usr/lib/deadbeef/wildmidi.so: undefined symbol: get_inc
trying /usr/lib/deadbeef/wildmidi.fallback.so...
plugin not found or failed to load
checking GUI plugin: GTK2
found selected GUI plugin: GTK2
loading plugin /home/alexander/.local/lib/deadbeef/ddb_gui_GTK2.so
dlopen error: /home/alexander/.local/lib/deadbeef/ddb_gui_GTK2.so: cannot open shared object file: No such file or directory
trying /home/alexander/.local/lib/deadbeef/ddb_gui_GTK2.fallback.so...
loading plugin /usr/lib/deadbeef/ddb_gui_GTK2.so

Also, when recompiling and installing the original deadbeef package I'm no longer able to reproduce the problem.

My guess is that just recompiling the package in the repos (and enabling the ffap plugin while at it) should solve everything.
Comment by Alexey Yakovenko (waker) - Tuesday, 27 March 2012, 15:14 GMT
the crash doesn't seem to be caused by the lack of ape plugin. this is why i wanted to get the backtrace. it's unfortunate that you can't reproduce it.
"undefined symbol: get_inc" means wildmidi plugin won't work. looks like it's caused by -fbuiltin, i'll check that out. the latter GTK loading error is not a problem, and should be ignored. i'll try to fix this error message.
Comment by Alexander F. Rødseth (xyproto) - Wednesday, 28 March 2012, 21:52 GMT
Thanks for looking into it, it's nice to have upstream here. :)
Comment by Maxime Anvari (icetwy) - Sunday, 08 April 2012, 10:56 GMT
I'm running into the same error, though I don't have the segfault. DeaDBeeF 0.5.1 was able to run APE files, but 0.5.2 doesn't work properly with them. I've tried compiling from the git repository and the source tarball available on SF, but with both of them I have compiling errors, so I'm stuck with the official package that lacks APE support. The relevant part of my attached log:

INFO: from file /home/max/.config/deadbeef/playlists/1.dbpl
playlist load fail (/home/max/Downloads/1.ape)!


   log (4.4 KiB)
Comment by Lukas Fleischer (lfleischer) - Friday, 20 April 2012, 10:34 GMT
Alexey: Any news here? :)
Comment by gsc (xgdgsc) - Wednesday, 16 May 2012, 03:08 GMT
Still a problem with latest release. I'm running the static built version from the deadbeef website now and it's running perfectly. But I hope this bug be solved quickly.
Comment by Alexey Yakovenko (waker) - Wednesday, 16 May 2012, 07:25 GMT
Lukas, i fixed the wildmidi error and the dlopen error message, but the ape not working seems to be your fault, you should follow the original bug description which says "Add yasm to make depencies in PKGBUILD, install yasm and build with ffap plugin."
Comment by gsc (xgdgsc) - Thursday, 17 May 2012, 05:51 GMT
I can confirm simply adding 'yasm' to makedeps in PKGBUILD solved the ape problem.
Comment by Andrew S. Grigorev (eigrad) - Thursday, 17 May 2012, 20:23 GMT
Lukas, could you fix the lack of APE plugin? It saddens to rebuild deadbeef each time when it upgrading. ArchLinux is not Gentoo, don't make people cry, please.
Comment by Lukas Fleischer (lfleischer) - Friday, 18 May 2012, 06:07 GMT
Andrew: It's been two days since I got feedback. You should try to be a tad more patient -- even if this is Arch.

I rebuilt deadbeef 0.5.4 with "yasm" in makedepends. Can someone please test [1], [2]? I'll push the fix to [community] once I get a confirmation that it actually works.

[1] http://cryptocrack.de/tmp/deadbeef-0.5.4-2-i686.pkg.tar.xz
[2] http://cryptocrack.de/tmp/deadbeef-0.5.4-2-x86_64.pkg.tar.xz
Comment by Ternia (Prickle) - Friday, 18 May 2012, 11:25 GMT
Just tested [1], ape playback working all right.

Loading...