There are only stereo and 5.1 output modes supported natively on this sound card, but with this config more modes like 2.1, 4.0, 4.1 and 5.0 are now exposed. Also profiles list is cleaner now with all profiles explicitly specified. Last thing is removed support for microphone on Linux kernels older than 4.3-rc1, which shouldn't be an issue with future version of PulseAudio likely be installed on newer kernels anyway. Signed-off-by: Nazar Mokrynskyi <nazar at mokrynskyi.com> --- .../profile-sets/sb-omni-surround-5.1.conf | 90 +++++++++++++++---- 1 file changed, 72 insertions(+), 18 deletions(-) diff --git a/src/modules/alsa/mixer/profile-sets/sb-omni-surround-5.1.conf b/src/modules/alsa/mixer/profile-sets/sb-omni-surround-5.1.conf index d5922da7..11985bb3 100644 --- a/src/modules/alsa/mixer/profile-sets/sb-omni-surround-5.1.conf +++ b/src/modules/alsa/mixer/profile-sets/sb-omni-surround-5.1.conf @@ -15,44 +15,98 @@ ; Creative Sound Blaster Omni Surround 5.1 ; -; This sound card have Mic/Line in at hw:%f,1,0 on Linux prior to 4.3-rc1, -; but starting from Linux 4.3-rc1 Mic/Line is at hw:%f,0,0 -; This config supports both cases. -; Also by default there are some non-existing (physically) inputs -; and outputs that are not present here. -; And finally officially supported modes are stereo and 5.1 + stereo S/PDIF, -; so only these modes included. +; This config supports Linux 4.3-rc1+. +; By default there are some non-existing (physically) inputs and outputs that +; are not present in this config. +; Also in addition to natively supported modes (such as stereo, 5.1 and stereo +; S/PDIF) following useful output modes are added: 2.1, 4.0, 4.1 and 5.0. +; +; NOTE: in 2.1 and 4.1 physical LFE output will be different than in 5.1 mode. ; ; See default.conf for an explanation on the directives used here. [General] -auto-profiles = yes +auto-profiles = no + +[Mapping analog-stereo-input] +device-strings = hw:%f +channel-map = left,right +paths-input = analog-input-mic analog-input-linein +direction = input [Mapping analog-stereo-output] device-strings = front:%f channel-map = left,right paths-output = analog-output -priority = 10 direction = output -; Linux 4.2.x- have microphone input as device 1 -; While Linux 4.3-rc1+ have microphone input as device 0 -[Mapping analog-stereo-input] -device-strings = hw:%f hw:%f,1,0 -paths-input = analog-input-mic analog-input-linein -channel-map = left,right -direction = input +[Mapping analog-surround-21] +device-strings = surround51:%f +channel-map = front-left,front-right,lfe +paths-output = analog-output +direction = output + +[Mapping analog-surround-40] +device-strings = surround51:%f +channel-map = front-left,front-right,rear-left,rear-right +paths-output = analog-output +direction = output + +[Mapping analog-surround-41] +device-strings = surround51:%f +channel-map = front-left,front-right,rear-left,rear-right,lfe +paths-output = analog-output +direction = output + +[Mapping analog-surround-50] +device-strings = surround51:%f +channel-map = front-left,front-right,rear-left,rear-right,front-center +paths-output = analog-output +direction = output [Mapping analog-surround-51] device-strings = surround51:%f channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe paths-output = analog-output -priority = 9 direction = output [Mapping iec958-stereo] device-strings = iec958:%f channel-map = left,right paths-output = iec958-stereo-output -priority = 5 direction = output + +[Profile output:analog-stereo-output+input:analog-stereo-input] +output-mappings = analog-stereo-output +input-mappings = analog-stereo-input +priority = 7 + +[Profile output:analog-surround-21+input:analog-stereo-input] +output-mappings = analog-surround-21 +input-mappings = analog-stereo-input +priority = 6 + +[Profile output:analog-surround-40+input:analog-stereo-input] +output-mappings = analog-surround-40 +input-mappings = analog-stereo-input +priority = 5 + +[Profile output:analog-surround-41+input:analog-stereo-input] +output-mappings = analog-surround-41 +input-mappings = analog-stereo-input +priority = 4 + +[Profile output:analog-surround-50+input:analog-stereo-input] +output-mappings = analog-surround-50 +input-mappings = analog-stereo-input +priority = 3 + +[Profile output:analog-surround-51+input:analog-stereo-input] +output-mappings = analog-surround-51 +input-mappings = analog-stereo-input +priority = 2 + +[Profile output:iec958-stereo+input:analog-stereo-input] +output-mappings = iec958-stereo +input-mappings = analog-stereo-input +priority = 1 -- 2.17.0