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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

Revision 3940 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jun 18 13:47:46 2021 UTC (2 years, 9 months ago) by schoenebeck
File length: 31493 byte(s)
Diff to previous 3930
* DLS: Added method Articulator::GetArticulation().

* DLS: Marked methods Articulator::GetFirstArticulation() and
  Articulator::GetNextArticulation() as deprecated.


Revision 3930 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 15 12:42:55 2021 UTC (2 years, 9 months ago) by schoenebeck
File length: 31324 byte(s)
Diff to previous 3928
* Refactor macro LIBGIG_DEPRECATED() -> LIBGIG_DEPRECATED_API()


Revision 3928 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 15 11:38:38 2021 UTC (2 years, 9 months ago) by schoenebeck
File length: 31308 byte(s)
Diff to previous 3926
* gig: Changed signature of method File::GetSample(uint) to
  File::GetSample(size_t,progress_t*).

* gig: Marked methods File::GetFirstSample() and File::GetNextSample()
  as deprecated.

* DLS: Added method File::GetSample().

* DLS: Marked methods File::GetFirstSample() and File::GetNextSample()
  as deprecated.

* Bumped version (4.3.0.svn16).


Revision 3926 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 15 10:16:40 2021 UTC (2 years, 9 months ago) by schoenebeck
File length: 31359 byte(s)
Diff to previous 3481
* DLS: Added method Instrument::GetRegionAt().

* DLS: Marked methods Instrument::GetFirstRegion() and
  Instrument::GetNextRegion() as deprecated.

* gig: Added method Instrument::GetRegionAt().

* gig: Marked methods Instrument::GetFirstRegion() and
  Instrument::GetNextRegion() as deprecated.

* Bumped version (4.3.0.svn14).


Revision 3481 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Feb 22 12:12:50 2019 UTC (5 years, 1 month ago) by schoenebeck
File length: 31215 byte(s)
Diff to previous 3478
* gig.h, gig.cpp: Added File::GetRiffFile() method.
* DLS.h, DLS.cpp: Added File::GetRiffFile() method.
* sf2.h, sf2.cpp: Added Sample::GetFile() and
  File::GetRiffFile() methods.
* RIFF.h, RIFF.cpp: Added a 2nd (overridden)
  progress_t::subdivide() method which allows a more
  fine graded control into which portions the subtasks
  are divided to.
* RIFF Fix: API doc comment for Chunk::GetFilePos() was
  completely wrong.
* Bumped version (4.1.0.svn14).


Revision 3478 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 21 20:10:08 2019 UTC (5 years, 1 month ago) by schoenebeck
File length: 31176 byte(s)
Diff to previous 3474
* Fix: Don't automatically delete RIFF chunks from DLS/gig classes'
  destructors. Added new virtual method DeleteChunks() to those classes
  for this which must be explicitly called instead to remove their RIFF
  chunks.
* Fix: Many methods of DLS/gig classes assumed a RIFF chunk read position
  of zero; which is unsafe per se.
* Added C++11 "override" keyword where appropriate.
* DLS.cpp, DLS.h: Added new abstract interface base class DLS::Storage
  which is derived by the respective classes for implementing (the old)
  UpdateChunks() and the new DeleteChunks() method.
* RIFF.cpp, RIFF.h: Added new method progress_t::subdivide().
* Bumped version (4.1.0.svn13).


Revision 3474 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 20 16:04:19 2019 UTC (5 years, 1 month ago) by schoenebeck
File length: 28004 byte(s)
Diff to previous 3463
* WIP: Introduced support for writing extension files (.gx01, .gx02, ...)
  (original patch by Ivan Maguidhir).
* Bumped version (4.1.0.svn11).


Revision 3463 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Feb 10 19:58:24 2019 UTC (5 years, 1 month ago) by schoenebeck
File length: 27812 byte(s)
Diff to previous 3323
* DLS.cpp/DLS.h: Fixed implicitly allocated RIFF::File object never been
  freed.
* Bumped version (4.1.0.svn9).


Revision 3323 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jul 20 22:09:54 2017 UTC (6 years, 8 months ago) by schoenebeck
File length: 27530 byte(s)
Diff to previous 3198
* gig.h/.cpp: Added new struct "eg_opt_t" and new class member variable
  "DimensionRegion::EGOptions" as an extension to the gig file format,
  which allows to override the default behavior of EGs' state machines.
* DLS.h: Got rid of C-style typedefs.
* src/tools/gigdump.cpp: Print the new EG behavior options.
* Bumped version (4.0.0.svn27).


Revision 3198 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 21 12:46:05 2017 UTC (6 years, 10 months ago) by schoenebeck
File length: 27558 byte(s)
Diff to previous 2922
* RIFF/DLS/gig/Serialization: Exception classes now have a variadic
  constructor which allows to add textual format specifiers like
  with printf().
* gig.cpp: On unknown leverage controller exception: show precise unknown
  leverage controller number found.


Revision 2922 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 18 18:04:49 2016 UTC (7 years, 10 months ago) by schoenebeck
File length: 27459 byte(s)
Diff to previous 2912
* Using now native integer size where appropriate.
* Bumped version (4.0.0.svn5).


Revision 2912 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 17 14:30:10 2016 UTC (7 years, 10 months ago) by schoenebeck
File length: 27450 byte(s)
Diff to previous 2682
* gig.cpp/.h: GIG FORMAT EXTENSION: Added support for saving gig file
  larger than 4 GB as one single monolithic gig file. A new custom RIFF
  chunk "FFmt" was added to distinguish such monolithic large .gig files
  from old ones which were splitted over several (.gx01, .gx02, ...)
  "extension" files before.
* DLS.cpp/.h: Sample class: wave pool offsets are now 64 bits (to allow
  support for files larger than 4 GB).
* RIFF.cpp/.h: Addded support for RIFF files larger than 4 GB, by default
  the required internal RIFF file offset size is automatically detected
  (that is RIFF files < 4 GB automatically use 32 bit offsets while
  files >= 4 GB automatically use 64 bit offsets), a particular offset
  size can be forced with a new option added to the RIFF File constructor
  though.
* RIFF.cpp/.h: When saving a modified, grown RIFF file, the temporary file
  size during Save() operation will no longer be larger than the final
  grown file size.
* Automake: Set environment variable GCC_COLORS=auto to allow GCC to auto
  detect whether it (sh/c)ould output its messages in color.
* Bumped version (4.0.0.svn3).


Revision 2682 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Dec 29 16:25:51 2014 UTC (9 years, 3 months ago) by schoenebeck
File length: 27401 byte(s)
Diff to previous 2609
* gig: Added support for custom progress notification while saving to
  gig file.
* DLS: Added support for custom progress notification while saving to
  DLS file.
* RIFF: Added support for custom progress notification while saving to
  RIFF file.
* Bumped version (3.3.0.svn22).


Revision 2609 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jun 8 19:00:30 2014 UTC (9 years, 9 months ago) by schoenebeck
File length: 27109 byte(s)
Diff to previous 2547
* gig: Fixed instrument script slot saving/loading.
* gigdump tool: Show scripts and script slots.
* Bumped version (3.3.0.svn17).


Revision 2547 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 13 11:17:24 2014 UTC (9 years, 10 months ago) by schoenebeck
File length: 27063 byte(s)
Diff to previous 2543
* Fix: don't alter region pointer in gig::DimensionRegion::CopyAssign()
  (caused crash with the new "combine instruments" feature in gigedit).
* Added new method gig::Region::GetDimensionDefinition(dimension_t type).
* Added some more sanity checks in gig::Region::AddDimension().
* Added inline helper methods overlaps() for struct DLS::range_t.
* Added more API doc comments.
* Bumped version (3.3.0.svn10).



Revision 2543 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 10 02:06:58 2014 UTC (9 years, 10 months ago) by schoenebeck
File length: 26746 byte(s)
Diff to previous 2482
* Initial support for sample based instruments in KORG's file format (.KMP
  and .KSF files) -> Korg.h, Korg.cpp.
* Added new command line tool "korgdump" (and a man page for it).
* Added new command line tool "korg2gig" (and a man page for it), for
  converting KORG sounds to Giga format.
* riftree tool: Added more command line options for being able to also dump
  other kind of file formats similar but not equal to the RIFF format.
* gig.h/.cpp: Added new method File::GetGroup(String name) for retrieving
  group by name.
* RIFF.h/.cpp: Added support for loading RIFF-like files with a bit
  different layout than "real" RIFF files (used for KORG format support).
* RIFF.h/.cpp: Added new method Chunk::GetFile().
* RIFF.h/.cpp: Added new method Chunk::GetLayout().
* Bumped version (3.3.0.svn9).


Revision 2482 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 25 02:22:38 2013 UTC (10 years, 4 months ago) by schoenebeck
File length: 26411 byte(s)
Diff to previous 2394
* Added new command line tool "gigmerge" which allows to merge
  a list of gig files to one single gig file.
* Added new "man" page for new tool "gigmerge".
* src/gig.h: Added new method File::AddContentOf().
* src/DLS.h: Added new method File::SetFileName().
* src/RIFF.h: Added new method File::SetFileName().
* src/RIFF.h: Added new method File::IsNew().
* Added "const" keyword to several methods.
* Bumped version to 3.3.0.svn6.


Revision 2394 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 7 23:23:58 2013 UTC (11 years, 2 months ago) by schoenebeck
File length: 26171 byte(s)
Diff to previous 2329
* implemented gig::File::AddDuplicateInstrument()
* bumped version to 3.3.0.svn4


Revision 2329 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 12 14:59:10 2012 UTC (12 years ago) by schoenebeck
File length: 25761 byte(s)
Diff to previous 2274
* added new method DLS::File::GetExtensionFile(int index)
* bumped version to 3.3.0svn3


Revision 2274 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Sep 19 21:41:34 2011 UTC (12 years, 6 months ago) by schoenebeck
File length: 25708 byte(s)
Diff to previous 2044
* src/DLS.cpp, src/DLS.h: added new method File::GetFileName()
* bumped version to 3.3.0.svn2


Revision 2044 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 10 12:58:51 2010 UTC (14 years, 2 months ago) by persson
File length: 25669 byte(s)
Diff to previous 1953
* sf2: fixes for big endian systems
* removed compiler warnings


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


Revision 1713 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Mar 6 20:42:22 2008 UTC (16 years ago) by persson
File length: 26215 byte(s)
Diff to previous 1416
* fixed compilation with gcc 4.3


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


Revision 1358 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 30 18:13:33 2007 UTC (16 years, 6 months ago) by schoenebeck
File length: 26110 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 (16 years, 6 months ago) by schoenebeck
File length: 26000 byte(s)
Diff to previous 1209
* 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 1209 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 27 13:54:24 2007 UTC (16 years, 10 months ago) by persson
File length: 25819 byte(s)
Diff to previous 1183
* added DLSID support


Revision 1183 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 13 10:34:29 2007 UTC (16 years, 10 months ago) by persson
File length: 25785 byte(s)
Diff to previous 1180
* added RIFF::File constructor with endianess parameter
* put pack Info::UseFixedLengthStrings, marked as deprecated, to
  ensure binary compatibility
* DLS files are always created as little-endian


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


Revision 1154 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 11 16:33:56 2007 UTC (16 years, 11 months ago) by schoenebeck
File length: 25599 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 (17 years ago) by persson
File length: 25009 byte(s)
Diff to previous 1093
* added MoveRegion and MoveSubChunk
* fixed initialization in AddRegion


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


Revision 1050 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Mar 2 01:04:45 2007 UTC (17 years, 1 month ago) by schoenebeck
File length: 24674 byte(s)
Diff to previous 933
* ported to Windows using native Windows functions for file IO
  (provided Dev-C++ + mingw project file)
* renamed macro WAVE_FORMAT_PCM to DLS_WAVE_FORMAT_PCM
  to avoid clash with definition in i.e. windows.h


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


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


Revision 928 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 24 19:32:47 2006 UTC (17 years, 5 months ago) by persson
File length: 24623 byte(s)
Diff to previous 918
* added DLS INFO string Subject and fixed string Media
* fixed SamplePeriod calculation


Revision 918 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Sep 2 08:45:37 2006 UTC (17 years, 6 months ago) by persson
File length: 24534 byte(s)
Diff to previous 834
* several fixes for the write support


Revision 834 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Feb 6 17:58:21 2006 UTC (18 years, 1 month ago) by persson
File length: 24341 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 (18 years, 3 months ago) by schoenebeck
File length: 24288 byte(s)
Diff to previous 806
* recommited bugfixes regarding .gig write support
(that commit batch got lost due to the recent CVS server defect)


Revision 806 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 12 19:53:53 2005 UTC (18 years, 4 months ago) by schoenebeck
File length: 24235 byte(s)
Diff to previous 802
just updated API docu a bit (regarding write support)


Revision 802 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 10 19:53:34 2005 UTC (18 years, 4 months ago) by schoenebeck
File length: 23590 byte(s)
Diff to previous 800
* bugfixes for the last commit batch


Revision 800 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 9 20:04:11 2005 UTC (18 years, 4 months ago) by schoenebeck
File length: 23590 byte(s)
Diff to previous 666
* src/RIFF.cpp, src/RIFF.h:
  - Chunk::LoadChunkData() can now be called again to resize the buffer
    after a Chunk::Resize() and before the File::Save() call to allow
    placing the new data in the chunk's write buffer and perform the
    resize and write operations in one rush
* src/DLS.cpp, src/DLS.h:
  - fixed loading of Articulation Connections (<artl> list chunks were
    seeked instead of ordinary <artl> data chunks)
  - added write support (highly experimental)


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


Revision 518 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 8 16:19:34 2005 UTC (18 years, 10 months ago) by schoenebeck
File length: 22558 byte(s)
Diff to previous 384
* 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 384 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 17 02:22:26 2005 UTC (19 years, 1 month ago) by schoenebeck
File length: 22502 byte(s)
Diff to previous 55
* 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 55 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 27 09:06:07 2004 UTC (19 years, 11 months ago) by schoenebeck
File length: 22439 byte(s)
Diff to previous 11
updated copyright header for 2004


Revision 11 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 16 17:47:00 2003 UTC (20 years, 4 months ago) by schoenebeck
File length: 22439 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 (20 years, 5 months ago) by schoenebeck
File length: 22444 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