Skip to content

Repository files navigation

Jnob logo

Jnob

Per-app volume control for your keyboard knob, on Windows 11.

Jnob demo


A normal volume knob only changes the master volume. Jnob lets you point the knob at one specific app (Chrome, Discord, Spotify, a game…) and turn its volume up or down, with a clean Windows 11-style pop-up. Built for knobs like the Ajazz AK820 Max / FiiO KB series, but works with any knob that sends the standard volume media keys.

Features

  • 🎚️ Per-app volume — the knob controls whichever app you pick (or the system master)
  • 👆 Tap to switch — press the knob to cycle to the next app; turn to adjust
  • 🪟 Windows 11 look — rounded, Segoe UI Variable, system accent, drop shadow
  • 🌗 Light / Dark / Auto theme and 🌐 English / ไทย — switch from the tray menu
  • 🧊 Single .exe — self-contained, no install, no admin, no .NET needed to run

How the knob works

Gesture Action
Turn Change the current target's volume
Tap (press) Switch to the next target: Master → app 1 → app 2 → …
Idle a few seconds Quietly resets back to Master

You can also pick a target, language, and theme from the tray icon (right-click).

Install

  1. Download Jnob.exe from the Releases page.
  2. Double-click it. A knob icon appears in the system tray — that's it.
  3. Optional: right-click the tray icon → Start with Windows.

While Jnob is running it takes over the knob's volume keys. To give them back to Windows, just exit Jnob from the tray menu.

Build from source

Requires the .NET 8 SDK. No admin? Use the included get-dotnet-sdk.ps1 to install it into your user profile.

dotnet publish Jnob.csproj -c Release -r win-x64 --self-contained true `
  -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true

The single-file Jnob.exe lands in bin/Release/net8.0-windows/win-x64/publish/.

Configuration

Settings live in %AppData%\Jnob\config.json:

Key Meaning
StepPercent Volume change per knob click (default 2)
ResetToMasterSeconds Idle seconds before reverting to Master (0 = never)
Language Auto | TH | EN
Theme Auto | Light | Dark
VkUp / VkDown / VkPress Virtual-key codes the knob sends (defaults match the AK820 Max)

If the knob's push button is programmable, you can remap it to a normal key (e.g. F13 = 124) and set VkPress to match.

How it works

  • Per-app audio via the Windows Core Audio (WASAPI) session API (through NAudio) — the same mechanism as the Windows Volume Mixer.
  • A global low-level keyboard hook intercepts the knob's volume keys and redirects them to the chosen app instead of the master volume.

Credits

Designed and built with Claude Code (Anthropic).

License

MIT © 2026 jaehyper

About

Per-app volume control for your keyboard knob on Windows 11 — point the knob at any app and turn.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages