CVS log for linuxsampler/src/linuxsampler.cpp

(logo)

Help

(back) Up to [ls] / linuxsampler / src

Request diff between arbitrary revisions / Display revisions graphically


Default branch: MAIN
Bookmark a link to: HEAD / (download)

Revision 1.36 / (as text) / (view) - annotate - [select for diffs] , Sun Jan 7 15:52:36 2007 UTC (2 years ago) by capela
Branch: MAIN
CVS Tags: HEAD
Changes since 1.35: +4 -4 lines
Diff to previous 1.35
* Fixed a memory leak due to EngineFactory::Destroy() not doing it
as an actual destructor and just removing the engine instance from
factory stock and all instances allocated via EngineFactory::Create()
never got delete'd and thus their destructors never called. This bug
was evident while having many mapped instruments and querying the
instrument status via GET MIDI_INSTRUMENT INFO command, eating up
system memory very quickly and never let it go.

Revision 1.35 / (as text) / (view) - annotate - [select for diffs] , Wed Jul 5 16:53:22 2006 UTC (2 years, 6 months ago) by schoenebeck
Branch: MAIN
CVS Tags: release0_4_0
Changes since 1.34: +1 -2 lines
Diff to previous 1.34
* src/Sampler.h, src/Sampler.cpp: allow 3rd party applications to
  retrieve available drivers and sampler engines
* src/linuxsampler.cpp: show available engines on startup (on the console)

Revision 1.34 / (as text) / (view) - annotate - [select for diffs] , Sun Feb 26 13:00:07 2006 UTC (2 years, 10 months ago) by persson
Branch: MAIN
Changes since 1.33: +1 -1 lines
Diff to previous 1.33
* fixed some concurrency problems between the lscp thread and the
  audio/midi threads for these commands: load engine, set channel
  audio output device, set channel midi input device/port/channel and
  remove channel. Thanks to Vincent Bongiorno for bug reports and
  testing.
* removed an autotools warning
* fixed an iterator bug
* minor code clean-ups

Revision 1.33 / (as text) / (view) - annotate - [select for diffs] , Sun Jan 8 20:19:49 2006 UTC (3 years ago) by schoenebeck
Branch: MAIN
Changes since 1.32: +2 -2 lines
Diff to previous 1.32
* bugfix in LSCP parser which was confused by space(s) within device
  parameters
  (e.g. "SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 0 SOMEPARAM='foo bar'")
* changed version to 0.3.3cvs

Revision 1.32 / (as text) / (view) - annotate - [select for diffs] , Thu Dec 22 19:29:52 2005 UTC (3 years ago) by wylder
Branch: MAIN
Changes since 1.31: +5 -1 lines
Diff to previous 1.31
change kill statement to use pid rather than thread id

Revision 1.31 / (as text) / (view) - annotate - [select for diffs] , Fri Sep 23 05:58:26 2005 UTC (3 years, 3 months ago) by iliev
Branch: MAIN
Changes since 1.30: +2 -0 lines
Diff to previous 1.30
Added new LSCP commands: GET TOTAL_VOICE_COUNT,
GET TOTAL_VOICE_COUNT_MAX, SUBSCRIBE/UNSUBSCRIBE TOTAL_VOICE_COUNT

Revision 1.30 / (as text) / (view) - annotate - [select for diffs] , Sun Sep 11 14:56:29 2005 UTC (3 years, 3 months ago) by schoenebeck
Branch: MAIN
Changes since 1.29: +1 -0 lines
Diff to previous 1.29
* synthesis core optimizations

Revision 1.29 / (as text) / (view) - annotate - [select for diffs] , Sun Jun 19 20:22:34 2005 UTC (3 years, 6 months ago) by senkov
Branch: MAIN
CVS Tags: release0_3_3, release0_3_2
Changes since 1.28: +28 -3 lines
Diff to previous 1.28
* added cmdline options for lscp address and port

Revision 1.28 / (as text) / (view) - annotate - [select for diffs] , Tue May 24 18:20:19 2005 UTC (3 years, 7 months ago) by schoenebeck
Branch: MAIN
CVS Tags: release0_3_1
Changes since 1.27: +4 -24 lines
Diff to previous 1.27
* 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 1.27 / (as text) / (view) - annotate - [select for diffs] , Sun May 22 19:43:31 2005 UTC (3 years, 7 months ago) by schoenebeck
Branch: MAIN
Changes since 1.26: +1 -1 lines
Diff to previous 1.26
* (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 1.26 / (as text) / (view) - annotate - [select for diffs] , Sat Mar 5 07:27:47 2005 UTC (3 years, 10 months ago) by persson
Branch: MAIN
Changes since 1.25: +51 -36 lines
Diff to previous 1.25
* fixed a bug that sometimes caused clicks at the beginning of samples
* added denormal number elimination for CPUs with SSE2 support

Revision 1.25 / (as text) / (view) - annotate - [select for diffs] , Thu Mar 3 03:25:17 2005 UTC (3 years, 10 months ago) by schoenebeck
Branch: MAIN
Changes since 1.24: +21 -6 lines
Diff to previous 1.24
* 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 1.24 / (as text) / (view) - annotate - [select for diffs] , Sat Feb 26 02:01:14 2005 UTC (3 years, 10 months ago) by schoenebeck
Branch: MAIN
Changes since 1.23: +5 -1 lines
Diff to previous 1.23
* 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 1.23 / (as text) / (view) - annotate - [select for diffs] , Wed Feb 9 01:22:18 2005 UTC (3 years, 11 months ago) by schoenebeck
Branch: MAIN
CVS Tags: v0_2_0
Changes since 1.22: +5 -1 lines
Diff to previous 1.22
* bunch of fixes for OSX (patch by Stephane Letz)

Revision 1.22 / (as text) / (view) - annotate - [select for diffs] , Mon Feb 7 00:19:30 2005 UTC (3 years, 11 months ago) by senkov
Branch: MAIN
Changes since 1.21: +24 -1 lines
Diff to previous 1.21
* Updated implementation for real time notify messages:
VOICE_COUNT, STREAM_COUNT, BUFFER_FILL

Revision 1.21 / (as text) / (view) - annotate - [select for diffs] , Sat Dec 25 21:58:58 2004 UTC (4 years ago) by schoenebeck
Branch: MAIN
Changes since 1.20: +2 -1 lines
Diff to previous 1.20
* architecture independence fixes, should now compile again for non x86
  systems
* tiny fix of command line switch --version

Revision 1.20 / (as text) / (view) - annotate - [select for diffs] , Tue Dec 21 04:54:36 2004 UTC (4 years ago) by senkov
Branch: MAIN
Changes since 1.19: +53 -94 lines
Diff to previous 1.19
* Added some profiling capabilities, bugs.

Revision 1.19 / (as text) / (view) - annotate - [select for diffs] , Mon Dec 13 00:46:42 2004 UTC (4 years ago) by schoenebeck
Branch: MAIN
Changes since 1.18: +11 -0 lines
Diff to previous 1.18
* 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 1.18 / (as text) / (view) - annotate - [select for diffs] , Fri Oct 8 19:51:39 2004 UTC (4 years, 3 months ago) by schoenebeck
Branch: MAIN
Changes since 1.17: +66 -10 lines
Diff to previous 1.17
* 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 1.17 / (as text) / (view) - annotate - [select for diffs] , Sat Aug 14 22:00:44 2004 UTC (4 years, 4 months ago) by schoenebeck
Branch: MAIN
Changes since 1.16: +1 -1 lines
Diff to previous 1.16
* 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 1.16 / (as text) / (view) - annotate - [select for diffs] , Sun Jul 25 22:27:41 2004 UTC (4 years, 5 months ago) by schoenebeck
Branch: MAIN
Changes since 1.15: +4 -62 lines
Diff to previous 1.15
* 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 1.15 / (as text) / (view) - annotate - [select for diffs] , Thu Jul 15 20:51:15 2004 UTC (4 years, 5 months ago) by schoenebeck
Branch: MAIN
Changes since 1.14: +5 -1 lines
Diff to previous 1.14
* src/linuxsampler.cpp: print out LinuxSampler version and show all
  registered MIDI input drivers
* renamed class 'InputOutputDevice' -> 'Device'

Revision 1.14 / (as text) / (view) - annotate - [select for diffs] , Tue Jul 13 21:44:13 2004 UTC (4 years, 5 months ago) by schoenebeck
Branch: MAIN
Changes since 1.13: +1 -1 lines
Diff to previous 1.13
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 1.13 / (as text) / (view) - annotate - [select for diffs] , Mon Jun 14 18:33:16 2004 UTC (4 years, 6 months ago) by schoenebeck
Branch: MAIN
Changes since 1.12: +6 -0 lines
Diff to previous 1.12
* 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 1.12 / (as text) / (view) - annotate - [select for diffs] , Mon May 3 18:29:44 2004 UTC (4 years, 8 months ago) by schoenebeck
Branch: MAIN
Changes since 1.11: +1 -1 lines
Diff to previous 1.11
forgot to update copyright header for 2004 for following files:
src/linuxsampler.cpp,
src/Sampler.h,
src/Sampler.cpp,
src/network/lscpscanner.cpp

Revision 1.11 / (as text) / (view) - annotate - [select for diffs] , Mon Apr 26 16:15:50 2004 UTC (4 years, 8 months ago) by schoenebeck
Branch: MAIN
Changes since 1.10: +53 -68 lines
Diff to previous 1.10
* 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 1.10 / (as text) / (view) - annotate - [select for diffs] , Wed Mar 31 09:28:42 2004 UTC (4 years, 9 months ago) by schoenebeck
Branch: MAIN
CVS Tags: v0_1_0, singlechannel
Changes since 1.9: +0 -4 lines
Diff to previous 1.9
removed unnecessary dependencies

Revision 1.9 / (as text) / (view) - annotate - [select for diffs] , Fri Mar 5 13:46:15 2004 UTC (4 years, 10 months ago) by schoenebeck
Branch: MAIN
Changes since 1.8: +41 -71 lines
Diff to previous 1.8
* 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 1.8 / (as text) / (view) - annotate - [select for diffs] , Mon Feb 16 19:30:42 2004 UTC (4 years, 10 months ago) by schoenebeck
Branch: MAIN
Changes since 1.7: +65 -24 lines
Diff to previous 1.7
* 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 1.7 / (as text) / (view) - annotate - [select for diffs] , Sun Jan 18 20:31:31 2004 UTC (4 years, 11 months ago) by schoenebeck
Branch: MAIN
Changes since 1.6: +23 -7 lines
Diff to previous 1.6
* 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 1.6 / (as text) / (view) - annotate - [select for diffs] , Thu Dec 25 00:02:45 2003 UTC (5 years ago) by schoenebeck
Branch: MAIN
Changes since 1.5: +39 -6 lines
Diff to previous 1.5
* 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 1.5 / (as text) / (view) - annotate - [select for diffs] , Sun Dec 7 05:03:43 2003 UTC (5 years, 1 month ago) by schoenebeck
Branch: MAIN
Changes since 1.4: +1 -1 lines
Diff to previous 1.4
* 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 1.4 / (as text) / (view) - annotate - [select for diffs] , Fri Nov 21 15:07:23 2003 UTC (5 years, 1 month ago) by schoenebeck
Branch: MAIN
Changes since 1.3: +8 -4 lines
Diff to previous 1.3
* 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 1.3 / (as text) / (view) - annotate - [select for diffs] , Sun Nov 16 19:01:50 2003 UTC (5 years, 1 month ago) by schoenebeck
Branch: MAIN
Changes since 1.2: +11 -20 lines
Diff to previous 1.2
* 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 1.2 / (as text) / (view) - annotate - [select for diffs] , Tue Nov 11 23:30:47 2003 UTC (5 years, 1 month ago) by senoner
Branch: MAIN
Changes since 1.1: +5 -1 lines
Diff to previous 1.1
* 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 1.1 / (as text) / (view) - annotate - [select for diffs] , Wed Nov 5 14:47:10 2003 UTC (5 years, 2 months ago) by schoenebeck
Branch: MAIN
* 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

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Diffs between and
Type of Diff should be a

View only Branch:
Sort log by:

LinuxSampler Developers
Powered by
ViewCVS