whatisgithub

What is volumemixer?

thothermese/volumemixer — explained in plain English

Analysis updated 2026-05-18

1ShellAudience · generalComplexity · 2/5Setup · moderate

In one sentence

A Linux shell script that lets you control the volume of individual running apps, with its own on-screen volume bar, controlled by macros or a rotary knob.

Mindmap

mindmap
  root((VolumeMixer))
    What it does
      Per-app volume
      On-screen bar
      Macro or knob control
    Tech stack
      Shell
      pactl
      jq
    Use cases
      Cycle apps
      Rotary knob binding
      Fullscreen-safe OSD
    Audience
      Linux desktop users

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Cycle through currently running applications and adjust each one's volume separately.

USE CASE 2

Bind volume up, down, mute, and next-app commands to a physical rotary knob or keyboard macro.

USE CASE 3

Show an on-screen volume bar that stays visible even over fullscreen apps.

USE CASE 4

Get desktop notification popups for volume changes using libnotify.

What is it built with?

Shellpactljq

How does it compare?

thothermese/volumemixer100/dotfilesabdellaouiamir/palworld-server
Stars111
LanguageShellShellShell
Last pushed2016-11-18
MaintenanceDormant
Setup difficultymoderateeasymoderate
Complexity2/51/53/5
Audiencegeneraldeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

README is sparse on install and hardware-binding steps, requires pactl and jq, with libnotify optional.

So what is it?

VolumeMixer is a small shell script for Linux that gives you a way to control volume for individual applications, not just the whole system at once. It comes with its own on screen volume bar that shows up as a pop up, and that bar keeps working even when another application is running in fullscreen. You run it from the command line with one of four commands: next, up, down, or mute. The next command lets you cycle through your currently running applications, so you can pick which one's volume you want to adjust, and once you have landed on either an application or the overall system volume, the up, down, and mute commands change that selection's level. The README describes this as being usable with keyboard macros or a physical rotary knob, so you could bind these commands to hardware controls or hotkeys rather than typing them each time. Under the hood it relies on pactl, the command line tool for PipeWire's PulseAudio compatibility layer or for PulseAudio itself, along with a JSON processing tool called jq to read and track which application is currently selected. An optional dependency, libnotify, lets it show desktop notification popups if you want them, in addition to or instead of its own on screen bar. Because VolumeMixer shows its own volume interface, the README recommends turning off your desktop's built in volume notifications, since the two would otherwise show up at the same time and conflict with each other. The README itself is quite short and does not go into detail about installation steps, configuration options, or how to bind the commands to a rotary knob in practice, so some of that setup work is left for the user to figure out.

Copy-paste prompts

Prompt 1
Help me install pactl and jq so I can run VolumeMixer on my Linux system.
Prompt 2
Show me how to bind VolumeMixer's next, up, down, and mute commands to a rotary knob.
Prompt 3
Explain why I should turn off my desktop's built-in volume notifications when using VolumeMixer.
Prompt 4
Walk me through what VolumeMixer's four commands do.

Frequently asked questions

What is volumemixer?

A Linux shell script that lets you control the volume of individual running apps, with its own on-screen volume bar, controlled by macros or a rotary knob.

What language is volumemixer written in?

Mainly Shell. The stack also includes Shell, pactl, jq.

How hard is volumemixer to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is volumemixer for?

Mainly general.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.