Log of /linuxsampler/trunk/src/engines/common
Directory Listing
Revision
885 -
Directory Listing
Modified
Wed Jun 28 19:32:21 2006 UTC
(17 years, 11 months ago)
by
schoenebeck
* various fixes to allow liblinuxsampler to be used
(as a native C++ library)
Revision
880 -
Directory Listing
Modified
Tue Jun 27 22:57:37 2006 UTC
(17 years, 11 months ago)
by
schoenebeck
just some refactoring work:
- renamed class LinuxSamplerException -> Exception
- encapsulated LS API relevant files into LS namespace
- removed unnecessary header inclusions
Revision
791 -
Directory Listing
Modified
Sun Oct 16 14:50:20 2005 UTC
(18 years, 8 months ago)
by
persson
* 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
741 -
Directory Listing
Modified
Tue Aug 16 17:20:55 2005 UTC
(18 years, 10 months ago)
by
schoenebeck
- deleted LFO.h
- added LFOBase.h, LFOTriangleDiHarmonic.h,
LFOTriangleIntAbsMath.h and LFOTriangleIntMath.h
Revision
738 -
Directory Listing
Modified
Tue Aug 16 17:14:25 2005 UTC
(18 years, 10 months ago)
by
schoenebeck
* 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
722 -
Directory Listing
Modified
Sun Jul 24 19:45:15 2005 UTC
(18 years, 10 months ago)
by
schoenebeck
just a little API doc change
Revision
721 -
Directory Listing
Modified
Sun Jul 24 19:44:44 2005 UTC
(18 years, 10 months ago)
by
schoenebeck
- fixed di-harmonic triangle LFO implementation
- calculated exact amplitude coefficient of 2nd harmonic
Revision
720 -
Directory Listing
Modified
Sun Jul 24 18:22:56 2005 UTC
(18 years, 10 months ago)
by
senkov
Added a variation of LFOTriangleIntMath using abs()
Revision
719 -
Directory Listing
Modified
Sun Jul 24 16:48:11 2005 UTC
(18 years, 10 months ago)
by
senkov
Adjusted code to build on gcc (GCC) 3.4.3-20050110
Revision
718 -
Directory Listing
Modified
Sun Jul 24 15:05:30 2005 UTC
(18 years, 10 months ago)
by
schoenebeck
fixed integer math implementation of triangle LFO
Revision
717 -
Directory Listing
Modified
Sun Jul 24 10:26:17 2005 UTC
(18 years, 10 months ago)
by
schoenebeck
Added "real" implementations of the triangle LFOs. Unfortunately
I introduced some bugs - the output results don't look like they should.
This has to be fixed.
Revision
713 -
Directory Listing
Modified
Thu Jul 21 20:50:45 2005 UTC
(18 years, 11 months ago)
by
schoenebeck
oops, did I screw indention here? ;)
Revision
705 -
Directory Listing
Modified
Wed Jul 20 21:43:23 2005 UTC
(18 years, 11 months ago)
by
schoenebeck
* support for muting sampler channels and solo mode of the same, two new
LSCP commands ("SET CHANNEL MUTE" and "SET CHANNEL SOLO") and two new
fields ("MUTE" and "SOLO") for command "GET CHANNEL INFO" were
introduced for this (patch by Grigor Iliev, a bit adjusted)
Revision
685 -
Directory Listing
Modified
Tue Jul 5 19:30:37 2005 UTC
(18 years, 11 months ago)
by
persson
* gcc 4.0 compilation fixes
Revision
675 -
Directory Listing
Modified
Wed Jun 22 22:09:28 2005 UTC
(18 years, 11 months ago)
by
schoenebeck
* update MIDI channel info on program change
Revision
670 -
Directory Listing
Modified
Tue Jun 21 18:00:52 2005 UTC
(19 years ago)
by
schoenebeck
* don't reset volume, pan, pitch and MIDI controller values on instrument
or audio output device change
* send 'CHANNEL_INFO' LSCP event on MIDI program change messages
Revision
660 -
Directory Listing
Modified
Fri Jun 17 19:49:30 2005 UTC
(19 years ago)
by
schoenebeck
* LSCP server: fixed LSCP event "CHANNEL_INFO" notification
(e.g. did not notify on volume changes)
Revision
654 -
Directory Listing
Modified
Wed Jun 15 20:25:25 2005 UTC
(19 years ago)
by
schoenebeck
* fixed 'make dist' build rule to include all necessary files
Revision
617 -
Directory Listing
Modified
Wed Jun 8 21:00:06 2005 UTC
(19 years ago)
by
schoenebeck
* hand-crafted assembly optimization code can be disabled with
'./configure --disable-asm' (definitely not recommended)
Revision
563 -
Directory Listing
Modified
Sun May 22 20:43:32 2005 UTC
(19 years, 1 month ago)
by
schoenebeck
* (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
510 -
Directory Listing
Modified
Wed May 4 12:02:35 2005 UTC
(19 years, 1 month ago)
by
schoenebeck
* autotools build fixes for PPC architecture
Revision
504 -
Directory Listing
Modified
Tue May 3 00:37:35 2005 UTC
(19 years, 1 month ago)
by
schoenebeck
* removed statically included libgig sources from the LinuxSampler code
base - you now have to compile and install libgig separately
* added -Wreturn-type gcc switch to avoid bugs with no returns on non void
functions in future
Revision
502 -
Directory Listing
Modified
Fri Apr 29 14:20:22 2005 UTC
(19 years, 1 month ago)
by
letz
Fix destructor
Revision
497 -
Directory Listing
Modified
Sun Apr 10 11:55:44 2005 UTC
(19 years, 2 months ago)
by
persson
* removed some build warnings
* fixed a bug with hanging notes when using sustain pedal
* release samples are not triggered anymore when sustain pedal is down
Revision
475 -
Directory Listing
Modified
Thu Mar 17 23:56:56 2005 UTC
(19 years, 3 months ago)
by
schoenebeck
* fixed segmentation fault on "GET CHANNEL INFO" commands which occured
when an engine type was selected but no audio device connected yet to
the sampler channel (fixes bug #4)
Revision
412 -
Directory Listing
Modified
Sat Feb 26 22:44:51 2005 UTC
(19 years, 3 months ago)
by
schoenebeck
* gig::Engine: fixed silence (engine channels' events were not imported
into the engine, fixed undesired creation of new gig::Engine instances
(and disk threads)
* AudioOutputDevice: reverted behavior to render per Engine instance (and
not per EngineChannel instance)
Revision
411 -
Directory Listing
Modified
Sat Feb 26 02:01:14 2005 UTC
(19 years, 3 months ago)
by
schoenebeck
* 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
392 -
Directory Listing
Modified
Sat Feb 19 02:40:24 2005 UTC
(19 years, 4 months ago)
by
schoenebeck
* fixed possibility that memory got not locked
* immediately set instrument status when calling LOAD INSTUMENT NON_MODAL
Revision
376 -
Directory Listing
Modified
Sat Feb 12 23:48:50 2005 UTC
(19 years, 4 months ago)
by
senkov
* Added INSTRUMENT_NAME to GET CHANNEL INFO command result set
Revision
361 -
Directory Listing
Modified
Wed Feb 9 01:22:18 2005 UTC
(19 years, 4 months ago)
by
schoenebeck
* bunch of fixes for OSX (patch by Stephane Letz)
Revision
329 -
Directory Listing
Modified
Tue Dec 28 09:43:04 2004 UTC
(19 years, 5 months ago)
by
senkov
* Fixes for engine reloading. Fixed streaming bugs in some
cases only, most probably not all yet.
Revision
328 -
Directory Listing
Modified
Sat Dec 25 21:58:58 2004 UTC
(19 years, 5 months ago)
by
schoenebeck
* architecture independence fixes, should now compile again for non x86
systems
* tiny fix of command line switch --version
Revision
324 -
Directory Listing
Modified
Sat Dec 18 18:54:46 2004 UTC
(19 years, 6 months ago)
by
senkov
* Applied patch from Andreas Persson and made a few other small
changes to fix a bug in the filter code.
Revision
320 -
Directory Listing
Modified
Mon Dec 13 00:53:16 2004 UTC
(19 years, 6 months ago)
by
schoenebeck
* 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
319 -
Directory Listing
Modified
Mon Dec 13 00:46:42 2004 UTC
(19 years, 6 months ago)
by
schoenebeck
* 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 -
Directory Listing
Modified
Mon Oct 25 15:14:27 2004 UTC
(19 years, 7 months ago)
by
schoenebeck
* 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
292 -
Directory Listing
Modified
Mon Oct 25 14:59:18 2004 UTC
(19 years, 7 months ago)
by
schoenebeck
encapsulated error message into quotation marks
Revision
288 -
Directory Listing
Modified
Tue Oct 19 00:36:34 2004 UTC
(19 years, 8 months ago)
by
schoenebeck
* configure.in: added check for UNIX98 compatibility, check if there's at
least one supported MIDI input and audio output system available, added
conditionals for ALSA and JACK
* src/drivers/audio/Makefile.am: ALSA and JACK drivers are only compiled
respectively if they're supported by the system
* MidiInputDeviceFactory.cpp, AudioOutputDeviceFactory.cpp: little
workaround for reported linker problem
* removed autotools generated files from CVS
Revision
271 -
Directory Listing
Modified
Fri Oct 8 20:51:39 2004 UTC
(19 years, 8 months ago)
by
schoenebeck
* 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
268 -
Directory Listing
Modified
Thu Oct 7 22:20:20 2004 UTC
(19 years, 8 months ago)
by
capela
* gcc-c++ 3.4.1 compability fixes.
Revision
250 -
Directory Listing
Modified
Mon Sep 20 00:31:13 2004 UTC
(19 years, 9 months ago)
by
schoenebeck
* 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 -
Directory Listing
Modified
Sun Sep 19 14:12:55 2004 UTC
(19 years, 9 months ago)
by
schoenebeck
just tidied up event type specific parameters (that is note-on specific
parameters, controle change specific parameters, etc.) in Event class
Revision
244 -
Directory Listing
Modified
Fri Sep 17 01:01:11 2004 UTC
(19 years, 9 months ago)
by
schoenebeck
* added support for scale tuning via MIDI GS system exclusive message
Revision
225 -
Directory Listing
Modified
Sun Aug 22 14:46:47 2004 UTC
(19 years, 9 months ago)
by
schoenebeck
* 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
205 -
Directory Listing
Modified
Tue Jul 13 23:16:40 2004 UTC
(19 years, 11 months ago)
by
schoenebeck
accidently commited this file
Revision
203 -
Directory Listing
Modified
Tue Jul 13 22:44:13 2004 UTC
(19 years, 11 months ago)
by
schoenebeck
forgot to change some things which was mandatory due to the recent
directory movements ('/src/audiodriver' -> '/src/drivers/audio',
'/src/mididriver' -> '/src/drivers/midi')
Revision
133 -
Directory Listing
Modified
Fri Jun 18 14:29:02 2004 UTC
(20 years ago)
by
capela
* 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.
* New INSTRUMENT_STATUS field on GET CHANNEL INFO result
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
112 -
Directory Listing
Modified
Sun Jun 6 20:57:28 2004 UTC
(20 years ago)
by
senkov
* Added methods for CHANNEL_INFO command
Revision
80 -
Directory Listing
Modified
Sun May 23 19:16:33 2004 UTC
(20 years ago)
by
schoenebeck
* 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 -
Directory Listing
Modified
Thu May 6 20:06:20 2004 UTC
(20 years, 1 month ago)
by
schoenebeck
* 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
57 -
Directory Listing
Modified
Sun May 2 17:45:43 2004 UTC
(20 years, 1 month ago)
by
schoenebeck
* src/common/Thread.cpp: method StartThread() now blocks until thread
actually runs, mlockall() will only be applied for realtime threads
* libtoolized liblinuxsampler
* initiated automatic unit tests against the LinuxSampler codebase
(see src/testcases): already added a couple of tests for the Thread and
Mutex classes, you have to explicitly compile the unit tests by running
'make testcases' (you need to have cppunit installed though) and then you
can run the console version of the test runner by calling
'src/testcases/linuxsamplertest'
* src/Sampler.h: added API documentation
Revision
56 -
Directory Listing
Modified
Tue Apr 27 09:21:58 2004 UTC
(20 years, 1 month ago)
by
schoenebeck
updated copyright header for 2004
Revision
53 -
Directory Listing
Added
Mon Apr 26 17:15:51 2004 UTC
(20 years, 1 month ago)
by
schoenebeck
* 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