Do you like SoundTouch? Then please support SoundTouch development and maintaining by a donation!

Unrestricted Royalty-free license also available for commercial purposes, please contact us for more information!


Audio Application development services

Are you looking for professional audio application developer(s) to help in your project?

Please look here!


SoundTouch Audio Processing Library

SoundStretch Audio Processing Utility

Copyright © Olli Parviainen 2001-2017

SoundStretch is a command-line program that performs SoundTouch library effects on WAV audio files. The program provides a source code example how SoundTouch library routines can be used to process sound in other programs, but it can be used as a stand-alone audio processing tool as well.

SoundStretch features:

  • Process .wav audio files
  • Broad adjustment parameter ranges:
    • Tempo & Playback Rate adjustable in range -95% .. +5000%
    • The sound Pitch (key) adjustable in range -60 .. +60 semitones (+- 5 octaves).
  • Beats-Per-Second (BPM) detection that can adjust tempo to match with the desired BPM rate.
  • Full source codes available
  • Command-line interface allows using the SoundStretch utility for processing .wav audio files in batch mode
  • Supports processing .wav audio streams through standard input/output pipes
  • SoundStretch uses the SoundTouch library routines for the audio procesing.

A screenshot of the SoundStretch command prompt

Click the image for the SoundStretch application screenshot >>>

Example Audio Clips Processed with SoundStretch

All these clips have been created by manipulating original sound file with SoundStretch utility.

Description Play Clip Duration
Original audio clip
30 sec
Tempo reduced by -50%.
command syntax:
soundstretch input.wav output.wav -tempo=-50
Tempo reduced by -50% 60 sec
Beats-Per-Second rate adjusted to 60 BPM (original is 73.9 BPM). Note: This is equivalent to decreasing tempo by -18.8 %.
command syntax:
soundstretch input.wav output.wav -bpm=60
37 sec
Beats-Per-Second rate adjusted to 100 BPM (original is 73.9 BPM). Note This is equivalent to increasing tempo by +35.3%.
command syntax:
soundstretch input.wav output.wav -bpm=100
22 sec
Pitch lowered by -3 semi-tones.
command syntax:
soundstretch input.wav output.wav -pitch=-3
30 sec
Pitch raised by +3 semi-tones.
command syntax:
soundstretch input.wav output.wav -pitch=+3
30 sec
Playback rate increased by +35%. Note: This would be equivalent to playing a 331/3RPM vinyl LP audio disc at 45 RPM...
command syntax:
soundstretch input.wav output.wav -rate=+35
Rate increased by +35% 22 sec

NOTICE: SoundStretch processes audio files in .wav file format, but these clips here have been converted to mp3 format after processing to reduce downloading times.


The SoundStretch utility is included in the SoundTouch library package. Go to Download page to get the SoundStretch executable file, or SoundTouch source code page to download the source code package.

SoundStretch usage Instructions

See SoundTouch library README for SoundStretch usage instructions.


The SoundStretch utility and the SoundTouch library are open-source software and are released under the GNU Lesser General Public License (GPL) v2.1. The utility and library can be further distributed and used in applications subject to the LGPL license terms.

Back to SoundTouch main page

Copyright © Olli Parviainen