shithub: sox

Download patch

ref: 73269aaec06766e71fb5b5482c9f7d52e5397591
parent: bd04288ab2624487e7f51948ed65132e085bb8b0
author: rrt <rrt>
date: Sun Dec 24 13:39:50 EST 2006

Move TODO to Feature Request tracker.

--- a/TODO
+++ /dev/null
@@ -1,83 +1,0 @@
-Users are encouraged to implement these. Send all patches to
-sox-devel@lists.sourceforge.net, or post them on the patches tracker
-at http://sf.net/projects/sox/.
-
-  o Make "mix" an alias of "avg" since that's closer to what it
-    really is.  For 2->2 mixes, make a 2 option L->L and R->R
-    shortcut.  Similar 4 option for 4->4.
-
-  o In avg effect, going from 1->2 should have a 2 number shortcut
-    so that you don't have to put 100% in each channel.  Similar
-    for 2->4.
-
-  o Modify noiseprof and noisered so that they can read
-    and write from stdin/out.  This would allow to run
-    them in scripts without intermediate files required.
-
-  o Several effects have to process a "window" of data at
-    one time and sox doesn't always pass that amount in.
-    Make some common routines to buffer up a window of data
-    instead of requiring each effect to reimplement this.
-
-  o Add an interface to libst so that applications can query
-    what size/encoding/rate/channels a given format handles.
-    Then applications could modify parameters before an error
-    occurs.  This would allow stripping out override logic
-    in various formats.
-
-  o Effects engine should not have a global "flow" period
-    followed by a global "drain" period.  Each effect should
-    track which it needs to invoke.  Until that's done you
-    won't be able to stack two effects that both make use
-    of drain (ie. can't run the "reverse" effect twice
-    on the same command line and have a good output file).
-
-  o Add MP3 support to WAV handler. Can copy most work from mp3.c.
-
-  o Implement speex (http://www.speex.org).
-  
-  o Modify .dat handler to support stereo data... Probably should remove
-    time offset column since it's not real useful (could be added by
-    a simple post-processor).  Also, should store information in
-    header related to original data so that it can be converted back
-    to similar percision easier.  Another idea is to normalize the
-    data relative to original percision to reduce value ranges
-    (might result in a smaller text file since percision will
-    be smaller).
-
-  o Add command line options that specify a specific endian
-    (as apposed to -x which just reverses it from current
-    machines endian).  This would be useful for cdr.c
-    since some formats like to keep the data in little-endien
-    (CDDA?).
-
-  o Add a FIFO/buffer to audio drivers to prevent losing audio data.
-    Perhaps mpg123 could be used as an example.
-
-  o Lots of effects are using "double" to prevent overflow of
-    st_sample_t math.  With ststdint.h we now have a portable way
-    of detecting uint64_t...  Use that when possible to speed up
-    math (won't have to convert back and forth from int to float).
-
-  o WAV handler is not using word alignment for at least the
-    main data chunk (expect for GSM).
-
-  o Keep sox from using "fail" on errors.  Sox was supposed to be
-    a sound library called "ST" but libraries shouldn't exit a program,
-    they should return error codes for users to handle.  Initial support
-    for this has been added.  Needs to be completed.
-
-  o SJB: [11/25/99] (Re. resample effect): Note that upsampling
-    usually doesn't require interpolation, therefore is faster and
-    more accurate than downsampling. Downsampling by an integer factor
-    is also simple, since it just involves decimation if the input is
-    already lowpass-filtered to the output Nyquist freqency. Get the
-    idea? :) Also, the original algorithm has apparently been updated,
-    and might usefully be updated in SoX too.
-
-  o WAV handler needs to handle (ignore if nothing else) non-audio
-    chunks (except LIST which is already handled), especially at the
-    end of the file.
-
-  o Effects option-parsers should fail if extraneous characters or arguments
-    are present. e.g. vol 3mW, speed 2 3, etc. should all fail.