SOUNDGENERATOR.APP
50% - - idle

Voice & files · semitones −24 … +24

Pitch Shifter

Load an audio file and move its pitch by up to two octaves in either direction. With Maintain tempo on, the clip is resynthesised with an overlap-add algorithm so the duration does not change; with it off, the file is simply resampled like a tape at the wrong speed. Preview it in the browser, scrub it, and export a 16-bit WAV.

Your file never leaves this device - it is decoded and processed locally by the Web Audio API. Be careful with large shifts: the resynthesis smears transients (drum hits, consonants) into a metallic artefact, and the exported WAV keeps that artefact. Watch the header level before playing or exporting.

Pitch shifter WSOLA · Web Audio
idle

File

-

Duration

-

Sample rate

-

Channels

-

Waveform · click or drag to seek

- / -

Ready. Choose an audio file to begin.

×1.0000 ratio
Duration handling

On - overlap-add resynthesis keeps the clip length fixed; only the pitch moves.

Pitch ratio

1.0000

440 Hz becomes

440.0 Hz

Source length

-

Result length

-

Transients are where this method shows. Overlap-add rebuilds the signal from ~50 ms windowed frames, so a sharp attack can be duplicated or skipped, which sounds metallic. Keep shifts within ±5 semitones when the material has percussive attacks.

Reference Semitones, ratios and what they do
SemitonesRatioTypical use
-24 0.2500 Two octaves down - an octave below a baritone voice.
-12 0.5000 One octave down. The cleanest, most musical shift.
-7 0.6674 A perfect fifth down.
-5 0.7492 A perfect fourth down.
-4 0.7937 A major third down.
-3 0.8409 A minor third down.
-2 0.8909 A whole tone down.
-1 0.9439 A semitone down - used to detune a doubled take.
0 1.0000 No change.
+1 1.0595 A semitone up.
+2 1.1225 A whole tone up.
+3 1.1892 A minor third up.
+4 1.2599 A major third up.
+5 1.3348 A perfect fourth up.
+7 1.4983 A perfect fifth up.
+12 2.0000 One octave up. Doubles every frequency - 440 Hz becomes 880 Hz.
+24 4.0000 Two octaves up - the top of the range.

How the shift is built

The engine reads the source with an interpolating pointer whose step is the pitch ratio, then rebuilds the timeline with WSOLA (waveform-similarity overlap-add). The signal is cut into frames of about 50 ms, each shaped by a Hann window and added back at half-frame hops, so overlapping frames sum to a constant level. Before each frame is placed, the processor searches roughly ±10 ms of source material for the position whose overlap best correlates with the previous frame - that phase alignment is what stops the output turning into a buzz.

Pitch and tempo are separate numbers. pitchRatio sets the resampling step; tempoRatio sets how fast the read pointer advances, and the output length is always sourceLength / tempoRatio. With Maintain tempo on, the page sends tempoRatio = 1; with it off it sends tempoRatio = pitchRatio, which is mathematically a plain resample - pitch and duration move together, exactly like varispeed tape.

What you should expect to hear

  • ≤ ±2 semitones: essentially transparent on music and speech.
  • ±3 … ±7: usable; some softening of consonants and cymbal transients.
  • ≥ ±12: obvious formant shift (voices sound like chipmunks or demons) and audible frame smearing.
  • Percussion and sibilants are always hit hardest - sustained, tonal material shifts cleanly.
FAQ Pitch shifting questions
Does shifting the pitch change how long the clip is?

Only if you let it. With Maintain tempo on, the tool resynthesises the audio so the length is untouched - a 30-second clip stays 30 seconds and only the pitch moves. With it off, the clip is resampled like a tape played faster or slower: a +12 semitone shift halves the length. The panel shows the resulting duration for whichever mode is active before you play or export.

Why does a heavily shifted file sound metallic or smeared?

This is the overlap-add method doing its job. The algorithm rebuilds the signal from short, Hann-windowed frames of the original, splicing new frames in where it needs more or less material. On sustained tones that is inaudible, but on transients - drum hits, plosives, pick attacks - a frame carries a copy of an attack that no longer lines up, which is heard as a metallic smear or a stutter. It is worst at the extremes, ±24 semitones, and mildest at ±1 to ±3.

Is my audio uploaded anywhere?

No. The file is decoded and processed entirely in your browser with the Web Audio API. There is no server, no upload step and no network request for your audio. You can open the page, load a file and export the result with the network disconnected.

What file formats and sizes can I use?

Anything your browser can decode - normally MP3, WAV, OGG/Vorbis, FLAC, M4A/AAC and Opus. The panel reports the decoded sample rate and channel count. Very long files work, but exporting a multi-minute WAV takes proportionally longer and produces a large file, so keep exports in the seconds-to-a-few-minutes range.

More tools Related tools