Simple DLNA Renderer for Odroid C1+...or not?

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Hello,

I'm Oliver from Germany and it's my first post.

First of all please be patient if I don't succeed in getting to the point. I'm a "digital audiophile" and my perfect setting for listening music is:

[NAS] ---USB A-B---> [AMP]

Basically this works fine and is the straightest signal way from NAS (Synology DS716+II) to amp which is capable to handle digital audio files up to DSD256 (Audiolab M-One). Server app is "Synology Audio Station", transcoding disabled, bitperfect and gapless playback.

The problem: after an indefinite period of time (sometimes on from beginning) the amp looses input signal and I have to pull the USB plug once to reactivate the connection.

A solution: runeaudio on Odroid C1+ with network source ...as a kind of "technical middleware" and it keeps up connection. ;)

Well, runeaudios library gui is quite nice and clean but DS Audio is a little more comfortable.

A solution is to activate UPNP/DLNA in runeaudio.

[NAS] ---RJ45 (DLNA)---> [runeaudio] ---USB A-B---> [amp]

Works, too. Problem: no gapless playback using Audio Station/DS Audio (iOS)

I have no idea about Linux but I've heard something about a lightweight distribution with MPD and upmpdcli - instead of runeaudio ('oversized') - could be a solution. Could it?

If everything is too complicated, I'll stick with runeaudio as a player.

———————-
edit
———————-

I just used Volumio for comparison, no improvement here either so I think it won’t work with other linux MPD solutions. Am I right? Any other ideas?

Regards,
Oliver
 
Last edited:
Synology DS716+II is a linux computer (Intel Celeron N3160) running some old kernel with lots of backported patches. Even if synology guys backported newer alsa fixes for usb-audio class 2, I doubt they did it clean and fault-free. Very likely the alsa usb-audio driver is in a very sad state compared to modern kernel. Most likely runeaudio runs a newer or better-backported kernel which fixes some bugs/suboptimal support.

Yet perhaps a peek at system logs via ssh connection to the synology box could reveal the real cause and perhaps it could be fixed externally without upgrading the kernel (which is unfeasible, AFAIU).
 
I've heard something about a lightweight distribution with MPD and upmpdcli - instead of runeaudio ('oversized') - could be a solution.
Yes, mpd is simple and reliable.
You could install a "standard" Linux distribution on your Odroid, then manually install and configure mpd.
But if you prefer a pre-packaged distribution for Odroid with mpd ready to go, I think Archphile would be your best option -
Archphile - Browse /odroidc2 at SourceForge.net
 
Thank you for your replies.

With DSM 6.2 Synology has officially discontinued USB - DAC audio. If it still works, fine but no support. So I would go on with Odroid basically.

I‘d prefer a pre-package as well. ;) I'll test Archohile and I'll get back to you.

The most important thing for me is a bitperfect data output. Okay, and a good operation gui.
 
The most important thing for me is a bitperfect data output.
Archphile is probably configured for bit-perfect audio. You can check the Archphile author's comments here -
Archphile - An Archlinux Based Audiophile Distribution for Raspberry Pi and Udoo Quad

And you can also check the configuration of ALSA and MPD which I explained here -
https://www.diyaudio.com/forums/pc-based/300731-music-server-2.html#post5010872

... and a good operation gui.
There are many different MPD client applications available. Some are good, some not so good.
For Android I like MPDroid
MPDroid – Apps on Google Play
and MPD Control
MPD Control – Apps on Google Play
 
I've successfully installed Archphile on mSD but no "sign of life" with the C1+. I did a little browsing on Mikes blog and found out that he has dropped C1+ support in 2018 and still went on with C2.

As already said I have no idea about linux but I'm willing to try if anyone can show me "the first steps into right direction".

On odroid-wiki I found that: odroid-c1:eek:s_images:third_party [ODROID Wiki]

Which should I take and what do I have to configure for "DLNA-in - USB-audio out to amp"? (...controlled by Synology DS audio app).

BTW, I'm on macOS 10.15...keyword: ssh.
 
I've successfully installed Archphile on mSD but no "sign of life" with the C1+. I did a little browsing on Mikes blog and found out that he has dropped C1+ support in 2018
Ah, the version of Archphile that I suggested (ver 1.19) may be too new.
So try version 0.99.73 from 2018 -
Archphile - Browse /odroidc2/0.99.73-alpha at SourceForge.net

what do I have to configure for "DLNA-in
Forget about DLNA. MPD is more than just an endpoint/renderer, it's a full music server. So your Synology NAS will go back to its conventional purpose of just being a network fileshare. The Synology DS Audio app is no longer in use.

USB-audio out
Linux will auto-configure a USB audio device. Just make sure that your DAC (which I understand is internal to your amp) is turned on first, before powering up the C1.
 
I used MPD for several years before dismantling everything for a move about 2 years ago. It works well for local file playback. What seemed to be very much lacking was some kind of streaming audio support. How do I play tunes from internet radio, Pandora, Spotify, etc?

I strongly prefer not to install a dedicated distro like Volumio on any of my machines. Instead, I'm thinking of exporting the desktop or a web browser window from my "server" to a portable control client like an Android tablet since most if not all streaming audio services are web based.
 
In that case I'm a kind of old school. Although music source is consequent digital (ripped cd@flac) this wired music system is intended for "local listening in my men's room". Streaming is secondary, at most a little netradio.

What I have in mind is just a "tiny piece of technology" that transfers music from NAS to Amp.
 
I just looked at DietPi now, and I see it has a basic GUI to help you install optional components.
I can tell you that MPD can only show cover art when run in combination with a web server, and the only web server that I know for sure works in this role is lighttpd. So during installation I suggest you choose lighttpd as the preferred web server.
 
I don't have huge demands on the GUI, it's more the little things in handling.

E.g.: runeaudio library, scrolling album list, opening folder artist "M...", going back to list on...starting with "A". :confused: It would be fine to maintain the last picked point.

I'm not the guy keeps browsing the library, selecting songs, add them to playlist...more listen to a complete album, looking at cover, reading lyrics...really old-school in a modern way. These a the little things I love DS Audio for. No more and no less.

Okay, the new "audio toy" should came with gapless, bitpferfect, no klicks, etc.:D

I will try dietpi later that day.
 
Well, I successfully installed DietPi, connected via ssh and choose mpd, alsa, mympd for installation. Anything else?

I integrated my network drive (NAS), config sound card. How do I get access to mpd?

But these all seem to be Linux basics that have certainly been asked several times before. So I would try it by myself with a good guidance.

One more thing, couple of years ago I've built a windows audio system according this website (link is for linux project).

Are the necessary configs - shown on this site - still implemented in dietpi or do I have to set them manually? Especially "realtime kernel setting"?
 
Last edited:
How do I get access to mpd?
i) ensure mpd automatically starts at each boot up.
I believe you can set this in DietPi by running
Code:
dietpi-config
then go to "Autostart Options"
If this doesn't work, I can give you the manual command later.

ii) change all necessary settings in the mpd configuration file /etc/mpd.conf
One of the main settings is to define the location of your music directory. Let's say your NAS is mounted at /mnt/nas (I understand you have set this up already) and the directory on your NAS which contains your music is "Oliver-MUSIC"
So your C1 sees the location of your music store as /mnt/nas/Oliver-MUSIC
Assuming DietPi includes the text editor nano, use this to open the configuration file -
Code:
sudo nano /etc/mpd.conf
and where you see "music_directory ..."
change this line to -
Code:
music_directory   "/mnt/nas/Oliver-MUSIC"
or whatever is correct in your case.
Also if you see "#" at the start of the line, remove it - otherwise this disables the configuration, and uses a default value instead.

Now prepare an MPD client app on your phone or tablet.
If you have Android, try MPDroid or MPD Control.
If you have iOS, try Soundirok
Soundirok on the App Store
or MPDPlayer
MPDPlayer on the App Store

I will check my notes when I finish work later tonight, to give you the other necessary settings.
 
First of all, thanks a lot for your assistance!

I don't want to just imitate everything you wrote down for me, I will understand it! And linux a is kind of..."different" for me. :D

Okay, step by step...

Code:
If this doesn't work, I can give you the manual command later.

I've checked "Autostart Options", there is no mpd option to choose.

bildschirmfoto2020-09wzje4.jpg


bildschirmfoto2020-0928jld.jpg




Code:
 to define the location of your music directory. Let's say your NAS is mounted at /mnt/nas (I understand you have set this up already)

I've thought to define it once that's sufficient. I had to do it again.

mntg8krr.jpg


Code:
music_directory   "/mnt/nas/Oliver-MUSIC"

"/mnt/dsmusic" is right?



Audio: I've chosen hw:1,0

audio79kf1.jpg


Code:
Also if you see "#" at the start of the line, remove it - otherwise this disables the configuration, and uses a default value instead.

Are all the settings I've made in ALSA retained so I don't have to do it in mpd-config manually?

The NAS has an "audio user" for SMB access. Where do have to set "username" and "password"? Or do I have to create a new user in DietPi therefore?

Okay, so far...
 
I've checked "Autostart Options", there is no mpd option to choose.
OK, here is the manual command which will set MPD to run at every bootup -
Code:
sudo systemctl enable mpd

The NAS has an "audio user" for SMB access.
Yes, for DietPi to successfully access the NAS, it needs to know the Synology's:
IP address
SMB username
SMB password
name of shared folder (all Synology NAS's have a shared folder, which is assigned during the Synology setup).
"/mnt/dsmusic" is right?
So under "Network Options: NAS/Misc" you set up DietPi to access the NAS at /mnt/dsmusic ?
If so, go ahead and check if DietPi can successfully "see" the NAS, with this command -
Code:
ls /mnt/dsmusic
This will list any directories/files at that location. If this command returns a list of directories for all your music artists, then this is good, and you are ready to configure MPD. But if, for example, that command simply returns a listing of a directory called something like "My-music", then your music collection is obviously located one level further down, so check again with -
Code:
ls /mnt/dsmusic/My-music
I will wait until you confirm that these commands work, and DietPi can definitely see the files on your NAS.
If not successful, I can give you the manual commands which will automatically mount your NAS each time DietPi boots.

Once DietPi can "see" your NAS and access its files, you still need to configure MPD to look in the correct location in the file system.
We will do that in the next stage. Linux text editors can be a little complicated, so I hope that DietPi includes the nice-to-use nano. You could check with -
Code:
nano --help
 
Last edited:
Code:
sudo systemctl enable mpd

Automatic startup…set!

Music directory: I followed DietPi's setup interface. Fill in IP, music directory, SMB username & password and the result was "/mnt/dsmusic/.

Code:
ls /mnt/dsmusic/My-music

Side note: the directory structure is made up of several subdirectories (artist's folder for each album (tracks & cover)).

With this command I get the folder's first level (albums|sampler|singles|soundtracks).

Code:
ls /mnt/dsmusic/albums

I get a list of all artist's subfolders.

Code:
ls /mnt/dsmusic/albums/Yello\ -\ Stella

This one takes me straight to the tracks.

If not successful, I can give you the manual commands which will automatically mount your NAS each time DietPi boots.

That would be generally great.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.