Polybar Pulseaudio Control Versions Save

A feature-full Polybar module to control PulseAudio

v3.1.1

1 year ago

New

  • [#72] You can now disable the muted color by providing an empty string to the --color-muted argument

Thanks to @fabian-thomas for working on this feature!

v3.1.0

1 year ago

New

  • [#70, #71] Add --listen-timeout-secs flag. This also updates its default value from 0.1 to 0.05. From the new FAQ in the README:

    We use the pactl subscribe command to get notified of new events that may occur in order to refresh the output. However, the command often outputs a lot of events for a simple action, like increasing the volume. Instead of refreshing for every single line it prints, we:

    1. Wait for one event
    2. Update the output first
    3. Continue to listen for events until a timeout ends, or until we reach a large enough number of them
    4. Update the output again
    5. Go back to step 1

    This way, the first event will update quickly, and the following ones, which are most likely unnecessary, will be ignored until some time passes. This reduces the CPU usage, but it's not really perfect, as everyone percieves latency differently, and it depends on the use-case.

    The timer can be configured with --listen-timeout-secs, which has a default value of 0.05 (50 ms). If you want less CPU usage, i.e., ignore more duplicate events, you can bump it to, for example, 0.1 (100 ms). Or for faster refreshes when performing multiple actions quickly, e.g., updating the volume with your mousewheel, you can even use a smaller value.

v3.0.1

1 year ago

Fixes

  • [#69] Temporary fix to high CPU load. Due to this quick fix, the script may not update when switching between sources (microphones). See more information in #68.

v3.0.0

1 year ago

Breaking changes

  • [#64] Add support for sources (microphone). You can now use the --node-type argument to select whether to use sinks (speakers) or sources (microphones). This makes it possible to also control microphones with the script exactly in the same ways as before: volume control, switching between them, muting, etc. Thus, many arguments and options have been renamed to be generic over both sinks and sources, under the name node:
    • The next-sink action is now next-node
    • The --icon-sink argument is now --icon-node
    • The --sink-blacklist argument is now --node-blacklist
    • The --sink-nicknames-from argument is now --node-nicknames-from
    • The --sink-nickname argument is now --node-nickname
    • The ICON_SINK variable is now ICON_NODE
    • The SINK_NICKNAME variable is now NODE_NICKNAME

These items are deprecated for now so that it's easy to find out about the changes, but they will be removed in a future version. Check out the README and the --help message for more information about this new feature.

New

  • [#65, #67] Optimize listen function

Fixed

  • [#66] Fix argument parsing (--osd action would ignore the action parameter, for example).

Many thanks to @Aerion for working on most of these features! Especially supporting both sinks and sources, which should make this script much more flexible.

Full Changelog: https://github.com/marioortizmanero/polybar-pulseaudio-control/compare/v2.3.0...v3.0.0

v2.3.0

2 years ago

New

  • [#57] Support for glob patterns for both nicknames and blacklisting
  • [#58] "Secret" --help option for better accessibility to the usage message

Fixed

  • [#58] Slightly improved usage message

Thanks to @SPFabGerman for contributing to this release!

v2.2.5

2 years ago

New

  • Add support for $IS_MUTED in the format.

v2.2.4

2 years ago

Fixed

  • [#55] Not working with different locale

v2.2.3

2 years ago

Fixed

  • [#53] --icons-volume and --sink-blacklist now remove spacing between items. Both A, B, C and A,B,C are valid values now.

v2.2.2

3 years ago

Fixed

  • [#50] next-sink ignores one device using PipeWire

v2.2.1

3 years ago

Fixed

  • [#49] Fix script in systems with a language other than english