WAV Pitch Changer
Shift a WAV up or down in whole semitones without changing its duration.
Pitch changer (WAV only)
source file
PCM16 WAV · 44.1 kHz · up to 120 s · processed in this tab.
Supported input limits
- Input: 16-bit PCM WAV, 44100 Hz, mono or stereo
- Up to 120 seconds, at most 22,000,000 bytes
- Whole semitones only, −24 … +24; fractional values rejected
- Output: 16-bit PCM WAV, 44100 Hz, same duration; no resampling
- No MP3 or other compressed input formats
- No upload — decoding and shifting happen in this tab
semitones
Whole semitones only — fractional values are rejected.
preview & export
Original audio
Pitched audio
Audio is decoded and processed in this browser tab; the pitch changer has no upload step. Data-handling characteristics of the hosted site are outside this tool and are not guaranteed here.
Examples
Drop an octave
Move a bass line or a low synth part away from a vocal without re-recording it. The take keeps its original length and timing.
Pass-through run
No shift at all — a control run to confirm the file decodes and the exported WAV matches the input's duration before committing to a shift.
Lift an octave
Turn a thin demo vocal or a rumbling effect into a brighter guide line or texture. Listen for added brightness artifacts at large shifts.
These are positions inside the supported −24 … +24 whole-step range, not stored presets. Duration stays the same at every position.
How it works
The file is decoded and pitch-shifted inside this browser tab in a Web Worker, using the SoundTouch time-stretching algorithm (soundtouchjs 0.3.0). Pitch is changed by transposition with tempo compensation, so the result plays for exactly as long as the input did. The pitch changer performs no upload of your audio; hosting, retention and data-handling characteristics of the deployed site are described by its operator, not by this tool.
Public review version: audio quality is awaiting human listening, and browser compatibility beyond the tested Chromium is not established. SoundTouchJS is supplied as a separate, replaceable module underLGPL-2.1-or-later. Its source-file manifestidentifies the unmodified library and original sources supplied with this site. No restriction is imposed on replacing the LGPL library or reverse engineering for debugging modifications to that library.
Scope and limits
- Input: 16-bit PCM RIFF/WAVE at 44100 Hz, mono or stereo, at most 120 seconds and at most 22,000,000 bytes. Anything else is rejected with a clear error.
- Pitch shift: whole semitones only, from −24 to +24. Fractional values are rejected.
- Output: 16-bit PCM WAV at 44100 Hz, same duration and channel count as the input.
- No MP3 or other compressed formats; no sample-rate conversion; no key or BPM detection.
Guides
- All guides
- Pitch and playback speed — why the duration stays fixed and what a shift can do to timbre.