✨ New Features
🎧 AutoEQ Headphone Correction
- Per-device headphone EQ — Apply correction profiles from the AutoEQ database — search thousands of models with fuzzy matching
- Import custom ParametricEQ.txt files from audio forums and communities
- Preamp toggle — keep preamp on for clean, clipping-free playback, or turn it off for louder output with the limiter catching peaks
- Profiles cached offline for instant reloads after the first fetch
- Star your favorite profiles for quick access
🔵 Bluetooth Device Management
- Paired-but-disconnected Bluetooth devices now appear in device edit mode
- Connect directly from the menu bar — no need to open System Settings
- Connection progress spinner and inline error display
🔒 Permission Setup
- Clear permission banner on first launch when audio capture access is needed
- "Grant Access" or "Open System Settings" buttons depending on permission state
- Reduces repeated permission prompts by requesting access once upfront
👁️ Ignore App
- Hide specific apps from FineTune so they're never tapped
- Toggle via the eye icon in edit mode
- Ignored apps have their taps torn down and settings cleared
🔊 Per-App Boost
- Boost is now a per-app control instead of a global setting
- Stacked chevron icons on each app row — tap to cycle through boost levels
- Replaces the old percentage slider in settings
🔧 Improvements
- VU meter redesign — Vertical bar at the far left of each app row with professional-style peak decay
- Edit mode overhaul — 2-column app grid, unified interface for apps, Bluetooth devices, inputs, and outputs
- EQ slider dimming — Sliders dim when the equalizer is toggled off so it's clear EQ isn't active
- Cleaner app list — Multi-process apps like Chrome are grouped under one entry instead of showing separate helper processes
- Settings device picker — Wider layout with centered content
🐛 Bug Fixes
- Device priority — Fixed sorting, grace period handling, and reconnection logic for the priority device system; added alive watcher for wireless devices that take time to initialize after connecting
- Device switching — Echo suppression prevents bouncing between devices during switches; grace periods (2s wired, 5s Bluetooth) avoid premature re-routing
- Fixed volume, VU meter, and EQ breaking after a crossfade device switch
- Fixed device volume slider not responding to track clicks (only drag worked)
- Fixed tap leak and app flicker from stream-specific tap creation
- User-created aggregate devices (from Audio MIDI Setup) now show in the device list (#126)
- Fixed layout shift and mute icon inconsistency at zero volume (#120)
- Fixed low output on multichannel USB devices like Topping E2x2 OTG (#105)
- Fixed potential crash from double-removing HAL listeners
- Fixed divide-by-zero in crossfade at very low sample rates
- Stale Bluetooth volume confirmation tasks now cancelled on device removal
- AutoEQ profiles with invalid filters are rejected instead of applied
- NaN/Inf volumes silently corrected to safe defaults
- Settings reset now properly clears all in-memory state, not just the file
- System dictation and speech processes no longer appear in the app list
New Contributors
- @Vudgekek made their first contribution in #140
- @IftatBhuiyan made their first contribution in #153
Full Changelog: v1.3.2...v1.4.0