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

Contents of /libgig/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 917 - (show annotations) (download)
Sun Aug 20 14:50:36 2006 UTC (17 years, 7 months ago) by schoenebeck
File size: 10927 byte(s)
* added CPPUnit test cases (at the moment primarily for automatic check
  of Gigasampler write support)

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

  ViewVC Help
Powered by ViewVC