ref: bcaddabf88ba0bb83caf515439d2c1175871796c
parent: c0b0656453f5051c71db304537ce1aaaf798094f
author: rrt <rrt>
date: Wed Dec 6 11:19:31 EST 2006
Rename file to keep GNU tools happy
--- /dev/null
+++ b/ChangeLog
@@ -1,0 +1,789 @@
+Change History
+--------------
+
+This file contains a list of all changes starting after the release of
+sox-11gamma.
+
+sox-12.18.3
+-----------
+ o Fix writing MP3 files on AMD64 processors.
+ o More fixes to MP3 tag reading. Sometimes tags were
+ detected as valid MP3 frames.
+ o Add new getopt1.c to win32 project file.
+ o New optional rabbit resample routine. Uses libsamplerate
+ (aka Secret Rabbit Code) if installed. (Reuben Thomas)
+ o Fix to pay attention when starting of effects fails.
+ (Reuben Thomas)
+ o Fixed a bug introduced in 12.18.2 that stopped the draining
+ of effects from occuring. This had stopped the reverse effect,
+ among others, from working. (Reuben Thomas)
+ o Add FLAC support (robs@users.sf.net)
+ o Allow encoding quality to be specified (works for Ogg too, but not
+ MP3).
+ o bass and treble altering effects. (robs@users.sf.net)
+ o Visualisation of various filters' frequency response via Octave.
+ (robs@users.sf.net)
+ o Allow the rate and number of channels of .au files to be overridden
+ by command-line arguments. (robs@users.sf.net)
+ o More and better self-tests. (robs@users.sf.net)
+ o Support Maxis's XA format. (Dwayne C. Litzenberger)
+ o Add equalizer effect (Pascal Giard)
+ o Fix rounding error when reading command-line time
+ parameters. (robs)
+ o Allow command-line time parameters of < 1 sec to omit the
+ leading 0. (robs)
+ o Fix nul file hander ignoring other format options if rate
+ option has not been given. (robs)
+ o Fix synth length accuracy. (robs)
+ o Fix broken audio when downmixing with any of the following
+ effects: synth, deemph, vibro. (robs)
+ o Fix wav file handler discarding the last PCM sample in certain
+ circumstances. (robs)
+ o Add support for 24-bit PCM raw, wav (WAVE_FORMAT_EXTENSIBLE) [FR# 801015],
+ aiff, & flac files. (robs)
+ o Added alias -1 (for -b), -2 (for -w), -4 (for -l), -8 (for -d). (robs)
+ o Remove old, optional rate change and alaw/ulaw conversion code.
+ (Reuben Thomas)
+ o Make sox and soxmix a single binary. (Reuben Thomas)
+ o Consistent (and hopefully complete) clipping detection and
+ reporting. (robs)
+ o Add AIFF-C output support. (shashimoto)
+ o -V now gives only user-relevant messages, use -V -V to get
+ developer-relevant messages. (robs)
+ o Old and new rate code removed; the "rate" effect is implemented
+ for backwards compatibility by "resample".
+ o Preview mode now removed, as all it did was use rate rather than
+ resample, and rate has been removed.
+ o Improved synth usage (by introducing -n option) and improved synth
+ entry in the man-page. (robs)
+ o Documented the butterworth filter effects. (robs)
+ o Added command line options for specifying the output file
+ comment. (robs)
+
+sox-12.18.2
+-----------
+ o Adding in Debian's disk full fix (#313206).
+ o Finally got rid of reference to cleanup() function in
+ library. Applications are now required to detect
+ all failures from return codes and cleanup as they
+ want.
+ o Changed how list of formats and effects are stored internally.
+ Effects libst users only. Dirk
+ o Store effects usage so that its accessable by applications.
+ Dirk
+ o Modify the synth effect to not use SIGINT to stop processing
+ and instead return ST_EOF. This allows exact acount of
+ samples to be written out instead of an approximate amount.
+ o Fix hangup when attempting to write stereo MP3 files.
+ (1512218) Kendrick Shaw
+ o Deemp effect would lose stereo sepeartion. (1479249)
+ o Adding cross-platform support for getopt_long
+ o Make help screens print much more information and add
+ new --help-effect option. (Originally from Dirk).
+ o Add support for using an external gsm library instead of
+ just the internal one. Vladimir Nadvornik
+ o Updates to nul file handler to prevent crashes during output.
+ Martin Panter (1482869)
+
+sox-12.18.1
+------------
+
+ o The "filter" effect could go into infinite drain mode. Now
+ only drain 1 buffer. noisered as well.
+ o SoX was ignoring user aborts (ctrl-c) if it occured during
+ effect drain operations. This was bad if effects had
+ bugs and stuck in infinite loop.
+ o Stop SoX from crashing when file type could not be auto
+ determined (1417776).
+ o Output filenames with multiple '.' confused SoX. (1417776)
+ Christian Hammer
+ o Moved to a common set of CLIP routines. This fixed clipping
+ bugs in noisered and mcompand.
+ o Stop SoX from crashing on sphere files that contain large text
+ strings. (1430025) Ulf Hamhammar
+ o Fix some overflow crashes in aiff handler. (1430024) Ulf Hamhammar.
+ o Under windows, set piped input/output to binary mode (1417794). Martin
+ Panter
+ o Fixed broken internal version of strdup(). (1417790) Marty
+ o Stop infinite loop when reading MP3's with a tag size of
+ exactly 8192 bytes. (1417511) Hans Fugal
+ o Fix typo in stlib.dsp for loading in Visual Studio 6.
+ o Fixed problems in silence effect related to removing multiple
+ periods of silence from the middle of the sound file.
+ o Reduced the window size greatly on the silence effect to
+ prevent leaving in silence that looked like noise still based
+ on RMS values.
+ o Prevent infinite loop in pitch effect from uninitialize variable.
+ Frank Heckenbach
+ o Prevent crashes when printing error mesages (1447239)
+ o Added makefile and support files to compile using Open Watcom
+ compiler. (1417798) Marty
+ o Stop calling flow() on effects that returned EOF during drain(). Allows
+ two back-to-back reverse effects to work.
+ o Added support for multiple channels in .dat files.
+ (1366634) tomchristie
+
+sox-12.17.9
+-----------
+
+ o Updates to compile under VC6. Jimen Ching
+ o Declare st_signalinfo_t to specifically be signed in case
+ platform does not default ot signed chars. This
+ is required for NetBSD/powerpc.
+ o When seek()ing in AIFF, SMP, and WAV handlers, remaining samples were
+ incorrectly computed based on bytes and not samples. Jukka
+ o Changed noisered effect to just warn during clipping instead
+ of aborting. Ian Turner
+ o Fixed bug were pieces of audio were lost every buffer read
+ when running both -c and -r options together on mono audio.
+ Users probably percieved it as shorter audio files that
+ played with a sped up tempo.
+ Bugfix will also apply to other times when multiple effects
+ are ran on the command line.
+ o Added support for -V option to play/rec scripts.
+ o Fix to silence effect to allow negative periods to be specified
+ (to remove silence from middle of sound file).
+ o Fix swap option handling so that special case of "swap 1 1" will
+ work.
+ o Track length of Ogg Vorbis files on read.
+ o Add support for displaying a status line that tracks progress
+ of read/write routines. Part of information requires read
+ file handlers to be able to determine file length.
+ o Converted alsa driver to use asoundlib instead of directly
+ talking to kernel driver. This also means that device names
+ are now the ALSA logical names instead of /dev type names.
+ o Added ALSA support to play/rec scripts.
+ o Added st_open*, st_read, st_write, st_seek, st_close routines
+ to help simplify developer interface to libst. See libst.3..
+ o Removed st_initformat(), st_copyformat(), and
+ st_checkformat() from library. If your app used those
+ functions then copy them from 12.17.8 source code
+ directly into your application or update to use new
+ routines.
+ o Force word-alignment on AIFF SSND and APPL chunks on input.
+ Matthew Hodgson.
+ o Add fix to WAV handler to only return data in multiples
+ of sample_size*channels to better handle corrupt files.
+ o Fixed bug where "-4" option didn't work with avg
+ effect (Tom Christie).
+ o Fixed fade's fade-out-length to match man page
+ description as noted by Geoff Kuenning. This required
+ updates to the sample crossfade scripts. Also modified fade
+ effect to report when no more samples will be produced to
+ prevent unneeded reading of whole file.
+ o Allow aborting SoX with SIGTERM, along with previous SIGINT.
+ Norman Ramsey.
+
+sox-12.17.8
+-----------
+ o noisered effect had compile problems with some compilers.
+ o "-x" option was being ignored since 12.17.7.
+ o Stuart Brady added support for reading and writing RIFX files (big
+ endian RIFF/WAV files). Also added support for auto detecting
+ DEC-style ".sd\0" files.
+ o Gene Mar found typo in polyphase nuttall calculation.
+ o SMP buffer overflow (detected by gcc 4.0). Reported by Marcus Meissner
+ and Matthias Saou.
+ o Fixed URL in manpage to resample overviews.
+ o Fixed WAV handler so that it didn't think WAV chunks with max size
+ were invalid chunks. This allows WAV's to be used in pipes since
+ they have to default to max size.
+ o WAV files with alaw or ulaw data don't need extended format chunks.
+ (Lars Immisch)
+ o In AIFF files, fixed problem were short comments should cause
+ AIFF handler to get confused and become misaligned.
+
+sox-12.17.7
+-----------
+ o Christian Weisgerber sent patches to man page fixes
+ and patches for sunaudio driver on openbsd.
+ o Default volume for soxmix wrongly set to 0 instead
+ of 1/#_input_files (float rounding error).
+ o Update to ALSA driver to do a better job of detecting
+ unsupported sample rate/size/encoding and change to
+ a supported one.
+ o Fix bug in alsa writing were last last partial buffer
+ wasn't being flushed.
+ o Guentcho Skordev pointed out ogg vorbis files were using
+ the same value for serial numbers each time.
+ o Changed sox to only read the exact size of a WAV data chunk
+ if cooledit IFF LIST chunk is found at the end of the file.
+ Normally, this isn't done to allow reading > 2gig WAV files.
+ o Modified configure to detect cygwin compiler after detecting
+ gcc compiler (fixes some default CFLAGS options).
+ o Added explicit rule for compile *.o from *.c so that
+ CPPFLAGS is always referenced. Not all platform's default
+ rule includes CPPFLAGS (FreeBSD).
+ o Under linux, add include path to /lib/modules/* so that ALSA
+ include files can be auto detected.
+ o Ian Turner added an effect to remove noise from an audio
+ file by first profiling silent periods of the audio
+ to determine what the noise is (like background hiss on
+ cassette tapes).
+
+sox-12.17.6
+-----------
+ o Changed comment code to always use copies of strings to
+ fix bug in WAV handlering freeing argv[] memory.
+ o Use calloc() to create ft_t structures so that all
+ memory is initialized before being referenced.
+ o Fixed VOC EOF bug were it thought there was an extra
+ block when there wasn't.
+ o Restructured directory layout so that source code is in
+ a seperate directory.
+ o Modified SoX to accept multiple input files. Concatenates
+ files together in this case.
+ o Removed map effect so that loops and instr could be removed
+ from effects structures. This makes effects engine stand
+ alone from the rest of the sox package.
+ o Benedikt Zeyen found a bug in synth effect when generating
+ brown noise that could cause clipping.
+ o David Leverton sent another patch to prevent crashes on
+ amd64's when resampling.
+ o Fixed a bug were MP3 files with large ID3v2 tags could
+ cause SoX to stick in a loop forever. Now, it will
+ abort on IDv3 tags larger then 100k. Could still be
+ improved to handle any size.
+ o Changed volume option (-v) so that it tracks the file
+ it was specified. This means that when specified with
+ the input file, it changes volume before effects engine
+ and when specified with output file, its done after effects
+ engine.
+ o Added crossfade_cat.sh script that will concatenate to
+ audio files and do a crossfade between them.
+ o Fixed bug in fade effect were it was impossible to do a
+ fadeout starting from the beginning of the audio file.
+ o Removed rounding error when changing volume of audio with
+ "-v" option. This error caused doing a "-v -1.0" twice
+ to not result in the original file.
+ o Fixed a possible overflow in lots of effects were MIN
+ value was treated as -MAX instead of -MAX-1.
+ o Modifed sox so its OK for effects to not process any
+ input or output bytes as long as they return ST_EOF.
+ o When effects output data and reported ST_EOF at the
+ same time, that buffer was discarded as well as
+ data from any chained effect.
+ o Added patch from Eric Benson that attempts to do a seek()
+ if the first effect is trim. This greatly speeds up
+ processing large files.
+ o Daniel Pouzzner implemented a multi-band compander (using
+ the butterworth filters to split the audio into bands).
+ o Donnie Smith updated the silence effect so that its possible
+ to remove silence from the middle of a sound file by
+ using a negative value for stop_periods.
+ o Changed float routines to only work with normalized values
+ from -1:1.
+ o Modifed .au handler to be able to read and write 32-bit
+ and 64-bit float data. Only tested reading so far.
+ o WAV with GSM data now always pads data to even number of bytes.
+ o Added support for writing 32-bit audio to AIFF.
+
+sox-12.17.5
+-----------
+ o Thomas Klausner sent in patches to compile audio drivers under
+ NetBSD.
+ o Rahul Powar pointed out a memory leak in the WAV file handler.
+ It wasn't calling the correct close() function when closing
+ input files.
+ o Modified play.1 man page to not use multiple name lines. This
+ appears to confuse some conversion programs. Updated sox.1
+ man page for typo in reverb option.
+ o Andrew Church fixed problem with header of stereo 8SVX files.
+ o Jimen Ching added support to scan over garbage data at the
+ beginning of MP3 files to find valid frames. This is useful
+ to play WAV and AIFF files that have MP3 data in them until
+ those handlers support it directly. To play those, force
+ sox to use the mp3 handler with the "-t mp3" option.
+ o Added patch from Ulf Harnhammar to wav handler to prevent
+ buffer overflows.
+ o Added patch from Redhat to allow resample to work on certain 64-bit
+ machines (Sam Varshavchik)
+ o Tony Seebregts added a file handler for headerless Dialogic/OKI ADPCM
+ files (VOX files).
+ o Jan Paul Schmidt added a repeat effect to do loops the brute force way.
+ This is also good for file format that don't support loops as well.
+ o Fix for OSS driver in rate tolerance calcs that were off because
+ of type conversion problems. Guenter Geiger.
+ o Allow reading sphere files with headers greater then 256 bytes. Jimen
+ Ching.
+ o Fix for vorbis were comments are displayed in KEY=value format always.
+ Stop printing some info to stdout in case output is a pipe. Guenter
+ Geiger.
+ o J Robert Ray submitted fix for AIFF handler to ignore lowercase
+ chunks that are unknown.
+ o Bugfix for 8-bit voc files. Jimen Ching
+ o General warning cleanups (cbagwell)
+ o Memory leaks in reading WAV files (Ufuk Kayserilioglu)
+ o Rearrange link order of ogg vorbis libraries so that they
+ can be compiled as static. (Christian Weisgerbr)
+
+sox-12.17.4
+-----------
+ o Peter Nyhlen fixed a problem with reading Comments in Ogg Vorbis files.
+ o Added install target to allow installing libgsm from main Makefile.
+ Leigh Smith.
+ o Minor updates to sox.c to free unused memory and close all input
+ files during failures.
+ o Pieter Krul added a patch that makes play script look at AUDIODEV
+ environment variable if it exists to find which device to use.
+ This allows scripts to work with Solaris SunRays and is a good idea
+ in general.
+ o Updated config.sub to detect latest supported OS's.
+ o Fabrizio Gennari added support for reading and writing
+ MP3 files using the external libraries libmad and libmp3lame.
+ o Jens Henrik Goebbert sent in several bugfixes for integer overflows
+ in the compand effect.
+ o Dan Dickerman sent in patches for integer overflows in the resample
+ effect.
+ o Jimen Ching sent in a fix for multi-channel sound file processing
+ using the avg effect.
+ o Richards Bannister added patches to clean up prototypes and filter
+ private sizes being to small.
+ o Jimen Ching adds -d option to specify 64bit data size and changed
+ Ulaw/Alaw encoding to default to 8bit data size if not specified.
+ o David Singer pointed out that a MS program creates AIFF files
+ with an invalid length of 0 in its header. Changed SoX to warn the
+ user but continue instead of aborting since SoX can still read
+ the file just fine.
+ o Bert van Leeuwen added a file handler for Psion record.app used
+ for System/Alarms in some Psion devices.
+ o Richard Bannister sent in a patch to make writing vorbis files
+ work with Vorbis 1.0 libraries.
+ o Fixed configure scripts so that they can be ran with the
+ --with-oss-dsp, --with-alsa, and --with-sun-audio options.
+ Was causing compile time problems. Reported by Raul Coronado.
+ o Change Ogg Vorbis support to use VBR encoding to match defaults
+ of oggenc based on suggestion from Christian Weisgerber.
+ o Prints error message now when a channel value of -1 is given.
+ Reported by Pierre Fortin.
+ o Fixed bug were memory could be trashed if a input WAV file contained
+ a comment. Found by Rhys Chard.
+ o Change command line to compile soxmix.o slightly to try and make
+ Forte compiler happy.
+ o Added support for ALSA 0.9 driver. Jimen Ching
+
+sox-12.17.3
+-----------
+ o Removed check that prevented pan from being invoked when the
+ input and output channels were the same.
+ o Ciaran Anscomb added a flush to sunaudio driver after changing
+ settings. This is because it can start buffering data as soon
+ as the device is open and the buffered data can be in a
+ wrong format.
+ o trim wasn't accounting for # of channels and was generally broken.
+ o Jeff Bonggren fixed trim bugs were it was failing when triming
+ data that equaled to BUFSIZ. Also, trim now immediately returns
+ ST_EOF when its done instead of requiring an extra call that
+ returns no data.
+ o auto effect wasn't rewinding the file if the file was less then
+ 132 bytes. Changed auto parsing of header to be incremental
+ instead of reading in a large buffer.
+ o William Plant pointed out a bad pointer access in fade effect's
+ parsing of options.
+ o Ken pointed out a problem were private data was not 8-byte aligned
+ and causing crashes on most RISC CPU's. Fixed by going back to
+ old style of declaring private data as type "double" which usually
+ forces strictest alignment.
+ o ima_rw was miscompiling on alpha's because of a header ordering
+ problem.
+ o Erik de Castro Lopo pointed out that when writing 16-bit VOC files
+ the headers did not contain the correct length or encoding type.
+ o Seperated st.h into 2 files. st.h for libst users and st_i.h for
+ internal use.
+ o Added new types used extensively by libst: st_sample_t & st_size_t.
+ This allows for more deterministic behavior on 64-bit machines and
+ also allows sox to possibly work with much larger file sizes.
+ o SoX was some times getting confused and thinking an EOF was an
+ error case when reading audio files. Removed unneeded aborts
+ when EOF was OK.
+ o Silence effect was broken on stereo files. Also, made thresholds
+ relative to original bit percision of audio data. When 16-bit audio
+ is scaled up to 32-bits, a little bit of noise starts to look like a
+ large amplitude of noise. Also, now using RMS values to smooth out
+ clicks. RMS rolling window size is 1/10 of sample rate.
+ o Changed Floats into a type of encoding instead of a size of audio data.
+ o Put a flush at the end of OSS driver so that no old data would be
+ left in internal buffers after changing audio format parameters.
+ o Fixed problem were play script wasn't installed correctly if you
+ build from another directory (pointed out by Mike Castle).
+ o Made GSM support internal to libst (no external library required).
+ o Change configure script to enable ulaw/alaw lookup tables and GSM
+ support by default. Also have Makefile's make use of more configure
+ prefix options to allow for customized installs.
+ o Reverted ulaw/alaw conversion routines back to Sun's versions.
+ o Modified raw file handler to write files in the same generic buffered
+ fashion that was added for reading in 12.17.2. Seems to have
+ speed up some types of writing.
+ o Reading Ogg Vorbis files could get confused of when EOF was reached.
+ o Added uninstall rules to Makefile. Added new ststdint.h to define
+ *int*_t typedefs.
+ o Added internal strcasecmp for OS/2.
+ o Added support for swapping "bit" order (MSB becomes LSB) for raw u-law
+ and A-law data. Some ISDN equipment prefers it this way. Use -x flag
+ or new .la or .lu file extensions.
+ o Annonymous patch submitted to fix types and spelling problems in
+ various files. Also, updated VOC files to have u-law and A-law
+ support as well as able to read in VOC files using a pipe. More
+ examples added to soxexam file.
+
+sox-12.17.2
+-----------
+ o Daniel Culbert found and fixed a bug in the polyphase effect
+ that occurs on platforms that rand() can return large values.
+ The bug resulted in polyphase resampling an audio file to a
+ different rate then it said it was.
+ o Stan Seibert contributed a handler for Ogg Vorbis files. It
+ handles all input formats but can only save using default
+ settings.
+ o Darrick Servis has made major cleanups in the code in regards
+ to error conditions. Helps people using libst.
+ o Darrick Servis has added added optional seek functionality sox.
+ Several formats have been modified to make use of this.
+ o Geoff Kuenning rewrote the average effect into a general-purpose
+ parametric mapping from N channels to M channels.
+ o Geoff Kuenning added an optional delay-time parameter to the compander
+ effect to allow companding to effectively operate based on future
+ knowledge.
+ o Geoff Kuenning Added support to fade and trim effect for specifying time
+ in hh:mm:ss.frac format.
+ Fixed a bug that caused integer overflow when large start/stop times
+ were used.
+ o Geoff Kuenning updated play/rec/soxeffect scripts to handle all effects
+ added since 12.17. Spell-checked soxexam.1 file.
+ o Jimen Ching updated ALSA configure support to auto-detect 4.x or 5.x API
+ and compile correctly under those two. All other versions are unsupported.
+ o Merged in the NetBSD package changes into CVS finally.
+ o Removed broken support for non-ANSI compilers.
+ o Makefile now places the correct path to SoX in the play/rec scripts
+ based on configuration script values.
+ o Alexander Pevzner provided a fix for OSS driver for sound being
+ dropped under heavy CPU loads. Moved GETBLKSIZE operation
+ until after setting up the format (SBLive! was modify the block size
+ after changing formats).
+ o With help from David Blythe, updated OSS drivers to use newer format
+ interface. OSS driver will now attempt to detect a valid endian type
+ to use with sound card.
+ o Carsten Borchardt pointed out a bug in lowp filter. Added new
+ nul file handler that reads and writes from/to nothing.
+ Also added new synth effect that creates sounds using a simple
+ synthesizer. Created a testcd.sh that uses two new features
+ to create a test sound CD for testing audio equipment.
+ o Ben Last added a new program that uses libst and will merge two
+ seperate audio files into a single file with multiple channels.
+ This was merged into the standard sox.c file by cbagwell.
+ o Andreas Menke fixed some problems with the speed effect and
+ how effects were drained. Also improved the usage of printf()'s
+ to use stderr.
+ o Corrected AU header length value when comments were less than
+ 4 bytes.
+ o Added support for reading non-standard bit size data from AIFF files.
+ o Ignore unmatched MARK/INSTR chunks in AIFF files now instead of quiting.
+ o Fixed ALAW encoding bug in .au files as pointed out by Bruce Forsberg.
+ o Unified the raw reading functions. Probably slightly faster for
+ most datatypes but was done to fix recording from the OSS driver.
+ Control-C stopped working somewhere during the 12.17 series.
+ o Ford Prefect added a dcshift which can shift the midline amplitude
+ towards the true center. This will allow for a greater range
+ of volume adjustments without clipping audio data.
+ o Heikki Leinonen submitted a silence effect that will trim off
+ silence from the beginning of a file. cbagwell made some modifications
+ to trim off front and back as well as some other tweaks.
+ o Made the "auto" effect the default file handler for input files.
+ Also have auto handler now use file extensions if it can't figure
+ it out.
+
+sox-12.17.1
+-----------
+ o Andreas Kies fixed a bug were we were not detecting correctly
+ if an output file was seekable.
+ o Fixed a bug in the mask effect introduced in 12.17. If the libc
+ version of rand() returned more then 15-bit values then it would
+ trash your data. Reported by Friedhel Mehnert.
+ o Added a new fade in/out effect from Ari Moisio.
+ o AIFF files now ignore a MARK chunk if the loop type is NoLoop (0).
+ o Fixed bug were it was impossible to output ADPCM data in wav files.
+ o Fixed bug were rate had to be specified for sphere files (fix from
+ Antti Honkela).
+ o Added small work around to let compile with cygwin's gcc 95.2
+ which also now allows to compile with GSM support under windows.
+ o Removed accessing of sound devices in tests for sound support and
+ instead just look for needed header files. This allows the sound
+ support to be detected even if the device is currently busy or when
+ compiled on a box that doesn't have a sound card but the OS supports
+ it (which is the enviornment of most distributions creating new
+ binaries).
+ o Added support to partially handle AIFC files but only uncompressed
+ versions. This should allow people to work with raw CD audio data
+ on Mac OSX and also gives a basis for adding future support for
+ things like ADPCM processing.
+ o Added new "earwax" effect from Edward Beingessner. It is meant to
+ be used for CD audio played through headphones. It will move the
+ sound stage from left/right to in front of you.
+ o Trim effect did not compute locations as was documented in the
+ man pages. Changed effect so that it computed the time the
+ same way that the fade effect does.
+
+sox-12.17
+---------
+ o Sox can now read and write w98 compatible gsm .wav files,
+ if compiled properly with libgsm. Thanks go to Stuart
+ Daines <sjd.u-net.com> for the gsm-wav patches.
+ This is new, and relatively untested. See -g format option.
+ o Sox can now write IMA_ADPCM and ADPCM compressed .wav,
+ this is new, and relatively untested. See -i and -a format
+ options in manpage.
+ o General changes to wav.c for writing additional wav formats.
+ Reading wave headers: more consistency checks.
+ Writing wave headers: fixes for w98.
+ o Speedups to adpcm read routines, new codex versions are
+ now in ima_rw.c and adpcm.c.
+ o Speedups for raw.c, especially for gcc with glibc.
+ o Fixed a segfault problem with ulaw/alaw conversion, where
+ an out-of-range index into the tables could occur.
+ o More detailed output from the stat effect.
+ o Continued rewrite of resample.c, now it is almost as
+ fast with floating arithmetic as the old (buggy) version
+ was with 16-bit integer arithmetic. The older version
+ in sox-12.16 shifted frequencies slightly and was less
+ accurate.
+ o Extensive rewrite of polyphas.c, should be faster and use
+ less memory now. The sox-12.16 polyphase code had some bugs.
+ o New effect 'filter' which is a high-quality DSP lowpass/
+ highpass/bandpass filter using windowed sinc function
+ methods, like polyphase and resample.
+ o Jan Paul Schmidt added new low/high/bandpass and bandlimit
+ filters to sox. They have much better results then the old
+ versions of low/high/bandpass. The new effects are all
+ Butterworth filters.
+ o New data file type supported, -sl or extension .sl for
+ signed 32-bit integers. Some simplification of the raw.c
+ source.
+ o Some test programs and scripts in the test directory, for
+ making gnuplot plots of frequency response, error-levels
+ of rate-conversion and filter effects.
+ o Removed sbdsp code. All modern unixes are support via OSS,
+ ALSA, or sun audio device interfaces.
+ o Added AVR handler from Jan Paul Schmidt.
+ o SoX now waits until the last possible moment before opening
+ the output file. This will allow all input and effect options
+ to be parsed for errors and abort before overwriting any file.
+ o SoX will no longer write to files that exists. This will keep
+ it from deleting files when a user mistakenly types "sox *.wav".
+ o Added new compander effect from Nick Bailey. Nice general purpose
+ filter.
+ o Under Solaris, SoX now checks hardware ability to play stereo/PCM
+ and forces output data to match. Sorry, no SunOS support. I don't
+ have access to one any more.
+ o Fixed array overrun bug in rate effect as pointed out by Ian
+ Donaldson.
+ 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.
+ o Richard Kent fixed a byte alignment problem in aiff comment code.
+ o Loring Holden added support to create missing directories on install
+ and support for installs from outside the source directory.
+ o Fabien COELHO added a pan and volume effect.
+ o Fabien COELHO added a speed effect to sox (like speeding up a tape
+ machine). Also added pitch which changes pitch without effecting
+ duration and stretch which stretch time without effecting pitch.
+ o Leigh Smith updated aiff support to use the COMT check when writing
+ comments instead of the ANNO. It is the prefered method from Apple
+ and newer programs are starting to require it. Also fixed some bugs
+ in how we compute the length of various chunks in output files.
+ o Changed the default block alignement for IMA ADPCM WAV files to use
+ 256 which is what windows programs use. Badly written readers expect
+ 256.
+ o Matthias Nutt helped add support for specifying multiple effects
+ to SoX on the command line.
+ o Curt Zirzow added a trim effect to trim off audio data.
+ o Updated ALSA driver to support new interface. Jimen Ching
+
+sox-12.16
+---------
+
+ o Changed raw data functions to perform I/O operations using block reads.
+ Should improve speeds greatly, especially when filesize is in megs.
+ Got code ready to tweak speed more which also forced me to clean up
+ Endian test code.
+ o Fixed a bug in .au's handling of G.723. It wasn't using the correct
+ number of bits. Added A-law support to .au.
+ o Quoted $filename in play/rec scripts so that files with spaces in
+ their names can be given.
+ o Old OS/2 support didn't work. Replaced with known working EMX
+ GCC compatible code.
+ o ADPCM WAV files were defaulting to 8-bit outputs and thus losing
+ some persision. Now defaults to 16-bit signed uncompressed data.
+ o Fixed a couple cross-platform compiler issues.
+ o Jimen Ching has added support for "configure" in to SOX. Finally,
+ a good solution to cross-platform compiling!
+ o Jimen Ching has added native support for the ALSA driver to play
+ and record audio from. (jching@flex.com)
+ o Minor correction for -r example in manual page.
+ o Renamed sox.sh to soxeffect and rewrote. Symbolic links can be made
+ from this file to the name of a sox effect. It will then run that
+ effect on STDIN and output the results to STDOUT.
+ o Fixed up some makefiles and 16-bit support from patches sent by
+ Mark Morgan Lloyd (markMLl.in@telemetry.co.uk). Also added some
+ nice DOS test bat files from him as well.
+ o Cleaned up some more cross-platform compile problems. In the process
+ got it working with Turbo C again, kinda. It still locks DOS up at times.
+ o Made AIFF handler work with invalid headers that some programs generate.
+ Also fix an Endian bug thats been there for quite a long time (when
+ ran on Intel machines). Made comment lengths even length to make
+ most MacOS programs happy. cbagwell
+ o Resample function was updated by Andreas Wilde
+ (andreas@eakaw2.et.tu-dresden.de) to fix problem were freqs. were
+ off by a factor of 2.
+ o Added an effect that swaps stereo channels. cbagwell
+ o Combined play and rec scripts to a single program to ease mantaince.
+ Also added GNU style long-options (--help). Careful, some options have
+ change (but more logical).
+ o Fixed a very old silly bug were low/high/bandpass filters would
+ add some trash data to the end of the sound file.
+ o "avg" effect wouldn't give error message when you tried to average
+ x number of channels in to the same number of channels.
+ o Fixed core dump when writting AIFF files with no comments.
+ (Olaf Pueschel)
+
+sox-12.15
+---------
+
+ o Juergen Mueller moved Sox forward quite a bit by adding all the
+ most commonly known "Guitar Effects". He enhanced echo support,
+ added chorus, flanger, and reverb effects. He also wrote a very
+ handy CHEAT.eft file for using various effects.
+ o Incorporated Yamaha TX-16W sampler file support provided by
+ Rob Talley (rob@aii.com) and Mark Lakata (lakata@physics.berkeley.edu).
+ o Fixed a small bug in hcom compression, dependent on sign
+ extension. Leigh Smith (leigh@psychokiller.dialix.oz.au).
+ o sox -h now prints out the file formats and effects supported.
+ Leigh Smith and Chris Bagwell.
+ o smp transfers comments more completely. Leigh Smith.
+ o aiff manages markers and loops correctly and produces more
+ verbose output. Leigh Smith.
+ o Added polyphase resampler (kb@ece.cmu.edu). This adds a slightly
+ different resampling algorithm to the mix.
+ o Michael Brown (mjb@pootle.demon.co.uk) sent a patch to stop crashes
+ from happening when reading mono MS ADPCM files.
+ o Fabrice Bellard has added a less buggy 'rate' conversion. I've left
+ the old rate code included but if all goes well this will become
+ the new 'rate'. Please test and let me know how it works. Resample
+ effect needs to be reworked now.
+ o Heiko Eissfeldt: Implemented a simple deemphasis effect for
+ certain audio cd samples.
+ o Matija Nalis (mnalis@public.srce.hr) sent a patch to fix volume adjustment
+ (-v) option of sox.
+ o Fixed typo in optimazation flag in unix makefile, as pointed out by
+ Manoj Kasichainula (manojk@io.com).
+ o Fixed missing ';;' in play script. cbagwell
+ o Fixed bug in determining length of IMA and MS ADPCM WAVE files. cbagwell
+ o Fixed bug in how stereo effects were drained which fixed the
+ "reverse" effect from only saving half of stereo files. cbagwell
+ o Can use "-e" without an effect again.
+ o Added -g and -a options for new style support of GSM and ADPCM. Added
+ error checking to various formats to avoid allowing these types.
+
+sox-12.14
+---------
+
+ o Bumped major version number up and shortened name. The shorter name
+ should help the various distributions using this package.
+ o Added support for MS ADPCM and IMA (or DVI) ADPCM for .wav files.
+ Thanks to Mark Podlipec's xanim for this code (podlipec@ici.net).
+ o Change Lance Norskog's email address to thinman@meer.net. The old
+ one was bouncing.
+ o Added path string to play and rec strings so that it could be run by
+ users without complete paths setup (i.e. Ran by "rc" files during bootup
+ or shutdown)
+ o Fixed -e option from Richard Guenther
+ (richard.guenther@student.uni-tuebingen.de) and fixed a small bug
+ in stat.
+ o Fixed a bug in the mask effect for ULAW/ALAW files.
+ o Fixed a bug in cdr output files that appended trash to end of file.
+ o Guenter Geiger (geiger@iem.mhsg.ac.at) made a rather large patch to
+ allow sox to work on 64-bit alphas. It was done the easiest meathod
+ by changing all long declarations to use a macro that knows to
+ make it 32-bits. Want to port to another 64-bit-but-not-alpha
+ machine? Grep for "alpha" to see changes. There are most likely
+ several bugs left for alphas. Guenter is also supporting this
+ package for the Debian distribution.
+ o Did some major code cleanups to clear out some warning messages
+ during compile. This is to clear up problems I'm finding under
+ both alpha and dos. Some warning messages are actually useful
+ now (pointing out possible data loss). Hopefully, I didn't
+ break anything.
+ o Code clean up allows me to finally compile code under Turbo C
+ again. Too bad the EXE gets a currupted stack somewhere and locks
+ up the system. Anyone want to try it with Borland C for me?
+ If you get a working EXE I would like to start distributing a DOS
+ package like there used to be.
+ o Speaking of cleanups, anyone want to help cleanup the makefiles for
+ various platforms? They are quite outdated right now and it is
+ very obvious that Sox hasn't been able to compile under all the
+ platforms it once did for several releases. Please send in
+ the cleaned-up makefile versions along with what programs you
+ used to compile it with.
+ o There is a known bug in hcom's compress() function. It is allocating
+ memory that can't be free'd under some OS's. It causes a core dump.
+
+sox-11gamma-cb3
+---------------
+
+This release of sox is mainly a bugfix release. The following things
+have changed:
+
+ o Documentation has been updated when it was obviously wrong.
+ Much more work could be done. Man pages were updated to
+ work correctly on Solaris and add some missing info.
+ o Several people sent me patches to fix compiling on Solaris
+ as well as fix a few bugs.
+ o Change USS driver's name to OSS. Man, does that driver
+ like to change names! This could cause problems if you
+ have made your own custom play and rec scripts.
+ o Updated my email address. Sorry if I haven't responded to
+ any emails as I no longer have access to my old address.
+ Please use cbagwell@sprynet.com.
+ o Fixed unix test scripts so that they worked again.
+ o Fixed endian bug in psion .wve code.
+ o Replaced outdated voc info file with detailed format info
+ inside voc code.
+ o Added new sound format, cvsd (Continuously Variable Slope Delta)
+ from Thomas Sailer (sailer@ife.ee.ethz.ch).
+
+sox-11gamma-cb2
+---------------
+
+This release of sox is based on the latest gamma version released
+plus some patches I've made to support the following new features:
+
+I would like to thank everyone that wrote me about the long
+standing bug in Sox that could DELETE your /dev/* file if the
+program was aborted for reason such as invalid audio file. Special
+thanks for Bryan Franklin for sending in a patch when I was
+to busy to even look for it.
+
+
+ o Better play support for 8-bit stereo voc files. New support
+ for outputing both 8-bit and 16-bit stereo voc files.
+ o Built-in support for playing and recording from Linux /dev/dsp.
+ This is a re-write and seperate module from the previous
+ support included inside the sbdsp module. Also fixes a buffer
+ size bug that showed up when using newer versions of OSS.
+ This driver will work with OSS (and older versions called USS, TASD
+ and Voxware).
+ o Support for audio playing and recording with SunOS /dev/audio.
+ o Fixes a bug were /dev/audio or /dev/dsp could be deleted
+ when playing an invalid format audio file.
+ o Expanded options for play and rec scripts. You can now specify
+ sox effects after the filename and hear them in real time.
+ Please be sure that an older version of sox is not in your path
+ because these script will possibly find it first and
+ incorrectly use it.
+ o Setting play/record volume still requires an external program.
+ If you have one a command line program to do this (such as
+ "mixer" for Linux) then you will want to edit the play and rec
+ to use this. The current support for it is only in example
+ form of how it can be done.
--- a/Changelog
+++ /dev/null
@@ -1,789 +1,0 @@
-Change History
---------------
-
-This file contains a list of all changes starting after the release of
-sox-11gamma.
-
-sox-12.18.3
------------
- o Fix writing MP3 files on AMD64 processors.
- o More fixes to MP3 tag reading. Sometimes tags were
- detected as valid MP3 frames.
- o Add new getopt1.c to win32 project file.
- o New optional rabbit resample routine. Uses libsamplerate
- (aka Secret Rabbit Code) if installed. (Reuben Thomas)
- o Fix to pay attention when starting of effects fails.
- (Reuben Thomas)
- o Fixed a bug introduced in 12.18.2 that stopped the draining
- of effects from occuring. This had stopped the reverse effect,
- among others, from working. (Reuben Thomas)
- o Add FLAC support (robs@users.sf.net)
- o Allow encoding quality to be specified (works for Ogg too, but not
- MP3).
- o bass and treble altering effects. (robs@users.sf.net)
- o Visualisation of various filters' frequency response via Octave.
- (robs@users.sf.net)
- o Allow the rate and number of channels of .au files to be overridden
- by command-line arguments. (robs@users.sf.net)
- o More and better self-tests. (robs@users.sf.net)
- o Support Maxis's XA format. (Dwayne C. Litzenberger)
- o Add equalizer effect (Pascal Giard)
- o Fix rounding error when reading command-line time
- parameters. (robs)
- o Allow command-line time parameters of < 1 sec to omit the
- leading 0. (robs)
- o Fix nul file hander ignoring other format options if rate
- option has not been given. (robs)
- o Fix synth length accuracy. (robs)
- o Fix broken audio when downmixing with any of the following
- effects: synth, deemph, vibro. (robs)
- o Fix wav file handler discarding the last PCM sample in certain
- circumstances. (robs)
- o Add support for 24-bit PCM raw, wav (WAVE_FORMAT_EXTENSIBLE) [FR# 801015],
- aiff, & flac files. (robs)
- o Added alias -1 (for -b), -2 (for -w), -4 (for -l), -8 (for -d). (robs)
- o Remove old, optional rate change and alaw/ulaw conversion code.
- (Reuben Thomas)
- o Make sox and soxmix a single binary. (Reuben Thomas)
- o Consistent (and hopefully complete) clipping detection and
- reporting. (robs)
- o Add AIFF-C output support. (shashimoto)
- o -V now gives only user-relevant messages, use -V -V to get
- developer-relevant messages. (robs)
- o Old and new rate code removed; the "rate" effect is implemented
- for backwards compatibility by "resample".
- o Preview mode now removed, as all it did was use rate rather than
- resample, and rate has been removed.
- o Improved synth usage (by introducing -n option) and improved synth
- entry in the man-page. (robs)
- o Documented the butterworth filter effects. (robs)
- o Added command line options for specifying the output file
- comment. (robs)
-
-sox-12.18.2
------------
- o Adding in Debian's disk full fix (#313206).
- o Finally got rid of reference to cleanup() function in
- library. Applications are now required to detect
- all failures from return codes and cleanup as they
- want.
- o Changed how list of formats and effects are stored internally.
- Effects libst users only. Dirk
- o Store effects usage so that its accessable by applications.
- Dirk
- o Modify the synth effect to not use SIGINT to stop processing
- and instead return ST_EOF. This allows exact acount of
- samples to be written out instead of an approximate amount.
- o Fix hangup when attempting to write stereo MP3 files.
- (1512218) Kendrick Shaw
- o Deemp effect would lose stereo sepeartion. (1479249)
- o Adding cross-platform support for getopt_long
- o Make help screens print much more information and add
- new --help-effect option. (Originally from Dirk).
- o Add support for using an external gsm library instead of
- just the internal one. Vladimir Nadvornik
- o Updates to nul file handler to prevent crashes during output.
- Martin Panter (1482869)
-
-sox-12.18.1
-------------
-
- o The "filter" effect could go into infinite drain mode. Now
- only drain 1 buffer. noisered as well.
- o SoX was ignoring user aborts (ctrl-c) if it occured during
- effect drain operations. This was bad if effects had
- bugs and stuck in infinite loop.
- o Stop SoX from crashing when file type could not be auto
- determined (1417776).
- o Output filenames with multiple '.' confused SoX. (1417776)
- Christian Hammer
- o Moved to a common set of CLIP routines. This fixed clipping
- bugs in noisered and mcompand.
- o Stop SoX from crashing on sphere files that contain large text
- strings. (1430025) Ulf Hamhammar
- o Fix some overflow crashes in aiff handler. (1430024) Ulf Hamhammar.
- o Under windows, set piped input/output to binary mode (1417794). Martin
- Panter
- o Fixed broken internal version of strdup(). (1417790) Marty
- o Stop infinite loop when reading MP3's with a tag size of
- exactly 8192 bytes. (1417511) Hans Fugal
- o Fix typo in stlib.dsp for loading in Visual Studio 6.
- o Fixed problems in silence effect related to removing multiple
- periods of silence from the middle of the sound file.
- o Reduced the window size greatly on the silence effect to
- prevent leaving in silence that looked like noise still based
- on RMS values.
- o Prevent infinite loop in pitch effect from uninitialize variable.
- Frank Heckenbach
- o Prevent crashes when printing error mesages (1447239)
- o Added makefile and support files to compile using Open Watcom
- compiler. (1417798) Marty
- o Stop calling flow() on effects that returned EOF during drain(). Allows
- two back-to-back reverse effects to work.
- o Added support for multiple channels in .dat files.
- (1366634) tomchristie
-
-sox-12.17.9
------------
-
- o Updates to compile under VC6. Jimen Ching
- o Declare st_signalinfo_t to specifically be signed in case
- platform does not default ot signed chars. This
- is required for NetBSD/powerpc.
- o When seek()ing in AIFF, SMP, and WAV handlers, remaining samples were
- incorrectly computed based on bytes and not samples. Jukka
- o Changed noisered effect to just warn during clipping instead
- of aborting. Ian Turner
- o Fixed bug were pieces of audio were lost every buffer read
- when running both -c and -r options together on mono audio.
- Users probably percieved it as shorter audio files that
- played with a sped up tempo.
- Bugfix will also apply to other times when multiple effects
- are ran on the command line.
- o Added support for -V option to play/rec scripts.
- o Fix to silence effect to allow negative periods to be specified
- (to remove silence from middle of sound file).
- o Fix swap option handling so that special case of "swap 1 1" will
- work.
- o Track length of Ogg Vorbis files on read.
- o Add support for displaying a status line that tracks progress
- of read/write routines. Part of information requires read
- file handlers to be able to determine file length.
- o Converted alsa driver to use asoundlib instead of directly
- talking to kernel driver. This also means that device names
- are now the ALSA logical names instead of /dev type names.
- o Added ALSA support to play/rec scripts.
- o Added st_open*, st_read, st_write, st_seek, st_close routines
- to help simplify developer interface to libst. See libst.3..
- o Removed st_initformat(), st_copyformat(), and
- st_checkformat() from library. If your app used those
- functions then copy them from 12.17.8 source code
- directly into your application or update to use new
- routines.
- o Force word-alignment on AIFF SSND and APPL chunks on input.
- Matthew Hodgson.
- o Add fix to WAV handler to only return data in multiples
- of sample_size*channels to better handle corrupt files.
- o Fixed bug where "-4" option didn't work with avg
- effect (Tom Christie).
- o Fixed fade's fade-out-length to match man page
- description as noted by Geoff Kuenning. This required
- updates to the sample crossfade scripts. Also modified fade
- effect to report when no more samples will be produced to
- prevent unneeded reading of whole file.
- o Allow aborting SoX with SIGTERM, along with previous SIGINT.
- Norman Ramsey.
-
-sox-12.17.8
------------
- o noisered effect had compile problems with some compilers.
- o "-x" option was being ignored since 12.17.7.
- o Stuart Brady added support for reading and writing RIFX files (big
- endian RIFF/WAV files). Also added support for auto detecting
- DEC-style ".sd\0" files.
- o Gene Mar found typo in polyphase nuttall calculation.
- o SMP buffer overflow (detected by gcc 4.0). Reported by Marcus Meissner
- and Matthias Saou.
- o Fixed URL in manpage to resample overviews.
- o Fixed WAV handler so that it didn't think WAV chunks with max size
- were invalid chunks. This allows WAV's to be used in pipes since
- they have to default to max size.
- o WAV files with alaw or ulaw data don't need extended format chunks.
- (Lars Immisch)
- o In AIFF files, fixed problem were short comments should cause
- AIFF handler to get confused and become misaligned.
-
-sox-12.17.7
------------
- o Christian Weisgerber sent patches to man page fixes
- and patches for sunaudio driver on openbsd.
- o Default volume for soxmix wrongly set to 0 instead
- of 1/#_input_files (float rounding error).
- o Update to ALSA driver to do a better job of detecting
- unsupported sample rate/size/encoding and change to
- a supported one.
- o Fix bug in alsa writing were last last partial buffer
- wasn't being flushed.
- o Guentcho Skordev pointed out ogg vorbis files were using
- the same value for serial numbers each time.
- o Changed sox to only read the exact size of a WAV data chunk
- if cooledit IFF LIST chunk is found at the end of the file.
- Normally, this isn't done to allow reading > 2gig WAV files.
- o Modified configure to detect cygwin compiler after detecting
- gcc compiler (fixes some default CFLAGS options).
- o Added explicit rule for compile *.o from *.c so that
- CPPFLAGS is always referenced. Not all platform's default
- rule includes CPPFLAGS (FreeBSD).
- o Under linux, add include path to /lib/modules/* so that ALSA
- include files can be auto detected.
- o Ian Turner added an effect to remove noise from an audio
- file by first profiling silent periods of the audio
- to determine what the noise is (like background hiss on
- cassette tapes).
-
-sox-12.17.6
------------
- o Changed comment code to always use copies of strings to
- fix bug in WAV handlering freeing argv[] memory.
- o Use calloc() to create ft_t structures so that all
- memory is initialized before being referenced.
- o Fixed VOC EOF bug were it thought there was an extra
- block when there wasn't.
- o Restructured directory layout so that source code is in
- a seperate directory.
- o Modified SoX to accept multiple input files. Concatenates
- files together in this case.
- o Removed map effect so that loops and instr could be removed
- from effects structures. This makes effects engine stand
- alone from the rest of the sox package.
- o Benedikt Zeyen found a bug in synth effect when generating
- brown noise that could cause clipping.
- o David Leverton sent another patch to prevent crashes on
- amd64's when resampling.
- o Fixed a bug were MP3 files with large ID3v2 tags could
- cause SoX to stick in a loop forever. Now, it will
- abort on IDv3 tags larger then 100k. Could still be
- improved to handle any size.
- o Changed volume option (-v) so that it tracks the file
- it was specified. This means that when specified with
- the input file, it changes volume before effects engine
- and when specified with output file, its done after effects
- engine.
- o Added crossfade_cat.sh script that will concatenate to
- audio files and do a crossfade between them.
- o Fixed bug in fade effect were it was impossible to do a
- fadeout starting from the beginning of the audio file.
- o Removed rounding error when changing volume of audio with
- "-v" option. This error caused doing a "-v -1.0" twice
- to not result in the original file.
- o Fixed a possible overflow in lots of effects were MIN
- value was treated as -MAX instead of -MAX-1.
- o Modifed sox so its OK for effects to not process any
- input or output bytes as long as they return ST_EOF.
- o When effects output data and reported ST_EOF at the
- same time, that buffer was discarded as well as
- data from any chained effect.
- o Added patch from Eric Benson that attempts to do a seek()
- if the first effect is trim. This greatly speeds up
- processing large files.
- o Daniel Pouzzner implemented a multi-band compander (using
- the butterworth filters to split the audio into bands).
- o Donnie Smith updated the silence effect so that its possible
- to remove silence from the middle of a sound file by
- using a negative value for stop_periods.
- o Changed float routines to only work with normalized values
- from -1:1.
- o Modifed .au handler to be able to read and write 32-bit
- and 64-bit float data. Only tested reading so far.
- o WAV with GSM data now always pads data to even number of bytes.
- o Added support for writing 32-bit audio to AIFF.
-
-sox-12.17.5
------------
- o Thomas Klausner sent in patches to compile audio drivers under
- NetBSD.
- o Rahul Powar pointed out a memory leak in the WAV file handler.
- It wasn't calling the correct close() function when closing
- input files.
- o Modified play.1 man page to not use multiple name lines. This
- appears to confuse some conversion programs. Updated sox.1
- man page for typo in reverb option.
- o Andrew Church fixed problem with header of stereo 8SVX files.
- o Jimen Ching added support to scan over garbage data at the
- beginning of MP3 files to find valid frames. This is useful
- to play WAV and AIFF files that have MP3 data in them until
- those handlers support it directly. To play those, force
- sox to use the mp3 handler with the "-t mp3" option.
- o Added patch from Ulf Harnhammar to wav handler to prevent
- buffer overflows.
- o Added patch from Redhat to allow resample to work on certain 64-bit
- machines (Sam Varshavchik)
- o Tony Seebregts added a file handler for headerless Dialogic/OKI ADPCM
- files (VOX files).
- o Jan Paul Schmidt added a repeat effect to do loops the brute force way.
- This is also good for file format that don't support loops as well.
- o Fix for OSS driver in rate tolerance calcs that were off because
- of type conversion problems. Guenter Geiger.
- o Allow reading sphere files with headers greater then 256 bytes. Jimen
- Ching.
- o Fix for vorbis were comments are displayed in KEY=value format always.
- Stop printing some info to stdout in case output is a pipe. Guenter
- Geiger.
- o J Robert Ray submitted fix for AIFF handler to ignore lowercase
- chunks that are unknown.
- o Bugfix for 8-bit voc files. Jimen Ching
- o General warning cleanups (cbagwell)
- o Memory leaks in reading WAV files (Ufuk Kayserilioglu)
- o Rearrange link order of ogg vorbis libraries so that they
- can be compiled as static. (Christian Weisgerbr)
-
-sox-12.17.4
------------
- o Peter Nyhlen fixed a problem with reading Comments in Ogg Vorbis files.
- o Added install target to allow installing libgsm from main Makefile.
- Leigh Smith.
- o Minor updates to sox.c to free unused memory and close all input
- files during failures.
- o Pieter Krul added a patch that makes play script look at AUDIODEV
- environment variable if it exists to find which device to use.
- This allows scripts to work with Solaris SunRays and is a good idea
- in general.
- o Updated config.sub to detect latest supported OS's.
- o Fabrizio Gennari added support for reading and writing
- MP3 files using the external libraries libmad and libmp3lame.
- o Jens Henrik Goebbert sent in several bugfixes for integer overflows
- in the compand effect.
- o Dan Dickerman sent in patches for integer overflows in the resample
- effect.
- o Jimen Ching sent in a fix for multi-channel sound file processing
- using the avg effect.
- o Richards Bannister added patches to clean up prototypes and filter
- private sizes being to small.
- o Jimen Ching adds -d option to specify 64bit data size and changed
- Ulaw/Alaw encoding to default to 8bit data size if not specified.
- o David Singer pointed out that a MS program creates AIFF files
- with an invalid length of 0 in its header. Changed SoX to warn the
- user but continue instead of aborting since SoX can still read
- the file just fine.
- o Bert van Leeuwen added a file handler for Psion record.app used
- for System/Alarms in some Psion devices.
- o Richard Bannister sent in a patch to make writing vorbis files
- work with Vorbis 1.0 libraries.
- o Fixed configure scripts so that they can be ran with the
- --with-oss-dsp, --with-alsa, and --with-sun-audio options.
- Was causing compile time problems. Reported by Raul Coronado.
- o Change Ogg Vorbis support to use VBR encoding to match defaults
- of oggenc based on suggestion from Christian Weisgerber.
- o Prints error message now when a channel value of -1 is given.
- Reported by Pierre Fortin.
- o Fixed bug were memory could be trashed if a input WAV file contained
- a comment. Found by Rhys Chard.
- o Change command line to compile soxmix.o slightly to try and make
- Forte compiler happy.
- o Added support for ALSA 0.9 driver. Jimen Ching
-
-sox-12.17.3
------------
- o Removed check that prevented pan from being invoked when the
- input and output channels were the same.
- o Ciaran Anscomb added a flush to sunaudio driver after changing
- settings. This is because it can start buffering data as soon
- as the device is open and the buffered data can be in a
- wrong format.
- o trim wasn't accounting for # of channels and was generally broken.
- o Jeff Bonggren fixed trim bugs were it was failing when triming
- data that equaled to BUFSIZ. Also, trim now immediately returns
- ST_EOF when its done instead of requiring an extra call that
- returns no data.
- o auto effect wasn't rewinding the file if the file was less then
- 132 bytes. Changed auto parsing of header to be incremental
- instead of reading in a large buffer.
- o William Plant pointed out a bad pointer access in fade effect's
- parsing of options.
- o Ken pointed out a problem were private data was not 8-byte aligned
- and causing crashes on most RISC CPU's. Fixed by going back to
- old style of declaring private data as type "double" which usually
- forces strictest alignment.
- o ima_rw was miscompiling on alpha's because of a header ordering
- problem.
- o Erik de Castro Lopo pointed out that when writing 16-bit VOC files
- the headers did not contain the correct length or encoding type.
- o Seperated st.h into 2 files. st.h for libst users and st_i.h for
- internal use.
- o Added new types used extensively by libst: st_sample_t & st_size_t.
- This allows for more deterministic behavior on 64-bit machines and
- also allows sox to possibly work with much larger file sizes.
- o SoX was some times getting confused and thinking an EOF was an
- error case when reading audio files. Removed unneeded aborts
- when EOF was OK.
- o Silence effect was broken on stereo files. Also, made thresholds
- relative to original bit percision of audio data. When 16-bit audio
- is scaled up to 32-bits, a little bit of noise starts to look like a
- large amplitude of noise. Also, now using RMS values to smooth out
- clicks. RMS rolling window size is 1/10 of sample rate.
- o Changed Floats into a type of encoding instead of a size of audio data.
- o Put a flush at the end of OSS driver so that no old data would be
- left in internal buffers after changing audio format parameters.
- o Fixed problem were play script wasn't installed correctly if you
- build from another directory (pointed out by Mike Castle).
- o Made GSM support internal to libst (no external library required).
- o Change configure script to enable ulaw/alaw lookup tables and GSM
- support by default. Also have Makefile's make use of more configure
- prefix options to allow for customized installs.
- o Reverted ulaw/alaw conversion routines back to Sun's versions.
- o Modified raw file handler to write files in the same generic buffered
- fashion that was added for reading in 12.17.2. Seems to have
- speed up some types of writing.
- o Reading Ogg Vorbis files could get confused of when EOF was reached.
- o Added uninstall rules to Makefile. Added new ststdint.h to define
- *int*_t typedefs.
- o Added internal strcasecmp for OS/2.
- o Added support for swapping "bit" order (MSB becomes LSB) for raw u-law
- and A-law data. Some ISDN equipment prefers it this way. Use -x flag
- or new .la or .lu file extensions.
- o Annonymous patch submitted to fix types and spelling problems in
- various files. Also, updated VOC files to have u-law and A-law
- support as well as able to read in VOC files using a pipe. More
- examples added to soxexam file.
-
-sox-12.17.2
------------
- o Daniel Culbert found and fixed a bug in the polyphase effect
- that occurs on platforms that rand() can return large values.
- The bug resulted in polyphase resampling an audio file to a
- different rate then it said it was.
- o Stan Seibert contributed a handler for Ogg Vorbis files. It
- handles all input formats but can only save using default
- settings.
- o Darrick Servis has made major cleanups in the code in regards
- to error conditions. Helps people using libst.
- o Darrick Servis has added added optional seek functionality sox.
- Several formats have been modified to make use of this.
- o Geoff Kuenning rewrote the average effect into a general-purpose
- parametric mapping from N channels to M channels.
- o Geoff Kuenning added an optional delay-time parameter to the compander
- effect to allow companding to effectively operate based on future
- knowledge.
- o Geoff Kuenning Added support to fade and trim effect for specifying time
- in hh:mm:ss.frac format.
- Fixed a bug that caused integer overflow when large start/stop times
- were used.
- o Geoff Kuenning updated play/rec/soxeffect scripts to handle all effects
- added since 12.17. Spell-checked soxexam.1 file.
- o Jimen Ching updated ALSA configure support to auto-detect 4.x or 5.x API
- and compile correctly under those two. All other versions are unsupported.
- o Merged in the NetBSD package changes into CVS finally.
- o Removed broken support for non-ANSI compilers.
- o Makefile now places the correct path to SoX in the play/rec scripts
- based on configuration script values.
- o Alexander Pevzner provided a fix for OSS driver for sound being
- dropped under heavy CPU loads. Moved GETBLKSIZE operation
- until after setting up the format (SBLive! was modify the block size
- after changing formats).
- o With help from David Blythe, updated OSS drivers to use newer format
- interface. OSS driver will now attempt to detect a valid endian type
- to use with sound card.
- o Carsten Borchardt pointed out a bug in lowp filter. Added new
- nul file handler that reads and writes from/to nothing.
- Also added new synth effect that creates sounds using a simple
- synthesizer. Created a testcd.sh that uses two new features
- to create a test sound CD for testing audio equipment.
- o Ben Last added a new program that uses libst and will merge two
- seperate audio files into a single file with multiple channels.
- This was merged into the standard sox.c file by cbagwell.
- o Andreas Menke fixed some problems with the speed effect and
- how effects were drained. Also improved the usage of printf()'s
- to use stderr.
- o Corrected AU header length value when comments were less than
- 4 bytes.
- o Added support for reading non-standard bit size data from AIFF files.
- o Ignore unmatched MARK/INSTR chunks in AIFF files now instead of quiting.
- o Fixed ALAW encoding bug in .au files as pointed out by Bruce Forsberg.
- o Unified the raw reading functions. Probably slightly faster for
- most datatypes but was done to fix recording from the OSS driver.
- Control-C stopped working somewhere during the 12.17 series.
- o Ford Prefect added a dcshift which can shift the midline amplitude
- towards the true center. This will allow for a greater range
- of volume adjustments without clipping audio data.
- o Heikki Leinonen submitted a silence effect that will trim off
- silence from the beginning of a file. cbagwell made some modifications
- to trim off front and back as well as some other tweaks.
- o Made the "auto" effect the default file handler for input files.
- Also have auto handler now use file extensions if it can't figure
- it out.
-
-sox-12.17.1
------------
- o Andreas Kies fixed a bug were we were not detecting correctly
- if an output file was seekable.
- o Fixed a bug in the mask effect introduced in 12.17. If the libc
- version of rand() returned more then 15-bit values then it would
- trash your data. Reported by Friedhel Mehnert.
- o Added a new fade in/out effect from Ari Moisio.
- o AIFF files now ignore a MARK chunk if the loop type is NoLoop (0).
- o Fixed bug were it was impossible to output ADPCM data in wav files.
- o Fixed bug were rate had to be specified for sphere files (fix from
- Antti Honkela).
- o Added small work around to let compile with cygwin's gcc 95.2
- which also now allows to compile with GSM support under windows.
- o Removed accessing of sound devices in tests for sound support and
- instead just look for needed header files. This allows the sound
- support to be detected even if the device is currently busy or when
- compiled on a box that doesn't have a sound card but the OS supports
- it (which is the enviornment of most distributions creating new
- binaries).
- o Added support to partially handle AIFC files but only uncompressed
- versions. This should allow people to work with raw CD audio data
- on Mac OSX and also gives a basis for adding future support for
- things like ADPCM processing.
- o Added new "earwax" effect from Edward Beingessner. It is meant to
- be used for CD audio played through headphones. It will move the
- sound stage from left/right to in front of you.
- o Trim effect did not compute locations as was documented in the
- man pages. Changed effect so that it computed the time the
- same way that the fade effect does.
-
-sox-12.17
----------
- o Sox can now read and write w98 compatible gsm .wav files,
- if compiled properly with libgsm. Thanks go to Stuart
- Daines <sjd.u-net.com> for the gsm-wav patches.
- This is new, and relatively untested. See -g format option.
- o Sox can now write IMA_ADPCM and ADPCM compressed .wav,
- this is new, and relatively untested. See -i and -a format
- options in manpage.
- o General changes to wav.c for writing additional wav formats.
- Reading wave headers: more consistency checks.
- Writing wave headers: fixes for w98.
- o Speedups to adpcm read routines, new codex versions are
- now in ima_rw.c and adpcm.c.
- o Speedups for raw.c, especially for gcc with glibc.
- o Fixed a segfault problem with ulaw/alaw conversion, where
- an out-of-range index into the tables could occur.
- o More detailed output from the stat effect.
- o Continued rewrite of resample.c, now it is almost as
- fast with floating arithmetic as the old (buggy) version
- was with 16-bit integer arithmetic. The older version
- in sox-12.16 shifted frequencies slightly and was less
- accurate.
- o Extensive rewrite of polyphas.c, should be faster and use
- less memory now. The sox-12.16 polyphase code had some bugs.
- o New effect 'filter' which is a high-quality DSP lowpass/
- highpass/bandpass filter using windowed sinc function
- methods, like polyphase and resample.
- o Jan Paul Schmidt added new low/high/bandpass and bandlimit
- filters to sox. They have much better results then the old
- versions of low/high/bandpass. The new effects are all
- Butterworth filters.
- o New data file type supported, -sl or extension .sl for
- signed 32-bit integers. Some simplification of the raw.c
- source.
- o Some test programs and scripts in the test directory, for
- making gnuplot plots of frequency response, error-levels
- of rate-conversion and filter effects.
- o Removed sbdsp code. All modern unixes are support via OSS,
- ALSA, or sun audio device interfaces.
- o Added AVR handler from Jan Paul Schmidt.
- o SoX now waits until the last possible moment before opening
- the output file. This will allow all input and effect options
- to be parsed for errors and abort before overwriting any file.
- o SoX will no longer write to files that exists. This will keep
- it from deleting files when a user mistakenly types "sox *.wav".
- o Added new compander effect from Nick Bailey. Nice general purpose
- filter.
- o Under Solaris, SoX now checks hardware ability to play stereo/PCM
- and forces output data to match. Sorry, no SunOS support. I don't
- have access to one any more.
- o Fixed array overrun bug in rate effect as pointed out by Ian
- Donaldson.
- 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.
- o Richard Kent fixed a byte alignment problem in aiff comment code.
- o Loring Holden added support to create missing directories on install
- and support for installs from outside the source directory.
- o Fabien COELHO added a pan and volume effect.
- o Fabien COELHO added a speed effect to sox (like speeding up a tape
- machine). Also added pitch which changes pitch without effecting
- duration and stretch which stretch time without effecting pitch.
- o Leigh Smith updated aiff support to use the COMT check when writing
- comments instead of the ANNO. It is the prefered method from Apple
- and newer programs are starting to require it. Also fixed some bugs
- in how we compute the length of various chunks in output files.
- o Changed the default block alignement for IMA ADPCM WAV files to use
- 256 which is what windows programs use. Badly written readers expect
- 256.
- o Matthias Nutt helped add support for specifying multiple effects
- to SoX on the command line.
- o Curt Zirzow added a trim effect to trim off audio data.
- o Updated ALSA driver to support new interface. Jimen Ching
-
-sox-12.16
----------
-
- o Changed raw data functions to perform I/O operations using block reads.
- Should improve speeds greatly, especially when filesize is in megs.
- Got code ready to tweak speed more which also forced me to clean up
- Endian test code.
- o Fixed a bug in .au's handling of G.723. It wasn't using the correct
- number of bits. Added A-law support to .au.
- o Quoted $filename in play/rec scripts so that files with spaces in
- their names can be given.
- o Old OS/2 support didn't work. Replaced with known working EMX
- GCC compatible code.
- o ADPCM WAV files were defaulting to 8-bit outputs and thus losing
- some persision. Now defaults to 16-bit signed uncompressed data.
- o Fixed a couple cross-platform compiler issues.
- o Jimen Ching has added support for "configure" in to SOX. Finally,
- a good solution to cross-platform compiling!
- o Jimen Ching has added native support for the ALSA driver to play
- and record audio from. (jching@flex.com)
- o Minor correction for -r example in manual page.
- o Renamed sox.sh to soxeffect and rewrote. Symbolic links can be made
- from this file to the name of a sox effect. It will then run that
- effect on STDIN and output the results to STDOUT.
- o Fixed up some makefiles and 16-bit support from patches sent by
- Mark Morgan Lloyd (markMLl.in@telemetry.co.uk). Also added some
- nice DOS test bat files from him as well.
- o Cleaned up some more cross-platform compile problems. In the process
- got it working with Turbo C again, kinda. It still locks DOS up at times.
- o Made AIFF handler work with invalid headers that some programs generate.
- Also fix an Endian bug thats been there for quite a long time (when
- ran on Intel machines). Made comment lengths even length to make
- most MacOS programs happy. cbagwell
- o Resample function was updated by Andreas Wilde
- (andreas@eakaw2.et.tu-dresden.de) to fix problem were freqs. were
- off by a factor of 2.
- o Added an effect that swaps stereo channels. cbagwell
- o Combined play and rec scripts to a single program to ease mantaince.
- Also added GNU style long-options (--help). Careful, some options have
- change (but more logical).
- o Fixed a very old silly bug were low/high/bandpass filters would
- add some trash data to the end of the sound file.
- o "avg" effect wouldn't give error message when you tried to average
- x number of channels in to the same number of channels.
- o Fixed core dump when writting AIFF files with no comments.
- (Olaf Pueschel)
-
-sox-12.15
----------
-
- o Juergen Mueller moved Sox forward quite a bit by adding all the
- most commonly known "Guitar Effects". He enhanced echo support,
- added chorus, flanger, and reverb effects. He also wrote a very
- handy CHEAT.eft file for using various effects.
- o Incorporated Yamaha TX-16W sampler file support provided by
- Rob Talley (rob@aii.com) and Mark Lakata (lakata@physics.berkeley.edu).
- o Fixed a small bug in hcom compression, dependent on sign
- extension. Leigh Smith (leigh@psychokiller.dialix.oz.au).
- o sox -h now prints out the file formats and effects supported.
- Leigh Smith and Chris Bagwell.
- o smp transfers comments more completely. Leigh Smith.
- o aiff manages markers and loops correctly and produces more
- verbose output. Leigh Smith.
- o Added polyphase resampler (kb@ece.cmu.edu). This adds a slightly
- different resampling algorithm to the mix.
- o Michael Brown (mjb@pootle.demon.co.uk) sent a patch to stop crashes
- from happening when reading mono MS ADPCM files.
- o Fabrice Bellard has added a less buggy 'rate' conversion. I've left
- the old rate code included but if all goes well this will become
- the new 'rate'. Please test and let me know how it works. Resample
- effect needs to be reworked now.
- o Heiko Eissfeldt: Implemented a simple deemphasis effect for
- certain audio cd samples.
- o Matija Nalis (mnalis@public.srce.hr) sent a patch to fix volume adjustment
- (-v) option of sox.
- o Fixed typo in optimazation flag in unix makefile, as pointed out by
- Manoj Kasichainula (manojk@io.com).
- o Fixed missing ';;' in play script. cbagwell
- o Fixed bug in determining length of IMA and MS ADPCM WAVE files. cbagwell
- o Fixed bug in how stereo effects were drained which fixed the
- "reverse" effect from only saving half of stereo files. cbagwell
- o Can use "-e" without an effect again.
- o Added -g and -a options for new style support of GSM and ADPCM. Added
- error checking to various formats to avoid allowing these types.
-
-sox-12.14
----------
-
- o Bumped major version number up and shortened name. The shorter name
- should help the various distributions using this package.
- o Added support for MS ADPCM and IMA (or DVI) ADPCM for .wav files.
- Thanks to Mark Podlipec's xanim for this code (podlipec@ici.net).
- o Change Lance Norskog's email address to thinman@meer.net. The old
- one was bouncing.
- o Added path string to play and rec strings so that it could be run by
- users without complete paths setup (i.e. Ran by "rc" files during bootup
- or shutdown)
- o Fixed -e option from Richard Guenther
- (richard.guenther@student.uni-tuebingen.de) and fixed a small bug
- in stat.
- o Fixed a bug in the mask effect for ULAW/ALAW files.
- o Fixed a bug in cdr output files that appended trash to end of file.
- o Guenter Geiger (geiger@iem.mhsg.ac.at) made a rather large patch to
- allow sox to work on 64-bit alphas. It was done the easiest meathod
- by changing all long declarations to use a macro that knows to
- make it 32-bits. Want to port to another 64-bit-but-not-alpha
- machine? Grep for "alpha" to see changes. There are most likely
- several bugs left for alphas. Guenter is also supporting this
- package for the Debian distribution.
- o Did some major code cleanups to clear out some warning messages
- during compile. This is to clear up problems I'm finding under
- both alpha and dos. Some warning messages are actually useful
- now (pointing out possible data loss). Hopefully, I didn't
- break anything.
- o Code clean up allows me to finally compile code under Turbo C
- again. Too bad the EXE gets a currupted stack somewhere and locks
- up the system. Anyone want to try it with Borland C for me?
- If you get a working EXE I would like to start distributing a DOS
- package like there used to be.
- o Speaking of cleanups, anyone want to help cleanup the makefiles for
- various platforms? They are quite outdated right now and it is
- very obvious that Sox hasn't been able to compile under all the
- platforms it once did for several releases. Please send in
- the cleaned-up makefile versions along with what programs you
- used to compile it with.
- o There is a known bug in hcom's compress() function. It is allocating
- memory that can't be free'd under some OS's. It causes a core dump.
-
-sox-11gamma-cb3
----------------
-
-This release of sox is mainly a bugfix release. The following things
-have changed:
-
- o Documentation has been updated when it was obviously wrong.
- Much more work could be done. Man pages were updated to
- work correctly on Solaris and add some missing info.
- o Several people sent me patches to fix compiling on Solaris
- as well as fix a few bugs.
- o Change USS driver's name to OSS. Man, does that driver
- like to change names! This could cause problems if you
- have made your own custom play and rec scripts.
- o Updated my email address. Sorry if I haven't responded to
- any emails as I no longer have access to my old address.
- Please use cbagwell@sprynet.com.
- o Fixed unix test scripts so that they worked again.
- o Fixed endian bug in psion .wve code.
- o Replaced outdated voc info file with detailed format info
- inside voc code.
- o Added new sound format, cvsd (Continuously Variable Slope Delta)
- from Thomas Sailer (sailer@ife.ee.ethz.ch).
-
-sox-11gamma-cb2
----------------
-
-This release of sox is based on the latest gamma version released
-plus some patches I've made to support the following new features:
-
-I would like to thank everyone that wrote me about the long
-standing bug in Sox that could DELETE your /dev/* file if the
-program was aborted for reason such as invalid audio file. Special
-thanks for Bryan Franklin for sending in a patch when I was
-to busy to even look for it.
-
-
- o Better play support for 8-bit stereo voc files. New support
- for outputing both 8-bit and 16-bit stereo voc files.
- o Built-in support for playing and recording from Linux /dev/dsp.
- This is a re-write and seperate module from the previous
- support included inside the sbdsp module. Also fixes a buffer
- size bug that showed up when using newer versions of OSS.
- This driver will work with OSS (and older versions called USS, TASD
- and Voxware).
- o Support for audio playing and recording with SunOS /dev/audio.
- o Fixes a bug were /dev/audio or /dev/dsp could be deleted
- when playing an invalid format audio file.
- o Expanded options for play and rec scripts. You can now specify
- sox effects after the filename and hear them in real time.
- Please be sure that an older version of sox is not in your path
- because these script will possibly find it first and
- incorrectly use it.
- o Setting play/record volume still requires an external program.
- If you have one a command line program to do this (such as
- "mixer" for Linux) then you will want to edit the play and rec
- to use this. The current support for it is only in example
- form of how it can be done.
--
⑨