/[svn]/linuxsampler/trunk
ViewVC logotype

Log of /linuxsampler/trunk

View Directory Listing Directory Listing


Sticky Revision:

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