db01209f7765c33c09776704f66fc3ec05ee380c
Converted level meters from linear to logarithmic (dB) scale to match professional audio software behavior and human hearing. The Problem: - Linear scale (0-100%) doesn't match perceived loudness - Doesn't match professional DAW meter behavior - Half-volume audio appears at 50% but sounds much quieter - No industry-standard dB reference The Solution: - Convert linear amplitude to dB: 20 * log10(linear) - Normalize -60dB to 0dB range to 0-100% display - Matches professional audio metering standards dB Scale Mapping: 0 dB (linear 1.0) = 100% (full scale, clipping) -6 dB (linear ~0.5) = 90% (loud) -12 dB (linear ~0.25) = 80% (normal) -20 dB (linear ~0.1) = 67% (moderate) -40 dB (linear ~0.01) = 33% (quiet) -60 dB (linear ~0.001) = 0% (silence threshold) Implementation: - Added linearToDbScale() function to both hooks - useMultiTrackPlayer: playback level monitoring - useRecording: input level monitoring - Formula: (dB - minDb) / (maxDb - minDb) - Range: -60dB (min) to 0dB (max) Benefits: ✅ Professional audio metering standards ✅ Matches human perception of loudness ✅ Consistent with DAWs (Pro Tools, Logic, Ableton) ✅ Better visual feedback for mixing/mastering ✅ More responsive in useful range (-20dB to 0dB) Now properly mastered tracks will show levels in the 90-100% range, matching what you'd see in professional software. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Audio UI
A sophisticated browser-only audio editor built with Next.js 16, React 19, and Tailwind CSS 4.
Features (Planned)
- 100% Client-Side: All audio processing happens in your browser
- Multi-Track Editing: Professional multi-track audio editing
- Advanced Effects: EQ, compression, reverb, delay, and more
- Automation: Automate volume, pan, and effect parameters
- Recording: Record audio directly from your microphone
- Analysis Tools: Frequency analyzer, spectrogram, and loudness metering
- Export Formats: WAV, MP3, OGG, FLAC
- Project Management: Save and load complete projects
- Privacy-First: No uploads, all data stays local in your browser
Tech Stack
- Next.js 16 with React 19
- TypeScript 5
- Tailwind CSS 4 with OKLCH colors
- Web Audio API for audio processing
- Canvas API for waveform visualization
- IndexedDB for project storage
Getting Started
This project is currently in the planning phase. See PLAN.md for the complete implementation plan.
Development (Coming Soon)
# Install dependencies
pnpm install
# Run development server
pnpm dev
# Build for production
pnpm build
Inspiration
Inspired by AudioMass and professional DAWs like Ableton Live, Logic Pro, and FL Studio.
License
TBD
Contributing
This is a personal project, but suggestions and ideas are welcome!
Description
Languages
TypeScript
98.8%
CSS
1.1%
Dockerfile
0.1%