/[svn]/linuxsampler/trunk
ViewVC logotype

Log of /linuxsampler/trunk

View Directory Listing Directory Listing


Sticky Revision:

Revision 777 - Directory Listing
Modified Wed Sep 21 19:06:35 2005 UTC (18 years, 6 months ago) by iliev
- Added support for sostenuto pedal


Revision 776 - Directory Listing
Modified Wed Sep 21 19:05:41 2005 UTC (18 years, 6 months ago) by iliev
* Added support for sostenuto pedal


Revision 775 - Directory Listing
Modified Wed Sep 21 14:30:43 2005 UTC (18 years, 6 months ago) by schoenebeck
* src/drivers/MidiInputPort.cpp: fixed legacy SysEx code which caused
  dispatching of MIDI SysEx messages several times instead of once
* src/engines/gig/Engine.cpp: fixed bug in SysEx handling
  (patch by Juan Linietsky)


Revision 770 - Directory Listing
Modified Sun Sep 11 15:56:29 2005 UTC (18 years, 6 months ago) by schoenebeck
* synthesis core optimizations


Revision 769 - Directory Listing
Modified Sat Sep 3 11:14:30 2005 UTC (18 years, 6 months ago) by schoenebeck
* fixed endless loop which occured on MIDI control change
  and pitch bend events


Revision 768 - Directory Listing
Modified Fri Sep 2 20:11:55 2005 UTC (18 years, 6 months ago) by persson
* bug fixes for the new EG implementation


Revision 741 - Directory Listing
Modified Tue Aug 16 17:20:55 2005 UTC (18 years, 7 months ago) by schoenebeck
-  deleted LFO.h
- added LFOBase.h, LFOTriangleDiHarmonic.h,
  LFOTriangleIntAbsMath.h and LFOTriangleIntMath.h


Revision 740 - Directory Listing
Modified Tue Aug 16 17:17:52 2005 UTC (18 years, 7 months ago) by schoenebeck
deleted Manipulator.h


Revision 739 - Directory Listing
Modified Tue Aug 16 17:16:24 2005 UTC (18 years, 7 months ago) by schoenebeck
not in use anymore since LFO(s) were reimplemented


Revision 738 - Directory Listing
Modified Tue Aug 16 17:14:25 2005 UTC (18 years, 7 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 737 - Directory Listing
Modified Tue Aug 16 16:50:00 2005 UTC (18 years, 7 months ago) by schoenebeck
added GCCs C++ language extension for Min and Max


Revision 730 - Directory Listing
Modified Sat Jul 30 08:18:08 2005 UTC (18 years, 7 months ago) by iliev
* Added CHANNEL_INFO notification when engine is assigned to
sampler channel with no midi and audio device set (Fixes bug #22)


Revision 729 - Directory Listing
Modified Tue Jul 26 11:18:46 2005 UTC (18 years, 7 months ago) by persson
* 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 727 - Directory Listing
Modified Mon Jul 25 15:18:44 2005 UTC (18 years, 7 months ago) by schoenebeck
* fixed little inconsistency: LSCP commands 'LIST AVAILABLE_ENGINES' and
  'GET CHANNEL INFO' returned different names for the gig::Engine,
  returning now only 'GIG'


Revision 726 - Directory Listing
Modified Mon Jul 25 15:13:59 2005 UTC (18 years, 7 months ago) by schoenebeck
fixed little bug regarding LFO benchmarking


Revision 725 - Directory Listing
Modified Mon Jul 25 11:33:14 2005 UTC (18 years, 7 months ago) by schoenebeck
updated copyright


Revision 724 - Directory Listing
Modified Mon Jul 25 09:28:00 2005 UTC (18 years, 7 months ago) by iliev
- Fixed some typos


Revision 723 - Directory Listing
Modified Sun Jul 24 20:01:39 2005 UTC (18 years, 7 months ago) by schoenebeck
oops, don't bother the user with RAW files ;)


Revision 722 - Directory Listing
Modified Sun Jul 24 19:45:15 2005 UTC (18 years, 7 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, 7 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, 7 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, 7 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, 7 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, 7 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 716 - Directory Listing
Modified Sun Jul 24 06:57:30 2005 UTC (18 years, 7 months ago) by iliev
* Added configure option --enable-process-muted-channels
which can be used to enable the processing of muted channels


Revision 715 - Directory Listing
Modified Sat Jul 23 21:57:36 2005 UTC (18 years, 8 months ago) by schoenebeck
added benchmark to automatically detect the best triangle LFO
implementation (currently either an integer math solution or a
di-harmonic approximation), automatic detection can be overriden
with --enable-signed-triang-algo=x and --enable-unsigned-triang-algo=x
configure script argument though (mandatory for cross-compilation)
---
actual implementation of the new LFO implementations in LS will follow soon


Revision 714 - Directory Listing
Modified Sat Jul 23 21:55:38 2005 UTC (18 years, 8 months ago) by schoenebeck
added benchmark to automatically detect the best triangle LFO
implementation (currently either an integer math solution or a
di-harmonic approximation), automatic detection can be overriden
with --enable-signed-triang-algo=x and --enable-unsigned-triang-algo=x
configure script argument though (mandatory for cross-compilation)
---
actual implementations of the new LFO solutions in LS will follow soon


Revision 713 - Directory Listing
Modified Thu Jul 21 20:50:45 2005 UTC (18 years, 8 months ago) by schoenebeck
oops, did I screw indention here? ;)


Revision 711 - Directory Listing
Modified Thu Jul 21 09:53:20 2005 UTC (18 years, 8 months ago) by schoenebeck
updated ChangeLog to Grigor's latest changes


Revision 709 - Directory Listing
Modified Thu Jul 21 09:36:52 2005 UTC (18 years, 8 months ago) by schoenebeck
just updated date


Revision 707 - Directory Listing
Modified Thu Jul 21 08:38:15 2005 UTC (18 years, 8 months ago) by iliev
* Fixed app exit on Broken pipe error (Fixes bug #20)


Revision 706 - Directory Listing
Modified Thu Jul 21 08:34:46 2005 UTC (18 years, 8 months ago) by iliev
- Added info about mute and solo functions


Revision 705 - Directory Listing
Modified Wed Jul 20 21:43:23 2005 UTC (18 years, 8 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 704 - Directory Listing
Modified Wed Jul 20 10:52:23 2005 UTC (18 years, 8 months ago) by schoenebeck
slight adjustment on license terms


Revision 701 - Directory Listing
Modified Tue Jul 19 16:16:56 2005 UTC (18 years, 8 months ago) by schoenebeck
updated Copyright and License terms


Revision 700 - Directory Listing
Modified Tue Jul 19 16:03:12 2005 UTC (18 years, 8 months ago) by schoenebeck
make renamed file 'Doxygen.in' and new file 'linuxsampler.pc.in' part
of the release tarball as well


Revision 699 - Directory Listing
Modified Tue Jul 19 16:01:09 2005 UTC (18 years, 8 months ago) by schoenebeck
make new Debian packaging files part of the tarball release as well


Revision 698 - Directory Listing
Modified Tue Jul 19 15:51:19 2005 UTC (18 years, 8 months ago) by schoenebeck
Debian packaging changes:
- Updated packaging files for the library nature of LinuxSampler.
- Automatically generate Doxygen API documentation.


Revision 697 - Directory Listing
Modified Tue Jul 19 15:43:40 2005 UTC (18 years, 8 months ago) by schoenebeck
* install necessary development header files for allowing 3rd party
  applications to link against liblinuxsampler
* liblinuxsampler's API documentation can be generated with 'make docs'
  (Doxygen required)


Revision 696 - Directory Listing
Modified Sat Jul 16 19:37:52 2005 UTC (18 years, 8 months ago) by persson
* fine tuning of the EG modulation parameters


Revision 692 - Directory Listing
Modified Fri Jul 15 16:59:35 2005 UTC (18 years, 8 months ago) by schoenebeck
* preparation for bugfix release 0.3.3


Revision 691 - Directory Listing
Modified Fri Jul 15 16:55:01 2005 UTC (18 years, 8 months ago) by schoenebeck
another minor update of the man page


Revision 690 - Directory Listing
Modified Fri Jul 15 16:43:56 2005 UTC (18 years, 8 months ago) by schoenebeck
just to clearify that the previous change refers to voice stealing


Revision 689 - Directory Listing
Modified Fri Jul 15 15:13:01 2005 UTC (18 years, 8 months ago) by schoenebeck
updated man page a bit


Revision 688 - Directory Listing
Modified Thu Jul 14 12:25:20 2005 UTC (18 years, 8 months ago) by schoenebeck
* if period time of chosen audio device is too small (< MIN_RELEASE_TIME)
  then simply show a warning about possible click sounds and reduce the
  volume ramp down appropriately instead of cancelling the audio device
  connection


Revision 687 - Directory Listing
Modified Tue Jul 12 22:37:21 2005 UTC (18 years, 8 months ago) by schoenebeck
* minor efficiency fix (LFO preprocessing was performed even though the
  respective LFO was disabled by the instrument patch)


Revision 686 - Directory Listing
Modified Mon Jul 11 19:12:54 2005 UTC (18 years, 8 months ago) by schoenebeck
oops, the last change is not contained in release 0.3.2


Revision 685 - Directory Listing
Modified Tue Jul 5 19:30:37 2005 UTC (18 years, 8 months ago) by persson
* gcc 4.0 compilation fixes


Revision 678 - Directory Listing
Modified Thu Jun 23 22:50:49 2005 UTC (18 years, 8 months ago) by capela
RPM .spec ready on 0.3.2 bugfix release.


Revision 677 - Directory Listing
Modified Thu Jun 23 22:44:59 2005 UTC (18 years, 8 months ago) by schoenebeck
* final preparations for bugfix release 0.3.2


Revision 676 - Directory Listing
Modified Wed Jun 22 22:13:08 2005 UTC (18 years, 9 months ago) by schoenebeck
updated to latest LSCPServer constructor change
(IP address and TCP port as argument)


Revision 675 - Directory Listing
Modified Wed Jun 22 22:09:28 2005 UTC (18 years, 9 months ago) by schoenebeck
* update MIDI channel info on program change


Revision 670 - Directory Listing
Modified Tue Jun 21 18:00:52 2005 UTC (18 years, 9 months 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 669 - Directory Listing
Modified Tue Jun 21 13:33:19 2005 UTC (18 years, 9 months ago) by schoenebeck
* 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 668 - Directory Listing
Modified Mon Jun 20 15:30:47 2005 UTC (18 years, 9 months ago) by schoenebeck
* fixed a key group bug which caused undefined behavior in conjunction with
  stolen voices (this case was usually followed by a "killed voice
  survived" or "voice stealing didn't work out" error message)


Revision 667 - Directory Listing
Modified Sun Jun 19 21:22:34 2005 UTC (18 years, 9 months ago) by senkov
* added cmdline options for lscp address and port


Revision 665 - Directory Listing
Modified Sun Jun 19 15:11:20 2005 UTC (18 years, 9 months ago) by schoenebeck
finally fixes endless loop in voice stealing algorithm (hopefully)


Revision 663 - Directory Listing
Modified Sat Jun 18 21:37:03 2005 UTC (18 years, 9 months ago) by schoenebeck
* another voice stealing fix
  (endless loop occured when voices were stolen from other engine channels)


Revision 660 - Directory Listing
Modified Fri Jun 17 19:49:30 2005 UTC (18 years, 9 months ago) by schoenebeck
* LSCP server: fixed LSCP event "CHANNEL_INFO" notification
  (e.g. did not notify on volume changes)


Revision 659 - Directory Listing
Modified Thu Jun 16 21:35:30 2005 UTC (18 years, 9 months ago) by schoenebeck
* don't reset scale tuning on instrument or audio output device change


Revision 658 - Directory Listing
Modified Wed Jun 15 20:48:18 2005 UTC (18 years, 9 months ago) by schoenebeck
made it a "GNU" package by adding an empty NEWS file


Revision 654 - Directory Listing
Modified Wed Jun 15 20:25:25 2005 UTC (18 years, 9 months ago) by schoenebeck
* fixed 'make dist' build rule to include all necessary files


Revision 651 - Directory Listing
Modified Wed Jun 15 13:01:34 2005 UTC (18 years, 9 months ago) by schoenebeck
fixed KDevelop project file to allow compilation of current LS
(changed CXXFLAGS to -O3 -g)


Revision 649 - Directory Listing
Modified Wed Jun 15 00:01:28 2005 UTC (18 years, 9 months ago) by schoenebeck
* revised voice stealing (fixes crash caused by voice stealing)


Revision 643 - Directory Listing
Modified Sun Jun 12 23:49:00 2005 UTC (18 years, 9 months ago) by capela
* RPM .spec script added to repository.


Revision 630 - Directory Listing
Modified Sat Jun 11 14:51:49 2005 UTC (18 years, 9 months ago) by persson
* 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 620 - Directory Listing
Modified Wed Jun 8 23:16:13 2005 UTC (18 years, 9 months ago) by schoenebeck
* fixed some crashs in LSCP server
  (patch by Grigor Iliev, fixes #19)


Revision 617 - Directory Listing
Modified Wed Jun 8 21:00:06 2005 UTC (18 years, 9 months ago) by schoenebeck
* hand-crafted assembly optimization code can be disabled with
  './configure --disable-asm' (definitely not recommended)


Revision 614 - Directory Listing
Modified Mon Jun 6 16:54:20 2005 UTC (18 years, 9 months ago) by persson
* 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 612 - Directory Listing
Modified Sun Jun 5 22:36:35 2005 UTC (18 years, 9 months ago) by schoenebeck
fixed tiny mistake introduced with the last commit of this file


Revision 609 - Directory Listing
Modified Sat Jun 4 17:49:12 2005 UTC (18 years, 9 months ago) by schoenebeck
* updated autotools build files for conditional compilation of CoreMIDI
  (OS X) and MidiShare (Linux, OS X, Windows) drivers


Revision 602 - Directory Listing
Modified Thu Jun 2 16:50:25 2005 UTC (18 years, 9 months ago) by schoenebeck
Gave the LinuxSampler logo a spherical 3D touch and adjusted the major "S"
symbol so it looks more smooth.
(modified with Inkscape and Sodipodi by Rui and me)


Revision 599 - Directory Listing
Modified Thu Jun 2 08:33:40 2005 UTC (18 years, 9 months ago) by flax
* multiport and control file fixes


Revision 591 - Directory Listing
Modified Tue May 31 19:33:18 2005 UTC (18 years, 9 months ago) by flax
* altered and fixed debian packaging


Revision 579 - Directory Listing
Modified Tue May 24 19:20:20 2005 UTC (18 years, 9 months ago) by schoenebeck
* src/network/lscpserver.cpp: fixed segfault
  (patch by Grigor Iliev, fixes #17)
* added man page
* final preparations for the first official release (which will be 0.3.1)


Revision 573 - Directory Listing
Modified Tue May 24 03:18:30 2005 UTC (18 years, 10 months ago) by schoenebeck
command syntax (BNF) of LSCP specification is now auto generated


Revision 571 - Directory Listing
Modified Mon May 23 17:41:34 2005 UTC (18 years, 10 months ago) by schoenebeck
- added some crosslinks (patch by Grigor Iliev)
- added section "Versioning of this specification"
- added field "PROTOCOL_VERSION" to command "GET SERVER INFO"
- minor cleanup


Revision 570 - Directory Listing
Modified Mon May 23 17:37:26 2005 UTC (18 years, 10 months ago) by schoenebeck
added field "PROTOCOL_VERSION" to LSCP command "GET SERVER INFO"


Revision 563 - Directory Listing
Modified Sun May 22 20:43:32 2005 UTC (18 years, 10 months 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 561 - Directory Listing
Modified Sat May 21 20:01:32 2005 UTC (18 years, 10 months ago) by schoenebeck
- minor fixes, mostly typos (patch by Grigor Iliev)
- added Grigor Iliev to "Acknowledgments" chapter


Revision 560 - Directory Listing
Modified Sat May 21 11:47:55 2005 UTC (18 years, 10 months ago) by schoenebeck
sync of LSCPTest.cpp with latest LSCP specification


Revision 557 - Directory Listing
Modified Sat May 21 01:11:53 2005 UTC (18 years, 10 months ago) by schoenebeck
forgot to commit this with latest configure.in changes


Revision 556 - Directory Listing
Modified Sat May 21 01:10:12 2005 UTC (18 years, 10 months ago) by schoenebeck
* Little LSCP API change: renamed events "CHANNELS" -> "CHANNEL_COUNT" and
  "INFO" -> "CHANNEL_INFO" to be more meaningful (patch by Grigor Iliev).


Revision 555 - Directory Listing
Modified Fri May 20 13:22:53 2005 UTC (18 years, 10 months ago) by schoenebeck
* tiny fix in LSCP parser; returned prefix "Err" instead of "ERR" on syntax
  errors (patch by Grigor Iliev)


Revision 554 - Directory Listing
Modified Thu May 19 19:25:14 2005 UTC (18 years, 10 months ago) by schoenebeck
* 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 552 - Directory Listing
Modified Wed May 18 10:49:58 2005 UTC (18 years, 10 months ago) by schoenebeck
src/network/LSCPEvent.cpp: fixed Produce() method which did return a LF
character as line delimiter instead of a CRLF sequence
(fixes bug #14, patch by Grigor Iliev)


Revision 551 - Directory Listing
Modified Tue May 17 18:16:54 2005 UTC (18 years, 10 months ago) by schoenebeck
* Implemented MIDI program change as general, engine independant solution.
  The program number will determine the sampler channel to which the MIDI
  device will be connected to and the given MIDI channel defines on which
  MIDI channel that sampler channel should listen to. Also the program
  change will disconnect probably established connection from the previous
  program change event.


Revision 550 - Directory Listing
Modified Tue May 17 17:59:45 2005 UTC (18 years, 10 months ago) by schoenebeck
just some API documentation


Revision 540 - Directory Listing
Modified Wed May 11 20:05:45 2005 UTC (18 years, 10 months ago) by schoenebeck
version sync


Revision 539 - Directory Listing
Modified Wed May 11 20:03:02 2005 UTC (18 years, 10 months ago) by schoenebeck
lowered MAX_AUDIO_VOICES to pessimistic 64


Revision 538 - Directory Listing
Modified Wed May 11 20:02:17 2005 UTC (18 years, 10 months ago) by schoenebeck
just some cleanup


Revision 537 - Directory Listing
Modified Tue May 10 22:03:59 2005 UTC (18 years, 10 months ago) by schoenebeck
this is just a session file for KDevelop; better not to be included with
sources


Revision 536 - Directory Listing
Modified Tue May 10 22:00:49 2005 UTC (18 years, 10 months ago) by schoenebeck
require libgig 2.0.0


Revision 535 - Directory Listing
Modified Tue May 10 22:00:21 2005 UTC (18 years, 10 months ago) by schoenebeck
version sync


Revision 534 - Directory Listing
Modified Mon May 9 17:40:33 2005 UTC (18 years, 10 months ago) by schoenebeck
updated LSCP spec document to the latest API changes and added some
convenient cross links for the HTML version of this document


Revision 531 - Directory Listing
Modified Mon May 9 14:25:09 2005 UTC (18 years, 10 months ago) by schoenebeck
* ALSA driver: fix of previous ALSA fix ;-)


Revision 528 - Directory Listing
Modified Mon May 9 12:56:36 2005 UTC (18 years, 10 months ago) by schoenebeck
Rui forgot to commit this file with previous commit batch


Revision 527 - Directory Listing
Modified Mon May 9 11:59:58 2005 UTC (18 years, 10 months ago) by capela
* [bug #9] Fixed for a LSCP command syntax convention
  consistency, regarding the enumeration of available
  sampler engines, Audio and MIDI drivers; this has
  affected the semantics of the following commands:
    GET AVAILABLE_ENGINES
    GET AVAILABLE_AUDIO_DRIVERS
    GET AVAILABLE_MIDI_DRIVERS
  which are now returning an integer count of engines
  and drivers, respectively, while the following
  new commands are now being introduced:
    LIST AVAILABLE_ENGINES
    LIST AVAILABLE_AUDIO_DRIVERS
    LIST AVAILABLE_MIDI_DRIVERS
  taking on the previous functionality, returning
  a comma separated list of names.

* LinuxSampler version bumped to 0.3.1.


Revision 517 - Directory Listing
Modified Sun May 8 00:26:21 2005 UTC (18 years, 10 months ago) by schoenebeck
* implemented progress indicator for loading instruments
  (can be polled with "GET CHANNEL INFO", field "INSTRUMENT_STATUS")


Revision 514 - Directory Listing
Modified Fri May 6 09:33:42 2005 UTC (18 years, 10 months ago) by letz
Correct tests target


Revision 513 - Directory Listing
Modified Thu May 5 17:29:37 2005 UTC (18 years, 10 months ago) by schoenebeck
* ALSA audio driver: don't block when trying to create audio device


Revision 512 - Directory Listing
Modified Thu May 5 13:56:08 2005 UTC (18 years, 10 months ago) by schoenebeck
updated Debian package version to CVS HEAD


Revision 510 - Directory Listing
Modified Wed May 4 12:02:35 2005 UTC (18 years, 10 months ago) by schoenebeck
* autotools build fixes for PPC architecture


Revision 509 - Directory Listing
Modified Tue May 3 16:55:28 2005 UTC (18 years, 10 months ago) by letz
Correct Name method


Revision 508 - Directory Listing
Modified Tue May 3 12:49:45 2005 UTC (18 years, 10 months ago) by letz
Updated for new source tree structure


Revision 505 - Directory Listing
Modified Tue May 3 01:00:25 2005 UTC (18 years, 10 months ago) by schoenebeck
fixed libgig include rules


Revision 504 - Directory Listing
Modified Tue May 3 00:37:35 2005 UTC (18 years, 10 months 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 503 - Directory Listing
Modified Fri Apr 29 20:43:07 2005 UTC (18 years, 10 months ago) by schoenebeck
* updated unit tests


Revision 502 - Directory Listing
Modified Fri Apr 29 14:20:22 2005 UTC (18 years, 10 months ago) by letz
Fix destructor


Revision 500 - Directory Listing
Modified Wed Apr 27 08:52:56 2005 UTC (18 years, 10 months ago) by letz
Correct files path + compilation for G3 processor


Revision 499 - Directory Listing
Modified Fri Apr 15 11:54:22 2005 UTC (18 years, 11 months ago) by schoenebeck
* little correction in LSCP specification document (patch by Grigor Iliev)


Revision 498 - Directory Listing
Modified Sun Apr 10 18:37:45 2005 UTC (18 years, 11 months ago) by schoenebeck
* fixed bug in MMX/SSE(1) implementation of the sample loop code (caused
  RAM-only voices to crash when entering the sample's loop section under
  certain conditions)


Revision 497 - Directory Listing
Modified Sun Apr 10 11:55:44 2005 UTC (18 years, 11 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 495 - Directory Listing
Modified Wed Apr 6 19:35:02 2005 UTC (18 years, 11 months ago) by schoenebeck
just updated the date of the spec


Revision 494 - Directory Listing
Modified Wed Apr 6 19:24:39 2005 UTC (18 years, 11 months ago) by schoenebeck
* fixed couple of mistakes in the LSCP specification document


Revision 493 - Directory Listing
Modified Sun Apr 3 19:53:43 2005 UTC (18 years, 11 months ago) by schoenebeck
* fixed MIDI GS scale tuning (via SysEx Message)


Revision 486 - Directory Listing
Modified Thu Mar 24 23:07:22 2005 UTC (18 years, 11 months ago) by schoenebeck
* remove quotation marks from driver parameters


Revision 485 - Directory Listing
Modified Thu Mar 24 21:06:09 2005 UTC (18 years, 11 months ago) by schoenebeck
* ALSA audio driver: don't block for retrieving sound card parameter infos


Revision 483 - Directory Listing
Modified Mon Mar 21 23:40:56 2005 UTC (19 years ago) by schoenebeck
* JACK audio driver: fixed handling of channel parameter 'JACK_BINDINGS'
* fixed parser bug of multiplicity parameters


Revision 478 - Directory Listing
Modified Sat Mar 19 09:31:46 2005 UTC (19 years ago) by persson
* fixed a compilation error in Pool.h (gcc 3.4.3)


Revision 476 - Directory Listing
Modified Fri Mar 18 18:16:27 2005 UTC (19 years ago) by schoenebeck
* ALSA MIDI driver: added MIDI port parameter 'ALSA_SEQ_ID' which reflects
  the ALSA sequencer ID of a port (read only)


Revision 475 - Directory Listing
Modified Thu Mar 17 23:56:56 2005 UTC (19 years 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 474 - Directory Listing
Modified Thu Mar 17 21:28:04 2005 UTC (19 years ago) by schoenebeck
forgot to commit this with recent batch


Revision 473 - Directory Listing
Modified Thu Mar 17 20:13:08 2005 UTC (19 years ago) by schoenebeck
* fixed event leak (events sent to inactive keys were not freed)
* implemented MIDI channel mode messages "All Sound Off", "Reset All
  Controller", "All Notes Off" (fixes bug #5)


Revision 472 - Directory Listing
Modified Thu Mar 17 19:54:51 2005 UTC (19 years ago) by schoenebeck
make forced segfaults verbose in case of DEVMODE and !USE_EXCEPTIONS


Revision 466 - Directory Listing
Modified Tue Mar 15 19:27:01 2005 UTC (19 years ago) by schoenebeck
* fixed another crash under heavy load which was accidently introduced with
  the previous commit - events have to be processed completely on all
  engine channels before audio is rendered (fixes bug #7)


Revision 461 - Directory Listing
Modified Mon Mar 14 22:36:48 2005 UTC (19 years ago) by schoenebeck
forgot to commit this with recent batch


Revision 460 - Directory Listing
Modified Mon Mar 14 22:35:44 2005 UTC (19 years ago) by schoenebeck
* 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 459 - Directory Listing
Modified Mon Mar 14 22:32:42 2005 UTC (19 years ago) by schoenebeck
added ArrayList.h


Revision 458 - Directory Listing
Modified Mon Mar 14 22:32:23 2005 UTC (19 years ago) by schoenebeck
simple container with array implementation


Revision 457 - Directory Listing
Modified Mon Mar 14 22:29:46 2005 UTC (19 years ago) by schoenebeck
fixed tiny exception bug


Revision 438 - Directory Listing
Modified Wed Mar 9 22:12:15 2005 UTC (19 years ago) by persson
* 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 - Directory Listing
Modified Sat Mar 5 07:27:48 2005 UTC (19 years ago) by persson
* fixed a bug that sometimes caused clicks at the beginning of samples
* added denormal number elimination for CPUs with SSE2 support


Revision 424 - Directory Listing
Modified Fri Mar 4 22:54:11 2005 UTC (19 years ago) by schoenebeck
* implemented MIDI Control Change 7 (Volume)
* implemented MIDI Control Change 10 (Panpot)


Revision 420 - Directory Listing
Modified Thu Mar 3 03:25:17 2005 UTC (19 years ago) by schoenebeck
* fixed some segfaults (which occured on EngineChannel destruction)
* InstrumentResourceManager: recache small samples if their current
  number of silence sample points are not sufficient enough for the used
  audio output device
* src/linuxsampler.cpp: voice / streams statistics on the console is back
  again (can be turned on with command line switch --statistics)


Revision 417 - Directory Listing
Modified Tue Mar 1 21:55:51 2005 UTC (19 years ago) by persson
* fixed a bug in the low-level thread synchronizing code, that made
  loading of very small gig files sometimes fail


Revision 412 - Directory Listing
Modified Sat Feb 26 22:44:51 2005 UTC (19 years 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 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 410 - Directory Listing
Modified Sat Feb 26 01:23:55 2005 UTC (19 years ago) by schoenebeck
removed RTELMemoryPool.h


Revision 407 - Directory Listing
Modified Wed Feb 23 19:14:14 2005 UTC (19 years ago) by persson
* added support for sample parameter 'attenuation'


Revision 403 - Directory Listing
Modified Tue Feb 22 20:37:59 2005 UTC (19 years ago) by schoenebeck
* JACK driver: fixed channel parameter 'JACK_BINDINGS' which did not work
  for a multi JACK device setup


Revision 401 - Directory Listing
Modified Tue Feb 22 14:09:26 2005 UTC (19 years ago) by schoenebeck
* fixed build failure if libsqlite3 is not installed


Revision 399 - Directory Listing
Modified Mon Feb 21 11:09:15 2005 UTC (19 years, 1 month ago) by letz
Fix for OSX compilation (mlockall function not available...)


Revision 398 - Directory Listing
Modified Mon Feb 21 04:35:31 2005 UTC (19 years, 1 month ago) by senkov
removed debug from previous checkin.


Revision 397 - Directory Listing
Modified Mon Feb 21 04:28:50 2005 UTC (19 years, 1 month ago) by senkov
* Added first cut of instrument database query support.


Revision 396 - Directory Listing
Modified Sun Feb 20 20:32:24 2005 UTC (19 years, 1 month ago) by persson
* fixed a bug that made some release triggered samples too short
  (envelope went directly from attack to release)


Revision 394 - Directory Listing
Modified Sun Feb 20 13:01:59 2005 UTC (19 years, 1 month ago) by persson
fixed my previous fix.


Revision 393 - Directory Listing
Modified Sun Feb 20 12:30:36 2005 UTC (19 years, 1 month ago) by persson
* fixed a bug that caused noise at end of samples


Revision 392 - Directory Listing
Modified Sat Feb 19 02:40:24 2005 UTC (19 years, 1 month ago) by schoenebeck
* fixed possibility that memory got not locked
* immediately set instrument status when calling LOAD INSTUMENT NON_MODAL


Revision 390 - Directory Listing
Modified Fri Feb 18 03:58:55 2005 UTC (19 years, 1 month ago) by schoenebeck
* fixed segfault and freeze of LSCPInstrumentLoader thread


Revision 389 - Directory Listing
Modified Thu Feb 17 20:48:47 2005 UTC (19 years, 1 month ago) by schoenebeck
the official LinuxSampler logo (created with Sodipodi)


Revision 387 - Directory Listing
Modified Thu Feb 17 10:45:58 2005 UTC (19 years, 1 month ago) by letz
Add file


Revision 386 - Directory Listing
Modified Thu Feb 17 10:45:30 2005 UTC (19 years, 1 month ago) by letz
Add missing virtual destructor


Revision 385 - Directory Listing
Modified Thu Feb 17 02:53:45 2005 UTC (19 years, 1 month ago) by schoenebeck
* lscpserver: we now only use one instrument loader thread; commands for
  loading instruments in the background wait in a queue to be processed one
  by one to avoid possible race conditions and to improve I/O efficiency
* fixed possible race condition while streaming with multiple disk threads
  by using an own decompression buffer for each disk thread
* libgig: fixed some memory leaks caused by non virtual base constructors


Revision 379 - Directory Listing
Modified Sun Feb 13 18:02:29 2005 UTC (19 years, 1 month ago) by persson
* small fix for building with old JACK versions (0.94 and earlier)


Revision 377 - Directory Listing
Modified Sun Feb 13 00:10:53 2005 UTC (19 years, 1 month ago) by senkov
* updated spec for INSTRUMENT_NAME


Revision 376 - Directory Listing
Modified Sat Feb 12 23:48:50 2005 UTC (19 years, 1 month ago) by senkov
* Added INSTRUMENT_NAME to GET CHANNEL INFO command result set


Revision 375 - Directory Listing
Modified Sat Feb 12 14:00:51 2005 UTC (19 years, 1 month ago) by schoenebeck
* added Debian packaging files


Revision 374 - Directory Listing
Modified Sat Feb 12 00:36:08 2005 UTC (19 years, 1 month ago) by schoenebeck
* JACK audio driver: added device creation parameter 'NAME' which can be
  used to assign an arbitrary name to the JACK client, it's now possible to
  create multiple JACK audio output devices simultaniously for LS
* src/network/lscpserver.cpp: fixed little bug in
  'SET CHANNEL AUDIO_OUTPUT_CHANNEL' (altering of audio routing)
  implementation, cleanup of error messages


Revision 373 - Directory Listing
Modified Fri Feb 11 18:58:38 2005 UTC (19 years, 1 month ago) by persson
* libgig: Fixed mono decompression.


Revision 368 - Directory Listing
Modified Fri Feb 11 13:13:54 2005 UTC (19 years, 1 month ago) by schoenebeck
* 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 366 - Directory Listing
Modified Thu Feb 10 19:20:06 2005 UTC (19 years, 1 month ago) by persson
* libgig: Support for compressed mono samples. Experimental support
  for compressed 24 bit samples. Fixes for decompression on big-endian
  CPUs. Fix for bug that truncated end of compressed samples.


Revision 364 - Directory Listing
Modified Thu Feb 10 10:00:17 2005 UTC (19 years, 1 month ago) by letz
Compilation on OSX


Revision 363 - Directory Listing
Modified Thu Feb 10 09:59:31 2005 UTC (19 years, 1 month ago) by letz
First import


Revision 362 - Directory Listing
Modified Wed Feb 9 10:08:16 2005 UTC (19 years, 1 month ago) by letz
Updated for new driver structure


Revision 361 - Directory Listing
Modified Wed Feb 9 01:22:18 2005 UTC (19 years, 1 month ago) by schoenebeck
* bunch of fixes for OSX (patch by Stephane Letz)


Revision 360 - Directory Listing
Modified Mon Feb 7 00:19:30 2005 UTC (19 years, 1 month ago) by senkov
* Updated implementation for real time notify messages:
VOICE_COUNT, STREAM_COUNT, BUFFER_FILL


Revision 359 - Directory Listing
Modified Sun Feb 6 21:01:38 2005 UTC (19 years, 1 month ago) by senkov
* Added implementation for NOTIFY:CHANNELS event


Revision 358 - Directory Listing
Modified Sun Feb 6 19:06:22 2005 UTC (19 years, 1 month ago) by senkov
updated the date on the spec


Revision 357 - Directory Listing
Modified Sun Feb 6 04:34:00 2005 UTC (19 years, 1 month ago) by senkov
* Removed mentioning of UDP from event unsubscription section.


Revision 356 - Directory Listing
Modified Fri Feb 4 00:27:20 2005 UTC (19 years, 1 month ago) by schoenebeck
* libgig: another memory leak and memory (de)allocation fix
  (patch by "Gene" a.k.a Anders Alm)


Revision 354 - Directory Listing
Modified Sat Jan 29 15:17:59 2005 UTC (19 years, 1 month ago) by schoenebeck
* support for keyswitching
* ignore if no sample was defined for region(s) or dimension region(s)
(patch by Andreas Persson)


Revision 351 - Directory Listing
Modified Tue Jan 25 22:11:43 2005 UTC (19 years, 1 month ago) by schoenebeck
* fixed some memory leaks (patch by Gene Anders)


Revision 349 - Directory Listing
Modified Tue Jan 25 01:05:33 2005 UTC (19 years, 1 month ago) by schoenebeck
raised verbosity of debug message in case of caching a whole sample


Revision 348 - Directory Listing
Modified Sun Jan 23 21:24:16 2005 UTC (19 years, 1 month ago) by schoenebeck
* 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 346 - Directory Listing
Modified Fri Jan 21 17:17:31 2005 UTC (19 years, 2 months ago) by schoenebeck
* libgig: fixed vcf_type_lowpassturbo value, fixed crossfade points order
* gig::Voice: fixed special crossfade case 0,0,0,0 which actually means no
  crossfade defined


Revision 337 - Directory Listing
Modified Sun Jan 9 02:26:29 2005 UTC (19 years, 2 months ago) by senkov
* Fix for a core. SET CHANNEL AUDIO_OUTPUT_CHANNEL needs
 to check if audio output device exists.


Revision 336 - Directory Listing
Modified Mon Jan 3 03:33:51 2005 UTC (19 years, 2 months ago) by senkov
* Fixed a bug in assembly that cause crashes in some cases


Revision 335 - Directory Listing
Modified Mon Jan 3 02:48:25 2005 UTC (19 years, 2 months ago) by senkov
* Fixed pitch calculation. FineTune needs to be taken as is
 without multiplying it by 10.


Revision 333 - Directory Listing
Modified Sat Jan 1 08:18:07 2005 UTC (19 years, 2 months ago) by senkov
* Fix a basic diskthread multichannel issue.


Revision 332 - Directory Listing
Modified Sat Jan 1 03:06:06 2005 UTC (19 years, 2 months ago) by senkov
* Initialize the synthesis mode bitmask properly


Revision 331 - Directory Listing
Modified Thu Dec 30 04:00:03 2004 UTC (19 years, 2 months ago) by senkov
* Fixed bug with mixed channel creation


Revision 330 - Directory Listing
Modified Wed Dec 29 01:14:15 2004 UTC (19 years, 2 months ago) by schoenebeck
* fixed endless loop at the end of sample playback
  (patch by Andreas Persson)


Revision 329 - Directory Listing
Modified Tue Dec 28 09:43:04 2004 UTC (19 years, 2 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, 2 months ago) by schoenebeck
* architecture independence fixes, should now compile again for non x86
  systems
* tiny fix of command line switch --version


Revision 326 - Directory Listing
Modified Tue Dec 21 04:59:11 2004 UTC (19 years, 3 months ago) by senkov
Added profiler class


Revision 325 - Directory Listing
Modified Tue Dec 21 04:54:37 2004 UTC (19 years, 3 months ago) by senkov
* Added some profiling capabilities, bugs.


Revision 324 - Directory Listing
Modified Sat Dec 18 18:54:46 2004 UTC (19 years, 3 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 323 - Directory Listing
Modified Tue Dec 14 00:32:21 2004 UTC (19 years, 3 months ago) by schoenebeck
* 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 - Directory Listing
Modified Mon Dec 13 03:33:59 2004 UTC (19 years, 3 months ago) by senkov
* fixed CalculateBiquadParameters() to set parameters for
 both right and left, not just left.


Revision 321 - Directory Listing
Modified Mon Dec 13 00:59:32 2004 UTC (19 years, 3 months ago) by schoenebeck
removed this cache file


Revision 320 - Directory Listing
Modified Mon Dec 13 00:53:16 2004 UTC (19 years, 3 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, 3 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 318 - Directory Listing
Modified Sat Dec 4 14:18:04 2004 UTC (19 years, 3 months ago) by schoenebeck
* libgig: experimental support for Gigasampler v3 format; 64 bit file
  offsets are truncated to 32 bit, 24 bit samples are truncated  to 16 bit
  and additional articulation informations are ignored at the moment
  (patch by Andreas Persson)


Revision 309 - Directory Listing
Modified Sun Nov 21 18:07:42 2004 UTC (19 years, 4 months ago) by schoenebeck
* libgig: applied patch by Andreas Persson which improves accuracy of all
  three velocity response curves


Revision 294 - Directory Listing
Modified Mon Oct 25 15:21:43 2004 UTC (19 years, 4 months ago) by schoenebeck
added new methods for template class NonVolatileReader: free(), decrement
operator and pop() method variant which returns a pointer instead of
copying data


Revision 293 - Directory Listing
Modified Mon Oct 25 15:14:27 2004 UTC (19 years, 4 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, 4 months ago) by schoenebeck
encapsulated error message into quotation marks


Revision 291 - Directory Listing
Modified Fri Oct 22 22:46:38 2004 UTC (19 years, 5 months ago) by schoenebeck
* applied patch from James Klicman which fixes some issues in configure.in


Revision 290 - Directory Listing
Modified Wed Oct 20 03:02:35 2004 UTC (19 years, 5 months ago) by senkov
* Quoted warnings to avoid unmatched single quote.


Revision 289 - Directory Listing
Modified Tue Oct 19 14:41:38 2004 UTC (19 years, 5 months ago) by schoenebeck
* LinuxSampler was badly broken with last commit, fixed that
* using now James Klicman's proposol to fix the reported linker problem
* Mutex.cpp: try to force UNIX98 compatibility (if not already supported)
* Makefile.cvs: generate (and clean) all necessary autotools files


Revision 288 - Directory Listing
Modified Tue Oct 19 00:36:34 2004 UTC (19 years, 5 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 287 - Directory Listing
Modified Sat Oct 16 17:38:03 2004 UTC (19 years, 5 months ago) by schoenebeck
* 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 286 - Directory Listing
Modified Sat Oct 16 17:29:05 2004 UTC (19 years, 5 months ago) by schoenebeck
just added some sanity checks for debugging


Revision 285 - Directory Listing
Modified Thu Oct 14 21:31:26 2004 UTC (19 years, 5 months ago) by schoenebeck
* bunch of bugfixes (e.g. segfault on voice stealing)


Revision 284 - Directory Listing
Modified Thu Oct 14 21:24:39 2004 UTC (19 years, 5 months ago) by schoenebeck
raised EG_MIN_RELEASE_TIME a bit to avoid click sounds


Revision 283 - Directory Listing
Modified Thu Oct 14 21:22:02 2004 UTC (19 years, 5 months ago) by schoenebeck
sync with latest libgig version


Revision 281 - Directory Listing
Modified Tue Oct 12 20:46:13 2004 UTC (19 years, 5 months ago) by schoenebeck
tiny compatibility fix, patch by James Klicman


Revision 277 - Directory Listing
Modified Sat Oct 9 15:48:32 2004 UTC (19 years, 5 months ago) by schoenebeck
* compatibility fixes for old gcc 2.95.4


Revision 276 - Directory Listing
Modified Sat Oct 9 15:42:27 2004 UTC (19 years, 5 months ago) by schoenebeck
added tests against new Pool classes


Revision 275 - Directory Listing
Modified Sat Oct 9 15:40:35 2004 UTC (19 years, 5 months ago) by schoenebeck
src/common/Mutex.cpp only compiles on UNIX98 compatible systems


Revision 274 - Directory Listing
Modified Sat Oct 9 00:46:18 2004 UTC (19 years, 5 months ago) by schoenebeck
* MidiInputPort: fixed dispatching of MIDI events to engines which are
  listening to all MIDI channels
* switched MIDI channel indexing to low level indexing (means 0..15 now)


Revision 273 - Directory Listing
Modified Fri Oct 8 21:04:51 2004 UTC (19 years, 5 months ago) by schoenebeck
forgot to modify include for Pool.h


Revision 272 - Directory Listing
Modified Fri Oct 8 21:03:32 2004 UTC (19 years, 5 months ago) by schoenebeck
support for showing exceptions in realtime audio thread if these are
enabled in global.h


Revision 271 - Directory Listing
Modified Fri Oct 8 20:51:39 2004 UTC (19 years, 5 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 270 - Directory Listing
Modified Fri Oct 8 20:30:25 2004 UTC (19 years, 5 months ago) by schoenebeck
stacktrace routines by Bjorn Reese, only slightly modified:
- header file adjusted to work with C++ applications
- deactivated separated piping of debugger output, as it didn't work out
  correctly in multithreaded application


Revision 268 - Directory Listing
Modified Thu Oct 7 22:20:20 2004 UTC (19 years, 5 months ago) by capela
* gcc-c++ 3.4.1 compability fixes.


Revision 260 - Directory Listing
Modified Wed Sep 29 03:34:16 2004 UTC (19 years, 5 months ago) by senkov
Added myself to AUTHORS file per Christian's request.


Revision 259 - Directory Listing
Modified Wed Sep 29 03:16:01 2004 UTC (19 years, 5 months ago) by senkov
* Fixed a hang in stage_fadeout


Revision 252 - Directory Listing
Modified Thu Sep 23 21:33:43 2004 UTC (19 years, 5 months ago) by schoenebeck
* fixed another bug in EGADSR which caused clicks when voices were killed
  near the audio fragment end


Revision 251 - Directory Listing
Modified Mon Sep 20 12:27:48 2004 UTC (19 years, 6 months ago) by schoenebeck
* changed curve type from exponential to linear in stage 'end' of
  EGADSR (fixes click sounds at the end of voices)


Revision 250 - Directory Listing
Modified Mon Sep 20 00:31:13 2004 UTC (19 years, 6 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 249 - Directory Listing
Modified Mon Sep 20 00:26:40 2004 UTC (19 years, 6 months ago) by schoenebeck
reduced EG_MIN_RELEASE_TIME to allow to finish kill process of a voice
within the same audio fragment, this will be e.g. be mandatory for voice
stealing


Revision 248 - Directory Listing
Modified Mon Sep 20 00:20:13 2004 UTC (19 years, 6 months ago) by schoenebeck
added pool_is_empty() methods


Revision 247 - Directory Listing
Modified Sun Sep 19 23:44:23 2004 UTC (19 years, 6 months ago) by senkov
* Small fix to pan coeff. calculation.
* (LS was silent with gigs where pan was 0).


Revision 246 - Directory Listing
Modified Sun Sep 19 14:12:55 2004 UTC (19 years, 6 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 245 - Directory Listing
Modified Sat Sep 18 14:12:36 2004 UTC (19 years, 6 months ago) by schoenebeck
* support patch panorama info


Revision 244 - Directory Listing
Modified Fri Sep 17 01:01:11 2004 UTC (19 years, 6 months ago) by schoenebeck
* added support for scale tuning via MIDI GS system exclusive message


Revision 243 - Directory Listing
Modified Fri Sep 17 00:52:48 2004 UTC (19 years, 6 months ago) by schoenebeck
added inner class 'NonVolatileReader' which allows random access reading
from a RingBuffer without having to worry that read space could get freed
by access operations


Revision 242 - Directory Listing
Modified Wed Sep 15 13:59:08 2004 UTC (19 years, 6 months ago) by schoenebeck
* 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 - Directory Listing
Modified Sun Sep 12 14:48:19 2004 UTC (19 years, 6 months ago) by schoenebeck
* 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 238 - Directory Listing
Modified Sun Sep 12 14:09:02 2004 UTC (19 years, 6 months ago) by schoenebeck
state chart diagram of the gig::Engine's ADSR envelope generator


Revision 237 - Directory Listing
Modified Sun Sep 12 01:59:40 2004 UTC (19 years, 6 months ago) by senkov
* Fixed a crash in EGADSR::Process()


Revision 236 - Directory Listing
Modified Thu Sep 9 18:44:18 2004 UTC (19 years, 6 months ago) by schoenebeck
* added support for crossfades
* support sample playback start offset


Revision 233 - Directory Listing
Modified Tue Sep 7 09:32:21 2004 UTC (19 years, 6 months ago) by schoenebeck
* added support for layers
* fixed initial pitch calculation which did not honor the sample's own
  sample rate


Revision 232 - Directory Listing
Modified Sun Sep 5 00:55:44 2004 UTC (19 years, 6 months ago) by schoenebeck
* libgig: fixed / improved accuracy of all three velocity to volume
  transformation functions (a.k.a. 'nonlinear','linear','special')


Revision 230 - Directory Listing
Modified Thu Sep 2 21:52:29 2004 UTC (19 years, 6 months ago) by schoenebeck
* src/engines/gig/Voice.cpp: dimension region selection takes current
  MIDI controller values into account


Revision 228 - Directory Listing
Modified Sat Aug 28 14:55:34 2004 UTC (19 years, 6 months ago) by schoenebeck
* src/network/lscp.y: fixed symbol 'midi_input_channel_index' to allow
  keyword 'ALL' for the respective LSCP commands


Revision 227 - Directory Listing
Modified Thu Aug 26 22:05:44 2004 UTC (19 years, 6 months ago) by schoenebeck
* ALSA audio driver: bugfix in device parameter 'CARD' which caused an
  error message if used in conjunction with 'CREATE AUDIO_OUTPUT_DEVICE'
  LSCP command
* JACK audio driver: fixed minor JACK port name issue and the device was
  not activated by default on creation which caused it to render solely
  silence
* src/network/lscpserver.cpp: retry to bind socket for 3 minutes if bind
  failed


Revision 226 - Directory Listing
Modified Wed Aug 25 22:00:33 2004 UTC (19 years, 6 months ago) by schoenebeck
* ALSA MIDI driver: create one MIDI port by default, implemented parameter
  info for parameter 'ALSA_SEQ_BINDINGS'
* ALSA audio driver: implemented parameter info for driver parameters
  'FRAGMENTS' and 'FRAGMENTSIZE'
* JACK audio driver: fixed creation of channels on device creation, channel
  parameter 'NAME' now actually updates the respective JACK port name,
  implemented channel parameter 'JACK_BINDINGS' (as well as its parameter
  info)
* src/network/lscpserver.cpp: fixed commands
  "GET MIDI_INPUT_DRIVER_PARAMETER INFO" and
  "GET AUDIO_OUTPUT_DRIVER_PARAMETER  INFO", fixed backward compatibility
  for "SET AUDIO_OUTPUT_TYPE" and "SET MIDI_INPUT_TYPE" commands
* src/networ/lscp.y: added comma character (',') to symbol 'char'
* src/drivers/DeviceParameter.cpp: fixed methods RangeMin(), RangeMax() in
  class DeviceCreationParameterInt which returned wrong values


Revision 225 - Directory Listing
Modified Sun Aug 22 14:46:47 2004 UTC (19 years, 7 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 224 - Directory Listing
Modified Sat Aug 21 15:31:36 2004 UTC (19 years, 7 months ago) by schoenebeck
added test against "SET ECHO" LSCP command


Revision 223 - Directory Listing
Modified Sat Aug 21 11:43:53 2004 UTC (19 years, 7 months ago) by schoenebeck
* bug fixes in LSCP server (returned '1'/'0' instead of 'true'/'false' for
  binary fields, spuriously created new elements in maps while trying to
  find map members)


Revision 222 - Directory Listing
Modified Sat Aug 21 11:35:50 2004 UTC (19 years, 7 months ago) by schoenebeck
changed all driver names and parameter names to upper case


Revision 221 - Directory Listing
Modified Fri Aug 20 17:25:19 2004 UTC (19 years, 7 months ago) by schoenebeck
* src/drivers/midi/MidiInputDeviceAlsa.cpp: implemented port parameter
 "NAME" which now updates the registered ALSA seq port name as well, fixed
  port parameter "ALSA_SEQ_BINDINGS" to allow more than one binding
* src/network/lscp.y: fixed symbol STRINGVAL (that is strings encapsulated
  into apostrophes) which didn't allow space characters
* changed all driver names and driver paramaters to upper case
* fixed typo in LSCP documentation
  (section 5.3.12, was: "SET MIDI_INPUT_PORT PARAMETER",
   should be: "SET MIDI_INPUT_PORT_PARAMETER")


Revision 219 - Directory Listing
Modified Tue Aug 17 20:35:04 2004 UTC (19 years, 7 months ago) by schoenebeck
* completely removed the lex scanner and replaced it by pure yacc rules
  for all terminal symbols (that is command keywords and variables) to
  avoid misunderstandings while parsing (e.g. recognition of command
  keywords in string arguments)
* src/drivers/audio/AudioChannel.cpp: changed channel parameter 'Name' to
 'NAME' as defined in the LSCP documentation


Revision 218 - Directory Listing
Modified Sun Aug 15 20:18:55 2004 UTC (19 years, 7 months ago) by schoenebeck
bugfix in client receive code


Revision 217 - Directory Listing
Modified Sun Aug 15 18:52:23 2004 UTC (19 years, 7 months ago) by schoenebeck
added test for "GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO" LSCP command


Revision 216 - Directory Listing
Modified Sun Aug 15 17:25:31 2004 UTC (19 years, 7 months ago) by schoenebeck
print cause to standard error channel instead of standard out and flush
right after


Revision 215 - Directory Listing
Modified Sun Aug 15 10:38:46 2004 UTC (19 years, 7 months ago) by schoenebeck
scanner now also allows quotation marks for STRINGVAL tokens


Revision 214 - Directory Listing
Modified Sat Aug 14 23:00:44 2004 UTC (19 years, 7 months ago) by schoenebeck
* src/drivers/DeviceParameter.cpp: fixed return values for
classes 'DeviceRuntimeParameterString' and 'DeviceCreationParameterString'
which returned their values without being encapsulated into apostrophes,
fixed return values for 'DeviceRuntimeParameterBool' and
'DeviceCreationParameterBool' to be returned in lower case (as defined in
the LSCP documentation)
* src/network/lscp.y: key value pairs now also allow strings (without
spaces) to be not encapsulated into apostrophes (e.g. foo=bar instead of
foo='bar')
* src/linuxsampler.cpp: show on the console which TCP port the LSCP server
is using


Revision 212 - Directory Listing
Modified Wed Jul 28 14:17:29 2004 UTC (19 years, 7 months ago) by schoenebeck
* introduced and implemented new LSCP command "RESET" which resets the
  whole sampler instance
* src/drivers/audio/AudioOutputDeviceAlsa.cpp: parameter 'card' now
  returns all available sound cards as possibility, added dependency to
  parameter 'card' to parameters 'fragments' and 'fragmentsize'
* src/drivers/DeviceParameter.cpp: fixed return value(s) for classes
  'DeviceCreationParameterString' and 'DeviceCreationParameterStrings'
  which returned the default value(s) not encapsulated into apostrophes
* src/network/lscpserver.cpp: fixed implementation of LSCP commands
  "GET MIDI_INPUT_DRIVER_PARAMETER INFO" and
  "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO"


Revision 211 - Directory Listing
Modified Sun Jul 25 23:27:41 2004 UTC (19 years, 7 months ago) by schoenebeck
* src/linuxsampler.cpp: tidied up a bit, "initialization completed"
  message shown only after the server is actually running
* src/testcases/: print the name of each test suite before running the
  tests of the suite, added first tests against the LSCP server using a
  socket connection to the LSCP server (tests for the following LSCP
  commands: "ADD CHANNEL", "GET CHANNELS", "REMOVE CHANNEL")


Revision 210 - Directory Listing
Modified Sat Jul 24 12:33:49 2004 UTC (19 years, 7 months ago) by schoenebeck
* implemented "SET ECHO" LSCP command


Revision 209 - Directory Listing
Modified Sun Jul 18 00:29:39 2004 UTC (19 years, 8 months ago) by schoenebeck
* src/Sampler.cpp: changed sampler channel index allocation from consistent
channel index allocation to incrementing channel index allocation, that is
it doesn't fill channel index gaps anymore (to avoid race conditions)
* implemented "LIST CHANNELS" LSCP command


Revision 208 - Directory Listing
Modified Thu Jul 15 22:20:28 2004 UTC (19 years, 8 months ago) by schoenebeck
removed unnecessary #include


Revision 207 - Directory Listing
Modified Thu Jul 15 21:51:15 2004 UTC (19 years, 8 months ago) by schoenebeck
* src/linuxsampler.cpp: print out LinuxSampler version and show all
  registered MIDI input drivers
* renamed class 'InputOutputDevice' -> 'Device'


Revision 206 - Directory Listing
Modified Wed Jul 14 19:27:53 2004 UTC (19 years, 8 months ago) by schoenebeck
fixed little accident in section 5.4.10 that happened by the conversion
from the document's old OpenOffice format


Revision 205 - Directory Listing
Modified Tue Jul 13 23:16:40 2004 UTC (19 years, 8 months ago) by schoenebeck
accidently commited this file


Revision 204 - Directory Listing
Modified Tue Jul 13 22:54:25 2004 UTC (19 years, 8 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 203 - Directory Listing
Modified Tue Jul 13 22:44:13 2004 UTC (19 years, 8 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 202 - Directory Listing
Modified Tue Jul 13 22:17:10 2004 UTC (19 years, 8 months ago) by schoenebeck
* moved directory '/src/audiodriver' -> '/src/drivers/audio'
* moved directory '/src/mididriver' -> '/src/drivers/midi'


Revision 201 - Directory Listing
Modified Tue Jul 13 22:10:21 2004 UTC (19 years, 8 months ago) by schoenebeck
moved directory '/src/mididriver' -> '/src/drivers/midi'


Revision 200 - Directory Listing
Modified Tue Jul 13 22:04:16 2004 UTC (19 years, 8 months ago) by schoenebeck
moved directory '/src/audiodriver' -> '/src/drivers/audio'


Revision 198 - Directory Listing
Modified Tue Jul 13 15:36:16 2004 UTC (19 years, 8 months ago) by senkov
* Get rid of the timeout on select()


Revision 185 - Directory Listing
Modified Wed Jul 7 02:49:51 2004 UTC (19 years, 8 months ago) by senkov
* GET MIDI_INPUT_PORT_PARAMETER INFO command


Revision 184 - Directory Listing
Modified Wed Jul 7 02:00:37 2004 UTC (19 years, 8 months ago) by senkov
* Added MISCELLANEOUS event to help debugging client/server
interaction. It spits out every line received by the server.


Revision 175 - Directory Listing
Modified Tue Jul 6 04:41:23 2004 UTC (19 years, 8 months ago) by senkov
This goes with the previous commit.
Forgot to commit this file previously.


Revision 174 - Directory Listing
Modified Tue Jul 6 03:27:38 2004 UTC (19 years, 8 months ago) by senkov
* Reworked the infrastructure to allow for parameter
registration and creation
* Changed alsa audio output and midi drivers
to work with new infrastructure


Revision 173 - Directory Listing
Modified Tue Jul 6 03:18:03 2004 UTC (19 years, 8 months ago) by senkov
moved ToString() out


Revision 170 - Directory Listing
Modified Sat Jul 3 20:08:07 2004 UTC (19 years, 8 months ago) by senkov
* moved ToString to common
* Implemented handling of multiple connections
* Implemented guts for event subscription/unsubscription
* Illustrated event notification sending by sending MISC events
when connections are established or terminated.


Revision 169 - Directory Listing
Modified Fri Jul 2 23:49:12 2004 UTC (19 years, 8 months ago) by senkov
* Do not use accessor operator for the map unless
the element accessed already exists


Revision 165 - Directory Listing
Modified Thu Jul 1 04:25:55 2004 UTC (19 years, 8 months ago) by senkov
* Small enhancement to mutex class to support Trylock()


Revision 164 - Directory Listing
Modified Thu Jul 1 02:30:50 2004 UTC (19 years, 8 months ago) by senkov
Something overlooked earlier. NAME -> Name


Revision 160 - Directory Listing
Modified Tue Jun 29 21:44:12 2004 UTC (19 years, 8 months ago) by capela
Parser regeneration missed on last commit.


Revision 159 - Directory Listing
Modified Tue Jun 29 21:11:50 2004 UTC (19 years, 8 months ago) by capela
* Unconsolidaded MIDI input related channel commands are back:
  SET CHANNEL MIDI_INPUT_DEVICE <chan> <midi-device>
  SET CHANNEL MIDI_INPUT_PORT <chan> <midi-port>
  SET CHANNEL MIDI_INPUT_CHANNEL <chan> <midi-chan>

* Still useful for compability with legacy clients, an almost
  deprecated command gets re-implemented:
  SET CHANNEL MIDI_INPUT_TYPE <chan> <midi-driver>

* Optional parameter list on MIDI input device creation fixed,
  but not quite fully effective yet:
  CREATE MIDI_INPUT_DEVICE <midi-driver> [<key>=<val>...]


Revision 157 - Directory Listing
Modified Tue Jun 29 00:50:38 2004 UTC (19 years, 8 months ago) by senkov
* Removed/cleaned up some left over stuff
* Fixed midi port name parameter (no longer static)


Revision 155 - Directory Listing
Modified Mon Jun 28 04:30:11 2004 UTC (19 years, 8 months ago) by senkov
* Updated parser, lscp server and sampler class for new MIDI_INPUT
* Minor fixes (and major new bugs) here and there
* Consolidated 3 SET CHANNEL MIDI_xxx commands into one:
SET CHANNEL MIDI_INPUT


Revision 154 - Directory Listing
Modified Mon Jun 28 04:23:03 2004 UTC (19 years, 8 months ago) by senkov
* Fixed object deletion


Revision 153 - Directory Listing
Modified Mon Jun 28 04:21:11 2004 UTC (19 years, 8 months ago) by senkov
* Updated MIDI infrastructure similar to what was previously
done with the AUDIO
* Implemented Alsa driver using new infrastructure
* TODO: MacOS drivers!


Revision 151 - Directory Listing
Modified Sat Jun 26 19:53:46 2004 UTC (19 years, 8 months ago) by schoenebeck
* added directory 'Documentation'
* network protocol document now under CVS, converted from latest document
  (http://www.linuxsampler.org/api/draft-linuxsampler-protocol-11.sxw)
  into XML (Documentation/lscp.xml), lscp.xml is compliant to RFC 2629 and
  can be converted into HTML or RFC common ASCII format by using 'xml2rfc'
  (http://xml.resource.org/)


Revision 143 - Directory Listing
Modified Wed Jun 23 18:54:08 2004 UTC (19 years, 8 months ago) by capela
* SET CHANNEL AUDIO_OUTPUT_TYPE <chan> <driver> command is back!
  creates an audio output device instance of the given driver type
  ('Jack' or 'Alsa') with default parameters if none exists,
  otherwise it just picks the first available device and assign
  it to the intended sampler channel.

* The AudioOutputDevice class get's a new pure virtual method,
  Driver(), which is implemented on both of the existing inherited
  classes, AudioOutputDeviceAlsa and AudioOutputDeviceJack, with
  the sole purpose to return the driver type name as a String
  ('Alsa' and 'Jack', respectively).

* The quoting on the filename argument for the LOAD INSTRUMENT
  command has been made optional; you can have both ways, with
  single quotes or none, keeping compability with older LSCP
  specification.

* An additional sanity check is made on LOAD INSTRUMENT, whether
  the sampler channel has an audio output device assigned, thus
  preventing the server from crashing on instrument file load.

* The GET AUDIO_OUTPUT_DEVICE INFO now includes the missing
  'driver' item, as predicted by the draft protocol document.


Revision 142 - Directory Listing
Modified Tue Jun 22 00:02:17 2004 UTC (19 years, 9 months ago) by senkov
* Added implementation for SET CHANNEL AUDIO_OUTPUT_DEVICE


Revision 141 - Directory Listing
Modified Mon Jun 21 01:21:33 2004 UTC (19 years, 9 months ago) by senkov
* LOAD INSTRUMENT NON_MODAL


Revision 140 - Directory Listing
Modified Mon Jun 21 00:23:56 2004 UTC (19 years, 9 months ago) by senkov
Cleanup for GCC bug workaround


Revision 139 - Directory Listing
Modified Sun Jun 20 23:42:44 2004 UTC (19 years, 9 months ago) by senkov
* Fixes and hacks to make CREATE AUDIO_OUTPUT_DEVICE work


Revision 138 - Directory Listing
Modified Sun Jun 20 23:18:24 2004 UTC (19 years, 9 months ago) by senkov
* Fix for CREATE_AUDIO_OUTPUT_DEVICE with all default params
* Fix for GET AUDIO_OUTPUT_DEVICES resultset
* Support for BACKGROUND loading


Revision 137 - Directory Listing
Modified Sun Jun 20 16:49:47 2004 UTC (19 years, 9 months ago) by capela
* Changed LSCPServer::LoadInstrument() signature, which adds a new
  boolean argument (bool bBackground) where the loading mode maybe
  selected, whether modal (the default), or modeless (in background).


Revision 136 - Directory Listing
Modified Sun Jun 20 16:03:35 2004 UTC (19 years, 9 months ago) by senkov
* Update audiodriver to supply parameters in compliance
 with the latest LSCP spec


Revision 135 - Directory Listing
Modified Sun Jun 20 16:01:50 2004 UTC (19 years, 9 months ago) by senkov
* Update parser to comply with the latest spec


Revision 134 - Directory Listing
Modified Sun Jun 20 15:12:05 2004 UTC (19 years, 9 months ago) by senkov
* small but important typo fix in optional.h


Revision 133 - Directory Listing
Modified Fri Jun 18 14:29:02 2004 UTC (19 years, 9 months 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 129 - Directory Listing
Modified Tue Jun 15 03:30:16 2004 UTC (19 years, 9 months ago) by senkov
Small change to generate "NA" resultset using resultset class.


Revision 128 - Directory Listing
Modified Tue Jun 15 03:19:30 2004 UTC (19 years, 9 months ago) by senkov
* Remove calls to pure virtual from constructor of base class
 to avoid runtime failure. InitWithDefault() will have to be called
 from the constructor of the class where virtuals are implemented.


Revision 124 - Directory Listing
Modified Mon Jun 14 19:37:42 2004 UTC (19 years, 9 months ago) by schoenebeck
forgot to commit with the last batch, needed as I added a new directory
'src/drivers'


Revision 123 - Directory Listing
Modified Mon Jun 14 19:33:16 2004 UTC (19 years, 9 months ago) by schoenebeck
* 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 121 - Directory Listing
Modified Sat Jun 12 07:46:02 2004 UTC (19 years, 9 months ago) by senkov
typo in case statement (while doing string replace forgot to add breaks)


Revision 120 - Directory Listing
Modified Sat Jun 12 07:29:37 2004 UTC (19 years, 9 months ago) by senkov
* Error handling in resultset class, rewrite lscpserver to use resultset.


Revision 117 - Directory Listing
Modified Tue Jun 8 01:29:08 2004 UTC (19 years, 9 months ago) by senkov
Updated GET CHANNEL INFO to send uninitialized params with "NONE"/0


Revision 116 - Directory Listing
Modified Tue Jun 8 00:48:20 2004 UTC (19 years, 9 months ago) by senkov
Added comments


Revision 113 - Directory Listing
Modified Sun Jun 6 20:59:49 2004 UTC (19 years, 9 months ago) by senkov
* Added LSCP command GET CHANNEL INFO


Revision 112 - Directory Listing
Modified Sun Jun 6 20:57:28 2004 UTC (19 years, 9 months ago) by senkov
* Added methods for CHANNEL_INFO command


Revision 111 - Directory Listing
Modified Sat Jun 5 20:55:50 2004 UTC (19 years, 9 months ago) by schoenebeck
* LSCP allows now comment lines, that is lines starting with a hash ('#')
  character
* src/engines/gig/Voice.cpp: fixed "SET CHANNEL VOLUME" bug


Revision 99 - Directory Listing
Modified Tue Jun 1 16:19:40 2004 UTC (19 years, 9 months ago) by letz
* Do polynomial interpolation computation in float


Revision 97 - Directory Listing
Modified Mon May 31 19:28:09 2004 UTC (19 years, 9 months ago) by schoenebeck
* src/engines/gig/Voice.h: fixed bug which caused to hear only one audio
  channel


Revision 90 - Directory Listing
Modified Tue May 25 18:14:15 2004 UTC (19 years, 9 months ago) by letz
* Correct KeyOn with velocity = O bug


Revision 88 - Directory Listing
Modified Mon May 24 15:22:56 2004 UTC (19 years, 9 months ago) by letz
cleanup


Revision 87 - Directory Listing
Modified Mon May 24 12:48:57 2004 UTC (19 years, 9 months ago) by letz
* New type_core_midi and type_midishare types


Revision 86 - Directory Listing
Modified Mon May 24 12:41:50 2004 UTC (19 years, 9 months ago) by letz
* First import of MidiShare device


Revision 85 - Directory Listing
Modified Mon May 24 09:59:38 2004 UTC (19 years, 9 months ago) by letz
first import of CoreMidi driver


Revision 84 - Directory Listing
Modified Sun May 23 20:17:31 2004 UTC (19 years, 10 months ago) by schoenebeck
forgot to remove a redundant assignment (only a small efficiency issue)


Revision 83 - Directory Listing
Modified Sun May 23 19:47:59 2004 UTC (19 years, 10 months ago) by schoenebeck
forgot to actually reduce the debug level value (to 1) with the last
commit batch


Revision 82 - Directory Listing
Modified Sun May 23 19:20:32 2004 UTC (19 years, 10 months ago) by schoenebeck
this file was accidently commited a while ago, so I removed it


Revision 81 - Directory Listing
Modified Sun May 23 19:18:06 2004 UTC (19 years, 10 months ago) by schoenebeck
fixed little typo


Revision 80 - Directory Listing
Modified Sun May 23 19:16:33 2004 UTC (19 years, 10 months 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 79 - Directory Listing
Modified Sat May 22 06:33:55 2004 UTC (19 years, 10 months ago) by senkov
* Fixed SET CHANNEL MIDI_INPUT_CHANNEL lscp command.


Revision 76 - Directory Listing
Modified Fri May 14 19:10:21 2004 UTC (19 years, 10 months ago) by senkov
fix small make problem when jack is not installed


Revision 68 - Directory Listing
Modified Sat May 8 19:03:17 2004 UTC (19 years, 10 months ago) by senkov
* Adding LSCP command SET CHANNEL MIDI_INPUT_PORT. First attempt.


Revision 67 - Directory Listing
Modified Sat May 8 18:51:51 2004 UTC (19 years, 10 months ago) by senkov
Fixed build problem with dependency on JACK_LIBS variable


Revision 66 - Directory Listing
Modified Sat May 8 17:52:56 2004 UTC (19 years, 10 months ago) by senkov
Fixed build problem with dependency on JACK_LIBS variable


Revision 65 - Directory Listing
Modified Fri May 7 22:36:45 2004 UTC (19 years, 10 months ago) by schoenebeck
* src/audiodriver/AudioOutputDeviceJack.cpp: fixed another stupid bug that
  caused a segmentation fault when the Jack audio driver was loaded


Revision 64 - Directory Listing
Modified Thu May 6 20:06:20 2004 UTC (19 years, 10 months 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 63 - Directory Listing
Modified Tue May 4 18:52:24 2004 UTC (19 years, 10 months ago) by schoenebeck
* src/common/Thread.cpp: threads are now stoppable even if they are
  waiting for a condition
* src/common/Condition.cpp: fixed little misbehavior of Set() method,
  which locked the Condition object on return
* src/testcases: added a couple of new unit tests (against classes
  'Mutex', 'Condition' and 'Thread')


Revision 61 - Directory Listing
Modified Mon May 3 19:29:44 2004 UTC (19 years, 10 months ago) by schoenebeck
forgot to update copyright header for 2004 for following files:
src/linuxsampler.cpp,
src/Sampler.h,
src/Sampler.cpp,
src/network/lscpscanner.cpp


Revision 57 - Directory Listing
Modified Sun May 2 17:45:43 2004 UTC (19 years, 10 months 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 (19 years, 10 months ago) by schoenebeck
updated copyright header for 2004


Revision 54 - Directory Listing
Modified Mon Apr 26 17:21:29 2004 UTC (19 years, 10 months ago) by schoenebeck
postponed removal of src/diskthread.cpp due to a conflict


Revision 53 - Directory Listing
Modified Mon Apr 26 17:15:51 2004 UTC (19 years, 10 months 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


Revision 42 - Directory Listing
Modified Sun Apr 11 17:25:38 2004 UTC (19 years, 11 months ago) by senkov
* Fixed bug in AskForCreatedStream(). Cored if stream was not created.


Revision 41 - Directory Listing
Modified Wed Mar 31 10:28:42 2004 UTC (19 years, 11 months ago) by schoenebeck
removed unnecessary dependencies


Revision 40 - Directory Listing
Modified Tue Mar 30 13:14:58 2004 UTC (19 years, 11 months ago) by schoenebeck
* added Envelope Generator 2 and 3 (filter cutoff EG and pitch EG) for
  accurate .gig playback
* fixed accuracy of pitch calculation
* changed filter cutoff range to 100Hz..10kHz with exponential curve, this
  value range can also be adjusted on compile time by setting
  FILTER_CUTOFF_MIN and FILTER_CUTOFF_MAX in src/voice.h to desired
  frequencies
* src/lfo.h: lfo is now generalized to a C++ template, which will be useful
  especially when we implement further engines


Revision 39 - Directory Listing
Modified Sun Mar 21 16:09:43 2004 UTC (20 years ago) by schoenebeck
* implemented all three low frequency oscillators (LFO1 = volume,
  LFO2 = filter cutoff frequency, LFO3 = pitch) for accurate .gig playback


Revision 38 - Directory Listing
Modified Tue Mar 16 13:25:39 2004 UTC (20 years ago) by schoenebeck
* added filters (lowpass, bandpass and highpass), note that filter code is
  currently disabled by default, you have to explicitly enable it in
  src/voice.h by setting define ENABLE_FILTER to 1
* src/eg_vca.cpp: Decay_1 stage now using exponential curve


Revision 37 - Directory Listing
Modified Wed Mar 10 22:01:36 2004 UTC (20 years ago) by schoenebeck
* src/eg_vca.cpp: added following transitions to the envelope generator:
  'Attack_Hold' -> 'Release', 'Decay_1' -> 'Release' in case of a release
  event
* EG1 parameters 'Attack Time', 'Release Time' and 'Sustain Time' are now
  controllable by a MIDI controller defined in the .gig file
* src/voice.cpp: fixed bug in pitch calculation which caused new triggered
  voices to be played back without honoring the current pitch bend value


Revision 35 - Directory Listing
Modified Fri Mar 5 13:46:15 2004 UTC (20 years ago) by schoenebeck
* implemented parser for the LinuxSampler control protocol (LSCP) by using
  flex / bison (where src/network/lscp.l is the input file for lex / flex
  and src/network/lscp.y is the input file for yacc / bison), parser and
  scanner can be regenerated by 'make parser'
* implemented LSCP network server (only single threaded so far), LSCP
  server will be launched if LinuxSampler was started with "--server" flag,
  implemented the following LSCP commands so far: "LOAD INSTRUMENT", "GET
  CHANNEL VOICE_COUNT", "GET CHANNEL STREAM_COUNT", "GET CHANNEL
  BUFFER_FILL", "SET CHANNEL VOLUME" and "RESET CHANNEL"
* disk thread now started within the engine


Revision 33 - Directory Listing
Modified Mon Feb 16 19:30:42 2004 UTC (20 years, 1 month ago) by schoenebeck
* implemented bidirectional voice state transition, means voice state can
  switch arbitrary times between 'Sustained'<-->'Released' within it's life
  time, thus the release process of a voice can be cancelled
* src/eg_vca.cpp: extended envelope generator by additional states
  ('Attack_Hold', 'Decay_1' and 'Decay_2')
* applied patch from Vladimir Senkov which adds new command line parameters
  ('--jackout', '--alsaout' and '--samplerate')
* configure.in: fixed compiler warning


Revision 32 - Directory Listing
Modified Tue Feb 3 13:21:19 2004 UTC (20 years, 1 month ago) by schoenebeck
* introduced time stamped events
* implemented jitter correction
* added pitchbend wheel support
* src/audiothread.cpp: using voice pool instead of a voice array, makes
  voice allocation more efficient and code more readable
* src/rtelmemorypool: redesigned, added some new methods and pool is now
  derived from list


Revision 31 - Directory Listing
Modified Sun Jan 18 20:31:31 2004 UTC (20 years, 2 months ago) by schoenebeck
* Added JACK support: Audio rendering process is now callback based and
  independant of used audio output system. Interfaces to other audio output
  systems can be added by creating a class derived from abstract base class
  'AudioIO' and embedding the new class into linuxsampler.cpp.
* src/audiothread.cpp: applied patch from Vladimir Senkov which fixes
  hanging notes in conjunction with the sustain pedal


Revision 30 - Directory Listing
Modified Sun Jan 11 16:43:54 2004 UTC (20 years, 2 months ago) by schoenebeck
* implemented amplitude envelope generator
* src/voice.cpp: some .gig instruments still sounded detuned, I hope
  finally to have this fixed now


Revision 29 - Directory Listing
Modified Fri Jan 2 00:05:42 2004 UTC (20 years, 2 months ago) by schoenebeck
updated Make files (autoconf 2.58, automake 1.6.3)


Revision 28 - Directory Listing
Modified Fri Jan 2 00:02:56 2004 UTC (20 years, 2 months ago) by schoenebeck
* src/gig.cpp: fixed looping informations ('LoopStart', 'LoopEnd' and
  'LoopSize')
* src/voice.cpp: pitch sample according to keyboard position only if
  keyrange > 1 key, this was the reason that some gig files were horrible
  detuned
* src/audioio.cpp: bigendian specific fix
* src/ringbuffer.h: removed kernel header dependency by adding own atomic.h


Revision 26 - Directory Listing
Modified Fri Dec 26 16:39:58 2003 UTC (20 years, 2 months ago) by schoenebeck
* implemented looping; RAM only loops (that is loops that end within the
  cached part of the sample) are handled in src/voice.cpp whereas
  disk stream looping is handled in src/stream.cpp and is mostly covered
  there by the new ReadAndLoop() method in class 'Sample' from src/gig.cpp


Revision 25 - Directory Listing
Modified Fri Dec 26 16:18:54 2003 UTC (20 years, 2 months ago) by schoenebeck
minor fix in Chunk::Read() method (only a minor efficiency issue)


Revision 23 - Directory Listing
Modified Thu Dec 25 18:03:43 2003 UTC (20 years, 2 months ago) by schoenebeck
src/midiin.cpp: fixed SubscribeToClient() method which is mandatory for the
command line switch --inputclient added with the recent commit batch


Revision 22 - Directory Listing
Modified Thu Dec 25 01:28:38 2003 UTC (20 years, 2 months ago) by schoenebeck
gig.cpp, gig.h: added method GetInstrument(uint index) to class 'File'
which is needed for the new command line switch --instrument in
linuxsampler.cpp (forgot this to commit with the recent commit batch)


Revision 20 - Directory Listing
Modified Thu Dec 25 00:02:45 2003 UTC (20 years, 2 months ago) by schoenebeck
* added command line switch --volume to set the global volume level
* added command line switch --inputclient to connect to an Alsa sequencer
  input client on startup (e.g. a MIDI port with a keyboard)
* added command line switch --instrument to select an instrument in case
  the instrument file provides more than one instrument


Revision 18 - Directory Listing
Modified Sun Dec 7 05:03:43 2003 UTC (20 years, 3 months ago) by schoenebeck
* src/audioio.cpp: added support for Alsa 1.0.0
* src/audiothread.cpp: fixed several bugs in sustain pedal handling
* src/diskthread.cpp: fixed several bugs which occured under extreme
  conditions (endless loop in audiothread, freezing the whole application,
  outage of available disk streams)
* src/voice.cpp: fixed cubic interpolation (disabled by default; you can
  enable it by setting USE_LINEAR_INTERPOLATION to 0 in src/voice.h)
* src/configure.in: added check for Alsa version


Revision 17 - Directory Listing
Modified Sat Nov 29 15:17:48 2003 UTC (20 years, 3 months ago) by schoenebeck
* implemented velocity->volume mapping: samples are now played back with a
  volume appropriate to the velocity of the triggered key, the velocity
  curve transformation functions (in src/gig.h) used for this are so far
  only an approximation to the ones from Gigasampler


Revision 15 - Directory Listing
Modified Sun Nov 23 21:16:49 2003 UTC (20 years, 3 months ago) by schoenebeck
* rewrote sustain pedal handling: instead of just queuing the note-offs I
  added a sustain pointer for each midi key which starts to point to the
  first active voice on the respective key and increments to the next voice
  on the key when a note-off arrived, the release velocity value will
  immediately be stored in the respective voice object (this also fixes the
  segmentation fault issue when the sustain pool was full)


Revision 14 - Directory Listing
Modified Fri Nov 21 15:40:40 2003 UTC (20 years, 4 months ago) by schoenebeck
boring: adjusted size of SustainedKeyPool to MAX_AUDIO_VOICES


Revision 13 - Directory Listing
Modified Fri Nov 21 15:07:23 2003 UTC (20 years, 4 months ago) by schoenebeck
* src/voice.cpp: fixed bug which caused a voice not free it's disk stream
  when the whole sample was already played back and the voice was going to
  free itself resulting in outage of unused disk streams after a while
* src/audioio.cpp: implemented automatic fallback to ALSA plughw when the
  sound card doesn't support one of the hardware parameters
* src/linuxsampler.cpp: solved segmentation fault issue when receiving a
  SIGINT which was caused due to the fact that all threads entered the
  signal handler (there still seems to occur a segfault on some certain
  circumstances though)
* added print out of all-time maximum usage of voices and streams and the
  current number of unused streams
* src/thread.cpp: the StopThread() method will now block until the
  associated thread actually stopped it's execution


Revision 12 - Directory Listing
Modified Sun Nov 16 19:01:50 2003 UTC (20 years, 4 months ago) by schoenebeck
* src/gig.cpp: fixed bug in decompression algorithm which caused it not to
  detect the end of a stream and let the disk streams reload forever also
  resulting in strange sounds at the end of disk voices (concerned only
  playback of compressed gig files)
* src/audiothread.cpp: deallocation of voices when they reached the end of
  playback (thus e.g. when sustain pedal is pressed and a disk stream
  reached it's end)
* various endian corrections needed for non intel systems
* introduced debug level, you can set the debug level and thus the
  verbosity of LinuxSampler in src/global.h


Revision 10 - Directory Listing
Modified Tue Nov 11 23:30:47 2003 UTC (20 years, 4 months ago) by senoner
* src/audiothread.cpp, src/audiothread.h: added Sustain Pedal support
  implemented by postponing note-offs and leting multiple voices play
  on the same MIDI key.
* added the RTELMemoryPool Class which is a fast RT-safe memory allocator
  and list manger
* src/linuxsampler.cpp: added a voice and stream counter debug message


Revision 9 - Directory Listing
Modified Wed Nov 5 14:47:10 2003 UTC (20 years, 4 months ago) by schoenebeck
* transition from plain Makefile to autotools, source files moved to src/
* configure.in: added test for x86 architecture
* src/voice.h: x86 specific asm optimization for double to int casts only
  if compiling for x86 architecture


Revision 5 - Directory Listing
Modified Sat Oct 25 20:24:31 2003 UTC (20 years, 4 months ago) by schoenebeck
Initial revision


Revision 4 - Directory Listing
Added Sat Oct 25 20:24:31 2003 UTC (20 years, 4 months ago) by (unknown author)
Standard project directories initialized by cvs2svn.

  ViewVC Help
Powered by ViewVC