/[svn]/libgig/trunk/src/gig.h
ViewVC logotype

Log of /libgig/trunk/src/gig.h

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 1953 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jul 30 08:16:02 2009 UTC (9 years, 7 months ago) by schoenebeck
File length: 56963 byte(s)
Diff to previous 1678
* preparations for release 3.3.0


Revision 1678 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Feb 10 16:07:22 2008 UTC (11 years, 1 month ago) by persson
File length: 56963 byte(s)
Diff to previous 1627
* bugfix: saving to the same file after the file size had been
  increased made the file corrupt (#82)
* bugfix: removed another iterator invalidation in DeleteSample
* changed the functions for midi rules, to get rid of the iterator


Revision 1627 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 6 10:53:53 2008 UTC (11 years, 2 months ago) by persson
File length: 57075 byte(s)
Diff to previous 1524
* added partial support for MIDI rules, only the Controller Triggered
  rule is supported so far


Revision 1524 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 25 17:29:37 2007 UTC (11 years, 4 months ago) by schoenebeck
File length: 55551 byte(s)
Diff to previous 1416
* src/gig.cpp, src/gig.h:
  added File::SetAutoLoad() and File::GetAutoLoad() for allowing
  applications to retrieve very superficial informations like amount of
  instruments and their names in a very fast way


Revision 1416 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Oct 14 12:06:32 2007 UTC (11 years, 5 months ago) by schoenebeck
File length: 55416 byte(s)
Diff to previous 1381
* minor code refactoring regarding fixed string lenghts of
  fields in class DLS::Info
* preparations for release 3.2.0


Revision 1381 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Oct 4 18:57:10 2007 UTC (11 years, 5 months ago) by schoenebeck
File length: 55492 byte(s)
Diff to previous 1358
* code refactoring: hid the CRC class (src/gig.h), no need to expose it
  to the API, since it's only used internally


Revision 1358 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 30 18:13:33 2007 UTC (11 years, 5 months ago) by schoenebeck
File length: 56321 byte(s)
Diff to previous 1335
* added various setter methods to which take care of updating
  lookup tables / caches


Revision 1335 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 9 21:22:58 2007 UTC (11 years, 6 months ago) by schoenebeck
File length: 54727 byte(s)
Diff to previous 1316
* added virtual method SetKeyRange() to the gig and DLS Region classes,
  which automatically take care that the "resized" Region is at the
  correct position and that the lookup table for
  gig::Instrument::GetRegion() is updated (moved code from gigedit)
* MoveRegion() method of DLS::Region class is now private
* bugfix: gig::Instrument::UpdateRegionKeyTable() did not reset unused
  areas


Revision 1316 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 31 19:09:13 2007 UTC (11 years, 6 months ago) by schoenebeck
File length: 54610 byte(s)
Diff to previous 1301
* src/gig.h, src/gig.cpp:
  - added method GetParent() to class 'DimensionRegion', which returns its
    parent Region


Revision 1301 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 25 09:59:53 2007 UTC (11 years, 7 months ago) by persson
File length: 54508 byte(s)
Diff to previous 1207
* AddDimension now copies all parameters from existing dimension
  regions and also makes sure that the samplechannel dimension is
  placed first
* Windows fixes: compile error in DLSID generator, saving a new file
  didn't work


Revision 1207 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 26 13:59:40 2007 UTC (11 years, 10 months ago) by persson
File length: 54432 byte(s)
Diff to previous 1199
- added some comments for the latest changes


Revision 1199 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 20 10:11:39 2007 UTC (11 years, 10 months ago) by persson
File length: 54071 byte(s)
Diff to previous 1180
* added write support for the 3crc and einf chunks
* two previously unknown fields in dimension definition are now saved
* added constants for gig file versions


Revision 1180 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 12 12:39:25 2007 UTC (11 years, 10 months ago) by persson
File length: 53195 byte(s)
Diff to previous 1155
* improved handling of fixed length info strings


Revision 1155 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 11 18:11:09 2007 UTC (11 years, 11 months ago) by schoenebeck
File length: 53119 byte(s)
Diff to previous 1154
- minor fix of the previous commit


Revision 1154 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 11 16:33:56 2007 UTC (11 years, 11 months ago) by schoenebeck
File length: 53003 byte(s)
Diff to previous 1102
* src/DLS.cpp, src/DLS.h:
  - added Sampler::AddSampleLoop() and Sampler::DeleteSampleLoop() methods


Revision 1102 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Mar 18 07:13:06 2007 UTC (12 years ago) by persson
File length: 52270 byte(s)
Diff to previous 1098
* added MoveRegion and MoveSubChunk
* fixed initialization in AddRegion


Revision 1098 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Mar 15 00:32:06 2007 UTC (12 years ago) by schoenebeck
File length: 52177 byte(s)
Diff to previous 1093
* src/gig.cpp, src/gig.h: fixed group names which were not saved


Revision 1093 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Mar 11 17:44:31 2007 UTC (12 years ago) by schoenebeck
File length: 52136 byte(s)
Diff to previous 1081
- minor API doc update


Revision 1081 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Mar 8 00:17:03 2007 UTC (12 years ago) by schoenebeck
File length: 51832 byte(s)
Diff to previous 1076
* added new method File::DeleteGroupOnly() which only deletes the given
  group but moves all its members to another group, the other method,
  that is File::DeleteGroup() now removes not just the group, but also
  all the samples that belong to that group


Revision 1076 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Mar 6 18:33:30 2007 UTC (12 years ago) by persson
File length: 51776 byte(s)
Diff to previous 1070
* added "smart midi" and "round robin keyboard" dimensions


Revision 1070 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 5 17:42:35 2007 UTC (12 years ago) by persson
File length: 51537 byte(s)
Diff to previous 933
* custom velocity splits now works for gig v3 files too
* added support for custom splits points for other dimensions than
  velocity (gig v3 feature)


Revision 933 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 24 12:50:05 2006 UTC (12 years, 4 months ago) by schoenebeck
File length: 51323 byte(s)
Diff to previous 930
* preparations for release 3.1.0


Revision 930 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Oct 29 17:57:20 2006 UTC (12 years, 4 months ago) by schoenebeck
File length: 51323 byte(s)
Diff to previous 929
* 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"


Revision 929 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 24 22:24:45 2006 UTC (12 years, 5 months ago) by schoenebeck
File length: 50783 byte(s)
Diff to previous 926
* support for Gigasampler's sample groups added


Revision 926 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 24 14:29:16 2006 UTC (12 years, 5 months ago) by schoenebeck
File length: 49050 byte(s)
Diff to previous 864
just fixed two little API doc typos


Revision 864 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 14 07:15:38 2006 UTC (12 years, 10 months ago) by persson
File length: 49050 byte(s)
Diff to previous 858
* sample loop parameters are now taken from the DimensionRegion
  instead of the wave chunk
* keyswitching dimension is changed from split type "normal" to "bit"


Revision 858 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 6 11:29:29 2006 UTC (12 years, 10 months ago) by persson
File length: 49024 byte(s)
Diff to previous 834
* added support for more than one custom velocity split inside a
  region


Revision 834 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Feb 6 17:58:21 2006 UTC (13 years, 1 month ago) by persson
File length: 49595 byte(s)
Diff to previous 823
* fixed some memory management errors, one of them was causing a crash
  when a multi-file gig was deallocated


Revision 823 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 23 01:38:50 2005 UTC (13 years, 3 months ago) by schoenebeck
File length: 49668 byte(s)
Diff to previous 809
* recommited bugfixes regarding .gig write support
(that commit batch got lost due to the recent CVS server defect)


Revision 809 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 22 11:26:55 2005 UTC (13 years, 4 months ago) by schoenebeck
File length: 50036 byte(s)
Diff to previous 774
* 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


Revision 774 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 18 12:41:56 2005 UTC (13 years, 6 months ago) by persson
File length: 51587 byte(s)
Diff to previous 773
* support for the gig v3 feature to have a number of dimension splits
  not equal to a power of two


Revision 773 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Sep 17 14:24:45 2005 UTC (13 years, 6 months ago) by persson
File length: 51587 byte(s)
Diff to previous 728
* fixed the GetVelocityCutoff function, it wasn't always using the
  VCFVelocityScale parameter when no cutoff controller was defined


Revision 728 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 26 11:13:53 2005 UTC (13 years, 8 months ago) by persson
File length: 51486 byte(s)
Diff to previous 666
* added VCFCutoffControllerInvert parameter and GetVelocityCutoff
  function to DimensionRegion


Revision 666 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jun 19 15:18:59 2005 UTC (13 years, 9 months ago) by persson
File length: 51090 byte(s)
Diff to previous 613
* added support for gig v3 multi-file format


Revision 613 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 6 16:50:58 2005 UTC (13 years, 9 months ago) by persson
File length: 50864 byte(s)
Diff to previous 518
* added DimensionRegion::GetVelocityRelease function


Revision 518 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 8 16:19:34 2005 UTC (13 years, 10 months ago) by schoenebeck
File length: 50533 byte(s)
Diff to previous 516
* 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


Revision 516 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 7 21:24:04 2005 UTC (13 years, 10 months ago) by schoenebeck
File length: 50477 byte(s)
Diff to previous 515
* src/gig.h, src/gig.cpp: API change of progress callback


Revision 515 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 7 20:19:10 2005 UTC (13 years, 10 months ago) by schoenebeck
File length: 49933 byte(s)
Diff to previous 437
* 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


Revision 437 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 9 22:02:40 2005 UTC (14 years ago) by persson
File length: 49152 byte(s)
Diff to previous 406
* 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


Revision 406 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 23 19:11:07 2005 UTC (14 years, 1 month ago) by persson
File length: 48600 byte(s)
Diff to previous 384
* src/gig.h, src/gig.cpp: added pre-calculated sample attenuation
  parameter
* src/gigdump: added output of Gain and SampleStartOffset


Revision 384 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 17 02:22:26 2005 UTC (14 years, 1 month ago) by schoenebeck
File length: 48481 byte(s)
Diff to previous 365
* 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


Revision 365 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 10 19:16:31 2005 UTC (14 years, 1 month ago) by persson
File length: 47753 byte(s)
Diff to previous 353
* 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.


Revision 353 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Jan 29 14:25:35 2005 UTC (14 years, 1 month ago) by schoenebeck
File length: 46544 byte(s)
Diff to previous 350
tiny API doc fix (regarding keyswitching and crossfades)


Revision 350 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 25 21:54:24 2005 UTC (14 years, 2 months ago) by schoenebeck
File length: 46619 byte(s)
Diff to previous 347
* src/gig.cpp: fixed some memory leaks (patch by Gene Anders)


Revision 347 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 23 20:47:18 2005 UTC (14 years, 2 months ago) by schoenebeck
File length: 46622 byte(s)
Diff to previous 345
* src/gig.h, src/gig.cpp: support for up to 8 dimensions as introduced by
  Gig V3 (patch by Andreas Persson)


Revision 345 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 21 16:40:37 2005 UTC (14 years, 2 months ago) by schoenebeck
File length: 46682 byte(s)
Diff to previous 310
* 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)


Revision 310 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 26 00:14:50 2004 UTC (14 years, 4 months ago) by capela
File length: 46406 byte(s)
Diff to previous 308
* gig.h oneliner forward declaration of gig::Region.
* Fixed man pages automake install rule.
* Doxygen documentation fix (make docs).


Revision 308 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 21 18:02:21 2004 UTC (14 years, 4 months ago) by schoenebeck
File length: 46388 byte(s)
Diff to previous 282
* src/gig.cpp, src/gig.h: applied patch by Andreas Persson which improves
  accuracy of all three velocity response curves


Revision 282 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 13 20:05:42 2004 UTC (14 years, 5 months ago) by schoenebeck
File length: 46846 byte(s)
Diff to previous 231
* 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


Revision 231 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 5 00:46:28 2004 UTC (14 years, 6 months ago) by schoenebeck
File length: 46571 byte(s)
Diff to previous 55
* 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


Revision 55 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 27 09:06:07 2004 UTC (14 years, 11 months ago) by schoenebeck
File length: 46287 byte(s)
Diff to previous 36
updated copyright header for 2004


Revision 36 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 10 21:34:28 2004 UTC (15 years ago) by schoenebeck
File length: 46331 byte(s)
Diff to previous 24
* 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'


Revision 24 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 26 16:15:31 2003 UTC (15 years, 3 months ago) by schoenebeck
File length: 44657 byte(s)
Diff to previous 21
* 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


Revision 21 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Dec 25 01:09:08 2003 UTC (15 years, 3 months ago) by schoenebeck
File length: 41254 byte(s)
Diff to previous 16
* 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)


Revision 16 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 29 14:56:16 2003 UTC (15 years, 3 months ago) by schoenebeck
File length: 40916 byte(s)
Diff to previous 11
* 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


Revision 11 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 16 17:47:00 2003 UTC (15 years, 4 months ago) by schoenebeck
File length: 39626 byte(s)
Diff to previous 2
* 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


Revision 2 - (view) (download) (as text) (annotate) - [select for diffs]
Added Sat Oct 25 20:15:04 2003 UTC (15 years, 5 months ago) by schoenebeck
File length: 39631 byte(s)
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.

  Diffs between and
  Type of Diff should be a

  ViewVC Help
Powered by ViewVC