SoX 14.6.0

The SoX_ng project imports, compares and refines bug fixes and new work from the 50-odd software distributions that package SoX and from the plethora of forks on github and elsewhere and makes regular releases with a six-monthly cadence for each of the micro (bug fixes) and minor (new features) releases

Tags
License GNU GPL
State stable

Recent Releases

14.6.018 Jun 2025 20:37 minor feature: New features: o Read NSP format files o Read MSP2K (Akai sampler) format files o Read and write AIFC a-law and u-law encodings o Copy AIFF's MARK and INST chunks more often o Copy AIFC's MARK and INST chunks o Read and write DSF format and read DFF and WSD formats o Add the DSD-related "dop" and "sdm" effects o Add reading of Ogg FLAC files (with ffmpeg) o SDS format is now autodetected o MP3 with CRC protection and MP2 formats are now autodetected o AIFF format now supports ID3 tags o The ID3 "TCOM" (Composer) tag is now supported o Add "softvol" effect, a software gain that avoids clipping and maybe rises o Make the 'v' and 'V' keys prefer to adjust softvol if it is active o Add "dolbyb" effect to decode and encode Dolby B noise reduction o synth: Add "vdelay" combine method to phase-modulate by the synth wave o Remove the limit on the number of echo/echos stages (was 7) o Remove the limit on the number of channels that phaser can handle (was 4) o Raise the limit on the number of chorus stages from 7 to 256 o Remove unnecessary limits on arguments to echo,echos,chorus,phaser,flanger o wget, wget2 and curl are sought at runtime instead of at build time and ./configure --with-curl now just makes it prefer curl to wget. o Make "echos" run 20 faster o Make --multi-threaded the default o Error messages have been harmonized. The best was sox_ng WARN chorus: chorus: warning gain-out can cause saturation o When curl or wget fail to fetch a URL, decode the exit status to a message o Don't spew the usage pages when there are invalid options o Add flow diagrams to --help-effect chorus/compand/earwax/echo/echos/phaser o Make --with-ffmpeg the default configuration Bug fixes: o The "stats" effect's Bit-depth values have been revised to reflect what Bit-depth means and handle corner cases like -32768 o Revise all effects' usage messages to the same format and more helpful o "echos" and "chorus" have never worked but now do what they say o "bend"'s logarithmic frequency
14.5.0.314 Jan 2025 18:45 minor bugfix: : o Make reading from ffmpeg work on Unix too. Popen("rb") returns NULL with glibc (!)
14.5.0.206 Jan 2025 15:45 minor feature: Bug fixes: o Make reading from ffmpeg work by popen()ing "rb"
14.5.0,205 Jan 2025 10:59 minor feature: Bug fixes: o Make reading from ffmpeg work by popen()ing "rb"
14.5.007 Dec 2024 12:10 minor feature: New features: o Add effect speexdsp with automatic gain control and noise reduction o Auto-detect MP3 files o If ./configured --with-ffmpeg and ffmpeg is installed, autoread formats: 3g2, 3gp, aac, ac3, adts, adx, ape, apm, aptx, argo_asf, asf, ast, avi, dfpwm, dts, dvd, eac3, f4v, flv, gxf, ism, kvag, m4a, m4v, mkv, mlp, mp4, mpeg, mpegts, mxf, nut, oga (Ogg with FLAC data), ra, rm, rso, sbc, smjpeg, spdif, speex, svcd, tta, vag, vcd, vob, webm, wma, wsaud, wtv and yet more with -t ffmpeg o Add "stat -a" to give the average power spectrum o Add "spectrogram -n" flag to normalize its brightness o Add "spectrogram -L" flag to give a logarithmic frequency axis o Add "spectrogram -R" flag to specify the frequency range o Raise spectrogram's height limit from 8193 to 200000 pixels o Lower the minimum speed of the flanger effect from 0.1 to 0.01 Hz o Make combine effects work when there's a single file o riaa: Add 192kHz sample rate o sphere format: Support ALAW encoding o SD2 format: Support resource forks o ID3 tags: Support unicode when writing o WAV files: Read when the number of valid bits is less that the sample size o Use posix_fadvise to increase readahead and double its speed o Use FFTW to make non-2 n-size spectrograms a hundred times faster o Resize Linux pipe buffers to make multi-threaded effects 10-80 faster o Reduce sox -t pulseaudio -- input- buffer latency from up to 2 secs to low o Enable building to fetch URLs with curl instead of wget o Be able to read files that are still being written by another process o Make "make check" run the regression test suite o Drop sox_version_info_t's "time" element to get reproducible builds o Remove the undocumented and useless "divide" effect o Enhance ./configure --enable-stack-protector with =strong and =all and, with no --(en dis)able-stack-protector option, pick the best available and 10 more bug fixes.
14.4.302 Sep 2024 22:38 major bugfix: New features: o There is a new regression test suite, primarily against the CVEs Bug fixes: o For CVE-2017-11332, CVE-2017-11333, CVE-2017-11358, CVE-2017-11359, CVE-2017-15370, CVE-2017-15371, CVE-2017-15372, CVE-2017-15642, CVE-2017-18189, CVE-2019-1010004, CVE-2019-13590, CVE-2019-8354, CVE-2019-8355, CVE-2019-8356, CVE-2019-8357, CVE-2021-23159, CVE-2021-23172, CVE-2021-23210, CVE-2021-33844, CVE-2021-3643, CVE-2021-40426, CVE-2022-31650, CVE-2022-31651, CVE-2023-26590, CVE-2023-32627, CVE-2023-34318, CVE-2023-34432, o spectrogram segfault when width exceeds number of samples o segmentation fault in rate.c o floating point exception in startwrite() o wavpack check errors o writing hcom files on bigendian systems O Fixes for memory leaks and a double free()s o It now compiles under C99 and on AIX o Support for uClibc and builds with other non-glibc C libraries o Various build system fixes from the software distributions j o Spelling errors are fixed o It now builds on AIX, FreeBSD, OpenBSD and Solaris o Almost all compiler warnings are fixed Copyright: o Uncopyrighted files have been attributed o Copyrighted files with no license now have licences o Multiple copyright notices in single files have been harmonized o The lpc10 module was of dubious copyright and is now 3-clause BSD o The libgsm module was missing its copyright notice o There was an erroneous address for the FSF o The copyright of opus.c is GPLv2-only because it's based on oggenc.c o Therefore the overall copyright of sox_ng and libsox_ng is GPLv2