• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

moOde audio player for Raspberry Pi

Docker for me is like this:

In the old days, running on bare metal, a user could say, "it's not working for me, and I don't know why" and the developer would say, "it works on my machine..." Running in Docker removes this problem, because running in Docker is *running the same as the developer's machine.*

With Docker, you store all the personal configuration options on a mapped volume to local storage outside the container, so that they persist.

When it comes time to upgrade, the container gets erased and upgraded, and uses that same mapped local storage, so you can easily move the container from hardware to hardware, upgrade, downgrade, and it just keeps working. Running in a container makes it easy to add, easy to upgrade, easy to destroy, easy to migrate.

If the container is maintained for both intel and arm, it becomes easy to become more platform agnostic - pi here, intel NUC with USB DAC there, and the container doesn't care, because the hardware that is handled by the OS (network, storage, etc.) gets abstracted away.

Easier install, easier deleting, easier upgrade, easier portability from device to device.

This statement

In the old days, running on bare metal, a user could say, "it's not working for me, and I don't know why" and the developer would say, "it works on my machine..." Running in Docker removes this problem, because running in Docker is *running the same as the developer's machine.*

doesn't really apply to how the moode project works because the devs run the exact same Raspberry Pi hardware, RaspiOS and Linux kernel as our users and in many cases the exact same peripherals as the user including audio devices, storage drives, power supplies, local displays, etc. This has obvious advantages when troubleshooting a user's issue.

There are also hardware features of the Raspberry Pi for example the GPIO / I2S interfaces that are integral to moode and that don't exist on x86 platform. AFAIK docker doesn't solve that type of issue, rather the application (moode) code would have to incorporate platform detection and then factor the feature set thats exposed to the user for that particular platform. Thats a very significant undertaking.
 
This statement

In the old days, running on bare metal, a user could say, "it's not working for me, and I don't know why" and the developer would say, "it works on my machine..." Running in Docker removes this problem, because running in Docker is *running the same as the developer's machine.*

doesn't really apply to how the moode project works because the devs run the exact same Raspberry Pi hardware, RaspiOS and Linux kernel as our users and in many cases the exact same peripherals as the user including audio devices, storage drives, power supplies, local displays, etc. This has obvious advantages when troubleshooting a user's issue.

There are also hardware features of the Raspberry Pi for example the GPIO / I2S interfaces that are integral to moode and that don't exist on x86 platform. AFAIK docker doesn't solve that type of issue, rather the application (moode) code would have to incorporate platform detection and then factor the feature set thats exposed to the user for that particular platform. Thats a very significant undertaking.
Running on a small set of target devices is ideal and the proof is in the pudding in this case, moodeaudio is utterly painless to set up and use on any modern raspberry pi.
 
I downloaded Raspberry Pi imager with Moode 9.0.3. It took me 2 days to get Moode loaded and running properly on my RP 4b. It took that long because I’m a screwup. It took me another day to understand the interface mostly because I’m slow. Now that I’ve got Moode running with my music files on a USB hard drive, I am becoming very fond of Moode. I say this after trying Rune and Volumio. I find Moode to be more mature and stable than the previous Music OS’s. I also like exploring the preloaded radio stations. I like the preloaded Left-Right Channel and Phase Check software. Yeah, I recommend trying Moode. It’s good.
 
Hi,

moOde 9.0.7 is available in the Media Player OS section of the Raspberry Pi Imager or as a direct download at https://moodeaudio.org. Visit the Forum for more information https://moodeaudio.org/forum/showthread.php?tid=6813&pid=56913#pid56913

moode-r900-logotype-bg.png
 
Thanks @Tim Curtis for the great product! I Very simple to set up and use!

Just one issue I have with it.
I have the cover pictures embedded into each individual flac file.

Moode, however, doesn't seem to read embedded cover from EACH file. It only does this ONCE PER DIRECTORY.
So, ALL files in the same directory will be displayed with the same cover art.

Example:
I intentionally placed some Pink Floyd to the folder with Portishead.
I did regenerate the music database and Thumbnails.
1727529534562.png


So, in order to have cover art rendered correctly in Moode's GUI, each album must reside in its own directory.
But I do NOT want to create a nested directory structure.
I use naming conventions "Artist Year Album Track Name.flac" for each file. This allows me to just dump all files into the same directory, and I rely on the Library tools to arrange it into Artist/Album structure.

Any plans to read image from each flac?
Thanks!
 
Last edited:
The thumbnail generator depends on the more or less standard and widely used artist/album/tracks directory tree. This enables things like folder images, artist images, support for albums that have a main cover while each track has individual embedded covers for example Nine Inch Nails - The Slip, Box Set covers. etc etc.

Of course since moode is a FOSS application another dev could create an alternate thumbnail generator and offer it as an option. If someone wants to do that just post a Thread in our Forum and include install instructions and a download link. If enough users want it I can put it on the TODO list to add it as a config option.
 
Last edited:
It took me a while to understand what was wrong with my thumbnails. Google didn't help much (that's why I asked you here).
Most people must be just following the conventional per-directory structure and never face such issue.
Otherwise it would show up in google search results much more.

Even when most of the music is well structured, there may be some use case: there is always this one folder named "Old", with some random songs :)
Thank you for fast response! I'll have a look at your forums.
 
For the "Old" folder scenario just set AlbumArtist tag in the tracks to "Various Artists" and it will show up as a compilation album :)
 
Hi,

I installed Moode a few years ago as a complete Linux noob (version: 7.6.0). I have been running this version since then but I was wondering if it is recommended to do regular updates or 'if it ain't broke...'? Maybe for security reasons I should update once in a while or even anytime a new version is released? If so, is there an update command I can run or do I need to completely wipe my installation and start all over (I hope not:)..
Strangely, if I check for updates via System Config on moode.local it says 'Software is up to date' ..
 
Hi,

I installed Moode a few years ago as a complete Linux noob (version: 7.6.0). I have been running this version since then but I was wondering if it is recommended to do regular updates or 'if it ain't broke...'? Maybe for security reasons I should update once in a while or even anytime a new version is released? If so, is there an update command I can run or do I need to completely wipe my installation and start all over (I hope not:)..
Strangely, if I check for updates via System Config on moode.local it says 'Software is up to date' ..
Hi,
7.6.0 is quite old and still using 32-bits Bullseye OS on the background. Normally you would get a notification via System and "check for update", however it might be that you're too far out of date....
In your case I would do a fresh install (as the way of installing also has changed, including an OS update). Before you do this, make a backup of your settings (in system "backup" and "restore"). However, not sure if restoring the settings are supported with this big update gap (7.6.0 vs 9.1.2 currently). Maybe @Tim Curtis could comment here...
 
Hi,
7.6.0 is quite old and still using 32-bits Bullseye OS on the background. Normally you would get a notification via System and "check for update", however it might be that you're too far out of date....
In your case I would do a fresh install (as the way of installing also has changed, including an OS update). Before you do this, make a backup of your settings (in system "backup" and "restore"). However, not sure if restoring the settings are supported with this big update gap (7.6.0 vs 9.1.2 currently). Maybe @Tim Curtis could comment here...
Thanks, makes sense. So is updating advised from a security perspective, because the version I am using has all the functionality I need?
 
Thanks, makes sense. So is updating advised from a security perspective, because the version I am using has all the functionality I need?
Security and functionality I believe. At some point you might for instance need updated components to be able to keep using Spotify Connect or other Renders/integrations. For now your functionality is not impaired yet, but there's no guarantee it stays that way.
 
Thanks, makes sense. So is updating advised from a security perspective, because the version I am using has all the functionality I need?
I have kept my Pi3 units on version 8. As long as they are working I see no reason to do a fresh install of 9. I also don't know if version 9 will be more demanding and slow down their performance. I do have a Pi5 and I have that one on version 9. Sound wise all units sound identical so I haven't seen the need to update the Pi3s.
 
Thanks, makes sense. So is updating advised from a security perspective, because the version I am using has all the functionality I need?
From a security perspective I'd say do regular updates unless you know you don't need them, but keep backups in case of disappearing functionality. Maybe keep 2 uSD cards for the OS, and alternate them so you can fall back to the other one. If you only use it to access local content and the rest of your network is well locked down then you may be safe without the updates.
 
Hi,
7.6.0 is quite old and still using 32-bits Bullseye OS on the background. Normally you would get a notification via System and "check for update", however it might be that you're too far out of date....
In your case I would do a fresh install (as the way of installing also has changed, including an OS update). Before you do this, make a backup of your settings (in system "backup" and "restore"). However, not sure if restoring the settings are supported with this big update gap (7.6.0 vs 9.1.2 currently). Maybe @Tim Curtis could comment here...
In-place updates are provided within a major release series for example for all 9 series releases, but not across major release series because we typically plan a new moode series around a new Debian/RaspiOS release (every 2 years or so) and these new Debian releases always contain major changes that we can't reliably incorporate in our in-place update process.

The Backup/Restore feature was introduced way back in the 2021-09-24 moOde 7.4.0 (Buster) release. In theory a backup from 7.6.0 can be restored to 9.1.2 but its not something we have tested.
 
From a security perspective I'd say do regular updates unless you know you don't need them, but keep backups in case of disappearing functionality. Maybe keep 2 uSD cards for the OS, and alternate them so you can fall back to the other one. If you only use it to access local content and the rest of your network is well locked down then you may be safe without the updates.
Local networks won't protect against some security vulnerabilities for example script code embedded in music file metadata, embedded default userid/password in the image etc. Exploiting these only requires the user to download a music file from an untrusted source or click on an expertly crafted phishing email or website. This behavior happen every day.
 
Back
Top Bottom