--- web/trunk/www.linuxsampler.org/features.html 2005/05/15 15:31:45 542
+++ web/trunk/www.linuxsampler.org/features.html 2008/01/03 21:50:44 1621
@@ -88,7 +88,7 @@
bugsover = new Image();
bugsover.src = dir + "mbugshover.png";
- bugsout = new Image();
+ bugsout = new Image();
bugsout.src = dir + "mbugs.png";
}
-->
@@ -121,8 +121,26 @@
- Features / Development Roadmap
+ LS Development Roadmap
+
+ The following list shows the planned work to be done until the next
+ release of LinuxSampler. There will be no new release before all of them
+ are completed.
+
+
+
+ - nothing scheduled yet
+
+
+
+
+ Done |
+ Partly implemented |
+ No work started yet |
+
+
+ Features
The following list shows which features have already been implemented in
current CVS version of LinuxSampler and what is planned to be done in
@@ -130,38 +148,89 @@
listed below, you can write a proposol to the
developers mailing list
- or even better send us your patch if you have done something. Even
+ , open an "enhancement" request on our
+ bug tracking system
+ or even better send us your patch if you have done something. Even
if features are listed to be planned below, it can be that it takes a
while until somebody finds the time to implement it. So if you have the
time and will to finish one of them, let us know!
-
+
- Operating Systems
- Linux
- - Mac OSX
+ - Mac OS X (gigedit and JSampler are not yet available for OS X and thus not included with the installer yet)
+ - Windows (we provide a convenient Windows installer for all components of the project, only the instruments DB feature is not yet supported on Windows)
- Sampler Engines
- Gigasampler Engine
- - Gig file loader
- - Generic playback (RAM & disk streaming)
- - Dimension switching
- - Sustain pedal support
+ - Gig file loader
+
+ - Gig v2 format
+ - Gig v3 format
+
+ - large file support (64 bit file offsets are currently truncated to 32 bit)
+ - 24 bit samples (uncompressed as well as compressed)
+ - support for multi-file format (.gig, .gx01, .gx02, ...)
+ - support for articulation (.art) files
+ - support for Dimension Splits not equal to two
+ - up to 8 Dimensions or 256 Dimension Regions
+
+
+
+
+ - Generic playback (RAM playback & disk streaming)
+ - Dimension switching
+
+ - Sample Channel
+ - Layer
+ - Velocity
+ - Channel Aftertouch
+ - Release Trigger
+ - Keyboard Position
+ - Round Robin
+ - Random
+ - Modulation Wheel
+ - Breath Ctrl.
+ - Foot Ctrl.
+ - Portamento Time Ctrl.
+ - Effect 1 & 2 Ctrl.
+ - Effect 1 - 5 Depth Ctrl.
+ - General Purpose Ctrl. 1 - 8
+ - Sustain Pedal
+ - Portamento
+ - Sostenuto Pedal
+ - Soft Pedal
+
+
+ - Sustain pedal interpretation
+ - Sostenuto pedal interpretation
- Key velocity <-> volume mapping
- - Looping
+ - Looping
+
+ - endless loop
+ - limited amount of loops
+ - fractional looping
+
+
- Pitchbend wheel support
- - Bidirectional voice state transition
- - Filter (VCF)
+
- Bidirectional voice state transition, allowing
+ to cancel the relase stage of voices forth and back arbitrary
+ times if needed
+ - Filter (VCF)
- Highpass
- Bandpass
- - Bandreject
+ - Bandreject
- Lowpass
- - Turbo lowpass
+ - Turbo lowpass
+ - all filter types provide extremely
+ accurate characteristics compared to the original
+ Gigasampler format filters
- Cutoff frequency controllable by MIDI controller
- Resonance controllable by MIDI controller
@@ -174,10 +243,20 @@
- VCO Low Frequency Oscillator (Pitch)
- Layers
- Crossfades
- - Key Groups (a.k.a Exclusive Groups)
- - Release Triggered Voices
- - Key Switching
+ - Key Groups (a.k.a Exclusive Groups),
+ for mutually switching off sounds i.e. for drumkits
+ - Release Triggered Voices, specific samples
+ that are played back when voices are released
+ - Key Switching, which allows to map a certain
+ range on thy keyboard as additional performance controller,
+ i.e. for switching articulations of orchestral sounds in realtime
- Voice Stealing
+ - Portamento Mode and Solo Mode (a.k.a 'Mono Mode',
+ can be altered via standard GM messages, that is CC5 for
+ altering portamento time, CC65 for enabling / disabling
+ portamento mode, CC126 for enabling solo mode and CC127 for
+ disabling solo mode)
+ - Scale Tuning (via standard MIDI GS SysEx message)
- DLS Engine
@@ -188,7 +267,7 @@
- Akai Engine
- - Akai file loader (S1000, S3000 series)
+ - Akai file loader (S1000, S3000 series)
- Generic playback
- Custom, modular Engine
@@ -196,80 +275,33 @@
- Control interfaces
- - ALSA MIDI input
- - Network remote control layer for frontends (LSCP)
-
- - Events / Client Notification
- - Control Commands
-
- - GET AVAILABLE_AUDIO_OUTPUT_DRIVERS
- - GET AUDIO_OUTPUT_DRIVER INFO
- - GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO
- - CREATE AUDIO_OUTPUT_DEVICE
- - DESTROY AUDIO_OUTPUT_DEVICE
- - GET AUDIO_OUTPUT_DEVICES
- - LIST AUDIO_OUTPUT_DEVICES
- - GET AUDIO_OUTPUT_DEVICE INFO
- - SET AUDIO_OUTPUT_DEVICE_PARAMETER
- - GET AUDIO_OUTPUT_CHANNEL INFO
- - GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO
- - SET AUDIO_OUTPUT_CHANNEL_PARAMETER
- - GET AVAILABLE_MIDI_INPUT_DRIVERS
- - GET MIDI_INPUT_DRIVER INFO
- - GET MIDI_INPUT_DRIVER_PARAMETER INFO
- - CREATE MIDI_INPUT_DEVICE
- - DESTROY MIDI_INPUT_DEVICE
- - GET MIDI_INPUT_DEVICES
- - LIST MIDI_INPUT_DEVICES
- - GET MIDI_INPUT_DEVICE INFO
- - SET MIDI_INPUT_DEVICE_PARAMETER
- - GET MIDI_INPUT_PORT INFO
- - GET MIDI_INPUT_PORT_PARAMETER INFO
- - SET MIDI_INPUT_PORT_PARAMETER
- - ADD CHANNEL
- - GET CHANNELS
- - LIST CHANNELS
- - REMOVE CHANNEL
- - GET AVAILABLE_ENGINES
- - GET ENGINE INFO
- - GET CHANNEL INFO
- - LOAD ENGINE
- - LOAD INSTRUMENT
- - GET CHANNEL VOICE_COUNT
- - GET CHANNEL STREAM_COUNT
- - GET CHANNEL BUFFER_FILL
- - SET CHANNEL AUDIO_OUTPUT_DEVICE
- - SET CHANNEL AUDIO_OUTPUT_TYPE
- - SET CHANNEL AUDIO_OUTPUT_CHANNEL
- - SET CHANNEL MIDI_INPUT_DEVICE
- - SET CHANNEL MIDI_INPUT_TYPE
- - SET CHANNEL MIDI_INPUT_PORT
- - SET CHANNEL MIDI_INPUT_CHANNEL
- - SET CHANNEL VOLUME
- - RESET CHANNEL
- - SUBSCRIBE
- - UNSUBSCRIBE
- - SET ECHO
- - QUIT
- - RESET
-
-
-
+ - Native C++ API
+ - Custom network interface for frontends (LSCP)
- - VSTi
- - MIDI over ethernet (Distributed MIDI)
- - CoreMIDI (Mac OSX)
+ - OSC
+
- - Audio output interfaces
+
- MIDI input drivers
+
+ - ALSA (Linux)
+ - JACK (Linux, OSX, Windows, ...)
+ - VSTi
+ - MIDI over ethernet (Distributed MIDI)
+ - CoreMIDI (Mac OS X)
+ - MidiShare (Linux, OS X, Windows)
+ - MME (Windows)
+
+
+ - Audio output drivers
- - ALSA
- - JACK
+ - ALSA (Linux)
+ - JACK (Linux, OSX, Windows, ...)
+ - aRts (not RT safe!)
+ - ASIO (Windows)
- VSTi
- Audio over ethernet
- - CoreAudio (Mac OSX)
+ - CoreAudio (Mac OS X)
- Time stamp event system & jitter correction
@@ -284,10 +316,79 @@
- Dynamic engine recompilation
- Extensive SMP (multi processor) support
- Network cluster support
+ - MIDI instrument mapper, allows to create very flexible MIDI progam change setups in a very easy way.
+
+ - MIDI program change
+ - MIDI bank select (automatic detection of MSB only, LSB only or full MSB+LSB)
+ - Load Strategy for each Item individually
+
+ - On-Demand: loads the instrument only when needed, frees it immediately once not used by any sampler channel anymore
+ - On-Demand-Hold: loads the instrument when needed and keeps it in memory, that is even if not used by a sampler channel
+ - Persistent: loads the instrument immediately in the background (i.e. at sampler startup), allowing immediate program changes in realtime even of largest instruments, without wait time
+ - Default: let the sampler decide
+
+
+ - Volume Factor for each Item, allowing to compensate the volume difference of sample library collections i.e. for live performances, without having to edit the instrument files
+ - Mapping of arbitrary Instrument Files, already independent of the underlying format in respect for future sampler engines
+ - arbitrary amount of independent MIDI instrumet maps, (i.e. for chromatic instruments, drumkits, ...), each sampler channel can be assigned to a specific MIDI map
+
+
+ - Effect Sends
+
+ - Arbitrary Amount of FX Sends on Sampler Channels
+ - Realtime MIDI Control of Send Level
+ - Arbitrary MIDI Controller assignable
+ - Flexible Routing i.e. to a dedicated effect audio output
+
+
+
+ - Instrument Database System, allowing to keep track of even the largest sample library collections
+
+ - Ordering in Categories
+ - Search by various Criteria
+ - Transparently maintained on backend side
+
+
- (Graphical) frontends
- - Qt based frontend
- - VSTi frontend (based on the Qt frontend)
+ - QSampler (C++ based frontend using Qt)
+
+ - Supports all features of LinuxSampler except the following ...
+ -
+ Effect Sends (qsampler retrieves current FX send settings from the sampler,
+ stores FX send settings in session .lscp files and restores them, but
+ currently does not yet offer a widget to modify FX send settings)
+
+ - MIDI Instrument Maps
+ (qsampler does currently not yet support to create more than two MIDI instrument maps [one intended for chromatic instruments and one for drumkits])
+
+ - Instruments DB support (to ease handling of huge sample library collections)
+ - Sampler events (to let qsampler react on certain events occuring on sampler side)
+ - Audio and MIDI device management (only minor thing that qsampler lacks support yet are "multiplicity" type device parameters, that is parameters which don't just accept one value, but also a list of values, i.e. for the "ALSA_SEQ_BINDINGS" parameter of the ALSA MIDI driver)
+
+
+ - JSampler (Java based frontend)
+
+ - Supports all currently available features of LinuxSampler
+
+
+ - VSTi frontend
+
+
+ - Playing while Loading, i.e. allowing to play and hold notes on the keyboard
+ while loading a new instrument on the same sampler channel at the same time
+ - Instrument Editor Plugin System for 3rd Party Instrument Editors
+ - Instrument Editors
+
+ - gigedit (C++ based using gtkmm/Gtk+)
+
+ - allows to modify all aspects of Gigsampler v2 and v3 format files
+ - allows to modify existing as well as creating completely new .gig files from scratch
+ - stand-alone mode (independent of LinuxSampler)
+ - live-mode (attached with LinuxSampler), which makes all modifications audible in the sampler in realtime without having to reload
+ - created / modified files are accepted by LinuxSampler as well as by Gigastudio 3
+
+
@@ -305,7 +406,8 @@
- (List last updated 2005-02-10, also see CVS Log for recent changes)
+ (Last page update on $Date: 2008-01-03 21:50:44 $ by $Author: schoenebeck $,
+ also see CVS Log for recent changes)
|