/[svn]/linuxsampler/trunk/src/engines/gig/Voice.cpp
ViewVC logotype

Log of /linuxsampler/trunk/src/engines/gig/Voice.cpp

Parent Directory Parent Directory | Revision Log Revision Log


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

Revision 3655 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 13 17:14:48 2019 UTC (4 years, 3 months ago) by schoenebeck
File length: 34206 byte(s)
Diff to previous 3652 , to selected 3017
* gig engine: Fixed cutoff controller handling for new filter types.

* Bumped version (2.1.1.svn25).


Revision 3652 - (view) (download) (annotate) - [select for diffs]
Modified Wed Dec 11 11:10:24 2019 UTC (4 years, 3 months ago) by schoenebeck
File length: 30500 byte(s)
Diff to previous 3646 , to selected 3017
- Just minor comment correction.


Revision 3646 - (view) (download) (annotate) - [select for diffs]
Modified Sun Dec 8 23:17:34 2019 UTC (4 years, 3 months ago) by schoenebeck
File length: 30501 byte(s)
Diff to previous 3628 , to selected 3017
* gig format extension: Support for additional filter types:
  lowpass 1/2/4/6-pole, highpass 1/2/4/6-pole, bandpass 2-pole,
  bandreject 2-pole.

* Bumped version (2.1.1.svn24).


Revision 3628 - (view) (download) (annotate) - [select for diffs]
Modified Sat Oct 5 14:37:31 2019 UTC (4 years, 5 months ago) by schoenebeck
File length: 29560 byte(s)
Diff to previous 3626 , to selected 3017
Fixed issues with recently added compile-time sanity checks.


Revision 3626 - (view) (download) (annotate) - [select for diffs]
Modified Thu Oct 3 14:40:17 2019 UTC (4 years, 5 months ago) by schoenebeck
File length: 29096 byte(s)
Diff to previous 3625 , to selected 3017
Just added some compile-time sanity checks
(for enum ::gig::lfo_wave_t to match enum LFO::wave_t).


Revision 3625 - (view) (download) (annotate) - [select for diffs]
Modified Thu Oct 3 13:37:25 2019 UTC (4 years, 5 months ago) by schoenebeck
File length: 28781 byte(s)
Diff to previous 3615 , to selected 3017
* gig format extension: Added support for different LFO wave forms
  (currently either sine [default], triangle, saw or square).

* gig format extension: Added support for LFO phase displacement
  (0°..360°).

* gig format extension: Added support for flipping LFO polarity on LFO 3
  (in the original gig format this was only available for LFO 1 and LFO 2).

* Bumped version (2.1.1.svn22).


Revision 3615 - (view) (download) (annotate) - [select for diffs]
Modified Tue Oct 1 09:49:08 2019 UTC (4 years, 5 months ago) by schoenebeck
File length: 28172 byte(s)
Diff to previous 3612 , to selected 3017
* Gig engine: changed LFO start levels; LFO1 and LFO2 both to mid,
  LFO3 to max. start level (see discussion "GigaStudio LFO  
  compatibility" on mailing list from 2019-09-26 for details).
* Bumped version (2.1.1.svn20).


Revision 3612 - (view) (download) (annotate) - [select for diffs]
Modified Mon Sep 30 18:03:43 2019 UTC (4 years, 5 months ago) by schoenebeck
File length: 27809 byte(s)
Diff to previous 3588 , to selected 3017
Added new LFO implementations:

* Added int math square LFO implementation.

* Added int math saw LFO implementation.

* Added numeric complex nr sine LFO implementation.

* Added public API C++ class "LFO", which is a cluster class
  encapsulating all the sampler's LFO implementations to be used by
  3rd party applications (e.g. by Gigedit).

* Marked class LFOTriangleDiHarmonic as deprecated
  (will be removed in future).

* Added LFOAll.h which includes all LFO implementation's header files.

* Fixed benchmarks/triang.cpp falsely having favoured "int math abs"
  algorithm (since result of 2nd run was not accumulated).

* Added benchmark for saw wave (benchmarks/saw.cpp).

* Added benchmark for sine wave (benchmarks/sine.cpp).

* Added benchmark for square wave (benchmarks/square.cpp).

* Increased amount of benchmarks runs by factor 6 to achieve benchmark
  times which are large enough on modern systems.

* Cleanup of LFO APIs.

* Bumped version (2.1.1.svn18).


Revision 3588 - (view) (download) (annotate) - [select for diffs]
Modified Sun Sep 1 16:06:48 2019 UTC (4 years, 6 months ago) by schoenebeck
File length: 27794 byte(s)
Diff to previous 3561 , to selected 3017
NKSP: Built-in instrument functions fixes & hardening:

* Fixed the following built-in functions having misinterpreted values given
  with unit type (for their 2nd argument) as if they were relative values
  (that is as if they were passed without a unit type): "change_attack()",
  "change_decay()", "change_release()", "change_cutoff_attack()",
  "change_cutoff_decay()", "change_cutoff_release()".

* Fixed the following built-in functions having applied completely wrong
  'final' values: "change_sustain()", "change_cutoff_sustain()" (since the
  respective EGs being their modulation sink assume uint data type with
  value range 0..1000 instead of 0.0..1.0.

* Added individual parse-time checks of function arguments for the following
  built-in functions: "play_note()", "note_off()", "set_event_mark()",
  "delete_event_mark()", "by_marks()", "change_cutoff()", "change_attack()",
  "change_decay()", "change_release()", "change_cutoff_attack()",
  "change_cutoff_decay()", "change_cutoff_release()",
  "change_amp_lfo_freq()", "change_cutoff_lfo_freq()",
  "change_pitch_lfo_freq()", "change_vol_time()", "change_tune_time()" and
  "change_pan_time()".

* Don't abort function call if unit type was used and at the same time
  'final' operator was omitted for the primary value argument of the
  following built-in functions: "change_cutoff()", "change_attack()",
  "change_decay()", "change_release()", "change_cutoff_attack()",
  "change_cutoff_decay()", "change_cutoff_release()",
  "change_amp_lfo_freq()", "change_cutoff_lfo_freq()",
  "change_pitch_lfo_freq()", "change_vol_time()", "change_tune_time()",
  "change_pan_time()", instead imply 'final'ness at runtime and raise an
  appropriate parser warning at parse time.

* Bumped version (2.1.1.svn13).


Revision 3561 - (view) (download) (annotate) - [select for diffs]
Modified Fri Aug 23 11:44:00 2019 UTC (4 years, 7 months ago) by schoenebeck
File length: 26585 byte(s)
Diff to previous 3448 , to selected 3017
NKSP: Added standard units support for numbers and final "!" operator:

* NKSP strictness: Variable names, function names and preprocessor condition
  names must start with a regular character (a-z or A-Z); starting them with
  a digit or underscore is no longer allowed.

* NKSP parser fix: equal comparison operator "=" and not equal comparison
  operator "#" must only accept integer operands.

* NKSP language: Implemented support for standard units like Hertz, seconds,
  Bel including support for metric unit prefixes; so one can now e.g.
  conveniently use numbers in scripts like "5us" meaning "5 microseconds",
  or e.g. "12kHz" meaning "12 kilo Hertz", or e.g. "-14mdB" meaning
  "minus 14 Millidecibel", or e.g. "28c" meaning "28 cents" (for tuning).

* NKSP language: Introduced "final" operator "!" which is specifically
  intended for synthesis parameter values to denote that the synthesis
  parameter value is intended to be the "final" value for that synthesis
  parameter that should explicitly be used by the engine and thus causing
  the sampler engine to ignore all other modulation sources for the same
  synthesis parameter (like e.g. LFO, EG); by simply prefixing a value,
  variable or formula with this new "!" operator the expression is marked as
  being "final".

* Bumped version (2.1.1.svn4).


Revision 3448 - (view) (download) (annotate) - [select for diffs]
Modified Sun Dec 23 22:10:56 2018 UTC (5 years, 3 months ago) by schoenebeck
File length: 25450 byte(s)
Diff to previous 3444 , to selected 3017
* Gig format extension: If requested by instrument then don't play
  release trigger sample on note-off events.
* Bumped version (2.1.0.svn3).


Revision 3444 - (view) (download) (annotate) - [select for diffs]
Modified Sun Dec 23 19:32:11 2018 UTC (5 years, 3 months ago) by schoenebeck
File length: 25362 byte(s)
Diff to previous 3360 , to selected 3017
* Only play release trigger samples on sustain pedal up if this behaviour
  was explicitly requested by the instrument (otherwise only on note-off).
* Bumped version (2.1.0.svn2).


Revision 3360 - (view) (download) (annotate) - [select for diffs]
Modified Fri Oct 27 21:19:18 2017 UTC (6 years, 5 months ago) by schoenebeck
File length: 24589 byte(s)
Diff to previous 3328 , to selected 3017
* NKSP: Added built-in script function "change_cutoff_attack()".
* NKSP: Added built-in script function "change_cutoff_decay()".
* NKSP: Added built-in script function "change_cutoff_sustain()".
* NKSP: Added built-in script function "change_cutoff_release()".
* NKSP: Added built-in script function "change_cutoff_lfo_depth()".
* NKSP: Added built-in script function "change_cutoff_lfo_freq()".
* Bumped version (2.0.0.svn77).


Revision 3328 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jul 23 18:27:29 2017 UTC (6 years, 8 months ago) by schoenebeck
File length: 24385 byte(s)
Diff to previous 3316 , to selected 3017
* gig Engine: Added support for controlling whether the individual
  EGADSR stages may be aborted (as LinuxSampler extension to the
  original GigaStudio 4 format).
* Bumped version (2.0.0.svn73).


Revision 3316 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jul 20 12:05:53 2017 UTC (6 years, 8 months ago) by schoenebeck
File length: 23837 byte(s)
Diff to previous 3118 , to selected 3017
* NKSP: Implemented built-in script function "change_sustain()".
* Bumped version (2.0.0.svn72).


Revision 3118 - (view) (download) (annotate) - [select for diffs]
Modified Fri Apr 21 13:33:03 2017 UTC (6 years, 11 months ago) by schoenebeck
File length: 23795 byte(s)
Diff to previous 3054 , to selected 3017
* NKSP: Fixed crash when using built-in script array variable "%ALL_EVENTS".
* NKSP: Added built-in function "change_amp_lfo_depth()".
* NKSP: Added built-in function "change_amp_lfo_freq()".
* NKSP: Added built-in function "change_pitch_lfo_depth()".
* NKSP: Added built-in function "change_pitch_lfo_freq()".
* Bumped version (2.0.0.svn44).


Revision 3054 - (view) (download) (annotate) - [select for diffs]
Modified Thu Dec 15 12:47:45 2016 UTC (7 years, 3 months ago) by schoenebeck
File length: 23350 byte(s)
Diff to previous 3017
* Fixed numerous compiler warnings.
* Bumped version (2.0.0.svn32).


Revision 3017 - (view) (download) (annotate) - [selected]
Modified Wed Oct 19 12:28:40 2016 UTC (7 years, 5 months ago) by schoenebeck
File length: 23267 byte(s)
Diff to previous 2879
* Follow-up fix regarding aftertouch handling.
* Bumped version (2.0.0.svn29).


Revision 2879 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 19 14:07:53 2016 UTC (7 years, 11 months ago) by schoenebeck
File length: 23201 byte(s)
Diff to previous 2837 , to selected 3017
* All engines: Active voices are now internally grouped to "Note" objects,
  instead of being directly assigned to a keyboard key. This allows more
  fine graded processing of voices, which is i.e. required for certain
  instrument script features.
* Built-in script function "play_note()": Added support for passing
  special value -1 for "duration-us" argument, which will cause the
  triggered note to be released once the original note was released.
* Bumped version (2.0.0.svn3).


Revision 2837 - (view) (download) (annotate) - [select for diffs]
Modified Sun Aug 23 06:14:00 2015 UTC (8 years, 7 months ago) by persson
File length: 23197 byte(s)
Diff to previous 2559 , to selected 3017
* fixed printf type errors (mostly in debug messages)



Revision 2559 - (view) (download) (annotate) - [select for diffs]
Modified Sun May 18 17:38:25 2014 UTC (9 years, 10 months ago) by schoenebeck
File length: 23183 byte(s)
Diff to previous 2408 , to selected 3017
* Aftertouch: extended API to explicitly handle channel pressure and
  polyphonic key pressure events (so far polyphonic pressure was not
  supported at all, and channel pressure was rerouted as CC128 but not
  used so far).
* Gig Engine: Fixed support for 'aftertouch' attenuation controller.
* Bumped version (1.0.0.svn39).


Revision 2408 - (view) (download) (annotate) - [select for diffs]
Modified Sat Feb 2 08:22:49 2013 UTC (11 years, 1 month ago) by persson
File length: 22594 byte(s)
Diff to previous 2396 , to selected 3017
* gig engine: fixed EG1 modulation when attack or release is zero


Revision 2396 - (view) (download) (annotate) - [select for diffs]
Modified Tue Jan 8 12:00:45 2013 UTC (11 years, 2 months ago) by schoenebeck
File length: 22230 byte(s)
Diff to previous 2382 , to selected 3017
* Exclusive Groups: don't ever stop voices of the same note,
  doesn't sound naturally with a drumkit.


Revision 2382 - (view) (download) (annotate) - [select for diffs]
Modified Sun Dec 2 16:30:42 2012 UTC (11 years, 3 months ago) by persson
File length: 21974 byte(s)
Diff to previous 2327 , to selected 3017
* all engines: add pan CC value to instrument pan parameter before
  applying panning, instead of using two separate pan functions in
  series (#182)
* sfz parser: allow -200 to 200 for pan_oncc opcode (#182)
* gig engine: handle special case when pan parameter in gig file has
  max or min value
* CoreMIDI: fixed memory deallocation error


Revision 2327 - (view) (download) (annotate) - [select for diffs]
Modified Sat Mar 10 16:16:14 2012 UTC (12 years ago) by persson
File length: 21610 byte(s)
Diff to previous 2203 , to selected 3017
* sfz/sf2 engine: fixed crash when using small audio fragment size


Revision 2203 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jul 9 16:44:27 2011 UTC (12 years, 8 months ago) by persson
File length: 21466 byte(s)
Diff to previous 2175 , to selected 3017
* sf2 engine: fine-tuned amplitude EG (by switching from gig to sfz EG)
* sfz engine: added support for EG hold (ampeg_hold)
* Mac OS X: made it possible to specify plugin installation dir to
  configure


Revision 2175 - (view) (download) (annotate) - [select for diffs]
Modified Mon Apr 25 08:12:36 2011 UTC (12 years, 11 months ago) by persson
File length: 21907 byte(s)
Diff to previous 2114 , to selected 3017
* sfz engine: implemeted filters. Filter types: lowpass, bandpass,
  bandreject and highpass. 1, 2, 4 and 6 pole filters. Opcodes:
  fil_type, cutoff, resonance, fil_veltrack, fil_keytrack,
  fil_keycenter, cutoff_cc, cutoff_chanaft.
* sfz engine: bugfix: zero ampeg_sustain didn't work
* gig engine: bugfix: pitch LFO controller "internal+aftertouch" was broken
* gig engine: bugfix: filter keyboard tracking was broken
* gig engine: filter performance fix (an unnecessary copy was made of
  the filter parameters in each sub fragment)
* ASIO driver: fixes for newer gcc versions (fix from PortAudio)


Revision 2114 - (view) (download) (annotate) - [select for diffs]
Modified Tue Aug 10 12:05:19 2010 UTC (13 years, 7 months ago) by persson
File length: 21194 byte(s)
Diff to previous 2061 , to selected 3017
* sfz engine: improved support for exclusive groups (group, off_by and
  off_mode)
* minor valgrind fixes


Revision 2061 - (view) (download) (annotate) - [select for diffs]
Modified Tue Feb 23 18:32:31 2010 UTC (14 years, 1 month ago) by persson
File length: 20597 byte(s)
Diff to previous 2055 , to selected 3017
* sfz engine: added support for trigger=release and rt_decay


Revision 2055 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jan 30 10:30:02 2010 UTC (14 years, 2 months ago) by persson
File length: 20578 byte(s)
Diff to previous 2015 , to selected 3017
* sfz engine: added support for v2 multiple stage envelope generators
* sfz engine: added a fine-tuned v1 envelope generator instead of
  using the one from the gig engine


Revision 2015 - (view) (download) (annotate) - [select for diffs]
Modified Sun Oct 25 22:22:52 2009 UTC (14 years, 5 months ago) by iliev
File length: 19889 byte(s)
Diff to previous 2012 , to selected 3017
* Refactoring: moved the independent code from gig::Voice to base classes
* SoundFont format engine: implemented EG1 & EG2


Revision 2012 - (view) (download) (annotate) - [select for diffs]
Modified Fri Oct 23 17:53:17 2009 UTC (14 years, 5 months ago) by iliev
File length: 51253 byte(s)
Diff to previous 1923 , to selected 3017
* Refactoring: moved the independent code from
  the Gigasampler format engine to base classes
* SFZ format engine: experimental code (not usable yet)
* SoundFont format engine: experimental code (not usable yet)
* Fixed crash which may occur when MIDI key + transpose is out of range


Revision 1923 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jun 27 16:55:41 2009 UTC (14 years, 9 months ago) by persson
File length: 51138 byte(s)
Diff to previous 1895 , to selected 3017
* fixed crash happening when a pitch bend event arrived at the same
  time a new instrument was loading
* fixed building with sqlite installed in a non-standard directory


Revision 1895 - (view) (download) (annotate) - [select for diffs]
Modified Sun May 3 12:15:40 2009 UTC (14 years, 10 months ago) by persson
File length: 51127 byte(s)
Diff to previous 1862 , to selected 3017
* fixes for using large audio device buffers
* VST: added support for sample rate and buffer size changes
* VST: close editor (Fantasia) when the VST is removed
* minor fix in configure for mmsystem.h detection on MinGW
* removed warnings from gcc 4.4 and valgrind


Revision 1862 - (view) (download) (annotate) - [select for diffs]
Modified Wed Mar 11 19:03:37 2009 UTC (15 years ago) by persson
File length: 50630 byte(s)
Diff to previous 1858 , to selected 3017
* allow gig files to use unlimited downward pitch shifting
* added a limit check for upward pitch shifting


Revision 1858 - (view) (download) (annotate) - [select for diffs]
Modified Sun Mar 8 09:57:19 2009 UTC (15 years ago) by persson
File length: 50421 byte(s)
Diff to previous 1857 , to selected 3017
* optimized the DSSI plugin: all plugin instances now share the same
  disk streaming buffers
* added support for the "fine tune" and "pitch bend range"
  instrument-level gig parameters
* fixed minor artifacts in pitch bend handling


Revision 1857 - (view) (download) (annotate) - [select for diffs]
Modified Sat Mar 7 19:23:10 2009 UTC (15 years ago) by schoenebeck
File length: 50485 byte(s)
Diff to previous 1748 , to selected 3017
* fixed hanging notes which occured when note-off event had the exact
  same time stamp as the voice's note-on event and occured both in the
  same audio fragment cycle (fixes bug #112)
* bumped version to 0.5.1.11cvs


Revision 1748 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jun 22 14:46:46 2008 UTC (15 years, 9 months ago) by persson
File length: 50139 byte(s)
Diff to previous 1700 , to selected 3017
* bugfix: notes triggered at position 0 in the audio buffer were
  sometimes wrongly killed in the same buffer, causing no sound to be
  played
* fixes for audio drivers with varying buffer sizes
* Makefile fix: JACK_CFLAGS wasn't used
* JACK driver: use jack_client_open instead of the deprecated
  jack_client_new


Revision 1700 - (view) (download) (annotate) - [select for diffs]
Modified Sun Feb 17 12:40:59 2008 UTC (16 years, 1 month ago) by persson
File length: 49526 byte(s)
Diff to previous 1321 , to selected 3017
* added partial support for the "Controller Triggered" MIDI rule,
  enough for piano gigs with pedal noise samples


Revision 1321 - (view) (download) (annotate) - [select for diffs]
Modified Tue Sep 4 01:12:49 2007 UTC (16 years, 6 months ago) by schoenebeck
File length: 49298 byte(s)
Diff to previous 1259 , to selected 3017
* added highly experimental code for synchronizing instrument editors
  hosted in the sampler's process to safely edit instruments while playing
  without a crash (hopefully) by either suspending single regions wherever
  possible or - if unavoidable - whole engine(s)
* disk thread: queue sizes are now proportional to CONFIG_MAX_STREAMS
  instead of fix values
* removed legacy Makefiles in meanwhile deleted src/lib directory and its
  subdirectories
* bumped version to 0.4.0.7cvs


Revision 1259 - (view) (download) (annotate) - [select for diffs]
Modified Tue Jun 26 21:41:09 2007 UTC (16 years, 9 months ago) by schoenebeck
File length: 48232 byte(s)
Diff to previous 1181 , to selected 3017
* reenabled assembly features support, at the moment only for
  enabling a fast denormal FPU mode (x86 platforms supporting SSE2)
* bumped version to 0.4.0.6cvs


Revision 1181 - (view) (download) (annotate) - [select for diffs]
Modified Sat May 12 16:03:00 2007 UTC (16 years, 10 months ago) by schoenebeck
File length: 48237 byte(s)
Diff to previous 1038 , to selected 3017
* fixed compiler error when --enable-override-filter-type was
  supplied to the configure script (fixes #46)


Revision 1038 - (view) (download) (annotate) - [select for diffs]
Modified Sat Feb 3 15:33:00 2007 UTC (17 years, 1 month ago) by persson
File length: 48187 byte(s)
Diff to previous 1010 , to selected 3017
* playback is no longer disabled during instrument loading
* all notes playing on a channel that changes its instrument keep
  playing with the old instrument until they get a note off command
* new thread safety fix for lscp "load engine" and "set channel audio
  output device"


Revision 1010 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jan 6 11:02:58 2007 UTC (17 years, 2 months ago) by persson
File length: 48163 byte(s)
Diff to previous 1005 , to selected 3017
- fixed handling of MIDI volume change


Revision 1005 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 29 20:06:14 2006 UTC (17 years, 3 months ago) by schoenebeck
File length: 48210 byte(s)
Diff to previous 1001 , to selected 3017
* global volume can now be altered at runtime
  (added two new LSCP commands for this, LSCP specs updated)


Revision 1001 - (view) (download) (annotate) - [select for diffs]
Modified Wed Dec 27 16:17:08 2006 UTC (17 years, 3 months ago) by schoenebeck
File length: 48178 byte(s)
Diff to previous 950 , to selected 3017
* implemented effect sends (also added new LSCP commands for this feature,
  updated LSCP spec document along with this commit batch as well)


Revision 950 - (view) (download) (annotate) - [select for diffs]
Modified Tue Nov 28 20:09:48 2006 UTC (17 years, 4 months ago) by persson
File length: 48156 byte(s)
Diff to previous 947 , to selected 3017
* if a filter is used and EG2 finishes before EG1, let the voice die
  when EG2 has finished (this fixes a problem with clicks and voice
  starvation for some gigs)


Revision 947 - (view) (download) (annotate) - [select for diffs]
Modified Mon Nov 27 21:34:55 2006 UTC (17 years, 4 months ago) by schoenebeck
File length: 47979 byte(s)
Diff to previous 922 , to selected 3017
* implemented MIDI instrument mapping according to latest LSCP draft


Revision 922 - (view) (download) (annotate) - [select for diffs]
Modified Mon Oct 2 18:40:10 2006 UTC (17 years, 5 months ago) by persson
File length: 47949 byte(s)
Diff to previous 903 , to selected 3017
* small fix of LFO1 behaviour (dampening from max volume instead of
  amplifying from 0)
* added checks for bad MIDI data


Revision 903 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jul 22 14:22:53 2006 UTC (17 years, 8 months ago) by persson
File length: 47940 byte(s)
Diff to previous 877 , to selected 3017
* real support for 24 bit samples - samples are not truncated to 16
  bits anymore
* support for aftertouch (channel pressure, not polyphonic aftertouch)


Revision 877 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jun 25 13:54:17 2006 UTC (17 years, 9 months ago) by persson
File length: 47736 byte(s)
Diff to previous 865 , to selected 3017
* new filter implementation, which is more accurate and supports all
  filter types including bandreject and lowpass turbo


Revision 865 - (view) (download) (annotate) - [select for diffs]
Modified Sun May 14 07:15:52 2006 UTC (17 years, 10 months ago) by persson
File length: 48300 byte(s)
Diff to previous 841 , to selected 3017
* sample loop parameters are now taken from the DimensionRegion
  instead of the wave chunk
* fixed keyswitching for v3 gigs with a number of keyswitch splits not
  equal to a power of two


Revision 841 - (view) (download) (annotate) - [select for diffs]
Modified Sat Mar 4 16:23:53 2006 UTC (18 years ago) by persson
File length: 48126 byte(s)
Diff to previous 832 , to selected 3017
* fixed concurrency problems between the main thread doing
  lscp notifications and the lscp thread
* bug fix: the LFOs were not properly initialized


Revision 832 - (view) (download) (annotate) - [select for diffs]
Modified Sun Feb 5 10:24:05 2006 UTC (18 years, 1 month ago) by persson
File length: 47901 byte(s)
Diff to previous 831 , to selected 3017
* added smoothing of volume changes caused by control change messages
* fine tuning of the crossfade volume curve


Revision 831 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jan 28 16:55:30 2006 UTC (18 years, 2 months ago) by persson
File length: 46827 byte(s)
Diff to previous 830 , to selected 3017
* fixed global pan (CC10) which hasn't been working for a while
* fine tuning of the curves for volume (CC7) and pan (CC10 and gig
  parameter)
* added support for the "attenuation controller threshold" gig
  parameter


Revision 830 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jan 15 18:23:11 2006 UTC (18 years, 2 months ago) by persson
File length: 46624 byte(s)
Diff to previous 829 , to selected 3017
* added linear interpolation of volume modulation inside a
  subfragment; this prevents clicks during voice stealing. Can be
  switched off with the --disable-interpolate-volume configure option.


Revision 829 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jan 14 14:07:47 2006 UTC (18 years, 2 months ago) by schoenebeck
File length: 46098 byte(s)
Diff to previous 799 , to selected 3017
* implemented portamento mode and solo mode (a.k.a 'mono mode'):
  all modes can be altered via standard GM messages, that is CC5 for
  altering portamento time, CC65 for enabling / disabling portamento
  mode, CC126 for enabling solo mode and CC127 for disabling solo mode
* fixed EG3 (pitch envelope) synthesis which was neutral all the time
* configure.in: do not automatically pick optimized gcc flags if the user
  already provided some on his own (as CXXFLAGS)


Revision 799 - (view) (download) (annotate) - [select for diffs]
Modified Sat Nov 5 10:59:37 2005 UTC (18 years, 4 months ago) by persson
File length: 44849 byte(s)
Diff to previous 796 , to selected 3017
* Bug-fixes: pitch changes larger than one octave didn't work. Looped
  samples small enough to fit in RAM didn't work.


Revision 796 - (view) (download) (annotate) - [select for diffs]
Modified Sun Oct 30 08:35:13 2005 UTC (18 years, 5 months ago) by persson
File length: 45061 byte(s)
Diff to previous 791 , to selected 3017
* fixed voice stealing - stolen voices weren't killed


Revision 791 - (view) (download) (annotate) - [select for diffs]
Modified Sun Oct 16 14:50:20 2005 UTC (18 years, 5 months ago) by persson
File length: 44678 byte(s)
Diff to previous 783 , to selected 3017
* Filter tuning: calculation of cutoff frequency and bandwidth
  improved. Removed use of "BasicBPFilter". Changed bandpass filter
  from constant peak to constant skirt. Use gig parameter Resonance if
  no resonance controller is set. Removed keyboard tracking influence
  on resonance.


Revision 783 - (view) (download) (annotate) - [select for diffs]
Modified Sun Oct 2 14:40:52 2005 UTC (18 years, 5 months ago) by persson
File length: 44798 byte(s)
Diff to previous 781 , to selected 3017
* EG fixes: the length of "attack hold" stage was wrong. Release stage
  can now start before attack stage ends. Cancel release didn't work
  when sustain was zero.


Revision 781 - (view) (download) (annotate) - [select for diffs]
Modified Mon Sep 26 10:17:00 2005 UTC (18 years, 6 months ago) by schoenebeck
File length: 44740 byte(s)
Diff to previous 770 , to selected 3017
* fixed event handling bug which was introduced by the recent synthesis
  optimizations (events were only processed for the first active voice)
* added global volume attenuation of -9 dB (0.35f) to prevent clipping
  which can be overridden with --enable-global-attenuation


Revision 770 - (view) (download) (annotate) - [select for diffs]
Modified Sun Sep 11 15:56:29 2005 UTC (18 years, 6 months ago) by schoenebeck
File length: 44822 byte(s)
Diff to previous 769 , to selected 3017
* synthesis core optimizations


Revision 769 - (view) (download) (annotate) - [select for diffs]
Modified Sat Sep 3 11:14:30 2005 UTC (18 years, 6 months ago) by schoenebeck
File length: 42959 byte(s)
Diff to previous 768 , to selected 3017
* fixed endless loop which occured on MIDI control change
  and pitch bend events


Revision 768 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 2 20:11:55 2005 UTC (18 years, 6 months ago) by persson
File length: 42932 byte(s)
Diff to previous 738 , to selected 3017
* bug fixes for the new EG implementation


Revision 738 - (view) (download) (annotate) - [select for diffs]
Modified Tue Aug 16 17:14:25 2005 UTC (18 years, 7 months ago) by schoenebeck
File length: 43019 byte(s)
Diff to previous 729 , to selected 3017
* extensive synthesis optimization: reimplementation of EGs and LFO(s),
  removed synthesis parameter prerendering and the synthesis parameter
  matrix in general, splitting each audio fragment into subfragments now
  where each subfragment uses constant synthesis parameters
  (everything's still very buggy ATM)


Revision 729 - (view) (download) (annotate) - [select for diffs]
Modified Tue Jul 26 11:18:46 2005 UTC (18 years, 8 months ago) by persson
File length: 49925 byte(s)
Diff to previous 716 , to selected 3017
* improved filter cutoff calculation by adding support for the
  following gig parameters: Cutoff freq (used when no cutoff
  controller is defined), Control invert, Minimum cutoff, Velocity
  curve and Velocity range. The keyboard tracking now also scales
  cutoff frequency, not just resonance.


Revision 716 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jul 24 06:57:30 2005 UTC (18 years, 8 months ago) by iliev
File length: 48993 byte(s)
Diff to previous 696 , to selected 3017
* Added configure option --enable-process-muted-channels
which can be used to enable the processing of muted channels


Revision 696 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jul 16 19:37:52 2005 UTC (18 years, 8 months ago) by persson
File length: 48519 byte(s)
Diff to previous 687 , to selected 3017
* fine tuning of the EG modulation parameters


Revision 687 - (view) (download) (annotate) - [select for diffs]
Modified Tue Jul 12 22:37:21 2005 UTC (18 years, 8 months ago) by schoenebeck
File length: 48407 byte(s)
Diff to previous 669 , to selected 3017
* minor efficiency fix (LFO preprocessing was performed even though the
  respective LFO was disabled by the instrument patch)


Revision 669 - (view) (download) (annotate) - [select for diffs]
Modified Tue Jun 21 13:33:19 2005 UTC (18 years, 9 months ago) by schoenebeck
File length: 46441 byte(s)
Diff to previous 630 , to selected 3017
* fixed minor issue with null/silence samples
  (those stole voices even though they don't need a voice at all which
  resulted in "voice stealing didn't work out" messages)


Revision 630 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jun 11 14:51:49 2005 UTC (18 years, 9 months ago) by persson
File length: 52965 byte(s)
Diff to previous 617 , to selected 3017
* volume of release triggered samples now depends on note-on velocity,
  note length and gig parameter "release trigger decay" instead of
  note-off velocity.


Revision 617 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jun 8 21:00:06 2005 UTC (18 years, 9 months ago) by schoenebeck
File length: 52463 byte(s)
Diff to previous 614 , to selected 3017
* hand-crafted assembly optimization code can be disabled with
  './configure --disable-asm' (definitely not recommended)


Revision 614 - (view) (download) (annotate) - [select for diffs]
Modified Mon Jun 6 16:54:20 2005 UTC (18 years, 9 months ago) by persson
File length: 52449 byte(s)
Diff to previous 563 , to selected 3017
* support for the gig parameters for "release velocity response"
  curves, which means the decay and release times now depends on
  velocity. The softer velocity, the longer release.
* fine tuning of the envelope curves. Decay1 and release now have two
  parts, first linear and then exponential at the end.


Revision 563 - (view) (download) (annotate) - [select for diffs]
Modified Sun May 22 20:43:32 2005 UTC (18 years, 10 months ago) by schoenebeck
File length: 52012 byte(s)
Diff to previous 554 , to selected 3017
* (re)implemented voice stealing algorithm "oldestvoiceonkey" and made it
  the default voice stealing algorithm
* added new LSCP command "GET SERVER INFO" which currently returns
  description and version about this sampler
* added some API documentation comments
* minor cleanup


Revision 554 - (view) (download) (annotate) - [select for diffs]
Modified Thu May 19 19:25:14 2005 UTC (18 years, 10 months ago) by schoenebeck
File length: 51798 byte(s)
Diff to previous 460 , to selected 3017
* All compile time options are now centrally alterable as arguments to the
  ./configure script. All options are C Macros beginning with CONFIG_
  prefix and will be placed into auto generated config.h file.


Revision 460 - (view) (download) (annotate) - [select for diffs]
Modified Mon Mar 14 22:35:44 2005 UTC (19 years ago) by schoenebeck
File length: 51657 byte(s)
Diff to previous 438 , to selected 3017
* spawning layered voices now within a loop instead of recursively (fixes
  segmentation fault under heavy voice count load and reduces stress on the
  stack)
* voice stealing operates on all engine channels now
* limit voice stealing to MAX_AUDIO_VOICES thefts per audio fragment cycle
* fixed keygroup handling (layered voices could kill each other)


Revision 438 - (view) (download) (annotate) - [select for diffs]
Modified Wed Mar 9 22:12:15 2005 UTC (19 years ago) by persson
File length: 51825 byte(s)
Diff to previous 425 , to selected 3017
* 24-bit decompression now supports the 20 and 18 bit formats
* support for "random" and "round robin" dimensions
* removed a warning printout for empty samples during instrument
  loading


Revision 425 - (view) (download) (annotate) - [select for diffs]
Modified Sat Mar 5 07:27:48 2005 UTC (19 years ago) by persson
File length: 51276 byte(s)
Diff to previous 411 , to selected 3017
* fixed a bug that sometimes caused clicks at the beginning of samples
* added denormal number elimination for CPUs with SSE2 support


Revision 411 - (view) (download) (annotate) - [select for diffs]
Modified Sat Feb 26 02:01:14 2005 UTC (19 years, 1 month ago) by schoenebeck
File length: 51039 byte(s)
Diff to previous 407 , to selected 3017
* design change: using now one sampler engine instance and one disk thread
  instance for all sampler channels that are connected to the same audio
  output device (and are using the same engine type of course)
* added EngineFactory / EngineChannelFactory to remove the annoying build
  dependencies e.g. of the lscpserver to the actual sampler engine
  implementations
* bumped version to 0.3.0 (current CVS state is still quite broken,
  previous, stable CVS version was tagged as "v0_2_0" and is also available
  as source tarball)


Revision 407 - (view) (download) (annotate) - [select for diffs]
Modified Wed Feb 23 19:14:14 2005 UTC (19 years, 1 month ago) by persson
File length: 50532 byte(s)
Diff to previous 368 , to selected 3017
* added support for sample parameter 'attenuation'


Revision 368 - (view) (download) (annotate) - [select for diffs]
Modified Fri Feb 11 13:13:54 2005 UTC (19 years, 1 month ago) by schoenebeck
File length: 50485 byte(s)
Diff to previous 361 , to selected 3017
* some fixes regarding the filter (fixes the "silence" bug which occured
  occasionally, caused by random biquad parameters which lead to unstable
  filter equation and thus to infinit filter output results)


Revision 361 - (view) (download) (annotate) - [select for diffs]
Modified Wed Feb 9 01:22:18 2005 UTC (19 years, 1 month ago) by schoenebeck
File length: 50328 byte(s)
Diff to previous 354 , to selected 3017
* bunch of fixes for OSX (patch by Stephane Letz)


Revision 354 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jan 29 15:17:59 2005 UTC (19 years, 2 months ago) by schoenebeck
File length: 50206 byte(s)
Diff to previous 348 , to selected 3017
* support for keyswitching
* ignore if no sample was defined for region(s) or dimension region(s)
(patch by Andreas Persson)


Revision 348 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jan 23 21:24:16 2005 UTC (19 years, 2 months ago) by schoenebeck
File length: 50039 byte(s)
Diff to previous 335 , to selected 3017
* another crossfade fix (honoring AttenuationController for case 0,0,0,0,
  fixed cases in_start = in_end = CrossfadeControllerValue, fixed curve for
  cases out_start < CrossfadeControllerValue < out_end, honoring
  InvertAttenuationController parameter)
* support for up to 8 dimensions as introduced by Gig V3
(patch by Andreas Persson)


Revision 335 - (view) (download) (annotate) - [select for diffs]
Modified Mon Jan 3 02:48:25 2005 UTC (19 years, 2 months ago) by senkov
File length: 50100 byte(s)
Diff to previous 332 , to selected 3017
* Fixed pitch calculation. FineTune needs to be taken as is
 without multiplying it by 10.


Revision 332 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jan 1 03:06:06 2005 UTC (19 years, 3 months ago) by senkov
File length: 50105 byte(s)
Diff to previous 330 , to selected 3017
* Initialize the synthesis mode bitmask properly


Revision 330 - (view) (download) (annotate) - [select for diffs]
Modified Wed Dec 29 01:14:15 2004 UTC (19 years, 3 months ago) by schoenebeck
File length: 50054 byte(s)
Diff to previous 325 , to selected 3017
* fixed endless loop at the end of sample playback
  (patch by Andreas Persson)


Revision 325 - (view) (download) (annotate) - [select for diffs]
Modified Tue Dec 21 04:54:37 2004 UTC (19 years, 3 months ago) by senkov
File length: 49636 byte(s)
Diff to previous 324 , to selected 3017
* Added some profiling capabilities, bugs.


Revision 324 - (view) (download) (annotate) - [select for diffs]
Modified Sat Dec 18 18:54:46 2004 UTC (19 years, 3 months ago) by senkov
File length: 49882 byte(s)
Diff to previous 323 , to selected 3017
* Applied patch from Andreas Persson and made a few other small
 changes to fix a bug in the filter code.


Revision 323 - (view) (download) (annotate) - [select for diffs]
Modified Tue Dec 14 00:32:21 2004 UTC (19 years, 3 months ago) by schoenebeck
File length: 49882 byte(s)
Diff to previous 322 , to selected 3017
* fixed bug which caused samples not to be played back to their actual end
  (patch by Andreas Persson, added a small extra fix)


Revision 322 - (view) (download) (annotate) - [select for diffs]
Modified Mon Dec 13 03:33:59 2004 UTC (19 years, 3 months ago) by senkov
File length: 49262 byte(s)
Diff to previous 319 , to selected 3017
* fixed CalculateBiquadParameters() to set parameters for
 both right and left, not just left.


Revision 319 - (view) (download) (annotate) - [select for diffs]
Modified Mon Dec 13 00:46:42 2004 UTC (19 years, 3 months ago) by schoenebeck
File length: 49056 byte(s)
Diff to previous 287 , to selected 3017
* introduced 'synthesis mode' to reduce the amount of code and conditionals
  for the current synthesis case in the main synthesis loop
* support for MMX and SSE(1) in the core synthesis algorithms (CPU feature
  detection at runtime, only x86 so far)


Revision 287 - (view) (download) (annotate) - [select for diffs]
Modified Sat Oct 16 17:38:03 2004 UTC (19 years, 5 months ago) by schoenebeck
File length: 50637 byte(s)
Diff to previous 285 , to selected 3017
* fixed segfault which occured whenever a voice stole a voice and was in
  turn killed in the same audio fragment, to fix that the MIDI key
  informations are now updated only after all voices were processed


Revision 285 - (view) (download) (annotate) - [select for diffs]
Modified Thu Oct 14 21:31:26 2004 UTC (19 years, 5 months ago) by schoenebeck
File length: 50226 byte(s)
Diff to previous 271 , to selected 3017
* bunch of bugfixes (e.g. segfault on voice stealing)


Revision 271 - (view) (download) (annotate) - [select for diffs]
Modified Fri Oct 8 20:51:39 2004 UTC (19 years, 5 months ago) by schoenebeck
File length: 49959 byte(s)
Diff to previous 247 , to selected 3017
* libgig: fixed panorama value in DimensionRegion (invalid conversion
  from signed 7 bit to signed 8 bit)
* src/linuxsampler.cpp: stacktrace is now automatically shown on fatal
  errors (that is  segmentation faults, etc.), gdb should be installed for
  this to work
* gig::Voice: tiny accuracy fix of pan calculation
* replaced old pool classes by completely new ones which now offer
  Iterator abstraction


Revision 247 - (view) (download) (annotate) - [select for diffs]
Modified Sun Sep 19 23:44:23 2004 UTC (19 years, 6 months ago) by senkov
File length: 49675 byte(s)
Diff to previous 246 , to selected 3017
* Small fix to pan coeff. calculation.
* (LS was silent with gigs where pan was 0).


Revision 246 - (view) (download) (annotate) - [select for diffs]
Modified Sun Sep 19 14:12:55 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 49657 byte(s)
Diff to previous 245 , to selected 3017
just tidied up event type specific parameters (that is note-on specific
parameters, controle change specific parameters, etc.) in Event class


Revision 245 - (view) (download) (annotate) - [select for diffs]
Modified Sat Sep 18 14:12:36 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 49438 byte(s)
Diff to previous 244 , to selected 3017
* support patch panorama info


Revision 244 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 17 01:01:11 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 52393 byte(s)
Diff to previous 242 , to selected 3017
* added support for scale tuning via MIDI GS system exclusive message


Revision 242 - (view) (download) (annotate) - [select for diffs]
Modified Wed Sep 15 13:59:08 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 52350 byte(s)
Diff to previous 239 , to selected 3017
* added support for release trigger dimension (that is voices which are
  spawned when a key was released)
* libgig: bugfix in dimension region switching


Revision 239 - (view) (download) (annotate) - [select for diffs]
Modified Sun Sep 12 14:48:19 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 51972 byte(s)
Diff to previous 236 , to selected 3017
* implemented key groups (a.k.a exclusive groups) which is important for
  drum patches and monphonic instruments
* src/engines/gig/Engine.cpp: bugfix in ProcessNoteOn() - did not always
  stick the note on event to the respective key's own event list although
  e.g. the EGADRS expects it to find there


Revision 236 - (view) (download) (annotate) - [select for diffs]
Modified Thu Sep 9 18:44:18 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 51184 byte(s)
Diff to previous 233 , to selected 3017
* added support for crossfades
* support sample playback start offset


Revision 233 - (view) (download) (annotate) - [select for diffs]
Modified Tue Sep 7 09:32:21 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 48490 byte(s)
Diff to previous 230 , to selected 3017
* added support for layers
* fixed initial pitch calculation which did not honor the sample's own
  sample rate


Revision 230 - (view) (download) (annotate) - [select for diffs]
Modified Thu Sep 2 21:52:29 2004 UTC (19 years, 6 months ago) by schoenebeck
File length: 48007 byte(s)
Diff to previous 225 , to selected 3017
* src/engines/gig/Voice.cpp: dimension region selection takes current
  MIDI controller values into account


Revision 225 - (view) (download) (annotate) - [select for diffs]
Modified Sun Aug 22 14:46:47 2004 UTC (19 years, 7 months ago) by schoenebeck
File length: 43756 byte(s)
Diff to previous 111 , to selected 3017
* set default volume to 1.0 in Gigasampler engine (was 0.0)
* implemented "SET CHANNEL AUDIO_OUTPUT_CHANNEL" LSCP command
* fixed "GET ENGINE INFO" LSCP command
* fixed "GET CHANNEL INFO" LSCP command
* src/network/lscp.y: fixed 'stringval' rule (returned string with formal
  apostrophes), fixed 'dotnum' rule (ignored position after decimal point)


Revision 111 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jun 5 20:55:50 2004 UTC (19 years, 9 months ago) by schoenebeck
File length: 44058 byte(s)
Diff to previous 84 , to selected 3017
* LSCP allows now comment lines, that is lines starting with a hash ('#')
  character
* src/engines/gig/Voice.cpp: fixed "SET CHANNEL VOLUME" bug


Revision 84 - (view) (download) (annotate) - [select for diffs]
Modified Sun May 23 20:17:31 2004 UTC (19 years, 10 months ago) by schoenebeck
File length: 44034 byte(s)
Diff to previous 80 , to selected 3017
forgot to remove a redundant assignment (only a small efficiency issue)


Revision 80 - (view) (download) (annotate) - [select for diffs]
Modified Sun May 23 19:16:33 2004 UTC (19 years, 10 months ago) by schoenebeck
File length: 44091 byte(s)
Diff to previous 64 , to selected 3017
* biquad filter parameters are now calculated outside the interpolate
  loop for better performance
* couple of loop unroll optimizations
* filter is now enabled by default
* cubic interpolation is now enabled by default
* reduced debug level to 1 to lower verbosity
* raised default limit for voices to 128
* raised default limit for streams to 150
* added some compiler optimization flags (-ffast-math -march -mcpu)


Revision 64 - (view) (download) (annotate) - [select for diffs]
Modified Thu May 6 20:06:20 2004 UTC (19 years, 10 months ago) by schoenebeck
File length: 41850 byte(s)
Diff to previous 56 , to selected 3017
* src/Sampler.cpp: fixed 3 stupid but fatal bugs that left in the rush (in
  method SamplerChannels(), CreateAudioOutputDevice() and
  CreateMidiInputDevice())
* src/network/lscpserver.cpp: implemented LSCP command
  'SET CHANNEL MIDI_INPUT_CHANNEL'
* src/Sampler.h: moved enums 'audio_output_type_t', 'midi_input_type_t'
  and 'engine_type_t' into the respective base classes
  ('AudioOutputDevice', 'MidiInputDevice', 'Engine')


Revision 56 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 27 09:21:58 2004 UTC (19 years, 11 months ago) by schoenebeck
File length: 41850 byte(s)
Diff to previous 53 , to selected 3017
updated copyright header for 2004


Revision 53 - (view) (download) (annotate) - [select for diffs]
Added Mon Apr 26 17:15:51 2004 UTC (19 years, 11 months ago) by schoenebeck
File length: 41850 byte(s)
Diff to selected 3017
* completely restructured source tree
* implemented multi channel support
* implemented instrument manager, which controls sharing of instruments
  between multiple sampler engines / sampler channels
* created abstract classes 'AudioOutputDevice' and 'MidiInputDevice' for
  convenient implementation of further audio output driver and MIDI input
  driver for LinuxSampler
* implemented following LSCP commands: 'SET CHANNEL MIDI INPUT TYPE',
  'LOAD ENGINE', 'GET CHANNELS', 'ADD CHANNEL', 'REMOVE CHANNEL',
  'SET CHANNEL AUDIO OUTPUT TYPE'
* temporarily removed all command line options
* LSCP server is now launched by default


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