Parent Directory
|
Revision Log
Links to HEAD: | (view) (download) (as text) (annotate) |
Sticky Revision: |
* src/gig.cpp, src/gig.h: fixed behavior regarding the newly added support for sample groups, the initial implementation assumed a group index of 0 in the .gig file to mean "no group assigned" and thus the possibility that there might not be a group at all, but in fact the .gig format assumes always at least one group (the default group), thus a group index of 0 means "member of default group"
* support for Gigasampler's sample groups added
just fixed two little API doc typos
* sample loop parameters are now taken from the DimensionRegion instead of the wave chunk * keyswitching dimension is changed from split type "normal" to "bit"
* added support for more than one custom velocity split inside a region
* fixed some memory management errors, one of them was causing a crash when a multi-file gig was deallocated
* recommited bugfixes regarding .gig write support (that commit batch got lost due to the recent CVS server defect)
* src/gig.cpp, src/gig.h: - added write support (highly experimental) - removed unnecessary definitions from header file * src/DLS.cpp: - try to load instruments/samples before adding a new instrument/sample
* support for the gig v3 feature to have a number of dimension splits not equal to a power of two
* fixed the GetVelocityCutoff function, it wasn't always using the VCFVelocityScale parameter when no cutoff controller was defined
* added VCFCutoffControllerInvert parameter and GetVelocityCutoff function to DimensionRegion
* added support for gig v3 multi-file format
* added DimensionRegion::GetVelocityRelease function
* added functions libraryName() and libraryVersion() to each of the three library units (RIFF,DLS,gig) * all tools now offer a command line switch -v to show the tools revision and the used libgig version * man pages are now auto generated with the correct libgig version
* src/gig.h, src/gig.cpp: API change of progress callback
* src/gig.h, src/gig.cpp: implemented progress indicator callback mechanism for loading instruments and samples * src/DLS.cpp: fixed File constructor which caused variable File::Instruments always to be zero * src/RIFF.cpp: fixed method List::LoadSubChunks() which did not restore the original position within the body of the given list chunk
* src/gig.h, src/gig.cpp: 24-bit decompression now supports the 20 and 18 bit formats * src/gig.h, src/gig.cpp: added "random" and "round robin" dimensions
* src/gig.h, src/gig.cpp: added pre-calculated sample attenuation parameter * src/gigdump: added output of Gain and SampleStartOffset
* gig::Sample: external decompression buffers can now be used for streaming with Read() and ReadAndLoop() to avoid race conditions in case of multiple streaming threads * fixed some memory leaks caused by non virtual base constructors
* src/gig.cpp, src/gig.h, src/gigextract.cpp: Support for compressed mono samples. Experimental support for compressed 24 bit samples. Fixes for decompression on big-endian CPUs. Fix for bug that truncated end of compressed samples.
tiny API doc fix (regarding keyswitching and crossfades)
* src/gig.cpp: fixed some memory leaks (patch by Gene Anders)
* src/gig.h, src/gig.cpp: support for up to 8 dimensions as introduced by Gig V3 (patch by Andreas Persson)
* src/gig.cpp, src/gig.h: - fixed vcf_type_lowpassturbo value (vcf_type_lowpassturbo was actually never used, because the necessary check was made before initialization) - fixed crossfade points order (structure for big endian and little endian systems was interchanged)
* gig.h oneliner forward declaration of gig::Region. * Fixed man pages automake install rule. * Doxygen documentation fix (make docs).
* src/gig.cpp, src/gig.h: applied patch by Andreas Persson which improves accuracy of all three velocity response curves
* src/gig.cpp, src/gig.h: added class attribute 'Layers' to class 'Region' * src/gigdump.cpp: replaced printout of DLS Region layer by printout of amount of Gigasampler layers
* src/gig.h, src/gig.cpp: fixed / improved accuracy of all three velocity to volume transformation functions (a.k.a. 'nonlinear','linear', 'special'), denormals are filtered from the velocity to volume tables * src/gigdump.cpp: added printout of velocity response curve parameters
updated copyright header for 2004
* src/gig.h: changed interface for 'attenuation_ctrl_t', 'eg1_ctrl_t' and 'eg2_ctrl_t': replaced the huge enumeration by a structure which reflects the MIDI controller number in case of an ordinary control change controller (this saves a huge switch-case block in the application of the library customer) * src/gig.h: renamed following attributes in class 'DimensionRegion': 'AttenuationContol' -> 'AttenuationController', 'InvertAttenuationControl' -> 'InvertAttenuationController', 'AttenuationControlTreshold' -> 'AttenuationControllerThreshold' * src/gig.cpp: minor fix in API documentation for method 'GetVelocityAttenuation()' in class 'DimensionRegion'
* src/gig.cpp, src/gig.h: added ReadAndLoop() method to class 'Sample' which is an extension to the normal Read() method to honor the sample's looping information while streaming from disk * src/RIFF.cpp: minor fix in Chunk::Read() method (only a minor efficiency issue) * src/gigdump.cpp: added printout of samples' looping informations
* gig.h, gig.cpp: changes in class 'Sample': - fixed loop attributes which reflected wrong values - attributes 'LoopStart' and 'LoopEnd' are now measured in sample points instead of byte offset - renamed misleading attribute name 'MIDIPitchFraction' to 'FineTune' - added attribute 'LoopSize' changes in class 'File': - added method GetInstrument(uint index)
* src/gig.cpp, src/gig.h: added method GetVelocityAttenuation() to class DimensionRegion which takes the MIDI key velocity value as an argument and returns the appropriate volume factor (0.0-1.0) for the sample to be be played back, the velocity curve transformation functions used for this are only an approximation so far
* src/gig.cpp: fixed bug in decompression algorithm which caused it not to detect the end of a stream * various endian corrections (successfully tested now on ppc) * minor adjustments to avoid compile errors on some systems (using now pow() instead of powl() and --pedantic g++ compiler switch) * src/RIFF.cpp, src/RIFF.h: added additional API documentation
Initial revision
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
ViewVC Help | |
Powered by ViewVC |