ref: 804b3a0d89a14956f6c39db54b5b35b3e5d6d528
parent: f3d989542578054a4914bcf373fd6df5aa4094d2
author: rrt <rrt>
date: Mon May 28 06:15:54 EDT 2007
Mention LADSPA and other fixes to text files. Some comment fixes. Small LADSPA fix.
--- a/AUTHORS
+++ b/AUTHORS
@@ -6,8 +6,22 @@
Creator:
Lance Norskog
-Mantainer:
+Mantainers:
Chris Bagwell cbagwell@users.sourceforge.net
+ Reuben Thomas rrt@sc3d.org
+ Build system makeover, libsndfile and ffmpeg sound
+ format support, libao playback, Secret Rabbit Code
+ resampling; many fixes and much cleanup.
+ Rob Sykes robs@users.sourceforge.net
+ Formats: M3U, PLS, FLAC, AMR, 24bit support for popular
+ formats.
+ Effects: pad, bass, treble, new flanger, soft-knee companding,
+ speed via resampling, filters makeover inc. gnuplot & octave
+ plotting.
+ Others: open input files via URL, file merging, play
+ multiple files with mixed format types, play with replay-gain,
+ building with cmake, much manual improvement and expansion,
+ various fixes, enhancements and clean-ups.
Contributors:
Juergen Mueller jmueller@uia.ua.ac.be
@@ -84,17 +98,3 @@
patch collection and maintance.
Matthias Nutt
Multiple effects from command line.
- Reuben Thomas rrt@sc3d.org
- Build system makeover, libsndfile and ffmpeg sound
- format support, libao playback, Secret Rabbit Code
- resampling; many fixes and much cleanup.
- Rob Sykes robs@users.sourceforge.net
- Formats: M3U, PLS, FLAC, AMR, 24bit support for popular
- formats.
- Effects: pad, bass, treble, new flanger, soft-knee companding,
- speed via resampling, filters makeover inc. gnuplot & octave
- plotting.
- Others: open input files via URL, file merging, play
- multiple files with mixed format types, play with replay-gain,
- much manual improvement and expansion, various fixes,
- enhancements and clean-ups.
--- a/ChangeLog
+++ b/ChangeLog
@@ -9,18 +9,21 @@
File formats:
- o Added support for ADPCM-encoded PRC files, based on Danny Smith's
- rec2wav and sndcmp.
- o Added AMR-NB [FR# 728875] & AMR-WB formats (with external libs). (robs)
+ o Added ffmpeg support. (Reuben Thomas)
+ o FLAC: added seekable decoding; added seek-table generation. (robs)
o Added M3U & PLS playlist formats [FR# 1667341] (Note: SHOUTcast PLS
is only partially supported). (robs)
+ o Made format readers and writers into individual modules for easier
+ distribution of differently-licensed code. (Reuben Thomas)
o Added libao support. (Reuben Thomas)
- o Added read-only ffmpeg support. (Reuben Thomas)
+ o Added support for ADPCM-encoded PRC files, based on Danny Smith's
+ rec2wav and sndcmp. (Reuben Thomas)
+ o Added AMR-NB [FR# 728875] & AMR-WB formats (with external libs). (robs)
o Added LPC-10 support. (Reuben Thomas)
- o FLAC: added seekable decoding; added seek-table generation. (robs)
Effects:
+ o Use LADSPA effects (one input, one output). (Reuben Thomas)
o --octave option changed to --plot; can now also use gnuplot to
plot effect transfer function. (robs)
o Added soft-knee companding. (robs)
@@ -55,9 +58,11 @@
Internal improvements:
o Renamed libst to libsox for name recongition and to avoid
- duplications with other existing libst libraries. (Reuben Thomas)
+ duplications with other existing libst libraries. (Reuben Thomas)
+ o Moved effects to libsfx. (Reuben Thomas)
o Got rid of several hundred compiler warnings. (robs, Reuben Thomas)
o Added basic performance testing of I/O. (Reuben Thomas)
+ o Added cmake build files for Win32. (robs)
sox-13.0.0
----------
@@ -68,7 +73,7 @@
(Octave 2.0/2.1), .pvf, .sds, .sd2 and .xi file formats via libsndfile.
If available, libsndfile can also be used to handle all the other file
formats it understands. (Reuben Thomas)
- o Add FLAC support (robs@users.sf.net)
+ o Add FLAC support (robs)
o Support Maxis's XA format. (Dwayne C. Litzenberger)
o Add support for 24-bit PCM raw, wav (WAVE_FORMAT_EXTENSIBLE) [FR# 801015],
au, aiff, & flac files. (robs)
@@ -75,7 +80,7 @@
o Add AIFF-C output support. (shashimoto)
o New .ima file format for raw IMA ADPCM. (robs)
o Allow the rate and number of channels of .au files to be overridden
- by command-line arguments. (robs@users.sf.net)
+ by command-line arguments. (robs)
o Add seek support for GSM data in WAV files. Rafal Maszkowski
o Allow encoding quality to be specified (FLAC & Ogg, but not
MP3 yet). (robs)
@@ -176,7 +181,7 @@
Internal improvements:
- o More and better self-tests. (robs@users.sf.net)
+ o More and better self-tests. (robs)
o Build system overhaul to use the full set of GNU autotools.
(Reuben Thomas)
o Add new getopt1.c to win32 project file.
--- a/README
+++ b/README
@@ -111,6 +111,8 @@
o Noise elimination using frequency profiling
o Resample using libsamplerate (aka Secret Rabbit code, optional
external library)
+ o Apply LADSPA (Linux Audio Developer's Simple Plugin API) effects
+ such as cmt (Computer Music Toolkit)
Unless you're using a pre-compiled binary version, you will need to
compile SoX as described in the INSTALL file.
--- a/src/ladspa.c
+++ b/src/ladspa.c
@@ -150,7 +150,8 @@
}
}
- /* FIXME: allow use of source and sink plugins */
+ /* FIXME: allow use of source and sink plugins; needs a design
+ change to allow an effect to be a source or sink */
if (l_st->input_port == ULONG_MAX) {
sox_fail("no input port");
return SOX_EOF;
@@ -191,7 +192,10 @@
ladspa_t l_st = (ladspa_t)effp->priv;
LADSPA_Data *buf = xmalloc(sizeof(LADSPA_Data) * *isamp);
sox_sample_t i;
+ sox_size_t len = min(*isamp, *osamp);
+ *osamp = *isamp = len;
+
/* Copy the input; FIXME: Assume LADSPA_Data == float! */
for (i = 0; i < *isamp; i++)
buf[i] = SOX_SAMPLE_TO_FLOAT_32BIT(ibuf[i], effp->clips);
@@ -204,7 +208,6 @@
l_st->desc->run(l_st->handle, *isamp);
/* Copy the output; FIXME: Assume LADSPA_Data == float! */
- *osamp = *isamp;
for (i = 0; i < *osamp; i++)
obuf[i] = SOX_FLOAT_32BIT_TO_SAMPLE(buf[i], effp->clips);
--- a/src/noiseprof.c
+++ b/src/noiseprof.c
@@ -118,6 +118,7 @@
int ncopy = 0;
sox_size_t i;
+ /* FIXME: Make this non-fatal */
assert(effp->ininfo.channels == effp->outinfo.channels);
/* How many samples per track to analyze? */
--- a/src/noisered.c
+++ b/src/noisered.c
@@ -269,6 +269,7 @@
int oldbuf = data->bufdata;
sox_size_t i;
+ /* FIXME: make this non-fatal */
assert(effp->ininfo.channels == effp->outinfo.channels);
if (whole_window)
--- a/src/pitch.c
+++ b/src/pitch.c
@@ -453,7 +453,7 @@
oindex = 0;
/* warning:
- because of the asynchroneous nature of buffering,
+ because of the asynchronous nature of buffering,
the output index can reach the buffer limits before full consumption.
I put the input index just in case.
If the code is correct, eithier len or iindex is redundant.
--- a/src/silence.c
+++ b/src/silence.c
@@ -10,7 +10,7 @@
* when it sees a specified count of samples below a given threshold
* (all channels).
* It may also be used to delete samples anywhere in a sound file.
- * Theshold's can be given as either a percentage or in decibels.
+ * Thesholds can be given as either a percentage or in decibels.
*/