--- libgig/trunk/ChangeLog 2007/08/02 14:12:55 1266 +++ libgig/trunk/ChangeLog 2010/09/28 19:41:13 2133 @@ -1,9 +1,66 @@ Version CVS HEAD (?) + * general changes: + - minor Makefile fix for parallel make + + * SoundFont file format + - initial implementation + - changed region lookup API to avoid malloc in RT threads + + * src/RIFF.cpp, src/RIFF.h: + - bugfix: avoid calling read() with count 0 when writing a file, + as this may hang on some systems + +Version 3.3.0 (30 Jul 2009) + + * general changes: + - fixed compilation with gcc 4.3 + - fixes for building with Visual C++ + - minor fix in configure for building DLL on Windows + + * src/gig.cpp, src/gig.h: + - added partial support for MIDI rules, only the Controller + Triggered rule is supported so far + - bugfix: removed another iterator invalidation in DeleteSample + - bugfix in Sample::LoadSampleData*(): reset sample read position to + sample start before trying to (re)load sample data from file (#82) + - bugfix: EG3 depth parameter was not saved correctly + - fixed crash which occured when streaming a gig sample with + bi-directional (a.k.a. 'pingpong') loop type (fixes #102) + + * src/RIFF.cpp, src/RIFF.h: + - bugfix: saving to the same file after the file size had been + increased made the file corrupt (#82) + - bugfix: refuse Chunk::Read() in case chunk has just been added, that + is not written physically yet (#82) + - bugfix: saving to the same file after the file size had been + decreased sometimes also made the file corrupt! + - bugfix: undefined behavior (e.g. endless loop) when opening zero + length files, now throws a RIFF::Exception instead (fixes bug #121) + - bugfix: destructor for base class RIFF::Chunk accessed members + of derived class RIFF::File, which is bad, and caused crashes + when using Visual C++ + - bugfix: files that contain zero length RIFF lists were not read + correctly (fixes #127) (bug was introduced 2009-03-13) + +Version 3.2.1 (5 Dec 2007) + + * src/RIFF.cpp, src/RIFF.h: + - avoid Windows to perform unnecessary file stream caching which would + decrease disk streaming performance on Windows systems otherwise + + * src/gig.cpp, src/gig.h: + - added File::SetAutoLoad() and File::GetAutoLoad() for allowing + applications to retrieve very superficial informations like amount of + instruments and their names in a very fast way + +Version 3.2.0 (14 Oct 2007) * packaging changes: - added Mac OSX XCode project files (patch by Toshi Nagata) - Dev-C++ (win32) project file is automatically updated with the version info from configure.in + - the configure script can now be used in Windows with MSYS + - added a mainpage for the Doxygen API documentation * src/DLS.cpp, src/DLS.h: - added Sampler::AddSampleLoop() and Sampler::DeleteSampleLoop() methods @@ -12,6 +69,11 @@ lengths can be specified for each INFO chunk - added Resource::GenerateDLSID function - write support fix: allow regions without mapped samples + - added method SetKeyRange() to the Region class which should be used + instead of setting the KeyRange member variable directly + - MoveRegion() method of Region class is now private + - added SetGain() method to Sampler class + - fixed crash when saving a file after a sample loop was added * src/gig.cpp, src/gig.h: - fixed segmentation fault in the gig::File destructor sequence which @@ -51,9 +113,19 @@ list in v3 files now always has 128 entries, several parameters where incorrectly saved due to an operator precedence mistake - DeleteSample now removes all references to the deleted sample + - AddDimension now copies all parameters from existing dimension + regions and also makes sure that the samplechannel dimension is + placed first in the list of dimensions. + - added method GetParent() to class 'DimensionRegion', which returns its + parent Region + - fixed Instrument::UpdateRegionKeyTable() method which did not reset + unused areas + - added various setter methods to DimensionRegion class which take care + of updating lookup tables / caches. * src/RIFF.cpp, src/RIFF.h: - added File::SetByteOrder method + - Windows fix: saving a new file didn't work * src/gigdump.cpp: - added some missing dimension strings