-
-
Save ktosiek/ff35074c309b291b4193b1f6167ca6fc to your computer and use it in GitHub Desktop.
; /usr/share/pulseaudio/alsa-mixer/profile-sets/astro-a50-gen4.conf | |
[General] | |
auto-profiles = yes | |
[Mapping analog-voice] | |
description = Voice | |
device-strings = hw:%f,0,0 | |
channel-map = left,right | |
paths-output = steelseries-arctis-output-chat-common | |
intended-roles = phone | |
[Mapping analog-voice-input] | |
description = Voice | |
device-strings = hw:%f,0,0 | |
channel-map = mono | |
paths-input = usb-gaming-headset-input | |
intended-roles = phone | |
[Mapping analog-game] | |
description = Game | |
device-strings = hw:%f,1,0 | |
channel-map = left,right | |
paths-output = steelseries-arctis-output-game-common | |
direction = output | |
[Profile output:analog-voice+output:analog-game+input:analog-voice] | |
output-mappings = analog-voice analog-game | |
input-mappings = analog-voice-input | |
priority = 5100 | |
skip-probe = yes |
# /etc/udev/rules.d/90-astro-50.rules | |
# ID 9886:002c is for Astro A50 Gen4 | |
ACTION=="change", SUBSYSTEMS=="usb", ATTRS{idVendor}=="9886", ATTRS{idProduct}=="002c", ENV{PULSE_PROFILE_SET}="astro-a50-gen4.conf" |
Right, Gen3 probably is a bit different. Can you test pulseaudio master branch? It would be cool to have a profile upstream.
I've used this guide to build PA: https://colin.guthr.ie/2010/09/compiling-and-running-pulseaudio-from-git/
And then I'm running it with: cd ~/pulseaudio/build/ && git pull --ff-only && make -j && systemctl --user stop pulseaudio.{socket,service} && src/pulseaudio -n -F src/default.pa -p $PWD/src/.libs/ -v
- you'll have to restart your sound emitting apps, as most applications don't reconnect to PA after the daemon is restarted.
You'll also need to change the udev rule to use an absolute path to your profile-set, but with a bit of luck you should be able to enhance the src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf
file to also handle Astro Gen3. Ping me if you try - I'll check if your changes don't break a Gen4 :-)
I've built pulseaudio with your guide and started it with your command (after removing the .libs from your -p argument as PA was appending this already).
Also I changed the udev rule to be ACTION=="change", SUBSYSTEMS=="usb", ATTRS{idVendor}=="9886", ATTRS{idProduct}=="0015", ENV{PULSE_PROFILE_SET}="/home/$USER/Downloads/pulseaudio/paudio/src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf"
(but with my user name instead of $USER
)
But still I'm only getting one output device which is called Headphones - A50
.
This time changing the channel-map was not the solution to it, so I created a new path/copied the stereo path called usb-gaming-headset-output-game
(src/modules/alsa/mixer/paths/usb-gaming-headset-output-game.conf
) and used it in the stereo-game section.
And with this it worked! However it still needs to have the extended channel-map.
I also got you some logs starting from the point when I plugged in the headset
- Without my changes: https://hastebin.net/pobepomoge.yaml
- With my changes: https://hastebin.com/tukekiligu.yaml
Hope it helps
I have the strange problem that my Microphone just stop working after some time and I have to switch the profile in pavucontrol. Sometimes its work for 1-2 Days ... and then its starting to work only for 15 Seconds and I have all 15 Seconds to switch the profile, else nobody can hear me .... very very strange! -.-
have anyone got Gen 3 version working?
have anyone got Gen 3 version working?
just changde idProduct in udev rules. gen 3 has probably 0015 instead of 002c.
you might check it with lsusb | grep 9886
Is this expected to work with pipewire?
Is this expected to work with pipewire?
it won't, but not required.
just execute one of the following commands:
sh -c 'pactl set-card-profile alsa_card.usb-Astro_Gaming_Astro_A50-00 pro-audio; pactl set-default-sink alsa_output.usb-Astro_Gaming_Astro_A50-00.pro-output-0; notify-send -i audio-headphones "Sound Output:" "Astro 50 Voice"'
or
sh -c 'pactl set-card-profile alsa_card.usb-Astro_Gaming_Astro_A50-00 pro-audio; pactl set-default-sink alsa_output.usb-Astro_Gaming_Astro_A50-00.pro-output-1; notify-send -i audio-headphones "Sound Output:" "Astro 50 Game"'
in the latest case your headset will get the equalizer and dolby surround
Original comment:
Correction:
To find out what exactly caused this behavior I was adding back the paths-output line and it still works.
When changing the channel-map back it broke again. So this is the only reason.
I'm running pulseaudio 13.99.2-13-g7f4d7 on Arch (Kernel 5.8.14-arch1-1).
The 6 channels are actually working (of cause with DTS enabled on the headset). But I can hear the virtual speakers when I'm changing the volumes on the channels in pavucontrol.
Sadly I cannot tell you exactly why this is not working for me. Ideas on how I can debug this are welcome if this is interesting (although I would continue using the 6 channel config afterwards).
Also I think that I only have the Gen 3 version of the headset with the 9886:0015 identifier. This might be a cause.