Originally Posted by
Temüjin
I've already tried that like the following:
0. Edit /etc/pulse/default.pa: add "restore_device=false" option to "load-module module-stream-restore", restart pulse.
1. Set the master sink to 100% volume so the remapped sink will have the same max volume as the master's.
2. Create a remapped sink (my master sink is alsa_output.pci-0000_00_1b.0.analog-stereo which is indexed 1)
Code:
pactl load-module module-remap-sink sink_name=reverse-stereo master=1 channels=2 master_channel_map=front-right,front-left channel_map=front-left,front-right remix=no
3. Make the remapped sink a default one
Code:
pacmd set-default-sink reverse-stereo
As far new streams play on speakers as reverse stereo. Now I plug headphones and hear reverse stereo as well. To get it back to stereo I do the following:
4. Make the master sink a default one
Code:
pacmd set-default-sink 1
5. Set the headphones port for the master sink (so the headphones volume restores and overrides the master's 100%)
Code:
pactl set-sink-port 1 analog-output-headphones
Now new streams play on headphones as stereo.
To make it switch sinks automaticly I'd have to:
6. monitor "jack/headphone HEADPHONE plug"/"jack/headphone HEADPHONE unplug" acpi events
7. Switch sinks on an event AND move active streams (listed by "pacmd list-sink-inputs") to the new default sink (which "pacmd move-sink-input stream_id sink_id").
8. There are also corner cases like booting with headphones plugged, mby something more.
So after all what I think is: why such a simple task takes so much steps?? Isn't there some canonical way with pulseaudio config only without relying on acpi?
Bookmarks