Skip to content

ami-nope/AudioBit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AudioBit

A modern, glassmorphic Windows audio control suite with a companion remote web UI.

Main App Remote Web UI .NET 8 WPF UI

AudioBit desktop app screenshot AudioBit animated visualizer

AudioBit live EQ and volume visualizer

Overview

AudioBit delivers precision audio control with a modern glass UI. It unifies device routing, per-app session mixing, and live visual feedback in a single, fast desktop experience. The companion remote web UI mirrors key controls so you can manage sessions from any device.

Feature Panels

Device Matrix
Route outputs, set defaults, and manage device policies with a glass-style card layout.
Session Studio
Per-app volume, mute, and focus controls with animated meters and quick actions.
Automation
Smart policies, startup rules, and tray shortcuts for zero-friction workflows.

What Makes It Modern

  • Glassmorphic panels with depth and soft translucency.
  • High-contrast typography and fast-scanning layouts.
  • Live visual feedback with animated audio meters.
  • Fluent navigation patterns and polished motion.

Remote Web UI

Control sessions from your phone or any browser.

AudioBit Remote web UI

Project Structure

  • AudioBit.App/ Main WPF application (UI, window, tray, startup logic)
  • AudioBit.Core/ Core audio and session logic, device models, policy bridge
  • AudioBit.UI/ Custom controls, styles, and reusable UI components
  • AudioBit.Installer/ Installer packaging and deployment assets
  • artifacts/ Build outputs and verification folders

Tech Stack

  • .NET 8 (Windows)
  • WPF (XAML, C#)
  • MVVM architecture
  • NAudio + custom interop for audio routing

Getting Started

dotnet build AudioBit.sln
dotnet run --project AudioBit.App/AudioBit.App.csproj --configuration Debug

Install and Updates

  • New installs should use the Velopack AudioBit-Setup.exe published on GitHub Releases.
  • Automatic updates are only supported for Velopack-installed builds.
  • Existing installs from the legacy custom installer do not auto-migrate and do not auto-update.
  • The in-app updater detects Velopack installs from the installed release layout, not from local dev builds.

Release Flow

  • version.json stores the current release version used by the one-command release flow.
  • Run .\scripts\Build-BootstrapInstaller.ps1 to build only the custom AudioBit.Setup folder at artifacts\bootstrap-installer\<version>\AudioBit-Setup.
  • Run .\scripts\Build-GitHubReleaseFolder.ps1 to bump version.json by 0.1, then build artifacts\github-release\<new-version>\GitHub-Upload with the custom installer nested at GitHub-Upload\AudioBit-Setup, zipped as GitHub-Upload\AudioBit-Setup.zip, and a brief text note at GitHub-Upload\release-notes-brief.txt.
  • Run .\scripts\Release-Velopack.ps1 from the repo root to bump the stored version, commit all current changes, create the next numeric tag, and push it.
  • The script syncs with origin/<current-branch> before it creates the release commit, so the pushed tag stays attached to the actual branch tip that GitHub Releases will build.
  • After pushing, the script waits for the public GitHub Release to exist with Velopack feed assets, a setup installer, and release notes before it exits.
  • The next version is generated by incrementing the last numeric segment in version.json, so 1.6 becomes 1.7 and 1.6.4 becomes 1.6.5.
  • The release workflow generates markdown release notes, passes them into vpk pack, publishes them to GitHub Releases, and verifies the setup/bootstrapper asset plus the RELEASES feed asset that the updater depends on.
  • The pushed tag triggers the Velopack GitHub Actions release workflow, which builds and publishes the updater-compatible release assets.
  • Legacy v1.2 or v1.2.3 tags are still accepted, but the scripted flow uses plain numeric tags by default.
  • Run .\scripts\Build-ReleaseBundle.ps1 when you want only the raw Velopack upload assets in a local versioned folder.
  • Run .\scripts\Publish-Release.ps1 when you want only the internal bootstrap-installer build step without the wrapper naming.

Documentation

  • PROJECT_DETAILS.md Product overview and goals
  • REMOTE_PROTOCOL.md Remote API and pairing protocol

Credits

Built by Amiya and contributors. Inspired by modern desktop tooling and studio-grade mixers.

About

AudioBit is a modern Windows WPF application for advanced per-application audio control, routing, metering, hotkeys, and sessions.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors