[mythtv-users] 7+1 audio with alsa, xine and 5+1 DVDs

Michael T. Dean mtdean at thirdcontact.com
Mon Jun 6 05:41:44 UTC 2005

Franco wrote:

>>I'm understanding this to mean you're going directly from the sound card 
>>to the speakers with no A/V receiver in between.
>Ehmm... yes, they are active speakers sfecifically designed
>for that soundcard. There is a remote controlled amplifier embedded 
>in the subwoofer and seven cables going from it to the speakers.
This plus below makes it sound like the Creative GigaWorks?

>I understood your point in leaving 5.1 as is (thank you again for the
>explaination), however, experimenting may be fun:
Always is, and I, for one, would be interested in hearing about your 
experience with it and how you feel it affects the quality of the sound.

>>You could "easily"* do this using ALSA's .asoundrc to specify a device 
>>set up xine to use this ALSA device for 5.1 soundtracks.
>I'll try again to study alsa documentation (thank you for the link).
>Actually all my previous attempts failed and I was hoping somebody
>would give me some code to copy & paste ;-)
I'd need more details on your sound card, etc. to give you (an untested) 
copy-and-paste one, but where's the fun in that...  You'll enjoy it much 
more if you know how to do it. :)

Check out the comment in /usr/share/alsa/pcm/surround71.conf to find out 
how the audio source channel numbers (first column in transfer table 
(ttable) entry) map to speaker positions (although I'm pretty sure the 
last two are 6 and 7 instead of 7 and 8).  Check out 
/usr/share/alsa/cards/<your card name>.conf to see if your card uses a 
different mapping (i.e look at the <card name>.pcm.surround71.0 and see 
if there's a ttable)--if so, use that as a basis and remap the last two 
channels as appropriate.  The ttable entries are basically, 
"ttable.<from>.<to> <volume>".

For example, assuming your card uses the same mappings as the audio 
source (i.e. doesn't specify a ttable), you'd need something like this 
(this is completely untested, so no guarantees):

pcm.ch51to71 {
  type route
  slave.pcm surround71
  slave.channels 8
  ttable.0.0 1
  ttable.1.1 1
  ttable.2.2 1
  ttable.3.3 1
  ttable.4.4 1
  ttable.5.5 1
  ttable.2.6 1
  ttable.3.7 1

You could also try sending both the front and rear channels to the side 
channels--i.e. change the mappings for channels 6 and 7 (last two lines) to:

ttable.0.6 0.25
ttable.2.6 0.75
ttable.1.7 0.25
ttable.3.7 0.75

but I would expect that to be worse than just copying the rear 
channels.  (I'm sending the front channels at 25% volume and the rear at 
75% volume.  You may like it better at 0.5/0.5, but I was afraid that 
would completely wash out the position information.)

It's also possible to copy only the rear channels at 75% volume instead 
of 100% (i.e. replace the 1 with 0.75).  That might help to prevent the 
side channels from overwhelming the surround effects.

Make sure you set xine to use this ALSA device for 5.1-ch output and 
then use 5.1-channel output.

Please let me know how (if :) this works for you and what you think of 
the different configs compared to the untouched 5.1 output and the 
hardware-upmixed output you describe below.

>>requirements for THX certification.
>Actually, I've spent lot of time on THX too.
>My soundcard and speakers are both THX certified (I discovered them
>following the links on THX site). There is an hardware upmix function
>on the amplifier (5.1 to 7.1 and 6.1 to 7.1) as well a software
>upmix funcion (only available with the provided windoze software).
>As this equipment (hw + sw) is THX certified and published on THX site,
>it doesn't seem that upmixing isn't compatible with THX quality...
I'd be really surprised if the system was still operating in a 
"THX-certified" mode after upmixing.  Then again, I'm not a THX tech, so 
what do I know?

Anyway, there are two ways to upmix.  The way I mentioned (copying 
channels to fill the void) is definitely "the wrong way."  
Unfortunately, TTBOMK, it's the only possible way to upmix on Linux 
systems (at least using free/open source 
drivers--proprietary/binary-only drivers may offer additional 
capability)--but on the bright side, it requires virtually no additional 
resources.  The "right way" is to derive the audio information that's 
missing by using information from the existing channels (i.e. the 
calculations I mentioned in the last post)--which requires significant 
processing.  When using hardware-based upmix functionality, this is 
exactly what's happening.  If you really have a pure software upmix, 
it's probably just copying; however, it's quite possible that the 
"software" upmix you mentioned is actually using the sound card's DSP to 
do the calculations (this is what happens with the Creative CMSS/upmix 
functionality when upmixing anything more than 2-channel 
audio)--possibly under direction of the software.

Regardless, my preference is to stick with the original soundtrack.  The 
upmix--even done "the right way"--to me is reminiscent of the "cinema 
studio," "concert hall," "jazz club," "stadium," "church," etc. sound 
fields offered by many audio receivers.  They're cool for about 2 
seconds, but they're not what the producer intended...  But, hey, that's 
just my opinion.

>As to the requirements for THX certification, I've asked them a lot
>but what I got is: nothing. It seems the specifications are top secret,
>that is, are not open.  Unless something has changed in the while,
>they won't tell you. If you want to build a THX compliant room, you must 
>pay them and have their technicians come to you, check your room
>and tell you what you have to do without releasing the specs.
Exactly.  I was talking more about the unofficial information that helps 
you prepare for bringing the tech into the house (i.e. figuring out what 
types of things you'll have to deal with and how much it's going to 
cost).  But, as you've looked into it, you already know what you would 

>Back to the initial point, I _can_ operate the hardware THX-certified
>5.1 -> 7.1 upmix, but as long as I "zap" between Myth menus, I have
>to continuously walk around the room, check if some speaker is not
>working, and operate the upmix accordingly... not very user-friendly
>hence I am the only person in my house able to operate the system...
>would be better if it happened automatically.
Yeah.  That's never good.

>Also, another point: the volume level in the room changes a lot
>depending on the number of speakers that are working.
>i.e. if only 2 speakers are woring you raise the volume quite a lot.
>Then you switch to something using 7 speakers and suddenly your
>ears get hurt by a too high volume in the room... you should always
>be able to predict when this happens and lower the volume before
>changing Myth function... again, not very user friendly.
>If all the speakers are always working, you set the volume just once
>and then you can switch between myth menus without fear... :-)
I understand.  There's enough volume difference between captures and 
videos and music without adding missing speakers to the mix...


More information about the mythtv-users mailing list