shithub: sox

Download patch

ref: e30f496ce4e358faf9598b94f8c6ea1b6c79a306
parent: 9bddfb82cc8aa239fe499dcfa3ed32edc72f2ed6
author: cbagwell <cbagwell>
date: Sun Dec 12 16:12:56 EST 1999

Updating documentation.

--- a/CHEAT
+++ /dev/null
@@ -1,110 +1,0 @@
-CHEAT SHEET
------------
-
-This is a cheat sheet of examples using SOX to do various common 
-sound file conversions.  The file format examples are starting
-to become dated.  Any offers to update this document to explain 
-the ends and outs of each format would be appreciated.
-
-In general, sox will attempt to take an input sound file format and
-convert it to a new file format using a similar data types and sample
-rates.  For instance "sox monkey.au monkey.wav" would try and convert
-the mono 8000Hz u-law .au file to a 8000Hz u-law .wav file.
-
-If an output format doesn't support the same data types as the input
-file then Sox will generally select a default format to save it in.
-You can select a data type of your choice using command line options.
-You can also override data type values to have a output file of
-higher or lower percision data (and thus higher or lower file size).
-
-Most file formats that contain complete headers will automatically
-convert to a similar format.  This means .wav, .aiff, and .voc files
-will readily convert to each other without the need of complex
-command lines.
-
-If you create a sound file and you can not play it, check to make
-sure your sound card to play a file using this data type.
-
-SOX is great to use along with other command line programs.  The
-currently most used example is to use mpg123 to convert mp3 files
-in to wav files.  The following command line will do this:
-
-mpg123 -b 10000 -s filename.mp3 | sox -t raw -r 44100 -s -w -c 2 - filename.wav
-
-The SUN examples below all assume you have the old SUN voice-quality 8khz 
-u-law hardware.  If you do then you will want to have all your .au
-files in this format so that you cat do thinks like
-"cat soundfile.au > /dev/audio" and you will hear a good file.
-If the .AU file doesn't have a proper header, then you'll need the second 
-command line to let sox know the values.  If the .AU has a proper
-header then you can remove the "-r 8000 -U -b" in front of 
-"file.au".
-
-SUN .au to Mac .snd:
-
-	sox file.au -r 11025 -t ub file.snd
-or:
-	sox -t ul -r 8000 file.au -r 11025 -t ub file.snd
-
-When you copy the file to the Mac, you'll have to set
-the sample rate by hand.
-
-Mac .snd to SUN .au
-
-	sox -r 11025 -t ub file.snd -r 8000 -U -b file.au
-
-The Mac file might also be at sample rates 5012, 22050, or 44100.
-
-PC .voc to SUN .au
-
-	sox file.voc -r 8000 -U -b file.au
-
-SUN .au to PC .voc 
-
-	sox file.au file.voc 
-or:
-	sox -r 8000 -t ul file.au file.voc 
-
-SUN .au to WAV - without clipping
-	
-	sox file.au -s -w file.wav
-or:
-	sox -t ul -r 8000 file.au -s -w file.wav
-
-WAV to SUN .au
-	
-	sox file.wav -r 8000 -U -b file.au
-
-WAV to VOC
-	sox file.wav -u -b file.voc
-
-VOC to WAV
-	sox file.voc file.wav
-
-Any file to SUN .au
-
-sox -t auto file.X -c 1 -t aiff - |  sox -t aiff - -r 8000 -U -b -t au file.au
-
-Just convert file format without making a disk file.
-Example: convert input stream in AIFF format to output stream in WAV format:
-
-sox -t aiff - -t wav -
-
-Some people try to put this kind of command in scripts.
-
-It is important to understand how the internals of Sox work when
-working with compressed audio, including u-law, a-law, ADPCM, or GSM.
-Sox takes ALL input data types and converts them to uncompressed
-32-bit signed data.  It will then convert this internal version into
-the requested output format.  This means unneeded noise can be introduced
-from decompressing data and then recompressing, such as would happen
-when reading u-law data and writing back out u-law data.  If possible,
-specify the output data to be uncompressed PCM.
-
-Under DOS, you can convert several using something similar to the
-following command line:
-
-FOR %X IN (*.RAW) DO sox -r 11025 -w -s -t raw $X $X.wav
-
-Good luck!
-
--- a/CHEAT.eft
+++ /dev/null
@@ -1,280 +1,0 @@
-This is a cheat sheet of examples using SOX to
-add effects on sound files.
-
-Introduction:
-
-The core problem is that you need some experience in using effects
-in order to say "that any old sound file sounds with effects
-absolutely hip". There isn't any rule-based system which tell you
-the correct setting of all the parameters for every effect.
-But after some time you will become an expert in using effects.
-
-Here are some examples which can be used with any music sample.
-(For a sample where only a single instrument is playing, extreme
-parameter setting may make well-known "typically" or "classical"
-sounds. Likewise, for drums, vocals or guitars.)
-Single effects will be explained and some given parameter settings
-that can be used to understand the theorie by listening to the sound file
-with the added effect.
-
-Using multiple effects in parallel or in sequel can result either
-in very perfect sound or ( mostly ) in a dramatic overloading in
-variations of sounds such that your ear may follow the sound but
-you will feel unsatisfied. Hence, for the first time using effects
-try to compose them as less as possible. We don't regard the
-composition of effects in the examples because to many combinations
-are possible and you really need a very fast maschine and a lot of
-memory to play them in real-time.
-
-And real-time playing of sounds will speed up learning the parameter
-setting.
-
-Basically, we will use the "play" front-end of SOX since it is easier
-to listen sounds coming out of the speaker or earphone instead
-of looking at cryptical data in sound files.
-
-For easy listening of file.xxx ( "xxx" is any sound format ):
-
-	play file.xxx effect-name effect-parameters
-
-Or more SOX-like ( for "dsp" output ):
-
-	sox file.xxx -t ossdsp -w -s /dev/dsp effect-name effect-parameters
-
-or ( for "au" output ):
-
-	sox file.xxx -t sunau -w -s /dev/audio effect-name effect-parameters
-
-And for date freaks:
-
-	sox file.xxx file.yyy effect-name effect-parameters
-
-Additional options can be used. However, in this case, for real-time
-playing you'll need a very fast machine.
-
-Notes:
-
-I played all examples in real-time on a Pentium 100 with 32 Mb and 
-Linux 2.0.30 using a self-recorded sample ( 3:15 min long in "wav"
-format with 44.1 kHz sample rate and stereo 16 bit ). 
-The sample should not contain any of the effects. However,
-if you take any recording of a sound track from radio or tape or cd,
-and it sounds like a live concert or ten people are playing the same
-rhythm with their drums or funky-groves, then take any other sample.
-(Typically, less then four different intruments and no synthesizer
-in the sample is suitable. Likewise, the combination vocal, drums, bass
-and guitar.)
-
-Effects:
-
-Echo
-----
-
-An echo effect can be naturally found in the mountains, standing somewhere
-on a moutain and shouting a single word will result in one or more repetitions
-of the word ( if not, turn a bit around ant try next, or climb to the next
-mountain ).
-
-However, the time difference between shouting and repeating is the delay 
-(time), its loudness is the decay. Multiple echos can have different delays and
-decays.
-
-Very popular is using echos to play an instrument with itself together, like
-some guitar players ( Brain May from Queen ) or vocalists are doing.
-For music samples of more than one instrument, echo can be used to add a
-second sample shortly after the original one.
-This will sound as doubling the number of instruments playing the same sample:
-
-	play file.xxx echo 0.8 0.88 60.0 0.4
-
-If the delay is very short then it sound like a (metallic) roboter playing
-music:
-
-	play file.xxx echo 0.8 0.88 6.0 0.4
-
-Longer delay will sound like a open air concert in the mountains:
-
-	play file.xxx echo 0.8 0.9 1000.0 0.3
-
-One mountain more, and:
-
-	play file.xxx echo 0.8 0.9 1000.0 0.3 1800.0 0.25
-
-Echos
------
-
-Like the echo effect, echos stand for "ECHO in Sequel", that is the first echos
-takes the input, the second the input and the first echos, the third the input
-and the first and the second echos, ... and so on.
-Care should be taken using many echos ( see introduction ); a single echos
-has the same effect as a single echo.
-The sample will be bounced twice in symmetric echos:
-
-	play file.xxx echos 0.8 0.7 700.0 0.25 700.0 0.3
-
-The sample will be bounced twice in asymmetric echos:
-
-	play file.xxx echos 0.8 0.7 700.0 0.25 900.0 0.3
-
-The sample will sound as played in a garage:
-
-	play file.xxx echos 0.8 0.7 40.0 0.25 63.0 0.3
-
-Chorus
-------
-
-The chorus effect has its name because it will often be used to make a single 
-vocal sound like a chorus. But it can be applied to other instrument samples
-too.
-
-It works like the echo effect with a short delay, but the delay isn't constant.
-The delay is varied using a sinodial or triangular modulation. The modulation
-depth defines the range the modulated delay is played before or after the
-delay. Hence the delayed sound will sound slower or faster, that is the delayed
-sound tuned around the original one, like in a chorus where some vocal are
-a bit out of tune.
-
-The typical delay is around 40ms to 60ms, the speed of the modualtion is best
-near 0.25Hz and the modulation depth around 2ms.
-
-A single delay will make the sample more overloaded:
-
-	play file.xxx chorus 0.7 0.9 55.0 0.4 0.25 2.0 -t
-
-Two delays of the original samples sound like this:
-
-	play file.xxx chorus 0.6 0.9 50.0 0.4 0.25 2.0 -t 60.0 0.32 0.4 1.3 -s
-
-A big chorus of the sample is ( three additional samples ):
-
-	play file.xxx chorus 0.5 0.9 50.0 0.4 0.25 2.0 -t 60.0 0.32 0.4 2.3 -t \
-		40.0 0.3 0.3 1.3 -s
-
-Flanger
--------
-
-The flanger effect is like the chorus effect, but the delay varies between
-0ms and maximal 5ms. It sound like wind blowing, sometimes faster or slower
-including changes of the speed.
-
-The flanger effect is widely used in funk and soul music, where the guitar 
-sound varies frequently slow or a bit faster.
-
-The typical delay is around 3ms to 5ms, the speed of the modulation is best
-near 0.5Hz.
-
-Now, let's groove the sample:
-
-	play file.xxx flanger 0.6 0.87 3.0 0.9 0.5 -s
-
-listen carefully between the difference of sinodial and triangular modulation:
-
-	play file.xxx flanger 0.6 0.87 3.0 0.9 0.5 -t
-
-If the decay is a bit lower, than the effect sounds more popular:
-
-	play file.xxx flanger 0.8 0.88 3.0 0.4 0.5 -t
-
-The drunken loundspeaker system:
-
-	play file.xxx flanger 0.9 0.9 4.0 0.23 1.3 -s
-
-Reverb
-------
-
-The reverb effect is often used in audience hall which are to small or to many
-visitors disturb the reflection of sound at the walls to make the sound played
-more monumental. You can try the reverb effect in your bathroom or garage or
-sport halls by shouting loud some words. You'll hear the words reflected from
-the walls.
-
-The biggest problem in using the reverb effect is the correct setting of the
-(wall) delays such that the sound is relistic an doesn't sound like music
-playing in a tin or overloaded feedback distroys any illusion of any big hall.
-To help you for much realisitc reverb effects, you should decide first, how
-long the reverb should take place until it is not loud enough to be registered
-by your ears. This is be done by the reverb time "t", in small halls 200ms in
-bigger one 1000ms, if you like. Clearly, the walls of such a hall aren't far
-away, so you should define its setting be given every wall its delay time.
-However, if the wall is to far eway for the reverb time, you won't hear the
-reverb, so the nearest wall will be best "t/4" delay and the farest "t/2".
-You can try other distances as well, but it won't sound very realistic.
-The walls shouldn't stand to close to each other and not in a multiple interger
-distance to each other ( so avoid wall like: 200.0 and 202.0, or something
-like 100.0 and 200.0 ).
-
-Since audience halls do have a lot of walls, we will start designing one 
-beginning with one wall:
-
-	play file.xxx reverb 1.0 600.0 180.0
-
-One wall more:
-
-	play file.xxx reverb 1.0 600.0 180.0 200.0
-
-Next two walls:
-
-	play file.xxx reverb 1.0 600.0 180.0 200.0 220.0 240.0
-
-Now, why not a futuristic hall with six walls:
-
-	play file.xxx reverb 1.0 600.0 180.0 200.0 220.0 240.0 280.0 300.0
-
-If you run out of machine power or memory, then stop as much applications
-as possible ( every interupt will consume a lot of cpu time which for
-bigger halls is absolutely neccessary ).
-
-Phaser
-------
-
-The phaser effect is like the flanger effect, but it uses a reverb instead of
-an echo and does phase shifting. You'll hear the difference in the examples
-comparing both effects ( simply change the effect name ).
-The delay modulation can be done sinodial or triangular, preferable is the
-later one for multiple instruments playing. For single instrument sounds
-the sinodial phaser effect will give a sharper phasing effect.
-The decay shouln't be to close to 1.0 which will cause dramatic feedback.
-A good range is about 0.5 to 0.1 for the decay.
-
-We will take a parameter setting as for the flanger before ( gain-out is
-lower since feedback can raise the output dramatically ):
-
-	play file.xxx phaser 0.8 0.74 3.0 0.4 0.5 -t
-
-The drunken loundspeaker system ( now less alkohol ):
-
-	play file.xxx phaser 0.9 0.85 4.0 0.23 1.3 -s
-
-A popular sound of the sample is as follows:
-
-	play file.xxx phaser 0.89 0.85 1.0 0.24 2.0 -t
-
-The sample sounds if ten springs are in your ears:
-
-	play file.xxx phaser 0.6 0.66 3.0 0.6 2.0 -t
-
-Other effects ( copy, rate, avg, stat, vibro, lowp, highp, band, reverb )
--------------
-
-The other effects are simply to use. However, an "easy to use manual" should
-be given here.
-
-More effects ( to do ! )
-------------
-
-There are a lot of effects around like noise gates, compressors, waw-waw,
-stereo effects and so on. They should be implemented making SOX to be more
-useful in sound mixing technics coming together with a great varity of
-different sound effects.
-
-Combining effects be using then in parallel or sequel on different channels
-needs some easy mechanism which is real-time stable.
-
-Really missing, is the changing of the parameters, starting and stoping of
-effects while playing samples in real-time!
-
-
-Good luck and have fun with all the effects!
-
-	Juergen Mueller		(jmueller@uia.ua.ac.be)
-
--- a/Changelog
+++ b/Changelog
@@ -60,6 +60,9 @@
   o Fixed clip24() range as pointed out by Ted Powell.
   o Fixed possible segfault in echos effect, as pointed out by Zinx
     Verituse.
+  o Moved most documentation to new "soxexam.1" manual page so that
+    all users on a unix system will have access to important information.
+    This means no more TIPS, CHEATS, or CHEATS.eft files.
 
 sox-12.16
 ---------
--- a/INSTALL
+++ b/INSTALL
@@ -57,12 +57,14 @@
 can be obtained from http://www.cs.tu-berlin.de/~jutta/toast.html
 After installing the GSM library you must point to this file by
 commenting and modifying the appropriate section of the Makefile.
+The "configure" script should be able to detect the installation of
+the external GSM library and compile in support on its own.
 
 Optional Compile Options
 ------------------------
 
 If you're processing lots of u-law or a-law files, you should
-define FAST_ULAW_COMPRESSION and/or FAST_ALAW_COMPRESSION in your 
+define FAST_ULAW_CONVERSION and/or FAST_ALAW_CONVERSION in your 
 Makefile.  These substitute a table-based method for the standard method.
 The tables are 32K, so if you don't want them, you don't have to
 use them.  It is automatically added to your Makefile if you run
--- a/Makefile.gcc
+++ b/Makefile.gcc
@@ -208,6 +208,7 @@
 man: sox.1 libst.3
 	$(RM) sox.txt libst.txt
 	nroff -man sox.1 | col -b > sox.txt
+	nroff -man soxexam.1 | col -b > sox.txt
 	nroff -man libst.3 | col -b > libst.txt
 
 install: sox
@@ -214,7 +215,7 @@
 	if [ -f $(BINDIR)/rec ] ; then $(RM) $(BINDIR)/rec ; fi
 	if [ -f $(MANDIR)/man1/rec.1 ] ; then $(RM) $(MANDIR)/man1/rec.1 ; fi
 	install -c -m 755 sox play $(BINDIR)
-	install -c -m 644 sox.1 play.1 $(MANDIR)/man1
+	install -c -m 644 sox.1 soxexam.1 play.1 $(MANDIR)/man1
 	ln -s $(BINDIR)/play $(BINDIR)/rec
 	ln -s $(MANDIR)/man1/play.1 $(MANDIR)/man1/rec.1
 
--- a/README
+++ b/README
@@ -2,7 +2,7 @@
 
 
 SoX (also known as Sound eXchange) translates sound samples between different
-file formats, and optionally performs various sound effects.  
+file formats, and optionally performs various sound effects.
 
 This release understands:
 
@@ -10,8 +10,9 @@
   o Raw textual data
   o Microsoft .WAV files
     o PCM, u-law, a-law
-    o MS ADPCM (Read only)
-    o IMA ADPCM (Read only)
+    o MS ADPCM
+    o IMA ADPCM
+    o GSM
   o MAUD files
   o Sound Blaster .VOC files
   o IRCAM SoundFile files
@@ -31,19 +32,22 @@
 The sound effects include:
 
   o Channel Averaging
-  o Band-pass filter
+  o Band-pass filters
+  o Band-reject filter
   o Chorus effect
   o Cut out loop samples
   o Add an echo 
   o Add a sequence of echos
   o Apply a flanger effect
-  o Apply a high-pass filter
-  o Apply a low-pass filter
+  o Apply a high-pass filters
+  o Apply a low-pass filters
   o Display a list of loops in a file
   o Add masking noise to a signal
   o Apply a phaser effect
   o Convert from stereo to mono
-  o Change sampling rates using several different algorithms.
+  o Change sampling rates using several different algorithms.A
+     'resample' and 'poyphase' effect use high-grade signal rate
+     changes using real signal theory!
   o Apply a reverb effect
   o Reverse the sound samples (to search for Satanic messages ;-)
   o Convert from mono to stereo
@@ -51,12 +55,6 @@
   o Display general stats on a sound sample
   o Add the world-famous Fender Vibro-Champ effect
 
-Big news! Lots of new effects have been added.  This includes most the
-popular "Guitar Effects" talked about in the same named FAQ available.
-
-The 'resample' and 'polyphase' effect does high-grade signal rate
-changes using real signal theory.  Yes, it's very slow.
-
 History:
 
 This is the 12th release, Patchlevel 17 of the Sound Tools.
@@ -67,6 +65,9 @@
 
 Caveats:
 
+Technically, SoX is made up of a sound file processing library called libst
+and SoX is a program implemented using this library.
+
 SoX is intended as the Swiss Army knife of sound processing tools.  It 
 doesn't do anything very well, but sooner or later it comes in very handy.
 SoX is really only usable day-to-day if you hide the wacky options with 
@@ -78,16 +79,10 @@
 SoX as described in the INSTALL file.  Please read that file for further
 instructions.
 
-Now, read TIPS, CHEAT.eft and CHEAT.  These give a background on how
+Now, read sox.txt and soxexam.txt.  This gives a background on how
 SoX deals with sound files and how to convert this format
 to that format, and apply various effects.
 
-SoX uses file suffices to determine the nature of a sound sample file.
-If it finds the suffix in its list, it uses the appropriate read
-or write handler to deal with that file.  You may override the suffix
-by giving a different type via the '-t type' argument.  See the manual
-page for more information.
-
 SoX has an auto-detect feature that attempts to figure out
 the nature of an unmarked sound sample.  It works very well.
 This feature is used if you specify '-t auto' for the file type.
@@ -95,11 +90,6 @@
 I hope to inspire the creation of a common base of sound processing
 tools for computer multimedia work, similar to the PBM toolkit for 
 image manipulation.
-
-Sound Tools may be used for any purpose.  Source distributions must
-must include the copyright notices, and (lack of) warranty information.
-Binary distributions must include acknowledgements to the creators.
-Files are copyright by their respective authors.
 
 If you have bug fixes/enhancements, please send it to me as I would like
 to coordinate the releases.  Please document your changes.  I don't 
--- a/TIPS
+++ /dev/null
@@ -1,145 +1,0 @@
-
-SOX usage:
-	sox [options] from-file-args to-file-args [ effect [effect-args]]
-
-First off: the -V option makes SOX print out its idea of
-what it is doing.  -V is your friend.
-	
-	sox -V from-file-args to-file-args
-
-From-file-args and to-file-args are the same. 
-They are a series of options followed by a file name.
-The suffix on the file name usually is the file format type.
-The '-t xx' option overrides this and tells sox 
-the the file format is 'xx'.  The '-u/-s/-U' arguments
-say that the file is in unsigned, signed, or u-law format.
-The '-b/-w' arguments say that the file is in byte- or
-word-size (2 byte) samples.  The '-r number' argument
-says that the sample rate of the file is 'number'.
-
-The extensions ub, uw, sb, sw, and ul correspond
-to raw data files of formats unsigned byte, unsigned 
-word, signed byte, signed word, and u-law byte.
-Thus, '-t ul' is shorthand for '-t raw -U -b'.
-
-These conversions clip data and thus reduce sound quality, 
-so be careful:
-
-	Word to u-law.
-	Word to byte.
-	U-law to byte.
-	Reduction in sample rate.
-
-Any reduction in the sample data rate loses information
-and adds noise.  An increase in the data rate doesn't
-lose much information, but does add noise.  See the
-note below on low-pass filtering.
-
-To convert U-law to something else without clipping,
-you'll have to convert it to (signed or unsigned) words,
-which will double the size of the file.
-
-AUTO files:
-The 'AUTO' file type reads an unknown file and
-attempts to discern its binary format.
-
-AIFF files:
-AIFF files come with complete headers and other
-info.  They can in fact have multiple sound
-chunks and picture chunks.  SOX only reads
-the first sound chunk. 
-
-WAV files:
-WAVs use the RIFF format, which is Microsoft's
-needless imitation of AIFF.  See above comments.
-
-AIFF and RIFF files need their own librarian
-programs; SOX can only do a small fraction of
-what they need.
-
-It's best if you can copy or store files in
-AIFF or WAV format.  The sample rate and 
-binary format are marked; also comments may 
-be added to the file.
-
-SUN AU files:
-Most AU files you find are in 8khz 8-bit u-law format.
-This format was the first sound hardware SUN made available.
-Some of the files have correct headers; some do not.
-If the file has the header, this should convert it to
-another format:
-
-	sox file.au to-file-args
-
-If not, this reads a raw u-law 8khz file:
-	
-	sox -t ul -r 8000 file.au to-file-args
-
-To convert a file to an old-style SUN .au file:
-
-	sox from-file-args -r 8000 -U -b file.au
-
-AU format can have any speed and several data sizes;
-you need to specify '-r 8000 -U -b' to force SOX to
-use the old SUN format.
-
-Mac files:
-Mac files come in .snd, .aiff, and .hcom formats,
-among others; these are the most common.
-
-SND files are in unsigned byte format with no
-header.  They are either 11025, 22050, or 44100 hz.
-The speed seems to be a "resource" and doesn't
-get transported to Unix when the files are.
-Thus, you just have to know.
-
-	sox -r 11025 -t ub file.snd to-file-args
-	sox from-file-args -r 11025 -t ub file.snd
-
-PC files:
-There are several PC sound file formats. VOC is
-common; it has headers.  SND and SNDR are for
-some DOS sound package; I don't know much about them.
-WAV is the official Microsoft Windows format.
-WAV has format options for compressed sound;
-SOX doesn't implement this yet.  
-
-
-Effects:
-A sound effect may be applied to the sound sample
-while it is being copied from one file to another.
-Copy is the default effect; i.e. do nothing.
-Changing the sample rate requires the 'rate'
-effect.  This applies a simple linear interpolation
-to the sample.  This is a poor-quality sample
-changer.  After doing a rate conversion,
-you should try doing a low-pass filter to throw
-away some of the induced noise.  Pick a 'center'
-frequency about 85% of the lower of the two
-frequencies, or 42.5% of the lower of the
-two sample rates.  (The maximum frequency
-in a sample is 1/2 of the sample rate).
-
-	sox -r 8000 file.xx -r 22050 tmp.yy
-	sox tmp.yy file.yy lowp 3400
-or:
-	sox -r 44100 file.xx -r 22050 tmp.yy
-	sox tmp.yy file.yy lowp 9592
-
-Listen to both tmp.yy and file.yy and see if 
-the low-pass filter helps.  Be sure to do the
-low-pass filter before clipping the data to
-a smaller binary word size.  Say you have a 16-bit
-CD-quality (44100 hz) AIFF file that you want 
-to convert to a Mac sound resource:
-
-	sox -r 44100 file.aiff -r 11025 tmp.sw
-	sox tmp.sw -t ub file.mac lowp 9371
-
-not:
-
-	sox -r 44100 file.aiff -r 11025 tmp.ub
-	sox tmp.ub -t ub file.mac lowp 9371
-
-because you want to do the low-pass filter while 
-you still have sixteen-bit data.
--- a/configure
+++ b/configure
@@ -1882,11 +1882,11 @@
 fi
 if test "$enable_fast_ulaw" = yes
 then
-	CFLAGS="$CFLAGS -DFAST_ULAW_COMPRESSION"
+	CFLAGS="$CFLAGS -DFAST_ULAW_CONVERSION"
 fi
 if test "$enable_fast_alaw" = yes
 then
-	CFLAGS="$CFLAGS -DFAST_ALAW_COMPRESSION"
+	CFLAGS="$CFLAGS -DFAST_ALAW_CONVERSION"
 fi
 
 LIBS="-L. -lst $LIBS"
--- a/libst.txt
+++ b/libst.txt
@@ -1,212 +1,213 @@
 
 
 
-C Library Functions					    ST(3)
+ST(3)							    ST(3)
 
 
-
 NAME
-     libst  -  Sound  Tools  :	sound  sample  file  and  effects
-     libraries.
+       libst  -	 Sound	Tools  :  sound	 sample	 file and effects
+       libraries.
 
 SYNOPSIS
-     cc	file.c -o file libst.a
+       cc file.c -o file libst.a
 
 DESCRIPTION
-     Sound Tools  is  a	 library  of  sound  sample  file  format
-     readers/writers and sound effects processors.
+       Sound Tools is a library of sound sample file format read-
+       ers/writers and sound effects processors.
 
-     Sound Tools includes skeleton C files to assist you in writ-
-     ing  new  formats	and  effects.  The  full skeleton driver,
-     skel.c, helps you write drivers for a new format  which  has
-     data  structures. The simple skeleton drivers help	you write
-     a new driver for raw (headerless) formats,	 or  for  formats
-     which just	have a simple header followed by raw data.
+       Sound  Tools  includes  skeleton	 C files to assist you in
+       writing	new  formats  and  effects.   The  full	 skeleton
+       driver,	skel.c,	 helps you write drivers for a new format
+       which has data structures.  The	simple	skeleton  drivers
+       help  you write a new driver for raw (headerless) formats,
+       or for formats which just have a simple header followed by
+       raw data.
 
-     Most sound	sample formats are fairly simple: they are just	a
-     string of bytes or	words and are presumed to be sampled at	a
-     known data	rate.  Most of them have a short  data	structure
-     at	the beginning of the file.
+       Most sound sample formats are fairly simple: they are just
+       a string of bytes or words and are presumed to be  sampled
+       at  a  known  data  rate.   Most of them have a short data
+       structure at the beginning of the file.
 
 INTERNALS
-     The Sound Tools formats and effects operate on  an	 internal
-     buffer  format  of	signed 32-bit longs.  The data processing
-     routines are called  with	buffers	 of  these  samples,  and
-     buffer sizes which	refer to the number of samples processed,
-     not the number of bytes.  File readers translate  the  input
-     samples to	signed longs and return	the number of longs read.
-     For example, data in linear  signed  byte	format	is  left-
-     shifted 24	bits.
+       The Sound Tools formats and effects operate on an internal
+       buffer format of signed 32-bit longs.  The data processing
+       routines are called with buffers	 of  these  samples,  and
+       buffer  sizes  which  refer  to the number of samples pro-
+       cessed, not the number of bytes.	 File  readers	translate
+       the input samples to signed longs and return the number of
+       longs read.  For example, data in linear signed byte  for-
+       mat is left-shifted 24 bits.
 
-     This does cause problems in processing the	data.  For  exam-
-     ple:
-	  *obuf++ = (*ibuf++ + *ibuf++)/2;
-     would not mix down	left and right channels	 into  one  mono-
-     phonic channel, because the resulting samples would overflow
-     32	bits.  Instead,	the ``avg'' effects must use:
-	  *obuf++ = *ibuf++/2 +	*ibuf++/2;
+       This  does  cause  problems  in	processing the data.  For
+       example:
+	    *obuf++ = (*ibuf++ + *ibuf++)/2;
+       would not mix down left and right channels into one  mono-
+       phonic  channel, because the resulting samples would over-
+       flow 32 bits.  Instead, the ``avg'' effects must use:
+	    *obuf++ = *ibuf++/2 + *ibuf++/2;
 
-     Stereo data is stored with	the left and right  speaker  data
-     in	 successive samples.  Quadraphonic data	is stored in this
-     order: left front,	right front, left rear,	right rear.
+       Stereo data is stored with the left and right speaker data
+       in  successive  samples.	  Quadraphonic	data is stored in
+       this order: left front,	right  front,  left  rear,  right
+       rear.
 
 FORMATS
-     A format is responsible for translating between sound sample
-     files  and	an internal buffer.  The internal buffer is store
-     in	signed longs with a  fixed  sampling  rate.   The  format
-     operates  from two	data structures:  a format structure, and
-     a private structure.
+       A format is responsible for translating between sound sam-
+       ple files and an internal buffer.  The internal buffer  is
+       store  in  signed  longs	 with a fixed sampling rate.  The
+       format operates from two data structures: a format  struc-
+       ture, and a private structure.
 
 
 
 
-SunOS 5.6	  Last change: October 15 1996			1
+			 October 15 1996			1
 
 
 
 
 
+ST(3)							    ST(3)
 
-C Library Functions					    ST(3)
 
+       The format structure contains a list of control parameters
+       for the sample: sampling rate, data  size  (bytes,  words,
+       floats, etc.), style (unsigned, signed, logarithmic), num-
+       ber of sound  channels.	 It  also  contains  other  state
+       information:  whether  the  sample  file needs to be byte-
+       swapped, whether fseek() will work, its suffix,	its  file
+       stream pointer, its format pointer, and the private struc-
+       ture for the format .
 
+       The private area is just a preallocated data array for the
+       format to use however it wishes.	 It should have a defined
+       data structure and cast the array to that structure.   See
+       voc.c  for  the	use of a private data area.  Voc.c has to
+       track the number of samples it writes and when  finishing,
+       seek  back  to the beginning of the file and write it out.
+       The private area is not very large.  The	 ``echo''  effect
+       has  to	malloc()  a  much  larger area for its delay line
+       buffers.
 
-     The format	structure contains a list of  control  parameters
-     for  the  sample:	sampling  rate,	 data size (bytes, words,
-     floats, etc.), style (unsigned, signed, logarithmic), number
-     of	 sound	channels.   It also contains other state informa-
-     tion: whether the sample  file  needs  to	be  byte-swapped,
-     whether  fseek()  will  work,  its	 suffix,  its file stream
-     pointer, its format pointer, and the private  structure  for
-     the format	.
+       A format has 6 routines:
 
-     The private area is just a	preallocated data array	 for  the
-     format  to	 use  however it wishes. It should have	a defined
-     data structure and	cast the array	to  that  structure.  See
-     voc.c for the use of a private data area. Voc.c has to track
-     the number	of samples it writes  and  when	 finishing,  seek
-     back  to  the  beginning  of the file and write it	out.  The
-     private area is not very large.  The ``echo'' effect has  to
-     malloc() a	much larger area for its delay line buffers.
+       startread	   Set up the format parameters, or  read
+			   in  a data header, or do what needs to
+			   be done.
 
-     A format has 6 routines:
+       read		   Given a buffer and a length:	 read  up
+			   to  that  many samples, transform them
+			   into signed long  integers,	and  copy
+			   them into the buffer.  Return the num-
+			   ber of samples actually read.
 
-     startread		 Set up	the format parameters, or read in
-			 a  data  header,  or do what needs to be
-			 done.
+       stopread		   Do what needs to be done.
 
-     read		 Given a buffer	and a length: read up  to
-			 that  many  samples, transform	them into
-			 signed	long integers, and copy	them into
-			 the  buffer.	Return the number of sam-
-			 ples actually read.
+       startwrite	   Set up the format parameters, or write
+			   out a data header, or do what needs to
+			   be done.
 
-     stopread		 Do what needs to be done.
+       write		   Given a buffer and a length: copy that
+			   many	 samples  out of the buffer, con-
+			   vert them from  signed  longs  to  the
+			   appropriate	data,  and  write them to
+			   the file.  If it can't write	 out  all
+			   the samples, fail.
 
-     startwrite		 Set up	the format parameters,	or  write
-			 out  a	 data header, or do what needs to
-			 be done.
+       stopwrite	   Fix	up  any	 file  header, or do what
+			   needs to be done.
 
-     write		 Given a buffer	and a length:  copy  that
-			 many  samples out of the buffer, convert
-			 them from signed longs	to the	appropri-
-			 ate  data,  and  write	them to	the file.
-			 If it can't write out all  the	 samples,
-			 fail.
-
-     stopwrite		 Fix up	any file header, or do what needs
-			 to be done.
-
 EFFECTS
-     An	effects	loop has one input and one output stream.  It has
-     5 routines.
+       An effects loop has one input and one output  stream.   It
+       has 5 routines.
 
-     getopts		 is called with	a character string  argu-
-			 ment list for the effect.
+       getopts		   is  called  with  a	character  string
+			   argument list for the effect.
 
 
 
-SunOS 5.6	  Last change: October 15 1996			2
 
+			 October 15 1996			2
 
 
 
 
 
-C Library Functions					    ST(3)
+ST(3)							    ST(3)
 
 
+       start		   is called with the  signal  parameters
+			   for the input and output streams.
 
-     start		 is called with	the signal parameters for
-			 the input and output streams.
+       flow		   is  called  with input and output data
+			   buffers, and (by reference) the  input
+			   and	output	data sizes.  It processes
+			   the	input  buffer  into  the   output
+			   buffer, and sets the size variables to
+			   the numbers of samples  actually  pro-
+			   cessed.   It is under no obligation to
+			   fill the output buffer.
 
-     flow		 is called with	 input	and  output  data
-			 buffers,  and	(by  reference)	the input
-			 and output data sizes.	 It processes the
-			 input buffer into the output buffer, and
-			 sets the size variables to  the  numbers
-			 of  samples  actually	processed.  It is
-			 under no obligation to	fill  the  output
-			 buffer.
+       drain		   is called  after  there  are	 no  more
+			   input  data	samples.   If  the effect
+			   wishes to generate more  data  samples
+			   it  copies  the  generated data into a
+			   given buffer and returns the number of
+			   samples  generated.	 If  it fills the
+			   buffer, it will be called again,  etc.
+			   The	echo  effect  uses  this  to fade
+			   away.
 
-     drain		 is called after there are no more  input
-			 data  samples.	  If the effect	wishes to
-			 generate more data samples it copies the
-			 generated  data  into a given buffer and
-			 returns the number of samples generated.
-			 If  it	 fills	the  buffer,  it  will be
-			 called	again, etc.  The echo effect uses
-			 this to fade away.
+       stop		   is called when there are no more input
+			   samples to process.	stop may generate
+			   output samples on its own.  See echo.c
+			   for	how to do this, and see that what
+			   it does is absolutely bogus.
 
-     stop		 is called when	there are no  more  input
-			 samples  to  process.	stop may generate
-			 output	samples	on its own.   See  echo.c
-			 for how to do this, and see that what it
-			 does is absolutely bogus.
-
 COMMENTS
-     Theoretically, formats can	be  used  to  manipulate  several
-     files  inside  one	program.  Multi-sample files, for example
-     the download for a	sampling keyboard, can be handled cleanly
-     with this feature.
+       Theoretically, formats can be used to  manipulate  several
+       files inside one program.  Multi-sample files, for example
+       the download for	 a  sampling  keyboard,	 can  be  handled
+       cleanly with this feature.
 
 PORTABILITY PROBLEMS
-     Many computers don't supply arithmetic shifting, so do  mul-
-     tiplies and divides instead of << and >>.	The compiler will
-     do	the right thing	if the CPU supplies arithmetic shifting.
+       Many  computers	don't  supply  arithmetic shifting, so do
+       multiplies and divides instead of << and >>.  The compiler
+       will  do	 the  right  thing if the CPU supplies arithmetic
+       shifting.
 
-     Do	all arithmetic conversions one stage at	a time.	 I've had
-     too many problems with "obviously clean" combinations.
+       Do all arithmetic conversions one stage at a  time.   I've
+       had too many problems with "obviously clean" combinations.
 
-     In	general, don't worry about "efficiency". The  sox.c  base
-     translator	 is  disk-bound	on any machine (other than a 8088
-     PC	with an	SMD disk controller). Just comment your	code  and
-     make  sure	it's clean and simple.	You'll find that DSP code
-     is	extremely painful to write as it is.
+       In general, don't worry	about  "efficiency".   The  sox.c
+       base translator is disk-bound on any machine (other than a
+       8088 PC with an SMD disk controller).  Just  comment  your
+       code  and  make	sure  it's clean and simple.  You'll find
+       that DSP code is extremely painful to write as it is.
 
 BUGS
-     The HCOM format is	not re-entrant;	it can only be used  once
-     in	a program.
+       The HCOM format is not re-entrant; it  can  only	 be  used
+       once in a program.
 
+       The program/library interface is pretty weak.  There's too
 
 
 
+			 October 15 1996			3
 
-SunOS 5.6	  Last change: October 15 1996			3
 
 
 
 
+ST(3)							    ST(3)
 
 
-C Library Functions					    ST(3)
+       much ad-hoc information which a	program	 is  supposed  to
+       gather  up.   Sound  Tools  wants to be an object-oriented
+       dataflow architecture.
 
 
 
-     The program/library interface is pretty weak.   There's  too
-     much  ad-hoc  information	which  a  program  is supposed to
-     gather up.	 Sound	Tools  wants  to  be  an  object-oriented
-     dataflow architecture.
 
 
 
@@ -258,7 +259,6 @@
 
 
 
-SunOS 5.6	  Last change: October 15 1996			4
-
+			 October 15 1996			4
 
 
--- a/sox.1
+++ b/sox.1
@@ -9,7 +9,7 @@
 .if t .sp .5v
 .if n .sp
 ..
-.TH SoX 1 "November 22, 1999"
+.TH SoX 1 "December 10, 1999"
 .SH NAME
 sox \- Sound eXchange : universal sound sample translator
 .SH SYNOPSIS
@@ -24,9 +24,9 @@
 .B sox
 [\fI general options \fB ]
 [ \fIformat options \fB ]
-\fIifile\fB 
+\fIinfile\fB 
 [ \fIformat options \fB ]
-\fIofile\fB 
+\fIoutfile\fB 
 [ \fIeffect\fR [ \fIeffect options ...\fB ] ]
 .P
 \fIGeneral options:\fB
@@ -105,18 +105,53 @@
 .br
 	vibro \fIspeed \fB[ \fIdepth\fB ]
 .SH DESCRIPTION
-.I Sox
-translates sound files from one format to another,
-possibly doing a sound effect.
+.I SoX
+is a command line program that can convert most popular audio files
+to most other popular audio file formats.  It can optionally apply a
+sound effect to the file during this translation.
+.P
+There are two types of audio files formats that
+.I SoX
+can work with.  The first are self-describing file formats.  These
+contain a header that completely describe the characteristics of
+the audio data that follows.
+.P
+The second type are headerless data, or sometimes called raw data.  A
+user must pass enough information to
+.I SoX
+on the command line so that it knows what type of data it contains.
+.P
+Audio data can usually be totally described by four characteristics:
+.TP 10
+rate
+The sample rate is in samples per second.  For example, CD sample rates are at 44100.
+.TP 10 
+data type
+What format the data is stored in.  Most popular are 8-bit or 16-bit words.
+.TP 10
+data format
+What encoding the data type uses.  Examples are u-law, ADPCM, or signed linear data.
+.TP 10
+channels
+How many channels are contained in the audio data.  Mono and Stereo are the two most common.
+.P
+Please refer to the
+.B soxexam(1)
+manual page for a long description with examples on how to use sox with
+various types of file formats.
 .SH OPTIONS
 The option syntax is a little grotty, but in essence:
+.P
 .br
 	sox file.au file.voc 
+.P
 .br
-translates a sound sample in SUN Sparc .AU format 
+translates a sound file in SUN Sparc .AU format 
 into a SoundBlaster .VOC file, while
+.P
 .br
 	sox -v 0.5 file.au -r 12000 file.voc rate
+.P
 .br
 does the same format translation but also 
 lowers the amplitude by 1/2 and changes
@@ -127,12 +162,12 @@
 .PP
 Format options:
 .PP
-Format options effect the file that they immediately percede.  If
+Format options effect the audio samples that they immediately percede.  If
 they are placed before the input file name then they effect the input
 data.  If they are placed before the output file name then they will
-effect the output data.  It is also possible to read a given file in
-and output it in any supported data format by specifying output format
-options.
+effect the output data.  By taking advantage of this, you can override
+a input file's currupted header or produce an output file that is totally
+different style then the input file.
 .TP 10
 \fB-t\fI filetype
 gives the type of the sound sample file.
@@ -147,7 +182,7 @@
 used with its default parameters.
 .TP 10
 \fB-s/-u/-U/-A/-a/-i/-g\fR
-The sample data is signed linear (2's complement),
+The sample data format is signed linear (2's complement),
 unsigned linear, U-law (logarithmic), A-law (logarithmic),
 ADPCM, IMA_ADPCM, or GSM.
 U-law and A-law are the U.S. and international
@@ -163,7 +198,7 @@
 quality.
 .TP 10
 \fB-b/-w/-l/-f/-d/-D\fR
-The sample data is in bytes, 16-bit words, 32-bit longwords,
+The sample data type is in bytes, 16-bit words, 32-bit longwords,
 32-bit floats, 64-bit double floats, or 80-bit IEEE floats.
 Floats and double floats are in native machine format.
 .TP 10
@@ -189,9 +224,10 @@
 General options:
 .TP 10
 \fB-e\fR
-after the input file allows you to avoid giving
-an output file and just name an effect.
-This is mainly useful with the 
+When used after the input file (so that it applies to the output file)
+it allows you to avoid giving an output filename and will not
+produce an output file.  It will apply any specified effects
+to the input file.  This is mainly useful with the
 .B stat
 effect but can be used with others.
 .TP 10
@@ -217,48 +253,20 @@
 Useful for figuring out exactly how
 .I sox
 is mangling your sound samples.
-.PP
-The input and output files may be standard input and output.
-This is specified by '-'.
-The 
-.B -t\ \fItype
-option must be given in this case,
-else 
-.I sox 
-will not know the format of the given file.
-The
-.B -t,
-.B -r,
-.B -s/-u/-U/-A,
-.B -b/-w/-l/-f/-d/-D
-and
-.B -x
-options refer to the input data when given before the
-input file name.  After, they refer to the output data.
-.PP
-If you don't give an output file name,
-.I sox
-will just read the input file.
-This is useful for validating structured file formats;
-the 
-.B stat 
-effect may also be used
-via the 
-.B -e
-option.
 .SH FILE TYPES
-.I Sox
-needs to know the formats of the input and output files.
+.I SoX
+uses the file extension of the input and output file to determine what
+type of file format to use.  This can be overriden by specifying the
+"-t" option on the command line.
+.P
+The input and output files may be read from standard in and out.  This
+is done by specifing '-' as the filename.
+.P
 File formats which have headers are checked, 
 if that header doesn't seem right,
 the program exits with an appropriate message.
-Currently, raw (no header) binary and textual data, 
-Amiga 8SVX, Apple/SGI AIFF, SPARC .AU (w/header), AVR, NeXT .SND,
-CD-R, CVSD, GSM 06.10, Mac HCOM, Sound Tools MAUD, OSS device drivers,
-Turtle Beach .SMP, Sound Blaster, Sndtool, and Sounder,
-Sun Audio device driver,
-Yamaha TX-16W Sampler, IRCAM Sound Files,  Creative Labs VOC,
-Psion .WVE, and Microsoft RIFF/WAV are supported.
+.P
+The following file formats are supported:
 .PP
 .TP 10
 .B .8svx
@@ -440,10 +448,7 @@
 override the file header, and you will be warned to this effect.
 You had better know what you are doing! Output format
 options will cause a format conversion, and the \fB.wav\fR
-will written appropriately.  Note that it is possible to
-write data of a type that cannot be specified by
-the \fB.wav\fR header, and you will be warned that
-you are writing a bad file !
+will written appropriately.
 Sox currently can read PCM, ULAW, ALAW, MS ADPCM, and IMA (or DVI) ADPCM.
 It can write all of these formats including
 .B (NEW!)
@@ -530,6 +535,12 @@
 .I center
 frequency and settling around it.
 See \fBfilter\fR for a bandpass effect with steeper shoulders.
+.TP 10
+bandpass
+Butterworth bandpass filter. Description coming soon!
+.TP 10
+bandreject
+Butterworth bandreject filter.  Description coming soon!
 .TP
 chorus \fIgain-in gain-out delay decay speed depth 
 .TP 10
@@ -628,6 +639,9 @@
 The slope of the filter is quite gentle.
 See \fBfilter\fR for a highpass effect with sharper cutoff.
 .TP 10
+highpass
+Butterworth highpass filter.  Description comming soon!
+.TP 10
 lowp \fIcenter
 Apply a low-pass filter.
 The frequency response drops logarithmically with 
@@ -636,6 +650,9 @@
 The slope of the filter is quite gentle.
 See \fBfilter\fR for a lowpass effect with sharper cutoff.
 .TP 10
+lowpass
+Butterworth lowpass filter.  Description coming soon!
+.TP 10
 map 
 Display a list of loops in a sample,
 and miscellaneous loop info.
@@ -711,7 +728,7 @@
 or
 .B polyphase.
 If you are wondering which of
-.B Sox's
+.B SoX's
 rate changing effects to use, you will want to read a
 detailed analysis of all of them at http://eakaw2.et.tu-dresden.de/~andreas/resample/resample.html
 [Nov,1999: These tests need to be updated for sox-12.17, which has bugfixes to the
@@ -864,31 +881,16 @@
 ." or other channel mixing
 effect must be requested.
 .SH BUGS
-The syntax is horrific.
-It's very tempting to include a default system that allows
-an effect name as the program name
-and just pipes a sound sample from standard input 
-to standard output, but the problem of inputting the
-sample rates makes this unworkable.
+The syntax is horrific.  Thats the breaks when trying to handle all things from the command line.
 .P
 Please report any bugs found in this version of sox to Chris Bagwell (cbagwell@sprynet.com)
 .SH FILES
 .SH SEE ALSO
-.BR play (1) ,
-.BR rec (1)
+.BR play (1),
+.BR rec (1),
+.BR soxexam(1)
 .SH NOTICES
-The echoplex effect is:
-Copyright (C) 1989 by Jef Poskanzer.
-
-Permission to use, copy, modify, and distribute this software and its
-documentation for any purpose and without fee is hereby granted, provided
-that the above copyright notice appear in all copies and that both that
-copyright notice and this permission notice appear in supporting
-documentation.  This software is provided "as is" without express or
-implied warranty.
-
 The version of Sox that accompanies this manual page is support by 
 Chris Bagwell (cbagwell@sprynet.com).  Please refer any questions 
 regarding it to this address.  You may obtain the latest version at the 
 the web site http://home.sprynet.com/~cbagwell/sox.html
-
--- a/sox.txt
+++ b/sox.txt
@@ -1,912 +1,971 @@
 
 
 
-User Commands						   SoX(1)
+SoX(1)							   SoX(1)
 
 
-
 NAME
-     sox - Sound eXchange : universal sound sample translator
+       sox - Sound eXchange : universal sound sample translator
 
 SYNOPSIS
-     sox infile	outfile
-     sox infile	outfile	[ effect [ effect options ... ]	]
-     sox infile	-e effect [ effect options ... ]
-     sox [ general options  ] [	format options	] ifile	[  format
-     options  ]	ofile [	effect [ effect	options	... ] ]
+       sox infile outfile
+       sox infile outfile [ effect [ effect options ... ] ]
+       sox infile -e effect [ effect options ... ]
+       sox [ general options  ] [ format options  ] infile [ for-
+       mat options  ] outfile [ effect [ effect options ... ] ]
 
-     General options:  [ -e ] [	-h ] [ -p ] [ -v volume	] [ -V ]
+       General options: [ -e ] [ -h ] [ -p ] [ -v volume ] [ -V ]
 
-     Format options:  [	-t filetype ] [	-r rate	 ]  [  -s/-u/-U/-
-     A/-a/-g ] [ -b/-w/-l/-f/-d/-D ] [ -c channels ] [ -x ]
+       Format	options:   [   -t  filetype  ]	[  -r  rate  ]	[
+       -s/-u/-U/-A/-a/-i/-g ] [ -b/-w/-l/-f/-d/-D ] [ -c channels
+       ] [ -x ]
 
-     Effects:
-	  avg [	-l | -r	]
-	  band [ -n ] center [ width ]
-	  check
-	  chorus  gain-in  gain	 out  delay  decay  speed   depth
-	       -s | -t [ delay decay speed depth -s | -fI-t ]
-	  compand attack1,decay1[,attack2,decay2...]
-		  in-dB1,out-dB1[,in-dB2,out-dB2...]
-		  [gain] [initial-volume]
-	  copy
-	  cut
-	  deemph
-	  echo gain-in gain-out	delay decay [ delay decay ...]
-	  echos	gain-in	gain-out delay decay [ delay decay ...]
-	  filter [ low ]-[ high	] [ window-len [ beta ]]
-	  flanger gain-in gain-out delay decay speed -s	| -fI-t
-	  highp	center
-	  lowp center
-	  map
-	  mask
-	  phaser gain-in gain-out delay	decay speed -s | -t
-	  pick
-	  polyphase [ -w < num / ham > ]
-		    [  -width <	 long  / short	/ # > ]
-		    [ -cutoff #	 ]
-	  rate
-	  resample
-	  reverb gain-out reverb-time delay [ delay ...	]
-	  reverse
-	  split
-	  stat [ debug | -v ]
-	  swap [ 1 2 3 4 ]
-	  vibro	speed [	depth ]
+       Effects:
+	    avg [ -l | -r ]
+	    band [ -n ] center [ width ]
+	    check
+	    chorus  gain-in  gain  out	delay  decay  speed depth
+		 -s | -t [ delay decay speed depth -s | -fI-t ]
+	    compand attack1,decay1[,attack2,decay2...]
+		    in-dB1,out-dB1[,in-dB2,out-dB2...]
+		    [gain] [initial-volume]
+	    copy
+	    cut
+	    deemph
+	    echo gain-in gain-out delay decay [ delay decay  ...]
+	    echos gain-in gain-out delay decay [ delay decay ...]
+	    filter [ low ]-[ high ] [ window-len [ beta ]]
+	    flanger gain-in gain-out delay decay speed -s | -fI-t
+	    highp center
+	    lowp center
+	    map
+	    mask
+	    phaser gain-in gain-out delay decay speed -s | -t
+	    pick
+	    polyphase [ -w < nut / ham > ]
+		      [	 -width <  long	 / short  / # > ]
+		      [ -cutoff #  ]
+	    rate
+	    resample
+	    reverb gain-out reverb-time delay [ delay ... ]
+	    reverse
+	    split
+	    stat [ debug | -v ]
+	    swap [ 1 2 3 4 ]
+	    vibro speed [ depth ]
 
 DESCRIPTION
-     Sox translates sound files	from one format	to another,  pos-
-     sibly doing a sound effect.
+       SoX  is a command line program that can convert most popu-
+       lar audio files to most other popular audio file	 formats.
+       It  can optionally apply a sound effect to the file during
 
 
 
-SunOS 5.6	  Last change: November	8, 1999			1
+			December 10, 1999			1
 
 
 
 
 
+SoX(1)							   SoX(1)
 
-User Commands						   SoX(1)
 
+       this translation.
 
+       There are two types of audio files formats  that	 SoX  can
+       work  with.   The  first are self-describing file formats.
+       These contain a header that completely describe the  char-
+       acteristics of the audio data that follows.
 
-OPTIONS
-     The option	syntax is a little grotty, but in essence:
-	  sox file.au file.voc
-     translates	a sound	sample in SUN Sparc  .AU  format  into	a
-     SoundBlaster .VOC file, while
-	  sox -v 0.5 file.au -r	12000 file.voc rate
-     does the same format translation but also lowers the  ampli-
-     tude by 1/2 and changes the sampling rate from 8000 hertz to
-     12000 hertz via the rate sound effect loop.
+       The  second  type are headerless data, or sometimes called
+       raw data.  A user must pass enough information to  SoX  on
+       the  command  line  so  that it knows what type of data it
+       contains.
 
-     Format options:
+       Audio data can usually be totally described by four  char-
+       acteristics:
 
-     Format options effect the file that  they	immediately  per-
-     cede.   If	 they  are placed before the input file	name then
-     they effect the input data.  If they are placed  before  the
-     output  file name then they will effect the output	data.  It
-     is	also possible to read a	given file in and  output  it  in
-     any  supported  data  format  by  specifying  output  format
-     options.
+       rate	 The  sample  rate is in samples per second.  For
+		 example, CD sample rates are at 44100.
 
-     -t	filetype
-	       gives the type of the sound sample file.
+       data type What format the data is stored in.  Most popular
+		 are 8-bit or 16-bit words.
 
-     -r	rate   Give sample rate	in Hertz of file.  To  cause  the
-	       output  file  to	have a different sample	rate then
-	       the input  file,	 include  this	option	with  the
-	       appropriate  rate  value	 along	with  the  output
-	       options.	 If the	input and output files have  dif-
-	       ferent rates then a sample rate change effect must
-	       be ran.	If a sample rate changing effect  is  not
-	       specified then a	default	one will be used with its
-	       default parameters.
+       data format
+		 What  encoding the data type uses.  Examples are
+		 u-law, ADPCM, or signed linear data.
 
-     -s/-u/-U/-A/-a/-g
-	       The sample data is signed linear	(2's complement),
-	       unsigned	linear,	U-law (logarithmic), A-law (loga-
-	       rithmic), ADPCM,	or GSM.	 U-law and A-law are  the
-	       U.S.  and  international	standards for logarithmic
-	       telephone sound compression.   ADPCM  is	 form  of
-	       sound  compression  that	 has  a	 good  compromise
-	       between	  good	  sound	   quality    and    fast
-	       encoding/decoding  time.	  GSM  is a standard used
-	       for telephone sound compression in European  coun-
-	       tries  and  its	gaining	popularity because of its
-	       quality.
+       channels	 How many channels are	contained  in  the  audio
+		 data.	 Mono and Stereo are the two most common.
 
-     -b/-w/-l/-f/-d/-D
-	       The sample data is in bytes, 16-bit words,  32-bit
-	       longwords, 32-bit floats, 64-bit	double floats, or
-	       80-bit IEEE floats.  Floats and double floats  are
-	       in native machine format.
+       Please refer to the soxexam(1)  manual  page  for  a  long
+       description  with  examples on how to use sox with various
+       types of file formats.
 
+OPTIONS
+       The option syntax is a little grotty, but in essence:
 
+	    sox file.au file.voc
 
+       translates a sound file in SUN Sparc  .AU  format  into	a
+       SoundBlaster .VOC file, while
 
-SunOS 5.6	  Last change: November	8, 1999			2
+	    sox -v 0.5 file.au -r 12000 file.voc rate
 
+       does  the  same	format	translation  but  also lowers the
+       amplitude by 1/2 and changes the sampling rate  from  8000
+       hertz to 12000 hertz via the rate sound effect loop.
 
+       Format options:
 
+       Format  options effect the audio samples that they immedi-
+       ately percede.  If they are placed before the  input  file
+       name  then they effect the input data.  If they are placed
+       before the output file name then they will effect the out-
+       put data.  By taking advantage of this, you can override a
+       input file's currupted header or produce	 an  output  file
 
 
 
-User Commands						   SoX(1)
+			December 10, 1999			2
 
 
 
-     -x	       The sample data is in XINU  format;  that  is,  it
-	       comes  from a machine with the opposite word order
-	       than yours and must be swapped  according  to  the
-	       word-size  given	 above.	  Only	16-bit and 32-bit
-	       integer	data  may  be  swapped.	   Machine-format
-	       floating-point  data is not portable.  IEEE floats
-	       are a fixed, portable format.
 
-     -c	channels
-	       The number of sound channels  in	 the  data  file.
-	       This  may be 1, 2, or 4;	for mono, stereo, or quad
-	       sound data.  To cause the output	file  to  have	a
-	       different  number of channels then the input file,
-	       include this option with	the approraite value with
-	       the  output  file options. If the input and output
-	       file have a different number of channels	then  the
-	       avg effect must be used.	 If the	avg effect is not
-	       specified on the	command	line it	will  be  invoked
-	       with default parameters.
 
-     General options:
+SoX(1)							   SoX(1)
 
-     -e	       after the input file allows you to avoid	giving an
-	       output  file  and  just	name  an effect.  This is
-	       mainly useful with the stat effect but can be used
-	       with others.
 
-     -h	       Print version number and	usage information.
+       that is totally different style then the input file.
 
-     -p	       Run in preview mode and run fast.  This will some-
-	       what  speed  up	sox  when the output format has	a
-	       different number	of channels and	a different  rate
-	       then  the  input	file.  The order that the effects
-	       are run in will be arranged for maximum speed  and
-	       not quality.
+       -t filetype
+		 gives the type of the sound sample file.
 
-     -v	volume Change amplitude	(floating point); less	than  1.0
-	       decreases,  greater  than 1.0 increases.	 Note: we
-	       perceive	 volume	 logarithmically,  not	linearly.
-	       Note: see the stat effect.
+       -r rate	 Give sample rate in Hertz of file.  To cause the
+		 output file to have a different sample rate than
+		 the  input  file,  include  this option with the
+		 appropriate rate value	 along	with  the  output
+		 options.   If	the  input  and output files have
+		 different rates then a sample rate change effect
+		 must  be  ran.	 If a sample rate changing effect
+		 is not specified then a default one will be used
+		 with its default parameters.
 
-     -V	       Print a description of processing phases.   Useful
-	       for  figuring out exactly how sox is mangling your
-	       sound samples.
+       -s/-u/-U/-A/-a/-i/-g
+		 The  sample  data  format  is signed linear (2's
+		 complement), unsigned linear,	U-law  (logarith-
+		 mic),	A-law (logarithmic), ADPCM, IMA_ADPCM, or
+		 GSM.  U-law and A-law are the U.S. and	 interna-
+		 tional standards for logarithmic telephone sound
+		 compression.  ADPCM is form of sound compression
+		 that  has  a  good compromise between good sound
+		 quality   and	 fast	encoding/decoding   time.
+		 IMA_ADPCM  is	also a form of adpcm compression,
+		 slightly simpler  and	slightly  lower	 fidelity
+		 than  Microsoft's flavor of ADPCM.  IMA_ADPCM is
+		 also called DVI_ADPCM.	 GSM is a  standard  used
+		 for  telephone	 sound	compression  in	 European
+		 countries and its gaining popularity because  of
+		 its quality.
 
-     The input and output files	may be standard	input and output.
-     This  is specified	by '-'.	 The -t	type option must be given
-     in	this case, else	sox will not know the format of	the given
-     file.   The  -t,  -r,  -s/-u/-U/-A, -b/-w/-l/-f/-d/-D and -x
-     options refer to the input	data when given	before the  input
-     file name.	 After,	they refer to the output data.
+       -b/-w/-l/-f/-d/-D
+		 The  sample data type is in bytes, 16-bit words,
+		 32-bit longwords, 32-bit floats,  64-bit  double
+		 floats,  or 80-bit IEEE floats.  Floats and dou-
+		 ble floats are in native machine format.
 
+       -x	 The sample data is in XINU format; that  is,  it
+		 comes	from  a	 machine  with	the opposite word
+		 order than yours and must be  swapped	according
+		 to  the  word-size given above.  Only 16-bit and
+		 32-bit integer data may  be  swapped.	 Machine-
+		 format	 floating-point	 data  is  not	portable.
+		 IEEE floats are a fixed, portable format.
 
+       -c channels
+		 The number of sound channels in the  data  file.
+		 This  may  be	1,  2, or 4; for mono, stereo, or
+		 quad sound data.  To cause the	 output	 file  to
+		 have  a  different  number  of channels than the
+		 input file, include this option with the  appro-
+		 raite	value  with  the output file options.  If
+		 the input  and	 output	 file  have  a	different
 
 
-SunOS 5.6	  Last change: November	8, 1999			3
 
+			December 10, 1999			3
 
 
 
 
 
-User Commands						   SoX(1)
+SoX(1)							   SoX(1)
 
 
+		 number	 of  channels then the avg effect must be
+		 used.	If the avg effect is not specified on the
+		 command  line	it  will  be invoked with default
+		 parameters.
 
-     If	you don't give an output file name, sox	 will  just  read
-     the  input	 file.	 This is useful	for validating structured
-     file formats; the stat effect may also be used  via  the  -e
-     option.
+       General options:
 
-FILE TYPES
-     Sox needs to know the formats of the input	and output files.
-     File  formats which have headers are checked, if that header
-     doesn't seem right, the program exits  with  an  appropriate
-     message.	Currently,  raw	 (no  header)  binary and textual
-     data, Amiga 8SVX, Apple/SGI AIFF, SPARC .AU (w/header), AVR,
-     NeXT  .SND,  CD-R,	 CVSD,	GSM  06.10, Mac	HCOM, Sound Tools
-     MAUD, OSS device drivers, Turtle Beach .SMP, Sound	 Blaster,
-     Sndtool, and Sounder, Sun Audio device driver, Yamaha TX-16W
-     Sampler, IRCAM Sound Files,  Creative Labs	VOC, Psion  .WVE,
-     and Microsoft RIFF/WAV are	supported.
+       -e	 When used after  the  input  file  (so	 that  it
+		 applies  to  the  output  file) it allows you to
+		 avoid giving an output	 filename  and	will  not
+		 produce an output file.  It will apply any spec-
+		 ified effects to the input file.  This is mainly
+		 useful with the stat effect but can be used with
+		 others.
 
-     .8svx     Amiga 8SVX musical instrument description format.
+       -h	 Print version number and usage information.
 
-     .aiff     AIFF files used on Apple	IIc/IIgs and SGI.   Note:
-	       the  AIFF format	supports only one SSND chunk.  It
-	       does not	support	multiple  sound	 chunks,  or  the
-	       8SVX  musical instrument	description format.  AIFF
-	       files are multimedia archives  and  and	can  have
-	       multiple	audio and picture chunks.  You may need	a
-	       separate	archiver to work with them.
+       -p	 Run in preview mode and  run  fast.   This  will
+		 somewhat speed up sox when the output format has
+		 a different number of channels and  a	different
+		 rate  than  the  input file.  The order that the
+		 effects are run in will be arranged for  maximum
+		 speed and not quality.
 
-     .au       SUN Microsystems	AU files.  There  are  apparently
-	       many  types of .au files; DEC has invented its own
-	       with a different	magic number and word order.  The
-	       .au  handler  can  read	these  files but will not
-	       write them.  Some .au files have	valid AU  headers
-	       and some	do not.	 The latter are	probably original
-	       SUN u-law 8000 hz samples.   These  can	be  dealt
-	       with using the .ul format (see below).
+       -v volume Change amplitude (floating point); less than 1.0
+		 decreases, greater than 1.0 increases.	 Note: we
+		 perceive  volume  logarithmically, not linearly.
+		 Note: see the stat effect.
 
-     .avr      Audio Visual Research
-	       The AVR format is produced by a number of  commer-
-	       cial packages on	the Mac.
+       -V	 Print a description of processing phases.   Use-
+		 ful for figuring out exactly how sox is mangling
+		 your sound samples.
 
-     .cdr      CD-R
-	       CD-R files are used  in	mastering  music  Compact
-	       Disks.	The  file format is, as	you might expect,
-	       raw stereo raw unsigned samples	at  44khz.   But,
-	       there's	some  blocking/padding oddity in the for-
-	       mat, so it needs	its own	handler.
+FILE TYPES
+       SoX uses the file extension of the input and  output  file
+       to determine what type of file format to use.  This can be
+       overriden by specifying the "-t"	 option	 on  the  command
+       line.
 
-     .cvs      Continuously Variable Slope Delta modulation
-	       Used to compress	 speech	 audio	for  applications
-	       such as voice mail.
+       The  input  and	output files may be read from standard in
+       and out.	 This is done by specifing '-' as the filename.
 
-     .dat      Text Data files
+       File formats which  have	 headers  are  checked,	 if  that
+       header  doesn't	seem  right,  the  program  exits with an
+       appropriate message.
 
+       The following file formats are supported:
 
 
-SunOS 5.6	  Last change: November	8, 1999			4
+       .8svx	 Amiga 8SVX musical instrument	description  for-
+		 mat.
 
+       .aiff	 AIFF  files  used  on	Apple  IIc/IIgs	 and SGI.
+		 Note: the AIFF format	supports  only	one  SSND
 
 
 
+			December 10, 1999			4
 
 
-User Commands						   SoX(1)
 
 
 
-	       These files contain a  textual  representation  of
-	       the  sample data.  There	is one line at the begin-
-	       ning that contains the  sample  rate.   Subsequent
-	       lines  contain  two  numeric  data items: the time
-	       since the beginning of the sample and  the  sample
-	       value.	Values are normalized so that the maximum
-	       and minimum are 1.00 and	-1.00.	This file  format
-	       can be used to create data files	for external pro-
-	       grams such as FFT  analyzers  or	 graph	routines.
-	       SoX  can	 also  convert a file in this format back
-	       into one	of the other file formats.
+SoX(1)							   SoX(1)
 
-     .gsm      GSM 06.10 Lossy Speech Compression
-	       A standard for compressing speech which is used in
-	       the  Global  Standard for Mobil telecommunications
-	       (GSM).  Its good	for its	purpose, shrinking  audio
-	       data  size,  but	 it  will introduce lots of noise
-	       when a given sound sample is encoded  and  decoded
-	       multiple	times.	This format is used by some voice
-	       mail applications.  It is  rather  CPU  intensive.
-	       GSM  in	sox is optional	and requires access to an
-	       external	GSM library.  To see if	there is  support
-	       for  gsm	run sox	-h and look for	it under the list
-	       of supported file formats.
 
-     .hcom     Macintosh HCOM files.  These are	(apparently)  Mac
-	       FSSD  files  with some variant of Huffman compres-
-	       sion.  The Macintosh has	wacky  file  formats  and
-	       this  format handler apparently doesn't handle all
-	       the ones	it should.   Mac  users	 will  need  your
-	       usual  arsenal  of file converters to deal with an
-	       HCOM file under Unix or DOS.
+		 chunk.	  It  does  not	 support  multiple  sound
+		 chunks, or the 8SVX musical instrument	 descrip-
+		 tion format.  AIFF files are multimedia archives
+		 and and can  have  multiple  audio  and  picture
+		 chunks.   You	may  need  a separate archiver to
+		 work with them.
 
-     .maud     An Amiga	format
-	       An IFF-conform sound file type, registered  by  MS
-	       MacroSystem  Computer  GmbH,  published along with
-	       the "Toccata" sound-card	 on  the  Amiga.   Allows
-	       8bit  linear,  16bit  linear, A-Law, u-law in mono
-	       and stereo.
+       .au	 SUN Microsystems AU files.  There are apparently
+		 many  types  of  .au files; DEC has invented its
+		 own with  a  different	 magic	number	and  word
+		 order.	 The .au handler can read these files but
+		 will not write them.  Some .au files have  valid
+		 AU  headers  and  some	 do  not.  The latter are
+		 probably original SUN	u-law  8000  hz	 samples.
+		 These	can  be	 dealt	with using the .ul format
+		 (see below).
 
-     ossdsp    OSS /dev/dsp device driver
-	       This is a psuedo-file type and can  be  optionally
-	       compiled	 into Sox.  Run	sox -h to see if you have
-	       support for this	file type.  When this  driver  is
-	       used  it	 allows	 you  to open up the OSS /dev/dsp
-	       file and	configure it to	use the	same data type as
-	       passed  in  to  Sox. It works for both playing and
-	       recording sound samples.	 When playing sound files
-	       it  attempts  to	 set up	the OSS	driver to use the
-	       same format as the input	file.  It is suggested to
-	       always  override	 the  output  values  to  use the
-	       highest	quality	 samples  your	sound  card   can
+       .avr	 Audio Visual Research
+		 The AVR format is produced by a number	 of  com-
+		 mercial packages on the Mac.
 
+       .cdr	 CD-R
+		 CD-R  files  are used in mastering music Compact
+		 Disks.	 The file format is, as you might expect,
+		 raw  stereo raw unsigned samples at 44khz.  But,
+		 there's some blocking/padding oddity in the for-
+		 mat, so it needs its own handler.
 
+       .cvs	 Continuously Variable Slope Delta modulation
+		 Used  to  compress speech audio for applications
+		 such as voice mail.
 
-SunOS 5.6	  Last change: November	8, 1999			5
+       .dat	 Text Data files
+		 These files contain a textual representation  of
+		 the  sample  data.   There  is	 one  line at the
+		 beginning that contains the sample rate.  Subse-
+		 quent	lines contain two numeric data items: the
+		 time since the beginning of the sample	 and  the
+		 sample value.	Values are normalized so that the
+		 maximum and minimum are 1.00  and  -1.00.   This
+		 file format can be used to create data files for
+		 external programs such as FFT analyzers or graph
+		 routines.   SoX  can also convert a file in this
+		 format back into one of the other file	 formats.
 
+       .gsm	 GSM 06.10 Lossy Speech Compression
+		 A  standard for compressing speech which is used
+		 in the Global Standard for Mobil  telecommunica-
+		 tions	(GSM).	Its good for its purpose, shrink-
+		 ing audio data size, but it will introduce  lots
+		 of  noise  when  a given sound sample is encoded
+		 and decoded multiple times.  This format is used
+		 by  some  voice mail applications.  It is rather
+		 CPU intensive.	  GSM  in  sox	is  optional  and
 
 
 
+			December 10, 1999			5
 
 
-User Commands						   SoX(1)
 
 
 
-	       handle.	Example:  -t ossdsp -w -s /dev/dsp
+SoX(1)							   SoX(1)
 
-     .sf       IRCAM Sound Files.
-	       SoundFiles are used  by	academic  music	 software
-	       such  as	the CSound package, and	the MixView sound
-	       sample editor.
 
-     .smp      Turtle Beach SampleVision files.
-	       SMP files are for use with the PC-DOS package Sam-
-	       pleVision  by Turtle Beach Softworks. This package
-	       is for communication to several MIDI samplers. All
-	       sample	rates	are  supported	by  the	 package,
-	       although	not all	are  supported	by  the	 samplers
-	       themselves. Currently loop points are ignored.
+		 requires  access to an external GSM library.  To
+		 see if there is support for gsm run sox  -h  and
+		 look  for  it	under  the list of supported file
+		 formats.
+
+       .hcom	 Macintosh HCOM files.	 These	are  (apparently)
+		 Mac FSSD files with some variant of Huffman com-
+		 pression.  The Macintosh has wacky file  formats
+		 and  this format handler apparently doesn't han-
+		 dle all the ones it should.  Mac users will need
+		 your  usual  arsenal  of file converters to deal
+		 with an HCOM file under Unix or DOS.
+
+       .maud	 An Amiga format
+		 An IFF-conform sound file type, registered by MS
+		 MacroSystem  Computer GmbH, published along with
+		 the "Toccata" sound-card on the  Amiga.   Allows
+		 8bit  linear, 16bit linear, A-Law, u-law in mono
+		 and stereo.
+
+       ossdsp	 OSS /dev/dsp device driver
+		 This is a pseudo-file type and can be optionally
+		 compiled  into	 Sox.	Run  sox -h to see if you
+		 have support for  this	 file  type.   When  this
+		 driver	 is used it allows you to open up the OSS
+		 /dev/dsp file and configure it to use	the  same
+		 data  type  as	 passed	 in to Sox.  It works for
+		 both playing and recording sound samples.   When
+		 playing  sound	 files	it attempts to set up the
+		 OSS driver to use the same format as  the  input
+		 file.	 It  is	 suggested to always override the
+		 output values to use the highest quality samples
+		 your  sound card can handle.  Example: -t ossdsp
+		 -w -s /dev/dsp
 
-     sunau     Sun /dev/audio device driver
-	       This is a psuedo-file type and can  be  optionally
-	       compiled	 into Sox.  Run	sox -h to see if you have
-	       support for this	file type.  When this  driver  is
-	       used  it	 allows	 you  to open up a Sun /dev/audio
-	       file and	configure it to	use the	same data type as
-	       passed  in  to  Sox. It works for both playing and
-	       recording sound samples.	 When playing sound files
-	       it  attempts to set up the audio	driver to use the
-	       same format as the input	file.  It is suggested to
-	       always  override	 the  output  values  to  use the
-	       highest quality samples your hardware can  handle.
-	       Example:	 -t sunau -w -s	/dev/audio or -t sunau -U
-	       -c 1 /dev/audio for older sun equipment.
+       .sf	 IRCAM Sound Files.
+		 SoundFiles are used by academic  music	 software
+		 such  as  the	CSound	package,  and the MixView
+		 sound sample editor.
 
-     .txw      Yamaha TX-16W sampler.
-	       A file format  from  a  Yamaha  sampling	 keyboard
-	       which  wrote IBM-PC format 3.5" floppies.  Handles
-	       reading of files	which do not have the sample rate
-	       field  set  to  one  of the expected by looking at
-	       some other bytes	in the attack/loop length fields,
-	       and  defaulting	to  33kHz  if  the sample rate is
-	       still unknown.
+       .smp	 Turtle Beach SampleVision files.
+		 SMP files are for use with  the  PC-DOS  package
+		 SampleVision  by  Turtle  Beach  Softworks. This
+		 package is for	 communication	to  several  MIDI
+		 samplers.  All sample rates are supported by the
+		 package, although not all are supported  by  the
+		 samplers  themselves.	Currently loop points are
+		 ignored.
 
-     .vms      More info to come.
-	       Used to compress	 speech	 audio	for  applications
-	       such as voice mail.
+       sunau	 Sun /dev/audio device driver
+		 This is a pseudo-file type and can be optionally
+		 compiled  into	 Sox.	Run  sox -h to see if you
+		 have support for  this	 file  type.   When  this
+		 driver	 is  used  it allows you to open up a Sun
 
-     .voc      Sound Blaster VOC files.
-	       VOC  files  are	multi-part  and	 contain  silence
-	       parts,  looping,	 and  different	 sample	rates for
-	       different chunks.  On input, the	silence	parts are
-	       filled  out,  loops  are	rejected, and sample data
-	       with a new sample rate is rejected.  Silence  with
-	       a  different  sample  rate  is generated	appropri-
-	       ately.  On output, silence is  not  detected,  nor
-	       are impossible sample rates.
 
 
+			December 10, 1999			6
 
-SunOS 5.6	  Last change: November	8, 1999			6
 
 
 
 
+SoX(1)							   SoX(1)
 
 
-User Commands						   SoX(1)
+		 /dev/audio file and configure it to use the same
+		 data  type  as	 passed	 in to Sox.  It works for
+		 both playing and recording sound samples.   When
+		 playing  sound	 files	it attempts to set up the
+		 audio driver to use the same format as the input
+		 file.	 It  is	 suggested to always override the
+		 output values to use the highest quality samples
+		 your  hardware can handle.  Example: -t sunau -w
+		 -s /dev/audio or -t sunau -U -c 1 /dev/audio for
+		 older sun equipment.
 
+       .txw	 Yamaha TX-16W sampler.
+		 A  file  format  from a Yamaha sampling keyboard
+		 which wrote IBM-PC format 3.5"	 floppies.   Han-
+		 dles reading of files which do not have the sam-
+		 ple rate field set to one  of	the  expected  by
+		 looking  at  some other bytes in the attack/loop
+		 length fields, and defaulting to  33kHz  if  the
+		 sample rate is still unknown.
 
+       .vms	 More info to come.
+		 Used  to  compress speech audio for applications
+		 such as voice mail.
 
-     .wav      Microsoft .WAV RIFF files.
-	       These appear to be very similar to IFF files,  but
-	       not  the	same. They are the native sound	file for-
-	       mat of Windows.	(Obviously, Windows was	 of  such
-	       incredible  importance  to  the	computer industry
-	       that it just had	to have	its own	sound  file  for-
-	       mat.)   Normally	 .wav  files  have all formatting
-	       information in their headers, and so do	not  need
-	       any format options specified for	an input file. If
-	       any are,	they will override the file  header,  and
-	       you will	be warned to this effect.  You had better
-	       know what you are  doing!  Output  format  options
-	       will  cause a format conversion,	and the	.wav will
-	       written appropriately.  Note that it  is	 possible
-	       to  write  data of a type that cannot be	specified
-	       by the .wav header, and you will	 be  warned  that
-	       you a writing a bad file	!  Sox currently can read
-	       PCM, ULAW, ALAW,	MS ADPCM, and IMA (or DVI) ADPCM.
-	       It  can	output	all  of	 these formats except the
-	       ADPCM styles.
+       .voc	 Sound Blaster VOC files.
+		 VOC files are	multi-part  and	 contain  silence
+		 parts,	 looping,  and different sample rates for
+		 different chunks.  On input, the  silence  parts
+		 are  filled  out, loops are rejected, and sample
+		 data  with  a	new  sample  rate  is	rejected.
+		 Silence  with	a different sample rate is gener-
+		 ated appropriately.  On output, silence  is  not
+		 detected, nor are impossible sample rates.
 
-     .wve      Psion 8-bit alaw
-	       These are 8-bit a-law 8khz sound	files used on the
-	       Psion palmtop portable computer.
+       .wav	 Microsoft .WAV RIFF files.
+		 These	appear	to  be very similar to IFF files,
+		 but not the same.  They  are  the  native  sound
+		 file format of Windows.  (Obviously, Windows was
+		 of such incredible importance	to  the	 computer
+		 industry  that it just had to have its own sound
+		 file format.)	Normally .wav files have all for-
+		 matting  information in their headers, and so do
+		 not need any format  options  specified  for  an
+		 input	file.  If any are, they will override the
+		 file header, and you  will  be	 warned	 to  this
+		 effect.  You had better know what you are doing!
+		 Output format options will cause a  format  con-
+		 version,  and	the  .wav  will written appropri-
+		 ately.	 Sox currently can read PCM, ULAW,  ALAW,
+		 MS  ADPCM, and IMA (or DVI) ADPCM.  It can write
+		 all of these formats including (NEW!)	the ADPCM
+		 styles.
 
-     .raw      Raw files (no header).
-	       The sample rate,	size (byte, word, etc),	and style
-	       (signed,	 unsigned, etc.)  of the sample	file must
-	       be given.  The number of	channels defaults to 1.
+       .wve	 Psion 8-bit alaw
 
-     .ub, .sb, .uw, .sw, .ul
-	       These are several suffices which	serve as a short-
-	       hand  for  raw  files with a given size and style.
-	       Thus,  ub,  sb,	uw,  sw,  and  ul  correspond  to
-	       "unsigned  byte",  "signed byte", "unsigned word",
-	       "signed word", and "ulaw" (byte).  The sample rate
-	       defaults	to 8000	hz if not explicitly set, and the
-	       number of channels  (as	always)	 defaults  to  1.
-	       There are lots of Sparc samples floating	around in
-	       u-law format with no header and fixed at	a  sample
-	       rate   of  8000	hz.   (Certain	sound  management
-	       software	cheerfully ignores the	headers.)   Simi-
-	       larly,  most  Mac sound files are in unsigned byte
-	       format with a sample rate of 11025 or 22050 hz.
 
-     .auto     This is a ``meta-type'':	specifying this	type  for
-	       an  input  file	triggers  some code that tries to
-	       guess the real type by looking for magic	words  in
-	       the  header.   If  the  type can't be guessed, the
-	       program exits with an error  message.   The  input
-	       must be a plain file, not a pipe.  This type can't
-	       be used for output files.
 
+			December 10, 1999			7
 
 
-SunOS 5.6	  Last change: November	8, 1999			7
 
 
 
+SoX(1)							   SoX(1)
 
 
+		 These	are  8-bit a-law 8khz sound files used on
+		 the Psion palmtop portable computer.
 
-User Commands						   SoX(1)
+       .raw	 Raw files (no header).
+		 The sample rate, size	(byte,	word,  etc),  and
+		 style	(signed,  unsigned,  etc.)  of the sample
+		 file must be  given.	The  number  of	 channels
+		 defaults to 1.
 
+       .ub, .sb, .uw, .sw, .ul, .sl
+		 These	are  several  suffices	which  serve as a
+		 shorthand for raw files with a	 given	size  and
+		 style.	  Thus,	 ub, sb, uw, sw, ul and sl corre-
+		 spond	to  "unsigned	byte",	 "signed   byte",
+		 "unsigned  word",  "signed word", "ulaw" (byte),
+		 and "signed long".  The sample rate defaults  to
+		 8000 hz if not explicitly set, and the number of
+		 channels (as always) defaults to 1.   There  are
+		 lots  of  Sparc samples floating around in u-law
+		 format with no header and fixed at a sample rate
+		 of  8000 hz.  (Certain sound management software
+		 cheerfully  ignores  the  headers.)   Similarly,
+		 most Mac sound files are in unsigned byte format
+		 with a sample rate of 11025 or 22050 hz.
 
+       .auto	 This is a ``meta-type'':  specifying  this  type
+		 for  an input file triggers some code that tries
+		 to guess the real  type  by  looking  for  magic
+		 words	in  the	 header.   If  the  type can't be
+		 guessed, the program exits with  an  error  mes-
+		 sage.	 The  input  must  be a plain file, not a
+		 pipe.	This type can't be used for output files.
 
 EFFECTS
-     Only one effect from the palette may be applied to	 a  sound
-     sample.   To do multiple effects you'll need to run sox in	a
-     pipeline.
+       Only one effect from the palette may be applied to a sound
+       sample.	To do multiple effects you'll need to run sox  in
+       a pipeline.
 
-     avg [ -l |	-r ]
-	       Reduce the number of  channels  by  averaging  the
-	       samples,	 or  duplicate	channels  to increase the
-	       number of channels.  This effect	is  automatically
-	       used  when the number of	input samples differ then
-	       the number of output channels.  When reducing  the
-	       number  of  channels  it	 is  possible to manually
-	       specify the avg effect  and  use	 the  -l  and  -r
-	       options	to  select only	the left or right channel
-	       for the output instead of averaging the two  chan-
-	       nels.
+       avg [ -l | -r ]
+		 Reduce	 the  number of channels by averaging the
+		 samples, or duplicate channels to  increase  the
+		 number	 of  channels.	 This effect is automati-
+		 cally used when the number of input samples dif-
+		 fer  from  the	 number of output channels.  When
+		 reducing the number of channels it  is	 possible
+		 to  manually  specify the avg effect and use the
+		 -l and -r options to select  only  the	 left  or
+		 right	channel for the output instead of averag-
+		 ing the two channels.
 
-     band [ -n ] center	[ width	]
-	       Apply a band-pass filter.  The frequency	 response
-	       drops logarithmically around the	center frequency.
-	       The width gives the slope of the	drop.	The  fre-
-	       quencies	at center + width and center - width will
-	       be  half	 of  their  original  amplitudes.    Band
-	       defaults	 to  a	mode oriented to pitched signals,
-	       i.e. voice, singing, or instrumental  music.   The
-	       -n  (for	noise) option uses the alternate mode for
-	       un-pitched  signals.   Warning:	-n  introduces	a
-	       power-gain  of about 11dB in the	filter,	so beware
-	       of output clipping.  Band introduces noise in  the
-	       shape  of  the  filter, i.e. peaking at the center
-	       frequency and settling around it.  See filter  for
-	       a bandpass effect with steeper shoulders.
+       band [ -n ] center [ width ]
+		 Apply	a  band-pass   filter.	  The	frequency
+		 response drops logarithmically around the center
+		 frequency.  The width gives  the  slope  of  the
 
-     chorus gain-in gain-out delay decay speed deptch
 
-	    -s | -t [ delay decay speed	depth -s | -t ... ]
-	       Add a chorus to a sound	sample.	  Each	quadtuple
-	       delay/decay/speed/depth	gives  the  delay in mil-
-	       liseconds and the decay (relative to gain-in) with
-	       a  modulation  speed  in	 Hz  using  depth in mil-
-	       liseconds.  The modulation is either sinodial (-s)
-	       or triangular (-t).  Gain-out is	the volume of the
-	       output.
 
-     compand attack1,decay1[,attack2,decay2...]
+			December 10, 1999			8
 
-	     in-dB1,out-dB1[,in-dB2,out-dB2...]
 
-	     [gain] [initial-volume]
-	       Compand (compress or expand) the	dynamic	range  of
-	       a  sample.   The	attack and decay time specify the
-	       integration time	over which the absolute	value  of
 
 
 
-SunOS 5.6	  Last change: November	8, 1999			8
+SoX(1)							   SoX(1)
 
 
+		 drop.	 The  frequencies  at  center + width and
+		 center - width will be half  of  their	 original
+		 amplitudes.  Band defaults to a mode oriented to
+		 pitched signals, i.e. voice, singing, or instru-
+		 mental	 music.	  The  -n (for noise) option uses
+		 the  alternate	 mode  for  un-pitched	 signals.
+		 Warning:  -n  introduces  a  power-gain of about
+		 11dB in the filter, so beware	of  output  clip-
+		 ping.	Band introduces noise in the shape of the
+		 filter, i.e. peaking at the center frequency and
+		 settling  around  it.	See filter for a bandpass
+		 effect with steeper shoulders.
 
+       bandpass	 Butterworth bandpass filter. Description  coming
+		 soon!
 
+       bandreject
+		 Butterworth bandreject filter.	 Description com-
+		 ing soon!
 
+       chorus gain-in gain-out delay decay speed depth
 
-User Commands						   SoX(1)
+	      -s | -t [ delay decay speed depth -s | -t ... ]
+		 Add a chorus to a sound sample.  Each	quadtuple
+		 delay/decay/speed/depth  gives the delay in mil-
+		 liseconds and the decay  (relative  to	 gain-in)
+		 with  a  modulation  speed  in Hz using depth in
+		 milliseconds.	The modulation is either sinodial
+		 (-s) or triangular (-t).  Gain-out is the volume
+		 of the output.
 
+       compand attack1,decay1[,attack2,decay2...]
 
+	       in-dB1,out-dB1[,in-dB2,out-dB2...]
 
-	       the  input  signal  is integrated to determine its
-	       volume.	Where more than	one pair of  attack/decay
-	       parameters  are specified, each channel is treated
-	       separately and the number of pairs must agree with
-	       the  number of input channels.  The second parame-
-	       ter  is	a  list	 of  points  on	 the  compander's
-	       transfer	 function specified in dB relative to the
-	       maximum	possible  signal  amplitude.   The  input
-	       values  must be in a strictly increasing	order but
-	       the transfer function does not have to be monoton-
-	       ically rising.  The special value -inf may be used
-	       to indicate that	the input volume should	be  asso-
-	       ciated  output  volume.	 The points -inf,-inf and
-	       0,0 are assumed;	the latter may be overridden, but
-	       the  former may not.  The third (optional) parame-
-	       ter is  a  postprocessing  gain	in  dB	which  is
-	       applied after the compression has taken place; the
-	       fourth (optional) parameter is an  initial  volume
-	       to  be  assumed	for  each channel when the effect
-	       starts.	This permits the user to supply	a nominal
-	       level  initially,  so  that,  for  example, a very
-	       large gain is not applied to initial signal levels
-	       before the companding action has	begun to operate:
-	       it is quite probable that in such  an  event,  the
-	       output  would  be  severely clipped while the com-
-	       pander gain properly adjusts itself.
+	       [gain] [initial-volume]
+		 Compand (compress or expand) the  dynamic  range
+		 of  a sample.	The attack and decay time specify
+		 the integration time  over  which  the	 absolute
+		 value	of  the	 input	signal	is  integrated to
+		 determine its volume.	Where more than one  pair
+		 of  attack/decay  parameters are specified, each
+		 channel is treated separately and the number  of
+		 pairs	must agree with the number of input chan-
+		 nels.	The second parameter is a list of  points
+		 on  the  compander's transfer function specified
+		 in dB relative to the	maximum	 possible  signal
+		 amplitude.   The  input  values  must	be  in	a
+		 strictly increasing order but the transfer func-
+		 tion  does  not have to be monotonically rising.
+		 The special value -inf may be used  to	 indicate
+		 that  the input volume should be associated out-
+		 put volume.  The points -inf,-inf  and	 0,0  are
+		 assumed;  the	latter may be overridden, but the
 
-     copy      Copy the	input file to the output file.	 This  is
-	       the  default  effect  if	 both files have the same
-	       sampling	rate.
 
-     cut loopnumber
-	       Extract loop #N from a sample.
 
-     deemph    Apply a treble attenuation shelving filter to sam-
-	       ples  in	 audio cd format.  The frequency response
-	       of pre-emphasized recordings  is	 rectified.   The
-	       filtering  is defined in	the standard document ISO
-	       908.
+			December 10, 1999			9
 
-     echo gain-in gain-out delay decay [ delay decay ... ]
-	       Add echoing to a	sound sample.	Each  delay/decay
-	       part gives the delay in milliseconds and	the decay
-	       (relative to gain-in) of	that echo.   Gain-out  is
-	       the volume of the output.
 
-     echos gain-in gain-out delay decay	[ delay	decay ... ]
-	       Add a sequence of echos to a sound  sample.   Each
-	       delay/decay  part  gives	the delay in milliseconds
-	       and the decay (relative to gain-in) of that  echo.
-	       Gain-out	is the volume of the output.
 
 
 
+SoX(1)							   SoX(1)
 
-SunOS 5.6	  Last change: November	8, 1999			9
 
+		 former may not.  The third (optional)	parameter
+		 is  a postprocessing gain in dB which is applied
+		 after	the  compression  has  taken  place;  the
+		 fourth (optional) parameter is an initial volume
+		 to be assumed for each channel when  the  effect
+		 starts.  This permits the user to supply a nomi-
+		 nal level initially, so  that,	 for  example,	a
+		 very large gain is not applied to initial signal
+		 levels before the companding action has begun to
+		 operate:  it  is  quite probable that in such an
+		 event, the  output  would  be	severely  clipped
+		 while	 the   compander  gain	properly  adjusts
+		 itself.
 
+       copy	 Copy the input file to the output file.  This is
+		 the  default  effect if both files have the same
+		 sampling rate.
 
+       cut loopnumber
+		 Extract loop #N from a sample.
 
+       deemph	 Apply a treble attenuation  shelving  filter  to
+		 samples  in  audio  cd	 format.   The	frequency
+		 response of pre-emphasized recordings is  recti-
+		 fied.	 The filtering is defined in the standard
+		 document ISO 908.
 
+       echo gain-in gain-out delay decay [ delay decay ... ]
+		 Add echoing to a sound sample.	 Each delay/decay
+		 part  gives  the  delay  in milliseconds and the
+		 decay (relative to gain-in) of that echo.  Gain-
+		 out is the volume of the output.
 
-User Commands						   SoX(1)
+       echos gain-in gain-out delay decay [ delay decay ... ]
+		 Add a sequence of echos to a sound sample.  Each
+		 delay/decay part gives the delay in milliseconds
+		 and  the  decay  (relative  to	 gain-in) of that
+		 echo.	Gain-out is the volume of the output.
 
+       filter [ low ]-[ high ] [ window-len [ beta ] ]
+		 Apply	a  Sinc-windowed  lowpass,  highpass,  or
+		 bandpass  filter  of  given window length to the
+		 signal.  low refers  to  the  frequency  of  the
+		 lower	6dB corner of the filter.  high refers to
+		 the frequency of the upper  6dB  corner  of  the
+		 filter.
 
+		 A  lowpass  filter  is	 obtained  by leaving low
+		 unspecified,  or  0.	A  highpass   filter   is
+		 obtained  by  leaving high unspecified, or 0, or
+		 greater than or equal to the Nyquist  frequency.
 
-     filter [ low ]-[ high ] [ window-len [ beta ] ]
-	       Apply  a	 Sinc-windowed	lowpass,   highpass,   or
-	       bandpass	filter of given	window length to the sig-
-	       nal.  low refers	to the frequency of the	lower 6dB
-	       corner  of  the	filter.	  high refers to the fre-
-	       quency of the upper 6dB corner of the filter.
+		 The window-len, if unspecified, defaults to 128.
+		 Longer windows give a	sharper	 cutoff,  smaller
 
-	       A  lowpass  filter  is  obtained	 by  leaving  low
-	       unspecified,  or	0.  A highpass filter is obtained
-	       by leaving high unspecified, or 0, or greater than
-	       or equal	to the Nyquist freq.
 
-	       The window-len, if unspecified, defaults	 to  128.
-	       Longer windows give a sharper cutoff, smaller win-
-	       dows a more gradual cutoff.
 
-	       The beta, if unspecified, defaults  to  16.   This
-	       selects a Kaiser	window.	 You can select	a Nuttall
-	       window by specifying anything <=	 2.0  here.   For
-	       more  discussion	 of beta, look under the resample
-	       effect.
+			December 10, 1999		       10
 
 
-     flanger gain-in gain-out delay decay speed	-s | -t
-	       Add a flanger to	 a  sound  sample.   Each  triple
-	       delay/decay/speed  gives	the delay in milliseconds
-	       and the decay (relative to gain-in) with	a modula-
-	       tion  speed in Hz.  The modulation is either sino-
-	       dial (-s) or triangular	(-t).	Gain-out  is  the
-	       volume of the output.
 
-     highp center
-	       Apply a high-pass filter.  The frequency	 response
-	       drops logarithmically with center frequency in the
-	       middle of the drop.  The	slope of  the  filter  is
-	       quite  gentle.	See  filter for	a highpass effect
-	       with sharper cutoff.
 
-     lowp center
-	       Apply a low-pass	filter.	 The  frequency	 response
-	       drops logarithmically with center frequency in the
-	       middle of the drop.  The	slope of  the  filter  is
-	       quite  gentle.	See  filter  for a lowpass effect
-	       with sharper cutoff.
 
-     map       Display a list of loops in a sample,  and  miscel-
-	       laneous loop info.
+SoX(1)							   SoX(1)
 
-     mask      Add "masking noise" to signal.  This effect  deli-
-	       berately	 adds  white noise to a	sound in order to
-	       mask quantization effects, created by the  process
-	       of  playing  a  sound digitally.	 It tends to mask
 
+		 windows a more gradual cutoff.
 
+		 The  beta, if unspecified, defaults to 16.  This
+		 selects a Kaiser window.  You can select a  Nut-
+		 tall  window by specifying anything <= 2.0 here.
+		 For more discussion  of  beta,	 look  under  the
+		 resample effect.
 
-SunOS 5.6	  Last change: November	8, 1999		       10
 
+       flanger gain-in gain-out delay decay speed -s | -t
+		 Add  a	 flanger  to a sound sample.  Each triple
+		 delay/decay/speed gives the delay  in	millisec-
+		 onds  and the decay (relative to gain-in) with a
+		 modulation  speed  in	Hz.   The  modulation  is
+		 either	 sinodial (-s) or triangular (-t).  Gain-
+		 out is the volume of the output.
 
+       highp center
+		 Apply	a  high-pass   filter.	  The	frequency
+		 response  drops logarithmically with center fre-
+		 quency in the middle of the drop.  The slope  of
+		 the  filter  is  quite gentle.	 See filter for a
+		 highpass effect with sharper cutoff.
 
+       highpass	 Butterworth highpass filter.	Description  com-
+		 ming soon!
 
+       lowp center
+		 Apply a low-pass filter.  The frequency response
+		 drops logarithmically with center  frequency  in
+		 the middle of the drop.  The slope of the filter
+		 is quite  gentle.   See  filter  for  a  lowpass
+		 effect with sharper cutoff.
 
+       lowpass	 Butterworth  lowpass filter.  Description coming
+		 soon!
 
-User Commands						   SoX(1)
+       map	 Display a list of loops in a sample, and miscel-
+		 laneous loop info.
 
+       mask	 Add  "masking	noise"	to  signal.   This effect
+		 deliberately adds white  noise	 to  a	sound  in
+		 order	to  mask quantization effects, created by
+		 the process of playing a  sound  digitally.   It
+		 tends	to  mask buzzing voices, for example.  It
+		 adds 1/2 bit of noise to the sound file  at  the
+		 output bit depth.
 
+       phaser gain-in gain-out delay decay speed -s | -t
+		 Add  a	 phaser	 to  a sound sample.  Each triple
+		 delay/decay/speed gives the delay  in	millisec-
+		 onds  and the decay (relative to gain-in) with a
+		 modulation  speed  in	Hz.   The  modulation  is
+		 either	 sinodial  (-s)	 or triangular (-t).  The
 
-	       buzzing voices, for example.  It	adds 1/2  bit  of
-	       noise to	the sound file at the output bit depth.
 
-     phaser gain-in gain-out delay decay speed -s | -t
-	       Add a phaser  to	 a  sound  sample.   Each  triple
-	       delay/decay/speed  gives	the delay in milliseconds
-	       and the decay (relative to gain-in) with	a modula-
-	       tion  speed in Hz.  The modulation is either sino-
-	       dial (-s) or triangular (-t).  The decay	should be
-	       less  than 0.5 to avoid feedback.  Gain-out is the
-	       volume of the output.
 
-     pick      Select the left or right	channel	of a stereo  sam-
-	       ple,  or	 one  of  four channels	in a quadrophonic
-	       sample.
+			December 10, 1999		       11
 
-     polyphase [ -w < num / ham	> ]
 
-	       [  -width <  long  / short  / # > ]
 
-	       [ -cutoff #  ]
-	       Translate input sampling	rate to	 output	 sampling
-	       rate via	polyphase interpolation, a DSP algorithm.
-	       This method is slow and	uses  lots  of	RAM,  but
-	       gives much better results then rate.
-	       -w < nut	/ ham >	: select either	a Nuttal (~90  dB
-	       stopband)  or  Hamming  (~43  dB	stopband) window.
-	       Warning:	Nuttall	windows	require	 2x  length  than
-	       Hamming windows.	 Default is nut.
-	       -width long / short / # : specify the width of the
-	       filter.	 long  is 1024 samples;	short is 128 sam-
-	       ples.  Alternatively, an	exact number can be used.
-	       Default is long.
-	       -cutoff # : specify the filter cutoff frequency in
-	       terms  of  fraction  of bandwidth.  If upsampling,
-	       then this is the	fraction of  the  orignal  signal
-	       that  should go through.	 If downsampling, this is
-	       the fraction of the  signal  left  after	 downsam-
-	       pling.	Default	is 0.95.  Remember that	this is	a
-	       float.
 
 
-     rate      Translate input sampling	rate to	 output	 sampling
-	       rate  via linear	interpolation to the Least Common
-	       Multiple	of the two sampling rates.  This  is  the
-	       default	effect	if  the	 two files have	different
-	       sampling	rates and the preview options was  speci-
-	       fied.   This  is	 fast but noisy:  the spectrum of
-	       the original sound will	be  shifted  upwards  and
-	       duplicated faintly when up-translating by a multi-
-	       ple.  Lerp-ing is acceptable for	cheap 8-bit sound
-	       hardware,  but  for  CD-quality	sound  you should
+SoX(1)							   SoX(1)
 
 
+		 decay should be less than 0.5 to avoid feedback.
+		 Gain-out is the volume of the output.
 
-SunOS 5.6	  Last change: November	8, 1999		       11
+       pick	 Select	 the  left  or	right channel of a stereo
+		 sample, or one of four	 channels  in  a  quadro-
+		 phonic sample.
 
+       polyphase [ -w < nut / ham > ]
 
+		 [  -width <  long  / short  / # > ]
 
+		 [ -cutoff #  ]
+		 Translate input sampling rate to output sampling
+		 rate via polyphase interpolation,  a  DSP  algo-
+		 rithm.	  This	method	is  slow and uses lots of
+		 RAM, but gives much better results than rate.
+		 -w < nut / ham > : select either a  Nuttal  (~90
+		 dB  stopband)	or Hamming (~43 dB stopband) win-
+		 dow.  Default is nut.
+		 -width long / short / # : specify the	(approxi-
+		 mate)	width  of  the filter.	long is 1024 sam-
+		 ples; short is 128 samples.   Alternatively,  an
+		 exact number can be used.  Default is long.  The
+		 short option is not recommended, as it	 produces
+		 poor quality results.
+		 -cutoff  # : specify the filter cutoff frequency
+		 in terms of fraction of  bandwidth.   If  upsam-
+		 pling, then this is the fraction of the original
+		 signal that should go through.	 If downsampling,
+		 this  is  the	fraction of the signal left after
+		 downsampling.	Default is 0.95.   Remember  that
+		 this is a float.
 
 
+       rate	 Translate input sampling rate to output sampling
+		 rate via linear interpolation to the Least  Com-
+		 mon Multiple of the two sampling rates.  This is
+		 the default effect if the two files have differ-
+		 ent  sampling	rates and the preview options was
+		 specified.  This is fast but noisy: the spectrum
+		 of  the  original  sound will be shifted upwards
+		 and duplicated faintly when up-translating by	a
+		 multiple.   Lerp-ing  is  acceptable  for  cheap
+		 8-bit sound hardware, but for	CD-quality  sound
+		 you   should  instead	use  either  resample  or
+		 polyphase.  If you are wondering which of  SoX's
+		 rate  changing	 effects to use, you will want to
+		 read a detailed  analysis  of	all  of	 them  at
+		 http://eakaw2.et.tu-dresden.de/~andreas/resam-
+		 ple/resample.html [Nov,1999: These tests need to
+		 be  updated for sox-12.17, which has bugfixes to
+		 the resample and polyphase code.]
 
-User Commands						   SoX(1)
 
 
 
-	       instead use either resample or polyphase.  If  you
-	       are wondering which of Sox's rate changing effects
-	       to ues, you will	want to	read a detailed	 analysis
-	       of    all    of	 them	at   http://eakaw2.et.tu-
-	       dresden.de/~andreas/resample/resample.html
-	       [Nov,1999:  These  tests	 need  to  be updated for
-	       sox-12.18, which	has bugfixes to	the resample  and
-	       polyphase code.]
 
-     resample [	-qs | -q | -ql ] [ rolloff [ beta ] ]
-	       Translate input sampling	rate to	 output	 sampling
-	       rate via	simulated analog filtration.  This method
-	       is  slower  than	 rate,	but  gives  much   better
-	       results.
+			December 10, 1999		       12
 
-	       The -qs,	-q,  or	 -ql  options  specify	increased
-	       accuracy	at the cost of lower execution speed.  By
-	       default,	linear interpolation is	used, with a win-
-	       dow  width  about  37  samples  at the lower rate.
-	       This gives an  accuracy	of  about  16  bits,  but
-	       insufficient  stopband  rejection in the	case that
-	       you want	to have	rolloff	greater	than  about  0.85
-	       of  the	Nyquist	 frequency.   The -q* options use
-	       quadratic interpolation	of  filter  coefficients,
-	       resulting in about 22 bits precision.  -qs, -q, or
-	       -ql use window lengths of 37, 75, or 150	 samples,
-	       respectively,  at the lower sample-rate of the two
-	       files.  This means progressively	sharper	stop-band
-	       rejection,   at	proportionally	slower	execution
-	       times.
 
-	       rolloff refers to the cut-off frequency of the low
-	       pass  filter  and is given in terms of the Nyquist
-	       frequency for  the  lower  sample  rate.	  rolloff
-	       therefore  should  be something between 0. and 1.,
-	       in practice 0.8-0.95.  The default is 0.8.
 
-	       The beta	parameter determines the type  of  filter
-	       window  used.   Any  value greater than 2.0 is the
-	       beta for	a Kaiser window.  Beta <= 2.0  selects	a
-	       Nuttall	window.	 If unspecified, the default is	a
-	       Kaiser window with beta 16.
 
-	       In the case of Kaiser window  beta  >  2.0,  lower
-	       betas  produce  a  somewhat faster transition from
-	       passband	to stopband, at	the  cost  of  noticeable
-	       artifacts.  A beta of 16	is the default,	beta less
-	       than 10 is not recommended.  If you want	a sharper
-	       cutoff,	don't use low beta's, use a longer sample
-	       window.	A Nuttall window is selected by	 specify-
-	       ing  any	 'beta'	 <= 2, and the Nuttall window has
-	       somewhat	steeper	cutoff than  the  default  Kaiser
 
+SoX(1)							   SoX(1)
 
 
-SunOS 5.6	  Last change: November	8, 1999		       12
+       resample [ -qs | -q | -ql ] [ rolloff [ beta ] ]
+		 Translate input sampling rate to output sampling
+		 rate  via  simulated  analog  filtration.   This
+		 method is slower than rate, but gives much  bet-
+		 ter results.
 
+		 The  -qs,  -q,	 or -ql options specify increased
+		 accuracy at the cost of lower	execution  speed.
+		 By default, linear interpolation is used, with a
+		 window width about 45 samples at the lower rate.
+		 This  gives  an  accuracy  of about 16 bits, but
+		 insufficient stopband rejection in the case that
+		 you want to have rolloff greater than about 0.80
+		 of the Nyquist frequency.  The -q*  options  use
+		 quadratic  interpolation of filter coefficients,
+		 resulting in about 24 bits precision.
+		 Following is a table of the reasonable	 defaults
+		 which are built-in to sox:
+		    Option  Window rolloff beta interpolation
+		    ------  ------ ------- ---- -------------
+		    (none)    45    0.80    16	   linear
+		      -qs     45    0.80    16	  quadratic
+		      -q      75    0.875   16	  quadratic
+		      -ql    149    0.94    16	  quadratic
+		    ------  ------ ------- ---- -------------
+		 -qs, -q, or -ql use window lengths of 45, 75, or
+		 149 samples, respectively, at the lower  sample-
+		 rate of the two files.	 This means progressively
+		 sharper stop-band rejection,  at  proportionally
+		 slower execution times.
 
+		 rolloff  refers  to the cut-off frequency of the
+		 low pass filter and is given  in  terms  of  the
+		 Nyquist  frequency  for  the  lower sample rate.
+		 rolloff therefore should be something between 0.
+		 and  1., in practice 0.8-0.95.	 The defaults are
+		 indicated above.
 
+		 The beta parameter determines the type of filter
+		 window	 used.	Any value greater than 2.0 is the
+		 beta for a Kaiser window.  Beta <= 2.0 selects a
+		 Nuttall  window.  If unspecified, the default is
+		 a Kaiser window with beta 16.
 
+		 In the case of Kaiser window (beta > 2.0), lower
+		 betas	produce a somewhat faster transition from
+		 passband to stopband, at the cost of  noticeable
+		 artifacts.   A	 beta  of 16 is the default, beta
+		 less than 10 is not recommended.  If you want	a
+		 sharper  cutoff,  don't  use  low  beta's, use a
+		 longer	 sample	 window.   A  Nuttall  window  is
+		 selected  by specifying any 'beta' <= 2, and the
+		 Nuttall window has somewhat steeper cutoff  than
+		 the  default  Kaiser  window.	You will probably
 
 
-User Commands						   SoX(1)
 
+			December 10, 1999		       13
 
 
-	       window.	 You  will  probably  not need to use the
-	       beta parameter at all, unless you are just curious
-	       about  comparing	the effects of Nuttall vs. Kaiser
-	       windows.
 
-	       This is the default effect if the two  files  have
-	       different  sampling rates.  Default parameters are
-	       Kaiser window of	length 37, rolloff 0.80, beta 16,
-	       linear	interpolation.	  -qs  is  only	 slightly
-	       slower, but more	accurate  for  16-bit  or  higher
-	       precision.
 
 
-     reverb gain-out delay [ delay ... ]
-	       Add reverbation to a sound sample.  Each	delay  is
-	       given  in milliseconds and its feedback is depend-
-	       ing on  the  reverb-time	 in  milliseconds.   Each
-	       delay should be in the range of half to quarter of
-	       reverb-time  to	get  a	 realistic   reverbation.
-	       Gain-out	is the volume of the output.
+SoX(1)							   SoX(1)
 
-     reverse   Reverse the sound sample	completely.  Included for
-	       finding Satanic subliminals.
 
-     split     Turn a mono sample into a stereo	sample by copying
-	       the input channel to the	left and right channels.
+		 not need to  use  the	beta  parameter	 at  all,
+		 unless	 you are just curious about comparing the
+		 effects of Nuttall vs. Kaiser windows.
 
-     stat [ debug | -v ]
-	       Do a statistical	check  on  the	input  file,  and
-	       print  results  on  the standard	error file.  stat
-	       may copy	the file untouched from	input to  output,
-	       if  you select an output	file. The "Volume Adjust-
-	       ment:" field in the statistics gives you	the argu-
-	       ment  to	 the -v	number which will make the sample
-	       as loud as possible without clipping. There is  an
-	       optional	 parameter  -v	that  will  print out the
-	       "Volume Adjustment:"  field's  value  and  return.
-	       This  could  be	of use in scripts to auto convert
-	       the volume.  There is an	also an	optional  parame-
-	       ter  debug that will place sox into debug mode and
-	       print out a hex dump of the sound  file	from  the
-	       internal	buffer that is in 32-bit signed	PCM data.
-	       This is mainly only of use in tracking down endian
-	       problems	 that  creep  in to sox	on cross-platform
-	       versions.
+		 This is the default effect if the two files have
+		 different  sampling  rates.   Default parameters
+		 are, as indicated above, Kaiser window of length
+		 45, rolloff 0.80, beta 16, linear interpolation.
 
-     swap [ 1 2	3 4 ]
-	       Swap channels in	multi-channel  sound  files.   In
-	       files  with  more  than 2 channels you may specify
-	       the order that the channels should  be  rearranged
-	       in.
+		 NOTE: -qs is  only  slightly  slower,	but  more
+		 accurate for 16-bit or higher precision.
 
+		 NOTE:	In many cases of up-sampling, no interpo-
+		 lation is needed, as exact  filter  coefficients
+		 can be computed in a reasonable amount of space.
+		 To be precise, this is done when
 
+			    input_rate < output_rate
+				       &&
+		   output_rate/gcd(input_rate,output_rate) <= 511
 
+       reverb gain-out delay [ delay ... ]
+		 Add reverberation to a sound sample.  Each delay
+		 is given in milliseconds  and	its  feedback  is
+		 depending  on	the  reverb-time in milliseconds.
+		 Each delay should be in the  range  of	 half  to
+		 quarter of reverb-time to get a realistic rever-
+		 beration.  Gain-out is the volume of the output.
 
-SunOS 5.6	  Last change: November	8, 1999		       13
+       reverse	 Reverse  the  sound sample completely.	 Included
+		 for finding Satanic subliminals.
 
+       split	 Turn a mono sample into a stereo sample by copy-
+		 ing  the  input  channel  to  the left and right
+		 channels.
 
+       stat [ debug | -v ]
+		 Do a statistical check on the	input  file,  and
+		 print	results on the standard error file.  stat
+		 may copy the file untouched from input	 to  out-
+		 put,  if you select an output file.  The "Volume
+		 Adjustment:" field in the statistics  gives  you
+		 the  argument	to  the -v number which will make
+		 the sample as loud as possible without clipping.
+		 There	is  an	optional  parameter  -v that will
+		 print out the "Volume Adjustment:" field's value
+		 and  return.  This could be of use in scripts to
+		 auto convert the volume.  There is  an	 also  an
+		 optional  parameter  debug  that  will place sox
+		 into debug mode and print out a hex dump of  the
+		 sound	file  from the internal buffer that is in
+		 32-bit signed PCM data.  This is mainly only  of
+		 use  in tracking down endian problems that creep
+		 in to sox on cross-platform versions.
 
 
 
+			December 10, 1999		       14
 
-User Commands						   SoX(1)
 
 
 
-     vibro speed  [ depth ]
-	       Add  the	 world-famous  Fender  Vibro-Champ  sound
-	       effect  to  a sound sample by using a sine wave as
-	       the volume knob.	 Speed gives the Hertz	value  of
-	       the wave.  This must be under 30.  Depth	gives the
-	       amount the volume is cut	into by	 the  sine  wave,
-	       ranging 0.0 to 1.0 and defaulting to 0.5.
 
-     Sox enforces certain effects.  If the two	files  have  dif-
-     ferent  sampling  rates, the requested effect must	be one of
-     copy, or rate, If the two files have  different  numbers  of
-     channels, the avg effect must be requested.
+SoX(1)							   SoX(1)
 
+
+       swap [ 1 2 3 4 ]
+		 Swap channels in multi-channel sound files.   In
+		 files	with more than 2 channels you may specify
+		 the order that the channels should be rearranged
+		 in.
+
+       vibro speed  [ depth ]
+		 Add  the  world-famous	 Fender Vibro-Champ sound
+		 effect to a sound sample by using a sine wave as
+		 the volume knob.  Speed gives the Hertz value of
+		 the wave.  This must be under 30.   Depth  gives
+		 the  amount  the  volume is cut into by the sine
+		 wave, ranging 0.0 to 1.0 and defaulting to  0.5.
+
+       Sox  enforces certain effects.  If the two files have dif-
+       ferent sampling rates, the requested effect must be one of
+       copy,  or rate, If the two files have different numbers of
+       channels, the avg effect must be requested.
+
 BUGS
-     The syntax	is horrific.  It's very	 tempting  to  include	a
-     default  system  that  allows  an effect name as the program
-     name and just pipes a sound sample	from  standard	input  to
-     standard  output,	but  the  problem of inputting the sample
-     rates makes this unworkable.
+       The syntax is horrific.	Thats the breaks when  trying  to
+       handle all things from the command line.
 
-     Please report any bugs found in this version of sox to Chris
-     Bagwell (cbagwell@sprynet.com)
+       Please  report  any  bugs  found in this version of sox to
+       Chris Bagwell (cbagwell@sprynet.com)
 
 FILES
 SEE ALSO
-     play(1), rec(1)
+       play(1), rec(1), soxexam(1)
 
 NOTICES
-     The  echoplex  effect  is:	  Copyright  (C)  1989	 by   Jef
-     Poskanzer.
+       The version of Sox that accompanies this	 manual	 page  is
+       support	by  Chris Bagwell (cbagwell@sprynet.com).  Please
+       refer any questions regarding it to this address.  You may
+       obtain	the   latest   version	 at   the  the	web  site
+       http://home.sprynet.com/~cbagwell/sox.html
 
-     Permission	 to  use,  copy,  modify,  and	distribute   this
-     software  and  its	documentation for any purpose and without
-     fee is hereby granted, provided  that  the	 above	copyright
-     notice  appear  in	 all  copies and that both that	copyright
-     notice and	this permission	notice appear in supporting docu-
-     mentation.	  This	software  is  provided	"as  is"  without
-     express or	implied	warranty.
 
-     The version of Sox	that accompanies this manual page is sup-
-     port  by Chris Bagwell (cbagwell@sprynet.com).  Please refer
-     any questions regarding it	to this	address.  You may  obtain
-     the     latest    version	  at	the    the    web    site
-     http://home.sprynet.com/~cbagwell/sox.html
 
 
 
@@ -918,7 +977,14 @@
 
 
 
-SunOS 5.6	  Last change: November	8, 1999		       14
 
+
+
+
+
+
+
+
+			December 10, 1999		       15
 
 
--- /dev/null
+++ b/soxexam.1
@@ -1,0 +1,441 @@
+.de Sh
+.br
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp
+.if t .sp .5v
+.if n .sp
+..
+.TH SoX 1 "December 10, 1999"
+.SH NAME
+soxexam - SoX Examples (CHEAT SHEET)
+.SH CONVERSIONS
+.B Introduction
+.P
+In general, sox will attempt to take an input sound file format and
+convert it to a new file format using a similar data type and sample
+rate.  For instance, "sox monkey.au monkey.wav" would try and convert
+the mono 8000Hz u-law sample .au file that comes with sox to a 8000Hz 
+u-law .wav file.
+.P
+If an output format doesn't support the same data type as the input file
+then sox will generally select a default data type to save it in.
+You can override the default data type selection by using command line
+options.  This is also useful for producing a output file with higher
+or lower percision data and/or sample rate.
+.P
+Most file formats that contain headers can automatically be read in.
+When working with headerless file formats then a user must manually
+tell sox the data type and sample rate using command line options.
+.P
+When working with headerless files (raw files), you may take advantage of
+they pseudo-file types of .ub, .uw, .sb, .sw, .ul, and .sl.  By using these
+extensions on your filenames you will not have to specify the corrisponding
+options on the command line.
+.P
+.B Percision
+.P
+The following data types and formats can be represented by their total
+uncompressed bit percision.  When converting from one data type to another
+care must be taken to insure it has an equal or greater percision.  If not
+then the audio quality will be degraded.  This is not always a bad thing
+when your working with things such as voice audio and are concerned about
+disk space or bandwidth of the audio data.
+.P
+.br
+        Data Format    Percision
+.br
+	   ___________    _________
+.br
+	   unsigned byte    8-bit
+.br
+	   signed byte      8-bit
+.br
+	   u-law           12-bit
+.br
+	   a-law           12-bit
+.br
+	   unsigned word   16-bit
+.br
+	   signed word     16-bit
+.br
+	   ADPCM           16-bit
+.br
+	   GSM             16-bit
+.br
+	   unsigned long   32-bit
+.br
+	   signed long     32-bit
+.br
+	   ___________    _________
+.P
+.B Examples
+.P
+Use the '-V' option on all your command lines.  It makes SoX print out its
+idea of what is going on.  '-V' is your friend.
+.P
+To convert from unsigned bytes at 8000 Hz to signed words at 8000 Hz:
+.P
+.br
+  sox -r 8000 -c 1 filename.ub newfile.sw
+.P
+To convert from Apple's AIFF format to Microsoft's WAV format:
+.P
+.br
+  sox filename.aiff filename.wav
+.P
+To convert from mono raw 8000 Hz 8-bit unsigned PCM data to a WAV file:
+.P
+.br
+  sox -r 8000 -u -b -c 1 filename.raw filename.wav
+.P
+.I SoX
+is great to use along with other command line programs by passing data
+between the programs using pipelines.  The most common example is to use
+mpg123 to convert mp3 files in to wav files.  The following command line will
+do this:
+.P
+.br 
+  mpg123 -b 10000 -s filename.mp3 | sox -t raw -r 44100 -s -w -c 2 - filename.wav
+.P
+When working with totally unknown audio data then the "auto" file format may
+be of use.  It attempts to guess what the file type is and then you may
+save it in to a known audio format.
+.P
+.br
+  sox -V -t auto filename.snd filename.wav
+.P
+It is important to understand how the internals of 
+.I SoX 
+work with
+compressed audio including u-law, a-law, ADPCM, or GSM.
+.I SoX
+takes ALL input data types and converts them to uncompressed 32-bit
+signed data.  It will then convert this internal version into the
+requested output format.  This means unneeded noise can be introduced
+from decompressing data and then recompressing.  If applying multiple
+effects to audio data it is best to save the intermediate data as PCM
+data.  After the final effect is performed then you can specify it as
+a compressed output format.  This will keep noise introduction to a minimum.
+.P
+The following example is to apply various effects to an 8000 Hz ADPCM input
+file and then end up with the final file as 44100 Hz ADPCM.
+.P
+.br
+  sox firstfile.wav -r 44100 -s -w secondfile.wav
+.br 
+  sox secondfile.wav thirdfile.wav swap
+.br
+  sox thirdfile.wav -a -b finalfile.wav mask
+.P
+Under a DOS shell, you can convert several audio files to an new output
+format using something similar to the following command line:
+.P
+.br
+  FOR %X IN (*.RAW) DO sox -r 11025 -w -s -t raw $X $X.wav
+.SH EFFECTS
+Special thanks goes to Juergen Mueller (jmeuller@uia.au.ac.be) for this
+write up on effects.
+.P
+.B Introduction:
+.P
+The core problem is that you need some experience in using effects
+in order to say "that any old sound file sounds with effects
+absolutely hip". There isn't any rule-based system which tell you
+the correct setting of all the parameters for every effect.
+But after some time you will become an expert in using effects.
+.P
+Here are some examples which can be used with any music sample.
+(For a sample where only a single instrument is playing, extreme
+parameter setting may make well-known "typically" or "classical"
+sounds. Likewise, for drums, vocals or guitars.)
+.P
+Single effects will be explained and some given parameter settings
+that can be used to understand the theorie by listening to the sound file
+with the added effect.
+.P
+Using multiple effects in parallel or in sequel can result either
+in very perfect sound or ( mostly ) in a dramatic overloading in
+variations of sounds such that your ear may follow the sound but
+you will feel unsatisfied. Hence, for the first time using effects
+try to compose them as less as possible. We don't regard the
+composition of effects in the examples because to many combinations
+are possible and you really need a very fast maschine and a lot of
+memory to play them in real-time.
+.P
+And real-time playing of sounds will speed up learning the parameter
+setting.
+.P
+Basically, we will use the "play" front-end of SOX since it is easier
+to listen sounds coming out of the speaker or earphone instead
+of looking at cryptical data in sound files.
+.P
+For easy listening of file.xxx ( "xxx" is any sound format ):
+.P
+.BR
+	play file.xxx effect-name effect-parameters
+.P
+Or more SOX-like ( for "dsp" output ):
+.P
+.BR
+	sox file.xxx -t ossdsp -w -s /dev/dsp effect-name effect-parameters
+.P
+or ( for "au" output ):
+.P
+.BR
+	sox file.xxx -t sunau -w -s /dev/audio effect-name effect-parameters
+.P
+And for date freaks:
+.P
+.BR
+	sox file.xxx file.yyy effect-name effect-parameters
+.P
+Additional options can be used. However, in this case, for real-time
+playing you'll need a very fast machine.
+.P
+Notes:
+.P
+I played all examples in real-time on a Pentium 100 with 32 Mb and 
+Linux 2.0.30 using a self-recorded sample ( 3:15 min long in "wav"
+format with 44.1 kHz sample rate and stereo 16 bit ). 
+The sample should not contain any of the effects. However,
+if you take any recording of a sound track from radio or tape or cd,
+and it sounds like a live concert or ten people are playing the same
+rhythm with their drums or funky-groves, then take any other sample.
+(Typically, less then four different intruments and no synthesizer
+in the sample is suitable. Likewise, the combination vocal, drums, bass
+and guitar.)
+.P
+Effects:
+.P
+.B Echo
+.P
+An echo effect can be naturally found in the mountains, standing somewhere
+on a moutain and shouting a single word will result in one or more repetitions
+of the word ( if not, turn a bit around ant try next, or climb to the next
+mountain ).
+.P
+However, the time difference between shouting and repeating is the delay 
+(time), its loudness is the decay. Multiple echos can have different delays and
+decays.
+.P
+Very popular is using echos to play an instrument with itself together, like
+some guitar players ( Brain May from Queen ) or vocalists are doing.
+For music samples of more than one instrument, echo can be used to add a
+second sample shortly after the original one.
+.P
+This will sound as doubling the number of instruments playing the same sample:
+.P
+.BR
+	play file.xxx echo 0.8 0.88 60.0 0.4
+.P
+If the delay is very short then it sound like a (metallic) roboter playing
+music:
+.P
+.BR
+	play file.xxx echo 0.8 0.88 6.0 0.4
+.P
+Longer delay will sound like a open air concert in the mountains:
+.P
+.BR
+	play file.xxx echo 0.8 0.9 1000.0 0.3
+.P
+One mountain more, and:
+.P
+.BR
+	play file.xxx echo 0.8 0.9 1000.0 0.3 1800.0 0.25
+.P
+.B Echos
+.P
+Like the echo effect, echos stand for "ECHO in Sequel", that is the first echos
+takes the input, the second the input and the first echos, the third the input
+and the first and the second echos, ... and so on.
+Care should be taken using many echos ( see introduction ); a single echos
+has the same effect as a single echo.
+.P
+The sample will be bounced twice in symmetric echos:
+.P
+.BR
+	play file.xxx echos 0.8 0.7 700.0 0.25 700.0 0.3
+.P
+The sample will be bounced twice in asymmetric echos:
+.P
+.BR
+	play file.xxx echos 0.8 0.7 700.0 0.25 900.0 0.3
+.P
+The sample will sound as played in a garage:
+.P
+.BR
+	play file.xxx echos 0.8 0.7 40.0 0.25 63.0 0.3
+.P
+.B Chorus
+.P
+The chorus effect has its name because it will often be used to make a single 
+vocal sound like a chorus. But it can be applied to other instrument samples
+too.
+.P
+It works like the echo effect with a short delay, but the delay isn't constant.
+The delay is varied using a sinodial or triangular modulation. The modulation
+depth defines the range the modulated delay is played before or after the
+delay. Hence the delayed sound will sound slower or faster, that is the delayed
+sound tuned around the original one, like in a chorus where some vocal are
+a bit out of tune.
+.P
+The typical delay is around 40ms to 60ms, the speed of the modualtion is best
+near 0.25Hz and the modulation depth around 2ms.
+.P
+A single delay will make the sample more overloaded:
+.P
+.BR
+	play file.xxx chorus 0.7 0.9 55.0 0.4 0.25 2.0 -t
+.P
+Two delays of the original samples sound like this:
+.P
+.BR
+	play file.xxx chorus 0.6 0.9 50.0 0.4 0.25 2.0 -t 60.0 0.32 0.4 1.3 -s
+.P
+A big chorus of the sample is ( three additional samples ):
+.P
+.BR
+	play file.xxx chorus 0.5 0.9 50.0 0.4 0.25 2.0 -t 60.0 0.32 0.4 2.3 -t \
+		40.0 0.3 0.3 1.3 -s
+.P
+.B Flanger
+.P
+The flanger effect is like the chorus effect, but the delay varies between
+0ms and maximal 5ms. It sound like wind blowing, sometimes faster or slower
+including changes of the speed.
+.P
+The flanger effect is widely used in funk and soul music, where the guitar 
+sound varies frequently slow or a bit faster.
+.P
+The typical delay is around 3ms to 5ms, the speed of the modulation is best
+near 0.5Hz.
+.P
+Now, let's groove the sample:
+.P
+.BR
+	play file.xxx flanger 0.6 0.87 3.0 0.9 0.5 -s
+.P
+listen carefully between the difference of sinodial and triangular modulation:
+.P
+.BR
+	play file.xxx flanger 0.6 0.87 3.0 0.9 0.5 -t
+.P
+If the decay is a bit lower, than the effect sounds more popular:
+.P
+.BR
+	play file.xxx flanger 0.8 0.88 3.0 0.4 0.5 -t
+.P
+The drunken loundspeaker system:
+.P
+.BR
+	play file.xxx flanger 0.9 0.9 4.0 0.23 1.3 -s
+.P
+.B Reverb
+.P
+The reverb effect is often used in audience hall which are to small or to many
+visitors disturb the reflection of sound at the walls to make the sound played
+more monumental. You can try the reverb effect in your bathroom or garage or
+sport halls by shouting loud some words. You'll hear the words reflected from
+the walls.
+.P
+The biggest problem in using the reverb effect is the correct setting of the
+(wall) delays such that the sound is relistic an doesn't sound like music
+playing in a tin or overloaded feedback distroys any illusion of any big hall.
+To help you for much realisitc reverb effects, you should decide first, how
+long the reverb should take place until it is not loud enough to be registered
+by your ears. This is be done by the reverb time "t", in small halls 200ms in
+bigger one 1000ms, if you like. Clearly, the walls of such a hall aren't far
+away, so you should define its setting be given every wall its delay time.
+However, if the wall is to far eway for the reverb time, you won't hear the
+reverb, so the nearest wall will be best "t/4" delay and the farest "t/2".
+You can try other distances as well, but it won't sound very realistic.
+The walls shouldn't stand to close to each other and not in a multiple interger
+distance to each other ( so avoid wall like: 200.0 and 202.0, or something
+like 100.0 and 200.0 ).
+.P
+Since audience halls do have a lot of walls, we will start designing one 
+beginning with one wall:
+.P
+.BR
+	play file.xxx reverb 1.0 600.0 180.0
+.P
+One wall more:
+.P
+.BR
+	play file.xxx reverb 1.0 600.0 180.0 200.0
+.P
+Next two walls:
+.P
+.BR
+	play file.xxx reverb 1.0 600.0 180.0 200.0 220.0 240.0
+.P
+Now, why not a futuristic hall with six walls:
+.P
+.BR
+	play file.xxx reverb 1.0 600.0 180.0 200.0 220.0 240.0 280.0 300.0
+.P
+If you run out of machine power or memory, then stop as much applications
+as possible ( every interupt will consume a lot of cpu time which for
+bigger halls is absolutely neccessary ).
+.P
+.B Phaser
+.P
+The phaser effect is like the flanger effect, but it uses a reverb instead of
+an echo and does phase shifting. You'll hear the difference in the examples
+comparing both effects ( simply change the effect name ).
+The delay modulation can be done sinodial or triangular, preferable is the
+later one for multiple instruments playing. For single instrument sounds
+the sinodial phaser effect will give a sharper phasing effect.
+The decay shouln't be to close to 1.0 which will cause dramatic feedback.
+A good range is about 0.5 to 0.1 for the decay.
+.P
+We will take a parameter setting as for the flanger before ( gain-out is
+lower since feedback can raise the output dramatically ):
+.P
+.BR
+	play file.xxx phaser 0.8 0.74 3.0 0.4 0.5 -t
+.P
+The drunken loundspeaker system ( now less alkohol ):
+.P
+.BR
+	play file.xxx phaser 0.9 0.85 4.0 0.23 1.3 -s
+.P
+A popular sound of the sample is as follows:
+.P
+.BR
+	play file.xxx phaser 0.89 0.85 1.0 0.24 2.0 -t
+.P
+The sample sounds if ten springs are in your ears:
+.P
+.BR
+	play file.xxx phaser 0.6 0.66 3.0 0.6 2.0 -t
+.P
+.B Other effects ( copy, rate, avg, stat, vibro, lowp, highp, band, reverb )
+.P
+The other effects are simply to use. However, an "easy to use manual" should
+be given here.
+.P
+.B More effects ( to do ! )
+.P
+There are a lot of effects around like noise gates, compressors, waw-waw,
+stereo effects and so on. They should be implemented making SOX to be more
+useful in sound mixing technics coming together with a great varity of
+different sound effects.
+.P
+Combining effects be using then in parallel or sequel on different channels
+needs some easy mechanism which is real-time stable.
+.P
+Really missing, is the changing of the parameters, starting and stoping of
+effects while playing samples in real-time!
+.P
+Good luck and have fun with all the effects!
+
+	Juergen Mueller		(jmueller@uia.ua.ac.be)
+
+.SH SEE ALSO
+sox(1), play(1), rec(1)
--- /dev/null
+++ b/soxexam.txt
@@ -1,0 +1,594 @@
+
+
+
+SoX(1)							   SoX(1)
+
+
+NAME
+       soxexam - SoX Examples (CHEAT SHEET)
+
+CONVERSIONS
+       Introduction
+
+       In  general,  sox will attempt to take an input sound file
+       format and convert it to a new file format using a similar
+       data  type  and sample rate.  For instance, "sox monkey.au
+       monkey.wav" would try and convert the  mono  8000Hz  u-law
+       sample .au file that comes with sox to a 8000Hz u-law .wav
+       file.
+
+       If an output format doesn't support the same data type  as
+       the  input  file	 then sox will generally select a default
+       data type to save it in.	 You  can  override  the  default
+       data  type  selection by using command line options.  This
+       is also useful for producing a output file with higher  or
+       lower percision data and/or sample rate.
+
+       Most  file  formats that contain headers can automatically
+       be read in.  When working  with	headerless  file  formats
+       then  a user must manually tell sox the data type and sam-
+       ple rate using command line options.
+
+       When working with headerless files (raw	files),	 you  may
+       take advantage of they pseudo-file types of .ub, .uw, .sb,
+       .sw, .ul, and .sl.  By  using  these  extensions	 on  your
+       filenames  you  will not have to specify the corrisponding
+       options on the command line.
+
+       Percision
+
+       The following data types and formats can be represented by
+       their  total  uncompressed bit percision.  When converting
+       from one data type to another care must be taken to insure
+       it  has	an  equal  or greater percision.  If not then the
+       audio quality will be degraded.	This is not always a  bad
+       thing  when  your  working with things such as voice audio
+       and are concerned about disk space  or  bandwidth  of  the
+       audio data.
+
+	       Data Format    Percision
+	       ___________    _________
+	       unsigned byte	8-bit
+	       signed byte	8-bit
+	       u-law	       12-bit
+	       a-law	       12-bit
+	       unsigned word   16-bit
+	       signed word     16-bit
+	       ADPCM	       16-bit
+	       GSM	       16-bit
+	       unsigned long   32-bit
+	       signed long     32-bit
+
+
+
+			December 10, 1999			1
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+	       ___________    _________
+
+       Examples
+
+       Use  the	 '-V' option on all your command lines.	 It makes
+       SoX print out its idea of what is going on.  '-V' is  your
+       friend.
+
+       To  convert from unsigned bytes at 8000 Hz to signed words
+       at 8000 Hz:
+
+	 sox -r 8000 -c 1 filename.ub newfile.sw
+
+       To convert from Apple's AIFF  format  to	 Microsoft's  WAV
+       format:
+
+	 sox filename.aiff filename.wav
+
+       To  convert  from mono raw 8000 Hz 8-bit unsigned PCM data
+       to a WAV file:
+
+	 sox -r 8000 -u -b -c 1 filename.raw filename.wav
+
+       SoX is great to use along with other command line programs
+       by passing data between the programs using pipelines.  The
+       most common example is to use mpg123 to convert mp3  files
+       in to wav files.	 The following command line will do this:
+
+	 mpg123 -b 10000 -s filename.mp3 | sox -t raw -r 44100 -s
+       -w -c 2 - filename.wav
+
+       When  working  with  totally  unknown  audio data then the
+       "auto" file format may be of use.  It  attempts	to  guess
+       what  the  file	type  is and then you may save it in to a
+       known audio format.
+
+	 sox -V -t auto filename.snd filename.wav
+
+       It is important to understand how  the  internals  of  SoX
+       work  with compressed audio including u-law, a-law, ADPCM,
+       or GSM.	SoX takes ALL input data types and converts  them
+       to  uncompressed 32-bit signed data.  It will then convert
+       this internal version into the  requested  output  format.
+       This  means  unneeded  noise can be introduced from decom-
+       pressing data and then recompressing.  If applying  multi-
+       ple  effects to audio data it is best to save the interme-
+       diate data as PCM data.	After the final	 effect	 is  per-
+       formed then you can specify it as a compressed output for-
+       mat.  This will keep noise introduction to a minimum.
+
+       The following example is to apply various  effects  to  an
+       8000  Hz	 ADPCM	input file and then end up with the final
+       file as 44100 Hz ADPCM.
+
+
+
+
+			December 10, 1999			2
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+	 sox firstfile.wav -r 44100 -s -w secondfile.wav
+	 sox secondfile.wav thirdfile.wav swap
+	 sox thirdfile.wav -a -b finalfile.wav mask
+
+       Under a DOS shell, you can convert several audio files  to
+       an  new	output format using something similar to the fol-
+       lowing command line:
+
+	 FOR %X IN (*.RAW) DO sox -r 11025 -w -s -t raw $X $X.wav
+
+EFFECTS
+       Special	   thanks     goes     to     Juergen	  Mueller
+       (jmeuller@uia.au.ac.be) for this write up on effects.
+
+       Introduction:
+
+       The core problem is that you need some experience in using
+       effects	in  order  to say "that any old sound file sounds
+       with effects absolutely hip". There isn't  any  rule-based
+       system  which  tell  you	 the  correct  setting of all the
+       parameters for every effect.  But after some time you will
+       become an expert in using effects.
+
+       Here  are  some	examples which can be used with any music
+       sample.	(For a sample where only a single  instrument  is
+       playing,	 extreme  parameter  setting  may make well-known
+       "typically" or "classical" sounds.  Likewise,  for  drums,
+       vocals or guitars.)
+
+       Single  effects will be explained and some given parameter
+       settings that can be used to  understand	 the  theorie  by
+       listening to the sound file with the added effect.
+
+       Using multiple effects in parallel or in sequel can result
+       either in very perfect sound or ( mostly ) in  a	 dramatic
+       overloading in variations of sounds such that your ear may
+       follow the sound but you will feel unsatisfied. Hence, for
+       the  first  time using effects try to compose them as less
+       as possible. We don't regard the composition of effects in
+       the examples because to many combinations are possible and
+       you really need a very fast maschine and a lot  of  memory
+       to play them in real-time.
+
+       And real-time playing of sounds will speed up learning the
+       parameter setting.
+
+       Basically, we will use the "play" front-end of  SOX  since
+       it is easier to listen sounds coming out of the speaker or
+       earphone instead of looking at  cryptical  data	in  sound
+       files.
+
+       For easy listening of file.xxx ( "xxx" is any sound format
+       ):
+
+
+
+
+			December 10, 1999			3
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+	     play file.xxx effect-name effect-parameters
+
+       Or more SOX-like ( for "dsp" output ):
+
+	     sox file.xxx -t ossdsp -w	-s  /dev/dsp  effect-name
+       effect-parameters
+
+       or ( for "au" output ):
+
+	      sox  file.xxx -t sunau -w -s /dev/audio effect-name
+       effect-parameters
+
+       And for date freaks:
+
+	     sox file.xxx file.yyy effect-name effect-parameters
+
+       Additional options can be used. However, in this case, for
+       real-time playing you'll need a very fast machine.
+
+       Notes:
+
+       I  played  all examples in real-time on a Pentium 100 with
+       32 Mb and Linux 2.0.30 using a self-recorded sample ( 3:15
+       min  long  in  "wav"  format with 44.1 kHz sample rate and
+       stereo 16 bit ).	 The sample should not contain any of the
+       effects.	 However,  if  you  take any recording of a sound
+       track from radio or tape or cd, and it sounds like a  live
+       concert	or  ten	 people	 are playing the same rhythm with
+       their drums or funky-groves, then take any  other  sample.
+       (Typically,  less  then	four  different intruments and no
+       synthesizer in the sample is suitable. Likewise, the  com-
+       bination vocal, drums, bass and guitar.)
+
+       Effects:
+
+       Echo
+
+       An  echo	 effect	 can be naturally found in the mountains,
+       standing somewhere on a moutain and shouting a single word
+       will  result  in	 one or more repetitions of the word ( if
+       not, turn a bit around ant try next, or climb to the  next
+       mountain ).
+
+       However,	 the time difference between shouting and repeat-
+       ing is the delay (time), its loudness is the decay. Multi-
+       ple echos can have different delays and decays.
+
+       Very  popular  is  using	 echos to play an instrument with
+       itself together, like some guitar players ( Brain May from
+       Queen ) or vocalists are doing.	For music samples of more
+       than one instrument, echo can be used to add a second sam-
+       ple shortly after the original one.
+
+       This  will  sound  as  doubling	the number of instruments
+
+
+
+			December 10, 1999			4
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+       playing the same sample:
+
+	     play file.xxx echo 0.8 0.88 60.0 0.4
+
+       If the delay is very short then it sound like a (metallic)
+       roboter playing music:
+
+	     play file.xxx echo 0.8 0.88 6.0 0.4
+
+       Longer  delay  will  sound  like a open air concert in the
+       mountains:
+
+	     play file.xxx echo 0.8 0.9 1000.0 0.3
+
+       One mountain more, and:
+
+	     play file.xxx echo 0.8 0.9 1000.0 0.3 1800.0 0.25
+
+       Echos
+
+       Like the echo effect, echos stand for  "ECHO  in	 Sequel",
+       that  is	 the  first echos takes the input, the second the
+       input and the first echos, the third  the  input	 and  the
+       first and the second echos, ... and so on.  Care should be
+       taken using many echos (	 see  introduction  );	a  single
+       echos has the same effect as a single echo.
+
+       The sample will be bounced twice in symmetric echos:
+
+	     play file.xxx echos 0.8 0.7 700.0 0.25 700.0 0.3
+
+       The sample will be bounced twice in asymmetric echos:
+
+	     play file.xxx echos 0.8 0.7 700.0 0.25 900.0 0.3
+
+       The sample will sound as played in a garage:
+
+	     play file.xxx echos 0.8 0.7 40.0 0.25 63.0 0.3
+
+       Chorus
+
+       The  chorus  effect  has its name because it will often be
+       used to make a single vocal sound like a	 chorus.  But  it
+       can be applied to other instrument samples too.
+
+       It  works like the echo effect with a short delay, but the
+       delay isn't constant.  The delay is varied  using  a  sin-
+       odial  or  triangular  modulation.  The	modulation  depth
+       defines the range the modulated delay is played before  or
+       after the delay. Hence the delayed sound will sound slower
+       or faster, that is the  delayed	sound  tuned  around  the
+       original	 one, like in a chorus where some vocal are a bit
+       out of tune.
+
+
+
+
+			December 10, 1999			5
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+       The typical delay is around 40ms to 60ms, the speed of the
+       modualtion  is  best  near 0.25Hz and the modulation depth
+       around 2ms.
+
+       A single delay will make the sample more overloaded:
+
+	     play file.xxx chorus 0.7 0.9 55.0 0.4 0.25 2.0 -t
+
+       Two delays of the original samples sound like this:
+
+	     play file.xxx chorus 0.6 0.9 50.0 0.4  0.25  2.0  -t
+       60.0 0.32 0.4 1.3 -s
+
+       A  big  chorus of the sample is ( three additional samples
+       ):
+
+	     play file.xxx chorus 0.5 0.9 50.0 0.4  0.25  2.0  -t
+       60.0 0.32 0.4 2.3 -t	   40.0 0.3 0.3 1.3 -s
+
+       Flanger
+
+       The  flanger  effect  is	 like  the chorus effect, but the
+       delay varies between 0ms and maximal 5ms.  It  sound  like
+       wind blowing, sometimes faster or slower including changes
+       of the speed.
+
+       The flanger effect is widely used in funk and soul  music,
+       where  the  guitar  sound  varies frequently slow or a bit
+       faster.
+
+       The typical delay is around 3ms to 5ms, the speed  of  the
+       modulation is best near 0.5Hz.
+
+       Now, let's groove the sample:
+
+	     play file.xxx flanger 0.6 0.87 3.0 0.9 0.5 -s
+
+       listen  carefully  between  the difference of sinodial and
+       triangular modulation:
+
+	     play file.xxx flanger 0.6 0.87 3.0 0.9 0.5 -t
+
+       If the decay is a bit lower, than the effect  sounds  more
+       popular:
+
+	     play file.xxx flanger 0.8 0.88 3.0 0.4 0.5 -t
+
+       The drunken loundspeaker system:
+
+	     play file.xxx flanger 0.9 0.9 4.0 0.23 1.3 -s
+
+       Reverb
+
+       The reverb effect is often used in audience hall which are
+
+
+
+			December 10, 1999			6
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+       to small or to many visitors  disturb  the  reflection  of
+       sound  at the walls to make the sound played more monumen-
+       tal. You can try the reverb effect  in  your  bathroom  or
+       garage  or sport halls by shouting loud some words. You'll
+       hear the words reflected from the walls.
+
+       The biggest problem in using the reverb effect is the cor-
+       rect  setting  of the (wall) delays such that the sound is
+       relistic an doesn't sound like music playing in a  tin  or
+       overloaded feedback distroys any illusion of any big hall.
+       To help you for much realisitc reverb effects, you  should
+       decide  first, how long the reverb should take place until
+       it is not loud enough to be registered by your ears.  This
+       is be done by the reverb time "t", in small halls 200ms in
+       bigger one 1000ms, if you like. Clearly, the walls of such
+       a  hall	aren't far away, so you should define its setting
+       be given every wall its delay time.  However, if the  wall
+       is  to  far  eway  for the reverb time, you won't hear the
+       reverb, so the nearest wall will be best "t/4"  delay  and
+       the  farest  "t/2".   You can try other distances as well,
+       but it won't sound very realistic.   The	 walls	shouldn't
+       stand  to  close	 to  each  other  and  not  in a multiple
+       interger distance to each other	(  so  avoid  wall  like:
+       200.0 and 202.0, or something like 100.0 and 200.0 ).
+
+       Since audience halls do have a lot of walls, we will start
+       designing one beginning with one wall:
+
+	     play file.xxx reverb 1.0 600.0 180.0
+
+       One wall more:
+
+	     play file.xxx reverb 1.0 600.0 180.0 200.0
+
+       Next two walls:
+
+	     play file.xxx reverb 1.0  600.0  180.0  200.0  220.0
+       240.0
+
+       Now, why not a futuristic hall with six walls:
+
+	      play  file.xxx  reverb  1.0 600.0 180.0 200.0 220.0
+       240.0 280.0 300.0
+
+       If you run out of machine power or memory,  then	 stop  as
+       much  applications  as possible ( every interupt will con-
+       sume a lot of cpu time which for	 bigger	 halls	is  abso-
+       lutely neccessary ).
+
+       Phaser
+
+       The  phaser effect is like the flanger effect, but it uses
+       a reverb instead of  an	echo  and  does	 phase	shifting.
+       You'll  hear the difference in the examples comparing both
+
+
+
+			December 10, 1999			7
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+       effects ( simply change the effect name ).  The delay mod-
+       ulation	can be done sinodial or triangular, preferable is
+       the later one for multiple instruments playing. For single
+       instrument  sounds  the sinodial phaser effect will give a
+       sharper phasing effect.	The decay shouln't be to close to
+       1.0  which  will cause dramatic feedback.  A good range is
+       about 0.5 to 0.1 for the decay.
+
+       We will take a parameter setting as for the flanger before
+       (  gain-out  is	lower since feedback can raise the output
+       dramatically ):
+
+	     play file.xxx phaser 0.8 0.74 3.0 0.4 0.5 -t
+
+       The drunken loundspeaker system ( now less alkohol ):
+
+	     play file.xxx phaser 0.9 0.85 4.0 0.23 1.3 -s
+
+       A popular sound of the sample is as follows:
+
+	     play file.xxx phaser 0.89 0.85 1.0 0.24 2.0 -t
+
+       The sample sounds if ten springs are in your ears:
+
+	     play file.xxx phaser 0.6 0.66 3.0 0.6 2.0 -t
+
+       Other effects ( copy, rate, avg, stat, vibro, lowp, highp,
+       band, reverb )
+
+       The  other effects are simply to use. However, an "easy to
+       use manual" should be given here.
+
+       More effects ( to do ! )
+
+       There are a lot of effects around like noise  gates,  com-
+       pressors,  waw-waw,  stereo effects and so on. They should
+       be implemented making SOX to be more useful in sound  mix-
+       ing  technics  coming together with a great varity of dif-
+       ferent sound effects.
+
+       Combining effects be using then in parallel or  sequel  on
+       different  channels  needs  some	 easy  mechanism which is
+       real-time stable.
+
+       Really missing, is the changing of the parameters,  start-
+       ing  and stoping of effects while playing samples in real-
+       time!
+
+       Good luck and have fun with all the effects!
+
+	    Juergen Mueller	     (jmueller@uia.ua.ac.be)
+
+
+
+
+
+
+			December 10, 1999			8
+
+
+
+
+
+SoX(1)							   SoX(1)
+
+
+SEE ALSO
+       sox(1), play(1), rec(1)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+			December 10, 1999			9
+
+
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -72,8 +72,9 @@
 	$(AR) libst.a $(LIBOBJS)
 	$(RANLIB) libst.a
 
-man: sox.1 libst.3
+man: sox.1 soxexam.1 libst.3
 	nroff -man sox.1 | col -b > sox.txt
+	nroff -man soxexam.1 | col -b > soxexam.txt
 	nroff -man libst.3 | col -b > libst.txt
 
 PLAY_INSTALL_0    =
@@ -82,6 +83,7 @@
 install: sox $(PLAY_INSTALL_$(PLAY_SUPPORT))
 	$(INSTALL) -c -m 755 sox $(BINDIR)
 	$(INSTALL) -c -m 644 sox.1 $(MANDIR)/man1
+	$(INSTALL) -c -m 644 soxexam.1 $(MANDIR)/man1
 
 install-play:
 	if [ -f $(BINDIR)/rec ] ; then $(RM) $(BINDIR)/rec; fi