Package Details: mpd-sacd 0.25-8

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 DVD-A ISO playback.
Upstream URL: https://github.com/manisiutkin/MPD
Keywords: dsd dvda mpd sacd
Licenses: GPL-2.0-or-later
Conflicts: mpd
Provides: mpd
Submitter: melvinvermeeren
Maintainer: dewdude
Last Packager: dewdude
Votes: 8
Popularity: 0.000013
First Submitted: 2016-02-08 18:52 (UTC)
Last Updated: 2026-03-16 01:35 (UTC)

Required by (63)

Sources (4)

Pinned Comments

dewdude commented on 2026-03-16 02:31 (UTC)

We're up to -8 now. If you noticed you skipped a few releases; you're right. Here's what happened:

The fork source moved from sourceforge to github. We had a new dependency. I fixed additional dependencies to enable more features. I had to tweak the PKGBUILD due to repo change.

-5, -6, and -7 were non-functioning PKGBUILDS due to having missed declared paths. Additionally, -5 had a dependency for shine that I later removed.

Things enabled:

SidPlay & AdPlug

I had issues with these last year when I tried them because....my testing for dependencies didn't check AUR.

The only things remaining disabled from when I adopted this are: sndio, tremor, shine. sndio was still causing issues with ALSA last I tried. Tremor and Shine are floating-point decoders for Vorbis and MP3; which we really don't need.

dewdude commented on 2026-02-03 15:38 (UTC)

FYI,

This fork sees infrequent updates. I have not had to force a rebuild in several months. Please do not let a lack of activity indicate abandonment. I use this myself and notice within a day or two of big system updates if it breaks. Poke me at my email if you notice it breaks before I do and I'll get on it. Sometimes I'm lazy getting pacman to do it's thing.

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

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 .. 9 Next › Last »

Anjo448 commented on 2025-09-06 05:10 (UTC)

Is it possible to apply the selective_44k_resample patch to MPD-SACD? This is normally implemented to MPD for raspberry pi like the one used in moOde audio player.

dewdude commented on 2025-09-01 17:24 (UTC)

Updates to 0.25-2:

Some changes to libchroma caused it to no longer work under ffmpeg4.4 - the PKGBUILD has been updated to use newer ffmpeg as a result.

DVD-Audio support has been re-enabled. Why was it disabled? I don't know. I tested it on my machine.

dewdude commented on 2025-09-01 04:30 (UTC)

I finally got around to testing dvd-audio support and there's no reason I can see for it to be disabled. I'll be flipping it back on very soon.

dewdude commented on 2025-07-11 03:28 (UTC) (edited on 2025-07-11 14:17 (UTC) by dewdude)

PKGBUILD has been updated to build the new versions. I have also resolved a number of dependencies from the previous release. The systemd service has also been updated to use the config at /etc/mpd.conf.

Be sure to check mpd.conf file after install.

Package was tested and built on fresh vanilla Arch with just base-devel installed. Also tested on CachyOS.

brucehsieh commented on 2025-02-05 09:40 (UTC)

Max Kellermann released a new version v.0.23.17 on February 4, 2025.

Please refer to the following URL: https://sourceforge.net/p/sacddecoder/mpd/MPD/ci/master/tree/

brucehsieh commented on 2024-09-17 03:42 (UTC)

There is a patch for libfmt 11.0.2-1.

https://github.com/MusicPlayerDaemon/MPD/commit/1402869715e3efca87942d79c3173a6b21a6925d.patch

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

exploder-jimmy commented on 2022-09-03 19:25 (UTC) (edited on 2022-09-03 19:29 (UTC) by exploder-jimmy)

@brucehsieh Thanks!

brucehsieh commented on 2022-09-03 14:34 (UTC) (edited on 2022-09-03 14:37 (UTC) by brucehsieh)

Hi All! I made a dirty patch for libfmt 9.1.0-1.

diff '--exclude=.git' '--exclude=.github' --unified --recursive --text mpd.orig/src/client/Response.hxx mpd.new/src/client/Response.hxx
--- mpd.orig/src/client/Response.hxx    2022-09-03 21:56:06.655442911 +0800
+++ mpd.new/src/client/Response.hxx 2022-09-03 21:45:22.931746855 +0800
@@ -82,7 +82,10 @@

    template<typename S, typename... Args>
    bool Fmt(const S &format_str, Args&&... args) noexcept {
-#if FMT_VERSION >= 70000
+#if FMT_VERSION >= 90000
+       return VFmt(format_str,
+               fmt::make_format_args(args...));        
+#elif FMT_VERSION >= 70000
        return VFmt(fmt::to_string_view(format_str),
                fmt::make_args_checked<Args...>(format_str,
                                args...));
@@ -109,7 +112,10 @@
    template<typename S, typename... Args>
    void FmtError(enum ack code,
              const S &format_str, Args&&... args) noexcept {
-#if FMT_VERSION >= 70000
+#if FMT_VERSION >= 90000
+       return VFmtError(code, format_str,
+                fmt::make_format_args(args...));
+#elif FMT_VERSION >= 70000
        return VFmtError(code, fmt::to_string_view(format_str),
                 fmt::make_args_checked<Args...>(format_str,
                                 args...));
diff '--exclude=.git' '--exclude=.github' --unified --recursive --text mpd.orig/src/decoder/plugins/FfmpegDecoderPlugin.cxx mpd.new/src/decoder/plugins/FfmpegDecoderPlugin.cxx
--- mpd.orig/src/decoder/plugins/FfmpegDecoderPlugin.cxx    2022-09-03 21:56:06.665442916 +0800
+++ mpd.new/src/decoder/plugins/FfmpegDecoderPlugin.cxx 2022-09-03 21:44:59.871730693 +0800
@@ -637,6 +637,13 @@
                          AV_TIME_BASE_Q));

    const auto &codec_params = *stream.codecpar;
+   
+#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 25, 100)
+   const unsigned channels = codec_params.ch_layout.nb_channels;
+#else
+   const unsigned channels = codec_params.channels;
+#endif
+   
    try {
        handler.OnAudioFormat(CheckAudioFormat(codec_params.sample_rate,
                               ffmpeg_sample_format(AVSampleFormat(codec_params.format)),
diff '--exclude=.git' '--exclude=.github' --unified --recursive --text mpd.orig/src/decoder/plugins/FfmpegIo.cxx mpd.new/src/decoder/plugins/FfmpegIo.cxx
--- mpd.orig/src/decoder/plugins/FfmpegIo.cxx   2022-09-03 21:56:06.665442916 +0800
+++ mpd.new/src/decoder/plugins/FfmpegIo.cxx    2022-09-03 21:44:26.151706459 +0800
@@ -21,10 +21,14 @@
 #define __STDC_CONSTANT_MACROS

 #include "FfmpegIo.hxx"
-#include "libavutil/mem.h"
+/* #include "libavutil/mem.h" */
 #include "../DecoderAPI.hxx"
 #include "input/InputStream.hxx"

+extern "C" {
+#include <libavutil/mem.h>
+}
+
 AvioStream::~AvioStream()
 {
    if (io != nullptr) {
diff '--exclude=.git' '--exclude=.github' --unified --recursive --text mpd.orig/src/Log.hxx mpd.new/src/Log.hxx
--- mpd.orig/src/Log.hxx    2022-09-03 21:56:06.648776241 +0800
+++ mpd.new/src/Log.hxx 2022-09-03 21:43:52.231681297 +0800
@@ -45,7 +45,10 @@
 LogFmt(LogLevel level, const Domain &domain,
        const S &format_str, Args&&... args) noexcept
 {
-#if FMT_VERSION >= 70000
+#if FMT_VERSION >= 90000
+   return LogVFmt(level, domain, format_str,
+              fmt::make_format_args(args...));
+#elif FMT_VERSION >= 70000
    return LogVFmt(level, domain, fmt::to_string_view(format_str),
               fmt::make_args_checked<Args...>(format_str,
                               args...));

brucehsieh commented on 2022-04-17 13:58 (UTC)

New version, commit c831f983e834abf24e85dfec57e85f13ab7edccb, seems to work fine.