how to sperate headphones from laptop speakers as two seperate enteties
might be helpful to someone so here we are cross-posted from: lemmy.ml/post/9547307
so since I digged pretty hard to find what is a ucm profile and how to seperate headphones from speakers in pipewire and alsa so yeah heres a guide first of all these are my sources:
github.com/…/linux-guide-split-audio-portswww.reactivated.net/writing_udev_rules.htmlgitlab.freedesktop.org/pipewire/pipewire/…/3556gitlab.freedesktop.org/pipewire/pipewire/…/3552
you need a custom ucm profile use this command since its helpful lspci -nn -vvv
<span style="color:#323232;">SUBSYSTEM!="sound", GOTO="pipewire_end" </span><span style="color:#323232;">ACTION!="change", GOTO="pipewire_end" </span><span style="color:#323232;">KERNEL!="card*", GOTO="pipewire_end" </span><span style="color:#323232;"> </span><span style="color:#323232;">ATTRS{subsystem_vendor}=="0x103c", ATTRS{subsystem_device}=="0x8742", ENV{ACP_PROFILE_SET}="custom.conf" </span><span style="color:#323232;"> </span><span style="color:#323232;">LABEL="pipewire_end" </span>
and than create a file in /usr/share/alsa-card-profile/mixer/profile-sets/custom.conf and yeah I guess
www.freedesktop.org/wiki/Software/…/Profiles/
and this especially
github.com/…/linux-guide-split-audio-ports
they helped a lot
<span style="color:#323232;">[General] </span><span style="color:#323232;">auto-profiles = yes </span><span style="color:#323232;"> </span><span style="color:#323232;">[Mapping headphones] </span><span style="color:#323232;">device-strings= hw:0,2 </span><span style="color:#323232;">channel-map = left,right </span><span style="color:#323232;">paths-output = behe-headphones </span><span style="color:#323232;">paths-input = analog-input-headphone-mic analog-input-headset-mic </span><span style="color:#323232;">priority = 20 </span><span style="color:#323232;"> </span><span style="color:#323232;">[Mapping speaker] </span><span style="color:#323232;">device-strings= hw:0,0 </span><span style="color:#323232;">channel-map = left,right </span><span style="color:#323232;">paths-output = behe-speaker </span><span style="color:#323232;">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 </span><span style="color:#323232;">priority = 18 </span><span style="color:#323232;"> </span><span style="color:#323232;">[Profile help] </span><span style="color:#323232;">input-mappings = speaker headphones </span><span style="color:#323232;">output-mappings = speaker headphones </span><span style="color:#323232;">description = both_both_is_good </span><span style="color:#323232;">skip-probe = yes </span><span style="color:#323232;">priority = 100 </span><span style="color:#323232;"> </span><span style="color:#323232;">.include 9999-custom.conf </span>
and yes that was my custom.conf and yes just reboot now and you are set btw no need to touch hdajackretask and that idor 0,2 and 0,0 I just switched profile to proaudio and than ran pactl list sinks short and took the ids from there I am basically following the guides and mimicking /usr/share/alsa-card-profile/mixer/profile-sets/default.conf to be completely honest yes thats all