Package Details: mpd-sacd 0.22.0-4

Git Clone URL: https://aur.archlinux.org/mpd-sacd.git (read-only)
Package Base: mpd-sacd
Description: MPD with patches for SACD and DVDA ISO playback.
Upstream URL: https://sourceforge.net/p/sacddecoder/mpd/MPD.git/ci/master/tree/
Keywords: dsd dvda mpd sacd
Licenses: GPL
Conflicts: mpd
Provides: mpd=0.22.0
Submitter: melvinvermeeren
Maintainer: melvinvermeeren
Last Packager: melvinvermeeren
Votes: 3
Popularity: 0.000000
First Submitted: 2016-02-08 18:52
Last Updated: 2019-06-11 20:12

Required by (28)

Sources (4)

Latest Comments

« First ‹ Previous 1 2 3 4 Next › Last »

arny91 commented on 2017-10-04 10:21

@melvinvermeeren Man, please ignore the previous comment. It was too late when i figured out that the windows version of mpd was built without smbclient support. Just installed and configured mpd on a debian machine, and now it works (everything but sacd iso, as i have only the standard version in the repos). Thanks for pointing out the way to use this.

arny91 commented on 2017-10-04 08:05

@melvinvermeeren: Ok, i tried again with two mpd daemons, this is the config on the machine where i have files (it's windows 10):

music_directory "G:/Musica"
log_file "C:/Users/Arnaldo/Desktop/mpd/mpd.log"
db_file "C:/Users/Arnaldo/Desktop/mpd/mpd.db"

and this is the new config on the RPI2

# See: /usr/share/doc/mpd/mpdconf.example

pid_file "/run/mpd/mpd.pid"
#db_file "/var/lib/mpd/mpd.db"
log_file "/var/log/mpd.log"
state_file "/var/lib/mpd/mpdstate"
playlist_directory "/var/lib/mpd/playlists"
#music_directory "/mnt/usb/Musica"
music_directory "smb://I7-2600/Musica"
bind_to_address "localhost"
bind_to_address "/run/mpd/mpd.sock"
port "6600"

neighbors {
plugin "smbclient"
}

database {
plugin "proxy"
host "I7-2600"
}

audio_output {
type "alsa"
name "Raspberry Onboard Audio"
device "hw:0,0"
format "384000:32:2"
mixer_device "default"
mixer_control "PCM"
mixer_index "0"
mixer_type "software"
}

This time, i can access the remote database, but when i try to play an audio file i get this

Oct 04 09:49 : client: [0] opened from [::1]:53900
Oct 04 09:49 : exception: Failed to decode smb://I7-2600/Musica/Elio E Le Storie Tese/Elio e le Storie Tese - 1989 - Elio Samaga Hukapan Kariyana Turu/06 - Elio e le Storie Tese - Carro.flac
Oct 04 09:49 : exception: nested: smbc_open() failed: File exists
Oct 04 09:49 : player: played "Elio E Le Storie Tese/Elio e le Storie Tese - 1989 - Elio Samaga Hukapan Kariyana Turu/06 - Elio e le Storie Tese - Carro.flac"

There shouldn't be any compatibility issue between the different operating systems, isn't it?

melvinvermeeren commented on 2017-10-03 20:23

@arny91 you need to run MPD on both machines to use this method.

The advantage is that the machine with the storage (not the RPI2) can index/refresh the music database locally where I/O is fast. Then the remote MPD client (RPI2) just queries that database instead of building its own with slow SMB I/O (especially bad with many small files).

This is probably intended for huge music libraries that are hundreds of gigabytes.

From the link you sent:
>One approach for optimization is running MPD on the file server, which not only exports raw files, but also provides access to a readily scanned database.

You could try it the "slow" way, where the RPI2 indexes/scans the library from the NFS mount and see how that is performance wise. The initial index may take I while but I believe I/O during actual use isn't that heavy anyway.

Let me know how stuff works out.

arny91 commented on 2017-10-03 14:00

@melvinvermeeren
This is the mpd configuration:

# See: /usr/share/doc/mpd/mpdconf.example

pid_file "/run/mpd/mpd.pid"
db_file "/var/lib/mpd/mpd.db"
log_file "/var/log/mpd.log"
state_file "/var/lib/mpd/mpdstate"
playlist_directory "/var/lib/mpd/playlists"
music_directory "smb://I7-2600/Musica"
bind_to_address "localhost"
bind_to_address "/run/mpd/mpd.sock"
port "6600"

neighbors {
plugin "smbclient"
}

#database {
#plugin "proxy"
#host "I7-2600"
#}

audio_output {
type "alsa"
name "Raspberry Onboard Audio"
device "hw:0,0"
format "384000:32:2"
mixer_device "default"
mixer_control "PCM"
mixer_index "0"
mixer_type "software"
}

>mpd configs of both machines?

mpd is running only on one machine, a RPI2, the database is local. I can mount the share by using mount.cifs, there's no password, but i can't access it when mounted from the userspace smbclient storage plugin. Unless you tell me that i need 2 servers, a master and a slave to do it (in this case i would also take advantage of the remote database, and of course, i'd definitely be wrong).

melvinvermeeren commented on 2017-10-03 12:20

@arny91 can you post the mpd configs of both machines?

Can I assume you already tested the samba connection with other tools?

arny91 commented on 2017-10-03 12:13

@melvinvermeeren Hi, just tried with the regular mpd, samba shares are not working anyway.
Here's the log:
Oct 03 14:05 : exception: Failed to access file: File exists
Oct 03 14:06 : client: [1] opened from [::1]:54960
Oct 03 14:06 : exception: Failed to open directory: File exists
Oct 03 14:06 : client: [1] closed

or, via telnet debugging:

[alarm@pi2 ~]$ telnet localhost 6600
Trying ::1...
Connected to localhost.
Escape character is '^]'.
OK MPD 0.20.0
listmounts
mount:
storage: smb://I7-2600/Plug
OK
listfiles
ACK [52@0] {} Failed to open directory: File exists

melvinvermeeren commented on 2017-10-03 11:16

@arny91 could you try with regular mpd and see if it works then?

The plugins do build correctly with this package when you list them with mpd --version. If it works with regular mpd but not with this there is probably a bug in the patches.

arny91 commented on 2017-10-02 20:11

Hi, is there something wrong with the storage plugins?
I was trying to mount a samba share by using the syntax as described here:

https://www.musicpd.org/doc/user/advanced_config.html#satellite

music_directory "smb://fileserver.local/mp3"

But mpd shows this message in the log:

Oct 02 21:59 : exception: Failed to access file: File exists




sagittarius commented on 2017-06-19 12:28

Now default PKGBUILD compiles on ARM kirckwood (Dockstar|GoflexNet|Goflex...).
Thank you very very much.

melvinvermeeren commented on 2017-03-08 20:29

Try checking out
b6004b68373384c0b4f2fdc50d6f75942920eaac
"output/Source: release the mutex while the filter runs"
instead.

The one called "release v0.19.21" is probably upstream.
"Merge tag 'v0.19.21'" should work too, but the mutex fix is probably nice to have.