Moode Audio Player for Raspberry Pi

Hi Tim, thanks for all the continuous feedback!

What would be the use of Squeezebox? Is it something worth looking into?

Thanks,
Rafa.

Hi Rafa,

The wonderful Squeezelite + Logitech Media Server (LMS) is a powerful, full featured music system. Having Squeezelite integrated into Moode allows that community of audio enthusiasts to also experience Moode/MPD, Airplay, UPnP and the nice Advanced Audio Kernel :)

Here is some background on the audio renderers (Airplay, Squeezelite, UPnP) integrated into Moode.

Airplay (shairport-sync) and Squeezelite

- Airplay and Squeezelite are both completely independent of MPD and each is controlled by its own Player app for example iTunes for Airplay and Logitech Media Server (LMS) for Squeezelite.

- Both iTunes/Airplay and LMS/Squeezelite support multi-room synchronized audio. This is something that MPD itself does not support. Moode's implementation of Airplay provides metadata and album art display when using iTunes.

- Squeezelite supports up to 32 bit 384 kHz rate using Moode Advanced Audio Kernel, otherwise up to 32 bit 192 kHz. Squeezelite also supports DoP and DSD -> PCM on-the-fly conversion. Airplay is fixed at 16 bit 44.1 kHz output but an upcoming version of shairport-sync will have option for 24 bit or 32 bit 44.1 kHz.

UPnP

- The UPnP renderer is fully integrated with MPD and uses MPD to play audio. The track(s) selected on a UPnP control point are inserted by the renderer into MPD's Playlist automatically.

- Moode's implementation of UPnP renderer provides album art display.

-Tim
 
This isn't much information [1], rongon, but first...

have you tried to isolate the problem to either the phone or the RPi/Moode/AP? For example, do you have access to any other WiFi AP, and if so, once associated with it does your phone stay connected it for longer periods? Do you have any other WiFi-capable device, like a laptop or tablet, which you can associate with your RPi/Moode/AP and, if so, does it stay connected for longer periods?

I run 3 different Android devices here (all Android 6.x or 7.x) with zero problems, but I run Moode in AP mode only long enough to configure it as a client on my home WiFi network, so I have no data relevant to your time scale of "an hour or so".

Regards,
Kent

[1] you know, like what version of Moode, what model RPi, what WiFi adapter, what model phone, what version of Android, other apps running on the phone, signal path and obstacles in it, whether your phone is stationary or moving, yada yada yada. Note: You can run Android apps akin to "WiFi Analyzer" to get a feel for your received signal; I think some even show the signal level over time.


It was a phone problem. I had to wipe the cache partition and now connection is solid. Thanks.
 
Quick question - as I'm just get started. Can anyone suggest a volume knob to add to the moode PI? Not sure if I have to do the scripting myself or if there is anything already to simplify this.

I would also be interested in something like preset-buttons - e.g. for turning on a specific radio stream.

It might not be related to moode itself but rather LMS - I'm not sure if it has an API that would allow me to do this, and e.g. use a wifi microcontroller for buttons/knob that simply intereacts with the API
 
Hi,

Sleep timer has been on my TODO list for a long time but keeps getting bumped by a huge number of higher priority items. Maybe someone will contrib the code.

-Tim

Tim,

Your comment combined with some itches of my own have got me looking more deeply into your code. In the process, I've created a public github repo of the contents of the /var/www directory of moode r31 because I like working with git and github makes it easy for me to sync work between different computers here in Chaos Manor East (a tip of the hat to Jerry Pournelle for those old enough to remember Byte Magazine).

The README.md file I added to describe my repo explicitly calls it experimental and unofficial, credits the official codebase to you, and gives links to your website and these forums.

At least one other, now year old public moode repo already exists on github, but I should have asked in advance if you are ok with this. If you prefer, I can either take mine down or make it private.

Regards,
Kent
 
Tim,

Your comment combined with some itches of my own have got me looking more deeply into your code. In the process, I've created a public github repo of the contents of the /var/www directory of moode r31 because I like working with git and github makes it easy for me to sync work between different computers here in Chaos Manor East (a tip of the hat to Jerry Pournelle for those old enough to remember Byte Magazine).

The README.md file I added to describe my repo explicitly calls it experimental and unofficial, credits the official codebase to you, and gives links to your website and these forums.

At least one other, now year old public moode repo already exists on github, but I should have asked in advance if you are ok with this. If you prefer, I can either take mine down or make it private.

Regards,
Kent

Hi Kent,

No permission required :)

The moodeaudio Git has Adv kernel source tree and AndyG's moode3 prototype which I mine code from on occasion. I just don't have time to maintain a Git repo for production moode sources.

-Tim
 
Hi Kent,

No permission required :)

The moodeaudio Git has Adv kernel source tree and AndyG's moode3 prototype which I mine code from on occasion. I just don't have time to maintain a Git repo for production moode sources.

-Tim

Thanks.

Of course creating the repo is dead easy. Accomplishing something useful in the code isn't!

Naively, my approach to a SleepTimer is to imitate the functionality in and dependent on the function chkClockRadio() in command/worker.php, then back up to see where other files have to be touched in order to get and display SleepTimer parameters through the Moode UI and save them in the session container.

Basing my first search of the Moode codebase using existing Clock Radio parameters, the UI stuff looks challenging. Still, my grandmother was fond of telling her grandkids "nothing ventured, nothing gained".

As for you maintaining an official github repo, that's a decision only you can make. If it doesn't help you get your work done, then don't do it just because others claim it's a good thing (TM). They aren't the ones wrapping all this functionality from kernel to drivers to application into an working image.

Regards,
Kent
 
Quick question - as I'm just get started. Can anyone suggest a volume knob to add to the moode PI? Not sure if I have to do the scripting myself or if there is anything already to simplify this.

I would also be interested in something like preset-buttons - e.g. for turning on a specific radio stream.

It might not be related to moode itself but rather LMS - I'm not sure if it has an API that would allow me to do this, and e.g. use a wifi microcontroller for buttons/knob that simply intereacts with the API

Both were answered in the last few weeks, do a search for 'encoder', probably under my name.

Not being difficult, but it was a lengthy process and I think it went over multiple posts. It was in December.
 
Hi Kent,

No permission required :)

The moodeaudio Git has Adv kernel source tree and AndyG's moode3 prototype which I mine code from on occasion. I just don't have time to maintain a Git repo for production moode sources.

-Tim

Maybe I'm an old git, but I find git confusing...

I thought you could create your code somewhere on your desktop and once you linked your root (branch) it would automagically replicate in the cloud.

I did have a bunch of them working when I was doing a lot of C on micro controllers, CNN machines and such, but I let them slide.

I found the act of creating files, refreshing, etc. ok, but there's was this whole other arcane side that managed versioning hat I never spent the time to learn and thus, found it annoyed me.

Anyone a git master? (Bad pun)
 
?..then don't do it just because others claim it's a good thing (TM). They aren't the ones wrapping all this functionality from kernel to drivers to application into an working image.

Regards,
Kent

Oh, thank tfsm! I thought I was a lesser man for finding the whole rigmarole a bit of a chore,

I have a Dropbox folder that holds all my source, which is shared with my Dad. There's no check-out, but we know what we are working on and usually I will copy it to the desktop first, mod it and then when we are happy, replace or add to the repository.

We tend to work on different stuff, anyway. I also use it for pcb design files, electrical diagrams, notes, docs, etc. I've managed to acquire 25GB of Dropbox somehow and every year I expect it to go or to receive a bill, but it never does. It must be going on five or so years now.

She's a pretty little gift horse, when she smiles :)
 
spotify-connect-web

Hi,
I'm about to receive my first Raspberry Pi, which I'm going to bundle with Hifiberry's Digi+ Pro. After poking around, it looks like Moode is my best option for compatibility and sound quality and I like the look of the UI (great job!). So, my question is this....

I'd like to be able to stream my music library (flac + mp3) from my NAS through the digi+ pro and then via toslink to my DAC, for which Moode Audio looks like a perfect solution. However, I also want to be able to keep my wife's ability to easily control Spotify using Spotify Connect.

I've read about this project: https://github.com/Fornoth/spotify-connect-web, which would seem to allow the functionality I want (ie turning my Raspberry Pi into a kind of Spotify streamer), but I'm not clear on whether this is possible to do within Moode Audio (all reference to that spotify-connect-web project I've found relate to volumio or raspian). If this is possible, I'm also unsure whether I will be able to switch seamlessly between controlling moode audio player (playing my own audio library) and Spotify-Connect (ie that both options are always available without having to load or stop any app or service in order to switch).

The key thing here is that nothing disrupts my wife's ability to just open Spotify and play her music through our stereo with Spotify connect as she's always done. Anything else is going to confirm all her claims about my geekery making her life more complicated...and then she wins.
Is this spotify-connect-web project what I want? Is running this alongside/within Moode possible? Is doing do going to get me what I'm after? Are there any good tutorials for making what I'm talking about work? Is this even the best way to do what I'm after? Very grateful for any and all responses and thanks in advance! :)
 
Hi,
I'm about to receive my first Raspberry Pi, which I'm going to bundle with Hifiberry's Digi+ Pro. After poking around, it looks like Moode is my best option for compatibility and sound quality and I like the look of the UI (great job!). So, my question is this....

I'd like to be able to stream my music library (flac + mp3) from my NAS through the digi+ pro and then via toslink to my DAC, for which Moode Audio looks like a perfect solution. However, I also want to be able to keep my wife's ability to easily control Spotify using Spotify Connect.

I've read about this project: https://github.com/Fornoth/spotify-connect-web, which would seem to allow the functionality I want (ie turning my Raspberry Pi into a kind of Spotify streamer), but I'm not clear on whether this is possible to do within Moode Audio (all reference to that spotify-connect-web project I've found relate to volumio or raspian). If this is possible, I'm also unsure whether I will be able to switch seamlessly between controlling moode audio player (playing my own audio library) and Spotify-Connect (ie that both options are always available without having to load or stop any app or service in order to switch).

The key thing here is that nothing disrupts my wife's ability to just open Spotify and play her music through our stereo with Spotify connect as she's always done. Anything else is going to confirm all her claims about my geekery making her life more complicated...and then she wins.
Is this spotify-connect-web project what I want? Is running this alongside/within Moode possible? Is doing do going to get me what I'm after? Are there any good tutorials for making what I'm talking about work? Is this even the best way to do what I'm after? Very grateful for any and all responses and thanks in advance! :)

Hi,

Moode supports music service playback via Airplay using the music services native app. There is no direct integration of any music service into Moode.

Just leave the Airplay receiver running on Moode, then you can play your local music collection using Moode UI or play files from your music service using its native app.

-Tim
 
Hi,

Moode supports music service playback via Airplay using the music services native app. There is no direct integration of any music service into Moode.

Just leave the Airplay receiver running on Moode, then you can play your local music collection using Moode UI or play files from your music service using its native app.

-Tim

Thanks, Tim! I had read about Airplay, but had disregarded this option because (1) it's less straightforward than Spotify connect and (2) I've read that the quality suffers dramatically compared to pulling Spotify directly from their servers. Are you saying that the project I pointed toward won't work in Moode for some reason? I think it will. My question is more about allowing it to run in the background somehow, without disturbing Moode's local file playback service.
So, let's say I don't want to use Airplay...?
Thanks again!
J
 
Thanks, Tim! I had read about Airplay, but had disregarded this option because (1) it's less straightforward than Spotify connect and (2) I've read that the quality suffers dramatically compared to pulling Spotify directly from their servers. Are you saying that the project I pointed toward won't work in Moode for some reason? I think it will. My question is more about allowing it to run in the background somehow, without disturbing Moode's local file playback service.
So, let's say I don't want to use Airplay...?
Thanks again!
J

Some more investigation led me to this fork of the aforementioned github project, which seems to be designed to do exactly what I'm after:

https://github.com/Fornoth/spotify-connect-web/network

Am I better off trying this with Moode or is it safer with just straight Rasbian?