## Routes - `/audio-converter` - `/m4a-to-mp3`, `/mp3-to-wav`, `/ogg-to-mp3`, `/wav-to-mp3` - `/change-audio-pitch` - `/change-audio-speed` - `/merge-audio` - `/audio-fade` - `/normalize-audio` - `/online-voice-recorder` ## Scenarios to test ### Audio Converter (core) - [ ] Dropzone accepts `.mp3`, `.wav`, `.ogg`, `.m4a`, `.flac` - [ ] Uploading an MP3 shows the file name and duration - [ ] Output format selector shows MP3, WAV, OGG, M4A options - [ ] Selecting MP3 output shows a bitrate selector - [ ] Clicking "Convert" starts conversion (show loading/progress state) - [ ] Download button appears when conversion completes - [ ] Downloaded file has the correct extension ### Format-specific routes - [ ] `/m4a-to-mp3` — uploads M4A, outputs MP3 - [ ] `/mp3-to-wav` — uploads MP3, outputs WAV - [ ] `/ogg-to-mp3` — uploads OGG, outputs MP3 - [ ] `/wav-to-mp3` — uploads WAV, outputs MP3 - [ ] Each route shows the correct source → target label in the UI ### Change Audio Pitch (`/change-audio-pitch`) - [ ] Dropzone accepts audio files - [ ] A pitch control (slider or semitone input) is present - [ ] Adjusting pitch and converting produces a download - [ ] Extreme pitch values (very high/low) do not crash the tool ### Change Audio Speed (`/change-audio-speed`) - [ ] Speed multiplier control is present (e.g. 0.5×, 1×, 2×) - [ ] Adjusting speed and converting produces a download ### Merge Audio (`/merge-audio`) - [ ] Multiple audio files can be uploaded - [ ] A list shows each uploaded file - [ ] Reordering files (if supported) works - [ ] "Merge" button combines them into a single download ### Audio Fade (`/audio-fade`) - [ ] Fade-in and fade-out duration inputs are present - [ ] Applying fade produces a download with the fade applied ### Normalize Audio (`/normalize-audio`) - [ ] Dropzone accepts audio files - [ ] Normalization runs and produces a download ### Online Voice Recorder (`/online-voice-recorder`) - [ ] Record button is present (may require microphone permission mock) - [ ] UI shows a timer during recording - [ ] Stop button appears while recording - [ ] After stopping, a download button or audio playback is available ## Acceptance criteria - Audio converter completes MP3→WAV and WAV→MP3 conversions end-to-end - All format-specific routes load without errors - Merge produces a combined audio file download
Routes
/audio-converter/m4a-to-mp3,/mp3-to-wav,/ogg-to-mp3,/wav-to-mp3/change-audio-pitch/change-audio-speed/merge-audio/audio-fade/normalize-audio/online-voice-recorderScenarios to test
Audio Converter (core)
.mp3,.wav,.ogg,.m4a,.flacFormat-specific routes
/m4a-to-mp3— uploads M4A, outputs MP3/mp3-to-wav— uploads MP3, outputs WAV/ogg-to-mp3— uploads OGG, outputs MP3/wav-to-mp3— uploads WAV, outputs MP3Change Audio Pitch (
/change-audio-pitch)Change Audio Speed (
/change-audio-speed)Merge Audio (
/merge-audio)Audio Fade (
/audio-fade)Normalize Audio (
/normalize-audio)Online Voice Recorder (
/online-voice-recorder)Acceptance criteria