Parent Directory | Revision Log
Links to HEAD: | (view) (download) (annotate) |
Sticky Revision: |
* 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.
- RIFF.cpp: Only print debug messages if macro DEBUG_RIFF was set, not when macro DEBUG was set (which is a commonly used macro).
* Fixed various compiler warnings. * Bumped version (4.0.0.svn11).
- Fixed various spelling mistakes (patch by Debian maintainer).
* Using now native integer size where appropriate. * Bumped version (4.0.0.svn5).
- Fixed strict compile error on Windows.
* Fixed compile error on Windows.
* 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).
* RIFF: Cleanup of an old DLL binary backward compatibility hack. * Bumped version (3.3.0.svn28).
* RIFF: Fixed embarrassing old bug: POSIX read() errors were never detected on Chunk::Read() calls due to signment incompatible variable. * Added new command line tool "gig2stereo" (and a man page for it). * Bumped version (v3.3.0.svn23).
* 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).
* RIFF.cpp, POSIX: only assume -1 result value as error on open() calls. * RIFF.cpp, POSIX: show operating system's error reason if opening a file failed. * Bumped version (3.3.0.svn21).
* gig.h/.cpp: GIG FORMAT EXTENSION: added support for real-time instrument scripts. * RIFF.h/.cpp: added 2nd alternative method for List::MoveSubChunk(), the old 1st one allows to move a subchunk within the current List whereas the new 2nd one allows to move the subchunk from the current list to another list. * Bumped version (3.3.0.svn13).
* 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).
* 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.
* added write support for CtrlTrigger midi rule * added read and write support for Legato and Alternator midi rules
* fixed memory leak and memory handling errors when file loading fails
* bugfix: avoid calling read() with count 0 when writing a file, as this may hang on some systems
* preparations for release 3.3.0
* bugfix: files that contain zero length RIFF lists were not read correctly (fixes #127) (bug was introduced 2009-03-13)
* bugfix: destructor for base class RIFF::Chunk accessed members of derived class RIFF::File, which is bad, and caused crashes when using Visual C++ * bugfix: EG3 depth parameter was not saved correctly * fixes for building with Visual C++
* src/RIFF.cpp : - bugfix: undefined behavior (e.g. endless loop) when opening zero length files, now throws a RIFF::Exception instead (fixes bug #121)
* bugfix: saving to the same file after the file size had been decreased sometimes made the file corrupt
* bugfix: refuse RIFF::Chunk::Read() in case chunk has just been added, that is not written physically yet (#82) * bugfix in gig::Sample::LoadSampleData*(): reset sample read position to sample start before trying to (re)load sample data from file (#82)
* fixed compilation with gcc 4.3
* 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
* avoid Windows to perform unnecessary file stream caching which would decrease disk streaming performance on Windows systems otherwise
- internal function RIFF::__resolveChunkPath() is now static - fixed typo in API doc of method RIFF::Chunk::GetState() - don't expose internal static file members to the API docs
* 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
- added some comments for the latest changes
* removed the recently added RIFF::File constructor, added File::SetByteOrder instead
* 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
- just made one exception message more verbose
* added MoveRegion and MoveSubChunk * fixed initialization in AddRegion
* fixed RIFF::Chunk destructor which did not unregister previously resized chunks, leading to a "zero size chunk" exception when File::Save() was called
- minor API doc update
* fixed libgig's Dev-C++ project file to produce an actually working Windows DLL file (mandatory symbols were not exported so far) * fixed native Windows implementation of RIFF::File::__GetFileSize() to work with younger versions than XP as well * added Dev-C++ project files for the demo / example applications as well * added instructions in README for how to compile libgig and its tools for Windows
* 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
* preparations for release 3.1.0
* src/RIFF.cpp: bugfix in File::Save() methods which did not ensure that the whole RIFF tree was already built before writing which caused opening an existing file and saving it afterwards to write just an empty file
* src/RIFF.cpp: compilation error fix for big endian systems * src/gigdump.cpp: show correct amount of dimension regions instead of 32 (patch by James Wylder)
* bugfixes for the last commit batch
* 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)
* fixed write support in RIFF classes
* added write support (only to the RIFF classes yet)
* added support for gig v3 multi-file format
* 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: 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
* 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
updated copyright header for 2004
* 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
* 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 |