[pulseaudio-discuss] problems with 8 Channel Surround Sound

audiossis audiossis at gmail.com
Mon Dec 2 05:33:43 PST 2013


Hello all,

I have a rather peculiar problem that I hope you might help me resolve.
Firstly my setup is rather esoteric and will take some time to explain,
so I'll apologize in advance for the confusing novel I'm about to write.


I have a combined MythvTV back/front end machine that runs in a
dual-seat configuration with two instances of Mythfrontend. This machine
is purely a Mythtv box and nothing else. No "normal" user interaction
occurs on this machine, it doesn't even have any keyboard or mouse.

I should point out that for the most part each seat is totally isolated
from the other. Every aspect of use in either seat is perfect and does
not interfere with the other seat, except for one issue that I will
explain monemtarily.
Because this particular machine is part of a Savant home
automation/control and AV distribution system (which includes a
heterogeneous collection of sink devices with varying capabilities), I
require that:

1> Each seat output audio and video independently of the other and
behave as though the other seat doesn't exist.
2> Each seat must output 8 channel LPCM over HDMI while simultaneously
down-mixing to analogue stereo via the built in intel-hda device.


8 Channel audio over HDMI is working perfectly at the ALSA level.
Similarly the 8 channel to stereo down-mix is also working perfectly at
the ALSA level.
This functionality has been repeatedly tested with variations on the
following commands:

mythtv 8 Channel # sudo -u mythtv0 mplayer -ao
alsa:device=plug=mythtv0analogue -channels 8 -format s16le
./8_Channel_ID.wav
mythtv 8 Channel # sudo -u mythtv0 mplayer -ao
alsa:device=plug=mythtv0digital -channels 8 -format s16le ./8_Channel_ID.wav

and

mythtv 8 Channel # sudo -u mythtv0 speaker-test -Dmythtv0analogue -c8 -twav
mythtv 8 Channel # sudo -u mythtv0 speaker-test -Dmythtv0digital -c8 -twav




The problem occurs when I try to use PA to combine the two ALSA devices
in each seat into one logical aggregate device using the "load-module
module-combine-sink" configuration parameter.
In each seat the logical aggregate device is unique to that seat and is
comprised of hardware outputs, not used by the other seat.

Trying to output sound to this aggregate device in either seat, despite
my best efforts, results in only 6 channels being used at the most.

All the normal 5.1 (6) channel stuff works fine, given correct test
conditions. The channels are mapped properly from Front left (ch 0)
right up to rear-right (ch 5) and I can successfully downmix these
channels, but side-left (ch 6) and side-right (ch 7) always remain
silent. This problem is highly repeatable with commands such as the
following:

mythtv 8 Channel # sudo -u mythtv0 speaker-test -Dmythtv0pulse -c8 -twav
mythtv 8 Channel # sudo -u mythtv0 speaker-test -Dpulse -c8 -twav

and

mythtv 8 Channel # sudo -u mythtv0 mplayer -ao pulse
127.0.0.1:mythtv0analogue -channels 8 -format s16le ./8_Channel_ID.wav
mythtv 8 Channel # sudo -u mythtv0 mplayer -ao pulse 127.0.0.1:mythtv0
-channels 8 -format s16le ./8_Channel_ID.wav
mythtv 8 Channel # sudo -u mythtv0 mplayer -ao pulse 127.0.0.1:pulse
-channels 8 -format s16le ./8_Channel_ID.wav

This is rather confounding as I know that the raw ALSA output devices
and definitions are working perfectly, transporting all 8 channels in
the correct order and at the correct volume.

I have searched the web repeatedly for others with similar issues, but I
have not yet found a solution. I have tried numerous configuration
options and have refined the setup, for the most part, to have only the
features that are absolutely required for the desired functionality. I'm
convinced that this is the result of a channel mapping problem in PA as
the results do vary somewhat depending on the test method in use. Some
test result in only the first three channel being audible others up to 6
but never more than that. I've even tried parec/pacat to try and capture
the raw stream from the various monitor devices in PA, the results were
mixed, but nothing even close to the full 8 channels could be heard at
any time in my recordings, even when played back on different hardware.

Machine details are as follows:

Sabyon/Gentoo
Kernel 3.11.0
Pulseaudio 4.0
alsa-lib 1.0.27.1
alsa-utils 1.0.27.2

Core2Quad at 2.66GHz
4GB Ram
1TB Storage in RAID0
500GB primary disk

00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM
Controller (rev 10)
00:01.0 PCI bridge: Intel Corporation 82G33/G31/P35/P31 Express PCI
Express Root Port (rev 10)
00:1b.0 Audio device: Intel Corporation NM10/ICH7 Family High Definition
Audio Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port
1 (rev 01)
00:1c.1 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port
2 (rev 01)
00:1d.0 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI
Controller #1 (rev 01)
00:1d.1 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI
Controller #2 (rev 01)
00:1d.2 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI
Controller #3 (rev 01)
00:1d.3 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI
Controller #4 (rev 01)
00:1d.7 USB controller: Intel Corporation NM10/ICH7 Family USB2 EHCI
Controller (rev 01)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1)
00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC
Interface Bridge (rev 01)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE
Controller (rev 01)
00:1f.2 IDE interface: Intel Corporation NM10/ICH7 Family SATA
Controller [IDE mode] (rev 01)
00:1f.3 SMBus: Intel Corporation NM10/ICH7 Family SMBus Controller (rev 01)
01:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce
210] (rev a2)
01:00.1 Audio device: NVIDIA Corporation High Definition Audio
Controller (rev a1)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
RTL8111/8168 PCI Express Gigabit Ethernet controller (rev 03)
03:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce
210] (rev a2)
03:00.1 Audio device: NVIDIA Corporation High Definition Audio
Controller (rev a1)
04:00.0 Multimedia video controller: Conexant Systems, Inc.
CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
04:00.1 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI
Video and Audio Decoder [Audio Port] (rev 05)
04:00.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI
Video and Audio Decoder [MPEG Port] (rev 05)
04:01.0 Multimedia video controller: Conexant Systems, Inc.
CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
04:01.1 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI
Video and Audio Decoder [Audio Port] (rev 05)
04:01.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI
Video and Audio Decoder [MPEG Port] (rev 05)


/etc/daemon.conf

*** clip ***
; default-sample-format = s16le
default-sample-rate = 48000
alternate-sample-rate = 48000
default-sample-channels = 16
default-channel-map =
left,right,rear-left,rear-right,center,lfe,side-left,side-right,aux0,aux1,aux2,aux3,aux4,aux5,aux6,aux7
*** clip ***



I can provide far more detail as required, I just don't want to flood
you with too much up front.... ;-)
Any clues?
Thanks in advance, and sorry again for the long post.....



More information about the pulseaudio-discuss mailing list