It needs to be patched. For your reference.
https://github.com/MusicPlayerDaemon/MPD/commit/818b7e0641f25f55c46bf654d8edb7911c10d584
Git Clone URL: | https://aur.archlinux.org/mpd-sacd.git (read-only, click to copy) |
---|---|
Package Base: | mpd-sacd |
Description: | MPD with patches for SACD and DVDA ISO playback. (DVDA ISO playback temporary disabled) |
Upstream URL: | https://sourceforge.net/p/sacddecoder/mpd/MPD.git/ci/master/tree/ |
Keywords: | dsd dvda mpd sacd |
Licenses: | GPL-2.0-or-later |
Conflicts: | mpd |
Provides: | mpd |
Submitter: | melvinvermeeren |
Maintainer: | Archttila |
Last Packager: | Archttila |
Votes: | 7 |
Popularity: | 0.000004 |
First Submitted: | 2016-02-08 18:52 (UTC) |
Last Updated: | 2024-04-28 17:29 (UTC) |
It needs to be patched. For your reference.
https://github.com/MusicPlayerDaemon/MPD/commit/818b7e0641f25f55c46bf654d8edb7911c10d584
Hi
Great!!!. Now all works fine... And last but not least, I have been able to understand, where the fault came from...
Best regards and thank's a lot again
Edit: fixed upstream also in 0.21.5-1
src/lib/sacdiso/sacd_dsdiff.cpp:464
id3_byte_t* dsdid3 = (id3_byte_t*)&id3tags[_track_index].data[0];
With some odd/malformed tags, this may be NULL. the crash happens after when id3_tag_parse() is called with this NULL value.
id3_byte_t* dsdid3 = (id3_byte_t*)&id3tags[_track_index].data[0];
if (dsdid3 == nullptr) {
return;
}
I simply changed it to this and this time the database finished updating properly with 0.21.4-1, skipping the poor tag causing the issue. I will notify upstream about this bug tomorrow.
@mistic can you check if your error is the same if you run with mpd --no-daemon --stderr --verbose
?
Happy new year to you too. :)
I have updated the pkg to the latest upstream commit, which also has changed the build system. Perhaps the bug was fixed, I notice in the changelog of WIP 0.21.4:
For me however it discarded the database first and during scanning it crashed with the following: mpd: tag.c:640: id3_tag_parse: Assertion 'data' failed.
0.21.0-10 works fine for me.
You can try 0.20.12-1 with PKGBUILD rev 9f1893d43d96
and then change the git://git.musicpd.org/manisiutkin/mpd.git source to the new repo home. However you may also need an old version of libcdio, unless of course you disable the cdio-paranoia compilation option.
Let me know how it goes if possible, thanks.
Edit: After reverting to 0.21.0-10 it fails with the same error, appears something else is causing this. Will check later.
First, I wish you a happy new year... Sadly semms mpd-sacd-0.21.0-10 makes corrupted database, at least for me. Perhaps because this mpd version itself, not the manisiutkin patch.
It would be possible to access sources in order to compile an older mpd-sacd version? example: mpd-sacd-0.20.12-1, that works fine
Thank's a lot for your efforts and share with us
Took a while but I found the new home for the sources:
https://sourceforge.net/p/sacddecoder/mpd/MPD.git/ci/master/tree/
pkg updated
@delleceste I still had an up-to-date local repo, which can be found here:
https://git.mel.vin/mirror/mpd-sacd
I have been searching for the repo's new home but cannot find it. If it doesn't pop up within a few weeks I'll try to contact Maxim.
Hello everyone. Has anyone of you a copy of the sources of mpd-sacd? the git repo has been down for a week, and I deleted the sources...
Thanks in advance.
There are currently issues with libcdio 2.0.0 API change, it will fail to compile. If I find some time I'll see if I can fix it, otherwise do not update libcdio and related packages until upstream fixes it.
Pinned Comments
Archttila commented on 2024-04-28 17:34 (UTC) (edited on 2024-05-01 14:10 (UTC) by Archttila)
Please do not mark the package as out of date, because mpd-sacd is a fork of regular MPD