Auto Volume Normalizer - Google Chrome Extension
Version: 1.2.0
Why This Exists
You know the pain: a quiet movie dialogue forces you to crank the volume, then an explosion or loud ad blasts your ears. YouTube, X|Twitter Audio Space, Twitch, news sites, podcasts — they all have wildly inconsistent audio levels.
Auto Volume Normalizer fixes this automatically. It runs locally in your browser, uses the Web Audio API to measure loudness in real-time, and smoothly adjusts gain so everything sits at a comfortable level. No cloud, no tracking, no subscriptions — just a tiny extension that works.
What Your Support Enables
| Current Features | What's Next With Your Help |
|---|---|
| Smart gain control (RMS-based) | Per-site profiles — remember settings per domain |
| Dynamics compressor (peak limiting) | Keyboard shortcuts — toggle/adjust without opening popup |
| Attack/Release tuning | Loudness normalization (LUFS) — broadcast-standard metering |
| 6 built-in presets | Export/Import settings — sync across devices |
| Real-time debug panel | Chrome Sync integration |
| Zero telemetry, 100% local | Mobile browser support (Kiwi, Firefox Android) |
| Works on YouTube, Twitch, Netflix*, etc. | Advanced EQ — fix boomy bass or harsh treble |
*Netflix and DRM-protected players are limited by browser security — but we're exploring workarounds.
| Control | Range | Default | Description |
|---|---|---|---|
| Auto volume | On/Off | On | Master toggle |
| Target volume | -30 to -6 dB | -18 dB | Target RMS level. Quieter audio boosted toward this. Lower = more aggressive. |
| Max boost | 0 to +30 dB | +15 dB | Maximum gain applied to quiet passages |
| Attack speed | 20–250 ms | 60 ms | How fast gain increases when audio gets quieter |
| Release speed | 150–1500 ms | 500 ms | How fast gain decreases when audio gets louder |
| Smooth loud peaks | On/Off | On | Enables dynamics compressor for sudden transients |
Presets
| Preset | Target | Max Boost | Compressor | Attack | Release | Best For |
|---|---|---|---|---|---|---|
| Balanced | -18 dB | +15 dB | ON | 60 ms | 500 ms | General use |
| TV / Movies | -14 dB | +24 dB | ON | 30 ms | 400 ms | Streaming video (EBU R128) |
| Music | -16 dB | +12 dB | ON | 50 ms | 600 ms | Preserves dynamic range |
| Speech / Podcasts | -10 dB | +20 dB | ON | 20 ms | 300 ms | Clear dialogue, fast pauses |
| Night Mode | -24 dB | +18 dB | ON | 80 ms | 800 ms | Quiet late-night viewing |
| Maximum Leveling | -6 dB | +30 dB | ON | 20 ms | 300 ms | Aggressive normalization |
How It Works
For each <audio> and <video> element, the extension builds a Web Audio graph:
MediaElement → MediaElementSource → Gain (input) → Analyser → DynamicsCompressor → Gain (output) → Destination
- AnalyserNode measures RMS level every frame (60 fps via
requestAnimationFrame) - GainNode (output) applies smooth gain compensation:
desiredDb = targetDb - measuredRmsDb - DynamicsCompressorNode (optional) compresses peaks above -24 dB at 4:1 ratio
- Attack/release smoothing prevents audible "pumping"
Debug Panel
Press Ctrl+Shift+V (or click Debug in popup) to toggle a floating panel showing:
- Elements — count of connected media elements
- Status — active (green), waiting (yellow), disabled (red)
- Input RMS — current loudness in dB
- Target — configured target volume
- Gain — average applied gain in dB
- Max Boost — configured limit
The Reality
This is a solo project by one developer. No VC funding, no corporate backing, no ads.
- Development time: 100+ hours (and counting)
- Maintenance: Browser API changes, manifest updates, bug fixes
- Documentation: README, store listings, privacy policy, user guides
Every dollar goes directly into more features, better compatibility, and new tools that solve real audio annoyances.
No tier locks features. The extension stays free and open for everyone. Support is purely voluntary — a "thank you" if it saves your ears daily.
Why It Matters
"I built this because I couldn't find a tool that just worked — no accounts, no cloud, no bloat. If it helps you, a small contribution keeps it alive and growing."
Every donation says: "Build more tools that respect users."
That signal matters. It prioritizes:
- New extensions (video speed controller, subtitle enhancer, tracker blocker)
- Accessibility improvements
Other Ways to Help
- 🐛 Report bugs — with steps to reproduce
- 💡 Suggest features — real use cases drive the roadmap
- 📢 Share — tweet, post, tell a friend
Links
- Download from Chrome Web Store
- Website: https://dotoca.net/auto-volume-normalizer
- Privacy Policy: https://dotoca.net/auto-volume-normalizer-privacy