Thank you for your donation!

Problem: Edge Case Bug - Switching MPD settings.
Here's just an edge case bug I noticed. I use a pi4 with HDMI out and had moode/mpd configured for hardware volume control.

I recently decided to set up the alsa loopback system to add some processing in the chain.

After loading the snd-aloop module and restarting the loopback interface showed up in the mpd output choices in Moode.

So I selected Loopback and rebooted as moode requested. No sounds played after reboot. Ok, volume is at zero, turn it up. Nothing. Go to mpd config gui and see volume is now software instead of hardware. That makes sense, the loopback doesn't have a hardware volume control.

Open terminal and bring up alsa mixer. Select hdmi mixer. Its volume is also zero. Turn it up. Sound starts playing. Yay!

Adjust volume in moode. Nothing happens.

Looking at mpd.conf when I changed from HDMI to Loopback moode correctly changed output from hw1,0 (HDMI) to hw0,0 (Loopback), but it didn't catch that it needed to change to software mixer. So it left the mixer controls as hw0. Unfortunately in the mpd config gui it showed it was set to software.

If I changed the order I do things everything works ok.
Change back to hdmi. Change back to hw volume. Change to software volume. Then change to loopback. Final result is loopback with sw volume control.

So there's an edge case bug when switching from a device that has hw volume control to one that doesn't.

Just and FYI as the work around was easy enough.

P.S. The related feature request here would be let the moode gui configure different devices for volume (alsa ctl) and output (alsa pcm). But I suspect that only ever would be appropriate for loopback so I doubt it ever makes it up anyone's list.
It can't be bug cos whatever it is that you are trying to do is not currently part of moOde. The fact that something new shows up in MPD audio output list is just an outcome of the routine that populates the list.

The statement "I recently decided to set up the alsa loopback system to add some processing in the chain." doesn't provide any information on what you are trying to accomplish.

Whatever it is you want to do be a useful feature but no one will ever know unless you explain it and make a case for it to be included in moOde.
I'm sorry, I meant to post this in feedback as a minor bug report.  Not in support.  No idea where my mind was to accidentally post it here.   I am not requesting any support.  I 100% agree with you I'm doing things outside Moode that are of no concern to you or any other devs.

Please feel free to delete this thread or move it to feedback where it should have been.

I was just reporting the bug because it seems to me it could just as easily happen if someone previously using HDMI output plugs in a USB DAC that doesn't support hardware volume control and selects their new DAC in the moode audio mpd gui.  (I don't know why, but it seems even some "high end" DACs don't have hardware volume control exposed on the USB interface.)

And if you're curious, I'm adding FIR convolving for room equalization.  It's working fine.
This is interesting as I'll be doing something similar in a few weeks. Nice to know it's working, apart the UI that wasn't meant to support it obviously.

this will be my way:
Raspberry Pi4 -> HDMI out -> multichannel DAC -> 6 channel amp -> three-way stereo active DIY speakers.
(multichannel dac +amp could be a simple 7.1 receiver with HDMI in, if you want to test)

I will use it as active crossover with LADSPA plugins and EQ/room correction on top of it.

Some documentation about the whole loopback/ladspa implementation:
Crossover and crazy filters aside, this would give more pEQ bands than the one we have now. 
It can be also useful even for people wanting to load AutoEQ correction curves for headphones, as usually requires 10 bands EQs

I am still sourcing parts, it'll take a few weeks. Then I'll open a new thread.

Forum Jump: