surround mapping works fine when run by aplay, but XBMC seems to ignore .asoundrc

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
KeithZG Offline
Junior Member
Posts: 28
Joined: Feb 2009
Reputation: 0
Post: #1
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:

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
}

XBMC on a barebones (K)Ubuntu 10.04
....on a PIII 600mHz with a GeForce 8400GS 512mb PCI, yes my HTPC can play hi-def videos despite being mostly manufactured in 1999.
(This post was last modified: 2012-05-09 07:50 by KeithZG.)
find quote
drivesoslow Offline
Fan
Posts: 460
Joined: Aug 2008
Reputation: 4
Post: #2
If you have pulse audio installed remove it

Also make sure XBMC is using the correct device
(This post was last modified: 2012-05-09 16:58 by drivesoslow.)
find quote
KeithZG Offline
Junior Member
Posts: 28
Joined: Feb 2009
Reputation: 0
Post: #3
(2012-05-09 16:58)drivesoslow Wrote:  If you have pulse audio installed remove it

Also make sure XBMC is using the correct device

Oh believe me, I've kept this install as minimal as possible, although it has definitely gotten far better from the days when distros were shipping it against the intentions of the creator I don't have pulseaudio installed (libpulse0, yes, since xbmc depends on it, but pulseaudio no).

There's a good half-dozen devices that XBMC thinks exist since the upgrade to Eden, but none of them work (I mean, seriously, why would it think my SoundBlaster from the 90's has HDMI out?). "Default" and my custom .asoundrc-created devices like the one listed above output sound, but literally no other devices listed do.

XBMC on a barebones (K)Ubuntu 10.04
....on a PIII 600mHz with a GeForce 8400GS 512mb PCI, yes my HTPC can play hi-def videos despite being mostly manufactured in 1999.
find quote
gnif Offline
Team-XBMC Developer
Posts: 442
Joined: Feb 2008
Reputation: 34
Location: Australia, Katoomba
Post: #4
Please try with the latest nightly build that contains the new AudioEngine. Your asound.conf will be ignored completely as AE performs everything and more inside XBMC now (including upmix if you enable it)

I am not scared of SVN - Cutting my hands open on the bleeding edge.
find quote