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

Log of /linuxsampler/trunk/src/engines/AbstractEngine.cpp

Parent Directory Parent Directory | Revision Log Revision Log


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

Revision 2931 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jul 9 14:38:33 2016 UTC (7 years, 8 months ago) by schoenebeck
File length: 32254 byte(s)
Diff to previous 2879 , to selected 2198
* Implemented built-in instrument script function "change_vol()".
* Implemented built-in instrument script function "change_tune()".
* Implemented built-in instrument script function "change_pan()".
* Bumped version (2.0.0.svn11).


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: 31496 byte(s)
Diff to previous 2611 , to selected 2198
* 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 2611 - (view) (download) (annotate) - [select for diffs]
Modified Mon Jun 9 19:20:37 2014 UTC (9 years, 9 months ago) by schoenebeck
File length: 31505 byte(s)
Diff to previous 2606 , to selected 2198
* Fixed crash when loading an instrument script.
* Fixed "init" script handler only to be executed once:
  when the script was loaded.
* Fixed aftertouch script event which always had value zero
  and controller number was set to aftertouch value instead.
* gig Engine: Fixed handling of "smartmidi" dimension, which
  was recognized as "unknown" dimension.
* Fixed script function gig_set_dim_zone(): was accessing
  wrong event.
* ls_instr_script command line tool: is now not limited to
  core language scripts, but can now also parse sampler format
  dependent instrument scripts, with the respective specific
  built-in script variables and functions.
* ScriptVM: Fixed runtime behavior of "and" and "or" binary
  script expressions, which also evaluated the right hand side
  of the expression even if the left hand side already failed
  the overall expression semantic to become true.
* Bumped version (1.0.0.svn46).


Revision 2606 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jun 8 05:42:56 2014 UTC (9 years, 9 months ago) by persson
File length: 31993 byte(s)
Diff to previous 2600 , to selected 2198
* removed usage of c++11 initializer that caused compilation errors on
  older compilers


Revision 2600 - (view) (download) (annotate) - [select for diffs]
Modified Sat Jun 7 00:16:03 2014 UTC (9 years, 9 months ago) by schoenebeck
File length: 31976 byte(s)
Diff to previous 2594 , to selected 2198
* Implemented built-in instrument script function "set_controller()".
* Fixed built-in script functions "ignore_event()" and
  "ignore_controller()".
* Added extended instrument script VM for the Gigasampler/GigaStudio format
  sampler engine, which extends the general instrument script VM with Giga
  format specific variables and functions.
* Giga format instrument scripts: added built-in script int constant
  variables $GIG_DIM_CHANNEL, $GIG_DIM_LAYER, $GIG_DIM_VELOCITY,
  $GIG_DIM_AFTERTOUCH, $GIG_DIM_RELEASE, $GIG_DIM_KEYBOARD,
  $GIG_DIM_ROUNDROBIN, $GIG_DIM_RANDOM, $GIG_DIM_SMARTMIDI,
  $GIG_DIM_ROUNDROBINKEY, $GIG_DIM_MODWHEEL, $GIG_DIM_BREATH,
  $GIG_DIM_FOOT, $GIG_DIM_PORTAMENTOTIME, $GIG_DIM_EFFECT1,
  $GIG_DIM_EFFECT2, $GIG_DIM_GENPURPOSE1, $GIG_DIM_GENPURPOSE2,
  $GIG_DIM_GENPURPOSE3, $GIG_DIM_GENPURPOSE4, $GIG_DIM_SUSTAIN,
  $GIG_DIM_PORTAMENTO, $GIG_DIM_SOSTENUTO, $GIG_DIM_SOFT,
  $GIG_DIM_GENPURPOSE5, $GIG_DIM_GENPURPOSE6, $GIG_DIM_GENPURPOSE7,
  $GIG_DIM_GENPURPOSE8, $GIG_DIM_EFFECT1DEPTH, $GIG_DIM_EFFECT2DEPTH,
  $GIG_DIM_EFFECT3DEPTH, $GIG_DIM_EFFECT4DEPTH, $GIG_DIM_EFFECT5DEPTH.
* Giga format instrument scripts: Implemented built-in script function
  "gig_set_dim_zone(event_id, dimension, zone)", which allows to override
  dimension zone(s) for new voices.
* Bumped version (1.0.0.svn45).


Revision 2594 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jun 5 00:16:25 2014 UTC (9 years, 9 months ago) by schoenebeck
File length: 31451 byte(s)
Diff to previous 2559 , to selected 2198
* ScriptVM (WIP): started to integrate real-time instrument script
  support into the sampler engine implementations. The code is
  shared among all sampler engines, however currently only the gig
  file format supports storing instrument scripts (as LinuxSampler
  extension to the original GigaStudio 4 file format).
* gig engine: Added support for loading instrument scripts from .gig
  files.
* ScriptVM (WIP): Implemented built-in script variables %CC, $CC_NUM,
  $EVENT_NOTE, $EVENT_VELOCITY, $VCC_MONO_AT, $VCC_PITCH_BEND.
* ScriptVM (WIP): Implemented execution of script event handler "init".
* ScriptVM (WIP): Implemented execution of script event handler
  "controller".
* Bumped version (1.0.0.svn42).


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: 31031 byte(s)
Diff to previous 2500 , to selected 2198
* 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 2500 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jan 10 12:20:05 2014 UTC (10 years, 2 months ago) by schoenebeck
File length: 31130 byte(s)
Diff to previous 2448 , to selected 2198
* Added support for multiple MIDI input ports per sampler channel (added
  various new C++ API methods for this new feature/design, old C++ API
  methods are now marked as deprecated but should still provide full
  behavior backward compatibility).
* LSCP Network interface: Added the following new LSCP commands for the new
  feature mentioned above: "ADD CHANNEL MIDI_INPUT",
  "REMOVE CHANNEL MIDI_INPUT" and "LIST CHANNEL MIDI_INPUTS". As with the
  C++ API changes, the old LSCP commands for MIDI input management are now
  marked as deprecated, but are still there and should provide full behavior
  backward compatibility.
* New LSCP specification document (LSCP v1.6).
* AbstractEngine::GSCheckSum(): don't allocate memory on the stack (was
  unsafe and caused compilation error with old clang 2.x).
* Bumped version (1.0.0.svn25).


Revision 2448 - (view) (download) (annotate) - [select for diffs]
Modified Fri May 3 14:26:32 2013 UTC (10 years, 10 months ago) by schoenebeck
File length: 30448 byte(s)
Diff to previous 2298 , to selected 2198
* Immediately apply scale tuning changes to active voices.
* Exposed scale tuning to C++ API (along to the already existing standard
  SysEx way).
* Bumped version to 1.0.0.svn21


Revision 2298 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 9 17:04:24 2011 UTC (12 years, 3 months ago) by iliev
File length: 30266 byte(s)
Diff to previous 2296 , to selected 2198
* use different EQ effect instance for every voice


Revision 2296 - (view) (download) (annotate) - [select for diffs]
Modified Thu Dec 8 20:03:47 2011 UTC (12 years, 3 months ago) by iliev
File length: 30315 byte(s)
Diff to previous 2198
* fixed crash when trying to create an effect instance with controls
  which min and/or max values depend on the sample rate
* experimental support for per voice equalization (work in progress)
* sfz engine: implemented opcodes eq1_freq, eq2_freq, eq3_freq,
  eq1_freqccN, eq2_freqccN, eq3_freqccN, eq1_bw, eq2_bw, eq3_bw,
  eq1_bwccN, eq2_bwccN, eq3_bwccN, eq1_gain, eq2_gain, eq3_gain,
  eq1_gainccN, eq2_gainccN, eq3_gainccN


Revision 2198 - (view) (download) (annotate) - [selected]
Modified Sun Jul 3 18:06:51 2011 UTC (12 years, 8 months ago) by iliev
File length: 30228 byte(s)
Diff to previous 2137
* bugfix: LSCP command "REMOVE FX_SEND EFFECT" was broken
* fixed a bug in FxSend::SetDestinationEffect
* bugfix: parent was not set when effect instance is appended
* bugfix: was able to remove effect chain while FX send is connected to it
* bugfix: was able to remove effect instance from effect chain while
  FX send is connected to that instance


Revision 2137 - (view) (download) (annotate) - [select for diffs]
Modified Mon Oct 4 12:20:23 2010 UTC (13 years, 5 months ago) by schoenebeck
File length: 30224 byte(s)
Diff to previous 2121 , to selected 2198
* revised previously added new LSCP commands regarding effect handling:
  renamed "master effects" to "send effects", since this is the actual
  correct common term for those effects
* also corrected the names regarding "send effects" in the respective
  methods of the "FxSsnd" class and "AudioOutputDevice" class of the
  sampler's C++ API, the old methods are still available but marked as
  deprecated and scheduled for removal
* added LSCP command "SET FX_SEND SEND_EFFECT <sampler_channel>
  <fx_send_id> <effect_chain> <chain_pos>"
* added LSCP command "REMOVE FX_SEND SEND_EFFECT <sampler_channel>
  <fx_send_id>"
* added a list of common known LADSPA paths (for Windows and POSIX) which
  will be automatically checked for being used as LADSPA plugin directory
  (if the user did not set the LADSPA_PATH environment variable explicitly)
* bumped version to 1.0.0.cvs8


Revision 2121 - (view) (download) (annotate) - [select for diffs]
Modified Tue Sep 14 17:09:08 2010 UTC (13 years, 6 months ago) by schoenebeck
File length: 30238 byte(s)
Diff to previous 2091 , to selected 2198
* implemented Roland GS NRPN 1ArrH which allows to set volume per note
* implemented Roland GS NRPN 1CrrH which allows to set pan per note
* implemented Roland GS NRPN 1DrrH which allows to set reverb send per
  note (in this implementation of the sampler its simply hard routed to
  the 1st effect send of the sampler channel, no matter what the actual
  effect type is)
* implemented Roland GS NRPN 1ErrH which allows to set chorus send per
  note (in this implementation of the sampler its simply hard routed to
  the 2nd effect send of the sampler channel, no matter what the actual
  effect type is)
* bumped version to 1.0.0cvs4


Revision 2091 - (view) (download) (annotate) - [select for diffs]
Modified Sat May 15 09:02:31 2010 UTC (13 years, 10 months ago) by persson
File length: 27666 byte(s)
Diff to previous 2012 , to selected 2198
* sfz engine: reduced memory usage for sfz data


Revision 2012 - (view) (download) (annotate) - [select for diffs]
Added Fri Oct 23 17:53:17 2009 UTC (14 years, 5 months ago) by iliev
File length: 27634 byte(s)
Diff to selected 2198
* 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


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