[pulseaudio-discuss] [PATCH] Add support for SteelSeries Arctis 5 and renamed Arctis 7 files appropriately
Bert Hekman
demontpx at gmail.com
Tue Feb 13 19:12:43 UTC 2018
So this is a follow up to an earlier patch. This one fixes two
problems the earlier patch had: the separate paths allow both outputs
to be selected from the sound configuration screen and configuring
"Com Speaker" as element in the chat output causes the volume to be
set a lot louder.
2018-02-13 20:06 GMT+01:00 Bert Hekman <demontpx at gmail.com>:
> ---
> src/modules/alsa/alsa-mixer.c | 2 ++
> .../paths/steelseries-arctis-5-output-chat.conf | 27 ++++++++++++++++++++++
> .../paths/steelseries-arctis-5-output-game.conf | 27 ++++++++++++++++++++++
> ...-input.conf => steelseries-arctis-7-input.conf} | 0
> ....conf => steelseries-arctis-7-output-mono.conf} | 0
> ...onf => steelseries-arctis-7-output-stereo.conf} | 0
> .../alsa/mixer/profile-sets/90-pulseaudio.rules | 3 ++-
> .../steelseries-arctis-5-usb-audio.conf | 22 ++++++++++++++++++
> ...io.conf => steelseries-arctis-7-usb-audio.conf} | 6 ++---
> 9 files changed, 83 insertions(+), 4 deletions(-)
> create mode 100644 src/modules/alsa/mixer/paths/steelseries-arctis-5-output-chat.conf
> create mode 100644 src/modules/alsa/mixer/paths/steelseries-arctis-5-output-game.conf
> rename src/modules/alsa/mixer/paths/{steelseries-arctis-input.conf => steelseries-arctis-7-input.conf} (100%)
> rename src/modules/alsa/mixer/paths/{steelseries-arctis-output-mono.conf => steelseries-arctis-7-output-mono.conf} (100%)
> rename src/modules/alsa/mixer/paths/{steelseries-arctis-output-stereo.conf => steelseries-arctis-7-output-stereo.conf} (100%)
> create mode 100644 src/modules/alsa/mixer/profile-sets/steelseries-arctis-5-usb-audio.conf
> rename src/modules/alsa/mixer/profile-sets/{steelseries-arctis-usb-audio.conf => steelseries-arctis-7-usb-audio.conf} (91%)
>
> diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
> index 7de1c7de..b8c2bc72 100644
> --- a/src/modules/alsa/alsa-mixer.c
> +++ b/src/modules/alsa/alsa-mixer.c
> @@ -2480,6 +2480,8 @@ static int path_verify(pa_alsa_path *p) {
> { "iec958-passthrough-output", N_("Digital Passthrough (S/PDIF)") },
> { "multichannel-input", N_("Multichannel Input") },
> { "multichannel-output", N_("Multichannel Output") },
> + { "steelseries-arctis-5-output-game", N_("Game Output") },
> + { "steelseries-arctis-5-output-chat", N_("Chat Output") },
> };
>
> pa_alsa_element *e;
> diff --git a/src/modules/alsa/mixer/paths/steelseries-arctis-5-output-chat.conf b/src/modules/alsa/mixer/paths/steelseries-arctis-5-output-chat.conf
> new file mode 100644
> index 00000000..5842bfe8
> --- /dev/null
> +++ b/src/modules/alsa/mixer/paths/steelseries-arctis-5-output-chat.conf
> @@ -0,0 +1,27 @@
> +# 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, see <http://www.gnu.org/licenses/>.
> +
> +; Steelseries Arctis 5 USB headset stereo chat path. The headset has two
> +; output devices. The first one is meant for voice audio, and the second
> +; one meant for everything else. The purpose of this unusual design is to
> +; provide separate volume controls for voice and other audio, which can be
> +; useful in gaming.
> +
> +[General]
> +priority = 50
> +
> +[Element Com Speaker]
> +switch = mute
> +volume = merge
> diff --git a/src/modules/alsa/mixer/paths/steelseries-arctis-5-output-game.conf b/src/modules/alsa/mixer/paths/steelseries-arctis-5-output-game.conf
> new file mode 100644
> index 00000000..c675d523
> --- /dev/null
> +++ b/src/modules/alsa/mixer/paths/steelseries-arctis-5-output-game.conf
> @@ -0,0 +1,27 @@
> +# 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, see <http://www.gnu.org/licenses/>.
> +
> +; Steelseries Arctis 5 USB headset stereo chat path. The headset has two
> +; output devices. The first one is meant for voice audio, and the second
> +; one meant for everything else. The purpose of this unusual design is to
> +; provide separate volume controls for voice and other audio, which can be
> +; useful in gaming.
> +
> +[General]
> +priority = 99
> +
> +[Element PCM]
> +switch = mute
> +volume = merge
> diff --git a/src/modules/alsa/mixer/paths/steelseries-arctis-input.conf b/src/modules/alsa/mixer/paths/steelseries-arctis-7-input.conf
> similarity index 100%
> rename from src/modules/alsa/mixer/paths/steelseries-arctis-input.conf
> rename to src/modules/alsa/mixer/paths/steelseries-arctis-7-input.conf
> diff --git a/src/modules/alsa/mixer/paths/steelseries-arctis-output-mono.conf b/src/modules/alsa/mixer/paths/steelseries-arctis-7-output-mono.conf
> similarity index 100%
> rename from src/modules/alsa/mixer/paths/steelseries-arctis-output-mono.conf
> rename to src/modules/alsa/mixer/paths/steelseries-arctis-7-output-mono.conf
> diff --git a/src/modules/alsa/mixer/paths/steelseries-arctis-output-stereo.conf b/src/modules/alsa/mixer/paths/steelseries-arctis-7-output-stereo.conf
> similarity index 100%
> rename from src/modules/alsa/mixer/paths/steelseries-arctis-output-stereo.conf
> rename to src/modules/alsa/mixer/paths/steelseries-arctis-7-output-stereo.conf
> diff --git a/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules b/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules
> index 264bfdb3..d4ba7983 100644
> --- a/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules
> +++ b/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules
> @@ -105,6 +105,7 @@ ATTRS{idVendor}=="0763", ATTRS{idProduct}=="2012", ENV{PULSE_PROFILE_SET}="maudi
> ATTRS{idVendor}=="045e", ATTRS{idProduct}=="02bb", ENV{PULSE_PROFILE_SET}="kinect-audio.conf"
> ATTRS{idVendor}=="041e", ATTRS{idProduct}=="322c", ENV{PULSE_PROFILE_SET}="sb-omni-surround-5.1.conf"
> ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="4014", ENV{PULSE_PROFILE_SET}="dell-dock-tb16-usb-audio.conf"
> -ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1260", ENV{PULSE_PROFILE_SET}="steelseries-arctis-usb-audio.conf"
> +ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1250", ENV{PULSE_PROFILE_SET}="steelseries-arctis-5-usb-audio.conf"
> +ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1260", ENV{PULSE_PROFILE_SET}="steelseries-arctis-7-usb-audio.conf"
>
> LABEL="pulseaudio_end"
> diff --git a/src/modules/alsa/mixer/profile-sets/steelseries-arctis-5-usb-audio.conf b/src/modules/alsa/mixer/profile-sets/steelseries-arctis-5-usb-audio.conf
> new file mode 100644
> index 00000000..fe353c38
> --- /dev/null
> +++ b/src/modules/alsa/mixer/profile-sets/steelseries-arctis-5-usb-audio.conf
> @@ -0,0 +1,22 @@
> +[General]
> +auto-profiles = yes
> +
> +[Mapping analog-chat]
> +description = Chat
> +device-strings = hw:%f,0,0
> +channel-map = left,right
> +paths-input = analog-input-mic
> +paths-output = steelseries-arctis-5-output-chat
> +
> +[Mapping analog-game]
> +description = Game
> +device-strings = hw:%f,1,0
> +channel-map = left,right
> +paths-output = steelseries-arctis-5-output-game
> +direction = output
> +
> +[Profile output:analog-chat+output:analog-game+input:analog-chat]
> +output-mappings = analog-chat analog-game
> +input-mappings = analog-chat
> +priority = 5100
> +skip-probe = yes
> diff --git a/src/modules/alsa/mixer/profile-sets/steelseries-arctis-usb-audio.conf b/src/modules/alsa/mixer/profile-sets/steelseries-arctis-7-usb-audio.conf
> similarity index 91%
> rename from src/modules/alsa/mixer/profile-sets/steelseries-arctis-usb-audio.conf
> rename to src/modules/alsa/mixer/profile-sets/steelseries-arctis-7-usb-audio.conf
> index d3563a16..8c061e1a 100644
> --- a/src/modules/alsa/mixer/profile-sets/steelseries-arctis-usb-audio.conf
> +++ b/src/modules/alsa/mixer/profile-sets/steelseries-arctis-7-usb-audio.conf
> @@ -27,13 +27,13 @@ auto-profiles = yes
> [Mapping analog-mono]
> device-strings = hw:%f,0,0
> channel-map = mono
> -paths-output = steelseries-arctis-output-mono
> -paths-input = steelseries-arctis-input
> +paths-output = steelseries-arctis-7-output-mono
> +paths-input = steelseries-arctis-7-input
>
> [Mapping analog-stereo]
> device-strings = hw:%f,1,0
> channel-map = left,right
> -paths-output = steelseries-arctis-output-stereo
> +paths-output = steelseries-arctis-7-output-stereo
> direction = output
>
> [Profile output:analog-mono+output:analog-stereo+input:analog-mono]
> --
> 2.14.1
>
More information about the pulseaudio-discuss
mailing list