AudioPriorityBar logo

AudioPriorityBar

Priority-based audio switching for macOS menu bar

2025-12-30

Product Introduction

  1. Definition: AudioPriorityBar is a native macOS menu bar utility (technical category: audio device management software) that automates audio output/input selection based on user-defined priority hierarchies.
  2. Core Value Proposition: It eliminates manual audio device switching by instantly activating the highest-priority connected speaker, headphone, or microphone—optimizing workflow efficiency for macOS power users.

Main Features

  1. Priority-Based Auto-Switching:

    • How it works: Ranks devices via persistent UID tracking in UserDefaults. When devices connect/disconnect, CoreAudio APIs trigger real-time switching to the top available device in the active category (speakers/headphones).
    • Technologies: SwiftUI for UI, CoreAudio for hardware monitoring, Combine for event handling.
  2. Dual-Category Management:

    • How it works: Separates output devices into isolated "speaker" (🔊) and "headphone" (🎧) priority lists. Each category maintains independent hierarchies, preventing conflicts (e.g., prioritizing speakers for meetings vs. headphones for media).
    • Technologies: Enum-based categorization (OutputCategory), device metadata parsing.
  3. Persistent Device Memory & Edit Mode:

    • How it works: Archives disconnected devices with "last seen" timestamps. Edit Mode exposes hidden devices for reordering/removal via drag handles or arrow controls, using UserDefaults for cross-session persistence.
    • Technologies: SwiftData-like storage logic, CoreAudio UID stability.

Problems Solved

  1. Pain Point: Manual audio device juggling on macOS disrupts workflows (e.g., unplugging headphones doesn’t auto-revert to speakers). AudioPriorityBar automates this with zero latency.
  2. Target Audience:
    • Hybrid Workers: Switch between conference speakers and noise-canceling headphones seamlessly.
    • Content Creators: Prioritize studio mics over built-in mics during recordings.
    • Multidevice Users: Manage Bluetooth headsets, USB DACs, and AirPlay speakers in unified hierarchies.
  3. Use Cases:
    • Auto-fallback to speakers when disconnecting headphones during video calls.
    • Prioritize USB-C headphones over Bluetooth devices to avoid latency.
    • Silence non-critical mics during screen sharing.

Unique Advantages

  1. Differentiation: Unlike macOS’s native sound preferences (manual selection) or tools like SoundSource (manual routing), AudioPriorityBar uses rule-based automation with category isolation—no scripting required.
  2. Key Innovation: Dual independent priority lists for speakers/headphones with per-device ignore rules, enabling granular control unmatched by competitors.

Frequently Asked Questions (FAQ)

  1. Does AudioPriorityBar support Bluetooth device prioritization?
    Yes, it auto-detects and prioritizes Bluetooth headphones/speakers using CoreAudio metadata, including brand-specific IDs.
  2. Can I exclude specific devices from auto-switching?
    Enable "Ignore as [category]" or "Ignore entirely" via device hover menus to exempt devices from automation.
  3. How does it handle simultaneous input/output changes?
    CoreAudio notifications trigger parallel checks—output and input devices switch independently based on their priority queues.
  4. Is there a CLI or scripting API?
    Not currently; UI-driven prioritization is the focus, though UserDefaults plist files allow advanced manual configuration.
  5. Does it work with HDMI/DisplayPort audio devices?
    Yes, any CoreAudio-recognized device (including HDMI audio) is supported in priority lists.

Submit to 240+ Directories with 1-Click

Maximize your product's SEO and drive massive traffic by automatically submitting it to over 240 curated startup directories using DirSubmit.

Subscribe to Our Newsletter

Get weekly curated tool recommendations and stay updated with the latest product news