/[svn]/web/trunk/www.linuxsampler.org/api/draft-linuxsampler-protocol.html
ViewVC logotype

Diff of /web/trunk/www.linuxsampler.org/api/draft-linuxsampler-protocol.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 558 by schoenebeck, Sat May 21 01:30:30 2005 UTC revision 945 by schoenebeck, Sun Nov 26 16:39:49 2006 UTC
# Line 3  Line 3 
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">
5  <meta name="keywords" content="LSCP">  <meta name="keywords" content="LSCP">
6  <meta name="generator" content="xml2rfc v1.25 (http://xml.resource.org/)">  <meta name="generator" content="xml2rfc v1.30 (http://xml.resource.org/)">
7  <style type='text/css'>  <style type='text/css'>
8  <!--  <!--
9      body {      body {
# Line 18  Line 18 
18          font-weight: bold; text-align: right;          font-weight: bold; text-align: right;
19          font-family: helvetica, arial, sans-serif;          font-family: helvetica, arial, sans-serif;
20          background-color: transparent; }          background-color: transparent; }
21      td.rfcbug { background-color: #000000 ; width: 30px ; height: 30px ;      td.rfcbug { background-color: #000000 ; width: 30px ; height: 30px ;
22          text-align: justify; vertical-align: middle ; padding-top: 2px ; }          text-align: justify; vertical-align: middle ; padding-top: 2px ; }
23      td.rfcbug span.RFC { color: #666666; font-weight: bold; text-decoration: none;      td.rfcbug span.RFC { color: #666666; font-weight: bold; text-decoration: none;
24          background-color: #000000 ;          background-color: #000000 ;
# Line 28  Line 28 
28          text-align: center ;          text-align: center ;
29          font-family: charcoal, monaco, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;          font-family: charcoal, monaco, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;
30          font-size: x-small ; background-color: #000000; }          font-size: x-small ; background-color: #000000; }
31  /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */      /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */
32      div#counter{margin-top: 100px}      div#counter{margin-top: 100px}
33    
34      a.info{      a.info{
# Line 40  Line 40 
40    
41      a.info span{display: none}      a.info span{display: none}
42    
43      a.info:hover span{ /*the span will display just on :hover state*/      a.info:hover span.info{ /*the span will display just on :hover state*/
44          display:block;          display:block;
45          position:absolute;          position:absolute;
46          font-size: smaller ;          font-size: smaller ;
# Line 58  Line 58 
58      p { margin-left: 2em; margin-right: 2em; }      p { margin-left: 2em; margin-right: 2em; }
59      p.copyright { font-size: x-small ; }      p.copyright { font-size: x-small ; }
60      p.toc { font-size: small ; font-weight: bold ; margin-left: 3em ;}      p.toc { font-size: small ; font-weight: bold ; margin-left: 3em ;}
61        table.toc { margin: 0 0 0 3em; padding: 0; border: 0; vertical-align: text-top; }
62        td.toc { font-size: small; font-weight: bold; vertical-align: text-top; }
63    
64      span.emph { font-style: italic; }      span.emph { font-style: italic; }
65      span.strong { font-weight: bold; }      span.strong { font-weight: bold; }
66      span.verb { font-family: "Courier New", Courier, monospace ; }      span.verb, span.vbare { font-family: "Courier New", Courier, monospace ; }
67    
68        span.vemph { font-style: italic; font-family: "Courier New", Courier, monospace ; }
69        span.vstrong { font-weight: bold; font-family: "Courier New", Courier, monospace ; }
70        span.vdeluxe { font-weight: bold; font-style: italic; font-family: "Courier New", Courier, monospace ; }
71    
72      ol.text { margin-left: 2em; margin-right: 2em; }      ol.text { margin-left: 2em; margin-right: 2em; }
73      ul.text { margin-left: 2em; margin-right: 2em; }      ul.text { margin-left: 2em; margin-right: 2em; }
# Line 69  Line 75 
75    
76      pre { margin-left: 3em; color: #333333;  background-color: transparent;      pre { margin-left: 3em; color: #333333;  background-color: transparent;
77          font-family: "Courier New", Courier, monospace ; font-size: small ;          font-family: "Courier New", Courier, monospace ; font-size: small ;
78            text-align: left;
79          }          }
80    
81      h3 { color: #333333; font-size: medium ;      h3 { color: #333333; font-size: medium ;
# Line 90  Line 97 
97          background-color: #666666 ; width: 33% ; }          background-color: #666666 ; width: 33% ; }
98      td.author { font-weight: bold; margin-left: 4em; font-size: x-small ; }      td.author { font-weight: bold; margin-left: 4em; font-size: x-small ; }
99      td.author-text { font-size: x-small; }      td.author-text { font-size: x-small; }
100      table.data { vertical-align: top ; border-collapse: collapse ;      table.full { vertical-align: top ; border-collapse: collapse ;
101          border-style: solid solid solid solid ;          border-style: solid solid solid solid ;
102          border-color: black black black black ;          border-color: black black black black ;
103          font-size: small ; text-align: center ; }          font-size: small ; text-align: center ; }
104      table.data th { font-weight: bold ;      table.headers, table.none { vertical-align: top ; border-collapse: collapse ;
105          border-style: solid solid solid solid ;          border-style: none;
106            font-size: small ; text-align: center ; }
107        table.full th { font-weight: bold ;
108            border-style: solid ;
109            border-color: black black black black ; }
110        table.headers th { font-weight: bold ;
111            border-style: none none solid none;
112          border-color: black black black black ; }          border-color: black black black black ; }
113      table.data td {      table.none th { font-weight: bold ;
114            border-style: none; }
115        table.full td {
116          border-style: solid solid solid solid ;          border-style: solid solid solid solid ;
117          border-color: #333333 #333333 #333333 #333333 ; }          border-color: #333333 #333333 #333333 #333333 ; }
118        table.headers td, table.none td { border-style: none; }
119    
120      hr { height: 1px }      hr { height: 1px }
121  -->  -->
# Line 110  Line 126 
126  <table summary="layout" width="66%" border="0" cellpadding="0" cellspacing="0"><tr><td><table summary="layout" width="100%" border="0" cellpadding="2" cellspacing="1">  <table summary="layout" width="66%" border="0" cellpadding="0" cellspacing="0"><tr><td><table summary="layout" width="100%" border="0" cellpadding="2" cellspacing="1">
127  <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>
128  <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>
129  <tr><td class="header">Expires: November 19, 2005</td><td class="header">Engineering e. V.</td></tr>  <tr><td class="header">Expires: May 30, 2007</td><td class="header">Engineering e. V.</td></tr>
130  <tr><td class="header">&nbsp;</td><td class="header">May 21, 2005</td></tr>  <tr><td class="header">&nbsp;</td><td class="header">November 26, 2006</td></tr>
131  </table></td></tr></table>  </table></td></tr></table>
132  <div align="right"><span class="title"><br />LinuxSampler Control Protocol</span></div>  <div align="right"><span class="title"><br />LinuxSampler Control Protocol</span></div>
133  <div align="right"><span class="title"><br />lscp.txt</span></div>  <div align="right"><span class="title"><br />LSCP 1.2</span></div>
134    
135  <h3>Status of this Memo</h3>  <h3>Status of this Memo</h3>
136  <p>  <p>
137  This document is an Internet-Draft and is  This document is an Internet-Draft and is
138  in full conformance with all provisions of Section 10 of RFC2026.</p>  in full conformance with all provisions of Section&nbsp;10 of RFC&nbsp;2026.</p>
139  <p>  <p>
140  Internet-Drafts are working documents of the Internet Engineering  Internet-Drafts are working documents of the Internet Engineering
141  Task Force (IETF), its areas, and its working groups.  Task Force (IETF), its areas, and its working groups.
# Line 129  Internet-Drafts.</p> Line 145  Internet-Drafts.</p>
145  Internet-Drafts are draft documents valid for a maximum of six months  Internet-Drafts are draft documents valid for a maximum of six months
146  and may be updated, replaced, or obsoleted by other documents at any time.  and may be updated, replaced, or obsoleted by other documents at any time.
147  It is inappropriate to use Internet-Drafts as reference material or to cite  It is inappropriate to use Internet-Drafts as reference material or to cite
148  them other than as "work in progress."</p>  them other than as &ldquo;work in progress.&rdquo;</p>
149  <p>  <p>
150  The list of current Internet-Drafts can be accessed at  The list of current Internet-Drafts can be accessed at
151  <a href='http://www.ietf.org/ietf/1id-abstracts.txt'>http://www.ietf.org/ietf/1id-abstracts.txt</a>.</p>  <a href='http://www.ietf.org/ietf/1id-abstracts.txt'>http://www.ietf.org/ietf/1id-abstracts.txt</a>.</p>
# Line 137  The list of current Internet-Drafts can Line 153  The list of current Internet-Drafts can
153  The list of Internet-Draft Shadow Directories can be accessed at  The list of Internet-Draft Shadow Directories can be accessed at
154  <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>
155  <p>  <p>
156  This Internet-Draft will expire on November 19, 2005.</p>  This Internet-Draft will expire on May 30, 2007.</p>
157    
158  <h3>Copyright Notice</h3>  <h3>Copyright Notice</h3>
159  <p>  <p>
160  Copyright (C) The Internet Society (2005). All Rights Reserved.</p>  Copyright &copy; The Internet Society (2006). All Rights Reserved.</p>
161    
162  <h3>Abstract</h3>  <h3>Abstract</h3>
163    
164  <p>The LinuxSampler Control Protocol (LSCP) is an  <p>The LinuxSampler Control Protocol (LSCP) is an
165              application-level protocol primarily intended for local and              application-level protocol primarily intended for local and
166              remote controlling the LinuxSampler main application, which is a              remote controlling the LinuxSampler backend application, which is a
167              sophisticated console application essentially playing back audio              sophisticated server-like console application essentially playing
168              samples and manipulating the samples in real time to certain              back audio samples and manipulating the samples in real time to
169              extent.              certain extent.
170  </p><a name="toc"></a><br /><hr />  </p><a name="toc"></a><br /><hr />
171  <h3>Table of Contents</h3>  <h3>Table of Contents</h3>
172  <p class="toc">  <p class="toc">
173  <a href="#anchor1">1.</a>&nbsp;  <a href="#anchor1">1.</a>&nbsp;
174  Requirements notation<br />  Requirements notation<br />
175  <a href="#anchor2">2.</a>&nbsp;  <a href="#LSCP versioning">2.</a>&nbsp;
176    Versioning of this specification<br />
177    <a href="#anchor2">3.</a>&nbsp;
178  Introduction<br />  Introduction<br />
179  <a href="#anchor3">3.</a>&nbsp;  <a href="#anchor3">4.</a>&nbsp;
180  Focus of this protocol<br />  Focus of this protocol<br />
181  <a href="#anchor4">4.</a>&nbsp;  <a href="#anchor4">5.</a>&nbsp;
182  Communication Overview<br />  Communication Overview<br />
183  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">4.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">5.1.</a>&nbsp;
184  Request/response communication method<br />  Request/response communication method<br />
185  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor6">4.1.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor6">5.1.1.</a>&nbsp;
186  Result format<br />  Result format<br />
187  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">4.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">5.2.</a>&nbsp;
188  Subscribe/notify communication method<br />  Subscribe/notify communication method<br />
189  <a href="#anchor8">5.</a>&nbsp;  <a href="#control_commands">6.</a>&nbsp;
190  Description for control commands<br />  Description for control commands<br />
191  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor8">6.1.</a>&nbsp;
192  Ignored lines and comments<br />  Ignored lines and comments<br />
193  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">6.2.</a>&nbsp;
194  Configuring audio drivers<br />  Configuring audio drivers<br />
195  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.1.</a>&nbsp;
196  Getting amount of available audio output drivers<br />  Getting amount of available audio output drivers<br />
197  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.2.</a>&nbsp;
198  Getting all available audio output drivers<br />  Getting all available audio output drivers<br />
199  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER INFO">5.2.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER INFO">6.2.3.</a>&nbsp;
200  Getting information about a specific audio  Getting information about a specific audio
201                  output driver<br />                  output driver<br />
202  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">5.2.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">6.2.4.</a>&nbsp;
203  Getting information about specific audio  Getting information about specific audio
204                  output driver parameter<br />                  output driver parameter<br />
205  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE AUDIO_OUTPUT_DEVICE">5.2.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE AUDIO_OUTPUT_DEVICE">6.2.5.</a>&nbsp;
206  Creating an audio output device<br />  Creating an audio output device<br />
207  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY AUDIO_OUTPUT_DEVICE">5.2.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY AUDIO_OUTPUT_DEVICE">6.2.6.</a>&nbsp;
208  Destroying an audio output device<br />  Destroying an audio output device<br />
209  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICES">5.2.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICES">6.2.7.</a>&nbsp;
210  Getting all created audio output device count<br />  Getting all created audio output device count<br />
211  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AUDIO_OUTPUT_DEVICES">5.2.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AUDIO_OUTPUT_DEVICES">6.2.8.</a>&nbsp;
212  Getting all created audio output device list<br />  Getting all created audio output device list<br />
213  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICE INFO">5.2.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICE INFO">6.2.9.</a>&nbsp;
214  Getting current settings of an audio output device<br />  Getting current settings of an audio output device<br />
215  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_DEVICE_PARAMETER">5.2.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_DEVICE_PARAMETER">6.2.10.</a>&nbsp;
216  Changing settings of audio output devices<br />  Changing settings of audio output devices<br />
217  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL INFO">5.2.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL INFO">6.2.11.</a>&nbsp;
218  Getting information about an audio channel<br />  Getting information about an audio channel<br />
219  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">5.2.12</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">6.2.12.</a>&nbsp;
220  Getting information about specific audio channel parameter<br />  Getting information about specific audio channel parameter<br />
221  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_CHANNEL_PARAMETER">5.2.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_CHANNEL_PARAMETER">6.2.13.</a>&nbsp;
222  Changing settings of audio output channels<br />  Changing settings of audio output channels<br />
223  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">5.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">6.3.</a>&nbsp;
224  Configuring MIDI input drivers<br />  Configuring MIDI input drivers<br />
225  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_MIDI_INPUT_DRIVERS">5.3.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_MIDI_INPUT_DRIVERS">6.3.1.</a>&nbsp;
226  Getting amount of available MIDI input drivers<br />  Getting amount of available MIDI input drivers<br />
227  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">5.3.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">6.3.2.</a>&nbsp;
228  Getting all available MIDI input drivers<br />  Getting all available MIDI input drivers<br />
229  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER INFO">5.3.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER INFO">6.3.3.</a>&nbsp;
230  Getting information about a specific MIDI input driver<br />  Getting information about a specific MIDI input driver<br />
231  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER_PARAMETER INFO">5.3.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER_PARAMETER INFO">6.3.4.</a>&nbsp;
232  Getting information about specific MIDI input driver parameter<br />  Getting information about specific MIDI input driver parameter<br />
233  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE MIDI_INPUT_DEVICE">5.3.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE MIDI_INPUT_DEVICE">6.3.5.</a>&nbsp;
234  Creating a MIDI input device<br />  Creating a MIDI input device<br />
235  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY MIDI_INPUT_DEVICE">5.3.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY MIDI_INPUT_DEVICE">6.3.6.</a>&nbsp;
236  Destroying a MIDI input device<br />  Destroying a MIDI input device<br />
237  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICES">5.3.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICES">6.3.7.</a>&nbsp;
238  Getting all created MIDI input device count<br />  Getting all created MIDI input device count<br />
239  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INPUT_DEVICES">5.3.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INPUT_DEVICES">6.3.8.</a>&nbsp;
240  Getting all created MIDI input device list<br />  Getting all created MIDI input device list<br />
241  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICE INFO">5.3.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICE INFO">6.3.9.</a>&nbsp;
242  Getting current settings of a MIDI input device<br />  Getting current settings of a MIDI input device<br />
243  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_DEVICE_PARAMETER">5.3.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_DEVICE_PARAMETER">6.3.10.</a>&nbsp;
244  Changing settings of MIDI input devices<br />  Changing settings of MIDI input devices<br />
245  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT INFO">5.3.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT INFO">6.3.11.</a>&nbsp;
246  Getting information about a MIDI port<br />  Getting information about a MIDI port<br />
247  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT_PARAMETER INFO">5.3.12</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT_PARAMETER INFO">6.3.12.</a>&nbsp;
248  Getting information about specific MIDI port parameter<br />  Getting information about specific MIDI port parameter<br />
249  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_PORT_PARAMETER">5.3.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_PORT_PARAMETER">6.3.13.</a>&nbsp;
250  Changing settings of MIDI input ports<br />  Changing settings of MIDI input ports<br />
251  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">5.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">6.4.</a>&nbsp;
252  Configuring sampler channels<br />  Configuring sampler channels<br />
253  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD INSTRUMENT">5.4.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD INSTRUMENT">6.4.1.</a>&nbsp;
254  Loading an instrument<br />  Loading an instrument<br />
255  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD ENGINE">5.4.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD ENGINE">6.4.2.</a>&nbsp;
256  Loading a sampler engine<br />  Loading a sampler engine<br />
257  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNELS">5.4.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNELS">6.4.3.</a>&nbsp;
258  Getting all created sampler channel count<br />  Getting all created sampler channel count<br />
259  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST CHANNELS">5.4.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST CHANNELS">6.4.4.</a>&nbsp;
260  Getting all created sampler channel list<br />  Getting all created sampler channel list<br />
261  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD CHANNEL">5.4.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD CHANNEL">6.4.5.</a>&nbsp;
262  Adding a new sampler channel<br />  Adding a new sampler channel<br />
263  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE CHANNEL">5.4.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE CHANNEL">6.4.6.</a>&nbsp;
264  Removing a sampler channel<br />  Removing a sampler channel<br />
265  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_ENGINES">5.4.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_ENGINES">6.4.7.</a>&nbsp;
266  Getting amount of available engines<br />  Getting amount of available engines<br />
267  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_ENGINES">5.4.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_ENGINES">6.4.8.</a>&nbsp;
268  Getting all available engines<br />  Getting all available engines<br />
269  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET ENGINE INFO">5.4.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET ENGINE INFO">6.4.9.</a>&nbsp;
270  Getting information about an engine<br />  Getting information about an engine<br />
271  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL INFO">5.4.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL INFO">6.4.10.</a>&nbsp;
272  Getting sampler channel information<br />  Getting sampler channel information<br />
273  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL VOICE_COUNT">5.4.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL VOICE_COUNT">6.4.11.</a>&nbsp;
274  Current number of active voices<br />  Current number of active voices<br />
275  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL STREAM_COUNT">5.4.12</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL STREAM_COUNT">6.4.12.</a>&nbsp;
276  Current number of active disk streams<br />  Current number of active disk streams<br />
277  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL BUFFER_FILL">5.4.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL BUFFER_FILL">6.4.13.</a>&nbsp;
278  Current fill state of disk stream buffers<br />  Current fill state of disk stream buffers<br />
279  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_DEVICE">5.4.14</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_DEVICE">6.4.14.</a>&nbsp;
280  Setting audio output device<br />  Setting audio output device<br />
281  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_TYP">5.4.15</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_TYP">6.4.15.</a>&nbsp;
282  Setting audio output type<br />  Setting audio output type<br />
283  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_CHANNEL">5.4.16</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_CHANNEL">6.4.16.</a>&nbsp;
284  Setting audio output channel<br />  Setting audio output channel<br />
285  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_DEVICE">5.4.17</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_DEVICE">6.4.17.</a>&nbsp;
286  Setting MIDI input device<br />  Setting MIDI input device<br />
287  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_TYPE">5.4.18</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_TYPE">6.4.18.</a>&nbsp;
288  Setting MIDI input type<br />  Setting MIDI input type<br />
289  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_PORT">5.4.19</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_PORT">6.4.19.</a>&nbsp;
290  Setting MIDI input port<br />  Setting MIDI input port<br />
291  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_CHANNEL">5.4.20</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_CHANNEL">6.4.20.</a>&nbsp;
292  Setting MIDI input channel<br />  Setting MIDI input channel<br />
293  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL VOLUME">5.4.21</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL VOLUME">6.4.21.</a>&nbsp;
294  Setting channel volume<br />  Setting channel volume<br />
295  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">5.4.22</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MUTE">6.4.22.</a>&nbsp;
296    Muting a sampler channel<br />
297    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL SOLO">6.4.23.</a>&nbsp;
298    Soloing a sampler channel<br />
299    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.24.</a>&nbsp;
300  Resetting a sampler channel<br />  Resetting a sampler channel<br />
301  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">5.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5.</a>&nbsp;
302  Controlling connection<br />  Controlling connection<br />
303  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">5.5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">6.5.1.</a>&nbsp;
304  Register front-end for receiving event messages<br />  Register front-end for receiving event messages<br />
305  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">5.5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">6.5.2.</a>&nbsp;
306  Unregister front-end for not receiving event messages<br />  Unregister front-end for not receiving event messages<br />
307  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">5.5.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">6.5.3.</a>&nbsp;
308  Enable or disable echo of commands<br />  Enable or disable echo of commands<br />
309  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">5.5.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">6.5.4.</a>&nbsp;
310  Close client connection<br />  Close client connection<br />
311  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor14">5.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">6.6.</a>&nbsp;
312  Global commands<br />  Global commands<br />
313  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">5.6.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT">6.6.1.</a>&nbsp;
314    Current number of active voices<br />
315    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT_MAX">6.6.2.</a>&nbsp;
316    Maximum amount of active voices<br />
317    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.3.</a>&nbsp;
318  Reset sampler<br />  Reset sampler<br />
319  <a href="#command_syntax">6.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET SERVER INFO">6.6.4.</a>&nbsp;
320    General sampler informations<br />
321    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor14">6.7.</a>&nbsp;
322    MIDI Instrument Mapping<br />
323    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MAP MIDI_INSTRUMENT">6.7.1.</a>&nbsp;
324    Create or replace a MIDI instrument map entry<br />
325    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENTS">6.7.2.</a>&nbsp;
326    Getting ammount of MIDI instrument map entries<br />
327    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENTS">6.7.3.</a>&nbsp;
328    Getting indeces of all MIDI instrument map entries<br />
329    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNMAP MIDI_INSTRUMENT">6.7.4.</a>&nbsp;
330    Remove an entry from the MIDI instrument map<br />
331    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT INFO">6.7.5.</a>&nbsp;
332    Get current settings of MIDI instrument map entry<br />
333    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CLEAR MIDI_INSTRUMENTS">6.7.6.</a>&nbsp;
334    Clear MIDI instrument map<br />
335    <a href="#command_syntax">7.</a>&nbsp;
336  Command Syntax<br />  Command Syntax<br />
337  <a href="#events">7.</a>&nbsp;  <a href="#events">8.</a>&nbsp;
338  Events<br />  Events<br />
339  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL">7.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL">8.1.</a>&nbsp;
340  Number of sampler channels changed<br />  Number of sampler channels changed<br />
341  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">7.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.2.</a>&nbsp;
342  Number of active voices changed<br />  Number of active voices changed<br />
343  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">7.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.3.</a>&nbsp;
344  Number of active disk streams changed<br />  Number of active disk streams changed<br />
345  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">7.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.4.</a>&nbsp;
346  Disk stream buffer fill state changed<br />  Disk stream buffer fill state changed<br />
347  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE INFO">7.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE INFO">8.5.</a>&nbsp;
348  Channel information changed<br />  Channel information changed<br />
349  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">7.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_VOICE_COUNT">8.6.</a>&nbsp;
350    Total number of active voices changed<br />
351    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.7.</a>&nbsp;
352  Miscellaneous and debugging events<br />  Miscellaneous and debugging events<br />
353  <a href="#anchor15">8.</a>&nbsp;  <a href="#anchor15">9.</a>&nbsp;
354  Security Considerations<br />  Security Considerations<br />
355  <a href="#anchor16">9.</a>&nbsp;  <a href="#anchor16">10.</a>&nbsp;
356  Acknowledgments<br />  Acknowledgments<br />
357  <a href="#rfc.references1">10.</a>&nbsp;  <a href="#rfc.references1">11.</a>&nbsp;
358  References<br />  References<br />
359  <a href="#rfc.authors">&#167;</a>&nbsp;  <a href="#rfc.authors">&#167;</a>&nbsp;
360  Author's Address<br />  Author's Address<br />
# Line 326  Intellectual Property and Copyright Stat Line 370  Intellectual Property and Copyright Stat
370  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
371              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
372              and "OPTIONAL" in this document are to be interpreted as              and "OPTIONAL" in this document are to be interpreted as
373              described in <a class="info" href="#RFC2119">[RFC2119]<span>Bradner, S., Key words for use in RFCs to Indicate Requirement Levels, March 1997.</span></a>.              described in <a class="info" href="#RFC2119">[RFC2119]<span> (</span><span class="info">Bradner, S., &ldquo;Key words for use in RFCs to Indicate Requirement Levels,&rdquo; 1997.</span><span>)</span></a>.
374  </p>  </p>
375  <p>This protocol is always case-sensitive if not explicitly  <p>This protocol is always case-sensitive if not explicitly
376              claimed the opposite.              claimed the opposite.
# Line 338  Intellectual Property and Copyright Stat Line 382  Intellectual Property and Copyright Stat
382              character as defined in the ASCII standard), thus the following              character as defined in the ASCII standard), thus the following
383              example:              example:
384  </p>  </p>
385  <p></p>  <p>
386                    </p>
387  <blockquote class="text">  <blockquote class="text">
388  <p>C: "some line"  <p>C: "some line"
389  </p>  </p>
390  <p>&nbsp;&nbsp;&nbsp;"another line"  <p>&nbsp;&nbsp;&nbsp;"another line"
391  </p>  </p>
392  </blockquote>  </blockquote><p>
393                
394    </p>
395  <p>must actually be interpreted as client sending the following  <p>must actually be interpreted as client sending the following
396              message:              message:
397  </p>  </p>
398  <p></p>  <p>
399                    </p>
400  <blockquote class="text">  <blockquote class="text">
401  <p>"some line&lt;CR&gt;&lt;LF&gt;another  <p>"some line&lt;CR&gt;&lt;LF&gt;another
402                      line&lt;CR&gt;&lt;LF&gt;"                      line&lt;CR&gt;&lt;LF&gt;"
403  </p>  </p>
404  </blockquote>  </blockquote><p>
405                
406    </p>
407  <p>where &lt;CR&gt; symbolizes the carriage return character and  <p>where &lt;CR&gt; symbolizes the carriage return character and
408              &lt;LF&gt; the line feed character as defined in the ASCII              &lt;LF&gt; the line feed character as defined in the ASCII
409              standard.              standard.
# Line 363  Intellectual Property and Copyright Stat Line 411  Intellectual Property and Copyright Stat
411  <p>Due to technical reasons, messages can arbitrary be  <p>Due to technical reasons, messages can arbitrary be
412              fragmented, means the following example:              fragmented, means the following example:
413  </p>  </p>
414  <p></p>  <p>
415                    </p>
416  <blockquote class="text">  <blockquote class="text">
417  <p>S: "abcd"  <p>S: "abcd"
418  </p>  </p>
419  </blockquote>  </blockquote><p>
420                
421    </p>
422  <p>could also happen to be sent in three messages like in the  <p>could also happen to be sent in three messages like in the
423              following sequence scenario:              following sequence scenario:
424  </p>  </p>
425  <p></p>  <p>
426                    </p>
427  <ul class="text">  <ul class="text">
428  <li>server sending message "a"  <li>server sending message "a"
429  </li>  </li>
# Line 388  Intellectual Property and Copyright Stat Line 439  Intellectual Property and Copyright Stat
439  <li>followed by server sending the message  <li>followed by server sending the message
440                      "&lt;LF&gt;"                      "&lt;LF&gt;"
441  </li>  </li>
442  </ul>  </ul><p>
443                
444    </p>
445  <p>where again &lt;CR&gt; and &lt;LF&gt; symbolize the carriage  <p>where again &lt;CR&gt; and &lt;LF&gt; symbolize the carriage
446              return and line feed characters respectively.              return and line feed characters respectively.
447  </p>  </p>
448    <a name="LSCP versioning"></a><br /><hr />
449    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
450    <a name="rfc.section.2"></a><h3>2.&nbsp;Versioning of this specification</h3>
451    
452    <p>LSCP will certainly be extended and enhanced by-and-by. Each official
453                release of the LSCP specification will be tagged with a unique version
454                tuple. The version tuple consists at least of a major and minor version
455                number like:
456                
457    </p>
458    <p>
459                    </p>
460    <blockquote class="text">
461    <p>"1.2"
462    </p>
463    </blockquote><p>
464                
465    </p>
466    <p>
467                In this example the major version number would be "1" and the minor
468                version number would be "2". Note that the version tuple might also
469                have more than two elements. The major version number defines a
470                group of backward compatible versions. That means a frontend is
471                compatible to the connected sampler if and only if the LSCP versions
472                to which each of the two parties complies to, match both of the
473                following rules:
474                
475    </p>
476    <p>Compatibility:
477    </p>
478    <p>
479                    </p>
480    <ol class="text">
481    <li>The frontend's LSCP major version and the sampler's LSCP
482                        major version are exactly equal.
483    </li>
484    <li>The frontend's LSCP minor version is less or equal than
485                        the sampler's LSCP minor version.
486    </li>
487    </ol><p>
488                
489    </p>
490    <p>
491                Compatibility can only be claimed if both rules are true.
492                The frontend can use the
493                <a class="info" href="#GET SERVER INFO">"GET SERVER INFO"<span> (</span><span class="info">General sampler informations</span><span>)</span></a> command to
494                get the version of the LSCP specification the sampler complies with.
495                
496    </p>
497  <a name="anchor2"></a><br /><hr />  <a name="anchor2"></a><br /><hr />
498  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
499  <a name="rfc.section.2"></a><h3>2.&nbsp;Introduction</h3>  <a name="rfc.section.3"></a><h3>3.&nbsp;Introduction</h3>
500    
501  <p>LinuxSampler is a so called software sampler application  <p>LinuxSampler is a so called software sampler application
502              capable to playback audio samples from a computer's Random              capable to playback audio samples from a computer's Random
# Line 408  Intellectual Property and Copyright Stat Line 509  Intellectual Property and Copyright Stat
509              arbitrary MIDI input method and arbitrary MIDI channel (e.g.              arbitrary MIDI input method and arbitrary MIDI channel (e.g.
510              sampler channel 17 could be connected to an ALSA sequencer              sampler channel 17 could be connected to an ALSA sequencer
511              device 64:0 and listening to MIDI channel 1 there). Each sampler              device 64:0 and listening to MIDI channel 1 there). Each sampler
512              engine will be assigned an own instance of one of the available              channel will be associated with an instance of one of the available
513              sampler engines (e.g. GigEngine, DLSEngine). The audio output of              sampler engines (e.g. GigEngine, DLSEngine). The audio output of
514              each sampler channel can be routed to an arbitrary audio output              each sampler channel can be routed to an arbitrary audio output
515              method (ALSA / JACK) and an arbitrary audio output channel              method (ALSA / JACK) and an arbitrary audio output channel
# Line 416  Intellectual Property and Copyright Stat Line 517  Intellectual Property and Copyright Stat
517  </p>  </p>
518  <a name="anchor3"></a><br /><hr />  <a name="anchor3"></a><br /><hr />
519  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
520  <a name="rfc.section.3"></a><h3>3.&nbsp;Focus of this protocol</h3>  <a name="rfc.section.4"></a><h3>4.&nbsp;Focus of this protocol</h3>
521    
522  <p>Main focus of this protocol is to provide a way to configure  <p>Main focus of this protocol is to provide a way to configure
523              a running LinuxSampler instance and to retrieve information              a running LinuxSampler instance and to retrieve information
# Line 428  Intellectual Property and Copyright Stat Line 529  Intellectual Property and Copyright Stat
529  </p>  </p>
530  <a name="anchor4"></a><br /><hr />  <a name="anchor4"></a><br /><hr />
531  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
532  <a name="rfc.section.4"></a><h3>4.&nbsp;Communication Overview</h3>  <a name="rfc.section.5"></a><h3>5.&nbsp;Communication Overview</h3>
533    
534  <p>There are two distinct methods of communication between a  <p>There are two distinct methods of communication between a
535              running instance of LinuxSampler and one or more control              running instance of LinuxSampler and one or more control
# Line 441  Intellectual Property and Copyright Stat Line 542  Intellectual Property and Copyright Stat
542              implemented in the front-end application. The two communication              implemented in the front-end application. The two communication
543              methods will be described next.              methods will be described next.
544  </p>  </p>
545  <a name="rfc.section.4.1"></a><h4><a name="anchor5">4.1</a>&nbsp;Request/response communication method</h4>  <a name="anchor5"></a><br /><hr />
546    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
547    <a name="rfc.section.5.1"></a><h3>5.1.&nbsp;Request/response communication method</h3>
548    
549  <p>This simple communication method is based on TCP. The  <p>This simple communication method is based on
550                    <a class="info" href="#RFC793">TCP<span> (</span><span class="info">Defense Advanced Research Projects Agency, &ldquo;TRANSMISSION CONTROL PROTOCOL,&rdquo; 1981.</span><span>)</span></a> [RFC793]. The
551                  front-end application establishes a TCP connection to the                  front-end application establishes a TCP connection to the
552                  LinuxSampler instance on a certain host system. Then the                  LinuxSampler instance on a certain host system. Then the
553                  front-end application will send certain ASCII based commands                  front-end application will send certain ASCII based commands
# Line 483  Intellectual Property and Copyright Stat Line 587  Intellectual Property and Copyright Stat
587                  processed in the order they were received and result sets                  processed in the order they were received and result sets
588                  MUST be sent back in the same order.                  MUST be sent back in the same order.
589  </p>  </p>
590  <a name="rfc.section.4.1.1"></a><h4><a name="anchor6">4.1.1</a>&nbsp;Result format</h4>  <a name="anchor6"></a><br /><hr />
591    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
592    <a name="rfc.section.5.1.1"></a><h3>5.1.1.&nbsp;Result format</h3>
593    
594  <p>Result set could be one of the following types:  <p>Result set could be one of the following types:
595  </p>  </p>
596  <p></p>  <p>
597                            </p>
598  <ol class="text">  <ol class="text">
599  <li>Normal  <li>Normal
600  </li>  </li>
# Line 495  Intellectual Property and Copyright Stat Line 602  Intellectual Property and Copyright Stat
602  </li>  </li>
603  <li>Error  <li>Error
604  </li>  </li>
605  </ol>  </ol><p>
606                        
607    </p>
608  <p>Warning and Error result sets MUST be single line and  <p>Warning and Error result sets MUST be single line and
609                      have the following format:                      have the following format:
610  </p>  </p>
611  <p></p>  <p>
612                            </p>
613  <ul class="text">  <ul class="text">
614  <li>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;"  <li>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;"
615  </li>  </li>
616  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"
617  </li>  </li>
618  </ul>  </ul><p>
619                        
620    </p>
621  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are
622                      numeric unique identifiers of the warning or error and                      numeric unique identifiers of the warning or error and
623                      &lt;warning-message&gt; and &lt;error-message&gt; are                      &lt;warning-message&gt; and &lt;error-message&gt; are
# Line 516  Intellectual Property and Copyright Stat Line 626  Intellectual Property and Copyright Stat
626  </p>  </p>
627  <p>Examples:  <p>Examples:
628  </p>  </p>
629  <p></p>  <p>
630                            </p>
631  <blockquote class="text">  <blockquote class="text">
632  <p>C: "LOAD INSTRUMENT '/home/me/Boesendorfer24bit.gig" 0 0  <p>C: "LOAD INSTRUMENT '/home/me/Boesendorfer24bit.gig" 0 0
633  </p>  </p>
634  <p>S: "WRN:32:This is a 24 bit patch which is not supported natively yet."  <p>S: "WRN:32:This is a 24 bit patch which is not supported natively yet."
635  </p>  </p>
636  </blockquote>  </blockquote><p>
637                        
638  <p></p>  </p>
639    <p>
640                            </p>
641  <blockquote class="text">  <blockquote class="text">
642  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA EAR"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA EAR"
643  </p>  </p>
644  <p>S: "ERR:3456:Audio output driver 'ALSA' does not have a parameter 'EAR'."  <p>S: "ERR:3456:Audio output driver 'ALSA' does not have a parameter 'EAR'."
645  </p>  </p>
646  </blockquote>  </blockquote><p>
647                        
648  <p></p>  </p>
649    <p>
650                            </p>
651  <blockquote class="text">  <blockquote class="text">
652  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 123456"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 123456"
653  </p>  </p>
654  <p>S: "ERR:9:There is no audio output device with index 123456."  <p>S: "ERR:9:There is no audio output device with index 123456."
655  </p>  </p>
656  </blockquote>  </blockquote><p>
657                        
658    </p>
659  <p>Normal result sets could be:  <p>Normal result sets could be:
660  </p>  </p>
661  <p></p>  <p>
662                            </p>
663  <ol class="text">  <ol class="text">
664  <li>Empty  <li>Empty
665  </li>  </li>
# Line 550  Intellectual Property and Copyright Stat Line 667  Intellectual Property and Copyright Stat
667  </li>  </li>
668  <li>Multi-line  <li>Multi-line
669  </li>  </li>
670  </ol>  </ol><p>
671                        
672    </p>
673  <p> Empty result set is issued when the server only  <p> Empty result set is issued when the server only
674                      needed to acknowledge the fact that the request was                      needed to acknowledge the fact that the request was
675                      received and it was processed successfully and no                      received and it was processed successfully and no
676                      additional information is available. This result set has                      additional information is available. This result set has
677                      the following format:                      the following format:
678  </p>  </p>
679  <p></p>  <p>
680                            </p>
681  <blockquote class="text">  <blockquote class="text">
682  <p>"OK"  <p>"OK"
683  </p>  </p>
684  </blockquote>  </blockquote><p>
685                        
686    </p>
687  <p>Example:  <p>Example:
688  </p>  </p>
689  <p></p>  <p>
690                            </p>
691  <blockquote class="text">  <blockquote class="text">
692  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 CHANNELS=4"  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 CHANNELS=4"
693  </p>  </p>
694  <p>S: "OK"  <p>S: "OK"
695  </p>  </p>
696  </blockquote>  </blockquote><p>
697                        
698    </p>
699  <p>Single line result sets are command specific. One  <p>Single line result sets are command specific. One
700                      example of a single line result set is an empty line.                      example of a single line result set is an empty line.
701                      Multi-line result sets are command specific and may                      Multi-line result sets are command specific and may
702                      include one or more lines of information. They MUST                      include one or more lines of information. They MUST
703                      always end with the following line:                      always end with the following line:
704  </p>  </p>
705  <p></p>  <p>
706                            </p>
707  <blockquote class="text">  <blockquote class="text">
708  <p>"."  <p>"."
709  </p>  </p>
710  </blockquote>  </blockquote><p>
711                        
712    </p>
713  <p>Example:  <p>Example:
714  </p>  </p>
715  <p></p>  <p>
716                            </p>
717  <blockquote class="text">  <blockquote class="text">
718  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"
719  </p>  </p>
# Line 608  Intellectual Property and Copyright Stat Line 733  Intellectual Property and Copyright Stat
733  </p>  </p>
734  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
735  </p>  </p>
736  </blockquote>  </blockquote><p>
737                        
738    </p>
739  <p>In addition to above mentioned formats, warnings and  <p>In addition to above mentioned formats, warnings and
740                      empty result sets MAY be indexed. In this case, they                      empty result sets MAY be indexed. In this case, they
741                      have the following formats respectively:                      have the following formats respectively:
742  </p>  </p>
743  <p></p>  <p>
744                            </p>
745  <ul class="text">  <ul class="text">
746  <li>"WRN[&lt;index&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;"  <li>"WRN[&lt;index&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;"
747  </li>  </li>
748  <li>"OK[&lt;index&gt;]"  <li>"OK[&lt;index&gt;]"
749  </li>  </li>
750  </ul>  </ul><p>
751                        
752    </p>
753  <p>where &lt;index&gt; is command specific and is used  <p>where &lt;index&gt; is command specific and is used
754                      to indicate channel number that the result set was                      to indicate channel number that the result set was
755                      related to or other integer value.                      related to or other integer value.
# Line 631  Intellectual Property and Copyright Stat Line 759  Intellectual Property and Copyright Stat
759  </p>  </p>
760  <p>Examples:  <p>Examples:
761  </p>  </p>
762  <p></p>  <p>
763                            </p>
764  <blockquote class="text">  <blockquote class="text">
765  <p>C: "ADD CHANNEL"  <p>C: "ADD CHANNEL"
766  </p>  </p>
767  <p>S: "OK[12]"  <p>S: "OK[12]"
768  </p>  </p>
769  </blockquote>  </blockquote><p>
770                        
771  <p></p>  </p>
772    <p>
773                            </p>
774  <blockquote class="text">  <blockquote class="text">
775  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA SAMPLERATE=96000"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA SAMPLERATE=96000"
776  </p>  </p>
777  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."
778  </p>  </p>
779  </blockquote>  </blockquote><p>
780                        
781  <a name="rfc.section.4.2"></a><h4><a name="anchor7">4.2</a>&nbsp;Subscribe/notify communication method</h4>  </p>
782    <a name="anchor7"></a><br /><hr />
783    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
784    <a name="rfc.section.5.2"></a><h3>5.2.&nbsp;Subscribe/notify communication method</h3>
785    
786  <p>This more sophisticated communication method is actually  <p>This more sophisticated communication method is actually
787                  only an extension of the simple request/response                  only an extension of the simple request/response
# Line 659  Intellectual Property and Copyright Stat Line 793  Intellectual Property and Copyright Stat
793                  as they happen on the server. The SUBSCRIBE command has the                  as they happen on the server. The SUBSCRIBE command has the
794                  following syntax:                  following syntax:
795  </p>  </p>
796  <p></p>  <p>
797                        </p>
798  <blockquote class="text">  <blockquote class="text">
799  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
800  </p>  </p>
801  </blockquote>  </blockquote><p>
802                    
803    </p>
804  <p>where &lt;event-id&gt; will be replaced by the respective  <p>where &lt;event-id&gt; will be replaced by the respective
805                  event that client wants to subscribe to. Upon receiving such                  event that client wants to subscribe to. Upon receiving such
806                  request, server SHOULD respond with OK and start sending                  request, server SHOULD respond with OK and start sending
# Line 674  Intellectual Property and Copyright Stat Line 810  Intellectual Property and Copyright Stat
810                  time nature of their generation. Event messages have the                  time nature of their generation. Event messages have the
811                  following format:                  following format:
812  </p>  </p>
813  <p></p>  <p>
814                        </p>
815  <blockquote class="text">  <blockquote class="text">
816  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;
817  </p>  </p>
818  </blockquote>  </blockquote><p>
819                    
820    </p>
821  <p>where &lt;event-id&gt; uniquely identifies the event that  <p>where &lt;event-id&gt; uniquely identifies the event that
822                  has occurred and &lt;custom-event-data&gt; is event                  has occurred and &lt;custom-event-data&gt; is event
823                  specific.                  specific.
# Line 687  Intellectual Property and Copyright Stat Line 825  Intellectual Property and Copyright Stat
825  <p>Several rules must be followed by the server when  <p>Several rules must be followed by the server when
826                  generating events:                  generating events:
827  </p>  </p>
828  <p></p>  <p>
829                        </p>
830  <ol class="text">  <ol class="text">
831  <li>Events MUST NOT be sent to any client who has not  <li>Events MUST NOT be sent to any client who has not
832                          issued an appropriate SUBSCRIBE command.                          issued an appropriate SUBSCRIBE command.
# Line 702  Intellectual Property and Copyright Stat Line 841  Intellectual Property and Copyright Stat
841                          middle of the event message as well as any other                          middle of the event message as well as any other
842                          response.                          response.
843  </li>  </li>
844  </ol>  </ol><p>
845                    
846    </p>
847  <p>If the client is not interested in a particular event  <p>If the client is not interested in a particular event
848                  anymore it MAY issue UNSUBSCRIBE command using the following                  anymore it MAY issue UNSUBSCRIBE command using the following
849                  syntax:                  syntax:
850  </p>  </p>
851  <p></p>  <p>
852                        </p>
853  <blockquote class="text">  <blockquote class="text">
854  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
855  </p>  </p>
856  </blockquote>  </blockquote><p>
857                    
858    </p>
859  <p>where &lt;event-id&gt; will be replace by the respective  <p>where &lt;event-id&gt; will be replace by the respective
860                  event that client is no longer interested in receiving. For                  event that client is no longer interested in receiving. For
861                  a list of supported events see <a class="info" href="#events">Section 7<span>Events</span></a>.                  a list of supported events see <a class="info" href="#events">Section&nbsp;8<span> (</span><span class="info">Events</span><span>)</span></a>.
862  </p>  </p>
863  <p>Example: the fill states of disk stream buffers have  <p>Example: the fill states of disk stream buffers have
864                  changed on sampler channel 4 and the LinuxSampler instance                  changed on sampler channel 4 and the LinuxSampler instance
865                  will react by sending the following message to all clients                  will react by sending the following message to all clients
866                  who subscribed to this event:                  who subscribed to this event:
867  </p>  </p>
868  <p></p>  <p>
869                        </p>
870  <blockquote class="text">  <blockquote class="text">
871  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%
872  </p>  </p>
873  </blockquote>  </blockquote><p>
874                    
875    </p>
876  <p>Which means there are currently three active streams on  <p>Which means there are currently three active streams on
877                  sampler channel 4, where the stream with ID "35" is filled                  sampler channel 4, where the stream with ID "35" is filled
878                  by 62%, stream with ID 33 is filled by 80% and stream with                  by 62%, stream with ID 33 is filled by 80% and stream with
# Line 759  Intellectual Property and Copyright Stat Line 903  Intellectual Property and Copyright Stat
903                  If client reconnects it MUST resubscribe to all events that                  If client reconnects it MUST resubscribe to all events that
904                  it wants to receive.                  it wants to receive.
905  </p>  </p>
906  <a name="anchor8"></a><br /><hr />  <a name="control_commands"></a><br /><hr />
907  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
908  <a name="rfc.section.5"></a><h3>5.&nbsp;Description for control commands</h3>  <a name="rfc.section.6"></a><h3>6.&nbsp;Description for control commands</h3>
909    
910  <p>This chapter will describe the available control commands  <p>This chapter will describe the available control commands
911              that can be sent on the TCP connection in detail. Some certain              that can be sent on the TCP connection in detail. Some certain
912              commands (e.g. <a class="info" href="#GET CHANNEL INFO">"GET CHANNEL INFO"<span>Getting sampler channel information</span></a>              commands (e.g. <a class="info" href="#GET CHANNEL INFO">"GET CHANNEL INFO"<span> (</span><span class="info">Getting sampler channel information</span><span>)</span></a>
913              or <a class="info" href="#GET ENGINE INFO">"GET ENGINE INFO"<span>Getting information about an engine</span></a>) lead to              or <a class="info" href="#GET ENGINE INFO">"GET ENGINE INFO"<span> (</span><span class="info">Getting information about an engine</span><span>)</span></a>) lead to
914              multiple-line responses. In this case LinuxSampler signals the              multiple-line responses. In this case LinuxSampler signals the
915              end of the response by a "." (single dot) line.              end of the response by a "." (single dot) line.
916  </p>  </p>
917  <a name="rfc.section.5.1"></a><h4><a name="anchor9">5.1</a>&nbsp;Ignored lines and comments</h4>  <a name="anchor8"></a><br /><hr />
918    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
919    <a name="rfc.section.6.1"></a><h3>6.1.&nbsp;Ignored lines and comments</h3>
920    
921  <p>White lines, that is lines which only contain space and  <p>White lines, that is lines which only contain space and
922                  tabulator characters, and lines that start with a "#"                  tabulator characters, and lines that start with a "#"
# Line 778  Intellectual Property and Copyright Stat Line 924  Intellectual Property and Copyright Stat
924                  group commands and to place comments in a LSCP script                  group commands and to place comments in a LSCP script
925                  file.                  file.
926  </p>  </p>
927  <a name="rfc.section.5.2"></a><h4><a name="anchor10">5.2</a>&nbsp;Configuring audio drivers</h4>  <a name="anchor9"></a><br /><hr />
928    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
929    <a name="rfc.section.6.2"></a><h3>6.2.&nbsp;Configuring audio drivers</h3>
930    
931  <p>Instances of drivers in LinuxSampler are called devices.  <p>Instances of drivers in LinuxSampler are called devices.
932                  You can use multiple audio devices simultaneously, e.g. to                  You can use multiple audio devices simultaneously, e.g. to
# Line 811  Intellectual Property and Copyright Stat Line 959  Intellectual Property and Copyright Stat
959                  what parameters drivers are offering, how to retrieve their                  what parameters drivers are offering, how to retrieve their
960                  possible values, etc.                  possible values, etc.
961  </p>  </p>
962  <a name="rfc.section.5.2.1"></a><h4><a name="GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.1</a>&nbsp;Getting amount of available audio output drivers</h4>  <a name="GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"></a><br /><hr />
963    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
964    <a name="rfc.section.6.2.1"></a><h3>6.2.1.&nbsp;Getting amount of available audio output drivers</h3>
965    
966  <p>Use the following command to get the number of  <p>Use the following command to get the number of
967                      audio output drivers currently available for the                      audio output drivers currently available for the
968                      LinuxSampler instance:                      LinuxSampler instance:
969  </p>  </p>
970  <p></p>  <p>
971                            </p>
972  <blockquote class="text">  <blockquote class="text">
973  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS
974  </p>  </p>
975  </blockquote>  </blockquote><p>
976                        
977    </p>
978  <p>Possible Answers:  <p>Possible Answers:
979  </p>  </p>
980  <p></p>  <p>
981                            </p>
982  <blockquote class="text">  <blockquote class="text">
983  <p>LinuxSampler will answer by sending the  <p>LinuxSampler will answer by sending the
984                              number of audio output drivers.                              number of audio output drivers.
985  </p>  </p>
986  </blockquote>  </blockquote><p>
987                        
988    </p>
989  <p>Example:  <p>Example:
990  </p>  </p>
991  <p></p>  <p>
992                            </p>
993  <blockquote class="text">  <blockquote class="text">
994  <p>C: "GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"  <p>C: "GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"
995  </p>  </p>
996  <p>S: "2"  <p>S: "2"
997  </p>  </p>
998  </blockquote>  </blockquote><p>
999                        
1000  <a name="rfc.section.5.2.2"></a><h4><a name="LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.2</a>&nbsp;Getting all available audio output drivers</h4>  </p>
1001    <a name="LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"></a><br /><hr />
1002    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1003    <a name="rfc.section.6.2.2"></a><h3>6.2.2.&nbsp;Getting all available audio output drivers</h3>
1004    
1005  <p>Use the following command to list all audio output  <p>Use the following command to list all audio output
1006                      drivers currently available for the LinuxSampler                      drivers currently available for the LinuxSampler
1007                      instance:                      instance:
1008  </p>  </p>
1009  <p></p>  <p>
1010                            </p>
1011  <blockquote class="text">  <blockquote class="text">
1012  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS
1013  </p>  </p>
1014  </blockquote>  </blockquote><p>
1015                        
1016    </p>
1017  <p>Possible Answers:  <p>Possible Answers:
1018  </p>  </p>
1019  <p></p>  <p>
1020                            </p>
1021  <blockquote class="text">  <blockquote class="text">
1022  <p>LinuxSampler will answer by sending comma  <p>LinuxSampler will answer by sending comma
1023                              separated character strings, each symbolizing an                              separated character strings, each symbolizing an
1024                              audio output driver.                              audio output driver.
1025  </p>  </p>
1026  </blockquote>  </blockquote><p>
1027                        
1028    </p>
1029  <p>Example:  <p>Example:
1030  </p>  </p>
1031  <p></p>  <p>
1032                            </p>
1033  <blockquote class="text">  <blockquote class="text">
1034  <p>C: "LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"  <p>C: "LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"
1035  </p>  </p>
1036  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
1037  </p>  </p>
1038  </blockquote>  </blockquote><p>
1039                        
1040  <a name="rfc.section.5.2.3"></a><h4><a name="GET AUDIO_OUTPUT_DRIVER INFO">5.2.3</a>&nbsp;Getting information about a specific audio  </p>
1041                  output driver</h4>  <a name="GET AUDIO_OUTPUT_DRIVER INFO"></a><br /><hr />
1042    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1043    <a name="rfc.section.6.2.3"></a><h3>6.2.3.&nbsp;Getting information about a specific audio
1044                    output driver</h3>
1045    
1046  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1047                      about a specific audio output driver:                      about a specific audio output driver:
1048  </p>  </p>
1049  <p></p>  <p>
1050                            </p>
1051  <blockquote class="text">  <blockquote class="text">
1052  <p>GET AUDIO_OUTPUT_DRIVER INFO  <p>GET AUDIO_OUTPUT_DRIVER INFO
1053                               &lt;audio-output-driver&gt;                               &lt;audio-output-driver&gt;
1054  </p>  </p>
1055  </blockquote>  </blockquote><p>
1056                        
1057    </p>
1058  <p>Where &lt;audio-output-driver&gt; is the name of the  <p>Where &lt;audio-output-driver&gt; is the name of the
1059                      audio output driver, returned by the                      audio output driver, returned by the
1060                      <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span>Getting all available audio output drivers</span></a> command.                      <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span> (</span><span class="info">Getting all available audio output drivers</span><span>)</span></a> command.
1061  </p>  </p>
1062  <p>Possible Answers:  <p>Possible Answers:
1063  </p>  </p>
1064  <p></p>  <p>
1065                            </p>
1066  <blockquote class="text">  <blockquote class="text">
1067  <p>LinuxSampler will answer by sending a  <p>LinuxSampler will answer by sending a
1068                              &lt;CRLF&gt; separated list. Each answer line                              &lt;CRLF&gt; separated list. Each answer line
# Line 904  Intellectual Property and Copyright Stat Line 1073  Intellectual Property and Copyright Stat
1073                              following information categories are                              following information categories are
1074                              defined:                              defined:
1075  </p>  </p>
1076  <p></p>  <p>
1077                                  </p>
1078  <blockquote class="text">  <blockquote class="text">
1079  <p>DESCRIPTION -  <p>DESCRIPTION -
1080                                      </p>                                      </p>
# Line 913  Intellectual Property and Copyright Stat Line 1083  Intellectual Property and Copyright Stat
1083                                        audio output driver                                        audio output driver
1084  </p>  </p>
1085  </blockquote>  </blockquote>
1086                                      
1087    
1088  <p>VERSION -  <p>VERSION -
1089                                      </p>                                      </p>
# Line 921  Intellectual Property and Copyright Stat Line 1092  Intellectual Property and Copyright Stat
1092                                        driver's version                                        driver's version
1093  </p>  </p>
1094  </blockquote>  </blockquote>
1095                                      
1096    
1097  <p>PARAMETERS -  <p>PARAMETERS -
1098                                      </p>                                      </p>
# Line 933  Intellectual Property and Copyright Stat Line 1105  Intellectual Property and Copyright Stat
1105                                        output drivers                                        output drivers
1106  </p>  </p>
1107  </blockquote>  </blockquote>
1108                                      
1109    
1110  </blockquote>  </blockquote>
1111                                
1112    
1113  <p>The mentioned fields above don't have to be  <p>The mentioned fields above don't have to be
1114                              in particular order.                              in particular order.
1115  </p>  </p>
1116  </blockquote>  </blockquote><p>
1117                        
1118    </p>
1119  <p>Example:  <p>Example:
1120  </p>  </p>
1121  <p></p>  <p>
1122                          </p>
1123  <blockquote class="text">  <blockquote class="text">
1124  <p>C: "GET AUDIO_OUTPUT_DRIVER INFO ALSA"  <p>C: "GET AUDIO_OUTPUT_DRIVER INFO ALSA"
1125  </p>  </p>
# Line 958  Intellectual Property and Copyright Stat Line 1134  Intellectual Property and Copyright Stat
1134  </p>  </p>
1135  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1136  </p>  </p>
1137  </blockquote>  </blockquote><p>
1138                        
1139  <a name="rfc.section.5.2.4"></a><h4><a name="GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">5.2.4</a>&nbsp;Getting information about specific audio  </p>
1140                  output driver parameter</h4>  <a name="GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
1141    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1142    <a name="rfc.section.6.2.4"></a><h3>6.2.4.&nbsp;Getting information about specific audio
1143                    output driver parameter</h3>
1144    
1145  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1146                      about a  specific audio output driver parameter:                      about a  specific audio output driver parameter:
1147  </p>  </p>
1148  <p></p>  <p>
1149                            </p>
1150  <blockquote class="text">  <blockquote class="text">
1151  <p>GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO &lt;audio&gt; &lt;prm&gt; [&lt;deplist&gt;]  <p>GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO &lt;audio&gt; &lt;prm&gt; [&lt;deplist&gt;]
1152  </p>  </p>
1153  </blockquote>  </blockquote><p>
1154                        
1155    </p>
1156  <p>Where &lt;audio&gt; is the name of the audio output  <p>Where &lt;audio&gt; is the name of the audio output
1157                      driver as returned by the <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span>Getting all available audio output drivers</span></a> command,                      driver as returned by the <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span> (</span><span class="info">Getting all available audio output drivers</span><span>)</span></a> command,
1158                      &lt;prm&gt; a specific parameter name for which information should be                      &lt;prm&gt; a specific parameter name for which information should be
1159                      obtained (as returned by the                      obtained (as returned by the
1160                      <a class="info" href="#GET AUDIO_OUTPUT_DRIVER INFO">"GET AUDIO_OUTPUT_DRIVER INFO"<span>Getting information about a specific audio                 output driver</span></a> command) and                      <a class="info" href="#GET AUDIO_OUTPUT_DRIVER INFO">"GET AUDIO_OUTPUT_DRIVER INFO"<span> (</span><span class="info">Getting information about a specific audio                 output driver</span><span>)</span></a> command) and
1161                      &lt;deplist&gt; is an optional list of parameters on which the sought                      &lt;deplist&gt; is an optional list of parameters on which the sought
1162                      parameter &lt;prm&gt; depends on, &lt;deplist&gt; is a list of key-value                      parameter &lt;prm&gt; depends on, &lt;deplist&gt; is a list of key-value
1163                      pairs in form of "key1=val1 key2=val2 ...", where character string values                      pairs in form of "key1=val1 key2=val2 ...", where character string values
# Line 987  Intellectual Property and Copyright Stat Line 1168  Intellectual Property and Copyright Stat
1168  </p>  </p>
1169  <p>Possible Answers:  <p>Possible Answers:
1170  </p>  </p>
1171  <p></p>  <p>
1172                            </p>
1173  <blockquote class="text">  <blockquote class="text">
1174  <p>LinuxSampler will answer by sending a  <p>LinuxSampler will answer by sending a
1175                              &lt;CRLF&gt; separated list.                              &lt;CRLF&gt; separated list.
# Line 1000  Intellectual Property and Copyright Stat Line 1182  Intellectual Property and Copyright Stat
1182                              which is only shown dependently to given driver parameter. At                              which is only shown dependently to given driver parameter. At
1183                              the moment the following information categories are defined:                              the moment the following information categories are defined:
1184  </p>  </p>
1185  </blockquote>  </blockquote><p>
1186                        
1187  <p></p>  </p>
1188    <p>
1189                            </p>
1190  <blockquote class="text">  <blockquote class="text">
1191  <p>TYPE -  <p>TYPE -
1192                                </p>                                </p>
# Line 1014  Intellectual Property and Copyright Stat Line 1198  Intellectual Property and Copyright Stat
1198                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1199  </p>  </p>
1200  </blockquote>  </blockquote>
1201                                
1202    
1203  <p>DESCRIPTION -  <p>DESCRIPTION -
1204                                </p>                                </p>
# Line 1022  Intellectual Property and Copyright Stat Line 1207  Intellectual Property and Copyright Stat
1207                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1208  </p>  </p>
1209  </blockquote>  </blockquote>
1210                                
1211    
1212  <p>MANDATORY -  <p>MANDATORY -
1213                                </p>                                </p>
1214  <blockquote class="text">  <blockquote class="text">
1215  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
1216                                  given when the device is to be created with the                                  given when the device is to be created with the
1217                                  <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span>Creating an audio output device</span></a>                                  <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
1218                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1219  </p>  </p>
1220  </blockquote>  </blockquote>
1221                                
1222    
1223  <p>FIX -  <p>FIX -
1224                                </p>                                </p>
1225  <blockquote class="text">  <blockquote class="text">
1226  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
1227                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
1228                                  the <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span>Creating an audio output device</span></a>                                  the <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
1229                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1230  </p>  </p>
1231  </blockquote>  </blockquote>
1232                                
1233    
1234  <p>MULTIPLICITY -  <p>MULTIPLICITY -
1235                                </p>                                </p>
# Line 1052  Intellectual Property and Copyright Stat Line 1240  Intellectual Property and Copyright Stat
1240                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1241  </p>  </p>
1242  </blockquote>  </blockquote>
1243                                
1244    
1245  <p>DEPENDS -  <p>DEPENDS -
1246                                </p>                                </p>
1247  <blockquote class="text">  <blockquote class="text">
1248  <p>comma separated list of paramters this parameter depends  <p>comma separated list of parameters this parameter depends
1249                                  on, means the values for fields 'DEFAULT', 'RANGE_MIN',                                  on, means the values for fields 'DEFAULT', 'RANGE_MIN',
1250                                  'RANGE_MAX' and 'POSSIBILITIES' might depend on these                                  'RANGE_MAX' and 'POSSIBILITIES' might depend on these
1251                                  listed parameters, for example assuming that an audio                                  listed parameters, for example assuming that an audio
# Line 1068  Intellectual Property and Copyright Stat Line 1257  Intellectual Property and Copyright Stat
1257                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1258  </p>  </p>
1259  </blockquote>  </blockquote>
1260                                
1261    
1262  <p>DEFAULT -  <p>DEFAULT -
1263                                </p>                                </p>
1264  <blockquote class="text">  <blockquote class="text">
1265  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
1266                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
1267                                  given with the <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span>Creating an audio output device</span></a> command,                                  given with the <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a> command,
1268                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
1269                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
1270                                  apostrophes (')                                  apostrophes (')
1271                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1272  </p>  </p>
1273  </blockquote>  </blockquote>
1274                                
1275    
1276  <p>RANGE_MIN -  <p>RANGE_MIN -
1277                                </p>                                </p>
# Line 1092  Intellectual Property and Copyright Stat Line 1283  Intellectual Property and Copyright Stat
1283                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1284  </p>  </p>
1285  </blockquote>  </blockquote>
1286                                
1287    
1288  <p>RANGE_MAX -  <p>RANGE_MAX -
1289                                </p>                                </p>
# Line 1103  Intellectual Property and Copyright Stat Line 1295  Intellectual Property and Copyright Stat
1295                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1296  </p>  </p>
1297  </blockquote>  </blockquote>
1298                                
1299    
1300  <p>POSSIBILITIES -  <p>POSSIBILITIES -
1301                                </p>                                </p>
# Line 1113  Intellectual Property and Copyright Stat Line 1306  Intellectual Property and Copyright Stat
1306                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1307  </p>  </p>
1308  </blockquote>  </blockquote>
1309                                
1310    
1311  </blockquote>  </blockquote><p>
1312                        
1313    </p>
1314  <p>The mentioned fields above don't have to be in particular order.  <p>The mentioned fields above don't have to be in particular order.
1315  </p>  </p>
1316  <p>Examples:  <p>Examples:
1317  </p>  </p>
1318  <p></p>  <p>
1319                            </p>
1320  <blockquote class="text">  <blockquote class="text">
1321  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA CARD"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA CARD"
1322  </p>  </p>
# Line 1140  Intellectual Property and Copyright Stat Line 1336  Intellectual Property and Copyright Stat
1336  </p>  </p>
1337  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1338  </p>  </p>
1339  </blockquote>  </blockquote><p>
1340                        
1341  <p></p>  </p>
1342    <p>
1343                            </p>
1344  <blockquote class="text">  <blockquote class="text">
1345  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE"
1346  </p>  </p>
# Line 1162  Intellectual Property and Copyright Stat Line 1360  Intellectual Property and Copyright Stat
1360  </p>  </p>
1361  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1362  </p>  </p>
1363  </blockquote>  </blockquote><p>
1364                        
1365  <p></p>  </p>
1366    <p>
1367                            </p>
1368  <blockquote class="text">  <blockquote class="text">
1369  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE CARD='0,0'"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE CARD='0,0'"
1370  </p>  </p>
# Line 1188  Intellectual Property and Copyright Stat Line 1388  Intellectual Property and Copyright Stat
1388  </p>  </p>
1389  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1390  </p>  </p>
1391  </blockquote>  </blockquote><p>
1392                        
1393  <a name="rfc.section.5.2.5"></a><h4><a name="CREATE AUDIO_OUTPUT_DEVICE">5.2.5</a>&nbsp;Creating an audio output device</h4>  </p>
1394    <a name="CREATE AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1395    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1396    <a name="rfc.section.6.2.5"></a><h3>6.2.5.&nbsp;Creating an audio output device</h3>
1397    
1398  <p>Use the following command to create a new audio output device for  the desired audio output system:  <p>Use the following command to create a new audio output device for  the desired audio output system:
1399  </p>  </p>
1400  <p></p>  <p>
1401                            </p>
1402  <blockquote class="text">  <blockquote class="text">
1403  <p>CREATE AUDIO_OUTPUT_DEVICE &lt;audio-output-driver&gt; [&lt;param-list&gt;]  <p>CREATE AUDIO_OUTPUT_DEVICE &lt;audio-output-driver&gt; [&lt;param-list&gt;]
1404  </p>  </p>
1405  </blockquote>  </blockquote><p>
1406                        
1407    </p>
1408  <p>Where &lt;audio-output-driver&gt; should be replaced by the desired audio  <p>Where &lt;audio-output-driver&gt; should be replaced by the desired audio
1409                      output system and &lt;param-list&gt; by an optional list of driver                      output system as returned by the
1410                        <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span> (</span><span class="info">Getting all available audio output drivers</span><span>)</span></a>
1411                        command and &lt;param-list&gt; by an optional list of driver
1412                      specific parameters in form of "key1=val1 key2=val2 ...", where                      specific parameters in form of "key1=val1 key2=val2 ...", where
1413                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
1414                      Note that there might be drivers which require parameter(s) to be                      Note that there might be drivers which require parameter(s) to be
# Line 1210  Intellectual Property and Copyright Stat Line 1417  Intellectual Property and Copyright Stat
1417  </p>  </p>
1418  <p>Possible Answers:  <p>Possible Answers:
1419  </p>  </p>
1420  <p></p>  <p>
1421                            </p>
1422  <blockquote class="text">  <blockquote class="text">
1423  <p>"OK[&lt;device-id&gt;]" -  <p>"OK[&lt;device-id&gt;]" -
1424                                  </p>                                  </p>
# Line 1219  Intellectual Property and Copyright Stat Line 1427  Intellectual Property and Copyright Stat
1427                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
1428  </p>  </p>
1429  </blockquote>  </blockquote>
1430                                
1431    
1432  <p>"WRN[&lt;device-id&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN[&lt;device-id&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1433                                  </p>                                  </p>
# Line 1231  Intellectual Property and Copyright Stat Line 1440  Intellectual Property and Copyright Stat
1440                                      warning message                                      warning message
1441  </p>  </p>
1442  </blockquote>  </blockquote>
1443                                
1444    
1445  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1446                                  </p>                                  </p>
# Line 1238  Intellectual Property and Copyright Stat Line 1448  Intellectual Property and Copyright Stat
1448  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
1449  </p>  </p>
1450  </blockquote>  </blockquote>
1451                                
1452    
1453  </blockquote>  </blockquote><p>
1454                        
1455    </p>
1456  <p>Examples:  <p>Examples:
1457  </p>  </p>
1458  <p></p>  <p>
1459                            </p>
1460  <blockquote class="text">  <blockquote class="text">
1461  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA"
1462  </p>  </p>
1463  <p>S: "OK[0]"  <p>S: "OK[0]"
1464  </p>  </p>
1465  </blockquote>  </blockquote><p>
1466                        
1467  <p></p>  </p>
1468    <p>
1469                            </p>
1470  <blockquote class="text">  <blockquote class="text">
1471  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA CARD='2,0' SAMPLERATE=96000"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA CARD='2,0' SAMPLERATE=96000"
1472  </p>  </p>
1473  <p>S: "OK[1]"  <p>S: "OK[1]"
1474  </p>  </p>
1475  </blockquote>  </blockquote><p>
1476                        
1477  <a name="rfc.section.5.2.6"></a><h4><a name="DESTROY AUDIO_OUTPUT_DEVICE">5.2.6</a>&nbsp;Destroying an audio output device</h4>  </p>
1478    <a name="DESTROY AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1479    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1480    <a name="rfc.section.6.2.6"></a><h3>6.2.6.&nbsp;Destroying an audio output device</h3>
1481    
1482  <p>Use the following command to destroy a created output device:  <p>Use the following command to destroy a created output device:
1483  </p>  </p>
1484  <p></p>  <p>
1485                            </p>
1486  <blockquote class="text">  <blockquote class="text">
1487  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;
1488  </p>  </p>
1489  </blockquote>  </blockquote><p>
1490                        
1491    </p>
1492  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the
1493                      audio output device as given by the                      audio output device as given by the
1494                      <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span>Creating an audio output device</span></a>                      <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
1495                      or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span>Getting all created audio output device list</span></a>                      or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class="info">Getting all created audio output device list</span><span>)</span></a>
1496                      command.                      command.
1497  </p>  </p>
1498  <p>Possible Answers:  <p>Possible Answers:
1499  </p>  </p>
1500  <p></p>  <p>
1501                            </p>
1502  <blockquote class="text">  <blockquote class="text">
1503  <p>"OK" -  <p>"OK" -
1504                                  </p>                                  </p>
# Line 1285  Intellectual Property and Copyright Stat Line 1506  Intellectual Property and Copyright Stat
1506  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
1507  </p>  </p>
1508  </blockquote>  </blockquote>
1509                                
1510    
1511  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1512                                  </p>                                  </p>
# Line 1296  Intellectual Property and Copyright Stat Line 1518  Intellectual Property and Copyright Stat
1518                                      warning code and warning message                                      warning code and warning message
1519  </p>  </p>
1520  </blockquote>  </blockquote>
1521                                
1522    
1523  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1524                                  </p>                                  </p>
# Line 1304  Intellectual Property and Copyright Stat Line 1527  Intellectual Property and Copyright Stat
1527                                      error message                                      error message
1528  </p>  </p>
1529  </blockquote>  </blockquote>
1530                                
1531    
1532  </blockquote>  </blockquote><p>
1533                        
1534    </p>
1535  <p>Example:  <p>Example:
1536  </p>  </p>
1537  <p></p>  <p>
1538                            </p>
1539  <blockquote class="text">  <blockquote class="text">
1540  <p>C: "DESTROY AUDIO_OUTPUT_DEVICE 0"  <p>C: "DESTROY AUDIO_OUTPUT_DEVICE 0"
1541  </p>  </p>
1542  <p>S: "OK"  <p>S: "OK"
1543  </p>  </p>
1544  </blockquote>  </blockquote><p>
1545                        
1546  <a name="rfc.section.5.2.7"></a><h4><a name="GET AUDIO_OUTPUT_DEVICES">5.2.7</a>&nbsp;Getting all created audio output device count</h4>  </p>
1547    <a name="GET AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1548    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1549    <a name="rfc.section.6.2.7"></a><h3>6.2.7.&nbsp;Getting all created audio output device count</h3>
1550    
1551  <p>Use the following command to count all created audio output devices:  <p>Use the following command to count all created audio output devices:
1552  </p>  </p>
1553  <p></p>  <p>
1554                            </p>
1555  <blockquote class="text">  <blockquote class="text">
1556  <p>GET AUDIO_OUTPUT_DEVICES  <p>GET AUDIO_OUTPUT_DEVICES
1557  </p>  </p>
1558  </blockquote>  </blockquote><p>
1559                        
1560    </p>
1561  <p>Possible Answers:  <p>Possible Answers:
1562  </p>  </p>
1563  <p></p>  <p>
1564                            </p>
1565  <blockquote class="text">  <blockquote class="text">
1566  <p>LinuxSampler will answer by sending the current number of all  <p>LinuxSampler will answer by sending the current number of all
1567                              audio output devices.                              audio output devices.
1568  </p>  </p>
1569  </blockquote>  </blockquote><p>
1570                        
1571    </p>
1572  <p>Example:  <p>Example:
1573  </p>  </p>
1574  <p></p>  <p>
1575                            </p>
1576  <blockquote class="text">  <blockquote class="text">
1577  <p>C: "GET AUDIO_OUTPUT_DEVICES"  <p>C: "GET AUDIO_OUTPUT_DEVICES"
1578  </p>  </p>
1579  <p>S: "4"  <p>S: "4"
1580  </p>  </p>
1581  </blockquote>  </blockquote><p>
1582                        
1583  <a name="rfc.section.5.2.8"></a><h4><a name="LIST AUDIO_OUTPUT_DEVICES">5.2.8</a>&nbsp;Getting all created audio output device list</h4>  </p>
1584    <a name="LIST AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1585    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1586    <a name="rfc.section.6.2.8"></a><h3>6.2.8.&nbsp;Getting all created audio output device list</h3>
1587    
1588  <p>Use the following command to list all created audio output devices:  <p>Use the following command to list all created audio output devices:
1589  </p>  </p>
1590  <p></p>  <p>
1591                            </p>
1592  <blockquote class="text">  <blockquote class="text">
1593  <p>LIST AUDIO_OUTPUT_DEVICES  <p>LIST AUDIO_OUTPUT_DEVICES
1594  </p>  </p>
1595  </blockquote>  </blockquote><p>
1596                        
1597    </p>
1598  <p>Possible Answers:  <p>Possible Answers:
1599  </p>  </p>
1600  <p></p>  <p>
1601                            </p>
1602  <blockquote class="text">  <blockquote class="text">
1603  <p>LinuxSampler will answer by sending a comma separated list with  <p>LinuxSampler will answer by sending a comma separated list with
1604                              the numerical IDs of all audio output devices.                              the numerical IDs of all audio output devices.
1605  </p>  </p>
1606  </blockquote>  </blockquote><p>
1607                        
1608    </p>
1609  <p>Example:  <p>Example:
1610  </p>  </p>
1611  <p></p>  <p>
1612                            </p>
1613  <blockquote class="text">  <blockquote class="text">
1614  <p>C: "LIST AUDIO_OUTPUT_DEVICES"  <p>C: "LIST AUDIO_OUTPUT_DEVICES"
1615  </p>  </p>
1616  <p>S: "0,1,4,5"  <p>S: "0,1,4,5"
1617  </p>  </p>
1618  </blockquote>  </blockquote><p>
1619                        
1620  <a name="rfc.section.5.2.9"></a><h4><a name="GET AUDIO_OUTPUT_DEVICE INFO">5.2.9</a>&nbsp;Getting current settings of an audio output device</h4>  </p>
1621    <a name="GET AUDIO_OUTPUT_DEVICE INFO"></a><br /><hr />
1622    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1623    <a name="rfc.section.6.2.9"></a><h3>6.2.9.&nbsp;Getting current settings of an audio output device</h3>
1624    
1625  <p>Use the following command to get current settings of a specific, created audio output device:  <p>Use the following command to get current settings of a specific, created audio output device:
1626  </p>  </p>
1627  <p></p>  <p>
1628                            </p>
1629  <blockquote class="text">  <blockquote class="text">
1630  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;
1631  </p>  </p>
1632  </blockquote>  </blockquote><p>
1633                        
1634    </p>
1635  <p>Where &lt;device-id&gt; should be replaced by numerical ID  <p>Where &lt;device-id&gt; should be replaced by numerical ID
1636                      of the audio output device as e.g. returned by the                      of the audio output device as e.g. returned by the
1637                      <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span>Getting all created audio output device list</span></a> command.                      <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class="info">Getting all created audio output device list</span><span>)</span></a> command.
1638  </p>  </p>
1639  <p>Possible Answers:  <p>Possible Answers:
1640  </p>  </p>
# Line 1399  Intellectual Property and Copyright Stat Line 1646  Intellectual Property and Copyright Stat
1646                      encapsulated into apostrophes ('). At the moment the following                      encapsulated into apostrophes ('). At the moment the following
1647                      information categories are defined (independently of device):                      information categories are defined (independently of device):
1648  </p>  </p>
1649  <p></p>  <p>
1650                            </p>
1651  <blockquote class="text">  <blockquote class="text">
1652  <p>DRIVER -  <p>DRIVER -
1653                                  </p>                                  </p>
1654  <blockquote class="text">  <blockquote class="text">
1655  <p>identifier of the used audio output driver, as also  <p>identifier of the used audio output driver, as also
1656                                      returned by the                                      returned by the
1657                                      <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span>Getting all available audio output drivers</span></a>                                      <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span> (</span><span class="info">Getting all available audio output drivers</span><span>)</span></a>
1658                                      command                                      command
1659  </p>  </p>
1660  </blockquote>  </blockquote>
1661                                
1662    
1663  <p>CHANNELS -  <p>CHANNELS -
1664                                  </p>                                  </p>
# Line 1418  Intellectual Property and Copyright Stat Line 1667  Intellectual Property and Copyright Stat
1667                                      offers                                      offers
1668  </p>  </p>
1669  </blockquote>  </blockquote>
1670                                
1671    
1672  <p>SAMPLERATE -  <p>SAMPLERATE -
1673                                  </p>                                  </p>
# Line 1425  Intellectual Property and Copyright Stat Line 1675  Intellectual Property and Copyright Stat
1675  <p>playback sample rate the device uses  <p>playback sample rate the device uses
1676  </p>  </p>
1677  </blockquote>  </blockquote>
1678                                
1679    
1680  <p>ACTIVE -  <p>ACTIVE -
1681                                  </p>                                  </p>
# Line 1435  Intellectual Property and Copyright Stat Line 1686  Intellectual Property and Copyright Stat
1686                                      any audio                                      any audio
1687  </p>  </p>
1688  </blockquote>  </blockquote>
1689                                
1690    
1691  </blockquote>  </blockquote><p>
1692                        
1693    </p>
1694  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1695                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1696                      returned by all audio output devices. Every audio output driver                      returned by all audio output devices. Every audio output driver
1697                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
1698                      <a class="info" href="#GET AUDIO_OUTPUT_DRIVER INFO">Section 5.2.3<span>Getting information about a specific audio                 output driver</span></a>)                      <a class="info" href="#GET AUDIO_OUTPUT_DRIVER INFO">Section&nbsp;6.2.3<span> (</span><span class="info">Getting information about a specific audio                 output driver</span><span>)</span></a>)
1699                      which are also returned by this command.                      which are also returned by this command.
1700  </p>  </p>
1701  <p>Example:  <p>Example:
1702  </p>  </p>
1703  <p></p>  <p>
1704                            </p>
1705  <blockquote class="text">  <blockquote class="text">
1706  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"
1707  </p>  </p>
# Line 1467  Intellectual Property and Copyright Stat Line 1721  Intellectual Property and Copyright Stat
1721  </p>  </p>
1722  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1723  </p>  </p>
1724  </blockquote>  </blockquote><p>
1725                        
1726  <a name="rfc.section.5.2.10"></a><h4><a name="SET AUDIO_OUTPUT_DEVICE_PARAMETER">5.2.10</a>&nbsp;Changing settings of audio output devices</h4>  </p>
1727    <a name="SET AUDIO_OUTPUT_DEVICE_PARAMETER"></a><br /><hr />
1728    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1729    <a name="rfc.section.6.2.10"></a><h3>6.2.10.&nbsp;Changing settings of audio output devices</h3>
1730    
1731  <p>Use the following command to alter a specific setting of a created audio output device:  <p>Use the following command to alter a specific setting of a created audio output device:
1732  </p>  </p>
1733  <p></p>  <p>
1734                            </p>
1735  <blockquote class="text">  <blockquote class="text">
1736  <p>SET AUDIO_OUTPUT_DEVICE_PARAMETER &lt;device-id&gt; &lt;key&gt;=&lt;value&gt;  <p>SET AUDIO_OUTPUT_DEVICE_PARAMETER &lt;device-id&gt; &lt;key&gt;=&lt;value&gt;
1737  </p>  </p>
1738  </blockquote>  </blockquote><p>
1739                        
1740    </p>
1741  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the
1742                      audio output device, &lt;key&gt; by the name of the parameter to change                      audio output device as given by the
1743                        <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
1744                        or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class="info">Getting all created audio output device list</span><span>)</span></a>
1745                        command, &lt;key&gt; by the name of the parameter to change
1746                      and &lt;value&gt; by the new value for this parameter.                      and &lt;value&gt; by the new value for this parameter.
1747  </p>  </p>
1748  <p>Possible Answers:  <p>Possible Answers:
1749  </p>  </p>
1750  <p></p>  <p>
1751                            </p>
1752  <blockquote class="text">  <blockquote class="text">
1753  <p>"OK" -  <p>"OK" -
1754                                  </p>                                  </p>
# Line 1493  Intellectual Property and Copyright Stat Line 1756  Intellectual Property and Copyright Stat
1756  <p>in case setting was successfully changed  <p>in case setting was successfully changed
1757  </p>  </p>
1758  </blockquote>  </blockquote>
1759                                
1760    
1761  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1762                                  </p>                                  </p>
# Line 1502  Intellectual Property and Copyright Stat Line 1766  Intellectual Property and Copyright Stat
1766                                      warning code and warning message                                      warning code and warning message
1767  </p>  </p>
1768  </blockquote>  </blockquote>
1769                                
1770    
1771  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1772                                  </p>                                  </p>
# Line 1510  Intellectual Property and Copyright Stat Line 1775  Intellectual Property and Copyright Stat
1775                                      error message                                      error message
1776  </p>  </p>
1777  </blockquote>  </blockquote>
1778                                
1779    
1780  </blockquote>  </blockquote><p>
1781                        
1782    </p>
1783  <p>Example:  <p>Example:
1784  </p>  </p>
1785  <p></p>  <p>
1786                            </p>
1787  <blockquote class="text">  <blockquote class="text">
1788  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 FRAGMENTSIZE=128"  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 FRAGMENTSIZE=128"
1789  </p>  </p>
1790  <p>S: "OK"  <p>S: "OK"
1791  </p>  </p>
1792  </blockquote>  </blockquote><p>
1793                        
1794  <a name="rfc.section.5.2.11"></a><h4><a name="GET AUDIO_OUTPUT_CHANNEL INFO">5.2.11</a>&nbsp;Getting information about an audio channel</h4>  </p>
1795    <a name="GET AUDIO_OUTPUT_CHANNEL INFO"></a><br /><hr />
1796    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1797    <a name="rfc.section.6.2.11"></a><h3>6.2.11.&nbsp;Getting information about an audio channel</h3>
1798    
1799  <p>Use the following command to get information about an audio channel:  <p>Use the following command to get information about an audio channel:
1800  </p>  </p>
1801  <p></p>  <p>
1802                            </p>
1803  <blockquote class="text">  <blockquote class="text">
1804  <p>GET AUDIO_OUTPUT_CHANNEL INFO &lt;device-id&gt; &lt;audio-chan&gt;  <p>GET AUDIO_OUTPUT_CHANNEL INFO &lt;device-id&gt; &lt;audio-chan&gt;
1805  </p>  </p>
1806  </blockquote>  </blockquote><p>
1807                        
1808  <p>Where &lt;device-id&gt; is the numerical ID of the audio output device  </p>
1809                      and &lt;audio-chan&gt; the audio channel number.  <p>Where &lt;device-id&gt; is the numerical ID of the audio output device as given by the
1810                        <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
1811                        or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class="info">Getting all created audio output device list</span><span>)</span></a>
1812                        command and &lt;audio-chan&gt; the audio channel number.
1813  </p>  </p>
1814  <p>Possible Answers:  <p>Possible Answers:
1815  </p>  </p>
1816  <p></p>  <p>
1817                            </p>
1818  <blockquote class="text">  <blockquote class="text">
1819  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
1820                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 1546  Intellectual Property and Copyright Stat Line 1822  Intellectual Property and Copyright Stat
1822                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
1823                              the following information categories are defined:                              the following information categories are defined:
1824  </p>  </p>
1825  <p></p>  <p>
1826                                    </p>
1827  <blockquote class="text">  <blockquote class="text">
1828  <p>NAME -  <p>NAME -
1829                                          </p>                                          </p>
# Line 1555  Intellectual Property and Copyright Stat Line 1832  Intellectual Property and Copyright Stat
1832                                              doesn't have to be unique (always returned by all audio channels)                                              doesn't have to be unique (always returned by all audio channels)
1833  </p>  </p>
1834  </blockquote>  </blockquote>
1835                                        
1836    
1837  <p>IS_MIX_CHANNEL -  <p>IS_MIX_CHANNEL -
1838                                          </p>                                          </p>
# Line 1567  Intellectual Property and Copyright Stat Line 1845  Intellectual Property and Copyright Stat
1845                                              (always returned by all audio channels)                                              (always returned by all audio channels)
1846  </p>  </p>
1847  </blockquote>  </blockquote>
1848                                        
1849    
1850  <p>MIX_CHANNEL_DESTINATION -  <p>MIX_CHANNEL_DESTINATION -
1851                                          </p>                                          </p>
# Line 1578  Intellectual Property and Copyright Stat Line 1857  Intellectual Property and Copyright Stat
1857                                              (only returned in case the audio channel is mix channel)                                              (only returned in case the audio channel is mix channel)
1858  </p>  </p>
1859  </blockquote>  </blockquote>
1860                                        
1861    
1862  </blockquote>  </blockquote>
1863                                
1864    
1865  </blockquote>  </blockquote><p>
1866                        
1867    </p>
1868  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1869                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1870                      generally returned for the described cases by all audio                      generally returned for the described cases by all audio
# Line 1592  Intellectual Property and Copyright Stat Line 1874  Intellectual Property and Copyright Stat
1874  </p>  </p>
1875  <p>Examples:  <p>Examples:
1876  </p>  </p>
1877  <p></p>  <p>
1878                            </p>
1879  <blockquote class="text">  <blockquote class="text">
1880  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 0"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 0"
1881  </p>  </p>
# Line 1602  Intellectual Property and Copyright Stat Line 1885  Intellectual Property and Copyright Stat
1885  </p>  </p>
1886  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1887  </p>  </p>
1888  </blockquote>  </blockquote><p>
1889                        
1890  <p></p>  </p>
1891    <p>
1892                            </p>
1893  <blockquote class="text">  <blockquote class="text">
1894  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 1"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 1"
1895  </p>  </p>
# Line 1614  Intellectual Property and Copyright Stat Line 1899  Intellectual Property and Copyright Stat
1899  </p>  </p>
1900  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1901  </p>  </p>
1902  </blockquote>  </blockquote><p>
1903                        
1904  <p></p>  </p>
1905    <p>
1906                            </p>
1907  <blockquote class="text">  <blockquote class="text">
1908  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 2"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 2"
1909  </p>  </p>
# Line 1628  Intellectual Property and Copyright Stat Line 1915  Intellectual Property and Copyright Stat
1915  </p>  </p>
1916  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1917  </p>  </p>
1918  </blockquote>  </blockquote><p>
1919                        
1920  <p></p>  </p>
1921    <p>
1922                            </p>
1923  <blockquote class="text">  <blockquote class="text">
1924  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 1 0"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 1 0"
1925  </p>  </p>
# Line 1642  Intellectual Property and Copyright Stat Line 1931  Intellectual Property and Copyright Stat
1931  </p>  </p>
1932  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1933  </p>  </p>
1934  </blockquote>  </blockquote><p>
1935                        
1936  <a name="rfc.section.5.2.12"></a><h4><a name="GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">5.2.12</a>&nbsp;Getting information about specific audio channel parameter</h4>  </p>
1937    <a name="GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO"></a><br /><hr />
1938    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
1939    <a name="rfc.section.6.2.12"></a><h3>6.2.12.&nbsp;Getting information about specific audio channel parameter</h3>
1940    
1941  <p>Use the following command to get detailed information about specific audio channel parameter:  <p>Use the following command to get detailed information about specific audio channel parameter:
1942  </p>  </p>
1943  <p></p>  <p>
1944                            </p>
1945  <blockquote class="text">  <blockquote class="text">
1946  <p>GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO &lt;dev-id&gt; &lt;chan&gt; &lt;param&gt;  <p>GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO &lt;dev-id&gt; &lt;chan&gt; &lt;param&gt;
1947  </p>  </p>
1948  </blockquote>  </blockquote><p>
1949                        
1950  <p>Where &lt;dev-id&gt; is the numerical ID of the audio output device as returned  </p>
1951                      by the <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span>Getting all created audio output device list</span></a>  <p>Where &lt;dev-id&gt; is the numerical ID of the audio output device as returned by the
1952                        <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
1953                        or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class="info">Getting all created audio output device list</span><span>)</span></a>
1954                      command, &lt;chan&gt; the audio channel number                      command, &lt;chan&gt; the audio channel number
1955                      and &lt;param&gt; a specific channel parameter name for which information should                      and &lt;param&gt; a specific channel parameter name for which information should
1956                      be obtained (as returned by the <a class="info" href="#GET AUDIO_OUTPUT_CHANNEL INFO">"GET AUDIO_OUTPUT_CHANNEL INFO"<span>Getting information about an audio channel</span></a> command).                      be obtained (as returned by the <a class="info" href="#GET AUDIO_OUTPUT_CHANNEL INFO">"GET AUDIO_OUTPUT_CHANNEL INFO"<span> (</span><span class="info">Getting information about an audio channel</span><span>)</span></a> command).
1957  </p>  </p>
1958  <p>Possible Answers:  <p>Possible Answers:
1959  </p>  </p>
1960  <p></p>  <p>
1961                            </p>
1962  <blockquote class="text">  <blockquote class="text">
1963  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
1964                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 1673  Intellectual Property and Copyright Stat Line 1969  Intellectual Property and Copyright Stat
1969                              which is only shown dependently to the given audio channel. At                              which is only shown dependently to the given audio channel. At
1970                              the moment the following information categories are defined:                              the moment the following information categories are defined:
1971  </p>  </p>
1972  <p></p>  <p>
1973                                    </p>
1974  <blockquote class="text">  <blockquote class="text">
1975  <p>TYPE -  <p>TYPE -
1976                                          </p>                                          </p>
# Line 1684  Intellectual Property and Copyright Stat Line 1981  Intellectual Property and Copyright Stat
1981                                              (always returned)                                              (always returned)
1982  </p>  </p>
1983  </blockquote>  </blockquote>
1984                                        
1985    
1986  <p>DESCRIPTION -  <p>DESCRIPTION -
1987                                          </p>                                          </p>
# Line 1691  Intellectual Property and Copyright Stat Line 1989  Intellectual Property and Copyright Stat
1989  <p>arbitrary text describing the purpose of the parameter (always returned)  <p>arbitrary text describing the purpose of the parameter (always returned)
1990  </p>  </p>
1991  </blockquote>  </blockquote>
1992                                        
1993    
1994  <p>FIX -  <p>FIX -
1995                                          </p>                                          </p>
# Line 1700  Intellectual Property and Copyright Stat Line 1999  Intellectual Property and Copyright Stat
1999                                              (always returned)                                              (always returned)
2000  </p>  </p>
2001  </blockquote>  </blockquote>
2002                                        
2003    
2004  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2005                                          </p>                                          </p>
# Line 1710  Intellectual Property and Copyright Stat Line 2010  Intellectual Property and Copyright Stat
2010                                              (always returned)                                              (always returned)
2011  </p>  </p>
2012  </blockquote>  </blockquote>
2013                                        
2014    
2015  <p>RANGE_MIN -  <p>RANGE_MIN -
2016                                          </p>                                          </p>
# Line 1722  Intellectual Property and Copyright Stat Line 2023  Intellectual Property and Copyright Stat
2023                                              parameter)                                              parameter)
2024  </p>  </p>
2025  </blockquote>  </blockquote>
2026                                        
2027    
2028  <p>RANGE_MAX -  <p>RANGE_MAX -
2029                                          </p>                                          </p>
# Line 1734  Intellectual Property and Copyright Stat Line 2036  Intellectual Property and Copyright Stat
2036                                              parameter)                                              parameter)
2037  </p>  </p>
2038  </blockquote>  </blockquote>
2039                                        
2040    
2041  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2042                                          </p>                                          </p>
# Line 1745  Intellectual Property and Copyright Stat Line 2048  Intellectual Property and Copyright Stat
2048                                              parameter)                                              parameter)
2049  </p>  </p>
2050  </blockquote>  </blockquote>
2051                                        
2052    
2053  </blockquote>  </blockquote>
2054                                
2055    
2056  <p>The mentioned fields above don't have to be in particular order.  <p>The mentioned fields above don't have to be in particular order.
2057  </p>  </p>
2058  </blockquote>  </blockquote><p>
2059                        
2060    </p>
2061  <p>Example:  <p>Example:
2062  </p>  </p>
2063  <p></p>  <p>
2064                            </p>
2065  <blockquote class="text">  <blockquote class="text">
2066  <p>C: "GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 1 0 JACK_BINDINGS"  <p>C: "GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 1 0 JACK_BINDINGS"
2067  </p>  </p>
# Line 1770  Intellectual Property and Copyright Stat Line 2077  Intellectual Property and Copyright Stat
2077  </p>  </p>
2078  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2079  </p>  </p>
2080  </blockquote>  </blockquote><p>
2081                        
2082  <a name="rfc.section.5.2.13"></a><h4><a name="SET AUDIO_OUTPUT_CHANNEL_PARAMETER">5.2.13</a>&nbsp;Changing settings of audio output channels</h4>  </p>
2083    <a name="SET AUDIO_OUTPUT_CHANNEL_PARAMETER"></a><br /><hr />
2084    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2085    <a name="rfc.section.6.2.13"></a><h3>6.2.13.&nbsp;Changing settings of audio output channels</h3>
2086    
2087  <p>Use the following command to alter a specific setting of an audio output channel:  <p>Use the following command to alter a specific setting of an audio output channel:
2088  </p>  </p>
2089  <p></p>  <p>
2090                            </p>
2091  <blockquote class="text">  <blockquote class="text">
2092  <p>SET AUDIO_OUTPUT_CHANNEL_PARAMETER &lt;dev-id&gt; &lt;chn&gt; &lt;key&gt;=&lt;value&gt;  <p>SET AUDIO_OUTPUT_CHANNEL_PARAMETER &lt;dev-id&gt; &lt;chn&gt; &lt;key&gt;=&lt;value&gt;
2093  </p>  </p>
2094  </blockquote>  </blockquote><p>
2095                        
2096  <p>Where &lt;dev-id&gt; should be replaced by the numerical ID of the audio  </p>
2097                      device, &lt;chn&gt; by the audio channel number, &lt;key&gt; by the name of the  <p>Where &lt;dev-id&gt; should be replaced by the numerical ID of the audio output device as returned by the
2098                        <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
2099                        or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class="info">Getting all created audio output device list</span><span>)</span></a>
2100                        command, &lt;chn&gt; by the audio channel number, &lt;key&gt; by the name of the
2101                      parameter to change and &lt;value&gt; by the new value for this parameter.                      parameter to change and &lt;value&gt; by the new value for this parameter.
2102  </p>  </p>
2103  <p>Possible Answers:  <p>Possible Answers:
2104  </p>  </p>
2105  <p></p>  <p>
2106                            </p>
2107  <blockquote class="text">  <blockquote class="text">
2108  <p>"OK" -  <p>"OK" -
2109                                  </p>                                  </p>
# Line 1796  Intellectual Property and Copyright Stat Line 2111  Intellectual Property and Copyright Stat
2111  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2112  </p>  </p>
2113  </blockquote>  </blockquote>
2114                                
2115    
2116  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2117                                  </p>                                  </p>
# Line 1805  Intellectual Property and Copyright Stat Line 2121  Intellectual Property and Copyright Stat
2121                                     warning code and warning message                                     warning code and warning message
2122  </p>  </p>
2123  </blockquote>  </blockquote>
2124                                
2125    
2126  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2127                                  </p>                                  </p>
# Line 1813  Intellectual Property and Copyright Stat Line 2130  Intellectual Property and Copyright Stat
2130                                     error message                                     error message
2131  </p>  </p>
2132  </blockquote>  </blockquote>
2133                                
2134    
2135  </blockquote>  </blockquote><p>
2136                        
2137    </p>
2138  <p>Example:  <p>Example:
2139  </p>  </p>
2140  <p></p>  <p>
2141                            </p>
2142  <blockquote class="text">  <blockquote class="text">
2143  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 JACK_BINDINGS='PCM:0'"  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 JACK_BINDINGS='PCM:0'"
2144  </p>  </p>
2145  <p>S: "OK"  <p>S: "OK"
2146  </p>  </p>
2147  </blockquote>  </blockquote><p>
2148                        
2149  <p></p>  </p>
2150    <p>
2151                            </p>
2152  <blockquote class="text">  <blockquote class="text">
2153  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 NAME='monitor left'"  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 NAME='monitor left'"
2154  </p>  </p>
2155  <p>S: "OK"  <p>S: "OK"
2156  </p>  </p>
2157  </blockquote>  </blockquote><p>
2158                        
2159  <a name="rfc.section.5.3"></a><h4><a name="anchor11">5.3</a>&nbsp;Configuring MIDI input drivers</h4>  </p>
2160    <a name="anchor10"></a><br /><hr />
2161    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2162    <a name="rfc.section.6.3"></a><h3>6.3.&nbsp;Configuring MIDI input drivers</h3>
2163    
2164  <p>Instances of drivers in LinuxSampler are called devices. You can use  <p>Instances of drivers in LinuxSampler are called devices. You can use
2165                  multiple MIDI devices simultaneously, e.g. to use MIDI over ethernet as                  multiple MIDI devices simultaneously, e.g. to use MIDI over ethernet as
# Line 1862  Intellectual Property and Copyright Stat Line 2187  Intellectual Property and Copyright Stat
2187                  showing how to retrieve what parameters drivers are offering, how to retrieve their                  showing how to retrieve what parameters drivers are offering, how to retrieve their
2188                  possible values, etc.                  possible values, etc.
2189  </p>  </p>
2190  <a name="rfc.section.5.3.1"></a><h4><a name="GET AVAILABLE_MIDI_INPUT_DRIVERS">5.3.1</a>&nbsp;Getting amount of available MIDI input drivers</h4>  <a name="GET AVAILABLE_MIDI_INPUT_DRIVERS"></a><br /><hr />
2191    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2192    <a name="rfc.section.6.3.1"></a><h3>6.3.1.&nbsp;Getting amount of available MIDI input drivers</h3>
2193    
2194  <p>Use the following command to get the number of  <p>Use the following command to get the number of
2195                      MIDI input drivers currently available for the                      MIDI input drivers currently available for the
2196                      LinuxSampler instance:                      LinuxSampler instance:
2197  </p>  </p>
2198  <p></p>  <p>
2199                            </p>
2200  <blockquote class="text">  <blockquote class="text">
2201  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS
2202  </p>  </p>
2203  </blockquote>  </blockquote><p>
2204                        
2205    </p>
2206  <p>Possible Answers:  <p>Possible Answers:
2207  </p>  </p>
2208  <p></p>  <p>
2209                            </p>
2210  <blockquote class="text">  <blockquote class="text">
2211  <p>LinuxSampler will answer by sending the  <p>LinuxSampler will answer by sending the
2212                              number of available MIDI input drivers.                              number of available MIDI input drivers.
2213  </p>  </p>
2214  </blockquote>  </blockquote><p>
2215                        
2216    </p>
2217  <p>Example:  <p>Example:
2218  </p>  </p>
2219  <p></p>  <p>
2220                            </p>
2221  <blockquote class="text">  <blockquote class="text">
2222  <p>C: "GET AVAILABLE_MIDI_INPUT_DRIVERS"  <p>C: "GET AVAILABLE_MIDI_INPUT_DRIVERS"
2223  </p>  </p>
2224  <p>S: "2"  <p>S: "2"
2225  </p>  </p>
2226  </blockquote>  </blockquote><p>
2227                        
2228  <a name="rfc.section.5.3.2"></a><h4><a name="LIST AVAILABLE_MIDI_INPUT_DRIVERS">5.3.2</a>&nbsp;Getting all available MIDI input drivers</h4>  </p>
2229    <a name="LIST AVAILABLE_MIDI_INPUT_DRIVERS"></a><br /><hr />
2230    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2231    <a name="rfc.section.6.3.2"></a><h3>6.3.2.&nbsp;Getting all available MIDI input drivers</h3>
2232    
2233  <p>Use the following command to list all MIDI input drivers currently available  <p>Use the following command to list all MIDI input drivers currently available
2234                      for the LinuxSampler instance:                      for the LinuxSampler instance:
2235  </p>  </p>
2236  <p></p>  <p>
2237                            </p>
2238  <blockquote class="text">  <blockquote class="text">
2239  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS
2240  </p>  </p>
2241  </blockquote>  </blockquote><p>
2242                        
2243    </p>
2244  <p>Possible Answers:  <p>Possible Answers:
2245  </p>  </p>
2246  <p></p>  <p>
2247                            </p>
2248  <blockquote class="text">  <blockquote class="text">
2249  <p>LinuxSampler will answer by sending comma separated character  <p>LinuxSampler will answer by sending comma separated character
2250                              strings, each symbolizing a MIDI input driver.                              strings, each symbolizing a MIDI input driver.
2251  </p>  </p>
2252  </blockquote>  </blockquote><p>
2253                        
2254    </p>
2255  <p>Example:  <p>Example:
2256  </p>  </p>
2257  <p></p>  <p>
2258                            </p>
2259  <blockquote class="text">  <blockquote class="text">
2260  <p>C: "LIST AVAILABLE_MIDI_INPUT_DRIVERS"  <p>C: "LIST AVAILABLE_MIDI_INPUT_DRIVERS"
2261  </p>  </p>
2262  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
2263  </p>  </p>
2264  </blockquote>  </blockquote><p>
2265                        
2266  <a name="rfc.section.5.3.3"></a><h4><a name="GET MIDI_INPUT_DRIVER INFO">5.3.3</a>&nbsp;Getting information about a specific MIDI input driver</h4>  </p>
2267    <a name="GET MIDI_INPUT_DRIVER INFO"></a><br /><hr />
2268    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2269    <a name="rfc.section.6.3.3"></a><h3>6.3.3.&nbsp;Getting information about a specific MIDI input driver</h3>
2270    
2271  <p>Use the following command to get detailed information about a specific MIDI input driver:  <p>Use the following command to get detailed information about a specific MIDI input driver:
2272  </p>  </p>
2273  <p></p>  <p>
2274                            </p>
2275  <blockquote class="text">  <blockquote class="text">
2276  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;
2277  </p>  </p>
2278  </blockquote>  </blockquote><p>
2279                        
2280  <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver.  </p>
2281    <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver as returned
2282                        by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span> (</span><span class="info">Getting all available MIDI input drivers</span><span>)</span></a> command.
2283  </p>  </p>
2284  <p>Possible Answers:  <p>Possible Answers:
2285  </p>  </p>
2286  <p></p>  <p>
2287                            </p>
2288  <blockquote class="text">  <blockquote class="text">
2289  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2290                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 1945  Intellectual Property and Copyright Stat Line 2292  Intellectual Property and Copyright Stat
2292                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
2293                              the following information categories are defined:                              the following information categories are defined:
2294  </p>  </p>
2295  <p></p>  <p>
2296                                    </p>
2297  <blockquote class="text">  <blockquote class="text">
2298  <p>DESCRIPTION -  <p>DESCRIPTION -
2299                                          </p>                                          </p>
# Line 1953  Intellectual Property and Copyright Stat Line 2301  Intellectual Property and Copyright Stat
2301  <p>arbitrary description text about the MIDI input driver  <p>arbitrary description text about the MIDI input driver
2302  </p>  </p>
2303  </blockquote>  </blockquote>
2304                                        
2305    
2306  <p>VERSION -  <p>VERSION -
2307                                          </p>                                          </p>
# Line 1960  Intellectual Property and Copyright Stat Line 2309  Intellectual Property and Copyright Stat
2309  <p>arbitrary character string regarding the driver's version  <p>arbitrary character string regarding the driver's version
2310  </p>  </p>
2311  </blockquote>  </blockquote>
2312                                        
2313    
2314  <p>PARAMETERS -  <p>PARAMETERS -
2315                                          </p>                                          </p>
# Line 1967  Intellectual Property and Copyright Stat Line 2317  Intellectual Property and Copyright Stat
2317  <p>comma separated list of all parameters available for the given MIDI input driver  <p>comma separated list of all parameters available for the given MIDI input driver
2318  </p>  </p>
2319  </blockquote>  </blockquote>
2320                                        
2321    
2322  </blockquote>  </blockquote>
2323                                
2324    
2325  <p>The mentioned fields above don't have to be in particular order.  <p>The mentioned fields above don't have to be in particular order.
2326  </p>  </p>
2327  </blockquote>  </blockquote><p>
2328                        
2329    </p>
2330  <p>Example:  <p>Example:
2331  </p>  </p>
2332  <p></p>  <p>
2333                            </p>
2334  <blockquote class="text">  <blockquote class="text">
2335  <p>C: "GET MIDI_INPUT_DRIVER INFO ALSA"  <p>C: "GET MIDI_INPUT_DRIVER INFO ALSA"
2336  </p>  </p>
# Line 1988  Intellectual Property and Copyright Stat Line 2342  Intellectual Property and Copyright Stat
2342  </p>  </p>
2343  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2344  </p>  </p>
2345  </blockquote>  </blockquote><p>
2346                        
2347  <a name="rfc.section.5.3.4"></a><h4><a name="GET MIDI_INPUT_DRIVER_PARAMETER INFO">5.3.4</a>&nbsp;Getting information about specific MIDI input driver parameter</h4>  </p>
2348    <a name="GET MIDI_INPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
2349    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2350    <a name="rfc.section.6.3.4"></a><h3>6.3.4.&nbsp;Getting information about specific MIDI input driver parameter</h3>
2351    
2352  <p>Use the following command to get detailed information about a specific parameter of a specific MIDI input driver:  <p>Use the following command to get detailed information about a specific parameter of a specific MIDI input driver:
2353  </p>  </p>
2354  <p></p>  <p>
2355                            </p>
2356  <blockquote class="text">  <blockquote class="text">
2357  <p>GET MIDI_INPUT_DRIVER_PARAMETER INFO &lt;midit&gt; &lt;param&gt; [&lt;deplist&gt;]  <p>GET MIDI_INPUT_DRIVER_PARAMETER INFO &lt;midit&gt; &lt;param&gt; [&lt;deplist&gt;]
2358  </p>  </p>
2359  </blockquote>  </blockquote><p>
2360                        
2361  <p>Where &lt;midi-t&gt; is the name of the MIDI input driver as returned  </p>
2362                      by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span>Getting all available MIDI input drivers</span></a> command, &lt;param&gt; a specific  <p>Where &lt;midit&gt; is the name of the MIDI input driver as returned
2363                        by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span> (</span><span class="info">Getting all available MIDI input drivers</span><span>)</span></a> command, &lt;param&gt; a specific
2364                      parameter name for which information should be obtained (as returned by the                      parameter name for which information should be obtained (as returned by the
2365                      <a class="info" href="#GET MIDI_INPUT_DRIVER INFO">"GET MIDI_INPUT_DRIVER INFO"<span>Getting information about a specific MIDI input driver</span></a> command) and &lt;deplist&gt; is an optional list                      <a class="info" href="#GET MIDI_INPUT_DRIVER INFO">"GET MIDI_INPUT_DRIVER INFO"<span> (</span><span class="info">Getting information about a specific MIDI input driver</span><span>)</span></a> command) and &lt;deplist&gt; is an optional list
2366                      of parameters on which the sought parameter &lt;param&gt; depends on,                      of parameters on which the sought parameter &lt;param&gt; depends on,
2367                      &lt;deplist&gt; is a key-value pair list in form of "key1=val1 key2=val2 ...",                      &lt;deplist&gt; is a key-value pair list in form of "key1=val1 key2=val2 ...",
2368                      where character string values are encapsulated into apostrophes ('). Arguments                      where character string values are encapsulated into apostrophes ('). Arguments
# Line 2022  Intellectual Property and Copyright Stat Line 2381  Intellectual Property and Copyright Stat
2381                      which is only shown dependent to given driver parameter. At                      which is only shown dependent to given driver parameter. At
2382                      the moment the following information categories are defined:                      the moment the following information categories are defined:
2383  </p>  </p>
2384  <p></p>  <p>
2385                            </p>
2386  <blockquote class="text">  <blockquote class="text">
2387  <p>TYPE -  <p>TYPE -
2388                                </p>                                </p>
# Line 2033  Intellectual Property and Copyright Stat Line 2393  Intellectual Property and Copyright Stat
2393                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2394  </p>  </p>
2395  </blockquote>  </blockquote>
2396                                
2397    
2398  <p>DESCRIPTION -  <p>DESCRIPTION -
2399                                </p>                                </p>
# Line 2041  Intellectual Property and Copyright Stat Line 2402  Intellectual Property and Copyright Stat
2402                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2403  </p>  </p>
2404  </blockquote>  </blockquote>
2405                                
2406    
2407  <p>MANDATORY -  <p>MANDATORY -
2408                                </p>                                </p>
2409  <blockquote class="text">  <blockquote class="text">
2410  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
2411                                  given when the device is to be created with the                                  given when the device is to be created with the
2412                                  <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span>Creating a MIDI input device</span></a> command                                  <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a> command
2413                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2414  </p>  </p>
2415  </blockquote>  </blockquote>
2416                                
2417    
2418  <p>FIX -  <p>FIX -
2419                                </p>                                </p>
2420  <blockquote class="text">  <blockquote class="text">
2421  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
2422                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
2423                                  the <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span>Creating a MIDI input device</span></a> command                                  the <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a> command
2424                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2425  </p>  </p>
2426  </blockquote>  </blockquote>
2427                                
2428    
2429  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2430                                </p>                                </p>
# Line 2071  Intellectual Property and Copyright Stat Line 2435  Intellectual Property and Copyright Stat
2435                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2436  </p>  </p>
2437  </blockquote>  </blockquote>
2438                                
2439    
2440  <p>DEPENDS -  <p>DEPENDS -
2441                                </p>                                </p>
2442  <blockquote class="text">  <blockquote class="text">
2443  <p>comma separated list of paramters this parameter depends  <p>comma separated list of parameters this parameter depends
2444                                  on, means the values for fields 'DEFAULT', 'RANGE_MIN',                                  on, means the values for fields 'DEFAULT', 'RANGE_MIN',
2445                                  'RANGE_MAX' and 'POSSIBILITIES' might depend on these                                  'RANGE_MAX' and 'POSSIBILITIES' might depend on these
2446                                  listed parameters, for example assuming that an audio                                  listed parameters, for example assuming that an audio
# Line 2087  Intellectual Property and Copyright Stat Line 2452  Intellectual Property and Copyright Stat
2452                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2453  </p>  </p>
2454  </blockquote>  </blockquote>
2455                                
2456    
2457  <p>DEFAULT -  <p>DEFAULT -
2458                                </p>                                </p>
2459  <blockquote class="text">  <blockquote class="text">
2460  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
2461                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
2462                                  given with the <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span>Creating a MIDI input device</span></a> command,                                  given with the <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a> command,
2463                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
2464                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
2465                                  apostrophes (')                                  apostrophes (')
2466                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2467  </p>  </p>
2468  </blockquote>  </blockquote>
2469                                
2470    
2471  <p>RANGE_MIN -  <p>RANGE_MIN -
2472                                </p>                                </p>
# Line 2111  Intellectual Property and Copyright Stat Line 2478  Intellectual Property and Copyright Stat
2478                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2479  </p>  </p>
2480  </blockquote>  </blockquote>
2481                                
2482    
2483  <p>RANGE_MAX -  <p>RANGE_MAX -
2484                                </p>                                </p>
# Line 2122  Intellectual Property and Copyright Stat Line 2490  Intellectual Property and Copyright Stat
2490                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2491  </p>  </p>
2492  </blockquote>  </blockquote>
2493                                
2494    
2495  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2496                                </p>                                </p>
# Line 2132  Intellectual Property and Copyright Stat Line 2501  Intellectual Property and Copyright Stat
2501                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2502  </p>  </p>
2503  </blockquote>  </blockquote>
2504                                
2505    
2506  </blockquote>  </blockquote><p>
2507                        
2508    </p>
2509  <p>The mentioned fields above don't have to be in particular order.  <p>The mentioned fields above don't have to be in particular order.
2510  </p>  </p>
2511  <p>Example:  <p>Example:
2512  </p>  </p>
2513  <p></p>  <p>
2514                            </p>
2515  <blockquote class="text">  <blockquote class="text">
2516  <p>C: "GET MIDI_INPUT_DRIVER_PARAMETER INFO ALSA ACTIVE"  <p>C: "GET MIDI_INPUT_DRIVER_PARAMETER INFO ALSA ACTIVE"
2517  </p>  </p>
# Line 2157  Intellectual Property and Copyright Stat Line 2529  Intellectual Property and Copyright Stat
2529  </p>  </p>
2530  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2531  </p>  </p>
2532  </blockquote>  </blockquote><p>
2533                        
2534  <a name="rfc.section.5.3.5"></a><h4><a name="CREATE MIDI_INPUT_DEVICE">5.3.5</a>&nbsp;Creating a MIDI input device</h4>  </p>
2535    <a name="CREATE MIDI_INPUT_DEVICE"></a><br /><hr />
2536    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2537    <a name="rfc.section.6.3.5"></a><h3>6.3.5.&nbsp;Creating a MIDI input device</h3>
2538    
2539  <p>Use the following command to create a new MIDI input device for  the desired MIDI input system:  <p>Use the following command to create a new MIDI input device for  the desired MIDI input system:
2540  </p>  </p>
2541  <p></p>  <p>
2542                            </p>
2543  <blockquote class="text">  <blockquote class="text">
2544  <p>CREATE MIDI_INPUT_DEVICE &lt;midi-input-driver&gt; [&lt;param-list&gt;]  <p>CREATE MIDI_INPUT_DEVICE &lt;midi-input-driver&gt; [&lt;param-list&gt;]
2545  </p>  </p>
2546  </blockquote>  </blockquote><p>
2547                        
2548  <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system and &lt;param-list&gt; by an  </p>
2549    <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system as returned
2550                        by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span> (</span><span class="info">Getting all available MIDI input drivers</span><span>)</span></a> command and &lt;param-list&gt; by an
2551                      optional list of driver specific parameters in form of "key1=val1 key2=val2 ...", where                      optional list of driver specific parameters in form of "key1=val1 key2=val2 ...", where
2552                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
2553                      Note that there might be drivers which require parameter(s) to be                      Note that there might be drivers which require parameter(s) to be
# Line 2178  Intellectual Property and Copyright Stat Line 2556  Intellectual Property and Copyright Stat
2556  </p>  </p>
2557  <p>Possible Answers:  <p>Possible Answers:
2558  </p>  </p>
2559  <p></p>  <p>
2560                            </p>
2561  <blockquote class="text">  <blockquote class="text">
2562  <p>"OK[&lt;device-id&gt;]" -  <p>"OK[&lt;device-id&gt;]" -
2563                                  </p>                                  </p>
# Line 2187  Intellectual Property and Copyright Stat Line 2566  Intellectual Property and Copyright Stat
2566                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
2567  </p>  </p>
2568  </blockquote>  </blockquote>
2569                                
2570    
2571  <p>"WRN[&lt;device-id&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN[&lt;device-id&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2572                                  </p>                                  </p>
# Line 2197  Intellectual Property and Copyright Stat Line 2577  Intellectual Property and Copyright Stat
2577                                      appropriate warning code and warning message                                      appropriate warning code and warning message
2578  </p>  </p>
2579  </blockquote>  </blockquote>
2580                                
2581    
2582  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2583                                  </p>                                  </p>
# Line 2204  Intellectual Property and Copyright Stat Line 2585  Intellectual Property and Copyright Stat
2585  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
2586  </p>  </p>
2587  </blockquote>  </blockquote>
2588                                
2589    
2590  </blockquote>  </blockquote><p>
2591                        
2592    </p>
2593  <p>Example:  <p>Example:
2594  </p>  </p>
2595  <p></p>  <p>
2596                            </p>
2597  <blockquote class="text">  <blockquote class="text">
2598  <p>C: "CREATE MIDI_INPUT_DEVICE ALSA"  <p>C: "CREATE MIDI_INPUT_DEVICE ALSA"
2599  </p>  </p>
2600  <p>S: "OK[0]"  <p>S: "OK[0]"
2601  </p>  </p>
2602  </blockquote>  </blockquote><p>
2603                        
2604  <a name="rfc.section.5.3.6"></a><h4><a name="DESTROY MIDI_INPUT_DEVICE">5.3.6</a>&nbsp;Destroying a MIDI input device</h4>  </p>
2605    <a name="DESTROY MIDI_INPUT_DEVICE"></a><br /><hr />
2606    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2607    <a name="rfc.section.6.3.6"></a><h3>6.3.6.&nbsp;Destroying a MIDI input device</h3>
2608    
2609  <p>Use the following command to destroy a created MIDI input device:  <p>Use the following command to destroy a created MIDI input device:
2610  </p>  </p>
2611  <p></p>  <p>
2612                            </p>
2613  <blockquote class="text">  <blockquote class="text">
2614  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;
2615  </p>  </p>
2616  </blockquote>  </blockquote><p>
2617                        
2618  <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID.  </p>
2619    <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID as returned by the
2620                        <a class="info" href="#CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a>
2621                        or <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span> (</span><span class="info">Getting all created MIDI input device list</span><span>)</span></a>
2622                        command.
2623  </p>  </p>
2624  <p>Possible Answers:  <p>Possible Answers:
2625  </p>  </p>
2626  <p></p>  <p>
2627                            </p>
2628  <blockquote class="text">  <blockquote class="text">
2629  <p>"OK" -  <p>"OK" -
2630                                  </p>                                  </p>
# Line 2239  Intellectual Property and Copyright Stat Line 2632  Intellectual Property and Copyright Stat
2632  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
2633  </p>  </p>
2634  </blockquote>  </blockquote>
2635                                
2636    
2637  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2638                                  </p>                                  </p>
# Line 2248  Intellectual Property and Copyright Stat Line 2642  Intellectual Property and Copyright Stat
2642                                      warning message                                      warning message
2643  </p>  </p>
2644  </blockquote>  </blockquote>
2645                                
2646    
2647  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2648                                  </p>                                  </p>
# Line 2255  Intellectual Property and Copyright Stat Line 2650  Intellectual Property and Copyright Stat
2650  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
2651  </p>  </p>
2652  </blockquote>  </blockquote>
2653                                
2654    
2655  </blockquote>  </blockquote><p>
2656                        
2657    </p>
2658  <p>Example:  <p>Example:
2659  </p>  </p>
2660  <p></p>  <p>
2661                            </p>
2662  <blockquote class="text">  <blockquote class="text">
2663  <p>C: "DESTROY MIDI_INPUT_DEVICE 0"  <p>C: "DESTROY MIDI_INPUT_DEVICE 0"
2664  </p>  </p>
2665  <p>S: "OK"  <p>S: "OK"
2666  </p>  </p>
2667  </blockquote>  </blockquote><p>
2668                        
2669  <a name="rfc.section.5.3.7"></a><h4><a name="GET MIDI_INPUT_DEVICES">5.3.7</a>&nbsp;Getting all created MIDI input device count</h4>  </p>
2670    <a name="GET MIDI_INPUT_DEVICES"></a><br /><hr />
2671    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2672    <a name="rfc.section.6.3.7"></a><h3>6.3.7.&nbsp;Getting all created MIDI input device count</h3>
2673    
2674  <p>Use the following command to count all created MIDI input devices:  <p>Use the following command to count all created MIDI input devices:
2675  </p>  </p>
2676  <p></p>  <p>
2677                            </p>
2678  <blockquote class="text">  <blockquote class="text">
2679  <p>GET MIDI_INPUT_DEVICES  <p>GET MIDI_INPUT_DEVICES
2680  </p>  </p>
2681  </blockquote>  </blockquote><p>
2682                        
2683    </p>
2684  <p>Possible Answers:  <p>Possible Answers:
2685  </p>  </p>
2686  <p></p>  <p>
2687                            </p>
2688  <blockquote class="text">  <blockquote class="text">
2689  <p>LinuxSampler will answer by sending the current number of all  <p>LinuxSampler will answer by sending the current number of all
2690                              MIDI input devices.                              MIDI input devices.
2691  </p>  </p>
2692  </blockquote>  </blockquote><p>
2693                        
2694    </p>
2695  <p>Example:  <p>Example:
2696  </p>  </p>
2697  <p></p>  <p>
2698                            </p>
2699  <blockquote class="text">  <blockquote class="text">
2700  <p>C: "GET MIDI_INPUT_DEVICES"  <p>C: "GET MIDI_INPUT_DEVICES"
2701  </p>  </p>
2702  <p>S: "3"  <p>S: "3"
2703  </p>  </p>
2704  </blockquote>  </blockquote><p>
2705                        
2706  <a name="rfc.section.5.3.8"></a><h4><a name="LIST MIDI_INPUT_DEVICES">5.3.8</a>&nbsp;Getting all created MIDI input device list</h4>  </p>
2707    <a name="LIST MIDI_INPUT_DEVICES"></a><br /><hr />
2708    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2709    <a name="rfc.section.6.3.8"></a><h3>6.3.8.&nbsp;Getting all created MIDI input device list</h3>
2710    
2711  <p>Use the following command to list all created MIDI input devices:  <p>Use the following command to list all created MIDI input devices:
2712  </p>  </p>
2713  <p></p>  <p>
2714                            </p>
2715  <blockquote class="text">  <blockquote class="text">
2716  <p>LIST MIDI_INPUT_DEVICES  <p>LIST MIDI_INPUT_DEVICES
2717  </p>  </p>
2718  </blockquote>  </blockquote><p>
2719                        
2720    </p>
2721  <p>Possible Answers:  <p>Possible Answers:
2722  </p>  </p>
2723  <p></p>  <p>
2724                            </p>
2725  <blockquote class="text">  <blockquote class="text">
2726  <p>LinuxSampler will answer by sending a comma separated list  <p>LinuxSampler will answer by sending a comma separated list
2727                              with the numerical Ids of all created MIDI input devices.                              with the numerical Ids of all created MIDI input devices.
2728  </p>  </p>
2729  </blockquote>  </blockquote><p>
2730                        
2731    </p>
2732  <p>Examples:  <p>Examples:
2733  </p>  </p>
2734  <p></p>  <p>
2735                            </p>
2736  <blockquote class="text">  <blockquote class="text">
2737  <p>C: "LIST MIDI_INPUT_DEVICES"  <p>C: "LIST MIDI_INPUT_DEVICES"
2738  </p>  </p>
2739  <p>S: "0,1,2"  <p>S: "0,1,2"
2740  </p>  </p>
2741  </blockquote>  </blockquote><p>
2742                        
2743  <p></p>  </p>
2744    <p>
2745                            </p>
2746  <blockquote class="text">  <blockquote class="text">
2747  <p>C: "LIST MIDI_INPUT_DEVICES"  <p>C: "LIST MIDI_INPUT_DEVICES"
2748  </p>  </p>
2749  <p>S: "1,3"  <p>S: "1,3"
2750  </p>  </p>
2751  </blockquote>  </blockquote><p>
2752                        
2753  <a name="rfc.section.5.3.9"></a><h4><a name="GET MIDI_INPUT_DEVICE INFO">5.3.9</a>&nbsp;Getting current settings of a MIDI input device</h4>  </p>
2754    <a name="GET MIDI_INPUT_DEVICE INFO"></a><br /><hr />
2755    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2756    <a name="rfc.section.6.3.9"></a><h3>6.3.9.&nbsp;Getting current settings of a MIDI input device</h3>
2757    
2758  <p>Use the following command to get current settings of a specific, created MIDI input device:  <p>Use the following command to get current settings of a specific, created MIDI input device:
2759  </p>  </p>
2760  <p></p>  <p>
2761                            </p>
2762  <blockquote class="text">  <blockquote class="text">
2763  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;
2764  </p>  </p>
2765  </blockquote>  </blockquote><p>
2766                        
2767  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device.  </p>
2768    <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the
2769                        <a class="info" href="#CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a>
2770                        or <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span> (</span><span class="info">Getting all created MIDI input device list</span><span>)</span></a>
2771                        command.
2772  </p>  </p>
2773  <p>Possible Answers:  <p>Possible Answers:
2774  </p>  </p>
2775  <p></p>  <p>
2776                            </p>
2777  <blockquote class="text">  <blockquote class="text">
2778  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2779                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 2358  Intellectual Property and Copyright Stat Line 2783  Intellectual Property and Copyright Stat
2783                              encapsulated into apostrophes ('). At the moment the following                              encapsulated into apostrophes ('). At the moment the following
2784                              information categories are defined (independent of driver):                              information categories are defined (independent of driver):
2785  </p>  </p>
2786  <p></p>  <p>
2787                                    </p>
2788  <blockquote class="text">  <blockquote class="text">
2789  <p>DRIVER -  <p>DRIVER -
2790                                          </p>                                          </p>
2791  <blockquote class="text">  <blockquote class="text">
2792  <p>identifier of the used MIDI input driver, as e.g.  <p>identifier of the used MIDI input driver, as e.g.
2793                                              returned by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span>Getting all available MIDI input drivers</span></a>                                              returned by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span> (</span><span class="info">Getting all available MIDI input drivers</span><span>)</span></a>
2794                                              command                                              command
2795  </p>  </p>
2796  </blockquote>  </blockquote>
2797                                        
2798    
2799  </blockquote>  </blockquote>
2800                                    
2801  <blockquote class="text">  <blockquote class="text">
2802  <p><p>ACTIVE -  <p>ACTIVE -
2803                                          </p>                                          </p>
2804  <blockquote class="text">  <blockquote class="text">
2805  <p>either true or false, if false then the MIDI device is  <p>either true or false, if false then the MIDI device is
# Line 2380  Intellectual Property and Copyright Stat Line 2808  Intellectual Property and Copyright Stat
2808                                              channels                                              channels
2809  </p>  </p>
2810  </blockquote>  </blockquote>
2811                                        
2812    
2813  </blockquote>  </blockquote>
2814                                
2815    
2816  </blockquote>  </blockquote><p>
2817                        
2818    </p>
2819  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
2820                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
2821                      returned by all MIDI input devices. Every MIDI input driver                      returned by all MIDI input devices. Every MIDI input driver
2822                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
2823                      <a class="info" href="#GET MIDI_INPUT_DRIVER INFO">"GET MIDI_INPUT_DRIVER INFO"<span>Getting information about a specific MIDI input driver</span></a> command) which are also returned                      <a class="info" href="#GET MIDI_INPUT_DRIVER INFO">"GET MIDI_INPUT_DRIVER INFO"<span> (</span><span class="info">Getting information about a specific MIDI input driver</span><span>)</span></a> command) which are also returned
2824                      by this command.                      by this command.
2825  </p>  </p>
2826  <p>Example:  <p>Example:
2827  </p>  </p>
2828  <p></p>  <p>
2829                            </p>
2830  <blockquote class="text">  <blockquote class="text">
2831  <p>C: "GET MIDI_INPUT_DEVICE INFO 0"  <p>C: "GET MIDI_INPUT_DEVICE INFO 0"
2832  </p>  </p>
# Line 2404  Intellectual Property and Copyright Stat Line 2836  Intellectual Property and Copyright Stat
2836  </p>  </p>
2837  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2838  </p>  </p>
2839  </blockquote>  </blockquote><p>
2840                        
2841  <a name="rfc.section.5.3.10"></a><h4><a name="SET MIDI_INPUT_DEVICE_PARAMETER">5.3.10</a>&nbsp;Changing settings of MIDI input devices</h4>  </p>
2842    <a name="SET MIDI_INPUT_DEVICE_PARAMETER"></a><br /><hr />
2843    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2844    <a name="rfc.section.6.3.10"></a><h3>6.3.10.&nbsp;Changing settings of MIDI input devices</h3>
2845    
2846  <p>Use the following command to alter a specific setting of a created MIDI input device:  <p>Use the following command to alter a specific setting of a created MIDI input device:
2847  </p>  </p>
2848  <p></p>  <p>
2849                            </p>
2850  <blockquote class="text">  <blockquote class="text">
2851  <p>SET MIDI_INPUT_DEVICE_PARAMETER &lt;device-id&gt; &lt;key&gt;=&lt;value&gt;  <p>SET MIDI_INPUT_DEVICE_PARAMETER &lt;device-id&gt; &lt;key&gt;=&lt;value&gt;
2852  </p>  </p>
2853  </blockquote>  </blockquote><p>
2854                        
2855    </p>
2856  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the
2857                      MIDI input device, &lt;key&gt; by the name of the parameter to change and                      MIDI input device as returned by the
2858                        <a class="info" href="#CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a>
2859                        or <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span> (</span><span class="info">Getting all created MIDI input device list</span><span>)</span></a>
2860                        command, &lt;key&gt; by the name of the parameter to change and
2861                      &lt;value&gt; by the new value for this parameter.                      &lt;value&gt; by the new value for this parameter.
2862  </p>  </p>
2863  <p>Possible Answers:  <p>Possible Answers:
2864  </p>  </p>
2865  <p></p>  <p>
2866                            </p>
2867  <blockquote class="text">  <blockquote class="text">
2868  <p>"OK" -  <p>"OK" -
2869                                  </p>                                  </p>
# Line 2430  Intellectual Property and Copyright Stat Line 2871  Intellectual Property and Copyright Stat
2871  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2872  </p>  </p>
2873  </blockquote>  </blockquote>
2874                                
2875    
2876  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2877                                  </p>                                  </p>
# Line 2439  Intellectual Property and Copyright Stat Line 2881  Intellectual Property and Copyright Stat
2881                                      warning code and warning message                                      warning code and warning message
2882  </p>  </p>
2883  </blockquote>  </blockquote>
2884                                
2885    
2886  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2887                                  </p>                                  </p>
# Line 2446  Intellectual Property and Copyright Stat Line 2889  Intellectual Property and Copyright Stat
2889  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
2890  </p>  </p>
2891  </blockquote>  </blockquote>
2892                                
2893    
2894  </blockquote>  </blockquote><p>
2895                        
2896    </p>
2897  <p>Example:  <p>Example:
2898  </p>  </p>
2899  <p></p>  <p>
2900                            </p>
2901  <blockquote class="text">  <blockquote class="text">
2902  <p>C: "SET MIDI_INPUT_DEVICE_PARAMETER 0 ACTIVE=false"  <p>C: "SET MIDI_INPUT_DEVICE_PARAMETER 0 ACTIVE=false"
2903  </p>  </p>
2904  <p>S: "OK"  <p>S: "OK"
2905  </p>  </p>
2906  </blockquote>  </blockquote><p>
2907                        
2908  <a name="rfc.section.5.3.11"></a><h4><a name="GET MIDI_INPUT_PORT INFO">5.3.11</a>&nbsp;Getting information about a MIDI port</h4>  </p>
2909    <a name="GET MIDI_INPUT_PORT INFO"></a><br /><hr />
2910    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2911    <a name="rfc.section.6.3.11"></a><h3>6.3.11.&nbsp;Getting information about a MIDI port</h3>
2912    
2913  <p>Use the following command to get information about a MIDI port:  <p>Use the following command to get information about a MIDI port:
2914  </p>  </p>
2915  <p></p>  <p>
2916                            </p>
2917  <blockquote class="text">  <blockquote class="text">
2918  <p>GET MIDI_INPUT_PORT INFO &lt;device-id&gt; &lt;midi-port&gt;  <p>GET MIDI_INPUT_PORT INFO &lt;device-id&gt; &lt;midi-port&gt;
2919  </p>  </p>
2920  </blockquote>  </blockquote><p>
2921                        
2922  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device  </p>
2923                      and &lt;midi-port&gt; the MIDI input port number.  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the
2924                        <a class="info" href="#CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a>
2925                        or <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span> (</span><span class="info">Getting all created MIDI input device list</span><span>)</span></a>
2926                        command and &lt;midi-port&gt; the MIDI input port number.
2927  </p>  </p>
2928  <p>Possible Answers:  <p>Possible Answers:
2929  </p>  </p>
2930  <p></p>  <p>
2931                            </p>
2932  <blockquote class="text">  <blockquote class="text">
2933  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2934                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 2488  Intellectual Property and Copyright Stat Line 2942  Intellectual Property and Copyright Stat
2942  <p>arbitrary character string naming the port  <p>arbitrary character string naming the port
2943  </p>  </p>
2944  </blockquote>  </blockquote>
2945                                
2946    
2947  </blockquote>  </blockquote><p>
2948                        
2949    </p>
2950  <p>The field above is only the one which is returned by all MIDI  <p>The field above is only the one which is returned by all MIDI
2951                      ports regardless of the MIDI driver and port. Every MIDI port                      ports regardless of the MIDI driver and port. Every MIDI port
2952                      might have its own, additional driver and port specific                      might have its own, additional driver and port specific
# Line 2498  Intellectual Property and Copyright Stat Line 2954  Intellectual Property and Copyright Stat
2954  </p>  </p>
2955  <p>Example:  <p>Example:
2956  </p>  </p>
2957  <p></p>  <p>
2958                            </p>
2959  <blockquote class="text">  <blockquote class="text">
2960  <p>C: "GET MIDI_INPUT_PORT INFO 0 0"  <p>C: "GET MIDI_INPUT_PORT INFO 0 0"
2961  </p>  </p>
# Line 2508  Intellectual Property and Copyright Stat Line 2965  Intellectual Property and Copyright Stat
2965  </p>  </p>
2966  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2967  </p>  </p>
2968  </blockquote>  </blockquote><p>
2969                        
2970  <a name="rfc.section.5.3.12"></a><h4><a name="GET MIDI_INPUT_PORT_PARAMETER INFO">5.3.12</a>&nbsp;Getting information about specific MIDI port parameter</h4>  </p>
2971    <a name="GET MIDI_INPUT_PORT_PARAMETER INFO"></a><br /><hr />
2972    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
2973    <a name="rfc.section.6.3.12"></a><h3>6.3.12.&nbsp;Getting information about specific MIDI port parameter</h3>
2974    
2975  <p>Use the following command to get detailed information about specific MIDI port parameter:  <p>Use the following command to get detailed information about specific MIDI port parameter:
2976  </p>  </p>
2977  <p></p>  <p>
2978                            </p>
2979  <blockquote class="text">  <blockquote class="text">
2980  <p>GET MIDI_INPUT_PORT_PARAMETER INFO &lt;dev-id&gt; &lt;port&gt; &lt;param&gt;  <p>GET MIDI_INPUT_PORT_PARAMETER INFO &lt;dev-id&gt; &lt;port&gt; &lt;param&gt;
2981  </p>  </p>
2982  </blockquote>  </blockquote><p>
2983                        
2984  <p>Where &lt;dev-id&gt; is the numerical ID of the MIDI input device as returned  </p>
2985                      by the <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span>Getting all created MIDI input device list</span></a> command, &lt;port&gt; the MIDI port number and  <p>Where &lt;dev-id&gt; is the numerical ID of the MIDI input device as returned by the
2986                        <a class="info" href="#CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a>
2987                        or <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span> (</span><span class="info">Getting all created MIDI input device list</span><span>)</span></a>
2988                        command, &lt;port&gt; the MIDI port number and
2989                      &lt;param&gt; a specific port parameter name for which information should be                      &lt;param&gt; a specific port parameter name for which information should be
2990                      obtained (as returned by the <a class="info" href="#GET MIDI_INPUT_PORT INFO">"GET MIDI_INPUT_PORT INFO"<span>Getting information about a MIDI port</span></a> command).                      obtained (as returned by the <a class="info" href="#GET MIDI_INPUT_PORT INFO">"GET MIDI_INPUT_PORT INFO"<span> (</span><span class="info">Getting information about a MIDI port</span><span>)</span></a> command).
2991  </p>  </p>
2992  <p>Possible Answers:  <p>Possible Answers:
2993  </p>  </p>
2994  <p></p>  <p>
2995                            </p>
2996  <blockquote class="text">  <blockquote class="text">
2997  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2998                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 2547  Intellectual Property and Copyright Stat Line 3012  Intellectual Property and Copyright Stat
3012                                      (always returned)                                      (always returned)
3013  </p>  </p>
3014  </blockquote>  </blockquote>
3015                                
3016    
3017  <p>DESCRIPTION -  <p>DESCRIPTION -
3018                                  </p>                                  </p>
# Line 2555  Intellectual Property and Copyright Stat Line 3021  Intellectual Property and Copyright Stat
3021                                      (always returned)                                      (always returned)
3022  </p>  </p>
3023  </blockquote>  </blockquote>
3024                                
3025    
3026  <p>FIX -  <p>FIX -
3027                                  </p>                                  </p>
# Line 2564  Intellectual Property and Copyright Stat Line 3031  Intellectual Property and Copyright Stat
3031                                      (always returned)                                      (always returned)
3032  </p>  </p>
3033  </blockquote>  </blockquote>
3034                                
3035    
3036  <p>MULTIPLICITY -  <p>MULTIPLICITY -
3037                                  </p>                                  </p>
# Line 2574  Intellectual Property and Copyright Stat Line 3042  Intellectual Property and Copyright Stat
3042                                      (always returned)                                      (always returned)
3043  </p>  </p>
3044  </blockquote>  </blockquote>
3045                                
3046    
3047  <p>RANGE_MIN -  <p>RANGE_MIN -
3048                                  </p>                                  </p>
# Line 2586  Intellectual Property and Copyright Stat Line 3055  Intellectual Property and Copyright Stat
3055                                      parameter)                                      parameter)
3056  </p>  </p>
3057  </blockquote>  </blockquote>
3058                                
3059    
3060  <p>RANGE_MAX -  <p>RANGE_MAX -
3061                                  </p>                                  </p>
# Line 2598  Intellectual Property and Copyright Stat Line 3068  Intellectual Property and Copyright Stat
3068                                      parameter)                                      parameter)
3069  </p>  </p>
3070  </blockquote>  </blockquote>
3071                                
3072    
3073  <p>POSSIBILITIES -  <p>POSSIBILITIES -
3074                                  </p>                                  </p>
# Line 2609  Intellectual Property and Copyright Stat Line 3080  Intellectual Property and Copyright Stat
3080                                      parameter)                                      parameter)
3081  </p>  </p>
3082  </blockquote>  </blockquote>
3083                                
3084    
3085  </blockquote>  </blockquote><p>
3086                        
3087    </p>
3088  <p>The mentioned fields above don't have to be in particular order.  <p>The mentioned fields above don't have to be in particular order.
3089  </p>  </p>
3090  <p>Example:  <p>Example:
3091  </p>  </p>
3092  <p></p>  <p>
3093                            </p>
3094  <blockquote class="text">  <blockquote class="text">
3095  <p>C: "GET MIDI_INPUT_PORT_PARAMETER INFO 0 0 ALSA_SEQ_BINDINGS"  <p>C: "GET MIDI_INPUT_PORT_PARAMETER INFO 0 0 ALSA_SEQ_BINDINGS"
3096  </p>  </p>
# Line 2632  Intellectual Property and Copyright Stat Line 3106  Intellectual Property and Copyright Stat
3106  </p>  </p>
3107  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3108  </p>  </p>
3109  </blockquote>  </blockquote><p>
3110                        
3111  <a name="rfc.section.5.3.13"></a><h4><a name="SET MIDI_INPUT_PORT_PARAMETER">5.3.13</a>&nbsp;Changing settings of MIDI input ports</h4>  </p>
3112    <a name="SET MIDI_INPUT_PORT_PARAMETER"></a><br /><hr />
3113    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3114    <a name="rfc.section.6.3.13"></a><h3>6.3.13.&nbsp;Changing settings of MIDI input ports</h3>
3115    
3116  <p>Use the following command to alter a specific setting of a MIDI input port:  <p>Use the following command to alter a specific setting of a MIDI input port:
3117  </p>  </p>
3118  <p></p>  <p>
3119                            </p>
3120  <blockquote class="text">  <blockquote class="text">
3121  <p>SET MIDI_INPUT_PORT_PARAMETER &lt;device-id&gt; &lt;port&gt; &lt;key&gt;=&lt;value&gt;  <p>SET MIDI_INPUT_PORT_PARAMETER &lt;device-id&gt; &lt;port&gt; &lt;key&gt;=&lt;value&gt;
3122  </p>  </p>
3123  </blockquote>  </blockquote><p>
3124                        
3125    </p>
3126  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the  <p>Where &lt;device-id&gt; should be replaced by the numerical ID of the
3127                      MIDI device, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of                      MIDI device as returned by the
3128                        <a class="info" href="#CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a>
3129                        or <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span> (</span><span class="info">Getting all created MIDI input device list</span><span>)</span></a>
3130                        command, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of
3131                      the parameter to change and &lt;value&gt; by the new value for this                      the parameter to change and &lt;value&gt; by the new value for this
3132                      parameter.                      parameter.
3133  </p>  </p>
3134  <p>Possible Answers:  <p>Possible Answers:
3135  </p>  </p>
3136  <p></p>  <p>
3137                            </p>
3138  <blockquote class="text">  <blockquote class="text">
3139  <p>"OK" -  <p>"OK" -
3140                                  </p>                                  </p>
# Line 2659  Intellectual Property and Copyright Stat Line 3142  Intellectual Property and Copyright Stat
3142  <p>in case setting was successfully changed  <p>in case setting was successfully changed
3143  </p>  </p>
3144  </blockquote>  </blockquote>
3145                                
3146    
3147  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3148                                  </p>                                  </p>
# Line 2668  Intellectual Property and Copyright Stat Line 3152  Intellectual Property and Copyright Stat
3152                                      warning code and warning message                                      warning code and warning message
3153  </p>  </p>
3154  </blockquote>  </blockquote>
3155                                
3156    
3157  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3158                                  </p>                                  </p>
# Line 2675  Intellectual Property and Copyright Stat Line 3160  Intellectual Property and Copyright Stat
3160  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
3161  </p>  </p>
3162  </blockquote>  </blockquote>
3163                                
3164    
3165  </blockquote>  </blockquote><p>
3166                        
3167    </p>
3168  <p>Example:  <p>Example:
3169  </p>  </p>
3170  <p></p>  <p>
3171                            </p>
3172  <blockquote class="text">  <blockquote class="text">
3173  <p>  <p>
3174  </p>  </p>
3175  </blockquote>  </blockquote><p>
3176                        
3177  <a name="rfc.section.5.4"></a><h4><a name="anchor12">5.4</a>&nbsp;Configuring sampler channels</h4>  </p>
3178    <a name="anchor11"></a><br /><hr />
3179    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3180    <a name="rfc.section.6.4"></a><h3>6.4.&nbsp;Configuring sampler channels</h3>
3181    
3182  <p>The following commands describe how to add and remove sampler channels, deploy  <p>The following commands describe how to add and remove sampler channels, associate a
3183                  sampler engines, load instruments and connect sampler channels to MIDI and audio devices.                  sampler channel with a sampler engine, load instruments and connect sampler channels to
3184                    MIDI and audio devices.
3185  </p>  </p>
3186  <a name="rfc.section.5.4.1"></a><h4><a name="LOAD INSTRUMENT">5.4.1</a>&nbsp;Loading an instrument</h4>  <a name="LOAD INSTRUMENT"></a><br /><hr />
3187    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3188    <a name="rfc.section.6.4.1"></a><h3>6.4.1.&nbsp;Loading an instrument</h3>
3189    
3190  <p>An instrument file can be loaded and assigned to a sampler channel by one of the following commands:  <p>An instrument file can be loaded and assigned to a sampler channel by one of the following commands:
3191  </p>  </p>
3192  <p></p>  <p>
3193                            </p>
3194  <blockquote class="text">  <blockquote class="text">
3195  <p>LOAD INSTRUMENT [NON_MODAL] '&lt;filename&gt;' &lt;instr-index&gt; &lt;sampler-channel&gt;  <p>LOAD INSTRUMENT [NON_MODAL] '&lt;filename&gt;' &lt;instr-index&gt; &lt;sampler-channel&gt;
3196  </p>  </p>
3197  </blockquote>  </blockquote><p>
3198                        
3199    </p>
3200  <p>Where &lt;filename&gt; is the name of the instrument file on the  <p>Where &lt;filename&gt; is the name of the instrument file on the
3201                      LinuxSampler instance's host system, &lt;instr-index&gt; the index of the                      LinuxSampler instance's host system, &lt;instr-index&gt; the index of the
3202                      instrument in the instrument file and &lt;sampler-channel> is the                      instrument in the instrument file and &lt;sampler-channel> is the
# Line 2711  Intellectual Property and Copyright Stat Line 3207  Intellectual Property and Copyright Stat
3207                      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
3208                      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
3209                      returns immediately and a background process is launched to load the instrument                      returns immediately and a background process is launched to load the instrument
3210                      on the channel. The <a class="info" href="#GET CHANNEL INFO">GET CHANNEL INFO<span>Getting sampler channel information</span></a>                      on the channel. The <a class="info" href="#GET CHANNEL INFO">GET CHANNEL INFO<span> (</span><span class="info">Getting sampler channel information</span><span>)</span></a>
3211                      command can be used to obtain loading                      command can be used to obtain loading
3212                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks
3213                      such as making sure that the file could be read and it is of a proper format                      such as making sure that the file could be read and it is of a proper format
# Line 2720  Intellectual Property and Copyright Stat Line 3216  Intellectual Property and Copyright Stat
3216  </p>  </p>
3217  <p>Possible Answers:  <p>Possible Answers:
3218  </p>  </p>
3219  <p></p>  <p>
3220                            </p>
3221  <blockquote class="text">  <blockquote class="text">
3222  <p>"OK" -  <p>"OK" -
3223                                  </p>                                  </p>
# Line 2728  Intellectual Property and Copyright Stat Line 3225  Intellectual Property and Copyright Stat
3225  <p>in case the instrument was successfully loaded  <p>in case the instrument was successfully loaded
3226  </p>  </p>
3227  </blockquote>  </blockquote>
3228                                
3229    
3230  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3231                                  </p>                                  </p>
# Line 2739  Intellectual Property and Copyright Stat Line 3237  Intellectual Property and Copyright Stat
3237                                      warning message                                      warning message
3238  </p>  </p>
3239  </blockquote>  </blockquote>
3240                                
3241    
3242  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3243                                  </p>                                  </p>
# Line 2746  Intellectual Property and Copyright Stat Line 3245  Intellectual Property and Copyright Stat
3245  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
3246  </p>  </p>
3247  </blockquote>  </blockquote>
3248                                
3249    
3250  </blockquote>  </blockquote><p>
3251                        
3252    </p>
3253  <p>Example:  <p>Example:
3254  </p>  </p>
3255  <p></p>  <p>
3256                            </p>
3257  <blockquote class="text">  <blockquote class="text">
3258  <p>  <p>
3259  </p>  </p>
3260  </blockquote>  </blockquote><p>
3261                        
3262  <a name="rfc.section.5.4.2"></a><h4><a name="LOAD ENGINE">5.4.2</a>&nbsp;Loading a sampler engine</h4>  </p>
3263    <a name="LOAD ENGINE"></a><br /><hr />
3264    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3265    <a name="rfc.section.6.4.2"></a><h3>6.4.2.&nbsp;Loading a sampler engine</h3>
3266    
3267  <p>A sample engine can be deployed and assigned to a specific sampler  <p>A sampler engine type can be associated to a specific sampler
3268                      channel by the following command:                      channel by the following command:
3269  </p>  </p>
3270  <p></p>  <p>
3271                            </p>
3272  <blockquote class="text">  <blockquote class="text">
3273  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;
3274  </p>  </p>
3275  </blockquote>  </blockquote><p>
3276                        
3277    </p>
3278  <p>Where &lt;engine-name&gt; is an engine name as obtained by the  <p>Where &lt;engine-name&gt; is an engine name as obtained by the
3279                      <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span>Getting all available engines</span></a> command and &lt;sampler-channel&gt; the sampler channel the                      <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span> (</span><span class="info">Getting all available engines</span><span>)</span></a> command and &lt;sampler-channel&gt;
3280                      deployed engine should be assigned to. Even if the respective                      the sampler channel as returned by the
3281                      sampler channel has already a deployed engine with that engine                      <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a> or
3282                      name, a new engine instance will be assigned to the sampler channel.                      <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command where
3283                        the engine type should be assigned to. This command should be issued
3284                        after adding a new sampler channel and before any other control
3285                        commands on the new sampler channel. It can also be used to change
3286                        the engine type of a sampler channel. This command has (currently) no
3287                        way to define or force if a new engine instance should be created and
3288                        assigned to the given sampler channel or if an already existing
3289                        instance of that engine type, shared with other sampler channels,
3290                        should be used.
3291  </p>  </p>
3292  <p>Possible Answers:  <p>Possible Answers:
3293  </p>  </p>
3294  <p></p>  <p>
3295                            </p>
3296  <blockquote class="text">  <blockquote class="text">
3297  <p>"OK" -  <p>"OK" -
3298                                  </p>                                  </p>
# Line 2784  Intellectual Property and Copyright Stat Line 3300  Intellectual Property and Copyright Stat
3300  <p>in case the engine was successfully deployed  <p>in case the engine was successfully deployed
3301  </p>  </p>
3302  </blockquote>  </blockquote>
3303                                
3304    
3305  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3306                                  </p>                                  </p>
# Line 2793  Intellectual Property and Copyright Stat Line 3310  Intellectual Property and Copyright Stat
3310                                      warning code and warning message                                      warning code and warning message
3311  </p>  </p>
3312  </blockquote>  </blockquote>
3313                                
3314    
3315  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3316                                  </p>                                  </p>
# Line 2801  Intellectual Property and Copyright Stat Line 3319  Intellectual Property and Copyright Stat
3319                                      error message                                      error message
3320  </p>  </p>
3321  </blockquote>  </blockquote>
3322                                
3323    
3324  </blockquote>  </blockquote><p>
3325                        
3326    </p>
3327  <p>Example:  <p>Example:
3328  </p>  </p>
3329  <p></p>  <p>
3330                            </p>
3331  <blockquote class="text">  <blockquote class="text">
3332  <p>  <p>
3333  </p>  </p>
3334  </blockquote>  </blockquote><p>
3335                        
3336  <a name="rfc.section.5.4.3"></a><h4><a name="GET CHANNELS">5.4.3</a>&nbsp;Getting all created sampler channel count</h4>  </p>
3337    <a name="GET CHANNELS"></a><br /><hr />
3338    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3339    <a name="rfc.section.6.4.3"></a><h3>6.4.3.&nbsp;Getting all created sampler channel count</h3>
3340    
3341  <p>The number of sampler channels can change on runtime. To get the  <p>The number of sampler channels can change on runtime. To get the
3342                      current amount of sampler channels, the front-end can send the                      current amount of sampler channels, the front-end can send the
3343                      following command:                      following command:
3344  </p>  </p>
3345  <p></p>  <p>
3346                            </p>
3347  <blockquote class="text">  <blockquote class="text">
3348  <p>GET CHANNELS  <p>GET CHANNELS
3349  </p>  </p>
3350  </blockquote>  </blockquote><p>
3351                        
3352    </p>
3353  <p>Possible Answers:  <p>Possible Answers:
3354  </p>  </p>
3355  <p></p>  <p>
3356                            </p>
3357  <blockquote class="text">  <blockquote class="text">
3358  <p>LinuxSampler will answer by returning the current number of sampler channels.  <p>LinuxSampler will answer by returning the current number of sampler channels.
3359  </p>  </p>
3360  </blockquote>  </blockquote><p>
3361                        
3362    </p>
3363  <p>Example:  <p>Example:
3364  </p>  </p>
3365  <p></p>  <p>
3366                            </p>
3367  <blockquote class="text">  <blockquote class="text">
3368  <p>C: "GET CHANNELS"  <p>C: "GET CHANNELS"
3369  </p>  </p>
3370  <p>S: "12"  <p>S: "12"
3371  </p>  </p>
3372  </blockquote>  </blockquote><p>
3373                        
3374  <a name="rfc.section.5.4.4"></a><h4><a name="LIST CHANNELS">5.4.4</a>&nbsp;Getting all created sampler channel list</h4>  </p>
3375    <a name="LIST CHANNELS"></a><br /><hr />
3376    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3377    <a name="rfc.section.6.4.4"></a><h3>6.4.4.&nbsp;Getting all created sampler channel list</h3>
3378    
3379  <p>The number of sampler channels can change on runtime. To get the  <p>The number of sampler channels can change on runtime. To get the
3380                      current list of sampler channels, the front-end can send the                      current list of sampler channels, the front-end can send the
3381                      following command:                      following command:
3382  </p>  </p>
3383  <p></p>  <p>
3384                            </p>
3385  <blockquote class="text">  <blockquote class="text">
3386  <p>LIST CHANNELS  <p>LIST CHANNELS
3387  </p>  </p>
3388  </blockquote>  </blockquote><p>
3389                        
3390    </p>
3391  <p>Possible Answers:  <p>Possible Answers:
3392  </p>  </p>
3393  <p></p>  <p>
3394                            </p>
3395  <blockquote class="text">  <blockquote class="text">
3396  <p>LinuxSampler will answer by returning a comma separated list  <p>LinuxSampler will answer by returning a comma separated list
3397                              with all sampler channels numerical IDs.                              with all sampler channels numerical IDs.
3398  </p>  </p>
3399  </blockquote>  </blockquote><p>
3400                        
3401    </p>
3402  <p>Example:  <p>Example:
3403  </p>  </p>
3404  <p></p>  <p>
3405                            </p>
3406  <blockquote class="text">  <blockquote class="text">
3407  <p>C: "LIST CHANNELS"  <p>C: "LIST CHANNELS"
3408  </p>  </p>
3409  <p>S: "0,1,2,3,4,5,6,9,10,11,15,20"  <p>S: "0,1,2,3,4,5,6,9,10,11,15,20"
3410  </p>  </p>
3411  </blockquote>  </blockquote><p>
3412                        
3413  <a name="rfc.section.5.4.5"></a><h4><a name="ADD CHANNEL">5.4.5</a>&nbsp;Adding a new sampler channel</h4>  </p>
3414    <a name="ADD CHANNEL"></a><br /><hr />
3415    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3416    <a name="rfc.section.6.4.5"></a><h3>6.4.5.&nbsp;Adding a new sampler channel</h3>
3417    
3418  <p>A new sampler channel can be added to the end of the sampler  <p>A new sampler channel can be added to the end of the sampler
3419                      channel list by sending the following command:                      channel list by sending the following command:
3420  </p>  </p>
3421  <p></p>  <p>
3422                            </p>
3423  <blockquote class="text">  <blockquote class="text">
3424  <p>ADD CHANNEL  <p>ADD CHANNEL
3425  </p>  </p>
3426  </blockquote>  </blockquote><p>
3427                        
3428    </p>
3429  <p>This will increment the sampler channel count by one and the new  <p>This will increment the sampler channel count by one and the new
3430                      sampler channel will be appended to the end of the sampler channel                      sampler channel will be appended to the end of the sampler channel
3431                      list. The front-end should send the respective, related commands                      list. The front-end should send the respective, related commands
# Line 2896  Intellectual Property and Copyright Stat Line 3438  Intellectual Property and Copyright Stat
3438  </p>  </p>
3439  <p>Possible Answers:  <p>Possible Answers:
3440  </p>  </p>
3441  <p></p>  <p>
3442                            </p>
3443  <blockquote class="text">  <blockquote class="text">
3444  <p>"OK[&lt;sampler-channel&gt;]" -  <p>"OK[&lt;sampler-channel&gt;]" -
3445                                  </p>                                  </p>
3446  <blockquote class="text">  <blockquote class="text">
3447  <p>in case a new sampler channel could be added, where  <p>in case a new sampler channel could be added, where
3448                                      &lt;sampler-channel&gt; reflects the channel number of the new                                      &lt;sampler-channel&gt; reflects the channel number of the new
3449                                      created sampler channel which should the be used to set up                                      created sampler channel which should be used to set up
3450                                      the sampler channel by sending subsequent intialization                                      the sampler channel by sending subsequent initialization
3451                                      commands                                      commands
3452  </p>  </p>
3453  </blockquote>  </blockquote>
3454                                
3455    
3456  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3457                                  </p>                                  </p>
# Line 2917  Intellectual Property and Copyright Stat Line 3461  Intellectual Property and Copyright Stat
3461                                      warning code and warning message                                      warning code and warning message
3462  </p>  </p>
3463  </blockquote>  </blockquote>
3464                                
3465    
3466  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3467                                  </p>                                  </p>
# Line 2925  Intellectual Property and Copyright Stat Line 3470  Intellectual Property and Copyright Stat
3470                                      error message                                      error message
3471  </p>  </p>
3472  </blockquote>  </blockquote>
3473                                
3474    
3475  </blockquote>  </blockquote><p>
3476                        
3477    </p>
3478  <p>Example:  <p>Example:
3479  </p>  </p>
3480  <p></p>  <p>
3481                            </p>
3482  <blockquote class="text">  <blockquote class="text">
3483  <p>  <p>
3484  </p>  </p>
3485  </blockquote>  </blockquote><p>
3486                        
3487  <a name="rfc.section.5.4.6"></a><h4><a name="REMOVE CHANNEL">5.4.6</a>&nbsp;Removing a sampler channel</h4>  </p>
3488    <a name="REMOVE CHANNEL"></a><br /><hr />
3489    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3490    <a name="rfc.section.6.4.6"></a><h3>6.4.6.&nbsp;Removing a sampler channel</h3>
3491    
3492  <p>A sampler channel can be removed by sending the following command:  <p>A sampler channel can be removed by sending the following command:
3493  </p>  </p>
3494  <p></p>  <p>
3495                            </p>
3496  <blockquote class="text">  <blockquote class="text">
3497  <p>REMOVE CHANNEL &lt;sampler-channel&gt;  <p>REMOVE CHANNEL &lt;sampler-channel&gt;
3498  </p>  </p>
3499  </blockquote>  </blockquote><p>
3500                        
3501  <p>This will decrement the sampler channel count by one and also  </p>
3502                      decrement the channel numbers of all subsequent sampler channels by  <p>Where &lt;sampler-channel&gt; should be replaced by the
3503                      one.                      number of the sampler channel as given by the
3504                        <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
3505                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a>
3506                        command. The channel numbers of all subsequent sampler channels
3507                        remain the same.
3508  </p>  </p>
3509  <p>Possible Answers:  <p>Possible Answers:
3510  </p>  </p>
3511  <p></p>  <p>
3512                            </p>
3513  <blockquote class="text">  <blockquote class="text">
3514  <p>"OK" -  <p>"OK" -
3515                                  </p>                                  </p>
# Line 2960  Intellectual Property and Copyright Stat Line 3517  Intellectual Property and Copyright Stat
3517  <p>in case the given sampler channel could be removed  <p>in case the given sampler channel could be removed
3518  </p>  </p>
3519  </blockquote>  </blockquote>
3520                                
3521    
3522  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3523                                  </p>                                  </p>
# Line 2969  Intellectual Property and Copyright Stat Line 3527  Intellectual Property and Copyright Stat
3527                                      warning code and warning message                                      warning code and warning message
3528  </p>  </p>
3529  </blockquote>  </blockquote>
3530                                
3531    
3532  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3533                                  </p>                                  </p>
# Line 2977  Intellectual Property and Copyright Stat Line 3536  Intellectual Property and Copyright Stat
3536                                      error message                                      error message
3537  </p>  </p>
3538  </blockquote>  </blockquote>
3539                                
3540    
3541  </blockquote>  </blockquote><p>
3542                        
3543    </p>
3544  <p>Example:  <p>Example:
3545  </p>  </p>
3546  <p></p>  <p>
3547                            </p>
3548  <blockquote class="text">  <blockquote class="text">
3549  <p>  <p>
3550  </p>  </p>
3551  </blockquote>  </blockquote><p>
3552                        
3553  <a name="rfc.section.5.4.7"></a><h4><a name="GET AVAILABLE_ENGINES">5.4.7</a>&nbsp;Getting amount of available engines</h4>  </p>
3554    <a name="GET AVAILABLE_ENGINES"></a><br /><hr />
3555    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3556    <a name="rfc.section.6.4.7"></a><h3>6.4.7.&nbsp;Getting amount of available engines</h3>
3557    
3558  <p>The front-end can ask for the number of available engines by sending the following command:  <p>The front-end can ask for the number of available engines by sending the following command:
3559  </p>  </p>
3560  <p></p>  <p>
3561                            </p>
3562  <blockquote class="text">  <blockquote class="text">
3563  <p>GET AVAILABLE_ENGINES  <p>GET AVAILABLE_ENGINES
3564  </p>  </p>
3565  </blockquote>  </blockquote><p>
3566                        
3567    </p>
3568  <p>Possible Answers:  <p>Possible Answers:
3569  </p>  </p>
3570  <p></p>  <p>
3571                            </p>
3572  <blockquote class="text">  <blockquote class="text">
3573  <p>LinuxSampler will answer by sending the number of available engines.  <p>LinuxSampler will answer by sending the number of available engines.
3574  </p>  </p>
3575  </blockquote>  </blockquote><p>
3576                        
3577    </p>
3578  <p>Example:  <p>Example:
3579  </p>  </p>
3580  <p></p>  <p>
3581                            </p>
3582  <blockquote class="text">  <blockquote class="text">
3583  <p>C: "GET AVAILABLE_ENGINES"  <p>C: "GET AVAILABLE_ENGINES"
3584  </p>  </p>
3585  <p>S: "4"  <p>S: "4"
3586  </p>  </p>
3587  </blockquote>  </blockquote><p>
3588                        
3589  <a name="rfc.section.5.4.8"></a><h4><a name="LIST AVAILABLE_ENGINES">5.4.8</a>&nbsp;Getting all available engines</h4>  </p>
3590    <a name="LIST AVAILABLE_ENGINES"></a><br /><hr />
3591    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3592    <a name="rfc.section.6.4.8"></a><h3>6.4.8.&nbsp;Getting all available engines</h3>
3593    
3594  <p>The front-end can ask for a list of all available engines by sending the following command:  <p>The front-end can ask for a list of all available engines by sending the following command:
3595  </p>  </p>
3596  <p></p>  <p>
3597                            </p>
3598  <blockquote class="text">  <blockquote class="text">
3599  <p>LIST AVAILABLE_ENGINES  <p>LIST AVAILABLE_ENGINES
3600  </p>  </p>
3601  </blockquote>  </blockquote><p>
3602                        
3603    </p>
3604  <p>Possible Answers:  <p>Possible Answers:
3605  </p>  </p>
3606  <p></p>  <p>
3607                            </p>
3608  <blockquote class="text">  <blockquote class="text">
3609  <p>LinuxSampler will answer by sending a comma separated character  <p>LinuxSampler will answer by sending a comma separated list
3610                              string of the engines' names. Engine names can consist of lower and                              of the engines' names encapsulated into apostrophes (').
3611                              upper cases, digits and underlines ("_" character).                              Engine names can consist of lower and upper cases,
3612                                digits and underlines ("_" character).
3613    </p>
3614    </blockquote><p>
3615                        
3616  </p>  </p>
 </blockquote>  
   
3617  <p>Example:  <p>Example:
3618  </p>  </p>
3619  <p></p>  <p>
3620                            </p>
3621  <blockquote class="text">  <blockquote class="text">
3622  <p>C: "LIST AVAILABLE_ENGINES"  <p>C: "LIST AVAILABLE_ENGINES"
3623  </p>  </p>
3624  <p>S: "GigEngine,AkaiEngine,DLSEngine,JoesCustomEngine"  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"
3625  </p>  </p>
3626  </blockquote>  </blockquote><p>
3627                        
3628  <a name="rfc.section.5.4.9"></a><h4><a name="GET ENGINE INFO">5.4.9</a>&nbsp;Getting information about an engine</h4>  </p>
3629    <a name="GET ENGINE INFO"></a><br /><hr />
3630    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3631    <a name="rfc.section.6.4.9"></a><h3>6.4.9.&nbsp;Getting information about an engine</h3>
3632    
3633  <p>The front-end can ask for information about a specific engine by  <p>The front-end can ask for information about a specific engine by
3634                      sending the following command:                      sending the following command:
3635  </p>  </p>
3636  <p></p>  <p>
3637                            </p>
3638  <blockquote class="text">  <blockquote class="text">
3639  <p>GET ENGINE INFO &lt;engine-name&gt;  <p>GET ENGINE INFO &lt;engine-name&gt;
3640  </p>  </p>
3641  </blockquote>  </blockquote><p>
3642                        
3643    </p>
3644  <p>Where &lt;engine-name&gt; is an engine name as obtained by the  <p>Where &lt;engine-name&gt; is an engine name as obtained by the
3645                      <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span>Getting all available engines</span></a> command.                      <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span> (</span><span class="info">Getting all available engines</span><span>)</span></a> command.
3646  </p>  </p>
3647  <p>Possible Answers:  <p>Possible Answers:
3648  </p>  </p>
3649  <p></p>  <p>
3650                            </p>
3651  <blockquote class="text">  <blockquote class="text">
3652  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3653                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 3070  Intellectual Property and Copyright Stat Line 3655  Intellectual Property and Copyright Stat
3655                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
3656                              the following categories are defined:                              the following categories are defined:
3657  </p>  </p>
3658  <p></p>  <p>
3659                                    </p>
3660  <blockquote class="text">  <blockquote class="text">
3661  <p>DESCRIPTION -  <p>DESCRIPTION -
3662                                          </p>                                          </p>
# Line 3078  Intellectual Property and Copyright Stat Line 3664  Intellectual Property and Copyright Stat
3664  <p>arbitrary description text about the engine  <p>arbitrary description text about the engine
3665  </p>  </p>
3666  </blockquote>  </blockquote>
3667                                        
3668    
3669  <p>VERSION -  <p>VERSION -
3670                                          </p>                                          </p>
# Line 3085  Intellectual Property and Copyright Stat Line 3672  Intellectual Property and Copyright Stat
3672  <p>arbitrary character string regarding the engine's version  <p>arbitrary character string regarding the engine's version
3673  </p>  </p>
3674  </blockquote>  </blockquote>
3675                                        
3676    
3677  </blockquote>  </blockquote>
3678                                
3679    
3680  </blockquote>  </blockquote><p>
3681                        
3682    </p>
3683  <p>The mentioned fields above don't have to be in particular order.  <p>The mentioned fields above don't have to be in particular order.
3684  </p>  </p>
3685  <p>Example:  <p>Example:
3686  </p>  </p>
3687  <p></p>  <p>
3688                            </p>
3689  <blockquote class="text">  <blockquote class="text">
3690  <p>C: "GET ENGINE INFO JoesCustomEngine"  <p>C: "GET ENGINE INFO JoesCustomEngine"
3691  </p>  </p>
# Line 3104  Intellectual Property and Copyright Stat Line 3695  Intellectual Property and Copyright Stat
3695  </p>  </p>
3696  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3697  </p>  </p>
3698  </blockquote>  </blockquote><p>
3699                        
3700  <a name="rfc.section.5.4.10"></a><h4><a name="GET CHANNEL INFO">5.4.10</a>&nbsp;Getting sampler channel information</h4>  </p>
3701    <a name="GET CHANNEL INFO"></a><br /><hr />
3702    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3703    <a name="rfc.section.6.4.10"></a><h3>6.4.10.&nbsp;Getting sampler channel information</h3>
3704    
3705  <p>The front-end can ask for the current settings of a sampler channel  <p>The front-end can ask for the current settings of a sampler channel
3706                      by sending the following command:                      by sending the following command:
3707  </p>  </p>
3708  <p></p>  <p>
3709                            </p>
3710  <blockquote class="text">  <blockquote class="text">
3711  <p>GET CHANNEL INFO &lt;sampler-channel&gt;  <p>GET CHANNEL INFO &lt;sampler-channel&gt;
3712  </p>  </p>
3713  </blockquote>  </blockquote><p>
3714                        
3715  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
3716    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
3717                        as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
3718                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command.
3719  </p>  </p>
3720  <p>Possible Answers:  <p>Possible Answers:
3721  </p>  </p>
3722  <p></p>  <p>
3723                            </p>
3724  <blockquote class="text">  <blockquote class="text">
3725  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3726                              Each answer line begins with the settings category name                              Each answer line begins with the settings category name
# Line 3129  Intellectual Property and Copyright Stat Line 3728  Intellectual Property and Copyright Stat
3728                              the info character string to that setting category. At the                              the info character string to that setting category. At the
3729                              moment the following categories are defined:                              moment the following categories are defined:
3730  </p>  </p>
3731  <p></p>  <p>
3732                                    </p>
3733  <blockquote class="text">  <blockquote class="text">
3734  <p>ENGINE_NAME -  <p>ENGINE_NAME -
3735                                          </p>                                          </p>
3736  <blockquote class="text">  <blockquote class="text">
3737  <p>name of the engine that is deployed on the sampler  <p>name of the engine that is associated with the sampler
3738                                              channel, "NONE" if there's no engine deployed yet for                                              channel, "NONE" if there's no engine associated yet for
3739                                              this sampler channel                                              this sampler channel
3740  </p>  </p>
3741  </blockquote>  </blockquote>
3742                                        
3743    
3744  <p>AUDIO_OUTPUT_DEVICE -  <p>AUDIO_OUTPUT_DEVICE -
3745                                          </p>                                          </p>
# Line 3149  Intellectual Property and Copyright Stat Line 3750  Intellectual Property and Copyright Stat
3750                                              connected to this sampler channel                                              connected to this sampler channel
3751  </p>  </p>
3752  </blockquote>  </blockquote>
3753                                        
3754    
3755  <p>AUDIO_OUTPUT_CHANNELS -  <p>AUDIO_OUTPUT_CHANNELS -
3756                                          </p>                                          </p>
# Line 3157  Intellectual Property and Copyright Stat Line 3759  Intellectual Property and Copyright Stat
3759                                              (dependent to used sampler engine and loaded instrument)                                              (dependent to used sampler engine and loaded instrument)
3760  </p>  </p>
3761  </blockquote>  </blockquote>
3762                                        
3763    
3764  <p>AUDIO_OUTPUT_ROUTING -  <p>AUDIO_OUTPUT_ROUTING -
3765                                          </p>                                          </p>
# Line 3170  Intellectual Property and Copyright Stat Line 3773  Intellectual Property and Copyright Stat
3773                                              output device                                              output device
3774  </p>  </p>
3775  </blockquote>  </blockquote>
3776                                        
3777    
3778  <p>INSTRUMENT_FILE -  <p>INSTRUMENT_FILE -
3779                                          </p>                                          </p>
# Line 3179  Intellectual Property and Copyright Stat Line 3783  Intellectual Property and Copyright Stat
3783                                              channel                                              channel
3784  </p>  </p>
3785  </blockquote>  </blockquote>
3786                                        
3787    
3788  <p>INSTRUMENT_NR -  <p>INSTRUMENT_NR -
3789                                          </p>                                          </p>
# Line 3186  Intellectual Property and Copyright Stat Line 3791  Intellectual Property and Copyright Stat
3791  <p>the instrument index number of the loaded instrument  <p>the instrument index number of the loaded instrument
3792  </p>  </p>
3793  </blockquote>  </blockquote>
3794                                        
3795    
3796  <p>INSTRUMENT_NAME -  <p>INSTRUMENT_NAME -
3797                                          </p>                                          </p>
# Line 3193  Intellectual Property and Copyright Stat Line 3799  Intellectual Property and Copyright Stat
3799  <p>the instrument name of the loaded instrument  <p>the instrument name of the loaded instrument
3800  </p>  </p>
3801  </blockquote>  </blockquote>
3802                                        
3803    
3804  <p>INSTRUMENT_STATUS -  <p>INSTRUMENT_STATUS -
3805                                          </p>                                          </p>
# Line 3202  Intellectual Property and Copyright Stat Line 3809  Intellectual Property and Copyright Stat
3809                                              loaded.                                              loaded.
3810  </p>  </p>
3811  </blockquote>  </blockquote>
3812                                        
3813    
3814  <p>MIDI_INPUT_DEVICE -  <p>MIDI_INPUT_DEVICE -
3815                                          </p>                                          </p>
# Line 3212  Intellectual Property and Copyright Stat Line 3820  Intellectual Property and Copyright Stat
3820                                              connected to this sampler channel                                              connected to this sampler channel
3821  </p>  </p>
3822  </blockquote>  </blockquote>
3823                                        
3824    
3825  <p>MIDI_INPUT_PORT -  <p>MIDI_INPUT_PORT -
3826                                          </p>                                          </p>
# Line 3219  Intellectual Property and Copyright Stat Line 3828  Intellectual Property and Copyright Stat
3828  <p>port number of the MIDI input device  <p>port number of the MIDI input device
3829  </p>  </p>
3830  </blockquote>  </blockquote>
3831                                        
3832    
3833  <p>MIDI_INPUT_CHANNEL -  <p>MIDI_INPUT_CHANNEL -
3834                                          </p>                                          </p>
# Line 3227  Intellectual Property and Copyright Stat Line 3837  Intellectual Property and Copyright Stat
3837                                              should listen to or "ALL" to listen on all MIDI channels                                              should listen to or "ALL" to listen on all MIDI channels
3838  </p>  </p>
3839  </blockquote>  </blockquote>
3840                                        
3841    
3842  <p>VOLUME -  <p>VOLUME -
3843                                          </p>                                          </p>
# Line 3236  Intellectual Property and Copyright Stat Line 3847  Intellectual Property and Copyright Stat
3847                                              1.0 means amplification)                                              1.0 means amplification)
3848  </p>  </p>
3849  </blockquote>  </blockquote>
3850                                        
3851    
3852    <p>MUTE -
3853                                            </p>
3854    <blockquote class="text">
3855    <p>Determines whether the channel is muted, "true" if the
3856                                                channel is muted, "false" if the channel is not muted, and
3857                                                "MUTED_BY_SOLO" if the channel is muted because of the
3858                                                presence of a solo channel and will be unmuted when
3859                                                there are no solo channels left
3860    </p>
3861  </blockquote>  </blockquote>
3862                                        
3863    
3864    <p>SOLO -
3865                                            </p>
3866    <blockquote class="text">
3867    <p>Determines whether this is a solo channel, "true" if
3868                                                the channel is a solo channel; "false" otherwise
3869    </p>
3870  </blockquote>  </blockquote>
3871                                        
3872    
3873    </blockquote>
3874                                
3875    
3876    </blockquote><p>
3877                        
3878    </p>
3879  <p>The mentioned fields above don't have to be in particular order.  <p>The mentioned fields above don't have to be in particular order.
3880  </p>  </p>
3881  <p>Example:  <p>Example:
3882  </p>  </p>
3883  <p></p>  <p>
3884                            </p>
3885  <blockquote class="text">  <blockquote class="text">
3886  <p>C: "GET CHANNEL INFO 34"  <p>C: "GET CHANNEL INFO 34"
3887  </p>  </p>
# Line 3275  Intellectual Property and Copyright Stat Line 3911  Intellectual Property and Copyright Stat
3911  </p>  </p>
3912  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3913  </p>  </p>
3914  </blockquote>  </blockquote><p>
3915                        
3916  <a name="rfc.section.5.4.11"></a><h4><a name="GET CHANNEL VOICE_COUNT">5.4.11</a>&nbsp;Current number of active voices</h4>  </p>
3917    <a name="GET CHANNEL VOICE_COUNT"></a><br /><hr />
3918    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3919    <a name="rfc.section.6.4.11"></a><h3>6.4.11.&nbsp;Current number of active voices</h3>
3920    
3921  <p>The front-end can ask for the current number of active voices on a  <p>The front-end can ask for the current number of active voices on a
3922                      sampler channel by sending the following command:                      sampler channel by sending the following command:
3923  </p>  </p>
3924  <p></p>  <p>
3925                            </p>
3926  <blockquote class="text">  <blockquote class="text">
3927  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;
3928  </p>  </p>
3929  </blockquote>  </blockquote><p>
3930                        
3931  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
3932    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
3933                        as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
3934                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command.
3935  </p>  </p>
3936  <p>Possible Answers:  <p>Possible Answers:
3937  </p>  </p>
3938  <p></p>  <p>
3939                            </p>
3940  <blockquote class="text">  <blockquote class="text">
3941  <p>LinuxSampler will answer by returning the number of active  <p>LinuxSampler will answer by returning the number of active
3942                              voices on that channel.                              voices on that channel.
3943  </p>  </p>
3944  </blockquote>  </blockquote><p>
3945                        
3946    </p>
3947  <p>Example:  <p>Example:
3948  </p>  </p>
3949  <p></p>  <p>
3950                            </p>
3951  <blockquote class="text">  <blockquote class="text">
3952  <p>  <p>
3953  </p>  </p>
3954  </blockquote>  </blockquote><p>
3955                        
3956  <a name="rfc.section.5.4.12"></a><h4><a name="GET CHANNEL STREAM_COUNT">5.4.12</a>&nbsp;Current number of active disk streams</h4>  </p>
3957    <a name="GET CHANNEL STREAM_COUNT"></a><br /><hr />
3958    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
3959    <a name="rfc.section.6.4.12"></a><h3>6.4.12.&nbsp;Current number of active disk streams</h3>
3960    
3961  <p>The front-end can ask for the current number of active disk streams  <p>The front-end can ask for the current number of active disk streams
3962                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
3963  </p>  </p>
3964  <p></p>  <p>
3965                            </p>
3966  <blockquote class="text">  <blockquote class="text">
3967  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;
3968  </p>  </p>
3969  </blockquote>  </blockquote><p>
3970                        
3971  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
3972    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
3973                        as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
3974                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command.
3975  </p>  </p>
3976  <p>Possible Answers:  <p>Possible Answers:
3977  </p>  </p>
3978  <p></p>  <p>
3979                            </p>
3980  <blockquote class="text">  <blockquote class="text">
3981  <p>LinuxSampler will answer by returning the number of active  <p>LinuxSampler will answer by returning the number of active
3982                              disk streams on that channel in case the engine supports disk                              disk streams on that channel in case the engine supports disk
3983                              streaming, if the engine doesn't support disk streaming it will                              streaming, if the engine doesn't support disk streaming it will
3984                              return "NA" for not available.                              return "NA" for not available.
3985  </p>  </p>
3986  </blockquote>  </blockquote><p>
3987                        
3988    </p>
3989  <p>Example:  <p>Example:
3990  </p>  </p>
3991  <p></p>  <p>
3992                            </p>
3993  <blockquote class="text">  <blockquote class="text">
3994  <p>  <p>
3995  </p>  </p>
3996  </blockquote>  </blockquote><p>
3997                        
3998  <a name="rfc.section.5.4.13"></a><h4><a name="GET CHANNEL BUFFER_FILL">5.4.13</a>&nbsp;Current fill state of disk stream buffers</h4>  </p>
3999    <a name="GET CHANNEL BUFFER_FILL"></a><br /><hr />
4000    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4001    <a name="rfc.section.6.4.13"></a><h3>6.4.13.&nbsp;Current fill state of disk stream buffers</h3>
4002    
4003  <p>The front-end can ask for the current fill state of all disk streams  <p>The front-end can ask for the current fill state of all disk streams
4004                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
4005  </p>  </p>
4006  <p></p>  <p>
4007                            </p>
4008  <blockquote class="text">  <blockquote class="text">
4009  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;
4010  </p>  </p>
4011  </blockquote>  </blockquote><p>
4012                        
4013    </p>
4014  <p>to get the fill state in bytes or  <p>to get the fill state in bytes or
4015  </p>  </p>
4016  <p></p>  <p>
4017                            </p>
4018  <blockquote class="text">  <blockquote class="text">
4019  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;
4020  </p>  </p>
4021  </blockquote>  </blockquote><p>
4022                        
4023    </p>
4024  <p>to get the fill state in percent, where &lt;sampler-channel&gt; is the  <p>to get the fill state in percent, where &lt;sampler-channel&gt; is the
4025                      sampler channel number the front-end is interested in.                      sampler channel number the front-end is interested in
4026                        as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
4027                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command.
4028  </p>  </p>
4029  <p>Possible Answers:  <p>Possible Answers:
4030  </p>  </p>
4031  <p></p>  <p>
4032                            </p>
4033  <blockquote class="text">  <blockquote class="text">
4034  <p>LinuxSampler will either answer by returning a comma separated  <p>LinuxSampler will either answer by returning a comma separated
4035                              string with the fill state of all disk stream buffers on that                              string with the fill state of all disk stream buffers on that
# Line 3376  Intellectual Property and Copyright Stat Line 4042  Intellectual Property and Copyright Stat
4042                              the response are not in particular order, thus the front-end has                              the response are not in particular order, thus the front-end has
4043                              to sort them by itself if necessary.                              to sort them by itself if necessary.
4044  </p>  </p>
4045  </blockquote>  </blockquote><p>
4046                        
4047    </p>
4048  <p>Examples:  <p>Examples:
4049  </p>  </p>
4050  <p></p>  <p>
4051                            </p>
4052  <blockquote class="text">  <blockquote class="text">
4053  <p>C: "GET CHANNEL BUFFER_FILL BYTES 4"  <p>C: "GET CHANNEL BUFFER_FILL BYTES 4"
4054  </p>  </p>
4055  <p>S: "[115]420500,[116]510300,[75]110000,[120]230700"  <p>S: "[115]420500,[116]510300,[75]110000,[120]230700"
4056  </p>  </p>
4057  </blockquote>  </blockquote><p>
4058    
4059                            </p>
4060  <blockquote class="text">  <blockquote class="text">
4061  <p><p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"  <p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"
4062  </p>  </p>
4063  <p>S: "[115]90%,[116]98%,[75]40%,[120]62%"  <p>S: "[115]90%,[116]98%,[75]40%,[120]62%"
4064  </p>  </p>
4065  </blockquote>  </blockquote><p>
4066    
4067                            </p>
4068  <blockquote class="text">  <blockquote class="text">
4069  <p><p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"  <p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"
4070  </p>  </p>
4071  <p>S: ""  <p>S: ""
4072  </p>  </p>
4073  </blockquote>  </blockquote><p>
4074                        
4075  <a name="rfc.section.5.4.14"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_DEVICE">5.4.14</a>&nbsp;Setting audio output device</h4>  </p>
4076    <a name="SET CHANNEL AUDIO_OUTPUT_DEVICE"></a><br /><hr />
4077    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4078    <a name="rfc.section.6.4.14"></a><h3>6.4.14.&nbsp;Setting audio output device</h3>
4079    
4080  <p>The front-end can set the audio output device on a specific sampler  <p>The front-end can set the audio output device on a specific sampler
4081                      channel by sending the following command:                      channel by sending the following command:
4082  </p>  </p>
4083  <p></p>  <p>
4084                            </p>
4085  <blockquote class="text">  <blockquote class="text">
4086  <p>SET CHANNEL AUDIO_OUTPUT_DEVICE &lt;sampler-channel&gt; &lt;audio-device-id&gt;  <p>SET CHANNEL AUDIO_OUTPUT_DEVICE &lt;sampler-channel&gt; &lt;audio-device-id&gt;
4087  </p>  </p>
4088  </blockquote>  </blockquote><p>
4089                        
4090  <p>Where &lt;audio-device-id&gt; is the numerical ID of the audio output  </p>
4091                      device and &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4092                      number.                      number as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
4093                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command and
4094                        &lt;audio-device-id&gt; is the numerical ID of the audio output device as given by the
4095                        <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span> (</span><span class="info">Creating an audio output device</span><span>)</span></a>
4096                        or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class="info">Getting all created audio output device list</span><span>)</span></a>
4097                        command.
4098  </p>  </p>
4099  <p>Possible Answers:  <p>Possible Answers:
4100  </p>  </p>
4101  <p></p>  <p>
4102                            </p>
4103  <blockquote class="text">  <blockquote class="text">
4104  <p>"OK" -  <p>"OK" -
4105                                  </p>                                  </p>
# Line 3425  Intellectual Property and Copyright Stat Line 4107  Intellectual Property and Copyright Stat
4107  <p>on success  <p>on success
4108  </p>  </p>
4109  </blockquote>  </blockquote>
4110                                
4111    
4112  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4113                                  </p>                                  </p>
# Line 3434  Intellectual Property and Copyright Stat Line 4117  Intellectual Property and Copyright Stat
4117                                      warning message                                      warning message
4118  </p>  </p>
4119  </blockquote>  </blockquote>
4120                                
4121    
4122  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4123                                  </p>                                  </p>
# Line 3441  Intellectual Property and Copyright Stat Line 4125  Intellectual Property and Copyright Stat
4125  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
4126  </p>  </p>
4127  </blockquote>  </blockquote>
4128                                
4129    
4130  </blockquote>  </blockquote><p>
4131                        
4132    </p>
4133  <p>Examples:  <p>Examples:
4134  </p>  </p>
4135  <p></p>  <p>
4136                            </p>
4137  <blockquote class="text">  <blockquote class="text">
4138  <p>  <p>
4139  </p>  </p>
4140  </blockquote>  </blockquote><p>
4141                        
4142  <a name="rfc.section.5.4.15"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_TYP">5.4.15</a>&nbsp;Setting audio output type</h4>  </p>
4143    <a name="SET CHANNEL AUDIO_OUTPUT_TYP"></a><br /><hr />
4144    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4145    <a name="rfc.section.6.4.15"></a><h3>6.4.15.&nbsp;Setting audio output type</h3>
4146    
4147  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4148  </p>  </p>
4149  <p>The front-end can alter the audio output type on a specific sampler  <p>The front-end can alter the audio output type on a specific sampler
4150                      channel by sending the following command:                      channel by sending the following command:
4151  </p>  </p>
4152  <p></p>  <p>
4153                            </p>
4154  <blockquote class="text">  <blockquote class="text">
4155  <p>SET CHANNEL AUDIO_OUTPUT_TYPE &lt;sampler-channel&gt; &lt;audio-output-type&gt;  <p>SET CHANNEL AUDIO_OUTPUT_TYPE &lt;sampler-channel&gt; &lt;audio-output-type&gt;
4156  </p>  </p>
4157  </blockquote>  </blockquote><p>
4158                        
4159    </p>
4160  <p>Where &lt;audio-output-type&gt; is currently either "ALSA" or "JACK" and  <p>Where &lt;audio-output-type&gt; is currently either "ALSA" or "JACK" and
4161                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
4162  </p>  </p>
4163  <p>Possible Answers:  <p>Possible Answers:
4164  </p>  </p>
4165  <p></p>  <p>
4166                            </p>
4167  <blockquote class="text">  <blockquote class="text">
4168  <p>"OK" -  <p>"OK" -
4169                                  </p>                                  </p>
# Line 3478  Intellectual Property and Copyright Stat Line 4171  Intellectual Property and Copyright Stat
4171  <p>on success  <p>on success
4172  </p>  </p>
4173  </blockquote>  </blockquote>
4174                                
4175    
4176  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4177                                  </p>                                  </p>
# Line 3487  Intellectual Property and Copyright Stat Line 4181  Intellectual Property and Copyright Stat
4181                                      warning message                                      warning message
4182  </p>  </p>
4183  </blockquote>  </blockquote>
4184                                
4185    
4186  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4187                                  </p>                                  </p>
# Line 3494  Intellectual Property and Copyright Stat Line 4189  Intellectual Property and Copyright Stat
4189  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
4190  </p>  </p>
4191  </blockquote>  </blockquote>
4192                                
4193    
4194  </blockquote>  </blockquote><p>
4195                        
4196    </p>
4197  <p>Examples:  <p>Examples:
4198  </p>  </p>
4199  <p></p>  <p>
4200                            </p>
4201  <blockquote class="text">  <blockquote class="text">
4202  <p>  <p>
4203  </p>  </p>
4204  </blockquote>  </blockquote><p>
4205                        
4206  <a name="rfc.section.5.4.16"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_CHANNEL">5.4.16</a>&nbsp;Setting audio output channel</h4>  </p>
4207    <a name="SET CHANNEL AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
4208    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4209    <a name="rfc.section.6.4.16"></a><h3>6.4.16.&nbsp;Setting audio output channel</h3>
4210    
4211  <p>The front-end can alter the audio output channel on a specific  <p>The front-end can alter the audio output channel on a specific
4212                      sampler channel by sending the following command:                      sampler channel by sending the following command:
4213  </p>  </p>
4214  <p></p>  <p>
4215                            </p>
4216  <blockquote class="text">  <blockquote class="text">
4217  <p>SET CHANNEL AUDIO_OUTPUT_CHANNEL &lt;sampler-chan&gt; &lt;audio-out&gt; &lt;audio-in&gt;  <p>SET CHANNEL AUDIO_OUTPUT_CHANNEL &lt;sampler-chan&gt; &lt;audio-out&gt; &lt;audio-in&gt;
4218  </p>  </p>
4219  </blockquote>  </blockquote><p>
4220                        
4221  <p>Where &lt;sampler-chan&gt; is the sampler channel number, &lt;audio-out&gt; is the  </p>
4222    <p>Where &lt;sampler-chan&gt; is the sampler channel number
4223                        as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
4224                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command, &lt;audio-out&gt; is the
4225                      numerical ID of the sampler channel's audio output channel which should be                      numerical ID of the sampler channel's audio output channel which should be
4226                      rerouted and &lt;audio-in&gt; is the numerical ID of the audio channel of the selected audio                      rerouted and &lt;audio-in&gt; is the numerical ID of the audio channel of the selected audio
4227                      output device where &lt;audio-out&gt; should be routed to.                      output device where &lt;audio-out&gt; should be routed to.
4228  </p>  </p>
4229  <p>Possible Answers:  <p>Possible Answers:
4230  </p>  </p>
4231  <p></p>  <p>
4232                            </p>
4233  <blockquote class="text">  <blockquote class="text">
4234  <p>"OK" -  <p>"OK" -
4235                                  </p>                                  </p>
# Line 3531  Intellectual Property and Copyright Stat Line 4237  Intellectual Property and Copyright Stat
4237  <p>on success  <p>on success
4238  </p>  </p>
4239  </blockquote>  </blockquote>
4240                                
4241    
4242  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4243                                  </p>                                  </p>
# Line 3540  Intellectual Property and Copyright Stat Line 4247  Intellectual Property and Copyright Stat
4247                                      warning message                                      warning message
4248  </p>  </p>
4249  </blockquote>  </blockquote>
4250                                
4251    
4252  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4253                                  </p>                                  </p>
# Line 3547  Intellectual Property and Copyright Stat Line 4255  Intellectual Property and Copyright Stat
4255  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
4256  </p>  </p>
4257  </blockquote>  </blockquote>
4258                                
4259    
4260  </blockquote>  </blockquote><p>
4261                        
4262    </p>
4263  <p>Examples:  <p>Examples:
4264  </p>  </p>
4265  <p></p>  <p>
4266                            </p>
4267  <blockquote class="text">  <blockquote class="text">
4268  <p>  <p>
4269  </p>  </p>
4270  </blockquote>  </blockquote><p>
4271                        
4272  <a name="rfc.section.5.4.17"></a><h4><a name="SET CHANNEL MIDI_INPUT_DEVICE">5.4.17</a>&nbsp;Setting MIDI input device</h4>  </p>
4273    <a name="SET CHANNEL MIDI_INPUT_DEVICE"></a><br /><hr />
4274    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4275    <a name="rfc.section.6.4.17"></a><h3>6.4.17.&nbsp;Setting MIDI input device</h3>
4276    
4277  <p>The front-end can set the MIDI input device on a specific sampler  <p>The front-end can set the MIDI input device on a specific sampler
4278                      channel by sending the following command:                      channel by sending the following command:
4279  </p>  </p>
4280  <p></p>  <p>
4281                            </p>
4282  <blockquote class="text">  <blockquote class="text">
4283  <p>SET CHANNEL MIDI_INPUT_DEVICE &lt;sampler-channel&gt; &lt;midi-device-id&gt;  <p>SET CHANNEL MIDI_INPUT_DEVICE &lt;sampler-channel&gt; &lt;midi-device-id&gt;
4284  </p>  </p>
4285  </blockquote>  </blockquote><p>
4286                        
4287  <p>Where &lt;sampler-channel&gt; is the sampler channel number and &lt;midi-device-id&gt; is the  </p>
4288                      the numerical ID of the MIDI input device.  <p>Where &lt;sampler-channel&gt; is the sampler channel number
4289                        as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
4290                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command
4291                        and &lt;midi-device-id&gt; is  the numerical ID of the MIDI input device as returned by the
4292                        <a class="info" href="#CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"<span> (</span><span class="info">Creating a MIDI input device</span><span>)</span></a>
4293                        or <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span> (</span><span class="info">Getting all created MIDI input device list</span><span>)</span></a> command.
4294  </p>  </p>
4295  <p>Possible Answers:  <p>Possible Answers:
4296  </p>  </p>
4297  <p></p>  <p>
4298                            </p>
4299  <blockquote class="text">  <blockquote class="text">
4300  <p>"OK" -  <p>"OK" -
4301                                  </p>                                  </p>
# Line 3582  Intellectual Property and Copyright Stat Line 4303  Intellectual Property and Copyright Stat
4303  <p>on success  <p>on success
4304  </p>  </p>
4305  </blockquote>  </blockquote>
4306                                
4307    
4308  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4309                                  </p>                                  </p>
# Line 3591  Intellectual Property and Copyright Stat Line 4313  Intellectual Property and Copyright Stat
4313                                      warning message                                      warning message
4314  </p>  </p>
4315  </blockquote>  </blockquote>
4316                                
4317    
4318  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4319                                  </p>                                  </p>
# Line 3598  Intellectual Property and Copyright Stat Line 4321  Intellectual Property and Copyright Stat
4321  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
4322  </p>  </p>
4323  </blockquote>  </blockquote>
4324                                
4325    
4326  </blockquote>  </blockquote><p>
4327                        
4328    </p>
4329  <p>Examples:  <p>Examples:
4330  </p>  </p>
4331  <p></p>  <p>
4332                            </p>
4333  <blockquote class="text">  <blockquote class="text">
4334  <p>  <p>
4335  </p>  </p>
4336  </blockquote>  </blockquote><p>
4337                        
4338  <a name="rfc.section.5.4.18"></a><h4><a name="SET CHANNEL MIDI_INPUT_TYPE">5.4.18</a>&nbsp;Setting MIDI input type</h4>  </p>
4339    <a name="SET CHANNEL MIDI_INPUT_TYPE"></a><br /><hr />
4340    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4341    <a name="rfc.section.6.4.18"></a><h3>6.4.18.&nbsp;Setting MIDI input type</h3>
4342    
4343  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4344  </p>  </p>
4345  <p>The front-end can alter the MIDI input type on a specific sampler  <p>The front-end can alter the MIDI input type on a specific sampler
4346                      channel by sending the following command:                      channel by sending the following command:
4347  </p>  </p>
4348  <p></p>  <p>
4349                            </p>
4350  <blockquote class="text">  <blockquote class="text">
4351  <p>SET CHANNEL MIDI_INPUT_TYPE &lt;sampler-channel&gt; &lt;midi-input-type&gt;  <p>SET CHANNEL MIDI_INPUT_TYPE &lt;sampler-channel&gt; &lt;midi-input-type&gt;
4352  </p>  </p>
4353  </blockquote>  </blockquote><p>
4354                        
4355    </p>
4356  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and
4357                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
4358  </p>  </p>
4359  <p>Possible Answers:  <p>Possible Answers:
4360  </p>  </p>
4361  <p></p>  <p>
4362                            </p>
4363  <blockquote class="text">  <blockquote class="text">
4364  <p>"OK" -  <p>"OK" -
4365                                  </p>                                  </p>
# Line 3635  Intellectual Property and Copyright Stat Line 4367  Intellectual Property and Copyright Stat
4367  <p>on success  <p>on success
4368  </p>  </p>
4369  </blockquote>  </blockquote>
4370                                
4371    
4372  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4373                                  </p>                                  </p>
# Line 3644  Intellectual Property and Copyright Stat Line 4377  Intellectual Property and Copyright Stat
4377                                      warning message                                      warning message
4378  </p>  </p>
4379  </blockquote>  </blockquote>
4380                                
4381    
4382  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4383                                  </p>                                  </p>
# Line 3651  Intellectual Property and Copyright Stat Line 4385  Intellectual Property and Copyright Stat
4385  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
4386  </p>  </p>
4387  </blockquote>  </blockquote>
4388                                
4389    
4390  </blockquote>  </blockquote><p>
4391                        
4392    </p>
4393  <p>Examples:  <p>Examples:
4394  </p>  </p>
4395  <p></p>  <p>
4396                            </p>
4397  <blockquote class="text">  <blockquote class="text">
4398  <p>  <p>
4399  </p>  </p>
4400  </blockquote>  </blockquote><p>
4401                        
4402  <a name="rfc.section.5.4.19"></a><h4><a name="SET CHANNEL MIDI_INPUT_PORT">5.4.19</a>&nbsp;Setting MIDI input port</h4>  </p>
4403    <a name="SET CHANNEL MIDI_INPUT_PORT"></a><br /><hr />
4404    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4405    <a name="rfc.section.6.4.19"></a><h3>6.4.19.&nbsp;Setting MIDI input port</h3>
4406    
4407  <p>The front-end can alter the MIDI input port on a specific sampler  <p>The front-end can alter the MIDI input port on a specific sampler
4408                      channel by sending the following command:                      channel by sending the following command:
4409  </p>  </p>
4410  <p></p>  <p>
4411                            </p>
4412  <blockquote class="text">  <blockquote class="text">
4413  <p>SET CHANNEL MIDI_INPUT_PORT &lt;sampler-channel&gt; &lt;midi-input-port&gt;  <p>SET CHANNEL MIDI_INPUT_PORT &lt;sampler-channel&gt; &lt;midi-input-port&gt;
4414  </p>  </p>
4415  </blockquote>  </blockquote><p>
4416                        
4417    </p>
4418  <p>Where &lt;midi-input-port&gt; is a MIDI input port number of the  <p>Where &lt;midi-input-port&gt; is a MIDI input port number of the
4419                      MIDI input device connected to the sampler channel given by                      MIDI input device connected to the sampler channel given by
4420                      &lt;sampler-channel&gt;.                      &lt;sampler-channel&gt;.
4421  </p>  </p>
4422  <p>Possible Answers:  <p>Possible Answers:
4423  </p>  </p>
4424  <p></p>  <p>
4425                            </p>
4426  <blockquote class="text">  <blockquote class="text">
4427  <p>"OK" -  <p>"OK" -
4428                                  </p>                                  </p>
# Line 3687  Intellectual Property and Copyright Stat Line 4430  Intellectual Property and Copyright Stat
4430  <p>on success  <p>on success
4431  </p>  </p>
4432  </blockquote>  </blockquote>
4433                                
4434    
4435  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4436                                  </p>                                  </p>
# Line 3696  Intellectual Property and Copyright Stat Line 4440  Intellectual Property and Copyright Stat
4440                                      warning message                                      warning message
4441  </p>  </p>
4442  </blockquote>  </blockquote>
4443                                
4444    
4445  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4446                                  </p>                                  </p>
4447  <blockquote class="text">  <blockquote class="text">
4448  <p>in case it failed, providing an appropriate error code and error messag  <p>in case it failed, providing an appropriate error code and error message
4449  </p>  </p>
4450  </blockquote>  </blockquote>
4451                                
4452    
4453  </blockquote>  </blockquote><p>
4454                        
4455    </p>
4456  <p>Examples:  <p>Examples:
4457  </p>  </p>
4458  <p></p>  <p>
4459                            </p>
4460  <blockquote class="text">  <blockquote class="text">
4461  <p>  <p>
4462  </p>  </p>
4463  </blockquote>  </blockquote><p>
4464                        
4465  <a name="rfc.section.5.4.20"></a><h4><a name="SET CHANNEL MIDI_INPUT_CHANNEL">5.4.20</a>&nbsp;Setting MIDI input channel</h4>  </p>
4466    <a name="SET CHANNEL MIDI_INPUT_CHANNEL"></a><br /><hr />
4467    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4468    <a name="rfc.section.6.4.20"></a><h3>6.4.20.&nbsp;Setting MIDI input channel</h3>
4469    
4470  <p>The front-end can alter the MIDI channel a sampler channel should  <p>The front-end can alter the MIDI channel a sampler channel should
4471                      listen to by sending the following command:                      listen to by sending the following command:
4472  </p>  </p>
4473  <p></p>  <p>
4474                            </p>
4475  <blockquote class="text">  <blockquote class="text">
4476  <p>SET CHANNEL MIDI_INPUT_CHANNEL &lt;sampler-channel&gt; &lt;midi-input-chan&gt;  <p>SET CHANNEL MIDI_INPUT_CHANNEL &lt;sampler-channel&gt; &lt;midi-input-chan&gt;
4477  </p>  </p>
4478  </blockquote>  </blockquote><p>
4479                        
4480    </p>
4481  <p>Where &lt;midi-input-chan&gt; is the number of the new MIDI input channel where  <p>Where &lt;midi-input-chan&gt; is the number of the new MIDI input channel where
4482                      &lt;sampler-channel&gt; should listen to or "ALL" to listen on all 16 MIDI                      &lt;sampler-channel&gt; should listen to or "ALL" to listen on all 16 MIDI
4483                      channels.                      channels.
4484  </p>  </p>
4485  <p>Possible Answers:  <p>Possible Answers:
4486  </p>  </p>
4487  <p></p>  <p>
4488                            </p>
4489  <blockquote class="text">  <blockquote class="text">
4490  <p>"OK" -  <p>"OK" -
4491                                  </p>                                  </p>
# Line 3739  Intellectual Property and Copyright Stat Line 4493  Intellectual Property and Copyright Stat
4493  <p>on success  <p>on success
4494  </p>  </p>
4495  </blockquote>  </blockquote>
4496                                
4497    
4498  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4499                                  </p>                                  </p>
# Line 3748  Intellectual Property and Copyright Stat Line 4503  Intellectual Property and Copyright Stat
4503                                      warning message                                      warning message
4504  </p>  </p>
4505  </blockquote>  </blockquote>
4506                                
4507    
4508  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4509                                  </p>                                  </p>
# Line 3755  Intellectual Property and Copyright Stat Line 4511  Intellectual Property and Copyright Stat
4511  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
4512  </p>  </p>
4513  </blockquote>  </blockquote>
4514                                
4515    
4516  </blockquote>  </blockquote><p>
4517                        
4518    </p>
4519  <p>Examples:  <p>Examples:
4520  </p>  </p>
4521  <p></p>  <p>
4522                            </p>
4523  <blockquote class="text">  <blockquote class="text">
4524  <p>  <p>
4525  </p>  </p>
4526  </blockquote>  </blockquote><p>
4527                        
4528  <a name="rfc.section.5.4.21"></a><h4><a name="SET CHANNEL VOLUME">5.4.21</a>&nbsp;Setting channel volume</h4>  </p>
4529    <a name="SET CHANNEL VOLUME"></a><br /><hr />
4530    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4531    <a name="rfc.section.6.4.21"></a><h3>6.4.21.&nbsp;Setting channel volume</h3>
4532    
4533  <p>The front-end can alter the volume of a sampler channel by sending  <p>The front-end can alter the volume of a sampler channel by sending
4534                      the following command:                      the following command:
4535  </p>  </p>
4536  <p></p>  <p>
4537                            </p>
4538  <blockquote class="text">  <blockquote class="text">
4539  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;
4540  </p>  </p>
4541  </blockquote>  </blockquote><p>
4542                        
4543    </p>
4544  <p>Where &lt;volume&gt; is an optionally dotted positive number (a value  <p>Where &lt;volume&gt; is an optionally dotted positive number (a value
4545                      smaller than 1.0 means attenuation, whereas a value greater than                      smaller than 1.0 means attenuation, whereas a value greater than
4546                      1.0 means amplification) and &lt;sampler-channel&gt; defines the sampler                      1.0 means amplification) and &lt;sampler-channel&gt; defines the sampler
# Line 3784  Intellectual Property and Copyright Stat Line 4548  Intellectual Property and Copyright Stat
4548  </p>  </p>
4549  <p>Possible Answers:  <p>Possible Answers:
4550  </p>  </p>
4551  <p></p>  <p>
4552                            </p>
4553  <blockquote class="text">  <blockquote class="text">
4554  <p>"OK" -  <p>"OK" -
4555                                  </p>                                  </p>
# Line 3792  Intellectual Property and Copyright Stat Line 4557  Intellectual Property and Copyright Stat
4557  <p>on success  <p>on success
4558  </p>  </p>
4559  </blockquote>  </blockquote>
4560                                
4561    
4562  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4563                                  </p>                                  </p>
# Line 3801  Intellectual Property and Copyright Stat Line 4567  Intellectual Property and Copyright Stat
4567                                      warning message                                      warning message
4568  </p>  </p>
4569  </blockquote>  </blockquote>
4570                                
4571    
4572  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4573                                  </p>                                  </p>
# Line 3808  Intellectual Property and Copyright Stat Line 4575  Intellectual Property and Copyright Stat
4575  <p>in case it failed, providing an appropriate error code and error message  <p>in case it failed, providing an appropriate error code and error message
4576  </p>  </p>
4577  </blockquote>  </blockquote>
4578                                
4579    
4580    </blockquote><p>
4581                        
4582    </p>
4583    <p>Examples:
4584    </p>
4585    <p>
4586                            </p>
4587    <blockquote class="text">
4588    <p>
4589    </p>
4590    </blockquote><p>
4591                        
4592    </p>
4593    <a name="SET CHANNEL MUTE"></a><br /><hr />
4594    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4595    <a name="rfc.section.6.4.22"></a><h3>6.4.22.&nbsp;Muting a sampler channel</h3>
4596    
4597    <p>The front-end can mute/unmute a specific sampler
4598                        channel by sending the following command:
4599    </p>
4600    <p>
4601                            </p>
4602    <blockquote class="text">
4603    <p>SET CHANNEL MUTE &lt;sampler-channel&gt; &lt;mute&gt;
4604    </p>
4605    </blockquote><p>
4606                        
4607    </p>
4608    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4609                        number as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
4610                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command and
4611                        &lt;mute&gt; should be replaced either by "1" to mute the channel or "0"
4612                        to unmute the channel.
4613    </p>
4614    <p>Possible Answers:
4615    </p>
4616    <p>
4617                            </p>
4618    <blockquote class="text">
4619    <p>"OK" -
4620                                    </p>
4621    <blockquote class="text">
4622    <p>on success
4623    </p>
4624    </blockquote>
4625                                
4626    
4627    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4628                                    </p>
4629    <blockquote class="text">
4630    <p>if the channel was muted/unmuted, but there are noteworthy
4631                                        issue(s) related, providing an appropriate warning code and
4632                                        warning message
4633    </p>
4634    </blockquote>
4635                                
4636    
4637    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4638                                    </p>
4639    <blockquote class="text">
4640    <p>in case it failed, providing an appropriate error code and error message
4641    </p>
4642  </blockquote>  </blockquote>
4643                                
4644    
4645    </blockquote><p>
4646                        
4647    </p>
4648  <p>Examples:  <p>Examples:
4649  </p>  </p>
4650  <p></p>  <p>
4651                            </p>
4652  <blockquote class="text">  <blockquote class="text">
4653  <p>  <p>
4654  </p>  </p>
4655    </blockquote><p>
4656                        
4657    </p>
4658    <a name="SET CHANNEL SOLO"></a><br /><hr />
4659    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4660    <a name="rfc.section.6.4.23"></a><h3>6.4.23.&nbsp;Soloing a sampler channel</h3>
4661    
4662    <p>The front-end can solo/unsolo a specific sampler channel
4663                        by sending the following command:
4664    </p>
4665    <p>
4666                            </p>
4667    <blockquote class="text">
4668    <p>SET CHANNEL SOLO &lt;sampler-channel&gt; &lt;solo&gt;
4669    </p>
4670    </blockquote><p>
4671                        
4672    </p>
4673    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4674                        number as returned by the <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>
4675                        or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a> command and
4676                        &lt;solo&gt; should be replaced either by "1" to solo the channel or "0"
4677                        to unsolo the channel.
4678    </p>
4679    <p>Possible Answers:
4680    </p>
4681    <p>
4682                            </p>
4683    <blockquote class="text">
4684    <p>"OK" -
4685                                    </p>
4686    <blockquote class="text">
4687    <p>on success
4688    </p>
4689  </blockquote>  </blockquote>
4690                                
4691    
4692  <a name="rfc.section.5.4.22"></a><h4><a name="RESET CHANNEL">5.4.22</a>&nbsp;Resetting a sampler channel</h4>  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4693                                    </p>
4694    <blockquote class="text">
4695    <p>if the channel was soloed/unsoloed, but there are noteworthy
4696                                        issue(s) related, providing an appropriate warning code and
4697                                        warning message
4698    </p>
4699    </blockquote>
4700                                
4701    
4702    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4703                                    </p>
4704    <blockquote class="text">
4705    <p>in case it failed, providing an appropriate error code and error message
4706    </p>
4707    </blockquote>
4708                                
4709    
4710    </blockquote><p>
4711                        
4712    </p>
4713    <p>Examples:
4714    </p>
4715    <p>
4716                            </p>
4717    <blockquote class="text">
4718    <p>
4719    </p>
4720    </blockquote><p>
4721                        
4722    </p>
4723    <a name="RESET CHANNEL"></a><br /><hr />
4724    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4725    <a name="rfc.section.6.4.24"></a><h3>6.4.24.&nbsp;Resetting a sampler channel</h3>
4726    
4727  <p>The front-end can reset a particular sampler channel by sending the following command:  <p>The front-end can reset a particular sampler channel by sending the following command:
4728  </p>  </p>
4729  <p></p>  <p>
4730                            </p>
4731  <blockquote class="text">  <blockquote class="text">
4732  <p>RESET CHANNEL &lt;sampler-channel&gt;  <p>RESET CHANNEL &lt;sampler-channel&gt;
4733  </p>  </p>
4734  </blockquote>  </blockquote><p>
4735                        
4736    </p>
4737  <p>  <p>
4738                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.
4739                      This will cause the engine on that sampler channel, its voices and                      This will cause the engine on that sampler channel, its voices and
# Line 3837  Intellectual Property and Copyright Stat Line 4742  Intellectual Property and Copyright Stat
4742  </p>  </p>
4743  <p>Possible Answers:  <p>Possible Answers:
4744  </p>  </p>
4745  <p></p>  <p>
4746                            </p>
4747  <blockquote class="text">  <blockquote class="text">
4748  <p>"OK" -  <p>"OK" -
4749                                  </p>                                  </p>
# Line 3845  Intellectual Property and Copyright Stat Line 4751  Intellectual Property and Copyright Stat
4751  <p>on success  <p>on success
4752  </p>  </p>
4753  </blockquote>  </blockquote>
4754                                
4755    
4756  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4757                                  </p>                                  </p>
# Line 3854  Intellectual Property and Copyright Stat Line 4761  Intellectual Property and Copyright Stat
4761                                      message                                      message
4762  </p>  </p>
4763  </blockquote>  </blockquote>
4764                                
4765    
4766  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4767                                  </p>                                  </p>
# Line 3862  Intellectual Property and Copyright Stat Line 4770  Intellectual Property and Copyright Stat
4770                                      error message                                      error message
4771  </p>  </p>
4772  </blockquote>  </blockquote>
4773                                
4774    
4775  </blockquote>  </blockquote><p>
4776                        
4777    </p>
4778  <p>Examples:  <p>Examples:
4779  </p>  </p>
4780  <p></p>  <p>
4781                            </p>
4782  <blockquote class="text">  <blockquote class="text">
4783  <p>  <p>
4784  </p>  </p>
4785  </blockquote>  </blockquote><p>
4786                        
4787  <a name="rfc.section.5.5"></a><h4><a name="anchor13">5.5</a>&nbsp;Controlling connection</h4>  </p>
4788    <a name="anchor12"></a><br /><hr />
4789    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4790    <a name="rfc.section.6.5"></a><h3>6.5.&nbsp;Controlling connection</h3>
4791    
4792  <p>The following commands are used to control the connection to LinuxSampler.  <p>The following commands are used to control the connection to LinuxSampler.
4793  </p>  </p>
4794  <a name="rfc.section.5.5.1"></a><h4><a name="SUBSCRIBE">5.5.1</a>&nbsp;Register front-end for receiving event messages</h4>  <a name="SUBSCRIBE"></a><br /><hr />
4795    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4796    <a name="rfc.section.6.5.1"></a><h3>6.5.1.&nbsp;Register front-end for receiving event messages</h3>
4797    
4798  <p>The front-end can register itself to the LinuxSampler application to  <p>The front-end can register itself to the LinuxSampler application to
4799                      be informed about noteworthy events by sending this command:                      be informed about noteworthy events by sending this command:
4800  </p>  </p>
4801  <p></p>  <p>
4802                            </p>
4803  <blockquote class="text">  <blockquote class="text">
4804  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
4805  </p>  </p>
4806  </blockquote>  </blockquote><p>
4807                        
4808    </p>
4809  <p>where &lt;event-id&gt; will be replaced by the respective event that  <p>where &lt;event-id&gt; will be replaced by the respective event that
4810                      client wants to subscribe to.                      client wants to subscribe to.
4811  </p>  </p>
4812  <p>Possible Answers:  <p>Possible Answers:
4813  </p>  </p>
4814  <p></p>  <p>
4815                            </p>
4816  <blockquote class="text">  <blockquote class="text">
4817  <p>"OK" -  <p>"OK" -
4818                                  </p>                                  </p>
# Line 3901  Intellectual Property and Copyright Stat Line 4820  Intellectual Property and Copyright Stat
4820  <p>on success  <p>on success
4821  </p>  </p>
4822  </blockquote>  </blockquote>
4823                                
4824    
4825  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4826                                  </p>                                  </p>
# Line 3910  Intellectual Property and Copyright Stat Line 4830  Intellectual Property and Copyright Stat
4830                                      warning message                                      warning message
4831  </p>  </p>
4832  </blockquote>  </blockquote>
4833                                
4834    
4835  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4836                                  </p>                                  </p>
# Line 3918  Intellectual Property and Copyright Stat Line 4839  Intellectual Property and Copyright Stat
4839                                      error message                                      error message
4840  </p>  </p>
4841  </blockquote>  </blockquote>
4842                                
4843    
4844  </blockquote>  </blockquote><p>
4845                        
4846    </p>
4847  <p>Examples:  <p>Examples:
4848  </p>  </p>
4849  <p></p>  <p>
4850                            </p>
4851  <blockquote class="text">  <blockquote class="text">
4852  <p>  <p>
4853  </p>  </p>
4854  </blockquote>  </blockquote><p>
4855                        
4856  <a name="rfc.section.5.5.2"></a><h4><a name="UNSUBSCRIBE">5.5.2</a>&nbsp;Unregister front-end for not receiving event messages</h4>  </p>
4857    <a name="UNSUBSCRIBE"></a><br /><hr />
4858    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4859    <a name="rfc.section.6.5.2"></a><h3>6.5.2.&nbsp;Unregister front-end for not receiving event messages</h3>
4860    
4861  <p>The front-end can unregister itself if it doesn't want to receive event  <p>The front-end can unregister itself if it doesn't want to receive event
4862                      messages anymore by sending the following command:                      messages anymore by sending the following command:
4863  </p>  </p>
4864  <p></p>  <p>
4865                            </p>
4866  <blockquote class="text">  <blockquote class="text">
4867  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
4868  </p>  </p>
4869  </blockquote>  </blockquote><p>
4870                        
4871    </p>
4872  <p>Where &lt;event-id&gt; will be replaced by the respective event that  <p>Where &lt;event-id&gt; will be replaced by the respective event that
4873                      client doesn't want to receive anymore.                      client doesn't want to receive anymore.
4874  </p>  </p>
4875  <p>Possible Answers:  <p>Possible Answers:
4876  </p>  </p>
4877  <p></p>  <p>
4878                            </p>
4879  <blockquote class="text">  <blockquote class="text">
4880  <p>"OK" -  <p>"OK" -
4881                                  </p>                                  </p>
# Line 3953  Intellectual Property and Copyright Stat Line 4883  Intellectual Property and Copyright Stat
4883  <p>on success  <p>on success
4884  </p>  </p>
4885  </blockquote>  </blockquote>
4886                                
4887    
4888  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4889                                  </p>                                  </p>
# Line 3962  Intellectual Property and Copyright Stat Line 4893  Intellectual Property and Copyright Stat
4893                                      warning message                                      warning message
4894  </p>  </p>
4895  </blockquote>  </blockquote>
4896                                
4897    
4898  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4899                                  </p>                                  </p>
# Line 3970  Intellectual Property and Copyright Stat Line 4902  Intellectual Property and Copyright Stat
4902                                      error message                                      error message
4903  </p>  </p>
4904  </blockquote>  </blockquote>
4905                                
4906    
4907  </blockquote>  </blockquote><p>
4908                        
4909    </p>
4910  <p>Examples:  <p>Examples:
4911  </p>  </p>
4912  <p></p>  <p>
4913                            </p>
4914  <blockquote class="text">  <blockquote class="text">
4915  <p>  <p>
4916  </p>  </p>
4917  </blockquote>  </blockquote><p>
4918                        
4919  <a name="rfc.section.5.5.3"></a><h4><a name="SET ECHO">5.5.3</a>&nbsp;Enable or disable echo of commands</h4>  </p>
4920    <a name="SET ECHO"></a><br /><hr />
4921    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4922    <a name="rfc.section.6.5.3"></a><h3>6.5.3.&nbsp;Enable or disable echo of commands</h3>
4923    
4924  <p>To enable or disable back sending of commands to the client the following command can be used:  <p>To enable or disable back sending of commands to the client the following command can be used:
4925  </p>  </p>
4926  <p></p>  <p>
4927                            </p>
4928  <blockquote class="text">  <blockquote class="text">
4929  <p>SET ECHO &lt;value&gt;  <p>SET ECHO &lt;value&gt;
4930  </p>  </p>
4931  </blockquote>  </blockquote><p>
4932                        
4933    </p>
4934  <p>Where &lt;value&gt; should be replaced either by "1" to enable echo mode  <p>Where &lt;value&gt; should be replaced either by "1" to enable echo mode
4935                      or "0" to disable echo mode. When echo mode is enabled, all                      or "0" to disable echo mode. When echo mode is enabled, all
4936                      commands send to LinuxSampler will be immediately send back and                      commands send to LinuxSampler will be immediately send back and
# Line 4001  Intellectual Property and Copyright Stat Line 4941  Intellectual Property and Copyright Stat
4941  </p>  </p>
4942  <p>Possible Answers:  <p>Possible Answers:
4943  </p>  </p>
4944  <p></p>  <p>
4945                            </p>
4946  <blockquote class="text">  <blockquote class="text">
4947  <p>"OK" -  <p>"OK" -
4948                                  </p>                                  </p>
# Line 4009  Intellectual Property and Copyright Stat Line 4950  Intellectual Property and Copyright Stat
4950  <p>usually  <p>usually
4951  </p>  </p>
4952  </blockquote>  </blockquote>
4953                                
4954    
4955  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4956                                  </p>                                  </p>
# Line 4016  Intellectual Property and Copyright Stat Line 4958  Intellectual Property and Copyright Stat
4958  <p>on syntax error, e.g. non boolean value  <p>on syntax error, e.g. non boolean value
4959  </p>  </p>
4960  </blockquote>  </blockquote>
4961                                
4962    
4963  </blockquote>  </blockquote><p>
4964                        
4965    </p>
4966  <p>Examples:  <p>Examples:
4967  </p>  </p>
4968  <p></p>  <p>
4969                            </p>
4970  <blockquote class="text">  <blockquote class="text">
4971  <p>  <p>
4972  </p>  </p>
4973  </blockquote>  </blockquote><p>
4974                        
4975  <a name="rfc.section.5.5.4"></a><h4><a name="QUIT">5.5.4</a>&nbsp;Close client connection</h4>  </p>
4976    <a name="QUIT"></a><br /><hr />
4977    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4978    <a name="rfc.section.6.5.4"></a><h3>6.5.4.&nbsp;Close client connection</h3>
4979    
4980  <p>The client can close its network connection to LinuxSampler by sending the following command:  <p>The client can close its network connection to LinuxSampler by sending the following command:
4981  </p>  </p>
4982  <p></p>  <p>
4983                            </p>
4984  <blockquote class="text">  <blockquote class="text">
4985  <p>QUIT  <p>QUIT
4986  </p>  </p>
4987  </blockquote>  </blockquote><p>
4988                        
4989    </p>
4990  <p>This is probably more interesting for manual telnet connections to  <p>This is probably more interesting for manual telnet connections to
4991                      LinuxSampler than really useful for a front-end implementation.                      LinuxSampler than really useful for a front-end implementation.
4992  </p>  </p>
4993  <a name="rfc.section.5.6"></a><h4><a name="anchor14">5.6</a>&nbsp;Global commands</h4>  <a name="anchor13"></a><br /><hr />
4994    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
4995    <a name="rfc.section.6.6"></a><h3>6.6.&nbsp;Global commands</h3>
4996    
4997  <p>The following commands have global impact on the sampler.  <p>The following commands have global impact on the sampler.
4998  </p>  </p>
4999  <a name="rfc.section.5.6.1"></a><h4><a name="RESET">5.6.1</a>&nbsp;Reset sampler</h4>  <a name="GET TOTAL_VOICE_COUNT"></a><br /><hr />
5000    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5001    <a name="rfc.section.6.6.1"></a><h3>6.6.1.&nbsp;Current number of active voices</h3>
5002    
5003    <p>The front-end can ask for the current number of active voices on
5004                        the sampler by sending the following command:
5005    </p>
5006    <p>
5007                            </p>
5008    <blockquote class="text">
5009    <p>GET TOTAL_VOICE_COUNT
5010    </p>
5011    </blockquote><p>
5012                        
5013    </p>
5014    <p>Possible Answers:
5015    </p>
5016    <p>
5017                            </p>
5018    <blockquote class="text">
5019    <p>LinuxSampler will answer by returning the number of all active
5020                                voices on the sampler.
5021    </p>
5022    </blockquote><p>
5023                        
5024    </p>
5025    <a name="GET TOTAL_VOICE_COUNT_MAX"></a><br /><hr />
5026    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5027    <a name="rfc.section.6.6.2"></a><h3>6.6.2.&nbsp;Maximum amount of active voices</h3>
5028    
5029    <p>The front-end can ask for the maximum number of active voices
5030                        by sending the following command:
5031    </p>
5032    <p>
5033                            </p>
5034    <blockquote class="text">
5035    <p>GET TOTAL_VOICE_COUNT_MAX
5036    </p>
5037    </blockquote><p>
5038                        
5039    </p>
5040    <p>Possible Answers:
5041    </p>
5042    <p>
5043                            </p>
5044    <blockquote class="text">
5045    <p>LinuxSampler will answer by returning the maximum number
5046                                of active voices.
5047    </p>
5048    </blockquote><p>
5049                        
5050    </p>
5051    <a name="RESET"></a><br /><hr />
5052    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5053    <a name="rfc.section.6.6.3"></a><h3>6.6.3.&nbsp;Reset sampler</h3>
5054    
5055  <p>The front-end can reset the whole sampler by sending the following command:  <p>The front-end can reset the whole sampler by sending the following command:
5056  </p>  </p>
5057  <p></p>  <p>
5058                            </p>
5059  <blockquote class="text">  <blockquote class="text">
5060  <p>RESET  <p>RESET
5061  </p>  </p>
5062    </blockquote><p>
5063                        
5064    </p>
5065    <p>Possible Answers:
5066    </p>
5067    <p>
5068                            </p>
5069    <blockquote class="text">
5070    <p>"OK" -
5071                                    </p>
5072    <blockquote class="text">
5073    <p>always
5074    </p>
5075  </blockquote>  </blockquote>
5076                                
5077    
5078    </blockquote><p>
5079                        
5080    </p>
5081    <p>Examples:
5082    </p>
5083    <p>
5084                            </p>
5085    <blockquote class="text">
5086    <p>
5087    </p>
5088    </blockquote><p>
5089                        
5090    </p>
5091    <a name="GET SERVER INFO"></a><br /><hr />
5092    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5093    <a name="rfc.section.6.6.4"></a><h3>6.6.4.&nbsp;General sampler informations</h3>
5094    
5095    <p>The client can ask for general informations about the LinuxSampler
5096                           instance by sending the following command:
5097    </p>
5098    <p>
5099                            </p>
5100    <blockquote class="text">
5101    <p>GET SERVER INFO
5102    </p>
5103    </blockquote><p>
5104                        
5105    </p>
5106  <p>Possible Answers:  <p>Possible Answers:
5107  </p>  </p>
5108  <p></p>  <p>
5109                            </p>
5110    <blockquote class="text">
5111    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
5112                                   Each answer line begins with the information category name
5113                                   followed by a colon and then a space character &lt;SP&gt; and finally
5114                                   the info character string to that information category. At the
5115                                   moment the following categories are defined:
5116                                
5117    </p>
5118    <p>
5119                                    </p>
5120    <blockquote class="text">
5121    <p>DESCRIPTION -
5122                                            </p>
5123    <blockquote class="text">
5124    <p>arbitrary textual description about the sampler
5125    </p>
5126    </blockquote>
5127                                        
5128    
5129    <p>VERSION -
5130                                            </p>
5131    <blockquote class="text">
5132    <p>version of the sampler
5133    </p>
5134    </blockquote>
5135                                        
5136    
5137    <p>PROTOCOL_VERSION -
5138                                            </p>
5139    <blockquote class="text">
5140    <p>version of the LSCP specification the sampler
5141                                                complies with (see <a class="info" href="#LSCP versioning">Section&nbsp;2<span> (</span><span class="info">Versioning of this specification</span><span>)</span></a> for details)
5142    </p>
5143    </blockquote>
5144                                        
5145    
5146    </blockquote>
5147                                
5148    
5149    </blockquote><p>
5150                        
5151    </p>
5152    <p>The mentioned fields above don't have to be in particular order.
5153                        Other fields might be added in future.
5154    </p>
5155    <a name="anchor14"></a><br /><hr />
5156    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5157    <a name="rfc.section.6.7"></a><h3>6.7.&nbsp;MIDI Instrument Mapping</h3>
5158    
5159    <p>The MIDI protocol provides a way to switch between instruments
5160                    by sending so called MIDI bank select and MIDI program change
5161                    messages which are essentially just numbers. The following commands
5162                    allow to actually map arbitrary MIDI bank select / program change
5163                    numbers with real instruments.
5164    </p>
5165    <p>By default, that is when the sampler is launched, this map will
5166                    be empty, thus the sampler will simply ignore all program change
5167                    messages. The front-end has to explicitly add entries to the map
5168                    so the sampler knows how to react on a given program change
5169                    message, that is by switching to the respectively defined engine
5170                    type and loading the respective instrument.
5171    </p>
5172    <p>Also note per MIDI specification a bank select message does not
5173                    cause to switch to another instrument. Instead when receiving a
5174                    bank select message the bank value will be stored and a subsequent
5175                    program change message (which may occur at any time) will finally
5176                    cause the sampler to switch to the respective instrument as
5177                    reflected by the current MIDI instrument map.
5178    </p>
5179    <a name="MAP MIDI_INSTRUMENT"></a><br /><hr />
5180    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5181    <a name="rfc.section.6.7.1"></a><h3>6.7.1.&nbsp;Create or replace a MIDI instrument map entry</h3>
5182    
5183    <p>The front-end can create a new or replace an existing entry
5184                        in the sampler's MIDI instrument map by sending the following
5185                        command:
5186    </p>
5187    <p>
5188                            </p>
5189    <blockquote class="text">
5190    <p>MAP MIDI_INSTRUMENT &lt;midi_bank_msb&gt;
5191                                &lt;midi_bank_lsb&gt; &lt;midi_prog&gt; &lt;engine_name&gt;
5192                                &lt;filename&gt; &lt;instrument_index&gt; &lt;volume_value&gt;
5193                                [&lt;instr_load_mode&gt;] [&lt;name&gt;]
5194    </p>
5195    </blockquote><p>
5196                        
5197    </p>
5198    <p>Where &lt;midi_bank_msb&gt; is an integer value between
5199                        0..127 reflecting the MIDI bank select MSB (coarse) index,
5200                        &lt;midi_bank_lsb&gt; an integer value between 0..127 reflecting
5201                        the MIDI bank select LSB (fine) index, &lt;midi_prog&gt; an
5202                        integer value between 0..127 reflecting the MIDI program change
5203                        index, &lt;engine_name&gt; a sampler engine name as returned by
5204                        the <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span> (</span><span class="info">Getting all available engines</span><span>)</span></a>
5205                        command (not encapsulated into apostrophes), &lt;filename&gt; the name
5206                        of the instrument's file to be deployed (encapsulated into apostrophes), &lt;instrument_index&gt; the index (integer value) of the instrument
5207                        within the given file, &lt;volume_value&gt; reflects the master
5208                        volume of the instrument as optionally dotted number (where a
5209                        value < 1.0 means attenuation and a value > 1.0 means
5210                        amplification). This parameter easily allows to adjust the
5211                        volume of all intruments within a custom instrument map
5212                        without having to adjust their instrument files. The
5213                        OPTIONAL &lt;instr_load_mode&gt; argument defines the life
5214                        time of the instrument, that is when the instrument should
5215                        be loaded, when freed and has exactly the following
5216                        possibilities:
5217    </p>
5218    <p>
5219                            </p>
5220    <blockquote class="text">
5221    <p>"ON_DEMAND" -
5222                                    </p>
5223    <blockquote class="text">
5224    <p>The instrument will be loaded when needed,
5225                                        that is when demanded by at least one sampler
5226                                        channel. It will immediately be freed from memory
5227                                        when not needed by any sampler channel anymore.
5228    </p>
5229    </blockquote>
5230                                
5231    
5232    <p>"ON_DEMAND_HOLD" -
5233                                    </p>
5234    <blockquote class="text">
5235    <p>The instrument will be loaded when needed,
5236                                        that is when demanded by at least one sampler
5237                                        channel. It will be kept in memory even when
5238                                        not needed by any sampler channel anymore.
5239                                        Instruments with this mode are only freed
5240                                        when the sampler is reset or all mapping
5241                                        entries with this mode (and respective
5242                                        instrument) are explicitly changed to
5243                                        "ON_DEMAND" and no sampler channel is using
5244                                        the instrument anymore.
5245    </p>
5246    </blockquote>
5247                                
5248    
5249    <p>"PERSISTENT" -
5250                                    </p>
5251    <blockquote class="text">
5252    <p>The instrument will immediately be loaded
5253                                        into memory in the background when this mapping
5254                                        command is sent and the instrument is kept all
5255                                        the time. Instruments with this mode are
5256                                        only freed when the sampler is reset or all
5257                                        mapping entries with this mode (and
5258                                        respective instrument) are explicitly
5259                                        changed to "ON_DEMAND" and no sampler
5260                                        channel is using the instrument anymore.
5261    </p>
5262    </blockquote>
5263                                
5264    
5265    <p>not supplied -
5266                                    </p>
5267    <blockquote class="text">
5268    <p>In case there is no &lt;instr_load_mode&gt;
5269                                        argument given, it will be up to the
5270                                        InstrumentManager to decide which mode to use.
5271                                        Usually it will use "ON_DEMAND" if an entry
5272                                        for the given instrument does not exist in
5273                                        the InstrumentManager's list yet, otherwise
5274                                        if an entry already exists, it will simply
5275                                        stick with the mode currently reflected by
5276                                        the already existing entry, that is it will
5277                                        not change the mode.
5278    </p>
5279    </blockquote>
5280                                
5281    
5282    </blockquote><p>
5283                        
5284    </p>
5285    <p>
5286                        The &lt;instr_load_mode&gt; argument thus allows to define an
5287                        appropriate strategy (low memory consumption vs. fast
5288                        instrument switching) for each instrument individually. Note, the
5289                        following restrictions apply to this argument: "ON_DEMAND_HOLD" and
5290                        "PERSISTENT" have to be supported by the respective sampler engine
5291                        (which is technically the case when the engine provides an
5292                        InstrumentManager for its format). If this is not the case the
5293                        argument will automatically fall back to the default value
5294                        "ON_DEMAND". Also the load mode of one instrument may
5295                        automatically change the laod mode of other instrument(s), i.e.
5296                        because the instruments are part of the same file and the
5297                        engine does not allow a way to manage load modes for them
5298                        individually. Due to this, in case the frontend shows the
5299                        load modes of entries, the frontend should retrieve the actual
5300                        mode by i.e. sending
5301                        <a class="info" href="#GET MIDI_INSTRUMENT INFO">"GET MIDI_INSTRUMENT INFO"<span> (</span><span class="info">Get current settings of MIDI instrument map entry</span><span>)</span></a>
5302                        command(s). Finally the OPTIONAL &lt;name&gt; argument allows to
5303                        set a custom name (encapsulated into apostrophes) for the mapping
5304                        entry, useful for frontends for displaying an appropriate name for
5305                        mapped instruments (using
5306                        <a class="info" href="#GET MIDI_INSTRUMENT INFO">"GET MIDI_INSTRUMENT INFO"<span> (</span><span class="info">Get current settings of MIDI instrument map entry</span><span>)</span></a>).
5307                        
5308    </p>
5309    <p>
5310                        The "MAP MIDI_INSTRUMENT" command
5311                        will immediately return, thus it will not block when an
5312                        instrument is to be loaded due to a "PERSISTENT" type
5313                        entry as instruments are loaded in the background. As a
5314                        consequence this command may not necessarily return an error
5315                        i.e. when the given instrument file does not exist or may
5316                        turn out to be corrupt.
5317                        
5318    </p>
5319    <p>Possible Answers:
5320    </p>
5321    <p>
5322                            </p>
5323  <blockquote class="text">  <blockquote class="text">
5324  <p>"OK" -  <p>"OK" -
5325                                  </p>                                  </p>
5326  <blockquote class="text">  <blockquote class="text">
5327  <p>always  <p>usually
5328  </p>  </p>
5329  </blockquote>  </blockquote>
5330                                
5331    
5332    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5333                                    </p>
5334    <blockquote class="text">
5335    <p>when the given engine does not exist or a value
5336                                        is out of range
5337    </p>
5338  </blockquote>  </blockquote>
5339                                
5340    
5341    </blockquote><p>
5342                        
5343    </p>
5344  <p>Examples:  <p>Examples:
5345  </p>  </p>
5346  <p></p>  <p>
5347                            </p>
5348    <blockquote class="text">
5349    <p>C: "MAP MIDI_INSTRUMENT 3 0 0 gig '/usr/share/Steinway D.gig' 0 0.8 PERSISTENT"
5350    </p>
5351    <p>S: "OK"
5352    </p>
5353    </blockquote><p>
5354                        
5355    </p>
5356    <p>
5357                            </p>
5358    <blockquote class="text">
5359    <p>C: "MAP MIDI_INSTRUMENT 127 4 50 gig '/home/john/foostrings.gig' 7 1.0"
5360    </p>
5361    <p>S: "OK"
5362    </p>
5363    </blockquote><p>
5364                        
5365    </p>
5366    <p>
5367                            </p>
5368  <blockquote class="text">  <blockquote class="text">
5369    <p>C: "MAP MIDI_INSTRUMENT 0 0 0 gig '/usr/share/piano.gig' 0 1.0 'Normal Piano'"
5370    </p>
5371    <p>S: "OK"
5372    </p>
5373    <p>C: "MAP MIDI_INSTRUMENT 1 0 0 gig '/usr/share/piano.gig' 0 0.25 'Silent Piano'"
5374    </p>
5375    <p>S: "OK"
5376    </p>
5377    </blockquote><p>
5378                        
5379    </p>
5380  <p>  <p>
5381                            </p>
5382    <blockquote class="text">
5383    <p>C: "MAP MIDI_INSTRUMENT 99 8 120 gig '/home/joe/foodrums.gig' 0 1.0 PERSISTENT 'Foo Drumkit'"
5384    </p>
5385    <p>S: "OK"
5386    </p>
5387    </blockquote><p>
5388                        
5389    </p>
5390    <a name="GET MIDI_INSTRUMENTS"></a><br /><hr />
5391    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5392    <a name="rfc.section.6.7.2"></a><h3>6.7.2.&nbsp;Getting ammount of MIDI instrument map entries</h3>
5393    
5394    <p>The front-end can query the amount of currently existing MIDI
5395                        instrument map entries by sending the following
5396                        command:
5397    </p>
5398    <p>
5399                            </p>
5400    <blockquote class="text">
5401    <p>GET MIDI_INSTRUMENTS
5402    </p>
5403    </blockquote><p>
5404                        
5405    </p>
5406    <p>Possible Answers:
5407    </p>
5408    <p>
5409                            </p>
5410    <blockquote class="text">
5411    <p>LinuxSampler will answer by sending the current number of
5412                                entries in the sampler's MIDI instrument map.
5413    </p>
5414    </blockquote><p>
5415                        
5416    </p>
5417    <p>Example:
5418    </p>
5419    <p>
5420                            </p>
5421    <blockquote class="text">
5422    <p>C: "GET MIDI_INSTRUMENTS"
5423    </p>
5424    <p>S: "634"
5425    </p>
5426    </blockquote><p>
5427                        
5428    </p>
5429    <a name="LIST MIDI_INSTRUMENTS"></a><br /><hr />
5430    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5431    <a name="rfc.section.6.7.3"></a><h3>6.7.3.&nbsp;Getting indeces of all MIDI instrument map entries</h3>
5432    
5433    <p>The front-end can query a list of all currently existing MIDI
5434                        instrument map entries by sending the following command:
5435    </p>
5436    <p>
5437                            </p>
5438    <blockquote class="text">
5439    <p>LIST MIDI_INSTRUMENTS
5440    </p>
5441    </blockquote><p>
5442                        
5443    </p>
5444    <p>Possible Answers:
5445    </p>
5446    <p>
5447                            </p>
5448    <blockquote class="text">
5449    <p>LinuxSampler will answer by sending a comma separated
5450                                list of MIDI bank MSB (coarse) - MIDI bank LSB (fine) -
5451                                MIDI program triples, where each triple is encapsulated
5452                                into curly braces. The list is returned in one single
5453                                line. Each triple just reflects the key of the respective
5454                                map entry, thus subsequent
5455                                <a class="info" href="#GET MIDI_INSTRUMENT INFO">"GET MIDI_INSTRUMENT INFO"<span> (</span><span class="info">Get current settings of MIDI instrument map entry</span><span>)</span></a>
5456                                command(s) are necessary to retrieve detailed informations
5457                                about each entry.
5458    </p>
5459    </blockquote><p>
5460                        
5461    </p>
5462    <p>Example:
5463    </p>
5464    <p>
5465                            </p>
5466    <blockquote class="text">
5467    <p>C: "LIST MIDI_INSTRUMENTS"
5468    </p>
5469    <p>S: "{0,0,0},{0,0,1},{120,0,3},{120,0,4},{23,127,127}"
5470    </p>
5471    </blockquote><p>
5472                        
5473    </p>
5474    <a name="UNMAP MIDI_INSTRUMENT"></a><br /><hr />
5475    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5476    <a name="rfc.section.6.7.4"></a><h3>6.7.4.&nbsp;Remove an entry from the MIDI instrument map</h3>
5477    
5478    <p>The front-end can delete an entry from the MIDI instrument
5479                        map by sending the following command:
5480    </p>
5481    <p>
5482                            </p>
5483    <blockquote class="text">
5484    <p>UNMAP MIDI_INSTRUMENT &lt;midi_bank_msb&gt; &lt;midi_bank_lsb&gt; &lt;midi_prog&gt;
5485    </p>
5486    </blockquote><p>
5487                        
5488    </p>
5489    <p>
5490                        Where &lt;midi_bank_msb&gt; is an integer value between 0..127
5491                        reflecting the MIDI bank MSB (coarse) value, &lt;midi_bank_lsb&gt;
5492                        an integer value between 0..127 reflecting the MIDI bank LSB
5493                        (fine) value and &lt;midi_prog&gt; an integer value between
5494                        0..127 reflecting the MIDI program value of the map entrie's key
5495                        index triple.
5496                        
5497    </p>
5498    <p>Possible Answers:
5499    </p>
5500    <p>
5501                            </p>
5502    <blockquote class="text">
5503    <p>"OK" -
5504                                    </p>
5505    <blockquote class="text">
5506    <p>usually
5507  </p>  </p>
5508  </blockquote>  </blockquote>
5509                                
5510    
5511    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5512                                    </p>
5513    <blockquote class="text">
5514    <p>when index out of bounds
5515    </p>
5516    </blockquote>
5517                                
5518    
5519    </blockquote><p>
5520                        
5521    </p>
5522    <p>Example:
5523    </p>
5524    <p>
5525                            </p>
5526    <blockquote class="text">
5527    <p>C: "UNMAP MIDI_INSTRUMENT 2 40 127"
5528    </p>
5529    <p>S: "OK"
5530    </p>
5531    </blockquote><p>
5532                        
5533    </p>
5534    <a name="GET MIDI_INSTRUMENT INFO"></a><br /><hr />
5535    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5536    <a name="rfc.section.6.7.5"></a><h3>6.7.5.&nbsp;Get current settings of MIDI instrument map entry</h3>
5537    
5538    <p>The front-end can retrieve the current settings of a certain
5539                        instrument map entry by sending the following command:
5540    </p>
5541    <p>
5542                            </p>
5543    <blockquote class="text">
5544    <p>GET MIDI_INSTRUMENT INFO &lt;midi_bank_msb&gt; &lt;midi_bank_lsb&gt; &lt;midi_prog&gt;
5545    </p>
5546    </blockquote><p>
5547                        
5548    </p>
5549    <p>
5550                        Where &lt;midi_bank_msb&gt; is an integer value between 0..127
5551                        reflecting the MIDI bank MSB (coarse) value, &lt;midi_bank_lsb&gt;
5552                        an integer value between 0..127 reflecting the MIDI bank LSB
5553                        (fine) value and &lt;midi_prog&gt; an integer value between
5554                        0..127 reflecting the MIDI program value of the map entrie's key
5555                        index triple.
5556                        
5557    </p>
5558    <p>Possible Answers:
5559    </p>
5560    <p>
5561                            </p>
5562    <blockquote class="text">
5563    <p>LinuxSampler will answer by sending a &lt;CRLF&gt;
5564                                separated list. Each answer line begins with the
5565                                information category name followed by a colon and then
5566                                a space character &lt;SP&gt; and finally the info
5567                                character string to that info category. At the moment
5568                                the following categories are defined:
5569    </p>
5570    <p>"NAME" -
5571                                    </p>
5572    <blockquote class="text">
5573    <p>Name for this MIDI instrument map entry (if defined).
5574                                        This name shall be used by frontends for displaying a
5575                                        name for this mapped instrument. It can be set and
5576                                        changed with the
5577                                        <a class="info" href="#MAP MIDI_INSTRUMENT">"MAP MIDI_INSTRUMENT"<span> (</span><span class="info">Create or replace a MIDI instrument map entry</span><span>)</span></a>
5578                                        command and does not have to be unique.
5579    </p>
5580    </blockquote>
5581                                
5582    
5583    <p>"ENGINE_NAME" -
5584                                    </p>
5585    <blockquote class="text">
5586    <p>Name of the engine to be deployed for this
5587                                        instrument.
5588    </p>
5589    </blockquote>
5590                                
5591    
5592    <p>"INSTRUMENT_FILE" -
5593                                    </p>
5594    <blockquote class="text">
5595    <p>File name of the instrument.
5596    </p>
5597    </blockquote>
5598                                
5599    
5600    <p>"INSTRUMENT_NR" -
5601                                    </p>
5602    <blockquote class="text">
5603    <p>Index of the instrument within the file.
5604    </p>
5605    </blockquote>
5606                                
5607    
5608    <p>"INSTRUMENT_NAME" -
5609                                    </p>
5610    <blockquote class="text">
5611    <p>Name of the loaded instrument as reflected by its file.
5612                                        In contrast to the "NAME" field, the "INSTRUMENT_NAME" field
5613                                        cannot be changed.
5614    </p>
5615    </blockquote>
5616                                
5617    
5618    <p>"LOAD_MODE" -
5619                                    </p>
5620    <blockquote class="text">
5621    <p>Life time of instrument
5622                                        (see <a class="info" href="#MAP MIDI_INSTRUMENT">"MAP MIDI_INSTRUMENT"<span> (</span><span class="info">Create or replace a MIDI instrument map entry</span><span>)</span></a> for details about this setting).
5623    </p>
5624    </blockquote>
5625                                
5626    
5627    <p>"VOLUME" -
5628                                    </p>
5629    <blockquote class="text">
5630    <p>master volume of the instrument as optionally
5631                                        dotted number (where a value < 1.0 means attenuation
5632                                        and a value > 1.0 means amplification)
5633    </p>
5634    </blockquote>
5635                                
5636    
5637    <p>The mentioned fields above don't have to be in particular order.
5638    </p>
5639    </blockquote><p>
5640                        
5641    </p>
5642    <p>Example:
5643    </p>
5644    <p>
5645                            </p>
5646    <blockquote class="text">
5647    <p>C: "GET MIDI_INSTRUMENT INFO 3 45 120"
5648    </p>
5649    <p>S: "NAME: Drums for Foo Song"
5650    </p>
5651    <p>&nbsp;&nbsp;&nbsp;"ENGINE_NAME: GigEngine"
5652    </p>
5653    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_FILE: /usr/share/joesdrumkit.gig"
5654    </p>
5655    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NR: 0"
5656    </p>
5657    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NAME: Joe's Drumkit"
5658    </p>
5659    <p>&nbsp;&nbsp;&nbsp;"LOAD_MODE: PERSISTENT"
5660    </p>
5661    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
5662    </p>
5663    <p>&nbsp;&nbsp;&nbsp;"."
5664    </p>
5665    </blockquote><p>
5666                        
5667    </p>
5668    <a name="CLEAR MIDI_INSTRUMENTS"></a><br /><hr />
5669    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5670    <a name="rfc.section.6.7.6"></a><h3>6.7.6.&nbsp;Clear MIDI instrument map</h3>
5671    
5672    <p>The front-end can clear the whole MIDI instrument map, that
5673                        is delete all entries by sending the following command:
5674    </p>
5675    <p>
5676                            </p>
5677    <blockquote class="text">
5678    <p>CLEAR MIDI_INSTRUMENTS
5679    </p>
5680    </blockquote><p>
5681                        
5682    </p>
5683    <p>Possible Answers:
5684    </p>
5685    <p>
5686                            </p>
5687    <blockquote class="text">
5688    <p>"OK" -
5689                                    </p>
5690    <blockquote class="text">
5691    <p>always
5692    </p>
5693    </blockquote>
5694                                
5695    
5696    </blockquote><p>
5697                        
5698    </p>
5699    <p>Example:
5700    </p>
5701    <p>
5702                           </p>
5703    <blockquote class="text">
5704    <p>C: "CLEAR MIDI_INSTRUMENTS"
5705    </p>
5706    <p>S: "OK"
5707    </p>
5708    </blockquote><p>
5709                        
5710    </p>
5711  <a name="command_syntax"></a><br /><hr />  <a name="command_syntax"></a><br /><hr />
5712  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
5713  <a name="rfc.section.6"></a><h3>6.&nbsp;Command Syntax</h3>  <a name="rfc.section.7"></a><h3>7.&nbsp;Command Syntax</h3>
5714    
5715    <p>The grammar of the control protocol as descibed in <a class="info" href="#control_commands">Section&nbsp;6<span> (</span><span class="info">Description for control commands</span><span>)</span></a>
5716                is defined below using Backus-Naur Form (BNF as described in <a class="info" href="#RFC2234">[RFC2234]<span> (</span><span class="info">Crocker, D. and P. Overell, &ldquo;Augmented BNF for Syntax Specifications,&rdquo; 1997.</span><span>)</span></a>)
5717                where applicable.
5718                
5719    </p>
5720    <p>input =
5721            </p>
5722    <blockquote class="text">
5723    <p>line LF
5724                    
5725    </p>
5726    <p>/ line CR LF
5727                    
5728    </p>
5729    </blockquote><p>
5730    
5731    </p>
5732    <p>line =
5733            </p>
5734    <blockquote class="text">
5735    <p>/* epsilon (empty line ignored) */
5736                    
5737    </p>
5738    <p>/ comment
5739                    
5740    </p>
5741    <p>/ command
5742                    
5743    </p>
5744    <p>/ error
5745                    
5746    </p>
5747    </blockquote><p>
5748    
5749    </p>
5750    <p>comment =
5751            </p>
5752    <blockquote class="text">
5753    <p>'#'
5754                    
5755    </p>
5756    <p>/ comment '#'
5757                    
5758    </p>
5759    <p>/ comment SP
5760                    
5761    </p>
5762    <p>/ comment number
5763                    
5764    </p>
5765    <p>/ comment string
5766                    
5767    </p>
5768    </blockquote><p>
5769    
5770    </p>
5771    <p>command =
5772            </p>
5773    <blockquote class="text">
5774    <p>ADD SP CHANNEL
5775                    
5776    </p>
5777    <p>/ MAP SP map_instruction
5778                    
5779    </p>
5780    <p>/ UNMAP SP unmap_instruction
5781                    
5782    </p>
5783    <p>/ GET SP get_instruction
5784                    
5785    </p>
5786    <p>/ CREATE SP create_instruction
5787                    
5788    </p>
5789    <p>/ DESTROY SP destroy_instruction
5790                    
5791    </p>
5792    <p>/ LIST SP list_instruction
5793                    
5794    </p>
5795    <p>/ LOAD SP load_instruction
5796                    
5797    </p>
5798    <p>/ REMOVE SP remove_instruction
5799    
5800                    
5801    </p>
5802    <p>/ SET SP set_instruction
5803                    
5804    </p>
5805    <p>/ SUBSCRIBE SP subscribe_event
5806                    
5807    </p>
5808    <p>/ UNSUBSCRIBE SP unsubscribe_event
5809                    
5810    </p>
5811    <p>/ SELECT SP text
5812                    
5813    </p>
5814    <p>/ RESET SP reset_instruction
5815                    
5816    </p>
5817    <p>/ CLEAR SP clear_instruction
5818                    
5819    </p>
5820    <p>/ RESET
5821                    
5822    </p>
5823    <p>/ QUIT
5824                    
5825    </p>
5826    </blockquote><p>
5827    
5828    </p>
5829    <p>subscribe_event =
5830            </p>
5831    <blockquote class="text">
5832    <p>CHANNEL_COUNT
5833                    
5834    </p>
5835    <p>/ VOICE_COUNT
5836                    
5837    </p>
5838    <p>/ STREAM_COUNT
5839                    
5840    </p>
5841    <p>/ BUFFER_FILL
5842                    
5843    </p>
5844    <p>/ CHANNEL_INFO
5845                    
5846    </p>
5847    <p>/ MISCELLANEOUS
5848                    
5849    </p>
5850    <p>/ TOTAL_VOICE_COUNT
5851                    
5852    </p>
5853    </blockquote><p>
5854    
5855    </p>
5856    <p>unsubscribe_event =
5857            </p>
5858    <blockquote class="text">
5859    <p>CHANNEL_COUNT
5860                    
5861    </p>
5862    <p>/ VOICE_COUNT
5863                    
5864    </p>
5865    <p>/ STREAM_COUNT
5866                    
5867    </p>
5868    <p>/ BUFFER_FILL
5869                    
5870    </p>
5871    <p>/ CHANNEL_INFO
5872                    
5873    </p>
5874    <p>/ MISCELLANEOUS
5875                    
5876    </p>
5877    <p>/ TOTAL_VOICE_COUNT
5878                    
5879    </p>
5880    </blockquote><p>
5881    
5882    </p>
5883    <p>map_instruction =
5884            </p>
5885    <blockquote class="text">
5886    <p>MIDI_INSTRUMENT SP midi_bank_msb SP midi_bank_lsb SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value
5887                    
5888    </p>
5889    <p>/ MIDI_INSTRUMENT SP midi_bank_msb SP midi_bank_lsb SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode
5890                    
5891    </p>
5892    <p>/ MIDI_INSTRUMENT SP midi_bank_msb SP midi_bank_lsb SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP entry_name
5893                    
5894    </p>
5895    <p>/ MIDI_INSTRUMENT SP midi_bank_msb SP midi_bank_lsb SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode SP entry_name
5896                    
5897    </p>
5898    </blockquote><p>
5899    
5900    </p>
5901    <p>unmap_instruction =
5902            </p>
5903    <blockquote class="text">
5904    <p>MIDI_INSTRUMENT SP midi_bank_msb SP midi_bank_lsb SP midi_prog
5905                    
5906    </p>
5907    </blockquote><p>
5908    
5909    </p>
5910    <p>remove_instruction =
5911            </p>
5912    <blockquote class="text">
5913    <p>CHANNEL SP sampler_channel
5914                    
5915    </p>
5916    </blockquote><p>
5917    
5918    </p>
5919    <p>get_instruction =
5920            </p>
5921    <blockquote class="text">
5922    <p>AVAILABLE_ENGINES
5923                    
5924    </p>
5925    <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
5926                    
5927    </p>
5928    <p>/ MIDI_INPUT_DRIVER SP INFO SP string
5929                    
5930    </p>
5931    <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string
5932                    
5933    </p>
5934    <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
5935                    
5936    </p>
5937    <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
5938                    
5939    </p>
5940    <p>/ AUDIO_OUTPUT_DRIVER SP INFO SP string
5941                    
5942    </p>
5943    <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string
5944                    
5945    </p>
5946    <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
5947                    
5948    </p>
5949    <p>/ AUDIO_OUTPUT_DEVICES
5950                    
5951    </p>
5952    <p>/ MIDI_INPUT_DEVICES
5953                    
5954    </p>
5955    <p>/ AUDIO_OUTPUT_DEVICE SP INFO SP number
5956                    
5957    </p>
5958    <p>/ MIDI_INPUT_DEVICE SP INFO SP number
5959                    
5960    </p>
5961    <p>/ MIDI_INPUT_PORT SP INFO SP number SP number
5962                    
5963    </p>
5964    <p>/ MIDI_INPUT_PORT_PARAMETER SP INFO SP number SP number SP string
5965                    
5966    </p>
5967    <p>/ AUDIO_OUTPUT_CHANNEL SP INFO SP number SP number
5968                    
5969    </p>
5970    <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP INFO SP number SP number SP string
5971                    
5972    </p>
5973    <p>/ CHANNELS
5974                    
5975    </p>
5976    <p>/ CHANNEL SP INFO SP sampler_channel
5977                    
5978    </p>
5979    <p>/ CHANNEL SP BUFFER_FILL SP buffer_size_type SP sampler_channel
5980                    
5981    </p>
5982    <p>/ CHANNEL SP STREAM_COUNT SP sampler_channel
5983                    
5984    </p>
5985    <p>/ CHANNEL SP VOICE_COUNT SP sampler_channel
5986                    
5987    </p>
5988    <p>/ ENGINE SP INFO SP engine_name
5989                    
5990    </p>
5991    <p>/ SERVER SP INFO
5992                    
5993    </p>
5994    <p>/ TOTAL_VOICE_COUNT
5995                    
5996    </p>
5997    <p>/ TOTAL_VOICE_COUNT_MAX
5998                    
5999    </p>
6000    <p>/ MIDI_INSTRUMENTS
6001                    
6002    </p>
6003    <p>/ MIDI_INSTRUMENT SP INFO SP midi_bank_msb SP midi_bank_lsb SP midi_prog
6004                    
6005    </p>
6006    </blockquote><p>
6007    
6008    </p>
6009    <p>set_instruction =
6010            </p>
6011    <blockquote class="text">
6012    <p>AUDIO_OUTPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
6013                    
6014    </p>
6015    <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP number SP number SP string '=' param_val_list
6016                    
6017    </p>
6018    <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
6019                    
6020    </p>
6021    <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' param_val_list
6022                    
6023    </p>
6024    <p>/ CHANNEL SP set_chan_instruction
6025                    
6026    </p>
6027    <p>/ ECHO SP boolean
6028                    
6029    </p>
6030    </blockquote><p>
6031    
6032    </p>
6033    <p>create_instruction =
6034            </p>
6035    <blockquote class="text">
6036    <p>AUDIO_OUTPUT_DEVICE SP string SP key_val_list
6037                    
6038    </p>
6039    <p>/ AUDIO_OUTPUT_DEVICE SP string
6040                    
6041    </p>
6042    <p>/ MIDI_INPUT_DEVICE SP string SP key_val_list
6043                    
6044    </p>
6045    <p>/ MIDI_INPUT_DEVICE SP string
6046                    
6047    </p>
6048    </blockquote><p>
6049    
6050    </p>
6051    <p>reset_instruction =
6052            </p>
6053    <blockquote class="text">
6054    <p>CHANNEL SP sampler_channel
6055                    
6056    </p>
6057    </blockquote><p>
6058    
6059    </p>
6060    <p>clear_instruction =
6061            </p>
6062    <blockquote class="text">
6063    <p>MIDI_INSTRUMENTS
6064                    
6065    </p>
6066    </blockquote><p>
6067    
6068    </p>
6069    <p>destroy_instruction =
6070            </p>
6071    <blockquote class="text">
6072    <p>AUDIO_OUTPUT_DEVICE SP number
6073                    
6074    </p>
6075    <p>/ MIDI_INPUT_DEVICE SP number
6076                    
6077    </p>
6078    </blockquote><p>
6079    
6080    </p>
6081    <p>load_instruction =
6082            </p>
6083    <blockquote class="text">
6084    <p>INSTRUMENT SP load_instr_args
6085                    
6086    </p>
6087    <p>/ ENGINE SP load_engine_args
6088                    
6089    </p>
6090    </blockquote><p>
6091    
6092    </p>
6093    <p>set_chan_instruction =
6094            </p>
6095    <blockquote class="text">
6096    <p>AUDIO_OUTPUT_DEVICE SP sampler_channel SP device_index
6097                    
6098    </p>
6099    <p>/ AUDIO_OUTPUT_CHANNEL SP sampler_channel SP audio_channel_index SP audio_channel_index
6100                    
6101    </p>
6102    <p>/ AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type_name
6103                    
6104    </p>
6105    <p>/ MIDI_INPUT SP sampler_channel SP device_index SP midi_input_port_index SP midi_input_channel_index
6106                    
6107    </p>
6108    <p>/ MIDI_INPUT_DEVICE SP sampler_channel SP device_index
6109                    
6110    </p>
6111    <p>/ MIDI_INPUT_PORT SP sampler_channel SP midi_input_port_index
6112                    
6113    </p>
6114    <p>/ MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel_index
6115                    
6116    </p>
6117    <p>/ MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type_name
6118                    
6119    </p>
6120    <p>/ VOLUME SP sampler_channel SP volume_value
6121                    
6122    </p>
6123    <p>/ MUTE SP sampler_channel SP boolean
6124                    
6125    </p>
6126    <p>/ SOLO SP sampler_channel SP boolean
6127                    
6128    </p>
6129    </blockquote><p>
6130    
6131    </p>
6132    <p>key_val_list =
6133            </p>
6134    <blockquote class="text">
6135    <p>string '=' param_val_list
6136                    
6137    </p>
6138    <p>/ key_val_list SP string '=' param_val_list
6139                    
6140    </p>
6141    </blockquote><p>
6142    
6143    </p>
6144    <p>buffer_size_type =
6145            </p>
6146    <blockquote class="text">
6147    <p>BYTES
6148                    
6149    </p>
6150    <p>/ PERCENTAGE
6151                    
6152    </p>
6153    </blockquote><p>
6154    
6155    </p>
6156    <p>list_instruction =
6157            </p>
6158    <blockquote class="text">
6159    <p>AUDIO_OUTPUT_DEVICES
6160                    
6161    </p>
6162    <p>/ MIDI_INPUT_DEVICES
6163                    
6164    </p>
6165    <p>/ CHANNELS
6166                    
6167    </p>
6168    <p>/ AVAILABLE_ENGINES
6169                    
6170    </p>
6171    <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
6172                    
6173    </p>
6174    <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
6175                    
6176    </p>
6177    <p>/ MIDI_INSTRUMENTS
6178                    
6179    </p>
6180    </blockquote><p>
6181    
6182    </p>
6183    <p>load_instr_args =
6184            </p>
6185    <blockquote class="text">
6186    <p>filename SP instrument_index SP sampler_channel
6187                    
6188    </p>
6189    <p>/ NON_MODAL SP filename SP instrument_index SP sampler_channel
6190                    
6191    </p>
6192    </blockquote><p>
6193    
6194    </p>
6195    <p>load_engine_args =
6196            </p>
6197    <blockquote class="text">
6198    <p>engine_name SP sampler_channel
6199                    
6200    </p>
6201    </blockquote><p>
6202    
6203    </p>
6204    <p>instr_load_mode =
6205            </p>
6206    <blockquote class="text">
6207    <p>ON_DEMAND
6208                    
6209    </p>
6210    <p>/ ON_DEMAND_HOLD
6211                    
6212    </p>
6213    <p>/ PERSISTENT
6214                    
6215    </p>
6216    </blockquote><p>
6217    
6218    </p>
6219    <p>device_index =
6220            </p>
6221    <blockquote class="text">
6222    <p>number
6223                    
6224    </p>
6225    </blockquote><p>
6226    
6227    </p>
6228    <p>audio_channel_index =
6229            </p>
6230    <blockquote class="text">
6231    <p>number
6232                    
6233    </p>
6234    </blockquote><p>
6235    
6236    </p>
6237    <p>audio_output_type_name =
6238            </p>
6239    <blockquote class="text">
6240    <p>string
6241                    
6242    </p>
6243    </blockquote><p>
6244    
6245    </p>
6246    <p>midi_input_port_index =
6247            </p>
6248    <blockquote class="text">
6249    <p>number
6250                    
6251    </p>
6252    </blockquote><p>
6253    
6254    </p>
6255    <p>midi_input_channel_index =
6256            </p>
6257    <blockquote class="text">
6258    <p>number
6259                    
6260    </p>
6261    <p>/ ALL
6262                    
6263    </p>
6264    </blockquote><p>
6265    
6266    </p>
6267    <p>midi_input_type_name =
6268            </p>
6269    <blockquote class="text">
6270    <p>string
6271                    
6272    </p>
6273    </blockquote><p>
6274    
6275    </p>
6276    <p>midi_bank_msb =
6277            </p>
6278    <blockquote class="text">
6279    <p>number
6280                    
6281    </p>
6282    </blockquote><p>
6283    
6284    </p>
6285    <p>midi_bank_lsb =
6286            </p>
6287    <blockquote class="text">
6288    <p>number
6289                    
6290    </p>
6291    </blockquote><p>
6292    
6293    </p>
6294    <p>midi_prog =
6295            </p>
6296    <blockquote class="text">
6297    <p>number
6298                    
6299    </p>
6300    </blockquote><p>
6301    
6302    </p>
6303    <p>volume_value =
6304            </p>
6305    <blockquote class="text">
6306    <p>dotnum
6307                    
6308    </p>
6309    <p>/ number
6310                    
6311    </p>
6312    </blockquote><p>
6313    
6314    </p>
6315    <p>sampler_channel =
6316            </p>
6317    <blockquote class="text">
6318    <p>number
6319                    
6320    </p>
6321    </blockquote><p>
6322    
6323    </p>
6324    <p>instrument_index =
6325            </p>
6326    <blockquote class="text">
6327    <p>number
6328                    
6329    </p>
6330    </blockquote><p>
6331    
6332    </p>
6333    <p>engine_name =
6334            </p>
6335    <blockquote class="text">
6336    <p>string
6337                    
6338    </p>
6339    </blockquote><p>
6340    
6341    </p>
6342    <p>filename =
6343            </p>
6344    <blockquote class="text">
6345    <p>stringval
6346                    
6347    </p>
6348    </blockquote><p>
6349    
6350    </p>
6351    <p>entry_name =
6352            </p>
6353    <blockquote class="text">
6354    <p>stringval
6355                    
6356    </p>
6357    </blockquote><p>
6358    
6359    </p>
6360    <p>param_val_list =
6361            </p>
6362    <blockquote class="text">
6363    <p>param_val
6364                    
6365    </p>
6366    <p>/ param_val_list','param_val
6367                    
6368    </p>
6369    </blockquote><p>
6370    
6371    </p>
6372    <p>param_val =
6373            </p>
6374    <blockquote class="text">
6375    <p>string
6376                    
6377    </p>
6378    <p>/ stringval
6379                    
6380    </p>
6381    <p>/ number
6382                    
6383    </p>
6384    <p>/ dotnum
6385                    
6386    </p>
6387    </blockquote><p>
6388    
 <p>TODO: will soon automatically included from src/network/lscp.y,  
             meanwhile have a look at that file to get the exact definition of  
             the command syntax.  
6389  </p>  </p>
6390  <a name="events"></a><br /><hr />  <a name="events"></a><br /><hr />
6391  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6392  <a name="rfc.section.7"></a><h3>7.&nbsp;Events</h3>  <a name="rfc.section.8"></a><h3>8.&nbsp;Events</h3>
6393    
6394  <p>This chapter will describe all currently defined events supported by LinuxSampler.  <p>This chapter will describe all currently defined events supported by LinuxSampler.
6395  </p>  </p>
6396  <a name="rfc.section.7.1"></a><h4><a name="SUBSCRIBE CHANNEL">7.1</a>&nbsp;Number of sampler channels changed</h4>  <a name="SUBSCRIBE CHANNEL"></a><br /><hr />
6397    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6398    <a name="rfc.section.8.1"></a><h3>8.1.&nbsp;Number of sampler channels changed</h3>
6399    
6400  <p>Client may want to be notified when the total number of channels on the  <p>Client may want to be notified when the total number of channels on the
6401                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
6402  </p>  </p>
6403  <p></p>  <p>
6404                        </p>
6405  <blockquote class="text">  <blockquote class="text">
6406  <p>SUBSCRIBE CHANNEL_COUNT  <p>SUBSCRIBE CHANNEL_COUNT
6407  </p>  </p>
6408  </blockquote>  </blockquote><p>
6409                    
6410    </p>
6411  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
6412  </p>  </p>
6413  <p></p>  <p>
6414                        </p>
6415  <blockquote class="text">  <blockquote class="text">
6416  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"
6417  </p>  </p>
6418  </blockquote>  </blockquote><p>
6419                    
6420    </p>
6421  <p>where &lt;channels&gt; will be replaced by the new number  <p>where &lt;channels&gt; will be replaced by the new number
6422                  of sampler channels.                  of sampler channels.
6423  </p>  </p>
6424  <a name="rfc.section.7.2"></a><h4><a name="SUBSCRIBE VOICE_COUNT">7.2</a>&nbsp;Number of active voices changed</h4>  <a name="SUBSCRIBE VOICE_COUNT"></a><br /><hr />
6425    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6426    <a name="rfc.section.8.2"></a><h3>8.2.&nbsp;Number of active voices changed</h3>
6427    
6428  <p>Client may want to be notified when the number of voices on the  <p>Client may want to be notified when the number of voices on the
6429                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
6430  </p>  </p>
6431  <p></p>  <p>
6432                        </p>
6433  <blockquote class="text">  <blockquote class="text">
6434  <p>SUBSCRIBE VOICE_COUNT  <p>SUBSCRIBE VOICE_COUNT
6435  </p>  </p>
6436  </blockquote>  </blockquote><p>
6437                    
6438    </p>
6439  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
6440  </p>  </p>
6441  <p></p>  <p>
6442                        </p>
6443  <blockquote class="text">  <blockquote class="text">
6444  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;
6445  </p>  </p>
6446  </blockquote>  </blockquote><p>
6447                    
6448    </p>
6449  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the
6450                  voice count change occurred and &lt;voices&gt; by the new number of                  voice count change occurred and &lt;voices&gt; by the new number of
6451                  active voices on that channel.                  active voices on that channel.
6452  </p>  </p>
6453  <a name="rfc.section.7.3"></a><h4><a name="SUBSCRIBE STREAM_COUNT">7.3</a>&nbsp;Number of active disk streams changed</h4>  <a name="SUBSCRIBE STREAM_COUNT"></a><br /><hr />
6454    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6455    <a name="rfc.section.8.3"></a><h3>8.3.&nbsp;Number of active disk streams changed</h3>
6456    
6457  <p>Client may want to be notified when the number of streams on the back-end  <p>Client may want to be notified when the number of streams on the back-end
6458                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT
6459  </p>  </p>
6460  <p></p>  <p>
6461                        </p>
6462  <blockquote class="text">  <blockquote class="text">
6463  <p>SUBSCRIBE STREAM_COUNT  <p>SUBSCRIBE STREAM_COUNT
6464  </p>  </p>
6465  </blockquote>  </blockquote><p>
6466                    
6467    </p>
6468  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
6469  </p>  </p>
6470  <p></p>  <p>
6471                        </p>
6472  <blockquote class="text">  <blockquote class="text">
6473  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"
6474  </p>  </p>
6475  </blockquote>  </blockquote><p>
6476                    
6477    </p>
6478  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the
6479                  stream count change occurred and &lt;streams&gt; by the new number of                  stream count change occurred and &lt;streams&gt; by the new number of
6480                  active disk streams on that channel.                  active disk streams on that channel.
6481  </p>  </p>
6482  <a name="rfc.section.7.4"></a><h4><a name="SUBSCRIBE BUFFER_FILL">7.4</a>&nbsp;Disk stream buffer fill state changed</h4>  <a name="SUBSCRIBE BUFFER_FILL"></a><br /><hr />
6483    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6484    <a name="rfc.section.8.4"></a><h3>8.4.&nbsp;Disk stream buffer fill state changed</h3>
6485    
6486  <p>Client may want to be notified when the buffer fill state of a disk stream  <p>Client may want to be notified when the buffer fill state of a disk stream
6487                  on the back-end changes by issuing the following command:                  on the back-end changes by issuing the following command:
6488  </p>  </p>
6489  <p></p>  <p>
6490                        </p>
6491  <blockquote class="text">  <blockquote class="text">
6492  <p>SUBSCRIBE BUFFER_FILL  <p>SUBSCRIBE BUFFER_FILL
6493  </p>  </p>
6494  </blockquote>  </blockquote><p>
6495                    
6496    </p>
6497  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
6498  </p>  </p>
6499  <p></p>  <p>
6500                        </p>
6501  <blockquote class="text">  <blockquote class="text">
6502  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"
6503  </p>  </p>
6504  </blockquote>  </blockquote><p>
6505                    
6506    </p>
6507  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the
6508                  buffer fill state change occurred on and &lt;fill-data&gt; will be replaced by the                  buffer fill state change occurred on and &lt;fill-data&gt; will be replaced by the
6509                  buffer fill data for this channel as described in <a class="info" href="#GET CHANNEL BUFFER_FILL">Section 5.4.13<span>Current fill state of disk stream buffers</span></a>                  buffer fill data for this channel as described in <a class="info" href="#GET CHANNEL BUFFER_FILL">Section&nbsp;6.4.13<span> (</span><span class="info">Current fill state of disk stream buffers</span><span>)</span></a>
6510                  as if the <a class="info" href="#GET CHANNEL BUFFER_FILL">"GET CHANNEL BUFFER_FILL PERCENTAGE"<span>Current fill state of disk stream buffers</span></a> command was issued on this channel.                  as if the <a class="info" href="#GET CHANNEL BUFFER_FILL">"GET CHANNEL BUFFER_FILL PERCENTAGE"<span> (</span><span class="info">Current fill state of disk stream buffers</span><span>)</span></a> command was issued on this channel.
6511  </p>  </p>
6512  <a name="rfc.section.7.5"></a><h4><a name="SUBSCRIBE INFO">7.5</a>&nbsp;Channel information changed</h4>  <a name="SUBSCRIBE INFO"></a><br /><hr />
6513    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6514    <a name="rfc.section.8.5"></a><h3>8.5.&nbsp;Channel information changed</h3>
6515    
6516  <p>Client may want to be notified when changes were made to sampler channels on the  <p>Client may want to be notified when changes were made to sampler channels on the
6517                  back-end changes by issuing the following command:                  back-end by issuing the following command:
6518  </p>  </p>
6519  <p></p>  <p>
6520                        </p>
6521  <blockquote class="text">  <blockquote class="text">
6522  <p>SUBSCRIBE CHANNEL_INFO  <p>SUBSCRIBE CHANNEL_INFO
6523  </p>  </p>
6524  </blockquote>  </blockquote><p>
6525                    
6526    </p>
6527  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
6528  </p>  </p>
6529  <p></p>  <p>
6530                        </p>
6531  <blockquote class="text">  <blockquote class="text">
6532  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"
6533  </p>  </p>
6534  </blockquote>  </blockquote><p>
6535                    
6536    </p>
6537  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the  <p>where &lt;sampler-channel&gt; will be replaced by the sampler channel the
6538                  channel info change occurred. The front-end will have to send                  channel info change occurred. The front-end will have to send
6539                  the respective command to actually get the channel info. Because these messages                  the respective command to actually get the channel info. Because these messages
# Line 4207  Intellectual Property and Copyright Stat Line 6541  Intellectual Property and Copyright Stat
6541                  time events happening on the server, it is believed that an empty notification                  time events happening on the server, it is believed that an empty notification
6542                  message is sufficient here.                  message is sufficient here.
6543  </p>  </p>
6544  <a name="rfc.section.7.6"></a><h4><a name="SUBSCRIBE MISCELLANEOUS">7.6</a>&nbsp;Miscellaneous and debugging events</h4>  <a name="SUBSCRIBE TOTAL_VOICE_COUNT"></a><br /><hr />
6545    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6546    <a name="rfc.section.8.6"></a><h3>8.6.&nbsp;Total number of active voices changed</h3>
6547    
6548    <p>Client may want to be notified when the total number of voices on the
6549                    back-end changes by issuing the following command:
6550    </p>
6551    <p>
6552                        </p>
6553    <blockquote class="text">
6554    <p>SUBSCRIBE TOTAL_VOICE_COUNT
6555    </p>
6556    </blockquote><p>
6557                    
6558    </p>
6559    <p>Server will start sending the following notification messages:
6560    </p>
6561    <p>
6562                        </p>
6563    <blockquote class="text">
6564    <p>"NOTIFY:TOTAL_VOICE_COUNT:&lt;voices&gt;
6565    </p>
6566    </blockquote><p>
6567                    
6568    </p>
6569    <p>where &lt;voices&gt; will be replaced by the new number of
6570                    all currently active voices.
6571    </p>
6572    <a name="SUBSCRIBE MISCELLANEOUS"></a><br /><hr />
6573    <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6574    <a name="rfc.section.8.7"></a><h3>8.7.&nbsp;Miscellaneous and debugging events</h3>
6575    
6576  <p>Client may want to be notified of miscellaneous and debugging events occurring at  <p>Client may want to be notified of miscellaneous and debugging events occurring at
6577                  the server by issuing the following command:                  the server by issuing the following command:
6578  </p>  </p>
6579  <p></p>  <p>
6580                        </p>
6581  <blockquote class="text">  <blockquote class="text">
6582  <p>SUBSCRIBE MISCELLANEOUS  <p>SUBSCRIBE MISCELLANEOUS
6583  </p>  </p>
6584  </blockquote>  </blockquote><p>
6585                    
6586    </p>
6587  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
6588  </p>  </p>
6589  <p></p>  <p>
6590                        </p>
6591  <blockquote class="text">  <blockquote class="text">
6592  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"
6593  </p>  </p>
6594  </blockquote>  </blockquote><p>
6595                    
6596    </p>
6597  <p>where &lt;string&gt; will be replaced by whatever data server  <p>where &lt;string&gt; will be replaced by whatever data server
6598                  wants to send to the client. Client MAY display this data to the                  wants to send to the client. Client MAY display this data to the
6599                  user AS IS to facilitate debugging.                  user AS IS to facilitate debugging.
6600  </p>  </p>
6601  <a name="anchor15"></a><br /><hr />  <a name="anchor15"></a><br /><hr />
6602  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6603  <a name="rfc.section.8"></a><h3>8.&nbsp;Security Considerations</h3>  <a name="rfc.section.9"></a><h3>9.&nbsp;Security Considerations</h3>
6604    
6605  <p>As there is so far no method of authentication and authorization  <p>As there is so far no method of authentication and authorization
6606              defined and so not required for a client applications to succeed to              defined and so not required for a client applications to succeed to
# Line 4241  Intellectual Property and Copyright Stat Line 6609  Intellectual Property and Copyright Stat
6609  </p>  </p>
6610  <a name="anchor16"></a><br /><hr />  <a name="anchor16"></a><br /><hr />
6611  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6612  <a name="rfc.section.9"></a><h3>9.&nbsp;Acknowledgments</h3>  <a name="rfc.section.10"></a><h3>10.&nbsp;Acknowledgments</h3>
6613    
6614  <p>This document has benefited greatly from the comments of the  <p>This document has benefited greatly from the comments of the
6615              following people, discussed on the LinuxSampler developer's mailing              following people, discussed on the LinuxSampler developer's mailing
6616              list:              list:
6617  </p>  </p>
6618  <p></p>  <p>
6619                    </p>
6620  <blockquote class="text">  <blockquote class="text">
6621  <p>Rui Nuno Capela  <p>Rui Nuno Capela
6622  </p>  </p>
# Line 4255  Intellectual Property and Copyright Stat Line 6624  Intellectual Property and Copyright Stat
6624  </p>  </p>
6625  <p>Mark Knecht  <p>Mark Knecht
6626  </p>  </p>
6627  </blockquote>  <p>Grigor Iliev
6628    </p>
6629    </blockquote><p>
6630                
6631    </p>
6632  <a name="rfc.references1"></a><br /><hr />  <a name="rfc.references1"></a><br /><hr />
6633  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>  <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
6634  <h3>10&nbsp;References</h3>  <h3>11.&nbsp;References</h3>
6635  <table width="99%" border="0">  <table width="99%" border="0">
6636  <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>
6637  <td class="author-text"><a href="mailto:sob@harvard.edu">Bradner, S.</a>, "<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">Key words for use in RFCs to Indicate Requirement Levels</a>", BCP 14, RFC 2119, March 1997 (<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">TXT</a>, <a href="http://xml.resource.org/public/rfc/html/rfc2119.html">HTML</a>, <a href="http://xml.resource.org/public/rfc/xml/rfc2119.xml">XML</a>).</td></tr>  <td class="author-text">Bradner, S., &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">Key words for use in RFCs to Indicate Requirement Levels</a>,&rdquo; RFC&nbsp;2119, 1997.</td></tr>
6638    <tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td>
6639    <td class="author-text">Crocker, D. and P. Overell, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc2234.txt">Augmented BNF for Syntax Specifications</a>,&rdquo; RFC&nbsp;2234, 1997.</td></tr>
6640    <tr><td class="author-text" valign="top"><a name="RFC793">[RFC793]</a></td>
6641    <td class="author-text">Defense Advanced Research Projects Agency, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc793.txt">TRANSMISSION CONTROL PROTOCOL</a>,&rdquo; RFC&nbsp;793, 1981.</td></tr>
6642  </table>  </table>
6643    
6644  <a name="rfc.authors"></a><br /><hr />  <a name="rfc.authors"></a><br /><hr />
# Line 4280  Schoenebeck</td></tr> Line 6656  Schoenebeck</td></tr>
6656  <td class="author-text">74081 Heilbronn</td></tr>  <td class="author-text">74081 Heilbronn</td></tr>
6657  <tr><td class="author-text">&nbsp;</td>  <tr><td class="author-text">&nbsp;</td>
6658  <td class="author-text">Germany</td></tr>  <td class="author-text">Germany</td></tr>
6659  <tr><td class="author" align="right">EMail:&nbsp;</td>  <tr><td class="author" align="right">Email:&nbsp;</td>
6660  <td class="author-text"><a href="mailto:schoenebeck at software minus engineering dot org">schoenebeck at software minus engineering dot org</a></td></tr>  <td class="author-text"><a href="mailto:schoenebeck at software minus engineering dot org">schoenebeck at software minus engineering dot org</a></td></tr>
6661  </table>  </table>
6662  <a name="rfc.copyright"></a><br /><hr />  <a name="rfc.copyright"></a><br /><hr />
# Line 4295  under such rights might or might not be Line 6671  under such rights might or might not be
6671  it represent that it has made any effort to identify any such  it represent that it has made any effort to identify any such
6672  rights. Information on the IETF's procedures with respect to  rights. Information on the IETF's procedures with respect to
6673  rights in standards-track and standards-related documentation  rights in standards-track and standards-related documentation
6674  can be found in BCP-11. Copies of claims of rights made  can be found in BCP&nbsp;11. Copies of claims of rights made
6675  available for publication and any assurances of licenses to  available for publication and any assurances of licenses to
6676  be made available, or the result of an attempt made  be made available, or the result of an attempt made
6677  to obtain a general license or permission for the use of such  to obtain a general license or permission for the use of such
# Line 4309  required to practice this standard. Plea Line 6685  required to practice this standard. Plea
6685  information to the IETF Executive Director.</p>  information to the IETF Executive Director.</p>
6686  <h3>Full Copyright Statement</h3>  <h3>Full Copyright Statement</h3>
6687  <p class='copyright'>  <p class='copyright'>
6688  Copyright (C) The Internet Society (2005). All Rights Reserved.</p>  Copyright &copy; The Internet Society (2006). All Rights Reserved.</p>
6689  <p class='copyright'>  <p class='copyright'>
6690  This document and translations of it may be copied and furnished to  This document and translations of it may be copied and furnished to
6691  others, and derivative works that comment on or otherwise explain it  others, and derivative works that comment on or otherwise explain it
# Line 4329  The limited permissions granted above ar Line 6705  The limited permissions granted above ar
6705  revoked by the Internet Society or its successors or assignees.</p>  revoked by the Internet Society or its successors or assignees.</p>
6706  <p class='copyright'>  <p class='copyright'>
6707  This document and the information contained herein is provided on an  This document and the information contained herein is provided on an
6708  &quot;AS IS&quot; basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING  &ldquo;AS IS&rdquo; basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
6709  TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING  TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
6710  BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION  BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
6711  HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF  HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF

Legend:
Removed from v.558  
changed lines
  Added in v.945

  ViewVC Help
Powered by ViewVC