ViewVC logotype

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

Parent Directory Parent Directory | Revision Log Revision Log

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

Revision 319 - (view) (download) (annotate) - [select for diffs]
Modified Mon Dec 13 00:46:42 2004 UTC (13 years, 9 months ago) by schoenebeck
File length: 50284 byte(s)
Diff to previous 293
* 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 293 - (view) (download) (annotate) - [select for diffs]
Modified Mon Oct 25 15:14:27 2004 UTC (13 years, 11 months ago) by schoenebeck
File length: 50240 byte(s)
Diff to previous 287
* gig::Engine: changed way how events make it from the input event queue
  into the engine's process chain (fixes forced segfault in EGADSR)
* Event.h: using signed type for fragment position for easier
  differentiation if event might happened before or after current fragment

Revision 287 - (view) (download) (annotate) - [select for diffs]
Modified Sat Oct 16 17:38:03 2004 UTC (13 years, 11 months ago) by schoenebeck
File length: 49384 byte(s)
Diff to previous 285
* 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 (13 years, 11 months ago) by schoenebeck
File length: 47655 byte(s)
Diff to previous 271
* 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 (13 years, 11 months ago) by schoenebeck
File length: 47022 byte(s)
Diff to previous 250
* 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 250 - (view) (download) (annotate) - [select for diffs]
Modified Mon Sep 20 00:31:13 2004 UTC (14 years ago) by schoenebeck
File length: 46019 byte(s)
Diff to previous 246
* added first two experimental voice stealing algorithms ('oldestkey' -
which just steals the oldest voice on the oldest key and 'keymask' - which
tries to pick the oldest voice on the same key where the new voice should
be spawned, if it fails it behaves like 'oldestkey'), the desired algorithm
can be selected at compile time (see Engine.h) will be configurable via
LSCP soon though

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

Revision 244 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 17 01:01:11 2004 UTC (14 years ago) by schoenebeck
File length: 39318 byte(s)
Diff to previous 242
* 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 (14 years ago) by schoenebeck
File length: 33868 byte(s)
Diff to previous 239
* 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 (14 years ago) by schoenebeck
File length: 32886 byte(s)
Diff to previous 233
* 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 233 - (view) (download) (annotate) - [select for diffs]
Modified Tue Sep 7 09:32:21 2004 UTC (14 years ago) by schoenebeck
File length: 30688 byte(s)
Diff to previous 225
* added support for layers
* fixed initial pitch calculation which did not honor the sample's own
  sample rate

Revision 225 - (view) (download) (annotate) - [select for diffs]
Modified Sun Aug 22 14:46:47 2004 UTC (14 years, 1 month ago) by schoenebeck
File length: 29995 byte(s)
Diff to previous 133
* set default volume to 1.0 in Gigasampler engine (was 0.0)
* 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 133 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jun 18 14:29:02 2004 UTC (14 years, 3 months ago) by capela
File length: 28139 byte(s)
Diff to previous 123
* Load Instrument patch applied; this patch makes the
  LOAD INSTRUMENT command to return immediately,
  almost/always with an OK response, while spawning
  the proper instrument file loading in the background.

  set; the instrument status value holds the load progress
  percentage if positive, otherwise a negative value is
  evidence of a load exception error.

* VERSION is now set to 0.2.

Revision 123 - (view) (download) (annotate) - [select for diffs]
Modified Mon Jun 14 19:33:16 2004 UTC (14 years, 3 months ago) by schoenebeck
File length: 27883 byte(s)
Diff to previous 112
* src/common: added template class 'optional<>' which can be used e.g. as
  return type whenever a value might be returned, but don't has to; this
  template class pretty much acts like a pointer of the given type, but is
  much more safer than a simple pointer
* src/audiodriver: added static class AudioDeviceFactory to create audio
  devices at runtime by using a string and to obtain driver informations
  of drivers at runtime, driver classes should simply use the macro
  REGISTER_AUDIO_OUTPUT_DRIVER(DriverName,DriverClass) in their cpp file
  to register the driver to LinuxSampler (no changes needed anymore in the
  LS code to add a new audio output driver)
* src/drivers: added classes to dynamically manage driver parameters; there
  are two different kinds of parameters: parameters which are need to
  create a new device (DeviceCreationParameterX) used to e.g. create an
  audio output device or a MIDI input device and parameters which are only
  available at runtime, means when a device is already created
  (DeviceRuntimeParameterX) which will be e.g. used as audio channel
  parameters and MIDI port parameters
* src/linuxsampler.cpp: all registered audio output drivers will be shown
  on the console on startup
* src/network: implemented configuration of audio output devices via LSCP

Revision 112 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jun 6 20:57:28 2004 UTC (14 years, 3 months ago) by senkov
File length: 27788 byte(s)
Diff to previous 80
* Added methods for CHANNEL_INFO command

Revision 80 - (view) (download) (annotate) - [select for diffs]
Modified Sun May 23 19:16:33 2004 UTC (14 years, 4 months ago) by schoenebeck
File length: 27463 byte(s)
Diff to previous 64
* 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 (14 years, 4 months ago) by schoenebeck
File length: 26751 byte(s)
Diff to previous 56
* src/Sampler.cpp: fixed 3 stupid but fatal bugs that left in the rush (in
  method SamplerChannels(), CreateAudioOutputDevice() and
* src/network/lscpserver.cpp: implemented LSCP command
* 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 (14 years, 5 months ago) by schoenebeck
File length: 26751 byte(s)
Diff to previous 53
updated copyright header for 2004

Revision 53 - (view) (download) (annotate) - [select for diffs]
Added Mon Apr 26 17:15:51 2004 UTC (14 years, 5 months ago) by schoenebeck
File length: 26751 byte(s)
* 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',
* 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