I am working on setting up a Pi5 with headless plexamp using a DAC8x for an output.
This is being setup to be used with a 4 channel amp, so it needs to be configured to output any 5.1 content as 4.0 - create a phantom center by sending the center to both fronts, and drop the LFE.
So far with the help of AI, I have configured a 5.1 sound test from the command line of the Pi to output 5.1 to 4.0 successfully by configuring asound.conf.
After doing this, I installed plexamp.
Plexamp is only giving me 2 wrong options for audio output.
Default - which stubbornly insists that the default is 2 channel 44.1kHz, despite my custom configurations. AI has guided me through several configuration tweaks to try and force default to be our custom quad configuration, but plexamp goes right on insisting that default is a stereo 44.1kHz output - which means that anything beyond the front channels are ignored and discarded.
Or I could select an option that is directly to the hardware itself, “snd_rpi_hifiberry_dac8x:…”, which does playback surround materially to the default settings of the hardware, fronts out the first jack, center/lfe out the second jack, rears out the 3rd jack, sides out the 4th jack.
Neither of these options do me any good.
AI is stuck in a mode of half-assed guesswork that makes no changes to this.
Anyone around here know enough about how these things work to know how I can get plexamp to use my configurations, instead of just doing it’s own thing and ignoring my configurations?
It’s like pulling teeth to get straight answers to anything around here. Supposedly this is where there is official support. Does anyone understand the first thing about how any of this was designed to work? Do the devs just output broken garbage with no documentation or support? For crying out loud, it shouldn’t be this hard to get a simple 5.1 output on hardware that was designed for this, with software that was designed to do it! How did plexamp get this far off the rails?
please post logs that include attempts to play multichannel tracks to the alsa “default” output that uses your 4 channel settings
also please share asound.conf and the command line test that works
remapped multichannel on a headless pi is pretty far removed from most setups … i don’t have anything like this here for testing, but willing to help if you can provide more details
I can absolutely try to get you logs and review settings.
I’m a bit removed from my working alsa settings and will need to backtrack and review some chatlogs, I’ve spent numerous hours playing around with pulseaudio. But your request implies an expectation that a default output from plexamp is expected to use the same asound.conf settings that are proven to output to my settings from the command line test. Is that correct and the recommended path to pursue what I’m trying to do?
With that configuration, I can run the following command:
speaker-test -D quad -c 6 -t wav -r 48000
Upon running that command, it cycles a test that says
front left - out the left output of the first jack
front center - out both outputs of the first jack
front right - out the right output of the first jack
rear right - out the right output of the second jack
rear left - out the left output of the second jack
LFE - silence
as i understand it, headless sees and can use direct alsa hardware devices (hw:x,y), the alsa “default” device (which in your case can point to some virtual thing specified in asound.conf or ~/.asoundrc), or other sound servers like pulseaudio if they’re present
i have successfully used a virtual device defined/named as alsa “default” with headless, tho it was a simple case of just routing thru the plughw plugin … but yes this seems like the approach most likely to work
will take a look at the logs/config/etc and see if i can try a similar setup here (but with remapping to 2 channels since that’s all i have) … will post any updates later
having different mix of issues here, some probably related to using a 2 channel dac … but when running speaker-test i’m hearing different output when playing to -D stereo (quad in your case) vs -D default … i suspect the “plug” plugin (used by default) is not always behaving … will try more later
This morning I cleared out the logs, did a reboot, and a test of a 5.1 playback, so we can have a log that is short and specific. Not sure if this offers any value or not. Plexamp.log (97.5 KB)
Ok - with help here of what should be expected from the default app, from Elan of how it should work, and the new log, AI was able to come up with this asound.conf file
pcm.!default {
type plug
slave {
pcm “quad”
channels 4 # Explicitly set to 4 channels
}
}
pcm.quad {
type route
slave {
pcm “hw:0,0”
channels 4 # Change to 4 channels to match desired output
}
ttable {
0.0 1.0 # FL to FL (first jack, left)
1.1 1.0 # FR to FR (first jack, right)
4.0 0.707 # RL to FL (0.707 gain)
4.1 0.707 # RL to FR (0.707 gain)
2.2 1.0 # Center to RL (second jack, left)
3.3 1.0 # LFE to RR (second jack, right)
5.0 0.0 # RR to FL (muted)
5.1 0.0 # RR to FR (muted)
5.2 0.0 # RR to RL (muted)
5.3 0.0 # RR to RR (muted)
}
}
ctl.!default {
type hw
card 0
}
Which seems to be working.
I’m all good at the moment - but time to stress test.
May have spoken too soon - I think this is getting the rears through, but the center is being dropped. Progress, but still not quite there. Also - it seems to work with 48kHz, but when testing on a 96kHz file, it stops to buffer periodically. So those 2 issues need to be addressed. Will keep working, but please advise of any suggestions you have to address buffering issues.
It’s confirmed - this new configuration, while it fixes the back channels, results in center being completely dropped, instead of routed to a phantom center in the fronts. I don’t understand why, my speaker-test gives me a phantom center, but whatever route plexamp is using is just discarding it. And AI is back to giving BS explanations, and recommending changes that result in fronts only, no rears, so I’m completely stuck again. With this situation, just about all 5.1 mixes are turned into karaoke tracks, which would force me to sing in the car on all trips. And trust me, no one wants that.
However - one quirk - the linux speaker-test drops the phantom center, but the plexamp output has it. No karaoke, no need to expose anyone to my singing.