MixMasterAI logoMixMasterAI

Audio Speed Changer

Time-stretch audio between 0.5× (half speed) and 2× (double speed) while keeping the original pitch intact. The same kind of processing your DAW does when you warp a sample or your DJ software does when it sync-locks two tracks at different tempos. Useful for transcribing solos, slowing down lyrics, speeding up podcasts, or matching tempos.

How it works

01

Drop the audio

Music, voice, anything. Decoded locally.

Up to 200 MB

02

Pick a speed

0.5× — half speed, useful for transcribing fast passages. 0.75× — slow practice tempo. 1.25-1.5× — most podcast listeners' preferred speed-up. 2× — double speed for skim listening.

ffmpeg filter: atempo=X · time-domain stretch

03

Process

ffmpeg's atempo filter rearranges short audio frames (~20 ms each) — repeating or skipping them — to change duration without changing pitch. Quality is transparent within 0.5-2× for music; outside that range artifacts become noticeable.

Output: 16-bit WAV at original sample rate

Frequently asked questions

Why doesn't the pitch change when speed changes?

If you sped up audio the way a record player does (raising playback rate), pitch goes up too. Time-stretching uses overlap-add windowing instead — it splits audio into short frames and either repeats them (slowing down) or drops some (speeding up). The frame-level pitch content is preserved, only the timeline changes.

Does the audio degrade at extreme speeds?

At 0.5× and 2× the artifacts are subtle — slight echo or warble on transient sounds (drums, percussion, plucked strings). Below 0.5× or above 2× artifacts become obvious. This tool caps at 0.5-2× for that reason. For more extreme stretching, dedicated tools like RubberBand do better.

Speed change vs pitch change — what's the difference?

Speed changer changes how long the audio plays, keeping pitch the same. Pitch shifter changes the pitch (key) without changing how long the audio plays. Use speed for transcription/practice/playback rate; use pitch shift to transpose a song into a different key.

Why not chain multiple atempo filters for extreme speeds?

ffmpeg's atempo only accepts 0.5-2.0 in a single application. For wider ranges you can chain (e.g., atempo=2.0,atempo=2.0 for 4×), but artifacts compound. The 0.5-2× single-stage range is where time-stretching stays transparent for most material.

Master your track free