/[svn]/libgig/trunk/ChangeLog
ViewVC logotype

Diff of /libgig/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1099 by schoenebeck, Thu Mar 15 13:57:47 2007 UTC revision 2133 by persson, Tue Sep 28 19:41:13 2010 UTC
# Line 1  Line 1 
1  Version CVS HEAD (?)  Version CVS HEAD (?)
2      * general changes:
3        - minor Makefile fix for parallel make
4    
5      * SoundFont file format
6        - initial implementation
7        - changed region lookup API to avoid malloc in RT threads
8    
9      * src/RIFF.cpp, src/RIFF.h:
10        - bugfix: avoid calling read() with count 0 when writing a file,
11          as this may hang on some systems
12    
13    Version 3.3.0 (30 Jul 2009)
14    
15      * general changes:
16        - fixed compilation with gcc 4.3
17        - fixes for building with Visual C++
18        - minor fix in configure for building DLL on Windows
19    
20      * src/gig.cpp, src/gig.h:
21        - added partial support for MIDI rules, only the Controller
22          Triggered rule is supported so far
23        - bugfix: removed another iterator invalidation in DeleteSample
24        - bugfix in Sample::LoadSampleData*(): reset sample read position to
25          sample start before trying to (re)load sample data from file (#82)
26        - bugfix: EG3 depth parameter was not saved correctly
27        - fixed crash which occured when streaming a gig sample with
28          bi-directional (a.k.a. 'pingpong') loop type (fixes #102)
29    
30      * src/RIFF.cpp, src/RIFF.h:
31        - bugfix: saving to the same file after the file size had been
32          increased made the file corrupt (#82)
33        - bugfix: refuse Chunk::Read() in case chunk has just been added, that
34          is not written physically yet (#82)
35        - bugfix: saving to the same file after the file size had been
36          decreased sometimes also made the file corrupt!
37        - bugfix: undefined behavior (e.g. endless loop) when opening zero
38          length files, now throws a RIFF::Exception instead (fixes bug #121)
39        - bugfix: destructor for base class RIFF::Chunk accessed members
40          of derived class RIFF::File, which is bad, and caused crashes
41          when using Visual C++
42        - bugfix: files that contain zero length RIFF lists were not read
43          correctly (fixes #127) (bug was introduced 2009-03-13)
44    
45    Version 3.2.1 (5 Dec 2007)
46    
47      * src/RIFF.cpp, src/RIFF.h:
48        - avoid Windows to perform unnecessary file stream caching which would
49          decrease disk streaming performance on Windows systems otherwise
50    
51      * src/gig.cpp, src/gig.h:
52        - added File::SetAutoLoad() and File::GetAutoLoad() for allowing
53          applications to retrieve very superficial informations like amount of
54          instruments and their names in a very fast way
55    
56    Version 3.2.0 (14 Oct 2007)
57    
58      * packaging changes:
59        - added Mac OSX XCode project files (patch by Toshi Nagata)
60        - Dev-C++ (win32) project file is automatically updated with
61          the version info from configure.in
62        - the configure script can now be used in Windows with MSYS
63        - added a mainpage for the Doxygen API documentation
64    
65      * src/DLS.cpp, src/DLS.h:
66        - added Sampler::AddSampleLoop() and Sampler::DeleteSampleLoop() methods
67        - fixed write support for big-endian systems
68        - improved handling of fixed length info strings - separate default
69          lengths can be specified for each INFO chunk
70        - added Resource::GenerateDLSID function
71        - write support fix: allow regions without mapped samples
72        - added method SetKeyRange() to the Region class which should be used
73          instead of setting the KeyRange member variable directly
74        - MoveRegion() method of Region class is now private
75        - added SetGain() method to Sampler class
76        - fixed crash when saving a file after a sample loop was added
77    
78      * src/gig.cpp, src/gig.h:
79        - fixed segmentation fault in the gig::File destructor sequence which
80          happened when gig::Group informations were accessed before
81        - fixed write support for big-endian systems
82        - defined lengths of a fixed set of info strings. These strings
83          are saved when the file is written, even if they are empty.
84        - added missing parameter initalizations in sample, region and
85          instrument constructors
86        - clear unused fields when saving samples and regions
87        - fixed write support bugs: v3 dimension limits and chunksize
88          weren't saved, leverage controller of type controlchange
89          couldn't be saved, group name list chunk was placed wrong,
90          dimension region chunks also placed wrong
91        - added initialization of some fixed info strings in file and
92          instrument
93        - write support: files created by libgig will now have the RIFF
94          chunks in correct order
95        - write support: two previously unknown fields in dimension
96          definition are now saved
97        - added constants for gig file versions
98        - write support: the 3crc and einf chunks are now created or
99          updated when a file is saved (3crc contains sample checksums,
100          einf contains file statistics)
101        - write support: DLSID is now generated on the file and the
102          instruments
103        - write support: improved the default values for dimension region
104          parameters
105        - more write support fixes: crossfade parameters were not saved,
106          v3 dimension limits were not correctly initialized and saved
107          when dimensions were added or deleted, v3 wave pool offsets were
108          not saved correctly
109        - write support: 24 bit samples can now be written
110        - write support: version 3 is now the default for new files
111        - more write support fixes: the 3ewg chunk is now bigger for v3,
112          dimension regions without mapped samples are now allowed, 3gnl
113          list in v3 files now always has 128 entries, several parameters
114          where incorrectly saved due to an operator precedence mistake
115        - DeleteSample now removes all references to the deleted sample
116        - AddDimension now copies all parameters from existing dimension
117          regions and also makes sure that the samplechannel dimension is
118          placed first in the list of dimensions.
119        - added method GetParent() to class 'DimensionRegion', which returns its
120          parent Region
121        - fixed Instrument::UpdateRegionKeyTable() method which did not reset
122          unused areas
123        - added various setter methods to DimensionRegion class which take care
124          of updating lookup tables / caches.
125    
126      * src/RIFF.cpp, src/RIFF.h:
127        - added File::SetByteOrder method
128        - Windows fix: saving a new file didn't work
129    
130      * src/gigdump.cpp:
131        - added some missing dimension strings
132    
133    Version 3.1.1 (24 Mar 2007)
134    
135    * packaging changes:    * packaging changes:
136      - ported to Windows using native Windows functions for file IO      - ported to Windows using native Windows functions for file IO
# Line 19  Version CVS HEAD (?) Line 151  Version CVS HEAD (?)
151      - fixed group names which were not saved      - fixed group names which were not saved
152      - fixed group destructor which did not remove the RIFF chunk associated      - fixed group destructor which did not remove the RIFF chunk associated
153        with the group        with the group
154        - added Instrument::MoveRegion method
155        - fixed constructor for Region, which did not initialize correctly
156          when used from Instrument::AddRegion
157        - when saving, override the gig::Regions sample reference simply by
158          the region's first dimension region's sample (avoids an exception
159          when trying to save a new instrument)
160        - fixed AddDimension() method which did not fill out all mandatory
161          dimension definition fields
162    
163      * src/DLS.cpp, src/DLS.h:
164        - added Instrument::MoveRegion method
165        - fixed software info field which was wrongly stored on instruments,
166          causing an exception when trying to save a new instrument
167    
168    * src/RIFF.cpp, src/RIFF.h:    * src/RIFF.cpp, src/RIFF.h:
169      - fixed RIFF::Chunk destructor which did not unregister previously      - fixed RIFF::Chunk destructor which did not unregister previously
170        resized chunks, leading to a "zero size chunk" exception when        resized chunks, leading to a "zero size chunk" exception when
171        File::Save() was called        File::Save() was called
172        - added List::MoveSubChunk method
173    
174  Version 3.1.0 (24 Nov 2006)  Version 3.1.0 (24 Nov 2006)
175    

Legend:
Removed from v.1099  
changed lines
  Added in v.2133

  ViewVC Help
Powered by ViewVC