[pulseaudio-discuss] [PATCH v2] alsa: Add extra HDMI mappings

Alexander E. Patrakov patrakov at gmail.com
Fri Aug 1 01:37:25 PDT 2014


Remove extra-hdmi.conf, as the performance reasons behind it are invalid
Add 7.1 profiles
Add extra HDMI devices, for a total of 8
Add DTS-encoded profiles (they need dcaenc from git)

Signed-off-by: Alexander E. Patrakov <patrakov at gmail.com>
---
v2: actually ship the extra HDMI paths using Makefile.am

 src/Makefile.am                                    |   7 +-
 src/modules/alsa/mixer/paths/hdmi-output-4.conf    |  10 +
 src/modules/alsa/mixer/paths/hdmi-output-5.conf    |  10 +
 src/modules/alsa/mixer/paths/hdmi-output-6.conf    |  10 +
 src/modules/alsa/mixer/paths/hdmi-output-7.conf    |  10 +
 .../alsa/mixer/profile-sets/90-pulseaudio.rules    |   4 -
 src/modules/alsa/mixer/profile-sets/default.conf   | 249 +++++++++++++++++++++
 .../alsa/mixer/profile-sets/extra-hdmi.conf        | 171 --------------
 .../profile-sets/force-speaker-and-int-mic.conf    |  25 +++
 .../alsa/mixer/profile-sets/force-speaker.conf     |  25 +++
 10 files changed, 344 insertions(+), 177 deletions(-)
 create mode 100644 src/modules/alsa/mixer/paths/hdmi-output-4.conf
 create mode 100644 src/modules/alsa/mixer/paths/hdmi-output-5.conf
 create mode 100644 src/modules/alsa/mixer/paths/hdmi-output-6.conf
 create mode 100644 src/modules/alsa/mixer/paths/hdmi-output-7.conf
 delete mode 100644 src/modules/alsa/mixer/profile-sets/extra-hdmi.conf

diff --git a/src/Makefile.am b/src/Makefile.am
index 44d9050..5924bd8 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1205,7 +1205,6 @@ modlibexec_LTLIBRARIES += \
 
 dist_alsaprofilesets_DATA = \
 		modules/alsa/mixer/profile-sets/default.conf \
-		modules/alsa/mixer/profile-sets/extra-hdmi.conf \
 		modules/alsa/mixer/profile-sets/force-speaker.conf \
 		modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf \
 		modules/alsa/mixer/profile-sets/maudio-fasttrack-pro.conf \
@@ -1254,7 +1253,11 @@ dist_alsapaths_DATA = \
 		modules/alsa/mixer/paths/hdmi-output-0.conf \
 		modules/alsa/mixer/paths/hdmi-output-1.conf \
 		modules/alsa/mixer/paths/hdmi-output-2.conf \
-		modules/alsa/mixer/paths/hdmi-output-3.conf
+		modules/alsa/mixer/paths/hdmi-output-3.conf \
+		modules/alsa/mixer/paths/hdmi-output-4.conf \
+		modules/alsa/mixer/paths/hdmi-output-5.conf \
+		modules/alsa/mixer/paths/hdmi-output-6.conf \
+		modules/alsa/mixer/paths/hdmi-output-7.conf
 
 endif
 
diff --git a/src/modules/alsa/mixer/paths/hdmi-output-4.conf b/src/modules/alsa/mixer/paths/hdmi-output-4.conf
new file mode 100644
index 0000000..d61ec75
--- /dev/null
+++ b/src/modules/alsa/mixer/paths/hdmi-output-4.conf
@@ -0,0 +1,10 @@
+[General]
+description = HDMI / DisplayPort 5
+priority = 55
+eld-device = 10
+
+[Properties]
+device.icon_name = video-display
+
+[Jack HDMI/DP,pcm=10]
+required = ignore
diff --git a/src/modules/alsa/mixer/paths/hdmi-output-5.conf b/src/modules/alsa/mixer/paths/hdmi-output-5.conf
new file mode 100644
index 0000000..02c15e8
--- /dev/null
+++ b/src/modules/alsa/mixer/paths/hdmi-output-5.conf
@@ -0,0 +1,10 @@
+[General]
+description = HDMI / DisplayPort 6
+priority = 54
+eld-device = 11
+
+[Properties]
+device.icon_name = video-display
+
+[Jack HDMI/DP,pcm=11]
+required = ignore
diff --git a/src/modules/alsa/mixer/paths/hdmi-output-6.conf b/src/modules/alsa/mixer/paths/hdmi-output-6.conf
new file mode 100644
index 0000000..188a1ad
--- /dev/null
+++ b/src/modules/alsa/mixer/paths/hdmi-output-6.conf
@@ -0,0 +1,10 @@
+[General]
+description = HDMI / DisplayPort 7
+priority = 53
+eld-device = 12
+
+[Properties]
+device.icon_name = video-display
+
+[Jack HDMI/DP,pcm=12]
+required = ignore
diff --git a/src/modules/alsa/mixer/paths/hdmi-output-7.conf b/src/modules/alsa/mixer/paths/hdmi-output-7.conf
new file mode 100644
index 0000000..80f4e37
--- /dev/null
+++ b/src/modules/alsa/mixer/paths/hdmi-output-7.conf
@@ -0,0 +1,10 @@
+[General]
+description = HDMI / DisplayPort 8
+priority = 52
+eld-device = 13
+
+[Properties]
+device.icon_name = video-display
+
+[Jack HDMI/DP,pcm=13]
+required = ignore
diff --git a/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules b/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules
index 560ff1c..b34b90b 100644
--- a/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules
+++ b/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules
@@ -23,10 +23,6 @@ SUBSYSTEMS=="usb", GOTO="pulseaudio_check_usb"
 
 SUBSYSTEMS=="platform", DRIVERS=="thinkpad_acpi", ENV{PULSE_IGNORE}="1"
 
-# NVidia and Intel HDAs often have more than one HDMI codec/port on the same card
-ATTRS{vendor}=="0x10de", ENV{PULSE_PROFILE_SET}="extra-hdmi.conf"
-ATTRS{vendor}=="0x8086", ENV{PULSE_PROFILE_SET}="extra-hdmi.conf"
-
 # Force enable speaker and internal mic for some laptops
 # This should only be necessary for kernels 3.3, 3.4 and 3.5 (as they are lacking the phantom jack kctls).
 # Acer AOA150
diff --git a/src/modules/alsa/mixer/profile-sets/default.conf b/src/modules/alsa/mixer/profile-sets/default.conf
index 83cb425..917510d 100644
--- a/src/modules/alsa/mixer/profile-sets/default.conf
+++ b/src/modules/alsa/mixer/profile-sets/default.conf
@@ -193,11 +193,260 @@ priority = 3
 direction = output
 
 [Mapping hdmi-stereo]
+description = Digital Stereo (HDMI)
 device-strings = hdmi:%f
+paths-output = hdmi-output-0
 channel-map = left,right
 priority = 4
 direction = output
+
+[Mapping hdmi-surround]
+description = Digital Surround 5.1 (HDMI)
+device-strings = hdmi:%f
+paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-surround71]
+description = Digital Surround 7.1 (HDMI)
+device-strings = hdmi:%f
 paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 3
+direction = output
+
+[Mapping hdmi-dts-surround]
+description = Digital Surround 5.1 (HDMI/DTS)
+device-strings = dcahdmi:%f
+paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-stereo-extra1]
+description = Digital Stereo (HDMI 2)
+device-strings = hdmi:%f,1
+paths-output = hdmi-output-1
+channel-map = left,right
+priority = 2
+direction = output
+
+[Mapping hdmi-surround-extra1]
+description = Digital Surround 5.1 (HDMI 2)
+device-strings = hdmi:%f,1
+paths-output = hdmi-output-1
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-surround71-extra1]
+description = Digital Surround 7.1 (HDMI 2)
+device-strings = hdmi:%f,1
+paths-output = hdmi-output-1
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 1
+direction = output
+
+[Mapping hdmi-dts-surround-extra1]
+description = Digital Surround 5.1 (HDMI 2/DTS)
+device-strings = dcahdmi:%f,1
+paths-output = hdmi-output-1
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-stereo-extra2]
+description = Digital Stereo (HDMI 3)
+device-strings = hdmi:%f,2
+paths-output = hdmi-output-2
+channel-map = left,right
+priority = 2
+direction = output
+
+[Mapping hdmi-surround-extra2]
+description = Digital Surround 5.1 (HDMI 3)
+device-strings = hdmi:%f,2
+paths-output = hdmi-output-2
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-surround71-extra2]
+description = Digital Surround 7.1 (HDMI 3)
+device-strings = hdmi:%f,2
+paths-output = hdmi-output-2
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 1
+direction = output
+
+[Mapping hdmi-dts-surround-extra2]
+description = Digital Surround 5.1 (HDMI 3/DTS)
+device-strings = dcahdmi:%f,2
+paths-output = hdmi-output-2
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-stereo-extra3]
+description = Digital Stereo (HDMI 4)
+device-strings = hdmi:%f,3
+paths-output = hdmi-output-3
+channel-map = left,right
+priority = 2
+direction = output
+
+[Mapping hdmi-surround-extra3]
+description = Digital Surround 5.1 (HDMI 4)
+device-strings = hdmi:%f,3
+paths-output = hdmi-output-3
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-surround71-extra3]
+description = Digital Surround 7.1 (HDMI 4)
+device-strings = hdmi:%f,3
+paths-output = hdmi-output-3
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 1
+direction = output
+
+[Mapping hdmi-dts-surround-extra3]
+description = Digital Surround 5.1 (HDMI 4/DTS)
+device-strings = dcahdmi:%f,3
+paths-output = hdmi-output-3
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-stereo-extra4]
+description = Digital Stereo (HDMI 5)
+device-strings = hdmi:%f,4
+paths-output = hdmi-output-4
+channel-map = left,right
+priority = 2
+direction = output
+
+[Mapping hdmi-surround-extra4]
+description = Digital Surround 5.1 (HDMI 5)
+device-strings = hdmi:%f,4
+paths-output = hdmi-output-4
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-surround71-extra4]
+description = Digital Surround 7.1 (HDMI 5)
+device-strings = hdmi:%f,4
+paths-output = hdmi-output-4
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 1
+direction = output
+
+[Mapping hdmi-dts-surround-extra4]
+description = Digital Surround 5.1 (HDMI 5/DTS)
+device-strings = dcahdmi:%f,4
+paths-output = hdmi-output-4
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-stereo-extra5]
+description = Digital Stereo (HDMI 6)
+device-strings = hdmi:%f,5
+paths-output = hdmi-output-5
+channel-map = left,right
+priority = 2
+direction = output
+
+[Mapping hdmi-surround-extra5]
+description = Digital Surround 5.1 (HDMI 6)
+device-strings = hdmi:%f,5
+paths-output = hdmi-output-5
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-surround71-extra5]
+description = Digital Surround 7.1 (HDMI 6)
+device-strings = hdmi:%f,5
+paths-output = hdmi-output-5
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 1
+direction = output
+
+[Mapping hdmi-dts-surround-extra5]
+description = Digital Surround 5.1 (HDMI 6/DTS)
+device-strings = dcahdmi:%f,5
+paths-output = hdmi-output-5
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-stereo-extra6]
+description = Digital Stereo (HDMI 7)
+device-strings = hdmi:%f,6
+paths-output = hdmi-output-6
+channel-map = left,right
+priority = 2
+direction = output
+
+[Mapping hdmi-surround-extra6]
+description = Digital Surround 5.1 (HDMI 7)
+device-strings = hdmi:%f,6
+paths-output = hdmi-output-6
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-surround71-extra6]
+description = Digital Surround 7.1 (HDMI 7)
+device-strings = hdmi:%f,6
+paths-output = hdmi-output-6
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 1
+direction = output
+
+[Mapping hdmi-dts-surround-extra6]
+description = Digital Surround 5.1 (HDMI 7/DTS)
+device-strings = dcahdmi:%f,6
+paths-output = hdmi-output-6
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-stereo-extra7]
+description = Digital Stereo (HDMI 8)
+device-strings = hdmi:%f,7
+paths-output = hdmi-output-7
+channel-map = left,right
+priority = 2
+direction = output
+
+[Mapping hdmi-surround-extra7]
+description = Digital Surround 5.1 (HDMI 8)
+device-strings = hdmi:%f,7
+paths-output = hdmi-output-7
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
+
+[Mapping hdmi-surround71-extra7]
+description = Digital Surround 7.1 (HDMI 8)
+device-strings = hdmi:%f,7
+paths-output = hdmi-output-7
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 1
+direction = output
+
+[Mapping hdmi-dts-surround-extra7]
+description = Digital Surround 5.1 (HDMI 8/DTS)
+device-strings = dcahdmi:%f,7
+paths-output = hdmi-output-7
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
 
 ; An example for defining multiple-sink profiles
 #[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
diff --git a/src/modules/alsa/mixer/profile-sets/extra-hdmi.conf b/src/modules/alsa/mixer/profile-sets/extra-hdmi.conf
deleted file mode 100644
index b1af2fa..0000000
--- a/src/modules/alsa/mixer/profile-sets/extra-hdmi.conf
+++ /dev/null
@@ -1,171 +0,0 @@
-# This file is part of PulseAudio.
-#
-# PulseAudio is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as
-# published by the Free Software Foundation; either version 2.1 of the
-# License, or (at your option) any later version.
-#
-# PulseAudio is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public License
-# along with PulseAudio; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
-
-; This is a profile for Nvidia and Intel cards - some cards have four HDMI codecs,
-; and which ones are working seems to vary a lot between GPU boards. In addition,
-; Nvidia and Intel make southbridges as well, so we need to keep the existing
-; analog profiles.
-; (And by not adding all these extra profiles to default.conf, we make sure
-; there is no performance hit for non-Nvidia/Intel cards.)
-
-[General]
-auto-profiles = yes
-
-[Mapping analog-mono]
-device-strings = hw:%f
-channel-map = mono
-paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono
-paths-input = analog-input-front-mic analog-input-rear-mic analog-input-internal-mic analog-input-dock-mic analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line analog-input-headset-mic
-priority = 1
-
-[Mapping analog-stereo]
-device-strings = front:%f hw:%f
-channel-map = left,right
-paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2
-paths-input = analog-input-front-mic analog-input-rear-mic analog-input-internal-mic analog-input-dock-mic analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line analog-input-headphone-mic analog-input-headset-mic
-priority = 10
-
-[Mapping analog-surround-21]
-device-strings = surround21:%f
-channel-map = front-left,front-right,lfe
-paths-output = analog-output analog-output-speaker analog-output-desktop-speaker
-priority = 8
-direction = output
-
-[Mapping analog-surround-40]
-device-strings = surround40:%f
-channel-map = front-left,front-right,rear-left,rear-right
-paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-desktop-speaker
-priority = 7
-direction = output
-
-[Mapping analog-surround-41]
-device-strings = surround41:%f
-channel-map = front-left,front-right,rear-left,rear-right,lfe
-paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-desktop-speaker
-priority = 8
-direction = output
-
-[Mapping analog-surround-50]
-device-strings = surround50:%f
-channel-map = front-left,front-right,rear-left,rear-right,front-center
-paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-desktop-speaker
-priority = 7
-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 analog-output-lineout analog-output-speaker analog-output-desktop-speaker
-priority = 8
-direction = output
-
-[Mapping analog-surround-71]
-device-strings = surround71:%f
-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
-description = Analog Surround 7.1
-paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-desktop-speaker
-priority = 7
-direction = output
-
-[Mapping iec958-stereo]
-device-strings = iec958:%f
-channel-map = left,right
-paths-input = iec958-stereo-input
-paths-output = iec958-stereo-output
-priority = 5
-
-[Mapping iec958-ac3-surround-40]
-device-strings = a52:%f
-channel-map = front-left,front-right,rear-left,rear-right
-priority = 2
-direction = output
-
-[Mapping iec958-ac3-surround-51]
-device-strings = a52:%f
-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
-priority = 3
-direction = output
-
-[Mapping iec958-dts-surround-51]
-device-strings = dca:%f
-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
-priority = 3
-direction = output
-
-[Mapping hdmi-stereo]
-device-strings = hdmi:%f
-description = Digital Stereo (HDMI)
-paths-output = hdmi-output-0
-channel-map = left,right
-priority = 4
-direction = output
-
-[Mapping hdmi-surround]
-description = Digital Surround 5.1 (HDMI)
-device-strings = hdmi:%f
-paths-output = hdmi-output-0
-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
-priority = 3
-direction = output
-
-[Mapping hdmi-stereo-extra1]
-description = Digital Stereo (HDMI 2)
-device-strings = hdmi:%f,1
-paths-output = hdmi-output-1
-channel-map = left,right
-priority = 2
-direction = output
-
-[Mapping hdmi-surround-extra1]
-description = Digital Surround 5.1 (HDMI 2)
-device-strings = hdmi:%f,1
-paths-output = hdmi-output-1
-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
-priority = 1
-direction = output
-
-[Mapping hdmi-stereo-extra2]
-description = Digital Stereo (HDMI 3)
-device-strings = hdmi:%f,2
-paths-output = hdmi-output-2
-channel-map = left,right
-priority = 2
-direction = output
-
-[Mapping hdmi-surround-extra2]
-description = Digital Surround 5.1 (HDMI 3)
-device-strings = hdmi:%f,2
-paths-output = hdmi-output-2
-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
-priority = 1
-direction = output
-
-[Mapping hdmi-stereo-extra3]
-description = Digital Stereo (HDMI 4)
-device-strings = hdmi:%f,3
-paths-output = hdmi-output-3
-channel-map = left,right
-priority = 2
-direction = output
-
-[Mapping hdmi-surround-extra3]
-description = Digital Surround 5.1 (HDMI 4)
-device-strings = hdmi:%f,3
-paths-output = hdmi-output-3
-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
-priority = 1
-direction = output
diff --git a/src/modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf b/src/modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf
index c6bb6ca..f94a11d 100644
--- a/src/modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf
+++ b/src/modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf
@@ -116,11 +116,36 @@ priority = 3
 direction = output
 
 [Mapping hdmi-stereo]
+description = Digital Stereo (HDMI)
 device-strings = hdmi:%f
+paths-output = hdmi-output-0
 channel-map = left,right
 priority = 4
 direction = output
+
+[Mapping hdmi-surround]
+description = Digital Surround 5.1 (HDMI)
+device-strings = hdmi:%f
+paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-surround71]
+description = Digital Surround 7.1 (HDMI)
+device-strings = hdmi:%f
 paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 3
+direction = output
+
+[Mapping hdmi-dts-surround]
+description = Digital Surround 5.1 (HDMI/DTS)
+device-strings = dcahdmi:%f
+paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
 
 ; An example for defining multiple-sink profiles
 #[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
diff --git a/src/modules/alsa/mixer/profile-sets/force-speaker.conf b/src/modules/alsa/mixer/profile-sets/force-speaker.conf
index 8acb67c..f3b7cb0 100644
--- a/src/modules/alsa/mixer/profile-sets/force-speaker.conf
+++ b/src/modules/alsa/mixer/profile-sets/force-speaker.conf
@@ -115,11 +115,36 @@ priority = 3
 direction = output
 
 [Mapping hdmi-stereo]
+description = Digital Stereo (HDMI)
 device-strings = hdmi:%f
+paths-output = hdmi-output-0
 channel-map = left,right
 priority = 4
 direction = output
+
+[Mapping hdmi-surround]
+description = Digital Surround 5.1 (HDMI)
+device-strings = hdmi:%f
+paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-surround71]
+description = Digital Surround 7.1 (HDMI)
+device-strings = hdmi:%f
 paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+priority = 3
+direction = output
+
+[Mapping hdmi-dts-surround]
+description = Digital Surround 5.1 (HDMI/DTS)
+device-strings = dcahdmi:%f
+paths-output = hdmi-output-0
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 1
+direction = output
 
 ; An example for defining multiple-sink profiles
 #[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
-- 
2.0.1



More information about the pulseaudio-discuss mailing list