MPD 0.21.16 for Volumio (arm, armv7 and x86)

I uninstalled youtube2 plugin and reinstalled it. Then I also reconfigured credentials and allowed access with the new code provided. The last part is very important. After that youtube2 plugin is working again. I will probably have 2/3(or 3/4?) cut off problem again…
However thank you very much for providing youtube plugin and mpd v0.21 update. I really appreciate sharing it!!!

@songskim, I am using MPD 0.21.16 for playing DSDs most of the time, and have not encountered any issues on a Raspberry Pi 3 and x86 PC. This makes me wonder if there is anything different with the Odroid version of Volumio…

What are you getting specifically when you try to play a DSD? Were there any errors in the logs?

By the way, if you haven’t done so already, I would suggest rebooting your device after activating the new MPD.

EDIT: I should mention that I am not playing DSDs locally, but have them streamed from a Jellyfin server. Playback works fine with the Jellyfin plugin as well as DLNA.

Thank you for your advice Mr. patrickkfkan.
I tried you mpd 0.21 update. I followed as you instructed at the beginning of this thread.
After I reinstalled mpd 0.21 with your script and visited YouTube2 link at the menu, youtube worked without problem. Then “music library” link at the left menu showed spinning circle(arrow, I do not know what you call it. Anyway, the visual effect when volumio is updating music library.)
I played a DSD file. No sound came out of the speaker although the play progress is showing the music is playing…
So, I stopped the playing and rebooted volumio. After reboot, I played a DSD64 file. It played and nice sound came out of the speakers. However played another DSD file, volumio rebooted by itself. I have no problem with these files with the “original” mpd version. I also have no problem playing flac files. My volumio setting for DSD is “DSD Direct”.
I am going to look into the log files and post as replies.

My environment is as follows

  • Odroid XU4
  • Volumio 2.857 built for Odroid XU4 released by wonderful volumio team during last December
  • DAC-Sotm sdp-1000(it has AK 44** dac chip)
  • Music files are ripped by me from the CDs I have and stored on WD My Cloud -mounted by volumio with CIFS.

No luck. After I tried several things such as setting DSD play with “DSD over PCM”, I still get DSD files playing error. I went back to “original mpd version”, I have no problem playing those files.
I checked /var/log/mpd.log and found the following lines:

Feb 10 14:56 : zeroconf: No global port, disabling zeroconf
Feb 10 14:56 : client: [0] opened from local
Feb 10 14:56 : exception: No such directory
Feb 10 14:56 : client: [1] opened from 127.0.0.1:38416
Feb 10 14:56 : exception: Failed to read mixer for ‘alsa’: no such mixer control: PCM

I checked /etc/mpd.conf. Audio output setting is set with HW:1,0 which seems right.

When you say Volumio reboots, did you mean your Odroid reboots, or just Volumio restarting by itself? If it is Volumio restarting itself (on your second attempt to play a DSD file), do you see anything peculiar in Volumio logs (sudo journalctl -f -u volumio)?

Also, could you confirm you have no problems playing FLAC files?

Mr. patrickkfkan
Thank you very much for your on going concern. I am sorry I used wrong words. It seems like Volumio restarting (As I hear volumio starting signal sound). I searched /var/log/mpd.log and even watched “journalctl -f”. The only suspectable is " exception: Failed to read mixer for ‘alsa’: no such mixer control: PCM" as I mentioned above.
I fresh reinstalled Volumio v2.857 for Odroid-XU4 today and kept checking things.
I actually found out something very suspectable. The spec of my DAC is as follows

Specification
USB inputUSB specification 2.0 or higherUSB audio class 2.032bit/192KHz PCM & DSD playbackNative ASIO supportOptical, Coaxial, AES/EBU inputMax bit-depth : 24bitSampling rate : 32KHz, 44.1KHz, 48KHz, 88.2KHz, 96KHz, 176.4KHz, 192KHzImpedanceCoaxial, BNC : 75ΩAES/EBU : 110Ω

When I play a DSD file with the 'stock-volumio team released" Volumio 2.857, the display window shows 192Khz. I set Volumio “DSD Direct” and the display window supposed to show DSDxx when I paly a DSD file. So I guess volumio plays via DoP even though I set DSD Direct. This probably caused by Volumio not dectecting my DAC chip correctly which is AK4399EQ by AKM. When I play music with minimal Debian+MPD version higher than 0.19.** on my laptop or with VoyageMPD on Alix computer, the Dac displays DSD** correctly.
Hence my guess is that MPD configuration included in Volumio 2.857 not dectecting AKM chip correctly and Volumio 2.857+ your MPD 0.21 has something conflicts with AKM 4399 chip.
This must be a specific problem and not a general problem for other people out there. Hence don’t worry about too much and I really appreciate your concern for until now!!!

Thank you very much Mr. Patrickkfkhan.

p.s. Sorry about large and bold texts in my previous message. Somehow the texts became like that and I could not correct it…I am sorry.

@Mr. Patrickkfkhan
I have no problem playing any other type of files than DSD.
I just finished reinstalling everything fresh. Then I also reinstalled Youtube2 plugin and mpd 0.21 update(replace?). I have no problem playing other type of files and Youtube2.
I tried to play DSD files(after I installed 0.21) with which I had no problem before installing mpd 0.21 update. Volumio showed a message it is fetching the file, no sound came out and then the web page showed spinning dots in the middle.(I use volumio as headless and do web access.) I tried to connect to Volumio via ssh but the host is unreachable. It says “no route to host”. I waited a few minuits, still “no route to host”. I unplugged the power and plug back in. After system booted, I checked /var/log/mpd.log and found the following.

############
Feb 12 11:11 : zeroconf: No global port, disabling zeroconf
Feb 12 13:30 : client: [0] opened from local
Feb 12 13:30 : exception: No such directory
Feb 12 13:30 : client: [1] opened from 127.0.0.1:38802
ALSA lib conf.c:3650:(snd_config_hooks_call) Cannot open shared library libasound_module_conf_pulse.so (/opt/mpd-0.21.16_20191227/lib/alsa-lib/libasound_module_conf_pulse.so: libasound_module_conf_pulse.so: cannot open shared object file: No such file or directory)
ALSA lib control.c:1375:(snd_ctl_open_noupdate) Invalid CTL default
Feb 12 13:30 : exception: Failed to read mixer for ‘alsa’: failed to attach to default: No such file or directory
###########

I hope this help finding the problem.

It seems like I solved the problem. I changed the power for Odroid XU4 and DSD files are being played without problem.
I am very sorry for flooding this thread with my own problem…I am so sorry.
I was using a 2.1A linear power and I changed to 4A smps power supplied with the board.(:frowning: Because I would improve the sound quality with linear power). As I am using 4A power I have no problem so far. Odroid must be using more power when I play DSD files…

Thanks again Mr. patrickkfkhan! And sorry for the unnecessarily annoyances…

No worries! Good to see this has been resolved. I do find it odd that playing DSDs would require more power than, say, FLACs. Maybe more power is needed to read the files at a higher data rate from the HDD?

1 Like

@songskim: the odroid xu4 version is a community porting, this means we use (re-)configured hardkernel sources. Any audio updates have to be done by us.
Unfortunately, for dsd playback manufacturers have to register their devices in the linux kernel with a vendor and product id to have them properly detected as dsd-capable devices.
I did an update quite a while ago, so can’t guarantee your device is covered.
Can you tell us what USB DAC this is (brand/ model), ideally with vid:pid you get from the ‘lsusb’ command?

@gkkpch
The USB DAC I am using is made by sotm audio(https://www.sotm-audio.com/sotmwp/english) and the model is sdp-1000. This DAC uses AK4399EQ chip as dac and XMOS chipset for usb communication. The result of my “#lsusb” shows
#############
Bus 001 Device 002: ID 20b1:2102 XMOS Ltd
#############

Specification for SDP-1000
########################
USB specification 2.0 or higher
USB audio class 2.0
32bit/192Hz PCM & DSDx64 playback
Native ASIO support
Optical, Coaxial, AES/EBU input
Max bit-depth : 24bit
Sampling rate : 32KHz, 44.1KHz, 48KHz, 88.2KHz, 96KHz, 176.4KHz, 192KHz
##########
sotm-audio has newer version SDP-1000EX(https://www.sotm-audio.com/sotmwp/english/portfolio-item/sdp-1000/) which is capable of playing DSDx128. Mine is older version.
Several audio media introduced the product when it came out. 6Moon ehaute fidelite

p.s. this is off topic however I translated volumio into Korean because only a small part had been translated. I tried pull request with git tool. However seems like it did not go through. I would gladly contribute to volumio if I can be any help. At least translation is the biggest thing I can do…

please have a look here : https://translation.volumio.org/

1 Like

Thanks balbuze. I uploaded my translations. However there are some more translations needs to be done in Volumio UI. I will probably finish these in a few days.
I like working with these translation tools such as Weblate, Transifex…etc. better than git :wink:

Thanks @patrickkfkan. Updating mpd made Tidal actually usable for me. I have been having problems with mpd hanging when using Tidal with Volumio to the point that I just gave up and started using Spotify instead.

Just wanted to chime in and say updating MDP also works without issues for me on a Raspberry Pi Zero, even though it only has 512mb of RAM!

Great work, installed it on Pi 4, after MPD upgrade works fine,
Thanks Patrick

Such a great job, I just wanted to say THANKS @patrickkfkan, after updating MPD both the seek and the 3/4 cutoff issues were solved on my Raspberry PI 3 mobel B+!
Just a little note: once i completed the MPD switch i had to reboot volumio, since when i issued the status command i first saw “activating” and after a few minutes it switched to “deactivating” status.
After executing a volumio restart everything worked properly and the new MPD version is being used.

Thanks and welcome to the community :slight_smile:

I can confirm that this version also works on Asus Tinker Board S (ARM/Pi version)

Hi @patrickkfkan I appreciate too much your work. It is becoming more and more common to find good audio playlists on Youtube, some with many hours of open music. I followed your procedure and I can confirm it works on these conditions:
Hardware setup: Raspberry Pi 3B with Suptronics X4000 (R-PI DAC equivalent), 256GB USB stick.
Software setup:

  1. Fresh install of volumio-2.587-2019-06-11-pi
  2. Applied your build of MPD 0.21.16
  3. Reboot
  4. Installed yctr version 0.1.0a-20210627
  5. Also installed SpotifyConnect and Wifi Reconnect plugins (those that I use)
  6. Plugins activation form the UI

Observations made:

  • Youtube cast works, only the UI shows counter like starting from zero when opened, but after a simple volume change it corrects to actual playback elapsed time.
  • USB media content was updated over SSH and the directory was updated instantaneously.
  • DLNA works, tested browsing and playback.
  • Web radio works, both Volumio selection and user entered.
  • RAM memory: Using 909MB out of 994GB no matter if playing from USB or Youtube
  • ytcr fails if Wifi signal is weak for a moment and stream is interrupted, and it does not reconnect anymore :pensive: even if Raspberry is still connected and responsive. No other casting can be made until a reboot. Maybe there is a space for a workaround there.

Best regards and long live to FOSS :slight_smile: