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

Diff of /libgig/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3349 by schoenebeck, Tue Oct 3 17:12:07 2017 UTC revision 3656 by schoenebeck, Sat Dec 14 17:04:28 2019 UTC
# Line 1  Line 1 
1  Version SVN trunk  Version SVN trunk (?)
2    
3      * general changes:
4        - Require at least a C++11 compliant compiler.
5    
6      * src/gig.cpp, src/gig.h:
7        - GIG FORMAT EXTENSION: Added attributes DimensionRegion::LFO1WaveForm,
8          DimensionRegion::LFO2WaveForm and DimensionRegion::LFO3WaveForm, which
9          allow to define override LFOs' wave form (e.g. saw or square instead of
10          the default wave form which was always sine in the original
11          Gigasampler/GigaStudio software).
12        - GIG FORMAT EXTENSION: Added attributes DimensionRegion::LFO1Phase,
13          DimensionRegion::LFO2Phase and DimensionRegion::LFO3Phase, which allow to
14          move the start point horizontally of the LFOs' waves (0° ... 360°).
15        - GIG FORMAT EXTENSION: Added attribute DimensionRegion::LFO3FlipPhase
16          (the original Gigasampler/GigaStudio software only had that flip phase
17          option for LFO1 and LFO2).
18        - Added method DimensionRegion::UsesAnyGigFormatExtension() (however only as
19          private method yet, see comments on method why).
20        - GIG FORMAT EXTENSION: added LinuxSampler specific filter type
21          implementations to enum vcf_type_t: vcf_type_lowpass_1p,
22          vcf_type_lowpass_2p, vcf_type_lowpass_4p, vcf_type_lowpass_6p,
23          vcf_type_highpass_1p, vcf_type_highpass_2p, vcf_type_highpass_4p,
24          vcf_type_highpass_6p, vcf_type_bandpass_2p, vcf_type_bandreject_2p.
25        - Compatibility fix: GigaStudio always expects 128 '3gnm' RIFF chunks
26          (patch by Ivan Maguidhir).
27    
28      * src/tools/gigdump.cpp:
29        - Print dimension region properties LFO1WaveForm, LFO2WaveForm,
30          LFO3WaveForm, LFO1Phase, LFO2Phase, LFO3Phase, LFO1FlipPhase,
31          LFO2FlipPhase and LFO3FlipPhase.
32    
33    Version 4.2.0 (25 Jul 2019)
34    
35      * general changes:
36        - Added MSVC build support (anonymous patch from mailing list).
37        - Introduced CMake build support (yet constrained for building with MSVC)
38          (anonymous patch from mailing list).
39        - Fix: Don't automatically delete RIFF chunks from DLS/gig classes'
40          destructors. Added new virtual method DeleteChunks() to those classes
41          for this which must be explicitly called instead to remove their RIFF
42          chunks.
43        - Fix: Many methods of DLS/gig classes assumed a RIFF chunk read position
44          of zero; which is unsafe per se.
45        - Added C++11 "override" keyword where appropriate.
46        - Fixed crash in RIFF, DLS and gig classes which occurred on certain
47          of their actions when not passing a progress_t callback structure.
48    
49      * src/gig.cpp, src/gig.h:
50        - Fixed Doxygen API comments for enum types (currently latest Doxygen
51          [v1.8.13] only supports C comments in macro arguments expansion, but
52          not C++ comments; see <FindDefineArgs> lexer rules in src/pre.l of
53          the Doxygen source code, which currently also filter out new line
54          \n chars).
55        - Added new method File::CountSamples().
56        - Added new method File::CountInstruments().
57        - Fixed gig v4 files falsely being handled as v2 format
58          (patch by Ivan Maguidhir).
59        - Added gig v4 version identifier (File::VERSION_4).
60        - GIG FORMAT EXTENSION: Added attribute
61          DimensionRegion::SustainReleaseTrigger which allows to define whether
62          a sustain pedal up event shall cause a release trigger sample to be
63          played (default: don't play release trigger sample by sustain pedal).
64        - GIG FORMAT EXTENSION: Added attribute
65          DimensionRegion::NoNoteOffReleaseTrigger which allows to disable the
66          regular behaviour of playing release trigger sample on MIDI note-off
67          events.
68        - Introduced support for writing extension files (.gx01, .gx02, ...)
69          (original patch by Ivan Maguidhir).
70        - Many gig classes derive now from DLS::Storage (see DLS changes below).
71        - Added File::GetRiffFile() method.
72    
73      * src/DLS.cpp, src/DLS.h:
74        - File: Fixed implicitly allocated RIFF::File object never been freed.
75        - Added new abstract interface base class DLS::Storage which is derived by
76          the respective classes for implementing (the old) UpdateChunks() and the
77          new DeleteChunks() method.
78        - Added File::GetRiffFile() method.
79    
80      * src/sf2.cpp, src/sf2.h:
81        - Added Sample::GetFile() method.
82        - Added File::GetRiffFile() method.
83    
84      * src/Serialization.cpp, src/Serialization.h:
85        - Hide pure internal declarations from header file to avoid numerous
86          compiler warnings when building and linking against the public API.
87        - Fixed comparision logic bug
88        - Fixed memory leak in DataType::customTypeName().
89    
90      * src/RIFF.cpp, src/RIFF.h:
91        - Fix: Calling File::SetMode() left an undefined file handle on Windows and
92          caused a resource leak
93        - Avoid compiler warning when building for 32 bit windows.
94        - Added new method progress_t::subdivide().
95        - Fix: API doc comment for Chunk::GetFilePos() was completely wrong.
96        - progress_t: Added a 2nd (overridden) progress_t::subdivide() method which
97          allows a more fine graded control into which portions the subtasks are
98          divided to.
99    
100      * src/tools/gigdump.cpp:
101        - Added command line option --instrument-names which causes only
102          instrument names and their index numbers to be printed.
103    
104    Version 4.1.0 (25 Nov 2017)
105    * general changes:    * general changes:
106      - removed 2 GB limitation when loading a gig or DLS file      - removed 2 GB limitation when loading a gig or DLS file
107      - using now native integer size where appropriate      - using now native integer size where appropriate
# Line 12  Version SVN trunk Line 115  Version SVN trunk
115        korgdump and sf2extract.        korgdump and sf2extract.
116      - Fixed CVE-2017-12950, CVE-2017-12952, CVE-2017-12953      - Fixed CVE-2017-12950, CVE-2017-12952, CVE-2017-12953
117        (original patch by Paul Brossier, slightly modified).        (original patch by Paul Brossier, slightly modified).
118        - Debian: Fixed packaging error about invalid substitution variable
119          "Source-Version".
120        - Raised Debian compatibility level to Debian 9 "Stretch".
121    
122    * src/gig.cpp, src/gig.h:    * src/gig.cpp, src/gig.h:
123      - fixed bug in Script::SetGroup: the script chunk wasn't moved      - fixed bug in Script::SetGroup: the script chunk wasn't moved
# Line 50  Version SVN trunk Line 156  Version SVN trunk
156        behavior of the first two EGs' state machines.        behavior of the first two EGs' state machines.
157      - Fixed undefined behavior when loading a gig file with invalid      - Fixed undefined behavior when loading a gig file with invalid
158        velocity curve parameters (fixes CVE-2017-12951).        velocity curve parameters (fixes CVE-2017-12951).
159        - Fixed undefined behavior when loading a gig file with invalid wave
160          pool index number (fixes CVE-2017-12954).
161    
162    * src/DLS.cpp, src/DLS.h:    * src/DLS.cpp, src/DLS.h:
163      - Sample: wave pool offsets are now 64 bits (to allow support for files      - Sample: wave pool offsets are now 64 bits (to allow support for files
164        larger than 4 GB).        larger than 4 GB).
165      - Exception class now has a variadic constructor which allows to add      - Exception class now has a variadic constructor which allows to add
166        textual format specifiers like with printf().        textual format specifiers like with printf().
167          
168    * src/RIFF.cpp, src/RIFF.h:    * src/RIFF.cpp, src/RIFF.h:
169      - added support for RIFF files larger than 4 GB, by default the required      - added support for RIFF files larger than 4 GB, by default the required
170        internal RIFF file offset size is automatically detected (that is RIFF        internal RIFF file offset size is automatically detected (that is RIFF
# Line 95  Version SVN trunk Line 203  Version SVN trunk
203      - DataType fix: Retain backward compatibility to older versions of native      - DataType fix: Retain backward compatibility to older versions of native
204        C++ classes/structs.        C++ classes/structs.
205    
206      * src/Akai.cpp:
207        - Fixed compilation error with recent, more strict compilers.
208    
209    * src/tools/akaidump.cpp, src/tools/akaiextract.cpp:    * src/tools/akaidump.cpp, src/tools/akaiextract.cpp:
210      - improved output of non-ascii characters in usage messages      - improved output of non-ascii characters in usage messages
211      - fixed printf format strings      - fixed printf format strings

Legend:
Removed from v.3349  
changed lines
  Added in v.3656

  ViewVC Help
Powered by ViewVC