
# Pulse Audio

I honestly hate it.

It is too over engineered for a normal user.

It has awful default behaviors.

It creates new problems almost every time I setup a machine with multiple displays.

Examples:

- By default it loads a module that sets outputs to idle, which does not seem to turn back on when you begin playing audio.  _To fix this I have to disable the `module-suspend-on-idle` in `default.pa`._
- By default it loads a module that changes the source if new inputs or outputs are detected.  _To fix this I have to disable the `module-switch-on-port-available` in `default.pa`._
- When using multiple displays and the GPU output for audio it may sometimes choose the wrong output and will not remember the correct "port" even if you change it and get it working.  Further the GUI tools like `pavucontrol` do not provide a way to select or specify the port.  _To fix this you need to get the card info via `pactl list-cards`, and then you need to get/set the profile to "sticky" via `pactl send-message /card/<id> {get-profile-sticky,set-profile-sticky true}`._

I never once had any of these problems with alsa.

Instead 9 times out of 10 I will have a problem on first install with pulseaudio not being correctly configured and sending output to the wrong ports.
