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.
     * 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.
 
       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.
 
     * 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.
 
     * 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.
     * Version 2.5.0 released.
     * Upgrade Windows GUI.
     * MIMPI WRD for TrueColor X Window works more stable.
     * Less CPU% in trace playing.
     * Bug fix.
 
     * Less CPU% in trace playing.
     * Bug fix.
 
-8/11, 1999
+08/11, 1999
     * Version 2.4.1 released.
     * Bug fix.
 
     * 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.
     * 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.
 
     * 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.
 
     * 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.
 
     * 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.
 
     * 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.
 
     * 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.
 
     * Version 2.0.2 released.
 
-4/25, 1999
+04/25, 1999
     * Version 2.0.1 released.
 
     * 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.
 
     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.
 
     Released TiMidity++ v1.3.5.
     * In XAW interface, added new user interfaces.
 
-* 3/1, 1999
+* 03/01, 1999
     Released TiMidity++ v1.3.4.
     Released TiMidity++ v1.3.4.
-    * Fixed some bugs and probrems.
+    * Fixed some bugs and problems.
     * Added a new WM-icon for GTK.
 
     * Added a new WM-icon for GTK.
 
-* 2/24, 1999
+* 02/24, 1999
     Released TiMidity++ v1.3.3.
     * Improve XAW interface.
     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.
     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.
 
     * 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.
 
     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.
     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.
 
     * Improved reverb sounds.
     * Fixed MIME/Multipart bug.
 
-* 1/25, 1999
+* 01/25, 1999
     Released TiMidity++ v1.2.1.
     Added missing files.
     Released TiMidity++ v1.2.1.
     Added missing files.
-    Fixed some configuration probrems.
+    Fixed some configuration problems.
     Added --enable-dynamic configure option.
 
     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:
     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.
 
     * 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.
     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.
 
     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.
 
     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.
 
     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
     Released TiMidity++ v1.0.0.
     See `ChangeLog' for major changes from the original of TiMidity 0.2i