1			      SoX: Sound eXchange
2			      ===================
3
4SoX (Sound eXchange) is the Swiss Army knife of sound processing tools: it
5can convert sound files between many different file formats & audio devices,
6and can apply many sound effects & transformations, as well as doing basic
7analysis and providing input to more capable analysis and plotting tools.
8
9SoX is licensed under the GNU GPL and GNU LGPL.  To be precise, the 'sox'
10and 'soxi' programs are distributed under the GPL, while the library
11'libsox' (in which most of SoX's functionality resides) is dual-licensed.
12Note that some optional components of libsox are GPL only: if you use these,
13you must use libsox under the GPL.  See INSTALL for the list of optional
14components and their licences.
15
16If this distribution is of source code (as opposed to pre-built binaries),
17then you will need to compile and install SoX as described in the 'INSTALL'
18file.
19
20Changes between this release and previous releases of SoX can be found in
21the 'ChangeLog' file; a summary of the file formats and effects supported in
22this release can be found below.  Detailed documentation for using SoX can
23be found in the distributed 'man' pages:
24
25  o  sox(1)
26  o  soxi(1)
27  o  soxformat(7)
28  o  libsox(3)
29
30or in plain text or PDF files for those systems without man.
31
32The majority of SoX features and fixes are contributed by SoX users - thank
33you very much for making SoX a success!  There are several new features
34wanted for SoX, listed on the feature request tracker at the SoX project
35home-page:
36
37		    http://sourceforge.net/projects/sox
38
39users are encouraged to implement them!
40
41Please submit bug reports, new feature requests, and patches to the relevant
42tracker at the above address, or by email:
43
44		   mailto:sox-devel@lists.sourceforge.net
45
46Also accessible via the project home-page is the SoX users' discussion
47mailing list which you can join to discuss all matters SoX with other SoX
48users; the mail address for this list is:
49
50		   mailto:sox-users@lists.sourceforge.net
51
52The current release handles the following audio file formats:
53
54
55  o  Raw files in various binary formats
56  o  Raw textual data
57  o  Amiga 8svx files
58  o  Apple/SGI AIFF files
59  o  SUN .au files
60    o  PCM, u-law, A-law
61    o  G7xx ADPCM files (read only)
62    o  mutant DEC .au files
63    o  NeXT .snd files
64  o  AVR files
65  o  CDDA (Compact Disc Digital Audio format)
66  o  CVS and VMS files (continuous variable slope)
67  o  Grandstream ring-tone files
68  o  GSM files
69  o  HTK files
70  o  LPC-10 files
71  o  Macintosh HCOM files
72  o  Amiga MAUD files
73  o  AMR-WB & AMR-NB (with optional libamrwb & libamrnb libraries)
74  o  MP2/MP3 (with optional libmad, libtwolame and libmp3lame libraries)
75  o  Opus files (read only; with optional Opus libraries)
76
77  o  Ogg Vorbis files (with optional Ogg Vorbis libraries)
78  o  FLAC files (with optional libFLAC)
79  o  IRCAM SoundFile files
80  o  NIST SPHERE files
81  o  Turtle beach SampleVision files
82  o  Sounder & Soundtool (DOS) files
83  o  Yamaha TX-16W sampler files
84  o  SoundBlaster .VOC files
85  o  Dialogic/OKI ADPCM files (.VOX)
86  o  Microsoft .WAV files
87    o  PCM, floating point
88    o  u-law, A-law, MS ADPCM, IMA (DMI) ADPCM
89    o  GSM
90    o  RIFX (big endian)
91  o  WavPack files (with optional libwavpack library)
92  o  Psion (palmtop) A-law WVE files and Record voice notes
93  o  Maxis XA Audio files
94    o  EA ADPCM (read support only, for now)
95  o  Pseudo formats that allow direct playing/recording from most audio devices
96  o  The "null" pseudo-file that reads and writes from/to nowhere
97
98
99The audio effects/tools included in this release are as follows:
100
101  o  Tone/filter effects
102    o  allpass: RBJ all-pass biquad IIR filter
103    o  bandpass: RBJ band-pass biquad IIR filter
104    o  bandreject: RBJ band-reject biquad IIR filter
105    o  band: SPKit resonator band-pass IIR filter
106    o  bass: Tone control: RBJ shelving biquad IIR filter
107    o  equalizer: RBJ peaking equalisation biquad IIR filter
108    o  firfit+: FFT convolution FIR filter using given freq. response (W.I.P.)
109    o  highpass: High-pass filter: Single pole or RBJ biquad IIR
110    o  hilbert: Hilbert transform filter (90 degrees phase shift)
111    o  lowpass: Low-pass filter: single pole or RBJ biquad IIR
112    o  sinc: Sinc-windowed low/high-pass/band-pass/reject FIR
113    o  treble: Tone control: RBJ shelving biquad IIR filter
114
115  o  Production effects
116    o  chorus: Make a single instrument sound like many
117    o  delay: Delay one or more channels
118    o  echo: Add an echo
119    o  echos: Add a sequence of echos
120    o  flanger: Stereo flanger
121    o  overdrive: Non-linear distortion
122    o  phaser: Phase shifter
123    o  repeat: Loop the audio a number of times
124    o  reverb: Add reverberation
125    o  reverse: Reverse the audio (to search for Satanic messages ;-)
126    o  tremolo: Sinusoidal volume modulation
127
128  o  Volume/level effects
129    o  compand: Signal level compression/expansion/limiting
130    o  contrast: Phase contrast volume enhancement
131    o  dcshift: Apply or remove DC offset
132    o  fade: Apply a fade-in and/or fade-out to the audio
133    o  gain: Apply gain or attenuation; normalise/equalise/balance/headroom
134    o  loudness: Gain control with ISO 226 loudness compensation
135    o  mcompand: Multi-band compression/expansion/limiting
136    o  norm: Normalise to 0dB (or other)
137    o  vol: Adjust audio volume
138
139  o  Editing effects
140    o  pad: Pad (usually) the ends of the audio with silence
141    o  silence: Remove portions of silence from the audio
142    o  splice: Perform the equivalent of a cross-faded tape splice
143    o  trim: Cuts portions out of the audio
144    o  vad: Voice activity detector
145
146  o  Mixing effects
147    o  channels: Auto mix or duplicate to change number of channels
148    o  divide+: Divide sample values by those in the 1st channel (W.I.P.)
149    o  remix: Produce arbitrarily mixed output channels
150    o  swap: Swap pairs of channels
151
152  o  Pitch/tempo effects
153    o  bend: Bend pitch at given times without changing tempo
154    o  pitch: Adjust pitch (= key) without changing tempo
155    o  speed: Adjust pitch & tempo together
156    o  stretch: Adjust tempo without changing pitch (simple alg.)
157    o  tempo: Adjust tempo without changing pitch (WSOLA alg.)
158
159  o  Mastering effects
160    o  dither: Add dither noise to increase quantisation SNR
161    o  rate: Change audio sampling rate
162
163  o  Specialised filters/mixers
164    o  deemph: ISO 908 CD de-emphasis (shelving) IIR filter
165    o  earwax: Process CD audio to best effect for headphone use
166    o  noisered: Filter out noise from the audio
167    o  oops: Out Of Phase Stereo (or `Karaoke') effect
168    o  riaa: RIAA vinyl playback equalisation
169
170  o  Analysis `effects'
171    o  noiseprof: Produce a DFT profile of the audio (use with noisered)
172    o  spectrogram: graph signal level vs. frequency & time (needs `libpng')
173    o  stat: Enumerate audio peak & RMS levels, approx. freq., etc.
174    o  stats: Multichannel aware `stat'
175
176  o  Miscellaneous effects
177    o  ladspa: Apply LADSPA plug-in effects e.g. CMT (Computer Music Toolkit)
178    o  synth: Synthesise/modulate audio tones or noise signals
179    o  newfile: Create a new output file when an effects chain ends.
180    o  restart: Restart 1st effects chain when multiple chains exist.
181
182  o  Low-level signal processing effects
183    o  biquad: 2nd-order IIR filter using externally provided coefficients
184    o  downsample: Reduce sample rate by discarding samples
185    o  fir: FFT convolution FIR filter using externally provided coefficients
186    o  upsample: Increase sample rate by zero stuffing
187
188  + Experimental or incomplete effect; may change in future.
189
190Multiple audio files can be combined (and then further processed with
191effects) using any one of the following combiner methods:
192
193  o  concatenate
194  o  mix
195  o  merge: E.g. two mono files to one stereo file
196  o  sequence: For playing multiple audio files/streams
197