--- libgig/trunk/ChangeLog 2007/08/31 19:09:13 1316 +++ libgig/trunk/ChangeLog 2013/01/07 23:23:58 2394 @@ -1,9 +1,83 @@ Version CVS HEAD (?) + * general changes: + - minor Makefile fix for parallel make + - Mac OS X: link with CoreFoundation (for the UUID function) + - removed gcc 4.7 warnings + - modernized configure script + + * SoundFont file format + - initial implementation + - changed region lookup API to avoid malloc in RT threads + - fixed GetEG1Sustain which didn't return correct value + - bugfix: GetPan always returned -1, 0 or 1 + + * src/gig.cpp: + - bugfix: VCF velocity dynamic range and VCF velocity curve + weren't saved correctly + - implemented File::AddDuplicateInstrument() + + * src/DLS.cpp, src/DLS.h: + - added new method File::GetFileName() + - fixed minor "memory leak on exception" bug found with cppcheck + - added new method File::GetExtensionFile(int index) + + * src/RIFF.cpp, src/RIFF.h: + - bugfix: avoid calling read() with count 0 when writing a file, + as this may hang on some systems + - fixed memory leak and memory handling errors when file loading + fails + +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 +86,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 @@ -56,6 +135,10 @@ 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