2012-05-09, 07:47
I'm having a bit of a weird problem; actually this problem may have been there for a while, as I seem to remember something along these lines back on the upgrade to Dharma, but shortly thereafter I lost my rear speakers so never bothered again. I have a pair now, though, so I've been trying to set up a surround, err, setup (4.0, but with some decent bass response in the front speakers so originally in Camelot I had the LFE channel sent to the front speakers too).
My problem is that although the .asoundrc device I have set up works fine, XBMC (despite being set to that device) ignores the mappings and just does its own thing regardless (based somewhat on the number of channels I set it to), and I'm unsure why this isn't working. It's sending the channels to entirely different speakers than it does when I run test files through aplay. Here's what XBMC is doing for me based on channel settings (to reiterate, it's doing this regardless of if I set it to one of my custom remapped devices or not).
3.1: FL to FL, FR to FR, C to FL, LFE to FR
4.0: FL to FL, FR to FR, C to RL, LFE to RR, RL to FL&FR, RR to FL&FR
4.1: FL to FL, FR to FR, C to RL, LFE to RR, RL to FL&FR, RR missing
5.0: FL to FL, FR to FR, C to RL, LFE to RR, RL missing, RR to FL&FR
5.1: FL to FL, FR to FR, C to RL, LFE to RR, RL missing, RR missing
And yeah, I've tried plugging the cables into different outputs; they're in the only two that actually output anything in XBMC.
Is there a way to get XBMC to ignore the channels setting and instead respect my .asoundrc mappings? Alternatively, is there a way to change the mappings beyond merely the choice of 5.1, 4.0, etc? (which I'm sure is a great system for people who just want to change a setting or two and be done with it, but seems to be more hindering than helping me, alas).
I'm running all this on a minimal Ubuntu 10.04.1 installation, by the way (loading Eden/11.0 installed from the PPA directly as my default X11 session). The soundcard being used is an old SoundBlaster Live! 5.1, as this computer is from 1999, heh (don't worry, it plays Blu-Ray rips just fine, other than this annoyance with the sound).
P.S. the .asoundrc config that worked back in the days of Camelot went basically as such:
My problem is that although the .asoundrc device I have set up works fine, XBMC (despite being set to that device) ignores the mappings and just does its own thing regardless (based somewhat on the number of channels I set it to), and I'm unsure why this isn't working. It's sending the channels to entirely different speakers than it does when I run test files through aplay. Here's what XBMC is doing for me based on channel settings (to reiterate, it's doing this regardless of if I set it to one of my custom remapped devices or not).
3.1: FL to FL, FR to FR, C to FL, LFE to FR
4.0: FL to FL, FR to FR, C to RL, LFE to RR, RL to FL&FR, RR to FL&FR
4.1: FL to FL, FR to FR, C to RL, LFE to RR, RL to FL&FR, RR missing
5.0: FL to FL, FR to FR, C to RL, LFE to RR, RL missing, RR to FL&FR
5.1: FL to FL, FR to FR, C to RL, LFE to RR, RL missing, RR missing
And yeah, I've tried plugging the cables into different outputs; they're in the only two that actually output anything in XBMC.
Is there a way to get XBMC to ignore the channels setting and instead respect my .asoundrc mappings? Alternatively, is there a way to change the mappings beyond merely the choice of 5.1, 4.0, etc? (which I'm sure is a great system for people who just want to change a setting or two and be done with it, but seems to be more hindering than helping me, alas).
I'm running all this on a minimal Ubuntu 10.04.1 installation, by the way (loading Eden/11.0 installed from the PPA directly as my default X11 session). The soundcard being used is an old SoundBlaster Live! 5.1, as this computer is from 1999, heh (don't worry, it plays Blu-Ray rips just fine, other than this annoyance with the sound).
P.S. the .asoundrc config that worked back in the days of Camelot went basically as such:
Code:
pcm.!default {
type plug
slave.pcm surround40
slave.channels 4
route_policy duplicate
}
# downmixing to 4 channels
pcm.xbmc_51to4 {
@args.0 SLAVE
@args.SLAVE {
type string
default "default"
}
type plug
slave.pcm $SLAVE
slave.channels 4
route_policy duplicate
ttable.0.0 1 # front left speaker
ttable.1.1 1 # front right speaker
ttable.2.2 1 # rear left speaker
ttable.3.3 1 # rear right speaker
ttable.4.0 0.6 # center to left mapping
ttable.4.1 0.6 # center to right mapping
ttable.5.0 0.25 # LFE (base) to left mapping
ttable.5.1 0.25 # LFE to right mapping
ttable.5.2 0.1 # LFE (base) to rear left mapping
ttable.5.3 0.1 # LFE to rear right mapping
}