Log of /linuxsampler/branches/release0_5_0/src/network/lscp.y
Parent Directory
| Revision Log
Revision
1399 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Oct 11 18:53:29 2007 UTC
(16 years, 6 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 61348 byte(s)
Diff to
previous 1389
* the following LSCP command return escape sequences in at least one
of their LSCP response fields: "GET ENGINE INFO", "GET CHANNEL INFO",
"GET MIDI_INSTRUMENT INFO", "GET MIDI_INSTRUMENT_MAP INFO",
"GET FX_SEND INFO", "GET SERVER INFO"
* listed all LSCP commands in the LSCP specs which may use escape
sequences in at least on of their response fields
* hide instrument editor related debug messages in the gig::Engine when
using the default debug level (which is 1)
* bumped version to 0.4.0.8cvs
Revision
1389 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Oct 7 14:05:04 2007 UTC
(16 years, 6 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 62087 byte(s)
Diff to
previous 1387
* the following LSCP commands now also support escape sequences for at
least one of their text-based arguments (i.e. name, description):
"ADD MIDI_INSTRUMENT_MAP", "SET MIDI_INSTRUMENT_MAP NAME",
"SET FX_SEND NAME", "CREATE FX_SEND"
* the LSCP spec doc now lists all LSCP commands which support escape
sequences as one of their arguments
Revision
1379 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Oct 4 12:18:16 2007 UTC
(16 years, 6 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 61937 byte(s)
Diff to
previous 1353
* bugfix in LSCP parser: all comma separated lists of strings were treated
as being one string containing commas, this affected device parameter
LSCP commands (fixes #57)
* minor code refactoring regarding DB paths in src/network/lscp.y
Revision
1296 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Aug 15 17:43:34 2007 UTC
(16 years, 8 months ago)
by
iliev
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 60152 byte(s)
Diff to
previous 1253
* bugfix: The previous bindings were not been disconnected when
altering the ALSA_SEQ_BINDINGS parameter.
* Introduced a NONE keyword for unsubscribing from all bindings
(e.g. SET MIDI_INPUT_PORT_PARAMETER 0 0 ALSA_SEQ_BINDINGS=NONE).
Revision
1245 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 19 15:54:13 2007 UTC
(16 years, 10 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 59099 byte(s)
Diff to
previous 1212
* filename arguments in LSCP commands now allow to use escape
sequences, that is directly literal as one of: \', \", \\, \n, \r,
\f, \t, \v, or as octal ASCII code value like \132, or as hex ASCII
code value like \xf2) (fixes bug #24)
* parser now supports extended ASCII character set
(up to ASCII code 255, i.e. includes now umlauts and accents)
* LSCP parser C++ files are now automatically regenerated when
yacc input source file (lscp.y) was modified
Revision
1212 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue May 29 23:59:36 2007 UTC
(16 years, 11 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 58292 byte(s)
Diff to
previous 1200
* added highly experimental support for on-the-fly instrument editing
within the sampler's process (by using instrument editor plugins),
you'll notice the new "Registered instrument editors:" message on
startup, the plugin path can be overridden at compile time with
./configure --enable-plugin-dir=/some/dir
* added a new LSCP command "EDIT INSTRUMENT <sampler-channel>" to spawn
a matching instrument editor for the instrument on the given sampler
channel (LSCP command syntax might be subject to change soon)
* config.h is not going to be installed along with liblinuxsampler's
API header files anymore (not necessary anymore)
* take care of $(DESTDIR) when creating the instruments DB on 'make
install' rule (needed for packaging and cross compilation)
* bumped version to 0.4.0.5cvs
Revision
1047 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Feb 19 19:38:04 2007 UTC
(17 years, 2 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 46898 byte(s)
Diff to
previous 1026
* by default now all "MAP MIDI_INSTRUMENT" LSCP commands (also the
"PERSISTENT" ones) block until the respective mapping is completely
established in the sampler, added a new argument though to allow
explicit mapping in the background ("MAP MIDI_INSTRUMENT NON_MODAL")
* LSCP documentation updated
Revision
1026 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Jan 14 17:10:59 2007 UTC
(17 years, 3 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 46648 byte(s)
Diff to
previous 1005
* extended response of LSCP command "GET FX_SEND INFO" to return the FX
Send's MIDI controller and current send level and added two new LSCP
commands "SET FX_SEND MIDI_CONTROLLER" and "SET FX_SEND LEVEL"
respectively
Revision
973 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Dec 15 21:40:27 2006 UTC
(17 years, 4 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 41021 byte(s)
Diff to
previous 947
* revised and extended MIDI instrument mapping feature to allow managing
arbitrary amount of maps and assigning each sampler channel individually
to one map (this commit batch includes LSCP spec document update and
respective implementation on LS side)
Revision
705 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Jul 20 21:43:23 2005 UTC
(18 years, 9 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 33533 byte(s)
Diff to
previous 573
* 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
563 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun May 22 20:43:32 2005 UTC
(18 years, 11 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 32693 byte(s)
Diff to
previous 556
* (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
527 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon May 9 11:59:58 2005 UTC
(18 years, 11 months ago)
by
capela
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 32270 byte(s)
Diff to
previous 483
* [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
411 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat Feb 26 02:01:14 2005 UTC
(19 years, 2 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 31367 byte(s)
Diff to
previous 397
* 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
226 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Aug 25 22:00:33 2004 UTC
(19 years, 8 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 31065 byte(s)
Diff to
previous 225
* 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 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Aug 22 14:46:47 2004 UTC
(19 years, 8 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 31045 byte(s)
Diff to
previous 221
* 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
221 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Aug 20 17:25:19 2004 UTC
(19 years, 8 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 31073 byte(s)
Diff to
previous 219
* 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 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Aug 17 20:35:04 2004 UTC
(19 years, 8 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 30844 byte(s)
Diff to
previous 214
* 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
214 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat Aug 14 23:00:44 2004 UTC
(19 years, 8 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 17929 byte(s)
Diff to
previous 212
* 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 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Jul 28 14:17:29 2004 UTC
(19 years, 9 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 17969 byte(s)
Diff to
previous 210
* 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
209 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Jul 18 00:29:39 2004 UTC
(19 years, 9 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 17399 byte(s)
Diff to
previous 185
* 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
170 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat Jul 3 20:08:07 2004 UTC
(19 years, 9 months ago)
by
senkov
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 17146 byte(s)
Diff to
previous 159
* 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
159 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 29 21:11:50 2004 UTC
(19 years, 10 months ago)
by
capela
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 17458 byte(s)
Diff to
previous 155
* 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
143 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 23 18:54:08 2004 UTC
(19 years, 10 months ago)
by
capela
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 14880 byte(s)
Diff to
previous 141
* 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
123 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Jun 14 19:33:16 2004 UTC
(19 years, 10 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 13305 byte(s)
Diff to
previous 111
* 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
64 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu May 6 20:06:20 2004 UTC
(19 years, 11 months ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 9405 byte(s)
Diff to
previous 56
* 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
53 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Apr 26 17:15:51 2004 UTC
(20 years ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 9387 byte(s)
Diff to
previous 35
* 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
35 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Added
Fri Mar 5 13:46:15 2004 UTC
(20 years, 1 month ago)
by
schoenebeck
Original Path:
linuxsampler/trunk/src/network/lscp.y
File length: 9353 byte(s)
* 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
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.