OSDN Git Service

[playmidi] Fix buffer overflow when more than 32 voices get selected
[timidity41/timidity41.git] / NEWS
diff --git a/NEWS b/NEWS
index 38d5e03..1555033 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,302 @@
-9/27, 1999
+08/29, 2018
+    * Version 2.15.0 released.
+    * Add support for segment play option (-G, --segment) with a great
+      contribution by Yotam Medini <yotam.medini@gmail.com>.
+    * Add metronome indicator in dumb interface trace mode.
+    * Let libao backend set ao options via TIMIDITY_AO_OPTIONS
+      environment variable.
+    * Fix for CVE-2009-0179, CVE-2009-3996, CVE-2010-2546 and
+      CVE-2010-2971.
+    * Fix for CVE-2017-11546.
+    * Support for Tcl/Tk 8.6.
+    * Improve Windows MIDI driver.
+    * ...and many other bug fixes.
+
+06/29, 2012
+    * Version 2.14.0 released.
+    * Add --reverb option for Freeverb parameter.
+    * Add --preserve-silence option.
+    * Add a "trysource" config file directive, which allows to try and
+      source other config files, while continuing without error if the
+      specified file is missing.
+    * Support for GM2 Master Fine/Coarse Tuning, GS Master Tune and XG
+      Master Tuning (4C not 27) SysEx.
+    * Allow Device Numbers other than 0x10 for XG SYSTEM ON SYSEX
+      events.
+    * Fix multiple vulnerabilities found in GNU gzip also apply to lha,
+      namely: CVE-2006-4335, CVE-2006-4337 and CVE-2006-4338.
+    * Support for lzma decompression.
+    * Support for ipv6.
+    * Support for libpng 1.5 and newer.
+    * Support for Tcl/Tk 8.5.
+    * Make compatible with xaw3d v1.5, style changes.
+    * Various improvements in XAW interface (see README.xaw).
+    * Support for Windows Named Pipe interface.
+    * ...and many other bug fixes.
+
+10/04, 2004
+    * Version 2.13.2 released.
+      This is a bug fix release that fixes the compile error on Win32
+      platform.  All other platforms aren't affected to this, so you
+      don't have to update if you are not compiling TiMidity++ on
+      Windows.
+
+09/29, 2004
+    * Version 2.13.1 released.
+    * Newly supported output formats
+          * libao
+          * FLAC
+          * Speex
+    * config file
+          * new syntax ${variable} : they are replaced with the
+            specific string before tokenizing. ${basedir} is the only
+            implemented one, which represents the base directory of
+            the cfg file being parsed.
+    * Windows specific
+          * support for MP3 GOGO output in CUI mode
+          * support for Portaudio DLL
+          * support for FLAC/OggFLAC DLL
+    * interfaces
+          * GTK+2 support
+          * new app-defaults for XAW interface.
+
+03/29, 2004
+    * Verison 2.13.0 released.
+    * Newly supported platforms
+          * Mac OS X native
+          * ALSA 0.9 and later
+          * Ogg Vorbis RC3 and later
+          * aRts
+          * JACK
+          * Windows Synthesizer mode (TWSYMTH)
+          * PortAudio
+          * PortMIDI Synthesizer mode
+    * Newly supported input formats
+          * MFi (Melody format for i-Mode)
+          * RMI
+    * Support for Tcl/Tk 8.3/8.4
+    * Temperament control
+          * Trial Pure intonation playing (-Zpure)
+          * Support for Temperament Tonality Control Tuning (MTS)
+          * Support for Temperament Type Control Tuning (MTS)
+          * Support for User-defined Temperament Entry (MTS)
+          * Channel mute by temperament type
+    * Not pseudo reverb engine (Schroeder's & Freeverb)
+    * Plate reverberator
+    * Modulation envelope support
+    * voice-by-voice LPF (Chamberlin & Moog VCF)
+    * Insertion/Varidation effect support
+          * Distortion
+          * Overdrive
+          * OD1 / OD2
+          * HEXA-CHORUS
+          * Lo-Fi
+          * Stereo-EQ
+    * Support for transpose
+    * SoundFont
+          * Support for stereo samples
+          * Support for SF2 scale tuning
+          * Support for sample link
+    * Parameter Numbers
+          * NRPN drum pitch coarse & fine
+          * NRPN drum instrument tva level
+          * NRPN Vibrato Rate & Vibrato Depth
+          * RPN tuning program select
+          * GM2 RPN modulation range
+    * Newly supported system exclusives
+          * GS SysEx Pitch Offset Fine
+          * GS SysEx tone map
+          * GS SysEx Reverb Level
+          * GS SysEx Reverb Time
+          * GS SysEx Note Off
+          * GS SysEx Velocity Sense Depth/Offset
+          * GS SysEx TONE MAP-0 NUMBER
+          * GS/XG SysEx Velocity Limit and Note Limit
+          * XG SysEx reverb/chorus types
+          * XG SysEx Drum Setup
+          * XG Dry Level related SysEx
+          * GM2 SysEx system ON
+          * Support for Checksum calculation of GS SysEx
+    * GM2 support
+          * GM2 volume curve
+          * GM2 pan table
+          * GM2 SysEx Bulk Tuning Dump (MTS)
+          * GM2 SysEx Single Note Tuning Change (MTS)
+          * Other MIDI Tuning Standard related SysEx (see above)
+    * Support for channel layer (GS - Rx. Channel / XG - Rcv Channel)
+    * Support for XG Multi EQ and Part EQ
+    * Resampling engine
+          * modified Gauss resample
+          * Newton polynomials
+    * Noise shaper for 16bit output
+    * Automatic volume compensation
+    * User control for volume curve
+          * volume curve's default also changed
+    * Realtime channel mute support
+    * Non-linear panning
+    * Support ME_TIMESIG/ME_KEYSIG for RCP/R36/G18/G36 MIDI data
+    * Support for RCP tempo gradation
+    * Support for WAV and AIFF files as sample data
+    * Support NeoWrd
+    * Command-line options
+          * Support for getopt_long()
+          * too many changes. refer timidity(1)
+    * Config file
+          * path name to be quotable with ""
+          * New options
+                * note=
+                * pan=
+                * strip=tail
+                * amp
+                * fc=
+                * q=
+                * (trem|mod)(pitch|fc)=
+                * fc(keyf|velf)=
+                * qvelf=
+                * scl(note|tune)=
+                * ADSR-type options
+          * New mappings for map command
+                * gm2[drum]
+                * sc8850[drum]
+          * New extension commands
+                * #extension copymap
+                * #extension legato
+                * #extension level
+                * #extension playnote
+                * #extension (reverb|chorus|delay)send
+                * #extension damper
+                * #extension rnddelay
+          * New command
+                * drumset
+    * Project files for VC6 and VC7 are included
+
+1/18, 2002
+    * Version 2.11.3 released.
+    * New config file option "tune="
+
+01/12, 2002
+    * Version 2.11.2 released.
+
+12/29, 2001
+    * Version 2.11.1 released.
+
+12/27, 2001
+    * Version 2.11.0 released.
+    * Configuration menu of Windows GUI was changed.
+    * Supported vorbis for Windows GUI version.
+    * Supported gogo for Windows GUI version.
+    * (ncursese interface) Chaged from 3 to 4 digits in audio queue monitor.
+    * (Sun audio): Enabled specify audio device file with AUDIODEV environment.
+    * Updates Win32GUI version.
+    * Improved GS SysEx
+    * Added attack/release/decay-time(CC/NRPN tone/NRPN dram)
+    * Added drum level
+    * Added CC#94 pseudo delay (like chorus method)
+    * Adjusted reverb level
+    * Added resonance filter
+    * Modified enverope attack
+    * Adjusted velocity
+    * Supported user drumset (SC-88)
+    * Added some GS SysEx'es.
+    * Upgrade develop environment:
+        automake 1.5 +  autoconf 2.5x + libtool 1.4.x
+    * Vorbis 1.0 support
+    * MOD to MIDI conversion.
+    * -EFchorus=2 is default.
+    * Support RIFF MIDI.
+
+03/18, 2001
+    * Version 2.10.4 released.
+
+03/10, 2001
+    * Version 2.10.3 released.
+
+11/02, 2000
+    * Version 2.10.2 released.
+
+10/18, 2000
+    * Version 2.10.1 released.
+
+08/09, 2000
+    * Version 2.10.0 released.
+    * Enable to write each separated wav file if `-o'
+        command line option is omitted.
+        The output filename is automatically generated from the input MIDI
+        filename.  The file extention is changed to ".wav".
+    * configure: Added new options.
+        --with-includes=DIRS
+                Specify include directories (colon separated)
+        --with-libraries=DIRS
+                Specify library directories (colon separated)
+    * Ogg Vorbis output.
+    * ALSA MIDI sequencer client.
+
+07/05, 2000
+    * Version 2.9.5 released.
+    * Upgrade Windows version.
+
+05/24, 2000
+    * Version 2.9.4 released.
+    * Support ALSA 0.6
+
+05/08, 2000
+    * Version 2.9.3 released.
+    * Enable drum bends.  This fix also enables drum chorus, mod-wheel,
+      portament, and other drum bend controls.
+
+04/10, 2000
+    * Version 2.9.2 released.
+
+03/21, 2000
+    * Version 2.9.1 released.
+    * New command line option -T n:
+        Adjust tempo to n%; 120=play MOD files with an NTSC Amiga's timing.
+
+02/27, 2000
+    * Version 2.9.0 released.
+    * Support full module midi files.
+
+02/07, 2000
+    * Version 2.8.2 released.
+    * Support ALSA 0.5
+
+11/29, 1999
+    * Version 2.8.1 released.
+
+11/24, 1999
+    * Version 2.8.0 released.
+    * In GTK, added support for printing the lyrics from .kar files
+      and also make the text area clear between files.
+    * New command line option: -M <name>
+        -M auto: Use *.mid.wav or *.mid.aiff instread of MIDI to WAVE
+                 convertion.  The PCM file format must be 16bit sample and
+                 the sampling rate equals as timidity's rate.
+        -M none: Disable this feature (default)
+        -M <filename>: Use the specified file.
+    * In GTK interface, added support for printing the lyrics from .kar files
+      and also make the text area clear between files.
+    * New configure option to choose wave interpolation in resampling.
+        --with-spline=linear    Linear interpolation (default)
+        --with-spline=cubic     Cubic interpolation
+        --with-spline=lagrange  Lagrange interpolation
+        --with-spline=no        No interplation
+    * New command line option `-m N' to specify sustain time (msec).
+        -m 1    Effectively behaves as if all sustains are ignored,
+                volume ramping is the same as normal stage 3.
+        -m 0    Disable sustain ramping, causes constant volume sustains.
+                (default)
+        -m 3000 A note at full volume will decay for 3 seconds once it begins
+                to be sustained (assuming the regular stage 3 rate would not
+                cause it to decay even longer). Softer notes will of course
+                die sooner.
+
+10/12, 1999
+    * Version 2.7.0 released.
+    * adjust_panning_immediately (-F) is true by default.
+    * GS Sysex for bank+program change.
+    * Bug fix.
+
+09/27, 1999
     * Version 2.6.1 released.
     * Support for XG Multi Part Data parameter change SysEx events.
     * Added new Channel structure member `int pan_random' for random pan flag.
       because the size of `Channel' structure is changed.
     * Bug fix.
 
-9/21, 1999
+09/21, 1999
     * Version 2.6.0 released.
     * Some configurations and installations are changed.
     * -EFchorus=2 for the surround sound instead of detuned chorus.
     * Bug fix.
 
-8/27, 1999
+08/27, 1999
     * Version 2.5.1 released.
     * Bug fix.
 
-8/26, 1999
+08/26, 1999
     * Version 2.5.0 released.
     * Upgrade Windows GUI.
     * MIMPI WRD for TrueColor X Window works more stable.
     * Less CPU% in trace playing.
     * Bug fix.
 
-8/11, 1999
+08/11, 1999
     * Version 2.4.1 released.
     * Bug fix.
 
-8/9, 1999
+08/09, 1999
     * Version 2.4.0 released.
     * Make archive library (libarc) code more simple.
-    * On linux, fixed probrem of audio queue analysing.
+    * On linux, fixed problem of audio queue analysing.
 
-8/1, 1999
+08/01, 1999
     * Version 2.3.0 released.
     * Make Windows GUI code elegant.
     * Support MIDI to WAVE converter in Windows GUI.
 
-7/26, 1999
+07/26, 1999
     * New feature: Auto polyphony reduction.
 
-7/19, 1999
+07/19, 1999
     * Version 2.2.0 released.
     * Enabled to specify the software buffer size with `-q' option
     * Enabled build UMP on FreeBSD-ELF environment.
 
-7/9, 1999
+07/09, 1999
     * Version 2.1.1 released.
 
-6/10, 1999
+06/10, 1999
     * Version 2.1.0 released.
     * Enable a multi-point interpolation in resampling.
       Cubic spline curve and lagrange interpolation is supported.
     * Support linux axp
     * Load frequency table with -Z <file> option.
 
-4/28, 1999
+04/28, 1999
     * Version 2.0.2 released.
 
-4/25, 1999
+04/25, 1999
     * Version 2.0.1 released.
 
-4/17, 1999
-Major changes in release 2.0.0:
-
-* Auto voice reduction
-  If there is no enough machine power to play the MIDI in realtime,
-  TiMidity automatically reduces the voice.
-* Audio buffering
-  TiMidity has internal audio buffer.  TiMidity doesn't start to play until
-  this buffer is filled.
-* Support Windows GUI.
-* Support Sherry WRD.
-* Support NAS (Network Audio System) output.
-* Support EsounD output.
-* Enable to play the stream MIDI in realtime.  The stream format is same
-  as OSS /dev/sequencer stream.  See the protocol in interface/server_c.c
-* Enable to assign patch from part of soundfont.
-* Lower CPU load average in trace playing.
-  v1 is implemented with busy-wait-method to synchronize audio and
-  interface, but v2 is not.
-* Reverb and chorus effect is enabled by default.  You can disable their
-  controls with command line option.
-* DEFAULT_VOICES is now 64.  You can change this value to modify
-  `timidity.h'.
-* Modified reverb optimaize implementation. (The algorithm is not changed)
-* Add sun_a.c which is modified from the original of TiMidity.  And then
-  remove audriv_sun.c because it is not used in this version.
-* Implement function to change the audio sample rate for 'n' interface.
-* `altassign' of drumset 0 is used by default.
-* Add -EF option for effects.
-  Obsolete -b, -n, -EC, -Ec, -ER, -Er, and -r options.
-  Use -EFdelay=?  instead of -b?,
-    -EFns=?     instead of -n?,
-    -EFchorus=0 instead of -EC,
-    -EFchorus=1 instead of -Ec,
-    -EFreverb=0 instead of -ER,
-    -EFreverb=1 instead of -Er,
-    -EFreverb=2 instead of -r.
-* Portamento control time is completely adjusted.
-* Expanded playlist files (.m3u, .pls, and .asx).
-* s/win32/w32/gi
-
-* 3/23, 1999
+04/17, 1999
+    Major changes in release 2.0.0:
+    * Auto voice reduction
+      If there is no enough machine power to play the MIDI in realtime,
+      TiMidity automatically reduces the voice.
+    * Audio buffering
+      TiMidity has internal audio buffer.  TiMidity doesn't start to play
+      until this buffer is filled.
+    * Support Windows GUI.
+    * Support Sherry WRD.
+    * Support NAS (Network Audio System) output.
+    * Support EsounD output.
+    * Enable to play the stream MIDI in realtime.  The stream format is same
+      as OSS /dev/sequencer stream.  See the protocol in interface/server_c.c
+    * Enable to assign patch from part of soundfont.
+    * Lower CPU load average in trace playing.
+      v1 is implemented with busy-wait-method to synchronize audio and
+      interface, but v2 is not.
+    * Reverb and chorus effect is enabled by default.  You can disable their
+      controls with command line option.
+    * DEFAULT_VOICES is now 64.  You can change this value to modify
+      `timidity.h'.
+    * Modified reverb optimaize implementation. (The algorithm is not changed)
+    * Add sun_a.c which is modified from the original of TiMidity.  And then
+      remove audriv_sun.c because it is not used in this version.
+    * Implement function to change the audio sample rate for 'n' interface.
+    * `altassign' of drumset 0 is used by default.
+    * Add -EF option for effects.
+      Obsolete -b, -n, -EC, -Ec, -ER, -Er, and -r options.
+      Use -EFdelay=?  instead of -b?,
+        -EFns=?     instead of -n?,
+        -EFchorus=0 instead of -EC,
+        -EFchorus=1 instead of -Ec,
+        -EFreverb=0 instead of -ER,
+        -EFreverb=1 instead of -Er,
+        -EFreverb=2 instead of -r.
+    * Portamento control time is completely adjusted.
+    * Expanded playlist files (.m3u, .pls, and .asx).
+    * s/win32/w32/gi
+
+* 03/23, 1999
     Released TiMidity++ v1.3.6.
     * In XAW interface, added new user interfaces.
 
-* 3/8, 1999
+* 03/08, 1999
     Released TiMidity++ v1.3.5.
     * In XAW interface, added new user interfaces.
 
-* 3/1, 1999
+* 03/01, 1999
     Released TiMidity++ v1.3.4.
-    * Fixed some bugs and probrems.
+    * Fixed some bugs and problems.
     * Added a new WM-icon for GTK.
 
-* 2/24, 1999
+* 02/24, 1999
     Released TiMidity++ v1.3.3.
     * Improve XAW interface.
-    * Fixed some bugs and probrems.
+    * Fixed some bugs and problems.
 
-* 2/10, 1999
+* 02/10, 1999
     Released TiMidity++ v1.3.2.
-    * Fixed some bugs and probrems.
+    * Fixed some bugs and problems.
     * Changed icons of motif interface.
     * Changed sorting algorithm for xaw and tcktl interface.
 
-* 2/5, 1999
+* 02/05, 1999
     Released TiMidity++ v1.3.1.
     * Fixed some bugs.
     * Enabled compile with gcc from MINGW32.
 
-* 2/3, 1999
+* 02/03, 1999
     Released TiMidity++ v1.3.0.
     New features and major change from v1.2.x:
     * Enabled to configure & compile on cygnus.
@@ -146,13 +443,13 @@ Major changes in release 2.0.0:
     * Improved reverb sounds.
     * Fixed MIME/Multipart bug.
 
-* 1/25, 1999
+* 01/25, 1999
     Released TiMidity++ v1.2.1.
     Added missing files.
-    Fixed some configuration probrems.
+    Fixed some configuration problems.
     Added --enable-dynamic configure option.
 
-* 1/21, 1999
+* 01/21, 1999
     Released TiMidity++ v1.2.0.
     New features and major change from v1.1.x:
     * XAW interface:
@@ -166,22 +463,22 @@ Major changes in release 2.0.0:
     * Added interface.h to define IA_* macro for TiMidity interface.  This
       file is generated automatically by configure.
 
-* 1/18, 1999
+* 01/18, 1999
     Released TiMidity++ v1.1.1.
-    v1.1.0 had configuration probrems, so v1.1.1 was released immediately.
+    v1.1.0 had configuration problems, so v1.1.1 was released immediately.
     Fixed some configure bugs.
     Modified that xaw interface is enable to run without any midi files.
 
-* 1/18, 1999
+* 01/18, 1999
     Released TiMidity++ v1.1.0.
     Support OffiX file drag & drop interface for xaw.
     Support UMP configuration.
 
-* 1/14, 1999
+* 01/14, 1999
     Released TiMidity++ v1.0.1.
     Modfied for OffiX file drag & drop interface for xaw.  If you want
     build this, define OFFIX in interface/xaw.h and link libDnd.
 
-* 1/6, 1999
+* 01/06, 1999
     Released TiMidity++ v1.0.0.
     See `ChangeLog' for major changes from the original of TiMidity 0.2i