14.05.2015, 09:26, Raymond Yau kirjoitti:
I started MS Windows and without externals speakers plugged in I
could test
5.1 configuration and it seemed that sound was coming from
different directions.
What I managed to determine: I've got 3 stacks: 1 ST: Headphone, Line-out (FL and FR), SPDIF 2 ST: Microphone, Line-out (CLFE) 3 ST: Line-in, Line-out (RL and RR)
I've got 5 responsive output pins PIN 0x14: Internal FL FR PIN 0x15: External FL FR PIN 0x17: Internal LFE PIN 0x18: External CLFE PIN 0x1a: External RL RR
How can we make it work with these information?
speaker-test -Dhw:0,0 -c6 -t wav
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/plain/Documenta...
[1]
seem chnmap type _FIXED , _VAR and _PAIRED does not fit when LFE and FC can be swapped for internal speaker and external speaker
Right, you can't do it with a single map of one of those types.
http://git.alsa-project.org/?p=alsa-utils.git&a=search&h=HEAD&st...
do chmap of internal speakers need {FL FR RL RR LFE NA} ?
From above it looks like there are 3 internal speakers, so I guess e.g.
{FL FR LFE NA} might be in order (or just {FL FR LFE} if 3-channel playback is supported).
http://git.alsa-project.org/?p=alsa-lib.git&a=search&h=HEAD&st=c...
as set_chmap() still not yet implemented in pcm_route.c
do speaker-test need to specify channel map when using those odd number channels ?
speaker-test -D surround21 -c3 -t wav speaker-test -D surround41 -c5 -t wav -mFL,FR,RL,RR,LFE speaker-test -D surround50 -c5 -t wav
Well, the driver should provide the correct chmap.
http://git.alsa-project.org/?p=alsa-utils.git;a=commitdiff;h=7b14c00b56784f6...
this example seem not working
speaker-test -c2 -t wav -Dplug:front -mFR,FL
You are getting an error? If so, that is expected if the underlying device does not support the wanted channel map.
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pc...
[2]
How do the driver implement channel map when codec has swap center/lfe switch ?
Do chmap contain both {FL FR RL RR FC LFE} and {FL FR RL RR LFE FC} ?
If you want to provide support for userspace doing it both ways, then
yes, you need those two _FIXED maps.
Can chmap contain two _FIXED maps of same number of channels ?
Sure.