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

Contents of /libgig/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1099 - (show annotations) (download)
Thu Mar 15 13:57:47 2007 UTC (17 years ago) by schoenebeck
File size: 12410 byte(s)
* fixed group destructor which did not remove the RIFF chunk associated
  with the group

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

  ViewVC Help
Powered by ViewVC