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

Diff of /libgig/trunk/ChangeLog

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

revision 2 by schoenebeck, Sat Oct 25 20:15:04 2003 UTC revision 1099 by schoenebeck, Thu Mar 15 13:57:47 2007 UTC
# Line 0  Line 1 
1    Version CVS HEAD (?)
2    
3      * packaging changes:
4        - ported to Windows using native Windows functions for file IO
5          (provided Dev-C++ + mingw project file)
6        - only export relevant files to Doxygen API documentation
7    
8      * src/gig.cpp, src/gig.h:
9        - custom velocity splits now works for gig v3 files too
10        - added support for custom splits points for other dimensions than
11          velocity (gig v3 feature)
12        - added "smart midi" and "round robin keyboard" dimensions
13        - added new method File::DeleteGroupOnly() which only deletes the given
14          group but moves all its members to another group, the other method,
15          that is File::DeleteGroup() now removes not just the group, but also
16          all the samples that belong to that group
17        - fixed crash which occured on interfering File::DeleteSample() and
18          File::GetNextSample() calls (due to iterator invalidation)
19        - fixed group names which were not saved
20        - fixed group destructor which did not remove the RIFF chunk associated
21          with the group
22    
23      * src/RIFF.cpp, src/RIFF.h:
24        - fixed RIFF::Chunk destructor which did not unregister previously
25          resized chunks, leading to a "zero size chunk" exception when
26          File::Save() was called
27    
28    Version 3.1.0 (24 Nov 2006)
29    
30      * packaging changes:
31        - changed deprecated copyright attribute to license;
32          added ldconfig to post-(un)install steps on libgig.spec (RPM)
33    
34      * src/gig.cpp, src/gig.h:
35        - added support for more than one set of custom velocity splits
36          inside a region (for example different velocity split levels for
37          pedal up and pedal down)
38        - sample loop parameters are now taken from the DimensionRegion
39          instead of the wave chunk
40        - keyswitching dimension is changed from split type "normal" to
41          "bit"
42        - real support for 24 bit samples - samples are not truncated to
43          16 bits anymore
44        - support for reading of ".art" files. (Merging of .art and .gig
45          files are not implemented yet.)
46        - several fixes for the write support
47        - support for sample groups added
48    
49      * src/DLS.cpp, src/DLS.h:
50        - support for reading of ".art" files
51        - removed incorrect use of memccpy in the write support (patch by
52          Jeremy Kerr)
53        - several fixes for the write support
54    
55      * src/gigextract.cpp:
56        - real support for 24 bit samples
57    
58      * src/gigdump.cpp:
59        - print global file informations
60        - print sample groups
61    
62      * general changes:
63        - added CPPUnit test cases (at the moment primarily for automatic check
64          of Gigasampler write support)
65    
66    Version 3.0.0 (28 Apr 2006)
67    
68      * general changes:
69        - added write support (that is for creating and modifying RIFF, DLS and
70          gig files)
71        - loading DLS and gig files is now much more permissive, DLS and gig
72          files are now loaded even if mandatory RIFF chunks are missing
73        - fixed some memory management errors, one of them was causing a
74          crash when a multi-file gig was deallocated
75    
76      * src/gig.cpp, src/gig.h:
77        - fixed the GetVelocityCutoff function, it wasn't always using the
78          VCFVelocityScale parameter when no cutoff controller was defined
79        - support for the gig v3 feature to have a number of dimension
80          splits not equal to a power of two
81        - added write support (highly experimental)
82    
83      * src/DLS.cpp, src/DLS.h:
84        - fixed loading of Articulation Connections (<artl> list chunks were
85          seeked instead of ordinary <artl> data chunks)
86        - added write support (highly experimental)
87    
88      * src/RIFF.cpp, src/RIFF.h:
89        - added write support
90        - Chunk::LoadChunkData() can now be called again to resize the buffer
91          after a Chunk::Resize() and before the File::Save() call to allow
92          placing the new data in the chunk's write buffer and perform the
93          resize and write operations in one rush
94    
95      * src/gigdump.cpp:
96        - fixed to show the correct amount of dimension regions instead of 32
97          (patch by James Wylder)
98    
99      * src/dlsdump.cpp:
100        - show for every region the name of the referenced sample
101        - show file name in quotation marks
102    
103    Version 2.0.2 (15 Aug 2005)
104    
105      * packaging changes:
106        - require automake (>= 1.5) for 'make -f Makefile.cvs'
107          (mandatory for 'dist-bzip2' automake option)
108    
109      * src/gig.cpp, src/gig.h:
110        - support for gig v3 multi-file format (.gig, .gx01, .gx02, ...),
111          the extension files are read automatically when the samples are
112          loaded
113        - fixed the 24 bit decompression, the result should now be exact
114          instead of an approximation
115        - added VCFCutoffControllerInvert parameter and GetVelocityCutoff
116          function to DimensionRegion
117    
118      * src/DLS.cpp, src/DLS.h:
119        - the upper bits of the pool table indices are read (used as
120          extension file numbers for gig v3)
121    
122      * src/RIFF.cpp, src/RIFF.h:
123        - the file name is remembered in the RIFF::File object
124    
125    Version 2.0.1 (12 Jun 2005)
126    
127      * packaging changes:
128        - include debian/ directory on 'make dist'
129        - create a bzip2 tarball on 'make dist'
130    
131      * src/gigextract.cpp:
132        - show also version of libsndfile or build version of libaudiofile when
133          using the -v switch
134        - fixed mutual link dependency to libsndfile / libaudiofile
135    
136      * src/gig.cpp, src/gig.h:
137        - added DimensionRegion::GetVelocityRelease function
138    
139    Version 2.0.0 (9 May 2005)
140    
141      * packaging changes:
142        - fixed conditional linkage of either libsndfile or libaudiofile
143          (if none of the two exist, configure script will abort)
144        - man pages are now auto generated with the correct libgig version
145    
146      * src/gig.cpp, src/gig.h:
147        - experimental support for Gigasampler v3 format;
148          64 bit file offsets are truncated to 32 bit, 24 bit samples are
149          truncated to 16 bit, up to 8 dimensions are read, additional
150          articulation informations are ignored at the moment
151          (patch by Andreas Persson)
152        - added some file format compatibility checks
153        - fixed vcf_type_lowpassturbo value (vcf_type_lowpassturbo was actually
154          never used, because the necessary check was made before
155          initialization)
156        - fixed crossfade points order (structure for big endian and little
157          endian systems was interchanged)
158        - fixed some memory leaks (patch by 'Gene', a.k.a Anders Alm)
159        - fixed crash which occured when patches did not have a sample assigned
160          to their region or dimension region (patch by Andreas Persson)
161        - support for compressed mono samples
162        - experimental support for compressed 24 bit samples
163        - fixed decompression on big-endian CPUs
164        - fixed decompression bug that truncated the last block of samples
165        - external decompression buffers can now be used for streaming samples
166          to avoid race conditions in case of multiple streaming threads
167        - added pre-calculated sample attenuation parameter
168        - added v3 "random" and "round robin" dimensions
169        - implemented progress indicator callback mechanism for loading
170          instruments and samples
171        - added functions libraryName() and libraryVersion()
172    
173      * src/DLS.cpp, src/DLS.h:
174        - fixed File constructor which caused variable File::Instruments always
175          to be zero
176        - added functions libraryName() and libraryVersion()
177    
178      * src/RIFF.cpp, src/RIFF.h:
179        - fixed method List::LoadSubChunks() which did not restore the original
180          position within the body of the given list chunk
181        - added functions libraryName() and libraryVersion()
182    
183      * src/rifftree.cpp:
184        - added command line switch -v to show rifftree's revision and the used
185          libgig version
186    
187      * src/dlsdump.cpp:
188        - added command line switch -v to show dlsdump's revision and the used
189          libgig version
190    
191      * src/gigdump.cpp:
192        - added output of UnityNote, FineTune, Gain, SampleStartOffset an
193          LoopPlayCount
194        - added command line switch -v to show gigdump's revision and the used
195          libgig version
196    
197      * src/gigextract.cpp:
198        - support for compressed mono samples and compressed 24 bit samples
199        - added command line switch -v to show gigextract's revision and the
200          used libgig version
201    
202    Version 1.0.0 (26 Nov 2004)
203    
204      * packaging changes:
205        - renamed 'libgig.pc.in' -> 'gig.pc.in' and renamed pkg-config lib name
206          'libgig' -> 'gig' as it's common practice to omit the 'lib' prefix
207        - fixed man pages automake install rule (which didn't work on Mandrake,
208          SuSE and Fedora)
209        - fixed generation of Doxygen API documentation (now also included in
210          RPM and Debian packages)
211    
212      * src/gig.cpp, src/gig.h:
213        - fixed / improved accuracy of all three velocity to volume
214          transformation functions a.k.a. 'nonlinear','linear','special'
215          (patch by Andreas Persson)
216        - denormals are filtered from the velocity to volume tables
217        - bugfix for dimension region switching (wrong handling of the release
218          trigger dimension, no bit range check for dimensions of split type
219          'split_type_bit')
220        - fixed panorama value in DimensionRegion (invalid conversion from
221          signed 7 bit to signed 8 bit)
222        - added class attribute 'Layers' to class 'gig::Region'
223        - symbol prototyping of gig::Region (fixes build failure with qsampler)
224    
225      * src/gigextract.cpp:
226        - added support for libsndfile (if libaudiofile and libsndfile are
227          available then libsndfile is preferred)
228    
229      * src/gigdump.cpp:
230        - added printout for dimension informations (amount, type, bits, zones)
231        - added printout for velocity response curve parameters
232        - added printout for crossfade definitions
233        - added printout for panorama value for each DimensionRegion
234        - replaced printout of DLS Region layer by printout of amount of
235          Gigasampler layers
236    
237    Version 0.7.1 (2 Jul 2004)
238    
239      * packaging changes:
240        - added libgig.spec and libgig.pc package configurations for generating
241          Redhat packages
242        - header files included on installation.
243        - autotools-generated files removed from CVS repository.
244        - added support for generating Debian packages
245        - version of shared library can be set in configure.in
246    
247    Version 0.7.0 (3 May 2004)
248    
249      * general changes:
250        - various big endian specific corrections
251          (successfully tested now on PPC)
252        - minor adjustments to avoid compile errors on some systems
253          (using now pow() instead of powl() and --pedantic g++ compiler switch)
254        - libtoolized the library
255        - added man pages for the command line tools
256          (gigextract, gigdump, dlsdump, rifftree)
257    
258      * src/gig.cpp, src/gig.h:
259        - fixed bug in decompression algorithm which caused it not to detect
260          the end of a stream
261        - added method GetVelocityAttenuation() to class 'DimensionRegion' which
262          takes the MIDI key velocity value as an argument and returns the
263          appropriate volume factor (0.0 ... 1.0) for the sample to be played
264          back, the velocity curve transformation functions used for this are
265          only an approximation so far
266        - fixed class attributes 'Sample::LoopStart', 'Sample::LoopEnd' and
267          'Sample::LoopSize' which reflected wrong values
268        - class attributes 'Sample::LoopStart' and 'Sample::LoopEnd' are now
269          measured in sample points instead of byte offset
270        - renamed misleading attribute name 'Sample::MIDIPitchFraction' to
271          'Sample::FineTune'
272        - added class attribute 'Sample::LoopSize'
273        - added method GetInstrument(uint index) to class 'File'
274        - added ReadAndLoop() method to class 'Sample' which is an extension to
275          the normal Read() method to honor the sample's looping information
276          while streaming from disk
277        - changed interface for 'attenuation_ctrl_t', 'eg1_ctrl_t' and
278          'eg2_ctrl_t': replaced this huge enumeration by a structure which
279          reflects the MIDI controller number in case of an ordinary control
280          change controller (this saves a huge switch-case block in the
281          application of the library user)
282        - renamed following attributes in class 'DimensionRegion':
283          'AttenuationContol' -> 'AttenuationController',
284          'InvertAttenuationControl' -> 'InvertAttenuationController',
285          'AttenuationControlTreshold' -> 'AttenuationControllerThreshold'
286        - minor fix in API documentation for method GetVelocityAttenuation() in
287          class 'DimensionRegion'
288    
289      * src/RIFF.cpp, src/RIFF.h:
290        - added additional API documentation
291        - minor fix in Chunk::Read() method (only a minor efficiency issue)
292    
293      * src/gigdump.cpp:
294        - added printout of samples' looping informations
295    
296    Version 0.6.0 (3 Nov 2003)
297    
298      * initial release

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

  ViewVC Help
Powered by ViewVC