--- linuxsampler/trunk/ChangeLog 2007/11/14 15:06:48 1479 +++ linuxsampler/trunk/ChangeLog 2008/09/06 14:55:18 1764 @@ -1,24 +1,145 @@ Version CVS HEAD (?) * packaging changes: + - autoconf bugfix: the PKG_CONFIG variable wasn't initialized properly, + causing e.g. the libgig test to fail when + "./configure --disable-jack-driver" was used + (patch by Alexis Ballier) + - fixed compilation with gcc 4.3 + + * general changes: + - bugfix: on some POSIX systems instrument editor plugins refused to + load as we used a non-portable Linux specific struct field + (fixes bug #70, patch by Ronald Baljeu) + - fixed endless loop which occured when loading an instrument editor + plugin DLL on Windows systems failed + - fixed memory leaks that occurred when liblinuxsampler was unloaded + - optimized the SynchronizedConfig class so it doesn't wait + unnecessarily long after an update + - added support for notifying instrument editors on note-on / note-off + events (e.g. to highlight the pressed keys on the virtual keyboard + of gigedit) + - added support for triggering notes by instrument editors (see above) + - be verbose on DLL load errors (on Linux) + - fixed di-harmonic triangle LFO implementation (this LFO implementation + is only used by very few systems, most pick the int math + implementation, which is usually faster) + - fixes for audio drivers with varying buffer sizes + + * audio driver: + - removed the nonsense audio channel constraint (which was hard coded to + max. 100 audio channels) for most audio drivers + - JACK audio driver did not offer a device parameter "SAMPLERATE" as + opposed to the LSCP specs + - bugfix: the SAMPLERATE parameter of some drivers (e.g. JACK) + reflected the wrong value + - fixed a memory management bug in ASIO driver + - Makefile fix: JACK_CFLAGS wasn't used + - JACK: use jack_client_open instead of thedeprecated + jack_client_new + + * MIDI driver: + - added JACK MIDI driver + - dispatch bank select as ordinary CC as well, the user might seriously + want to (mis)use it for some purpose ("fixed" in all current MIDI + input drivers: ALSA, CoreMIDI, JACK, MidiShare, MME) + + * instruments database: + - avoid time consuming samples scanning when adding instruments + to the instruments database + - added support for handling lost files in the instruments database + + * Gigasampler format engine: + - fixed a memory leak that could happen when a channel was deleted + while notes were playing + - made it possible to load an instrument even if the audio thread + isn't running + - added partial support for the "Controller Triggered" MIDI rule, + enough for piano gigs with pedal noise samples + - minor fix: only mark FX sends as being modified if really the + respective FX send MIDI controller was used + - added support for GM global device volume SysEx message + (can be selected at compile time to either apply globally to the + whole sampler [default] or only to the sampler channels that are + connected to the respective MIDI input port the SysEx message arrived + on) + - bugfix: notes triggered at position 0 in the audio buffer were + sometimes wrongly killed in the same buffer, causing no sound to + be played + - added support for chromatic / drumkit mode Roland GS Sysex message + which is usally used to switch a part between chromatic sounds and + drumkit sounds (as opposed to their common default setting of MIDI + part 10 being a drumkit part and all other ones chromatic parts), in + LS however one can switch between the first 16 MIDI instrument maps + defined for the sampler + - made it possible to create multiple sample channels even if the + audio thread isn't running + + * LSCP server: + - added new LSCP event "CHANNEL_MIDI" which can be used by frontends to + react on MIDI data arriving on certain sampler channels (so far only + Note-On and Note-Off events are sent via this LSCP event) + - added new LSCP event "DEVICE_MIDI" which can be used by frontends to + react on MIDI data arriving on certain MIDI input devices (so far only + Note-On and Note-Off events are sent via this LSCP event) + - added new LSCP commands: FIND LOST DB_INSTRUMENT_FILES and + SET DB_INSTRUMENT FILE_PATH + - bugfix: the bank number provided by MIDI_INSTRUMENT_INFO notifications + was incorrect + - Optimized the retrieval of the MIDI instrument mappings + + * Bug fixes: + - fixed a crash which occurs when removing a sampler channel waiting + to start instrument loading after another channel + + +Version 0.5.1 (6 December 2007) + + * packaging changes: - added autoconf checks for pthread library - added autoconf check for pthread bug found on certain NPTL-enabled glibc versions (see Gentoo bug report #194076) + - added autoconf checks for MS Windows * general changes: - bugfix: the thread used by an editor plugin didn't die when the editor closed - - bugfix: Ringbuffer.h: - fill_write_space_with_null() did not zero out all the space - operator--() did not apply size_mask after decrementing the read_ptr - DEFAULT_WRAP_ELEMENTS set to 0 in order to avoid problems with - the _NonVolatileReader functions. - + - bugfix: Ringbuffer.h: fill_write_space_with_null() did not zero + out all the space. operator--() did not apply size_mask after + decrementing the read_ptr. DEFAULT_WRAP_ELEMENTS set to 0 in + order to avoid problems with the _NonVolatileReader functions. + - bugfix: Stream.h: added a missing divide by BytesPerSample in + GetWriteSpace(). Since this function is currently only used in + the stream's qsort() compare function, it didn't trigger any + bugs. + - Resampler.h, Synthesizer.h: cubic interpolation now works in + 24bit mode too. Faster method to read 24bit words on little + endian machines (x86): replaced 3 byte reads + shifts with a 1 + unaligned 32bit read and shift + - experimental support for MS Windows (MIDI input via MME, AUDIO + output via ASIO) + - made handling of SIGINT signal (Ctrl-C) a bit more robust + - support for monitoring the total number of active disk streams + (new LSCP commands: GET TOTAL_STREAM_COUNT, + SUBSCRIBE TOTAL_STREAM_COUNT, UNSUBSCRIBE TOTAL_STREAM_COUNT) + + * AUDIO driver: + - added Windows ASIO low latency audio driver + + * MIDI driver: + - added MME Windows MIDI driver * LSCP server: - added support for Windows style path / filenames, however with forward slash path separators instead of backslash (i.e. "C:/foo/bar.gig") + - allow naughty liblscp to send non-string device parameters within + apostrophes as well + - added new LSCP commands: "GET FILE INSTRUMENTS ", + "LIST FILE INSTRUMENTS " and + "GET FILE INSTRUMENT INFO " for retrieving informations + about an arbitrary instrument file on the system where the sampler is + running on Version 0.5.0 (15 October 2007)