1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
2 |
<html lang="en"><head><title>LinuxSampler Control Protocol</title> |
<html lang="en"><head><title>LinuxSampler Control Protocol (draft)</title> |
3 |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
4 |
<meta name="description" content="LinuxSampler Control Protocol"> |
<meta name="description" content="LinuxSampler Control Protocol (draft)"> |
5 |
<meta name="keywords" content="LSCP"> |
<meta name="keywords" content="LSCP"> |
6 |
<meta name="generator" content="xml2rfc v1.32 (http://xml.resource.org/)"> |
<meta name="generator" content="xml2rfc v1.32 (http://xml.resource.org/)"> |
7 |
<style type='text/css'><!-- |
<style type='text/css'><!-- |
145 |
<tr><td class="header">LinuxSampler Developers</td><td class="header">C. Schoenebeck</td></tr> |
<tr><td class="header">LinuxSampler Developers</td><td class="header">C. Schoenebeck</td></tr> |
146 |
<tr><td class="header">Internet-Draft</td><td class="header">Interessengemeinschaft Software</td></tr> |
<tr><td class="header">Internet-Draft</td><td class="header">Interessengemeinschaft Software</td></tr> |
147 |
<tr><td class="header">Intended status: Standards Track</td><td class="header">Engineering e. V.</td></tr> |
<tr><td class="header">Intended status: Standards Track</td><td class="header">Engineering e. V.</td></tr> |
148 |
<tr><td class="header">Expires: November 25, 2007</td><td class="header">May 24, 2007</td></tr> |
<tr><td class="header">Expires: December 24, 2007</td><td class="header">June 22, 2007</td></tr> |
149 |
</table></td></tr></table> |
</table></td></tr></table> |
150 |
<h1><br />LinuxSampler Control Protocol<br />LSCP 1.2</h1> |
<h1><br />LinuxSampler Control Protocol (draft)<br />LSCP 1.2cvs</h1> |
151 |
|
|
152 |
<h3>Status of this Memo</h3> |
<h3>Status of this Memo</h3> |
153 |
<p> |
<p> |
173 |
The list of Internet-Draft Shadow Directories can be accessed at |
The list of Internet-Draft Shadow Directories can be accessed at |
174 |
<a href='http://www.ietf.org/shadow.html'>http://www.ietf.org/shadow.html</a>.</p> |
<a href='http://www.ietf.org/shadow.html'>http://www.ietf.org/shadow.html</a>.</p> |
175 |
<p> |
<p> |
176 |
This Internet-Draft will expire on November 25, 2007.</p> |
This Internet-Draft will expire on December 24, 2007.</p> |
177 |
|
|
178 |
<h3>Copyright Notice</h3> |
<h3>Copyright Notice</h3> |
179 |
<p> |
<p> |
434 |
Getting job status information<br /> |
Getting job status information<br /> |
435 |
<a href="#command_syntax">7.</a> |
<a href="#command_syntax">7.</a> |
436 |
Command Syntax<br /> |
Command Syntax<br /> |
437 |
|
<a href="#character_set">7.1.</a> |
438 |
|
Character Set and Escape Sequences<br /> |
439 |
<a href="#events">8.</a> |
<a href="#events">8.</a> |
440 |
Events<br /> |
Events<br /> |
441 |
<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT">8.1.</a> |
<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT">8.1.</a> |
514 |
(front-end) and server (LinuxSampler) respectively. Lines in |
(front-end) and server (LinuxSampler) respectively. Lines in |
515 |
examples must be interpreted as every line being CRLF |
examples must be interpreted as every line being CRLF |
516 |
terminated (carriage return character followed by line feed |
terminated (carriage return character followed by line feed |
517 |
character as defined in the ASCII standard), thus the following |
character as defined in the ASCII standard <a class='info' href='#RFC20'>[RFC20]<span> (</span><span class='info'>UCLA, “ASCII format for Network Interchange,” 1969.</span><span>)</span></a>), |
518 |
example: |
thus the following example: |
519 |
</p> |
</p> |
520 |
<p> |
<p> |
521 |
</p> |
</p> |
3377 |
number of the sampler channel the instrument should be assigned to. |
number of the sampler channel the instrument should be assigned to. |
3378 |
Each sampler channel can only have one instrument. |
Each sampler channel can only have one instrument. |
3379 |
</p> |
</p> |
3380 |
|
<p>Notice: since LSCP 1.2 the <filename> argument supports |
3381 |
|
escape characters for special characters (see chapter |
3382 |
|
"<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>" |
3383 |
|
for details) and accordingly backslash characters in the filename |
3384 |
|
MUST now be escaped as well! |
3385 |
|
</p> |
3386 |
<p>The difference between regular and NON_MODAL versions of the command |
<p>The difference between regular and NON_MODAL versions of the command |
3387 |
is that the regular command returns OK only after the instrument has been |
is that the regular command returns OK only after the instrument has been |
3388 |
fully loaded and the channel is ready to be used while NON_MODAL version |
fully loaded and the channel is ready to be used while NON_MODAL version |
6655 |
index, <engine_name> a sampler engine name as returned by |
index, <engine_name> a sampler engine name as returned by |
6656 |
the <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a> |
the <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a> |
6657 |
command (not encapsulated into apostrophes), <filename> the name |
command (not encapsulated into apostrophes), <filename> the name |
6658 |
of the instrument's file to be deployed (encapsulated into apostrophes), |
of the instrument's file to be deployed (encapsulated into apostrophes, |
6659 |
|
supporting escape sequences as described in chapter |
6660 |
|
"<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>"), |
6661 |
<instrument_index> the index (integer value) of the instrument |
<instrument_index> the index (integer value) of the instrument |
6662 |
within the given file, <volume_value> reflects the master |
within the given file, <volume_value> reflects the master |
6663 |
volume of the instrument as optionally dotted number (where a |
volume of the instrument as optionally dotted number (where a |
8659 |
<p>SIZE=[<min>]..[<max>] |
<p>SIZE=[<min>]..[<max>] |
8660 |
</p> |
</p> |
8661 |
<blockquote class="text"> |
<blockquote class="text"> |
8662 |
<p>Restricts the search to instruments, which |
<p>Restricts the search to instruments, which |
8663 |
size is in the specified range. If <min> is omitted, |
size is in the specified range. If <min> is omitted, |
8664 |
the search results are restricted to instruments with size less then |
the search results are restricted to instruments with size less then |
8665 |
or equal to <max>. If <max> is omitted, the |
or equal to <max>. If <max> is omitted, the |
8750 |
<p>IS_DRUM=true | false |
<p>IS_DRUM=true | false |
8751 |
</p> |
</p> |
8752 |
<blockquote class="text"> |
<blockquote class="text"> |
8753 |
<p>Either true or false. Restricts the search to |
<p>Either true or false. Restricts the search to |
8754 |
drum kits or chromatic instruments. |
drum kits or chromatic instruments. |
8755 |
</p> |
</p> |
8756 |
</blockquote><p> |
</blockquote><p> |
9025 |
<p>/ COPY SP copy_instruction |
<p>/ COPY SP copy_instruction |
9026 |
|
|
9027 |
</p> |
</p> |
9028 |
|
<p>/ EDIT SP edit_instruction |
9029 |
|
|
9030 |
|
</p> |
9031 |
<p>/ RESET |
<p>/ RESET |
9032 |
|
|
9033 |
</p> |
</p> |
9619 |
</blockquote><p> |
</blockquote><p> |
9620 |
|
|
9621 |
</p> |
</p> |
9622 |
|
<p>edit_instruction = |
9623 |
|
</p> |
9624 |
|
<blockquote class="text"> |
9625 |
|
<p>INSTRUMENT SP sampler_channel |
9626 |
|
|
9627 |
|
</p> |
9628 |
|
</blockquote><p> |
9629 |
|
|
9630 |
|
</p> |
9631 |
<p>modal_arg = |
<p>modal_arg = |
9632 |
</p> |
</p> |
9633 |
<blockquote class="text"> |
<blockquote class="text"> |
9910 |
<p>filename = |
<p>filename = |
9911 |
</p> |
</p> |
9912 |
<blockquote class="text"> |
<blockquote class="text"> |
9913 |
<p>stringval |
<p>stringval_escaped |
9914 |
|
|
9915 |
</p> |
</p> |
9916 |
</blockquote><p> |
</blockquote><p> |
10012 |
</blockquote><p> |
</blockquote><p> |
10013 |
|
|
10014 |
</p> |
</p> |
10015 |
|
<a name="character_set"></a><br /><hr /> |
10016 |
|
<table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc"> TOC </a></td></tr></table> |
10017 |
|
<a name="rfc.section.7.1"></a><h3>7.1. |
10018 |
|
Character Set and Escape Sequences</h3> |
10019 |
|
|
10020 |
|
<p>Older versions of this protocol up to and including v1.1 only |
10021 |
|
supported the standard ASCII character set (ASCII code 0 - 127) |
10022 |
|
<a class='info' href='#RFC20'>[RFC20]<span> (</span><span class='info'>UCLA, “ASCII format for Network Interchange,” 1969.</span><span>)</span></a>, all younger versions of this protocol |
10023 |
|
however support the Extended ASCII character set (ASCII code |
10024 |
|
0 - 255). The same group of younger protocols also support |
10025 |
|
escape sequences, but only for certain, explicitly declared |
10026 |
|
parts of the protocol. The supported escape sequences are |
10027 |
|
defined as follows: |
10028 |
|
</p><table class="full" align="center" border="0" cellpadding="2" cellspacing="2"> |
10029 |
|
<col align="left"><col align="left"> |
10030 |
|
<tr><th align="left">ASCII Character Sequence</th><th align="left">Translated into (Name)</th></tr> |
10031 |
|
<tr> |
10032 |
|
<td align="left">\n</td> |
10033 |
|
<td align="left">new line</td> |
10034 |
|
</tr> |
10035 |
|
<tr> |
10036 |
|
<td align="left">\r</td> |
10037 |
|
<td align="left">carriage return</td> |
10038 |
|
</tr> |
10039 |
|
<tr> |
10040 |
|
<td align="left">\f</td> |
10041 |
|
<td align="left">form feed</td> |
10042 |
|
</tr> |
10043 |
|
<tr> |
10044 |
|
<td align="left">\t</td> |
10045 |
|
<td align="left">horizontal tab</td> |
10046 |
|
</tr> |
10047 |
|
<tr> |
10048 |
|
<td align="left">\v</td> |
10049 |
|
<td align="left">vertical tab</td> |
10050 |
|
</tr> |
10051 |
|
<tr> |
10052 |
|
<td align="left">\'</td> |
10053 |
|
<td align="left">apostrophe</td> |
10054 |
|
</tr> |
10055 |
|
<tr> |
10056 |
|
<td align="left">\"</td> |
10057 |
|
<td align="left">quotation mark</td> |
10058 |
|
</tr> |
10059 |
|
<tr> |
10060 |
|
<td align="left">\\</td> |
10061 |
|
<td align="left">backslash</td> |
10062 |
|
</tr> |
10063 |
|
<tr> |
10064 |
|
<td align="left">\OOO</td> |
10065 |
|
<td align="left">three digit octal ASCII code of the character</td> |
10066 |
|
</tr> |
10067 |
|
<tr> |
10068 |
|
<td align="left">\xHH</td> |
10069 |
|
<td align="left">two digit hex ASCII code of the character</td> |
10070 |
|
</tr> |
10071 |
|
</table> |
10072 |
|
|
10073 |
|
<p>Notice: due to the transition of certain parts of the |
10074 |
|
protocol which now support escape sequences, a slight backward |
10075 |
|
incompatibility to protocols version v1.1 and younger has been |
10076 |
|
introduced. The only difference is that in parts of the protocol |
10077 |
|
where escape characters are now supported, a backslash characters |
10078 |
|
MUST be escaped as well (that is as double backslash), whereas |
10079 |
|
in the old versions a single backslash was sufficient. |
10080 |
|
</p> |
10081 |
<a name="events"></a><br /><hr /> |
<a name="events"></a><br /><hr /> |
10082 |
<table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc"> TOC </a></td></tr></table> |
<table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc"> TOC </a></td></tr></table> |
10083 |
<a name="rfc.section.8"></a><h3>8. |
<a name="rfc.section.8"></a><h3>8. |
10367 |
<a name="rfc.section.8.10"></a><h3>8.10. |
<a name="rfc.section.8.10"></a><h3>8.10. |
10368 |
Number of effect sends changed</h3> |
Number of effect sends changed</h3> |
10369 |
|
|
10370 |
<p>Client may want to be notified when the number of effect sends on |
<p>Client may want to be notified when the number of effect sends on |
10371 |
a particular sampler channel is changed by issuing the following command: |
a particular sampler channel is changed by issuing the following command: |
10372 |
</p> |
</p> |
10373 |
<p> |
<p> |
10864 |
<table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc"> TOC </a></td></tr></table> |
<table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc"> TOC </a></td></tr></table> |
10865 |
<h3>11. References</h3> |
<h3>11. References</h3> |
10866 |
<table width="99%" border="0"> |
<table width="99%" border="0"> |
10867 |
|
<tr><td class="author-text" valign="top"><a name="RFC20">[RFC20]</a></td> |
10868 |
|
<td class="author-text">UCLA, “<a href="ftp://ftp.isi.edu/in-notes/rfc20.txt">ASCII format for Network Interchange</a>,” RFC 20, 1969.</td></tr> |
10869 |
<tr><td class="author-text" valign="top"><a name="RFC2119">[RFC2119]</a></td> |
<tr><td class="author-text" valign="top"><a name="RFC2119">[RFC2119]</a></td> |
10870 |
<td class="author-text">Bradner, S., “<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">Key words for use in RFCs to Indicate Requirement Levels</a>,” RFC 2119, 1997.</td></tr> |
<td class="author-text">Bradner, S., “<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">Key words for use in RFCs to Indicate Requirement Levels</a>,” RFC 2119, 1997.</td></tr> |
10871 |
<tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td> |
<tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td> |