pavucontrol but usable from the command line
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
CMakeLists.txt
LICENSE.MIT
README.md
parse.cpp
parse.h
pasane.cpp
sample.yml

README.md

pasane works like amixer set Master 3%+, except for the fact that it doesn't totally mess up your channel balance. e.g.

pasane 3+
pasane 3-

If you have multiple devices, you can use a regex to locate them, instead of the totally messed up definition of "Master" in ALSA:

pasane --source '5\.1' 3+

In fact, you can specify some balance profiles in a config file (~/.config/pasane.yml or env PASANE_CONFIG_FILE), and use them to select a non-flat profile if you have any idea what ALSA is doing, and you like it (you sicko). e.g.

balance_profiles:
  - flat:
    - 100% .*
  - boost_centre:
    - 120% Center
    - 100% .*
  - only_centre:
    - 100% Center
    - 5% .*

A profile consists of:

  • a name, for your usage (to be passed on the command line)
    • a percentage weighting for this channel (group)
    • a regex which matches the channel name

All of a profile's items are applied (in order) until one matches, otherwise the 100% .* profile is used.

The tool doesn't let you set values to weird values (it'll print warnings while clipping things) to prevent PulseAudio from spazzing out.

(I am not very happy.)

Dependencies:

Building:

mkdir build
cd build
cmake ..
make
cp pasane ~/bin
cp sample.yml ~/.config/pasane.yml