/[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 708 by schoenebeck, Thu Jul 21 09:18:40 2005 UTC revision 1390 by schoenebeck, Sun Oct 7 14:07:48 2007 UTC
# Line 1  Line 1 
1  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2  <html lang="en"><head><title>LinuxSampler Control Protocol</title>  <html lang="en"><head><title>LinuxSampler Control Protocol (draft)</title>
3  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4  <meta name="description" content="LinuxSampler Control Protocol">  <meta name="description" content="LinuxSampler Control Protocol (draft)">
5  <meta name="keywords" content="LSCP">  <meta name="keywords" content="LSCP">
6  <meta name="generator" content="xml2rfc v1.29 (http://xml.resource.org/)">  <meta name="generator" content="xml2rfc v1.32 (http://xml.resource.org/)">
7  <style type='text/css'>  <style type='text/css'><!--
8  <!--          body {
9      body {                  font-family: verdana, charcoal, helvetica, arial, sans-serif;
10          font-family: verdana, charcoal, helvetica, arial, sans-serif;                  font-size: small; color: #000; background-color: #FFF;
11          margin: 2em;                  margin: 2em;
12          font-size: small ; color: #000000 ; background-color: #ffffff ; }          }
13      .title { color: #990000; font-size: x-large ;          h1, h2, h3, h4, h5, h6 {
14          font-weight: bold; text-align: right;                  font-family: helvetica, monaco, "MS Sans Serif", arial, sans-serif;
15          font-family: helvetica, monaco, "MS Sans Serif", arial, sans-serif;                  font-weight: bold; font-style: normal;
16          background-color: transparent; }          }
17      .filename { color: #666666; font-size: 18px; line-height: 28px;          h1 { color: #900; background-color: transparent; text-align: right; }
18          font-weight: bold; text-align: right;          h3 { color: #333; background-color: transparent; }
19          font-family: helvetica, arial, sans-serif;  
20          background-color: transparent; }          td.RFCbug {
21      td.rfcbug { background-color: #000000 ; width: 30px ; height: 30px ;                  font-size: x-small; text-decoration: none;
22          text-align: justify; vertical-align: middle ; padding-top: 2px ; }                  width: 30px; height: 30px; padding-top: 2px;
23      td.rfcbug span.RFC { color: #666666; font-weight: bold; text-decoration: none;                  text-align: justify; vertical-align: middle;
24          background-color: #000000 ;                  background-color: #000;
25          font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;          }
26          font-size: x-small ; }          td.RFCbug span.RFC {
27      td.rfcbug span.hotText { color: #ffffff; font-weight: normal; text-decoration: none;                  font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;
28          text-align: center ;                  font-weight: bold; color: #666;
29          font-family: charcoal, monaco, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;          }
30          font-size: x-small ; background-color: #000000; }          td.RFCbug span.hotText {
31  /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */                  font-family: charcoal, monaco, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;
32      div#counter{margin-top: 100px}                  font-weight: normal; text-align: center; color: #FFF;
33            }
34      a.info{  
35          position:relative; /*this is the key*/          table.TOCbug { width: 30px; height: 15px; }
36          z-index:24;          td.TOCbug {
37          text-decoration:none}                  text-align: center; width: 30px; height: 15px;
38                    color: #FFF; background-color: #900;
39      a.info:hover{z-index:25; background-color:#990000 ; color: #ffffff ;}          }
40            td.TOCbug a {
41      a.info span{display: none}                  font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, sans-serif;
42                    font-weight: bold; font-size: x-small; text-decoration: none;
43      a.info:hover span.info{ /*the span will display just on :hover state*/                  color: #FFF; background-color: transparent;
44          display:block;          }
45          position:absolute;  
46          font-size: smaller ;          td.header {
47          top:2em; left:2em; width:15em;                  font-family: arial, helvetica, sans-serif; font-size: x-small;
48          padding: 2px ;                  vertical-align: top; width: 33%;
49          border:1px solid #333333;                  color: #FFF; background-color: #666;
50          background-color:#eeeeee; color:#990000;          }
51          text-align: left ;}          td.author { font-weight: bold; font-size: x-small; margin-left: 4em; }
52            td.author-text { font-size: x-small; }
53       A { font-weight: bold; }  
54       A:link { color: #990000; background-color: transparent ; }          /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */
55       A:visited { color: #333333; background-color: transparent ; }          a.info {
56       A:active { color: #333333; background-color: transparent ; }                  /* This is the key. */
57                    position: relative;
58      p { margin-left: 2em; margin-right: 2em; }                  z-index: 24;
59      p.copyright { font-size: x-small ; }                  text-decoration: none;
60      p.toc { font-size: small ; font-weight: bold ; margin-left: 3em ;}          }
61            a.info:hover {
62      span.emph { font-style: italic; }                  z-index: 25;
63      span.strong { font-weight: bold; }                  color: #FFF; background-color: #900;
64      span.verb, span.vbare { font-family: "Courier New", Courier, monospace ; }          }
65            a.info span { display: none; }
66      span.vemph { font-style: italic; font-family: "Courier New", Courier, monospace ; }          a.info:hover span.info {
67      span.vstrong { font-weight: bold; font-family: "Courier New", Courier, monospace ; }                  /* The span will display just on :hover state. */
68      span.vdeluxe { font-weight: bold; font-style: italic; font-family: "Courier New", Courier, monospace ; }                  display: block;
69                    position: absolute;
70      ol.text { margin-left: 2em; margin-right: 2em; }                  font-size: smaller;
71      ul.text { margin-left: 2em; margin-right: 2em; }                  top: 2em; left: -5em; width: 15em;
72      li { margin-left: 3em;  }                  padding: 2px; border: 1px solid #333;
73                    color: #900; background-color: #EEE;
74      pre { margin-left: 3em; color: #333333;  background-color: transparent;                  text-align: left;
         font-family: "Courier New", Courier, monospace ; font-size: small ;  
         text-align: left;  
75          }          }
76    
77      h3 { color: #333333; font-size: medium ;          a { font-weight: bold; }
78          font-family: helvetica, arial, sans-serif ;          a:link    { color: #900; background-color: transparent; }
79          background-color: transparent; }          a:visited { color: #633; background-color: transparent; }
80      h4 { font-size: small; font-family: helvetica, arial, sans-serif ; }          a:active  { color: #633; background-color: transparent; }
81    
82      table.bug { width: 30px ; height: 15px ; }          p { margin-left: 2em; margin-right: 2em; }
83      td.bug { color: #ffffff ; background-color: #990000 ;          p.copyright { font-size: x-small; }
84          text-align: center ; width: 30px ; height: 15px ;          p.toc { font-size: small; font-weight: bold; margin-left: 3em; }
85           }          table.toc { margin: 0 0 0 3em; padding: 0; border: 0; vertical-align: text-top; }
86      td.bug A.link2 { color: #ffffff ; font-weight: bold;          td.toc { font-size: small; font-weight: bold; vertical-align: text-top; }
87          text-decoration: none;  
88          font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, sans-serif;          ol.text { margin-left: 2em; margin-right: 2em; }
89          font-size: x-small ; background-color: transparent }          ul.text { margin-left: 2em; margin-right: 2em; }
90            li      { margin-left: 3em; }
91      td.header { color: #ffffff; font-size: x-small ;  
92          font-family: arial, helvetica, sans-serif; vertical-align: top;          /* RFC-2629 <spanx>s and <artwork>s. */
93          background-color: #666666 ; width: 33% ; }          em     { font-style: italic; }
94      td.author { font-weight: bold; margin-left: 4em; font-size: x-small ; }          strong { font-weight: bold; }
95      td.author-text { font-size: x-small; }          dfn    { font-weight: bold; font-style: normal; }
96      table.data { vertical-align: top ; border-collapse: collapse ;          cite   { font-weight: normal; font-style: normal; }
97          border-style: solid solid solid solid ;          tt     { color: #036; }
98          border-color: black black black black ;          tt, pre, pre dfn, pre em, pre cite, pre span {
99          font-size: small ; text-align: center ; }                  font-family: "Courier New", Courier, monospace; font-size: small;
100      table.data th { font-weight: bold ;          }
101          border-style: solid solid solid solid ;          pre {
102          border-color: black black black black ; }                  text-align: left; padding: 4px;
103      table.data td {                  color: #000; background-color: #CCC;
104          border-style: solid solid solid solid ;          }
105          border-color: #333333 #333333 #333333 #333333 ; }          pre dfn  { color: #900; }
106            pre em   { color: #66F; background-color: #FFC; font-weight: normal; }
107      hr { height: 1px }          pre .key { color: #33C; font-weight: bold; }
108  -->          pre .id  { color: #900; }
109  </style>          pre .str { color: #000; background-color: #CFF; }
110            pre .val { color: #066; }
111            pre .rep { color: #909; }
112            pre .oth { color: #000; background-color: #FCF; }
113            pre .err { background-color: #FCC; }
114    
115            /* RFC-2629 <texttable>s. */
116            table.all, table.full, table.headers, table.none {
117                    font-size: small; text-align: center; border-width: 2px;
118                    vertical-align: top; border-collapse: collapse;
119            }
120            table.all, table.full { border-style: solid; border-color: black; }
121            table.headers, table.none { border-style: none; }
122            th {
123                    font-weight: bold; border-color: black;
124                    border-width: 2px 2px 3px 2px;
125            }
126            table.all th, table.full th { border-style: solid; }
127            table.headers th { border-style: none none solid none; }
128            table.none th { border-style: none; }
129            table.all td {
130                    border-style: solid; border-color: #333;
131                    border-width: 1px 2px;
132            }
133            table.full td, table.headers td, table.none td { border-style: none; }
134    
135            hr { height: 1px; }
136            hr.insert {
137                    width: 80%; border-style: none; border-width: 0;
138                    color: #CCC; background-color: #CCC;
139            }
140    --></style>
141  </head>  </head>
142  <body>  <body>
143  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
144  <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">
145  <tr><td class="header">LinuxSampler Developers</td><td class="header">C. Schoenebeck</td></tr>  <tr><td class="header">LinuxSampler Developers</td><td class="header">C. Schoenebeck</td></tr>
146  <tr><td class="header">Internet-Draft</td><td class="header">Interessengemeinschaft Software</td></tr>  <tr><td class="header">Internet-Draft</td><td class="header">Interessengemeinschaft Software</td></tr>
147  <tr><td class="header">Expires: November 2, 2005</td><td class="header">Engineering e. V.</td></tr>  <tr><td class="header">Intended status: Standards Track</td><td class="header">Engineering e. V.</td></tr>
148  <tr><td class="header">&nbsp;</td><td class="header">May 2005</td></tr>  <tr><td class="header">Expires: April 9, 2008</td><td class="header">October 7, 2007</td></tr>
149  </table></td></tr></table>  </table></td></tr></table>
150  <div align="right"><span class="title"><br />LinuxSampler Control Protocol</span></div>  <h1><br />LinuxSampler Control Protocol (draft)<br />LSCP 1.2cvs</h1>
 <div align="right"><span class="title"><br />LSCP 1.1</span></div>  
151    
152  <h3>Status of this Memo</h3>  <h3>Status of this Memo</h3>
153  <p>  <p>
154  This document is an Internet-Draft and is  By submitting this Internet-Draft,
155  in full conformance with all provisions of Section&nbsp;10 of RFC&nbsp;2026.</p>  each author represents that any applicable patent or other IPR claims of which
156    he or she is aware have been or will be disclosed,
157    and any of which he or she becomes aware will be disclosed,
158    in accordance with Section&nbsp;6 of BCP&nbsp;79.</p>
159  <p>  <p>
160  Internet-Drafts are working documents of the Internet Engineering  Internet-Drafts are working documents of the Internet Engineering
161  Task Force (IETF), its areas, and its working groups.  Task Force (IETF), its areas, and its working groups.
# Line 142  The list of current Internet-Drafts can Line 173  The list of current Internet-Drafts can
173  The list of Internet-Draft Shadow Directories can be accessed at  The list of Internet-Draft Shadow Directories can be accessed at
174  <a href='http://www.ietf.org/shadow.html'>http://www.ietf.org/shadow.html</a>.</p>  <a href='http://www.ietf.org/shadow.html'>http://www.ietf.org/shadow.html</a>.</p>
175  <p>  <p>
176  This Internet-Draft will expire on November 2, 2005.</p>  This Internet-Draft will expire on April 9, 2008.</p>
177    
178  <h3>Copyright Notice</h3>  <h3>Copyright Notice</h3>
179  <p>  <p>
180  Copyright &copy; The Internet Society (2005). All Rights Reserved.</p>  Copyright &copy; The IETF Trust (2007).</p>
181    
182  <h3>Abstract</h3>  <h3>Abstract</h3>
183    
# Line 169  Introduction<br /> Line 200  Introduction<br />
200  Focus of this protocol<br />  Focus of this protocol<br />
201  <a href="#anchor4">5.</a>&nbsp;  <a href="#anchor4">5.</a>&nbsp;
202  Communication Overview<br />  Communication Overview<br />
203  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">5.1.</a>&nbsp;
204  Request/response communication method<br />  Request/response communication method<br />
205  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor6">5.1.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor6">5.1.1.</a>&nbsp;
206  Result format<br />  Result format<br />
207  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">5.2.</a>&nbsp;
208  Subscribe/notify communication method<br />  Subscribe/notify communication method<br />
209  <a href="#control_commands">6.</a>&nbsp;  <a href="#control_commands">6.</a>&nbsp;
210  Description for control commands<br />  Description for control commands<br />
211  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor8">6.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor8">6.1.</a>&nbsp;
212  Ignored lines and comments<br />  Ignored lines and comments<br />
213  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">6.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">6.2.</a>&nbsp;
214  Configuring audio drivers<br />  Configuring audio drivers<br />
215  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.1.</a>&nbsp;
216  Getting amount of available audio output drivers<br />  Getting amount of available audio output drivers<br />
217  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.2.</a>&nbsp;
218  Getting all available audio output drivers<br />  Getting all available audio output drivers<br />
219  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER INFO">6.2.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER INFO">6.2.3.</a>&nbsp;
220  Getting information about a specific audio  Getting information about a specific audio
221                  output driver<br />                  output driver<br />
222  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">6.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;
223  Getting information about specific audio  Getting information about specific audio
224                  output driver parameter<br />                  output driver parameter<br />
225  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE AUDIO_OUTPUT_DEVICE">6.2.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE AUDIO_OUTPUT_DEVICE">6.2.5.</a>&nbsp;
226  Creating an audio output device<br />  Creating an audio output device<br />
227  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY AUDIO_OUTPUT_DEVICE">6.2.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY AUDIO_OUTPUT_DEVICE">6.2.6.</a>&nbsp;
228  Destroying an audio output device<br />  Destroying an audio output device<br />
229  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICES">6.2.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICES">6.2.7.</a>&nbsp;
230  Getting all created audio output device count<br />  Getting all created audio output device count<br />
231  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AUDIO_OUTPUT_DEVICES">6.2.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AUDIO_OUTPUT_DEVICES">6.2.8.</a>&nbsp;
232  Getting all created audio output device list<br />  Getting all created audio output device list<br />
233  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICE INFO">6.2.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICE INFO">6.2.9.</a>&nbsp;
234  Getting current settings of an audio output device<br />  Getting current settings of an audio output device<br />
235  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_DEVICE_PARAMETER">6.2.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_DEVICE_PARAMETER">6.2.10.</a>&nbsp;
236  Changing settings of audio output devices<br />  Changing settings of audio output devices<br />
237  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL INFO">6.2.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL INFO">6.2.11.</a>&nbsp;
238  Getting information about an audio channel<br />  Getting information about an audio channel<br />
239  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">6.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;
240  Getting information about specific audio channel parameter<br />  Getting information about specific audio channel parameter<br />
241  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_CHANNEL_PARAMETER">6.2.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_CHANNEL_PARAMETER">6.2.13.</a>&nbsp;
242  Changing settings of audio output channels<br />  Changing settings of audio output channels<br />
243  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">6.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">6.3.</a>&nbsp;
244  Configuring MIDI input drivers<br />  Configuring MIDI input drivers<br />
245  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_MIDI_INPUT_DRIVERS">6.3.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_MIDI_INPUT_DRIVERS">6.3.1.</a>&nbsp;
246  Getting amount of available MIDI input drivers<br />  Getting amount of available MIDI input drivers<br />
247  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">6.3.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">6.3.2.</a>&nbsp;
248  Getting all available MIDI input drivers<br />  Getting all available MIDI input drivers<br />
249  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER INFO">6.3.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER INFO">6.3.3.</a>&nbsp;
250  Getting information about a specific MIDI input driver<br />  Getting information about a specific MIDI input driver<br />
251  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER_PARAMETER INFO">6.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;
252  Getting information about specific MIDI input driver parameter<br />  Getting information about specific MIDI input driver parameter<br />
253  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE MIDI_INPUT_DEVICE">6.3.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE MIDI_INPUT_DEVICE">6.3.5.</a>&nbsp;
254  Creating a MIDI input device<br />  Creating a MIDI input device<br />
255  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY MIDI_INPUT_DEVICE">6.3.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY MIDI_INPUT_DEVICE">6.3.6.</a>&nbsp;
256  Destroying a MIDI input device<br />  Destroying a MIDI input device<br />
257  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICES">6.3.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICES">6.3.7.</a>&nbsp;
258  Getting all created MIDI input device count<br />  Getting all created MIDI input device count<br />
259  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INPUT_DEVICES">6.3.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INPUT_DEVICES">6.3.8.</a>&nbsp;
260  Getting all created MIDI input device list<br />  Getting all created MIDI input device list<br />
261  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICE INFO">6.3.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICE INFO">6.3.9.</a>&nbsp;
262  Getting current settings of a MIDI input device<br />  Getting current settings of a MIDI input device<br />
263  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_DEVICE_PARAMETER">6.3.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_DEVICE_PARAMETER">6.3.10.</a>&nbsp;
264  Changing settings of MIDI input devices<br />  Changing settings of MIDI input devices<br />
265  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT INFO">6.3.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT INFO">6.3.11.</a>&nbsp;
266  Getting information about a MIDI port<br />  Getting information about a MIDI port<br />
267  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT_PARAMETER INFO">6.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;
268  Getting information about specific MIDI port parameter<br />  Getting information about specific MIDI port parameter<br />
269  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_PORT_PARAMETER">6.3.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_PORT_PARAMETER">6.3.13.</a>&nbsp;
270  Changing settings of MIDI input ports<br />  Changing settings of MIDI input ports<br />
271  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">6.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">6.4.</a>&nbsp;
272  Configuring sampler channels<br />  Configuring sampler channels<br />
273  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD INSTRUMENT">6.4.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD INSTRUMENT">6.4.1.</a>&nbsp;
274  Loading an instrument<br />  Loading an instrument<br />
275  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD ENGINE">6.4.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD ENGINE">6.4.2.</a>&nbsp;
276  Loading a sampler engine<br />  Loading a sampler engine<br />
277  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNELS">6.4.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNELS">6.4.3.</a>&nbsp;
278  Getting all created sampler channel count<br />  Getting all created sampler channel count<br />
279  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST CHANNELS">6.4.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST CHANNELS">6.4.4.</a>&nbsp;
280  Getting all created sampler channel list<br />  Getting all created sampler channel list<br />
281  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD CHANNEL">6.4.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD CHANNEL">6.4.5.</a>&nbsp;
282  Adding a new sampler channel<br />  Adding a new sampler channel<br />
283  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE CHANNEL">6.4.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE CHANNEL">6.4.6.</a>&nbsp;
284  Removing a sampler channel<br />  Removing a sampler channel<br />
285  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_ENGINES">6.4.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_ENGINES">6.4.7.</a>&nbsp;
286  Getting amount of available engines<br />  Getting amount of available engines<br />
287  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_ENGINES">6.4.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_ENGINES">6.4.8.</a>&nbsp;
288  Getting all available engines<br />  Getting all available engines<br />
289  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET ENGINE INFO">6.4.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET ENGINE INFO">6.4.9.</a>&nbsp;
290  Getting information about an engine<br />  Getting information about an engine<br />
291  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL INFO">6.4.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL INFO">6.4.10.</a>&nbsp;
292  Getting sampler channel information<br />  Getting sampler channel information<br />
293  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL VOICE_COUNT">6.4.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL VOICE_COUNT">6.4.11.</a>&nbsp;
294  Current number of active voices<br />  Current number of active voices<br />
295  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL STREAM_COUNT">6.4.12</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL STREAM_COUNT">6.4.12.</a>&nbsp;
296  Current number of active disk streams<br />  Current number of active disk streams<br />
297  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL BUFFER_FILL">6.4.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL BUFFER_FILL">6.4.13.</a>&nbsp;
298  Current fill state of disk stream buffers<br />  Current fill state of disk stream buffers<br />
299  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_DEVICE">6.4.14</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_DEVICE">6.4.14.</a>&nbsp;
300  Setting audio output device<br />  Setting audio output device<br />
301  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_TYP">6.4.15</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_TYPE">6.4.15.</a>&nbsp;
302  Setting audio output type<br />  Setting audio output type<br />
303  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_CHANNEL">6.4.16</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_CHANNEL">6.4.16.</a>&nbsp;
304  Setting audio output channel<br />  Setting audio output channel<br />
305  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_DEVICE">6.4.17</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_DEVICE">6.4.17.</a>&nbsp;
306  Setting MIDI input device<br />  Setting MIDI input device<br />
307  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_TYPE">6.4.18</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_TYPE">6.4.18.</a>&nbsp;
308  Setting MIDI input type<br />  Setting MIDI input type<br />
309  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_PORT">6.4.19</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_PORT">6.4.19.</a>&nbsp;
310  Setting MIDI input port<br />  Setting MIDI input port<br />
311  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_CHANNEL">6.4.20</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_CHANNEL">6.4.20.</a>&nbsp;
312  Setting MIDI input channel<br />  Setting MIDI input channel<br />
313  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL VOLUME">6.4.21</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL VOLUME">6.4.21.</a>&nbsp;
314  Setting channel volume<br />  Setting channel volume<br />
315  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MUTE">6.4.22</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MUTE">6.4.22.</a>&nbsp;
316  Muting a sampler channel<br />  Muting a sampler channel<br />
317  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL SOLO">6.4.23</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL SOLO">6.4.23.</a>&nbsp;
318  Soloing a sampler channel<br />  Soloing a sampler channel<br />
319  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.24</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INSTRUMENT_MAP">6.4.24.</a>&nbsp;
320    Assigning a MIDI instrument map to a sampler channel<br />
321    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE FX_SEND">6.4.25.</a>&nbsp;
322    Adding an effect send to a sampler channel<br />
323    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY FX_SEND">6.4.26.</a>&nbsp;
324    Removing an effect send from a sampler channel<br />
325    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FX_SENDS">6.4.27.</a>&nbsp;
326    Getting amount of effect sends on a sampler channel<br />
327    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST FX_SENDS">6.4.28.</a>&nbsp;
328    Listing all effect sends on a sampler channel<br />
329    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FX_SEND INFO">6.4.29.</a>&nbsp;
330    Getting effect send information<br />
331    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND NAME">6.4.30.</a>&nbsp;
332    Changing effect send's name<br />
333    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND AUDIO_OUTPUT_CHANNEL">6.4.31.</a>&nbsp;
334    Altering effect send's audio routing<br />
335    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND MIDI_CONTROLLER">6.4.32.</a>&nbsp;
336    Altering effect send's MIDI controller<br />
337    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND LEVEL">6.4.33.</a>&nbsp;
338    Altering effect send's send level<br />
339    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.34.</a>&nbsp;
340  Resetting a sampler channel<br />  Resetting a sampler channel<br />
341  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5.</a>&nbsp;
342  Controlling connection<br />  Controlling connection<br />
343  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">6.5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">6.5.1.</a>&nbsp;
344  Register front-end for receiving event messages<br />  Register front-end for receiving event messages<br />
345  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">6.5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">6.5.2.</a>&nbsp;
346  Unregister front-end for not receiving event messages<br />  Unregister front-end for not receiving event messages<br />
347  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">6.5.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">6.5.3.</a>&nbsp;
348  Enable or disable echo of commands<br />  Enable or disable echo of commands<br />
349  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">6.5.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">6.5.4.</a>&nbsp;
350  Close client connection<br />  Close client connection<br />
351  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">6.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">6.6.</a>&nbsp;
352  Global commands<br />  Global commands<br />
353  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT">6.6.1.</a>&nbsp;
354    Current number of active voices<br />
355    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT_MAX">6.6.2.</a>&nbsp;
356    Maximum amount of active voices<br />
357    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.3.</a>&nbsp;
358  Reset sampler<br />  Reset sampler<br />
359  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET SERVER INFO">6.6.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET SERVER INFO">6.6.4.</a>&nbsp;
360  General sampler informations<br />  General sampler informations<br />
361    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET VOLUME">6.6.5.</a>&nbsp;
362    Getting global volume attenuation<br />
363    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET VOLUME">6.6.6.</a>&nbsp;
364    Setting global volume attenuation<br />
365    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#MIDI Instrument Mapping">6.7.</a>&nbsp;
366    MIDI Instrument Mapping<br />
367    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD MIDI_INSTRUMENT_MAP">6.7.1.</a>&nbsp;
368    Create a new MIDI instrument map<br />
369    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE MIDI_INSTRUMENT_MAP">6.7.2.</a>&nbsp;
370    Delete one particular or all MIDI instrument maps<br />
371    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAPS">6.7.3.</a>&nbsp;
372    Get amount of existing MIDI instrument maps<br />
373    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENT_MAPS">6.7.4.</a>&nbsp;
374    Getting all created MIDI instrument maps<br />
375    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAP INFO">6.7.5.</a>&nbsp;
376    Getting MIDI instrument map information<br />
377    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INSTRUMENT_MAP NAME">6.7.6.</a>&nbsp;
378    Renaming a MIDI instrument map<br />
379    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MAP MIDI_INSTRUMENT">6.7.7.</a>&nbsp;
380    Create or replace a MIDI instrument map entry<br />
381    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENTS">6.7.8.</a>&nbsp;
382    Getting ammount of MIDI instrument map entries<br />
383    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENTS">6.7.9.</a>&nbsp;
384    Getting indeces of all entries of a MIDI instrument map<br />
385    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNMAP MIDI_INSTRUMENT">6.7.10.</a>&nbsp;
386    Remove an entry from the MIDI instrument map<br />
387    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT INFO">6.7.11.</a>&nbsp;
388    Get current settings of MIDI instrument map entry<br />
389    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CLEAR MIDI_INSTRUMENTS">6.7.12.</a>&nbsp;
390    Clear MIDI instrument map<br />
391    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#Managing Instruments Database">6.8.</a>&nbsp;
392    Managing Instruments Database<br />
393    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD DB_INSTRUMENT_DIRECTORY">6.8.1.</a>&nbsp;
394    Creating a new instrument directory<br />
395    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE DB_INSTRUMENT_DIRECTORY">6.8.2.</a>&nbsp;
396    Deleting an instrument directory<br />
397    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENT_DIRECTORIES">6.8.3.</a>&nbsp;
398    Getting amount of instrument directories<br />
399    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST DB_INSTRUMENT_DIRECTORIES">6.8.4.</a>&nbsp;
400    Listing all directories in specific directory<br />
401    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENT_DIRECTORY INFO">6.8.5.</a>&nbsp;
402    Getting instrument directory information<br />
403    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT_DIRECTORY NAME">6.8.6.</a>&nbsp;
404    Renaming an instrument directory<br />
405    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MOVE DB_INSTRUMENT_DIRECTORY">6.8.7.</a>&nbsp;
406    Moving an instrument directory<br />
407    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#COPY DB_INSTRUMENT_DIRECTORY">6.8.8.</a>&nbsp;
408    Copying instrument directories<br />
409    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT_DIRECTORY DESCRIPTION">6.8.9.</a>&nbsp;
410    Changing the description of directory<br />
411    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FIND DB_INSTRUMENT_DIRECTORIES">6.8.10.</a>&nbsp;
412    Finding directories<br />
413    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD DB_INSTRUMENTS">6.8.11.</a>&nbsp;
414    Adding instruments to the instruments database<br />
415    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE DB_INSTRUMENT">6.8.12.</a>&nbsp;
416    Removing an instrument<br />
417    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENTS">6.8.13.</a>&nbsp;
418    Getting amount of instruments<br />
419    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST DB_INSTRUMENTS">6.8.14.</a>&nbsp;
420    Listing all instruments in specific directory<br />
421    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENT INFO">6.8.15.</a>&nbsp;
422    Getting instrument information<br />
423    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT NAME">6.8.16.</a>&nbsp;
424    Renaming an instrument<br />
425    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MOVE DB_INSTRUMENT">6.8.17.</a>&nbsp;
426    Moving an instrument<br />
427    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#COPY DB_INSTRUMENT">6.8.18.</a>&nbsp;
428    Copying instruments<br />
429    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT DESCRIPTION">6.8.19.</a>&nbsp;
430    Changing the description of instrument<br />
431    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FIND DB_INSTRUMENTS">6.8.20.</a>&nbsp;
432    Finding instruments<br />
433    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENTS_JOB INFO">6.8.21.</a>&nbsp;
434    Getting job status information<br />
435    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FORMAT INSTRUMENTS_DB">6.8.22.</a>&nbsp;
436    Formatting the instruments database<br />
437    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#editing_instruments">6.9.</a>&nbsp;
438    Editing Instruments<br />
439    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#EDIT INSTRUMENT">6.9.1.</a>&nbsp;
440    Opening an appropriate instrument editor application<br />
441  <a href="#command_syntax">7.</a>&nbsp;  <a href="#command_syntax">7.</a>&nbsp;
442  Command Syntax<br />  Command Syntax<br />
443    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#character_set">7.1.</a>&nbsp;
444    Character Set and Escape Sequences<br />
445  <a href="#events">8.</a>&nbsp;  <a href="#events">8.</a>&nbsp;
446  Events<br />  Events<br />
447  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL">8.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT">8.1.</a>&nbsp;
448    Number of audio output devices changed<br />
449    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO">8.2.</a>&nbsp;
450    Audio output device's settings changed<br />
451    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_COUNT">8.3.</a>&nbsp;
452    Number of MIDI input devices changed<br />
453    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_INFO">8.4.</a>&nbsp;
454    MIDI input device's settings changed<br />
455    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_COUNT">8.5.</a>&nbsp;
456  Number of sampler channels changed<br />  Number of sampler channels changed<br />
457  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.6.</a>&nbsp;
458  Number of active voices changed<br />  Number of active voices changed<br />
459  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.7.</a>&nbsp;
460  Number of active disk streams changed<br />  Number of active disk streams changed<br />
461  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.8.</a>&nbsp;
462  Disk stream buffer fill state changed<br />  Disk stream buffer fill state changed<br />
463  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE INFO">8.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_INFO">8.9.</a>&nbsp;
464  Channel information changed<br />  Channel information changed<br />
465  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_COUNT">8.10.</a>&nbsp;
466    Number of effect sends changed<br />
467    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_INFO">8.11.</a>&nbsp;
468    Effect send information changed<br />
469    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_VOICE_COUNT">8.12.</a>&nbsp;
470    Total number of active voices changed<br />
471    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT">8.13.</a>&nbsp;
472    Number of MIDI instrument maps changed<br />
473    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO">8.14.</a>&nbsp;
474    MIDI instrument map information changed<br />
475    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_COUNT">8.15.</a>&nbsp;
476    Number of MIDI instruments changed<br />
477    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_INFO">8.16.</a>&nbsp;
478    MIDI instrument information changed<br />
479    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE GLOBAL_INFO">8.17.</a>&nbsp;
480    Global settings changed<br />
481    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT">8.18.</a>&nbsp;
482    Number of database instrument directories changed<br />
483    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO">8.19.</a>&nbsp;
484    Database instrument directory information changed<br />
485    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_COUNT">8.20.</a>&nbsp;
486    Number of database instruments changed<br />
487    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_INFO">8.21.</a>&nbsp;
488    Database instrument information changed<br />
489    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENTS_JOB_INFO">8.22.</a>&nbsp;
490    Database job status information changed<br />
491    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.23.</a>&nbsp;
492  Miscellaneous and debugging events<br />  Miscellaneous and debugging events<br />
493  <a href="#anchor14">9.</a>&nbsp;  <a href="#anchor14">9.</a>&nbsp;
494  Security Considerations<br />  Security Considerations<br />
# Line 333  Intellectual Property and Copyright Stat Line 504  Intellectual Property and Copyright Stat
504  <br clear="all" />  <br clear="all" />
505    
506  <a name="anchor1"></a><br /><hr />  <a name="anchor1"></a><br /><hr />
507  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
508  <a name="rfc.section.1"></a><h3>1.&nbsp;Requirements notation</h3>  <a name="rfc.section.1"></a><h3>1.&nbsp;
509    Requirements notation</h3>
510    
511  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
512              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
513              and "OPTIONAL" in this document are to be interpreted as              and "OPTIONAL" in this document are to be interpreted as
514              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>.              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>.
515  </p>  </p>
516  <p>This protocol is always case-sensitive if not explicitly  <p>This protocol is always case-sensitive if not explicitly
517              claimed the opposite.              claimed the opposite.
# Line 348  Intellectual Property and Copyright Stat Line 520  Intellectual Property and Copyright Stat
520              (front-end) and server (LinuxSampler) respectively. Lines in              (front-end) and server (LinuxSampler) respectively. Lines in
521              examples must be interpreted as every line being CRLF              examples must be interpreted as every line being CRLF
522              terminated (carriage return character followed by line feed              terminated (carriage return character followed by line feed
523              character as defined in the ASCII standard), thus the following              character as defined in the ASCII standard <a class='info' href='#RFC20'>[RFC20]<span> (</span><span class='info'>UCLA, &ldquo;ASCII format for Network Interchange,&rdquo; 1969.</span><span>)</span></a>),
524              example:              thus the following example:
525  </p>  </p>
526  <p>  <p>
527                  </p>                  </p>
# Line 359  Intellectual Property and Copyright Stat Line 531  Intellectual Property and Copyright Stat
531  <p>&nbsp;&nbsp;&nbsp;"another line"  <p>&nbsp;&nbsp;&nbsp;"another line"
532  </p>  </p>
533  </blockquote><p>  </blockquote><p>
534                
535  </p>  </p>
536  <p>must actually be interpreted as client sending the following  <p>must actually be interpreted as client sending the following
537              message:              message:
# Line 371  Intellectual Property and Copyright Stat Line 543  Intellectual Property and Copyright Stat
543                      line&lt;CR&gt;&lt;LF&gt;"                      line&lt;CR&gt;&lt;LF&gt;"
544  </p>  </p>
545  </blockquote><p>  </blockquote><p>
546                
547  </p>  </p>
548  <p>where &lt;CR&gt; symbolizes the carriage return character and  <p>where &lt;CR&gt; symbolizes the carriage return character and
549              &lt;LF&gt; the line feed character as defined in the ASCII              &lt;LF&gt; the line feed character as defined in the ASCII
# Line 386  Intellectual Property and Copyright Stat Line 558  Intellectual Property and Copyright Stat
558  <p>S: "abcd"  <p>S: "abcd"
559  </p>  </p>
560  </blockquote><p>  </blockquote><p>
561                
562  </p>  </p>
563  <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
564              following sequence scenario:              following sequence scenario:
# Line 409  Intellectual Property and Copyright Stat Line 581  Intellectual Property and Copyright Stat
581                      "&lt;LF&gt;"                      "&lt;LF&gt;"
582  </li>  </li>
583  </ul><p>  </ul><p>
584                
585  </p>  </p>
586  <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
587              return and line feed characters respectively.              return and line feed characters respectively.
588  </p>  </p>
589  <a name="LSCP versioning"></a><br /><hr />  <a name="LSCP versioning"></a><br /><hr />
590  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
591  <a name="rfc.section.2"></a><h3>2.&nbsp;Versioning of this specification</h3>  <a name="rfc.section.2"></a><h3>2.&nbsp;
592    Versioning of this specification</h3>
593    
594  <p>LSCP will certainly be extended and enhanced by-and-by. Each official  <p>LSCP will certainly be extended and enhanced by-and-by. Each official
595              release of the LSCP specification will be tagged with a unique version              release of the LSCP specification will be tagged with a unique version
596              tuple. The version tuple consists at least of a major and minor version              tuple. The version tuple consists at least of a major and minor version
597              number like:              number like:
598                
599  </p>  </p>
600  <p>  <p>
601                  </p>                  </p>
# Line 430  Intellectual Property and Copyright Stat Line 603  Intellectual Property and Copyright Stat
603  <p>"1.2"  <p>"1.2"
604  </p>  </p>
605  </blockquote><p>  </blockquote><p>
606                
607  </p>  </p>
608  <p>  <p>
609              In this example the major version number would be "1" and the minor              In this example the major version number would be "1" and the minor
# Line 440  Intellectual Property and Copyright Stat Line 613  Intellectual Property and Copyright Stat
613              compatible to the connected sampler if and only if the LSCP versions              compatible to the connected sampler if and only if the LSCP versions
614              to which each of the two parties complies to, match both of the              to which each of the two parties complies to, match both of the
615              following rules:              following rules:
616                
617  </p>  </p>
618  <p>Compatibility:  <p>Compatibility:
619  </p>  </p>
# Line 454  Intellectual Property and Copyright Stat Line 627  Intellectual Property and Copyright Stat
627                      the sampler's LSCP minor version.                      the sampler's LSCP minor version.
628  </li>  </li>
629  </ol><p>  </ol><p>
630                
631  </p>  </p>
632  <p>  <p>
633              Compatibility can only be claimed if both rules are true.              Compatibility can only be claimed if both rules are true.
634              The frontend can use the              The frontend can use the
635              <a class="info" href="#GET SERVER INFO">"GET SERVER INFO"<span> (</span><span class="info">General sampler informations</span><span>)</span></a> command to              <a class='info' href='#GET SERVER INFO'>"GET SERVER INFO"<span> (</span><span class='info'>General sampler informations</span><span>)</span></a> command to
636              get the version of the LSCP specification the sampler complies with.              get the version of the LSCP specification the sampler complies with.
637                
638  </p>  </p>
639  <a name="anchor2"></a><br /><hr />  <a name="anchor2"></a><br /><hr />
640  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
641  <a name="rfc.section.3"></a><h3>3.&nbsp;Introduction</h3>  <a name="rfc.section.3"></a><h3>3.&nbsp;
642    Introduction</h3>
643    
644  <p>LinuxSampler is a so called software sampler application  <p>LinuxSampler is a so called software sampler application
645              capable to playback audio samples from a computer's Random              capable to playback audio samples from a computer's Random
# Line 485  Intellectual Property and Copyright Stat Line 659  Intellectual Property and Copyright Stat
659              there.              there.
660  </p>  </p>
661  <a name="anchor3"></a><br /><hr />  <a name="anchor3"></a><br /><hr />
662  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
663  <a name="rfc.section.4"></a><h3>4.&nbsp;Focus of this protocol</h3>  <a name="rfc.section.4"></a><h3>4.&nbsp;
664    Focus of this protocol</h3>
665    
666  <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
667              a running LinuxSampler instance and to retrieve information              a running LinuxSampler instance and to retrieve information
# Line 497  Intellectual Property and Copyright Stat Line 672  Intellectual Property and Copyright Stat
672              via MIDI System Exclusive Messages.              via MIDI System Exclusive Messages.
673  </p>  </p>
674  <a name="anchor4"></a><br /><hr />  <a name="anchor4"></a><br /><hr />
675  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
676  <a name="rfc.section.5"></a><h3>5.&nbsp;Communication Overview</h3>  <a name="rfc.section.5"></a><h3>5.&nbsp;
677    Communication Overview</h3>
678    
679  <p>There are two distinct methods of communication between a  <p>There are two distinct methods of communication between a
680              running instance of LinuxSampler and one or more control              running instance of LinuxSampler and one or more control
# Line 511  Intellectual Property and Copyright Stat Line 687  Intellectual Property and Copyright Stat
687              implemented in the front-end application. The two communication              implemented in the front-end application. The two communication
688              methods will be described next.              methods will be described next.
689  </p>  </p>
690  <a name="rfc.section.5.1"></a><h4><a name="anchor5">5.1</a>&nbsp;Request/response communication method</h4>  <a name="anchor5"></a><br /><hr />
691    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
692    <a name="rfc.section.5.1"></a><h3>5.1.&nbsp;
693    Request/response communication method</h3>
694    
695  <p>This simple communication method is based on  <p>This simple communication method is based on
696                  <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                  <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
697                  front-end application establishes a TCP connection to the                  front-end application establishes a TCP connection to the
698                  LinuxSampler instance on a certain host system. Then the                  LinuxSampler instance on a certain host system. Then the
699                  front-end application will send certain ASCII based commands                  front-end application will send certain ASCII based commands
# Line 554  Intellectual Property and Copyright Stat Line 733  Intellectual Property and Copyright Stat
733                  processed in the order they were received and result sets                  processed in the order they were received and result sets
734                  MUST be sent back in the same order.                  MUST be sent back in the same order.
735  </p>  </p>
736  <a name="rfc.section.5.1.1"></a><h4><a name="anchor6">5.1.1</a>&nbsp;Result format</h4>  <a name="anchor6"></a><br /><hr />
737    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
738    <a name="rfc.section.5.1.1"></a><h3>5.1.1.&nbsp;
739    Result format</h3>
740    
741  <p>Result set could be one of the following types:  <p>Result set could be one of the following types:
742  </p>  </p>
# Line 568  Intellectual Property and Copyright Stat Line 750  Intellectual Property and Copyright Stat
750  <li>Error  <li>Error
751  </li>  </li>
752  </ol><p>  </ol><p>
753                        
754  </p>  </p>
755  <p>Warning and Error result sets MUST be single line and  <p>Warning and Error result sets MUST be single line and
756                      have the following format:                      have the following format:
# Line 581  Intellectual Property and Copyright Stat Line 763  Intellectual Property and Copyright Stat
763  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"
764  </li>  </li>
765  </ul><p>  </ul><p>
766                        
767  </p>  </p>
768  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are
769                      numeric unique identifiers of the warning or error and                      numeric unique identifiers of the warning or error and
# Line 599  Intellectual Property and Copyright Stat Line 781  Intellectual Property and Copyright Stat
781  <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."
782  </p>  </p>
783  </blockquote><p>  </blockquote><p>
784                        
785  </p>  </p>
786  <p>  <p>
787                          </p>                          </p>
# Line 609  Intellectual Property and Copyright Stat Line 791  Intellectual Property and Copyright Stat
791  <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'."
792  </p>  </p>
793  </blockquote><p>  </blockquote><p>
794                        
795  </p>  </p>
796  <p>  <p>
797                          </p>                          </p>
# Line 619  Intellectual Property and Copyright Stat Line 801  Intellectual Property and Copyright Stat
801  <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."
802  </p>  </p>
803  </blockquote><p>  </blockquote><p>
804                        
805  </p>  </p>
806  <p>Normal result sets could be:  <p>Normal result sets could be:
807  </p>  </p>
# Line 633  Intellectual Property and Copyright Stat Line 815  Intellectual Property and Copyright Stat
815  <li>Multi-line  <li>Multi-line
816  </li>  </li>
817  </ol><p>  </ol><p>
818                        
819  </p>  </p>
820  <p> Empty result set is issued when the server only  <p> Empty result set is issued when the server only
821                      needed to acknowledge the fact that the request was                      needed to acknowledge the fact that the request was
# Line 647  Intellectual Property and Copyright Stat Line 829  Intellectual Property and Copyright Stat
829  <p>"OK"  <p>"OK"
830  </p>  </p>
831  </blockquote><p>  </blockquote><p>
832                        
833  </p>  </p>
834  <p>Example:  <p>Example:
835  </p>  </p>
# Line 659  Intellectual Property and Copyright Stat Line 841  Intellectual Property and Copyright Stat
841  <p>S: "OK"  <p>S: "OK"
842  </p>  </p>
843  </blockquote><p>  </blockquote><p>
844                        
845  </p>  </p>
846  <p>Single line result sets are command specific. One  <p>Single line result sets are command specific. One
847                      example of a single line result set is an empty line.                      example of a single line result set is an empty line.
# Line 673  Intellectual Property and Copyright Stat Line 855  Intellectual Property and Copyright Stat
855  <p>"."  <p>"."
856  </p>  </p>
857  </blockquote><p>  </blockquote><p>
858                        
859  </p>  </p>
860  <p>Example:  <p>Example:
861  </p>  </p>
# Line 699  Intellectual Property and Copyright Stat Line 881  Intellectual Property and Copyright Stat
881  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
882  </p>  </p>
883  </blockquote><p>  </blockquote><p>
884                        
885  </p>  </p>
886  <p>In addition to above mentioned formats, warnings and  <p>In addition to above mentioned formats, warnings and
887                      empty result sets MAY be indexed. In this case, they                      empty result sets MAY be indexed. In this case, they
# Line 713  Intellectual Property and Copyright Stat Line 895  Intellectual Property and Copyright Stat
895  <li>"OK[&lt;index&gt;]"  <li>"OK[&lt;index&gt;]"
896  </li>  </li>
897  </ul><p>  </ul><p>
898                        
899  </p>  </p>
900  <p>where &lt;index&gt; is command specific and is used  <p>where &lt;index&gt; is command specific and is used
901                      to indicate channel number that the result set was                      to indicate channel number that the result set was
# Line 732  Intellectual Property and Copyright Stat Line 914  Intellectual Property and Copyright Stat
914  <p>S: "OK[12]"  <p>S: "OK[12]"
915  </p>  </p>
916  </blockquote><p>  </blockquote><p>
917                        
918  </p>  </p>
919  <p>  <p>
920                          </p>                          </p>
# Line 742  Intellectual Property and Copyright Stat Line 924  Intellectual Property and Copyright Stat
924  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."
925  </p>  </p>
926  </blockquote><p>  </blockquote><p>
927                        
928  </p>  </p>
929  <a name="rfc.section.5.2"></a><h4><a name="anchor7">5.2</a>&nbsp;Subscribe/notify communication method</h4>  <a name="anchor7"></a><br /><hr />
930    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
931    <a name="rfc.section.5.2"></a><h3>5.2.&nbsp;
932    Subscribe/notify communication method</h3>
933    
934  <p>This more sophisticated communication method is actually  <p>This more sophisticated communication method is actually
935                  only an extension of the simple request/response                  only an extension of the simple request/response
# Line 762  Intellectual Property and Copyright Stat Line 947  Intellectual Property and Copyright Stat
947  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
948  </p>  </p>
949  </blockquote><p>  </blockquote><p>
950                    
951  </p>  </p>
952  <p>where &lt;event-id&gt; will be replaced by the respective  <p>where &lt;event-id&gt; will be replaced by the respective
953                  event that client wants to subscribe to. Upon receiving such                  event that client wants to subscribe to. Upon receiving such
# Line 779  Intellectual Property and Copyright Stat Line 964  Intellectual Property and Copyright Stat
964  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;
965  </p>  </p>
966  </blockquote><p>  </blockquote><p>
967                    
968  </p>  </p>
969  <p>where &lt;event-id&gt; uniquely identifies the event that  <p>where &lt;event-id&gt; uniquely identifies the event that
970                  has occurred and &lt;custom-event-data&gt; is event                  has occurred and &lt;custom-event-data&gt; is event
# Line 805  Intellectual Property and Copyright Stat Line 990  Intellectual Property and Copyright Stat
990                          response.                          response.
991  </li>  </li>
992  </ol><p>  </ol><p>
993                    
994  </p>  </p>
995  <p>If the client is not interested in a particular event  <p>If the client is not interested in a particular event
996                  anymore it MAY issue UNSUBSCRIBE command using the following                  anymore it MAY issue UNSUBSCRIBE command using the following
# Line 817  Intellectual Property and Copyright Stat Line 1002  Intellectual Property and Copyright Stat
1002  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
1003  </p>  </p>
1004  </blockquote><p>  </blockquote><p>
1005                    
1006  </p>  </p>
1007  <p>where &lt;event-id&gt; will be replace by the respective  <p>where &lt;event-id&gt; will be replace by the respective
1008                  event that client is no longer interested in receiving. For                  event that client is no longer interested in receiving. For
1009                  a list of supported events see <a class="info" href="#events">Section&nbsp;8<span> (</span><span class="info">Events</span><span>)</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>.
1010  </p>  </p>
1011  <p>Example: the fill states of disk stream buffers have  <p>Example: the fill states of disk stream buffers have
1012                  changed on sampler channel 4 and the LinuxSampler instance                  changed on sampler channel 4 and the LinuxSampler instance
# Line 834  Intellectual Property and Copyright Stat Line 1019  Intellectual Property and Copyright Stat
1019  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%
1020  </p>  </p>
1021  </blockquote><p>  </blockquote><p>
1022                    
1023  </p>  </p>
1024  <p>Which means there are currently three active streams on  <p>Which means there are currently three active streams on
1025                  sampler channel 4, where the stream with ID "35" is filled                  sampler channel 4, where the stream with ID "35" is filled
# Line 867  Intellectual Property and Copyright Stat Line 1052  Intellectual Property and Copyright Stat
1052                  it wants to receive.                  it wants to receive.
1053  </p>  </p>
1054  <a name="control_commands"></a><br /><hr />  <a name="control_commands"></a><br /><hr />
1055  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1056  <a name="rfc.section.6"></a><h3>6.&nbsp;Description for control commands</h3>  <a name="rfc.section.6"></a><h3>6.&nbsp;
1057    Description for control commands</h3>
1058    
1059  <p>This chapter will describe the available control commands  <p>This chapter will describe the available control commands
1060              that can be sent on the TCP connection in detail. Some certain              that can be sent on the TCP connection in detail. Some certain
1061              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>              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>
1062              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              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
1063              multiple-line responses. In this case LinuxSampler signals the              multiple-line responses. In this case LinuxSampler signals the
1064              end of the response by a "." (single dot) line.              end of the response by a "." (single dot) line.
1065  </p>  </p>
1066  <a name="rfc.section.6.1"></a><h4><a name="anchor8">6.1</a>&nbsp;Ignored lines and comments</h4>  <a name="anchor8"></a><br /><hr />
1067    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1068    <a name="rfc.section.6.1"></a><h3>6.1.&nbsp;
1069    Ignored lines and comments</h3>
1070    
1071  <p>White lines, that is lines which only contain space and  <p>White lines, that is lines which only contain space and
1072                  tabulator characters, and lines that start with a "#"                  tabulator characters, and lines that start with a "#"
# Line 885  Intellectual Property and Copyright Stat Line 1074  Intellectual Property and Copyright Stat
1074                  group commands and to place comments in a LSCP script                  group commands and to place comments in a LSCP script
1075                  file.                  file.
1076  </p>  </p>
1077  <a name="rfc.section.6.2"></a><h4><a name="anchor9">6.2</a>&nbsp;Configuring audio drivers</h4>  <a name="anchor9"></a><br /><hr />
1078    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1079    <a name="rfc.section.6.2"></a><h3>6.2.&nbsp;
1080    Configuring audio drivers</h3>
1081    
1082  <p>Instances of drivers in LinuxSampler are called devices.  <p>Instances of drivers in LinuxSampler are called devices.
1083                  You can use multiple audio devices simultaneously, e.g. to                  You can use multiple audio devices simultaneously, e.g. to
# Line 918  Intellectual Property and Copyright Stat Line 1110  Intellectual Property and Copyright Stat
1110                  what parameters drivers are offering, how to retrieve their                  what parameters drivers are offering, how to retrieve their
1111                  possible values, etc.                  possible values, etc.
1112  </p>  </p>
1113  <a name="rfc.section.6.2.1"></a><h4><a name="GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.1</a>&nbsp;Getting amount of available audio output drivers</h4>  <a name="GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"></a><br /><hr />
1114    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1115    <a name="rfc.section.6.2.1"></a><h3>6.2.1.&nbsp;
1116    Getting amount of available audio output drivers</h3>
1117    
1118  <p>Use the following command to get the number of  <p>Use the following command to get the number of
1119                      audio output drivers currently available for the                      audio output drivers currently available for the
# Line 930  Intellectual Property and Copyright Stat Line 1125  Intellectual Property and Copyright Stat
1125  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS
1126  </p>  </p>
1127  </blockquote><p>  </blockquote><p>
1128                        
1129  </p>  </p>
1130  <p>Possible Answers:  <p>Possible Answers:
1131  </p>  </p>
# Line 941  Intellectual Property and Copyright Stat Line 1136  Intellectual Property and Copyright Stat
1136                              number of audio output drivers.                              number of audio output drivers.
1137  </p>  </p>
1138  </blockquote><p>  </blockquote><p>
1139                        
1140  </p>  </p>
1141  <p>Example:  <p>Example:
1142  </p>  </p>
# Line 953  Intellectual Property and Copyright Stat Line 1148  Intellectual Property and Copyright Stat
1148  <p>S: "2"  <p>S: "2"
1149  </p>  </p>
1150  </blockquote><p>  </blockquote><p>
1151                        
1152  </p>  </p>
1153  <a name="rfc.section.6.2.2"></a><h4><a name="LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.2</a>&nbsp;Getting all available audio output drivers</h4>  <a name="LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"></a><br /><hr />
1154    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1155    <a name="rfc.section.6.2.2"></a><h3>6.2.2.&nbsp;
1156    Getting all available audio output drivers</h3>
1157    
1158  <p>Use the following command to list all audio output  <p>Use the following command to list all audio output
1159                      drivers currently available for the LinuxSampler                      drivers currently available for the LinuxSampler
# Line 967  Intellectual Property and Copyright Stat Line 1165  Intellectual Property and Copyright Stat
1165  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS
1166  </p>  </p>
1167  </blockquote><p>  </blockquote><p>
1168                        
1169  </p>  </p>
1170  <p>Possible Answers:  <p>Possible Answers:
1171  </p>  </p>
# Line 979  Intellectual Property and Copyright Stat Line 1177  Intellectual Property and Copyright Stat
1177                              audio output driver.                              audio output driver.
1178  </p>  </p>
1179  </blockquote><p>  </blockquote><p>
1180                        
1181  </p>  </p>
1182  <p>Example:  <p>Example:
1183  </p>  </p>
# Line 991  Intellectual Property and Copyright Stat Line 1189  Intellectual Property and Copyright Stat
1189  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
1190  </p>  </p>
1191  </blockquote><p>  </blockquote><p>
1192                        
1193  </p>  </p>
1194  <a name="rfc.section.6.2.3"></a><h4><a name="GET AUDIO_OUTPUT_DRIVER INFO">6.2.3</a>&nbsp;Getting information about a specific audio  <a name="GET AUDIO_OUTPUT_DRIVER INFO"></a><br /><hr />
1195                  output driver</h4>  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1196    <a name="rfc.section.6.2.3"></a><h3>6.2.3.&nbsp;
1197    Getting information about a specific audio
1198                    output driver</h3>
1199    
1200  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1201                      about a specific audio output driver:                      about a specific audio output driver:
# Line 1006  Intellectual Property and Copyright Stat Line 1207  Intellectual Property and Copyright Stat
1207                               &lt;audio-output-driver&gt;                               &lt;audio-output-driver&gt;
1208  </p>  </p>
1209  </blockquote><p>  </blockquote><p>
1210                        
1211  </p>  </p>
1212  <p>Where &lt;audio-output-driver&gt; is the name of the  <p>Where &lt;audio-output-driver&gt; is the name of the
1213                      audio output driver, returned by the                      audio output driver, returned by the
1214                      <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.                      <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.
1215  </p>  </p>
1216  <p>Possible Answers:  <p>Possible Answers:
1217  </p>  </p>
# Line 1035  Intellectual Property and Copyright Stat Line 1236  Intellectual Property and Copyright Stat
1236  <p> character string describing the  <p> character string describing the
1237                                        audio output driver                                        audio output driver
1238  </p>  </p>
1239  </blockquote><p>  </blockquote>
1240                                      
1241    
 </p>  
1242  <p>VERSION -  <p>VERSION -
1243                                      </p>                                      </p>
1244  <blockquote class="text">  <blockquote class="text">
1245  <p>character string reflecting the  <p>character string reflecting the
1246                                        driver's version                                        driver's version
1247  </p>  </p>
1248  </blockquote><p>  </blockquote>
1249                                      
1250    
 </p>  
1251  <p>PARAMETERS -  <p>PARAMETERS -
1252                                      </p>                                      </p>
1253  <blockquote class="text">  <blockquote class="text">
# Line 1057  Intellectual Property and Copyright Stat Line 1258  Intellectual Property and Copyright Stat
1258                                        and 'active' are offered by all audio                                        and 'active' are offered by all audio
1259                                        output drivers                                        output drivers
1260  </p>  </p>
1261  </blockquote><p>  </blockquote>
1262                                      
1263    
1264  </p>  </blockquote>
1265  </blockquote><p>                              
1266    
 </p>  
1267  <p>The mentioned fields above don't have to be  <p>The mentioned fields above don't have to be
1268                              in particular order.                              in particular order.
1269  </p>  </p>
1270  </blockquote><p>  </blockquote><p>
1271                        
1272  </p>  </p>
1273  <p>Example:  <p>Example:
1274  </p>  </p>
# Line 1088  Intellectual Property and Copyright Stat Line 1289  Intellectual Property and Copyright Stat
1289  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1290  </p>  </p>
1291  </blockquote><p>  </blockquote><p>
1292                        
1293  </p>  </p>
1294  <a name="rfc.section.6.2.4"></a><h4><a name="GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">6.2.4</a>&nbsp;Getting information about specific audio  <a name="GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
1295                  output driver parameter</h4>  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1296    <a name="rfc.section.6.2.4"></a><h3>6.2.4.&nbsp;
1297    Getting information about specific audio
1298                    output driver parameter</h3>
1299    
1300  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1301                      about a  specific audio output driver parameter:                      about a  specific audio output driver parameter:
# Line 1102  Intellectual Property and Copyright Stat Line 1306  Intellectual Property and Copyright Stat
1306  <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;]
1307  </p>  </p>
1308  </blockquote><p>  </blockquote><p>
1309                        
1310  </p>  </p>
1311  <p>Where &lt;audio&gt; is the name of the audio output  <p>Where &lt;audio&gt; is the name of the audio output
1312                      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,                      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,
1313                      &lt;prm&gt; a specific parameter name for which information should be                      &lt;prm&gt; a specific parameter name for which information should be
1314                      obtained (as returned by the                      obtained (as returned by the
1315                      <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                      <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
1316                      &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
1317                      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
1318                      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 1134  Intellectual Property and Copyright Stat Line 1338  Intellectual Property and Copyright Stat
1338                              the moment the following information categories are defined:                              the moment the following information categories are defined:
1339  </p>  </p>
1340  </blockquote><p>  </blockquote><p>
1341                        
1342  </p>  </p>
1343  <p>  <p>
1344                          </p>                          </p>
# Line 1148  Intellectual Property and Copyright Stat Line 1352  Intellectual Property and Copyright Stat
1352                                  character string(s)                                  character string(s)
1353                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1354  </p>  </p>
1355  </blockquote><p>  </blockquote>
1356                                
1357    
 </p>  
1358  <p>DESCRIPTION -  <p>DESCRIPTION -
1359                                </p>                                </p>
1360  <blockquote class="text">  <blockquote class="text">
1361  <p>arbitrary text describing the purpose of the parameter  <p>arbitrary text describing the purpose of the parameter
1362                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1363  </p>  </p>
1364  </blockquote><p>  </blockquote>
1365                                
1366    
 </p>  
1367  <p>MANDATORY -  <p>MANDATORY -
1368                                </p>                                </p>
1369  <blockquote class="text">  <blockquote class="text">
1370  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
1371                                  given when the device is to be created with the                                  given when the device is to be created with the
1372                                  <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>                                  <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>
1373                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1374  </p>  </p>
1375  </blockquote><p>  </blockquote>
1376                                
1377    
 </p>  
1378  <p>FIX -  <p>FIX -
1379                                </p>                                </p>
1380  <blockquote class="text">  <blockquote class="text">
1381  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
1382                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
1383                                  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>                                  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>
1384                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1385  </p>  </p>
1386  </blockquote><p>  </blockquote>
1387                                
1388    
 </p>  
1389  <p>MULTIPLICITY -  <p>MULTIPLICITY -
1390                                </p>                                </p>
1391  <blockquote class="text">  <blockquote class="text">
# Line 1190  Intellectual Property and Copyright Stat Line 1394  Intellectual Property and Copyright Stat
1394                                  multiple values and false only a single value allowed                                  multiple values and false only a single value allowed
1395                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1396  </p>  </p>
1397  </blockquote><p>  </blockquote>
1398                                
1399    
 </p>  
1400  <p>DEPENDS -  <p>DEPENDS -
1401                                </p>                                </p>
1402  <blockquote class="text">  <blockquote class="text">
# Line 1207  Intellectual Property and Copyright Stat Line 1411  Intellectual Property and Copyright Stat
1411                                  chosen by the 'card' parameter                                  chosen by the 'card' parameter
1412                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1413  </p>  </p>
1414  </blockquote><p>  </blockquote>
1415                                
1416    
 </p>  
1417  <p>DEFAULT -  <p>DEFAULT -
1418                                </p>                                </p>
1419  <blockquote class="text">  <blockquote class="text">
1420  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
1421                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
1422                                  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,                                  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,
1423                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
1424                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
1425                                  apostrophes (')                                  apostrophes (')
1426                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1427  </p>  </p>
1428  </blockquote><p>  </blockquote>
1429                                
1430    
 </p>  
1431  <p>RANGE_MIN -  <p>RANGE_MIN -
1432                                </p>                                </p>
1433  <blockquote class="text">  <blockquote class="text">
# Line 1233  Intellectual Property and Copyright Stat Line 1437  Intellectual Property and Copyright Stat
1437                                  with RANGE_MAX, but may also appear without                                  with RANGE_MAX, but may also appear without
1438                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1439  </p>  </p>
1440  </blockquote><p>  </blockquote>
1441                                
1442    
 </p>  
1443  <p>RANGE_MAX -  <p>RANGE_MAX -
1444                                </p>                                </p>
1445  <blockquote class="text">  <blockquote class="text">
# Line 1245  Intellectual Property and Copyright Stat Line 1449  Intellectual Property and Copyright Stat
1449                                  RANGE_MIN, but may also appear without                                  RANGE_MIN, but may also appear without
1450                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1451  </p>  </p>
1452  </blockquote><p>  </blockquote>
1453                                
1454    
 </p>  
1455  <p>POSSIBILITIES -  <p>POSSIBILITIES -
1456                                </p>                                </p>
1457  <blockquote class="text">  <blockquote class="text">
# Line 1256  Intellectual Property and Copyright Stat Line 1460  Intellectual Property and Copyright Stat
1460                                  apostrophes                                  apostrophes
1461                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1462  </p>  </p>
1463  </blockquote><p>  </blockquote>
1464                                
1465    
 </p>  
1466  </blockquote><p>  </blockquote><p>
1467                        
1468  </p>  </p>
1469  <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.
1470  </p>  </p>
# Line 1288  Intellectual Property and Copyright Stat Line 1492  Intellectual Property and Copyright Stat
1492  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1493  </p>  </p>
1494  </blockquote><p>  </blockquote><p>
1495                        
1496  </p>  </p>
1497  <p>  <p>
1498                          </p>                          </p>
# Line 1312  Intellectual Property and Copyright Stat Line 1516  Intellectual Property and Copyright Stat
1516  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1517  </p>  </p>
1518  </blockquote><p>  </blockquote><p>
1519                        
1520  </p>  </p>
1521  <p>  <p>
1522                          </p>                          </p>
# Line 1340  Intellectual Property and Copyright Stat Line 1544  Intellectual Property and Copyright Stat
1544  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1545  </p>  </p>
1546  </blockquote><p>  </blockquote><p>
1547                        
1548  </p>  </p>
1549  <a name="rfc.section.6.2.5"></a><h4><a name="CREATE AUDIO_OUTPUT_DEVICE">6.2.5</a>&nbsp;Creating an audio output device</h4>  <a name="CREATE AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1550    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1551    <a name="rfc.section.6.2.5"></a><h3>6.2.5.&nbsp;
1552    Creating an audio output device</h3>
1553    
1554  <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:
1555  </p>  </p>
# Line 1352  Intellectual Property and Copyright Stat Line 1559  Intellectual Property and Copyright Stat
1559  <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;]
1560  </p>  </p>
1561  </blockquote><p>  </blockquote><p>
1562                        
1563  </p>  </p>
1564  <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
1565                      output system as returned by the                      output system as returned by the
1566                      <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>                      <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>
1567                      command and &lt;param-list&gt; by an optional list of driver                      command and &lt;param-list&gt; by an optional list of driver
1568                      specific parameters in form of "key1=val1 key2=val2 ...", where                      specific parameters in form of "key1=val1 key2=val2 ...", where
1569                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
# Line 1375  Intellectual Property and Copyright Stat Line 1582  Intellectual Property and Copyright Stat
1582  <p>in case the device was successfully created, where  <p>in case the device was successfully created, where
1583                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
1584  </p>  </p>
1585  </blockquote><p>  </blockquote>
1586                                
1587    
 </p>  
1588  <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;" -
1589                                  </p>                                  </p>
1590  <blockquote class="text">  <blockquote class="text">
# Line 1388  Intellectual Property and Copyright Stat Line 1595  Intellectual Property and Copyright Stat
1595                                      fall-back values), providing an appropriate warning code and                                      fall-back values), providing an appropriate warning code and
1596                                      warning message                                      warning message
1597  </p>  </p>
1598  </blockquote><p>  </blockquote>
1599                                
1600    
 </p>  
1601  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1602                                  </p>                                  </p>
1603  <blockquote class="text">  <blockquote class="text">
1604  <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
1605  </p>  </p>
1606  </blockquote><p>  </blockquote>
1607                                
1608    
 </p>  
1609  </blockquote><p>  </blockquote><p>
1610                        
1611  </p>  </p>
1612  <p>Examples:  <p>Examples:
1613  </p>  </p>
# Line 1412  Intellectual Property and Copyright Stat Line 1619  Intellectual Property and Copyright Stat
1619  <p>S: "OK[0]"  <p>S: "OK[0]"
1620  </p>  </p>
1621  </blockquote><p>  </blockquote><p>
1622                        
1623  </p>  </p>
1624  <p>  <p>
1625                          </p>                          </p>
# Line 1422  Intellectual Property and Copyright Stat Line 1629  Intellectual Property and Copyright Stat
1629  <p>S: "OK[1]"  <p>S: "OK[1]"
1630  </p>  </p>
1631  </blockquote><p>  </blockquote><p>
1632                        
1633  </p>  </p>
1634  <a name="rfc.section.6.2.6"></a><h4><a name="DESTROY AUDIO_OUTPUT_DEVICE">6.2.6</a>&nbsp;Destroying an audio output device</h4>  <a name="DESTROY AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1635    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1636    <a name="rfc.section.6.2.6"></a><h3>6.2.6.&nbsp;
1637    Destroying an audio output device</h3>
1638    
1639  <p>Use the following command to destroy a created output device:  <p>Use the following command to destroy a created output device:
1640  </p>  </p>
# Line 1434  Intellectual Property and Copyright Stat Line 1644  Intellectual Property and Copyright Stat
1644  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;
1645  </p>  </p>
1646  </blockquote><p>  </blockquote><p>
1647                        
1648  </p>  </p>
1649  <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
1650                      audio output device as given by the                      audio output device as given by the
1651                      <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>                      <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>
1652                      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>                      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>
1653                      command.                      command.
1654  </p>  </p>
1655  <p>Possible Answers:  <p>Possible Answers:
# Line 1452  Intellectual Property and Copyright Stat Line 1662  Intellectual Property and Copyright Stat
1662  <blockquote class="text">  <blockquote class="text">
1663  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
1664  </p>  </p>
1665  </blockquote><p>  </blockquote>
1666                                
1667    
 </p>  
1668  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1669                                  </p>                                  </p>
1670  <blockquote class="text">  <blockquote class="text">
# Line 1464  Intellectual Property and Copyright Stat Line 1674  Intellectual Property and Copyright Stat
1674                                      informed about this situation), providing an appropriate                                      informed about this situation), providing an appropriate
1675                                      warning code and warning message                                      warning code and warning message
1676  </p>  </p>
1677  </blockquote><p>  </blockquote>
1678                                
1679    
 </p>  
1680  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1681                                  </p>                                  </p>
1682  <blockquote class="text">  <blockquote class="text">
1683  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
1684                                      error message                                      error message
1685  </p>  </p>
1686  </blockquote><p>  </blockquote>
1687                                
1688    
 </p>  
1689  </blockquote><p>  </blockquote><p>
1690                        
1691  </p>  </p>
1692  <p>Example:  <p>Example:
1693  </p>  </p>
# Line 1489  Intellectual Property and Copyright Stat Line 1699  Intellectual Property and Copyright Stat
1699  <p>S: "OK"  <p>S: "OK"
1700  </p>  </p>
1701  </blockquote><p>  </blockquote><p>
1702                        
1703  </p>  </p>
1704  <a name="rfc.section.6.2.7"></a><h4><a name="GET AUDIO_OUTPUT_DEVICES">6.2.7</a>&nbsp;Getting all created audio output device count</h4>  <a name="GET AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1705    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1706    <a name="rfc.section.6.2.7"></a><h3>6.2.7.&nbsp;
1707    Getting all created audio output device count</h3>
1708    
1709  <p>Use the following command to count all created audio output devices:  <p>Use the following command to count all created audio output devices:
1710  </p>  </p>
# Line 1501  Intellectual Property and Copyright Stat Line 1714  Intellectual Property and Copyright Stat
1714  <p>GET AUDIO_OUTPUT_DEVICES  <p>GET AUDIO_OUTPUT_DEVICES
1715  </p>  </p>
1716  </blockquote><p>  </blockquote><p>
1717                        
1718  </p>  </p>
1719  <p>Possible Answers:  <p>Possible Answers:
1720  </p>  </p>
# Line 1512  Intellectual Property and Copyright Stat Line 1725  Intellectual Property and Copyright Stat
1725                              audio output devices.                              audio output devices.
1726  </p>  </p>
1727  </blockquote><p>  </blockquote><p>
1728                        
1729  </p>  </p>
1730  <p>Example:  <p>Example:
1731  </p>  </p>
# Line 1524  Intellectual Property and Copyright Stat Line 1737  Intellectual Property and Copyright Stat
1737  <p>S: "4"  <p>S: "4"
1738  </p>  </p>
1739  </blockquote><p>  </blockquote><p>
1740                        
1741  </p>  </p>
1742  <a name="rfc.section.6.2.8"></a><h4><a name="LIST AUDIO_OUTPUT_DEVICES">6.2.8</a>&nbsp;Getting all created audio output device list</h4>  <a name="LIST AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1743    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1744    <a name="rfc.section.6.2.8"></a><h3>6.2.8.&nbsp;
1745    Getting all created audio output device list</h3>
1746    
1747  <p>Use the following command to list all created audio output devices:  <p>Use the following command to list all created audio output devices:
1748  </p>  </p>
# Line 1536  Intellectual Property and Copyright Stat Line 1752  Intellectual Property and Copyright Stat
1752  <p>LIST AUDIO_OUTPUT_DEVICES  <p>LIST AUDIO_OUTPUT_DEVICES
1753  </p>  </p>
1754  </blockquote><p>  </blockquote><p>
1755                        
1756  </p>  </p>
1757  <p>Possible Answers:  <p>Possible Answers:
1758  </p>  </p>
# Line 1547  Intellectual Property and Copyright Stat Line 1763  Intellectual Property and Copyright Stat
1763                              the numerical IDs of all audio output devices.                              the numerical IDs of all audio output devices.
1764  </p>  </p>
1765  </blockquote><p>  </blockquote><p>
1766                        
1767  </p>  </p>
1768  <p>Example:  <p>Example:
1769  </p>  </p>
# Line 1559  Intellectual Property and Copyright Stat Line 1775  Intellectual Property and Copyright Stat
1775  <p>S: "0,1,4,5"  <p>S: "0,1,4,5"
1776  </p>  </p>
1777  </blockquote><p>  </blockquote><p>
1778                        
1779  </p>  </p>
1780  <a name="rfc.section.6.2.9"></a><h4><a name="GET AUDIO_OUTPUT_DEVICE INFO">6.2.9</a>&nbsp;Getting current settings of an audio output device</h4>  <a name="GET AUDIO_OUTPUT_DEVICE INFO"></a><br /><hr />
1781    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1782    <a name="rfc.section.6.2.9"></a><h3>6.2.9.&nbsp;
1783    Getting current settings of an audio output device</h3>
1784    
1785  <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:
1786  </p>  </p>
# Line 1571  Intellectual Property and Copyright Stat Line 1790  Intellectual Property and Copyright Stat
1790  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;
1791  </p>  </p>
1792  </blockquote><p>  </blockquote><p>
1793                        
1794  </p>  </p>
1795  <p>Where &lt;device-id&gt; should be replaced by numerical ID  <p>Where &lt;device-id&gt; should be replaced by numerical ID
1796                      of the audio output device as e.g. returned by the                      of the audio output device as e.g. returned by the
1797                      <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.                      <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.
1798  </p>  </p>
1799  <p>Possible Answers:  <p>Possible Answers:
1800  </p>  </p>
# Line 1595  Intellectual Property and Copyright Stat Line 1814  Intellectual Property and Copyright Stat
1814  <blockquote class="text">  <blockquote class="text">
1815  <p>identifier of the used audio output driver, as also  <p>identifier of the used audio output driver, as also
1816                                      returned by the                                      returned by the
1817                                      <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>                                      <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>
1818                                      command                                      command
1819  </p>  </p>
1820  </blockquote><p>  </blockquote>
1821                                
1822    
 </p>  
1823  <p>CHANNELS -  <p>CHANNELS -
1824                                  </p>                                  </p>
1825  <blockquote class="text">  <blockquote class="text">
1826  <p>amount of audio output channels this device currently  <p>amount of audio output channels this device currently
1827                                      offers                                      offers
1828  </p>  </p>
1829  </blockquote><p>  </blockquote>
1830                                
1831    
 </p>  
1832  <p>SAMPLERATE -  <p>SAMPLERATE -
1833                                  </p>                                  </p>
1834  <blockquote class="text">  <blockquote class="text">
1835  <p>playback sample rate the device uses  <p>playback sample rate the device uses
1836  </p>  </p>
1837  </blockquote><p>  </blockquote>
1838                                
1839    
 </p>  
1840  <p>ACTIVE -  <p>ACTIVE -
1841                                  </p>                                  </p>
1842  <blockquote class="text">  <blockquote class="text">
# Line 1626  Intellectual Property and Copyright Stat Line 1845  Intellectual Property and Copyright Stat
1845                                      sampler channels connected to this audio device render                                      sampler channels connected to this audio device render
1846                                      any audio                                      any audio
1847  </p>  </p>
1848  </blockquote><p>  </blockquote>
1849                                
1850    
 </p>  
1851  </blockquote><p>  </blockquote><p>
1852                        
1853  </p>  </p>
1854  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1855                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1856                      returned by all audio output devices. Every audio output driver                      returned by all audio output devices. Every audio output driver
1857                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
1858                      <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>)                      <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>)
1859                      which are also returned by this command.                      which are also returned by this command.
1860  </p>  </p>
1861  <p>Example:  <p>Example:
# Line 1663  Intellectual Property and Copyright Stat Line 1882  Intellectual Property and Copyright Stat
1882  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1883  </p>  </p>
1884  </blockquote><p>  </blockquote><p>
1885                        
1886  </p>  </p>
1887  <a name="rfc.section.6.2.10"></a><h4><a name="SET AUDIO_OUTPUT_DEVICE_PARAMETER">6.2.10</a>&nbsp;Changing settings of audio output devices</h4>  <a name="SET AUDIO_OUTPUT_DEVICE_PARAMETER"></a><br /><hr />
1888    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1889    <a name="rfc.section.6.2.10"></a><h3>6.2.10.&nbsp;
1890    Changing settings of audio output devices</h3>
1891    
1892  <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:
1893  </p>  </p>
# Line 1675  Intellectual Property and Copyright Stat Line 1897  Intellectual Property and Copyright Stat
1897  <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;
1898  </p>  </p>
1899  </blockquote><p>  </blockquote><p>
1900                        
1901  </p>  </p>
1902  <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
1903                      audio output device as given by the                      audio output device as given by the
1904                      <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>                      <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>
1905                      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>                      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>
1906                      command, &lt;key&gt; by the name of the parameter to change                      command, &lt;key&gt; by the name of the parameter to change
1907                      and &lt;value&gt; by the new value for this parameter.                      and &lt;value&gt; by the new value for this parameter.
1908  </p>  </p>
# Line 1694  Intellectual Property and Copyright Stat Line 1916  Intellectual Property and Copyright Stat
1916  <blockquote class="text">  <blockquote class="text">
1917  <p>in case setting was successfully changed  <p>in case setting was successfully changed
1918  </p>  </p>
1919  </blockquote><p>  </blockquote>
1920                                
1921    
 </p>  
1922  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1923                                  </p>                                  </p>
1924  <blockquote class="text">  <blockquote class="text">
# Line 1704  Intellectual Property and Copyright Stat Line 1926  Intellectual Property and Copyright Stat
1926                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
1927                                      warning code and warning message                                      warning code and warning message
1928  </p>  </p>
1929  </blockquote><p>  </blockquote>
1930                                
1931    
 </p>  
1932  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1933                                  </p>                                  </p>
1934  <blockquote class="text">  <blockquote class="text">
1935  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
1936                                      error message                                      error message
1937  </p>  </p>
1938  </blockquote><p>  </blockquote>
1939                                
1940    
 </p>  
1941  </blockquote><p>  </blockquote><p>
1942                        
1943  </p>  </p>
1944  <p>Example:  <p>Example:
1945  </p>  </p>
# Line 1729  Intellectual Property and Copyright Stat Line 1951  Intellectual Property and Copyright Stat
1951  <p>S: "OK"  <p>S: "OK"
1952  </p>  </p>
1953  </blockquote><p>  </blockquote><p>
1954                        
1955  </p>  </p>
1956  <a name="rfc.section.6.2.11"></a><h4><a name="GET AUDIO_OUTPUT_CHANNEL INFO">6.2.11</a>&nbsp;Getting information about an audio channel</h4>  <a name="GET AUDIO_OUTPUT_CHANNEL INFO"></a><br /><hr />
1957    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1958    <a name="rfc.section.6.2.11"></a><h3>6.2.11.&nbsp;
1959    Getting information about an audio channel</h3>
1960    
1961  <p>Use the following command to get information about an audio channel:  <p>Use the following command to get information about an audio channel:
1962  </p>  </p>
# Line 1741  Intellectual Property and Copyright Stat Line 1966  Intellectual Property and Copyright Stat
1966  <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;
1967  </p>  </p>
1968  </blockquote><p>  </blockquote><p>
1969                        
1970  </p>  </p>
1971  <p>Where &lt;device-id&gt; is the numerical ID of the audio output device as given by the  <p>Where &lt;device-id&gt; is the numerical ID of the audio output device as given by the
1972                      <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>                      <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>
1973                      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>                      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>
1974                      command and &lt;audio-chan&gt; the audio channel number.                      command and &lt;audio-chan&gt; the audio channel number.
1975  </p>  </p>
1976  <p>Possible Answers:  <p>Possible Answers:
# Line 1768  Intellectual Property and Copyright Stat Line 1993  Intellectual Property and Copyright Stat
1993  <p>arbitrary character string naming the channel, which  <p>arbitrary character string naming the channel, which
1994                                              doesn't have to be unique (always returned by all audio channels)                                              doesn't have to be unique (always returned by all audio channels)
1995  </p>  </p>
1996  </blockquote><p>  </blockquote>
1997                                        
1998    
 </p>  
1999  <p>IS_MIX_CHANNEL -  <p>IS_MIX_CHANNEL -
2000                                          </p>                                          </p>
2001  <blockquote class="text">  <blockquote class="text">
# Line 1781  Intellectual Property and Copyright Stat Line 2006  Intellectual Property and Copyright Stat
2006                                              channels than the used audio system might be able to offer                                              channels than the used audio system might be able to offer
2007                                              (always returned by all audio channels)                                              (always returned by all audio channels)
2008  </p>  </p>
2009  </blockquote><p>  </blockquote>
2010                                        
2011    
 </p>  
2012  <p>MIX_CHANNEL_DESTINATION -  <p>MIX_CHANNEL_DESTINATION -
2013                                          </p>                                          </p>
2014  <blockquote class="text">  <blockquote class="text">
# Line 1793  Intellectual Property and Copyright Stat Line 2018  Intellectual Property and Copyright Stat
2018                                              the audio signal actually will be routed / added to                                              the audio signal actually will be routed / added to
2019                                              (only returned in case the audio channel is mix channel)                                              (only returned in case the audio channel is mix channel)
2020  </p>  </p>
2021  </blockquote><p>  </blockquote>
2022                                        
2023    
2024  </p>  </blockquote>
2025  </blockquote><p>                              
2026    
 </p>  
2027  </blockquote><p>  </blockquote><p>
2028                        
2029  </p>  </p>
2030  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
2031                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
# Line 1823  Intellectual Property and Copyright Stat Line 2048  Intellectual Property and Copyright Stat
2048  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2049  </p>  </p>
2050  </blockquote><p>  </blockquote><p>
2051                        
2052  </p>  </p>
2053  <p>  <p>
2054                          </p>                          </p>
# Line 1837  Intellectual Property and Copyright Stat Line 2062  Intellectual Property and Copyright Stat
2062  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2063  </p>  </p>
2064  </blockquote><p>  </blockquote><p>
2065                        
2066  </p>  </p>
2067  <p>  <p>
2068                          </p>                          </p>
# Line 1853  Intellectual Property and Copyright Stat Line 2078  Intellectual Property and Copyright Stat
2078  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2079  </p>  </p>
2080  </blockquote><p>  </blockquote><p>
2081                        
2082  </p>  </p>
2083  <p>  <p>
2084                          </p>                          </p>
# Line 1869  Intellectual Property and Copyright Stat Line 2094  Intellectual Property and Copyright Stat
2094  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2095  </p>  </p>
2096  </blockquote><p>  </blockquote><p>
2097                        
2098  </p>  </p>
2099  <a name="rfc.section.6.2.12"></a><h4><a name="GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">6.2.12</a>&nbsp;Getting information about specific audio channel parameter</h4>  <a name="GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO"></a><br /><hr />
2100    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2101    <a name="rfc.section.6.2.12"></a><h3>6.2.12.&nbsp;
2102    Getting information about specific audio channel parameter</h3>
2103    
2104  <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:
2105  </p>  </p>
# Line 1881  Intellectual Property and Copyright Stat Line 2109  Intellectual Property and Copyright Stat
2109  <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;
2110  </p>  </p>
2111  </blockquote><p>  </blockquote><p>
2112                        
2113  </p>  </p>
2114  <p>Where &lt;dev-id&gt; is the numerical ID of the audio output device as returned by the  <p>Where &lt;dev-id&gt; is the numerical ID of the audio output device as returned by the
2115                      <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>                      <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>
2116                      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>                      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>
2117                      command, &lt;chan&gt; the audio channel number                      command, &lt;chan&gt; the audio channel number
2118                      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
2119                      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).                      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).
2120  </p>  </p>
2121  <p>Possible Answers:  <p>Possible Answers:
2122  </p>  </p>
# Line 1915  Intellectual Property and Copyright Stat Line 2143  Intellectual Property and Copyright Stat
2143                                              character string(s)                                              character string(s)
2144                                              (always returned)                                              (always returned)
2145  </p>  </p>
2146  </blockquote><p>  </blockquote>
2147                                        
2148    
 </p>  
2149  <p>DESCRIPTION -  <p>DESCRIPTION -
2150                                          </p>                                          </p>
2151  <blockquote class="text">  <blockquote class="text">
2152  <p>arbitrary text describing the purpose of the parameter (always returned)  <p>arbitrary text describing the purpose of the parameter (always returned)
2153  </p>  </p>
2154  </blockquote><p>  </blockquote>
2155                                        
2156    
 </p>  
2157  <p>FIX -  <p>FIX -
2158                                          </p>                                          </p>
2159  <blockquote class="text">  <blockquote class="text">
# Line 1933  Intellectual Property and Copyright Stat Line 2161  Intellectual Property and Copyright Stat
2161                                              read only, thus cannot be altered                                              read only, thus cannot be altered
2162                                              (always returned)                                              (always returned)
2163  </p>  </p>
2164  </blockquote><p>  </blockquote>
2165                                        
2166    
 </p>  
2167  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2168                                          </p>                                          </p>
2169  <blockquote class="text">  <blockquote class="text">
# Line 1944  Intellectual Property and Copyright Stat Line 2172  Intellectual Property and Copyright Stat
2172                                              multiple values and false only a single value allowed                                              multiple values and false only a single value allowed
2173                                              (always returned)                                              (always returned)
2174  </p>  </p>
2175  </blockquote><p>  </blockquote>
2176                                        
2177    
 </p>  
2178  <p>RANGE_MIN -  <p>RANGE_MIN -
2179                                          </p>                                          </p>
2180  <blockquote class="text">  <blockquote class="text">
# Line 1957  Intellectual Property and Copyright Stat Line 2185  Intellectual Property and Copyright Stat
2185                                              (optionally returned, dependent to driver and channel                                              (optionally returned, dependent to driver and channel
2186                                              parameter)                                              parameter)
2187  </p>  </p>
2188  </blockquote><p>  </blockquote>
2189                                        
2190    
 </p>  
2191  <p>RANGE_MAX -  <p>RANGE_MAX -
2192                                          </p>                                          </p>
2193  <blockquote class="text">  <blockquote class="text">
# Line 1970  Intellectual Property and Copyright Stat Line 2198  Intellectual Property and Copyright Stat
2198                                              (optionally returned, dependent to driver and channel                                              (optionally returned, dependent to driver and channel
2199                                              parameter)                                              parameter)
2200  </p>  </p>
2201  </blockquote><p>  </blockquote>
2202                                        
2203    
 </p>  
2204  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2205                                          </p>                                          </p>
2206  <blockquote class="text">  <blockquote class="text">
# Line 1982  Intellectual Property and Copyright Stat Line 2210  Intellectual Property and Copyright Stat
2210                                              (optionally returned, dependent to driver and channel                                              (optionally returned, dependent to driver and channel
2211                                              parameter)                                              parameter)
2212  </p>  </p>
2213  </blockquote><p>  </blockquote>
2214                                        
2215    
2216  </p>  </blockquote>
2217  </blockquote><p>                              
2218    
 </p>  
2219  <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.
2220  </p>  </p>
2221  </blockquote><p>  </blockquote><p>
2222                        
2223  </p>  </p>
2224  <p>Example:  <p>Example:
2225  </p>  </p>
# Line 2013  Intellectual Property and Copyright Stat Line 2241  Intellectual Property and Copyright Stat
2241  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2242  </p>  </p>
2243  </blockquote><p>  </blockquote><p>
2244                        
2245  </p>  </p>
2246  <a name="rfc.section.6.2.13"></a><h4><a name="SET AUDIO_OUTPUT_CHANNEL_PARAMETER">6.2.13</a>&nbsp;Changing settings of audio output channels</h4>  <a name="SET AUDIO_OUTPUT_CHANNEL_PARAMETER"></a><br /><hr />
2247    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2248    <a name="rfc.section.6.2.13"></a><h3>6.2.13.&nbsp;
2249    Changing settings of audio output channels</h3>
2250    
2251  <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:
2252  </p>  </p>
# Line 2025  Intellectual Property and Copyright Stat Line 2256  Intellectual Property and Copyright Stat
2256  <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;
2257  </p>  </p>
2258  </blockquote><p>  </blockquote><p>
2259                        
2260  </p>  </p>
2261  <p>Where &lt;dev-id&gt; should be replaced by the numerical ID of the audio output device as returned by the  <p>Where &lt;dev-id&gt; should be replaced by the numerical ID of the audio output device as returned by the
2262                      <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>                      <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>
2263                      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>                      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>
2264                      command, &lt;chn&gt; by the audio channel number, &lt;key&gt; by the name of the                      command, &lt;chn&gt; by the audio channel number, &lt;key&gt; by the name of the
2265                      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.
2266  </p>  </p>
# Line 2043  Intellectual Property and Copyright Stat Line 2274  Intellectual Property and Copyright Stat
2274  <blockquote class="text">  <blockquote class="text">
2275  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2276  </p>  </p>
2277  </blockquote><p>  </blockquote>
2278                                
2279    
 </p>  
2280  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2281                                  </p>                                  </p>
2282  <blockquote class="text">  <blockquote class="text">
# Line 2053  Intellectual Property and Copyright Stat Line 2284  Intellectual Property and Copyright Stat
2284                                     noteworthy issue(s) related, providing an appropriate                                     noteworthy issue(s) related, providing an appropriate
2285                                     warning code and warning message                                     warning code and warning message
2286  </p>  </p>
2287  </blockquote><p>  </blockquote>
2288                                
2289    
 </p>  
2290  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2291                                  </p>                                  </p>
2292  <blockquote class="text">  <blockquote class="text">
2293  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
2294                                     error message                                     error message
2295  </p>  </p>
2296  </blockquote><p>  </blockquote>
2297                                
2298    
 </p>  
2299  </blockquote><p>  </blockquote><p>
2300                        
2301  </p>  </p>
2302  <p>Example:  <p>Example:
2303  </p>  </p>
# Line 2078  Intellectual Property and Copyright Stat Line 2309  Intellectual Property and Copyright Stat
2309  <p>S: "OK"  <p>S: "OK"
2310  </p>  </p>
2311  </blockquote><p>  </blockquote><p>
2312                        
2313  </p>  </p>
2314  <p>  <p>
2315                          </p>                          </p>
# Line 2088  Intellectual Property and Copyright Stat Line 2319  Intellectual Property and Copyright Stat
2319  <p>S: "OK"  <p>S: "OK"
2320  </p>  </p>
2321  </blockquote><p>  </blockquote><p>
2322                        
2323  </p>  </p>
2324  <a name="rfc.section.6.3"></a><h4><a name="anchor10">6.3</a>&nbsp;Configuring MIDI input drivers</h4>  <a name="anchor10"></a><br /><hr />
2325    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2326    <a name="rfc.section.6.3"></a><h3>6.3.&nbsp;
2327    Configuring MIDI input drivers</h3>
2328    
2329  <p>Instances of drivers in LinuxSampler are called devices. You can use  <p>Instances of drivers in LinuxSampler are called devices. You can use
2330                  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 2118  Intellectual Property and Copyright Stat Line 2352  Intellectual Property and Copyright Stat
2352                  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
2353                  possible values, etc.                  possible values, etc.
2354  </p>  </p>
2355  <a name="rfc.section.6.3.1"></a><h4><a name="GET AVAILABLE_MIDI_INPUT_DRIVERS">6.3.1</a>&nbsp;Getting amount of available MIDI input drivers</h4>  <a name="GET AVAILABLE_MIDI_INPUT_DRIVERS"></a><br /><hr />
2356    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2357    <a name="rfc.section.6.3.1"></a><h3>6.3.1.&nbsp;
2358    Getting amount of available MIDI input drivers</h3>
2359    
2360  <p>Use the following command to get the number of  <p>Use the following command to get the number of
2361                      MIDI input drivers currently available for the                      MIDI input drivers currently available for the
# Line 2130  Intellectual Property and Copyright Stat Line 2367  Intellectual Property and Copyright Stat
2367  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS
2368  </p>  </p>
2369  </blockquote><p>  </blockquote><p>
2370                        
2371  </p>  </p>
2372  <p>Possible Answers:  <p>Possible Answers:
2373  </p>  </p>
# Line 2141  Intellectual Property and Copyright Stat Line 2378  Intellectual Property and Copyright Stat
2378                              number of available MIDI input drivers.                              number of available MIDI input drivers.
2379  </p>  </p>
2380  </blockquote><p>  </blockquote><p>
2381                        
2382  </p>  </p>
2383  <p>Example:  <p>Example:
2384  </p>  </p>
# Line 2153  Intellectual Property and Copyright Stat Line 2390  Intellectual Property and Copyright Stat
2390  <p>S: "2"  <p>S: "2"
2391  </p>  </p>
2392  </blockquote><p>  </blockquote><p>
2393                        
2394  </p>  </p>
2395  <a name="rfc.section.6.3.2"></a><h4><a name="LIST AVAILABLE_MIDI_INPUT_DRIVERS">6.3.2</a>&nbsp;Getting all available MIDI input drivers</h4>  <a name="LIST AVAILABLE_MIDI_INPUT_DRIVERS"></a><br /><hr />
2396    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2397    <a name="rfc.section.6.3.2"></a><h3>6.3.2.&nbsp;
2398    Getting all available MIDI input drivers</h3>
2399    
2400  <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
2401                      for the LinuxSampler instance:                      for the LinuxSampler instance:
# Line 2166  Intellectual Property and Copyright Stat Line 2406  Intellectual Property and Copyright Stat
2406  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS
2407  </p>  </p>
2408  </blockquote><p>  </blockquote><p>
2409                        
2410  </p>  </p>
2411  <p>Possible Answers:  <p>Possible Answers:
2412  </p>  </p>
# Line 2177  Intellectual Property and Copyright Stat Line 2417  Intellectual Property and Copyright Stat
2417                              strings, each symbolizing a MIDI input driver.                              strings, each symbolizing a MIDI input driver.
2418  </p>  </p>
2419  </blockquote><p>  </blockquote><p>
2420                        
2421  </p>  </p>
2422  <p>Example:  <p>Example:
2423  </p>  </p>
# Line 2189  Intellectual Property and Copyright Stat Line 2429  Intellectual Property and Copyright Stat
2429  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
2430  </p>  </p>
2431  </blockquote><p>  </blockquote><p>
2432                        
2433  </p>  </p>
2434  <a name="rfc.section.6.3.3"></a><h4><a name="GET MIDI_INPUT_DRIVER INFO">6.3.3</a>&nbsp;Getting information about a specific MIDI input driver</h4>  <a name="GET MIDI_INPUT_DRIVER INFO"></a><br /><hr />
2435    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2436    <a name="rfc.section.6.3.3"></a><h3>6.3.3.&nbsp;
2437    Getting information about a specific MIDI input driver</h3>
2438    
2439  <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:
2440  </p>  </p>
# Line 2201  Intellectual Property and Copyright Stat Line 2444  Intellectual Property and Copyright Stat
2444  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;
2445  </p>  </p>
2446  </blockquote><p>  </blockquote><p>
2447                        
2448  </p>  </p>
2449  <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver as returned  <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver as returned
2450                      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.                      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.
2451  </p>  </p>
2452  <p>Possible Answers:  <p>Possible Answers:
2453  </p>  </p>
# Line 2225  Intellectual Property and Copyright Stat Line 2468  Intellectual Property and Copyright Stat
2468  <blockquote class="text">  <blockquote class="text">
2469  <p>arbitrary description text about the MIDI input driver  <p>arbitrary description text about the MIDI input driver
2470  </p>  </p>
2471  </blockquote><p>  </blockquote>
2472                                        
2473    
 </p>  
2474  <p>VERSION -  <p>VERSION -
2475                                          </p>                                          </p>
2476  <blockquote class="text">  <blockquote class="text">
2477  <p>arbitrary character string regarding the driver's version  <p>arbitrary character string regarding the driver's version
2478  </p>  </p>
2479  </blockquote><p>  </blockquote>
2480                                        
2481    
 </p>  
2482  <p>PARAMETERS -  <p>PARAMETERS -
2483                                          </p>                                          </p>
2484  <blockquote class="text">  <blockquote class="text">
2485  <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
2486  </p>  </p>
2487  </blockquote><p>  </blockquote>
2488                                        
2489    
2490  </p>  </blockquote>
2491  </blockquote><p>                              
2492    
 </p>  
2493  <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.
2494  </p>  </p>
2495  </blockquote><p>  </blockquote><p>
2496                        
2497  </p>  </p>
2498  <p>Example:  <p>Example:
2499  </p>  </p>
# Line 2268  Intellectual Property and Copyright Stat Line 2511  Intellectual Property and Copyright Stat
2511  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2512  </p>  </p>
2513  </blockquote><p>  </blockquote><p>
2514                        
2515  </p>  </p>
2516  <a name="rfc.section.6.3.4"></a><h4><a name="GET MIDI_INPUT_DRIVER_PARAMETER INFO">6.3.4</a>&nbsp;Getting information about specific MIDI input driver parameter</h4>  <a name="GET MIDI_INPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
2517    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2518    <a name="rfc.section.6.3.4"></a><h3>6.3.4.&nbsp;
2519    Getting information about specific MIDI input driver parameter</h3>
2520    
2521  <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:
2522  </p>  </p>
# Line 2280  Intellectual Property and Copyright Stat Line 2526  Intellectual Property and Copyright Stat
2526  <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;]
2527  </p>  </p>
2528  </blockquote><p>  </blockquote><p>
2529                        
2530  </p>  </p>
2531  <p>Where &lt;midit&gt; is the name of the MIDI input driver as returned  <p>Where &lt;midit&gt; is the name of the MIDI input driver as returned
2532                      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                      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
2533                      parameter name for which information should be obtained (as returned by the                      parameter name for which information should be obtained (as returned by the
2534                      <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                      <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
2535                      of parameters on which the sought parameter &lt;param&gt; depends on,                      of parameters on which the sought parameter &lt;param&gt; depends on,
2536                      &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 ...",
2537                      where character string values are encapsulated into apostrophes ('). Arguments                      where character string values are encapsulated into apostrophes ('). Arguments
# Line 2315  Intellectual Property and Copyright Stat Line 2561  Intellectual Property and Copyright Stat
2561                                  character string(s)                                  character string(s)
2562                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2563  </p>  </p>
2564  </blockquote><p>  </blockquote>
2565                                
2566    
 </p>  
2567  <p>DESCRIPTION -  <p>DESCRIPTION -
2568                                </p>                                </p>
2569  <blockquote class="text">  <blockquote class="text">
2570  <p>arbitrary text describing the purpose of the parameter  <p>arbitrary text describing the purpose of the parameter
2571                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2572  </p>  </p>
2573  </blockquote><p>  </blockquote>
2574                                
2575    
 </p>  
2576  <p>MANDATORY -  <p>MANDATORY -
2577                                </p>                                </p>
2578  <blockquote class="text">  <blockquote class="text">
2579  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
2580                                  given when the device is to be created with the                                  given when the device is to be created with the
2581                                  <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                                  <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
2582                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2583  </p>  </p>
2584  </blockquote><p>  </blockquote>
2585                                
2586    
 </p>  
2587  <p>FIX -  <p>FIX -
2588                                </p>                                </p>
2589  <blockquote class="text">  <blockquote class="text">
2590  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
2591                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
2592                                  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                                  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
2593                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2594  </p>  </p>
2595  </blockquote><p>  </blockquote>
2596                                
2597    
 </p>  
2598  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2599                                </p>                                </p>
2600  <blockquote class="text">  <blockquote class="text">
# Line 2357  Intellectual Property and Copyright Stat Line 2603  Intellectual Property and Copyright Stat
2603                                  multiple values and false only a single value allowed                                  multiple values and false only a single value allowed
2604                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2605  </p>  </p>
2606  </blockquote><p>  </blockquote>
2607                                
2608    
 </p>  
2609  <p>DEPENDS -  <p>DEPENDS -
2610                                </p>                                </p>
2611  <blockquote class="text">  <blockquote class="text">
# Line 2374  Intellectual Property and Copyright Stat Line 2620  Intellectual Property and Copyright Stat
2620                                  chosen by the 'card' parameter                                  chosen by the 'card' parameter
2621                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2622  </p>  </p>
2623  </blockquote><p>  </blockquote>
2624                                
2625    
 </p>  
2626  <p>DEFAULT -  <p>DEFAULT -
2627                                </p>                                </p>
2628  <blockquote class="text">  <blockquote class="text">
2629  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
2630                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
2631                                  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,                                  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,
2632                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
2633                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
2634                                  apostrophes (')                                  apostrophes (')
2635                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2636  </p>  </p>
2637  </blockquote><p>  </blockquote>
2638                                
2639    
 </p>  
2640  <p>RANGE_MIN -  <p>RANGE_MIN -
2641                                </p>                                </p>
2642  <blockquote class="text">  <blockquote class="text">
# Line 2400  Intellectual Property and Copyright Stat Line 2646  Intellectual Property and Copyright Stat
2646                                  with RANGE_MAX, but may also appear without                                  with RANGE_MAX, but may also appear without
2647                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2648  </p>  </p>
2649  </blockquote><p>  </blockquote>
2650                                
2651    
 </p>  
2652  <p>RANGE_MAX -  <p>RANGE_MAX -
2653                                </p>                                </p>
2654  <blockquote class="text">  <blockquote class="text">
# Line 2412  Intellectual Property and Copyright Stat Line 2658  Intellectual Property and Copyright Stat
2658                                  RANGE_MIN, but may also appear without                                  RANGE_MIN, but may also appear without
2659                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2660  </p>  </p>
2661  </blockquote><p>  </blockquote>
2662                                
2663    
 </p>  
2664  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2665                                </p>                                </p>
2666  <blockquote class="text">  <blockquote class="text">
# Line 2423  Intellectual Property and Copyright Stat Line 2669  Intellectual Property and Copyright Stat
2669                                  apostrophes                                  apostrophes
2670                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2671  </p>  </p>
2672  </blockquote><p>  </blockquote>
2673                                
2674    
 </p>  
2675  </blockquote><p>  </blockquote><p>
2676                        
2677  </p>  </p>
2678  <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.
2679  </p>  </p>
# Line 2453  Intellectual Property and Copyright Stat Line 2699  Intellectual Property and Copyright Stat
2699  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2700  </p>  </p>
2701  </blockquote><p>  </blockquote><p>
2702                        
2703  </p>  </p>
2704  <a name="rfc.section.6.3.5"></a><h4><a name="CREATE MIDI_INPUT_DEVICE">6.3.5</a>&nbsp;Creating a MIDI input device</h4>  <a name="CREATE MIDI_INPUT_DEVICE"></a><br /><hr />
2705    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2706    <a name="rfc.section.6.3.5"></a><h3>6.3.5.&nbsp;
2707    Creating a MIDI input device</h3>
2708    
2709  <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:
2710  </p>  </p>
# Line 2465  Intellectual Property and Copyright Stat Line 2714  Intellectual Property and Copyright Stat
2714  <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;]
2715  </p>  </p>
2716  </blockquote><p>  </blockquote><p>
2717                        
2718  </p>  </p>
2719  <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system as returned  <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system as returned
2720                      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                      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
2721                      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
2722                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
2723                      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 2486  Intellectual Property and Copyright Stat Line 2735  Intellectual Property and Copyright Stat
2735  <p>in case the device was successfully created, where  <p>in case the device was successfully created, where
2736                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
2737  </p>  </p>
2738  </blockquote><p>  </blockquote>
2739                                
2740    
 </p>  
2741  <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;" -
2742                                  </p>                                  </p>
2743  <blockquote class="text">  <blockquote class="text">
# Line 2497  Intellectual Property and Copyright Stat Line 2746  Intellectual Property and Copyright Stat
2746                                      there are noteworthy issue(s) related, providing an                                      there are noteworthy issue(s) related, providing an
2747                                      appropriate warning code and warning message                                      appropriate warning code and warning message
2748  </p>  </p>
2749  </blockquote><p>  </blockquote>
2750                                
2751    
 </p>  
2752  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2753                                  </p>                                  </p>
2754  <blockquote class="text">  <blockquote class="text">
2755  <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
2756  </p>  </p>
2757  </blockquote><p>  </blockquote>
2758                                
2759    
 </p>  
2760  </blockquote><p>  </blockquote><p>
2761                        
2762  </p>  </p>
2763  <p>Example:  <p>Example:
2764  </p>  </p>
# Line 2521  Intellectual Property and Copyright Stat Line 2770  Intellectual Property and Copyright Stat
2770  <p>S: "OK[0]"  <p>S: "OK[0]"
2771  </p>  </p>
2772  </blockquote><p>  </blockquote><p>
2773                        
2774  </p>  </p>
2775  <a name="rfc.section.6.3.6"></a><h4><a name="DESTROY MIDI_INPUT_DEVICE">6.3.6</a>&nbsp;Destroying a MIDI input device</h4>  <a name="DESTROY MIDI_INPUT_DEVICE"></a><br /><hr />
2776    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2777    <a name="rfc.section.6.3.6"></a><h3>6.3.6.&nbsp;
2778    Destroying a MIDI input device</h3>
2779    
2780  <p>Use the following command to destroy a created MIDI input device:  <p>Use the following command to destroy a created MIDI input device:
2781  </p>  </p>
# Line 2533  Intellectual Property and Copyright Stat Line 2785  Intellectual Property and Copyright Stat
2785  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;
2786  </p>  </p>
2787  </blockquote><p>  </blockquote><p>
2788                        
2789  </p>  </p>
2790  <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID as returned by the  <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID as returned by the
2791                      <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>                      <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>
2792                      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>                      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>
2793                      command.                      command.
2794  </p>  </p>
2795  <p>Possible Answers:  <p>Possible Answers:
# Line 2550  Intellectual Property and Copyright Stat Line 2802  Intellectual Property and Copyright Stat
2802  <blockquote class="text">  <blockquote class="text">
2803  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
2804  </p>  </p>
2805  </blockquote><p>  </blockquote>
2806                                
2807    
 </p>  
2808  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2809                                  </p>                                  </p>
2810  <blockquote class="text">  <blockquote class="text">
# Line 2560  Intellectual Property and Copyright Stat Line 2812  Intellectual Property and Copyright Stat
2812                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
2813                                      warning message                                      warning message
2814  </p>  </p>
2815  </blockquote><p>  </blockquote>
2816                                
2817    
 </p>  
2818  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2819                                  </p>                                  </p>
2820  <blockquote class="text">  <blockquote class="text">
2821  <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
2822  </p>  </p>
2823  </blockquote><p>  </blockquote>
2824                                
2825    
 </p>  
2826  </blockquote><p>  </blockquote><p>
2827                        
2828  </p>  </p>
2829  <p>Example:  <p>Example:
2830  </p>  </p>
# Line 2584  Intellectual Property and Copyright Stat Line 2836  Intellectual Property and Copyright Stat
2836  <p>S: "OK"  <p>S: "OK"
2837  </p>  </p>
2838  </blockquote><p>  </blockquote><p>
2839                        
2840  </p>  </p>
2841  <a name="rfc.section.6.3.7"></a><h4><a name="GET MIDI_INPUT_DEVICES">6.3.7</a>&nbsp;Getting all created MIDI input device count</h4>  <a name="GET MIDI_INPUT_DEVICES"></a><br /><hr />
2842    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2843    <a name="rfc.section.6.3.7"></a><h3>6.3.7.&nbsp;
2844    Getting all created MIDI input device count</h3>
2845    
2846  <p>Use the following command to count all created MIDI input devices:  <p>Use the following command to count all created MIDI input devices:
2847  </p>  </p>
# Line 2596  Intellectual Property and Copyright Stat Line 2851  Intellectual Property and Copyright Stat
2851  <p>GET MIDI_INPUT_DEVICES  <p>GET MIDI_INPUT_DEVICES
2852  </p>  </p>
2853  </blockquote><p>  </blockquote><p>
2854                        
2855  </p>  </p>
2856  <p>Possible Answers:  <p>Possible Answers:
2857  </p>  </p>
# Line 2607  Intellectual Property and Copyright Stat Line 2862  Intellectual Property and Copyright Stat
2862                              MIDI input devices.                              MIDI input devices.
2863  </p>  </p>
2864  </blockquote><p>  </blockquote><p>
2865                        
2866  </p>  </p>
2867  <p>Example:  <p>Example:
2868  </p>  </p>
# Line 2619  Intellectual Property and Copyright Stat Line 2874  Intellectual Property and Copyright Stat
2874  <p>S: "3"  <p>S: "3"
2875  </p>  </p>
2876  </blockquote><p>  </blockquote><p>
2877                        
2878  </p>  </p>
2879  <a name="rfc.section.6.3.8"></a><h4><a name="LIST MIDI_INPUT_DEVICES">6.3.8</a>&nbsp;Getting all created MIDI input device list</h4>  <a name="LIST MIDI_INPUT_DEVICES"></a><br /><hr />
2880    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2881    <a name="rfc.section.6.3.8"></a><h3>6.3.8.&nbsp;
2882    Getting all created MIDI input device list</h3>
2883    
2884  <p>Use the following command to list all created MIDI input devices:  <p>Use the following command to list all created MIDI input devices:
2885  </p>  </p>
# Line 2631  Intellectual Property and Copyright Stat Line 2889  Intellectual Property and Copyright Stat
2889  <p>LIST MIDI_INPUT_DEVICES  <p>LIST MIDI_INPUT_DEVICES
2890  </p>  </p>
2891  </blockquote><p>  </blockquote><p>
2892                        
2893  </p>  </p>
2894  <p>Possible Answers:  <p>Possible Answers:
2895  </p>  </p>
# Line 2642  Intellectual Property and Copyright Stat Line 2900  Intellectual Property and Copyright Stat
2900                              with the numerical Ids of all created MIDI input devices.                              with the numerical Ids of all created MIDI input devices.
2901  </p>  </p>
2902  </blockquote><p>  </blockquote><p>
2903                        
2904  </p>  </p>
2905  <p>Examples:  <p>Examples:
2906  </p>  </p>
# Line 2654  Intellectual Property and Copyright Stat Line 2912  Intellectual Property and Copyright Stat
2912  <p>S: "0,1,2"  <p>S: "0,1,2"
2913  </p>  </p>
2914  </blockquote><p>  </blockquote><p>
2915                        
2916  </p>  </p>
2917  <p>  <p>
2918                          </p>                          </p>
# Line 2664  Intellectual Property and Copyright Stat Line 2922  Intellectual Property and Copyright Stat
2922  <p>S: "1,3"  <p>S: "1,3"
2923  </p>  </p>
2924  </blockquote><p>  </blockquote><p>
2925                        
2926  </p>  </p>
2927  <a name="rfc.section.6.3.9"></a><h4><a name="GET MIDI_INPUT_DEVICE INFO">6.3.9</a>&nbsp;Getting current settings of a MIDI input device</h4>  <a name="GET MIDI_INPUT_DEVICE INFO"></a><br /><hr />
2928    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2929    <a name="rfc.section.6.3.9"></a><h3>6.3.9.&nbsp;
2930    Getting current settings of a MIDI input device</h3>
2931    
2932  <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:
2933  </p>  </p>
# Line 2676  Intellectual Property and Copyright Stat Line 2937  Intellectual Property and Copyright Stat
2937  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;
2938  </p>  </p>
2939  </blockquote><p>  </blockquote><p>
2940                        
2941  </p>  </p>
2942  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the
2943                      <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>                      <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>
2944                      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>                      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>
2945                      command.                      command.
2946  </p>  </p>
2947  <p>Possible Answers:  <p>Possible Answers:
# Line 2703  Intellectual Property and Copyright Stat Line 2964  Intellectual Property and Copyright Stat
2964                                          </p>                                          </p>
2965  <blockquote class="text">  <blockquote class="text">
2966  <p>identifier of the used MIDI input driver, as e.g.  <p>identifier of the used MIDI input driver, as e.g.
2967                                              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>                                              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>
2968                                              command                                              command
2969  </p>  </p>
2970  </blockquote><p>  </blockquote>
2971                                        
2972    
2973  </p>  </blockquote>
2974  </blockquote><p>                                  
                                 </p>  
2975  <blockquote class="text">  <blockquote class="text">
2976  <p>ACTIVE -  <p>ACTIVE -
2977                                          </p>                                          </p>
# Line 2720  Intellectual Property and Copyright Stat Line 2981  Intellectual Property and Copyright Stat
2981                                              and thus doesn't forward them to connected sampler                                              and thus doesn't forward them to connected sampler
2982                                              channels                                              channels
2983  </p>  </p>
2984  </blockquote><p>  </blockquote>
2985                                        
2986    
2987  </p>  </blockquote>
2988  </blockquote><p>                              
2989    
 </p>  
2990  </blockquote><p>  </blockquote><p>
2991                        
2992  </p>  </p>
2993  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
2994                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
2995                      returned by all MIDI input devices. Every MIDI input driver                      returned by all MIDI input devices. Every MIDI input driver
2996                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
2997                      <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                      <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
2998                      by this command.                      by this command.
2999  </p>  </p>
3000  <p>Example:  <p>Example:
# Line 2750  Intellectual Property and Copyright Stat Line 3011  Intellectual Property and Copyright Stat
3011  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3012  </p>  </p>
3013  </blockquote><p>  </blockquote><p>
3014                        
3015  </p>  </p>
3016  <a name="rfc.section.6.3.10"></a><h4><a name="SET MIDI_INPUT_DEVICE_PARAMETER">6.3.10</a>&nbsp;Changing settings of MIDI input devices</h4>  <a name="SET MIDI_INPUT_DEVICE_PARAMETER"></a><br /><hr />
3017    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3018    <a name="rfc.section.6.3.10"></a><h3>6.3.10.&nbsp;
3019    Changing settings of MIDI input devices</h3>
3020    
3021  <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:
3022  </p>  </p>
# Line 2762  Intellectual Property and Copyright Stat Line 3026  Intellectual Property and Copyright Stat
3026  <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;
3027  </p>  </p>
3028  </blockquote><p>  </blockquote><p>
3029                        
3030  </p>  </p>
3031  <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
3032                      MIDI input device as returned by the                      MIDI input device as returned by the
3033                      <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>                      <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>
3034                      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>                      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>
3035                      command, &lt;key&gt; by the name of the parameter to change and                      command, &lt;key&gt; by the name of the parameter to change and
3036                      &lt;value&gt; by the new value for this parameter.                      &lt;value&gt; by the new value for this parameter.
3037  </p>  </p>
# Line 2781  Intellectual Property and Copyright Stat Line 3045  Intellectual Property and Copyright Stat
3045  <blockquote class="text">  <blockquote class="text">
3046  <p>in case setting was successfully changed  <p>in case setting was successfully changed
3047  </p>  </p>
3048  </blockquote><p>  </blockquote>
3049                                
3050    
 </p>  
3051  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3052                                  </p>                                  </p>
3053  <blockquote class="text">  <blockquote class="text">
# Line 2791  Intellectual Property and Copyright Stat Line 3055  Intellectual Property and Copyright Stat
3055                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3056                                      warning code and warning message                                      warning code and warning message
3057  </p>  </p>
3058  </blockquote><p>  </blockquote>
3059                                
3060    
 </p>  
3061  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3062                                  </p>                                  </p>
3063  <blockquote class="text">  <blockquote class="text">
3064  <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
3065  </p>  </p>
3066  </blockquote><p>  </blockquote>
3067                                
3068    
 </p>  
3069  </blockquote><p>  </blockquote><p>
3070                        
3071  </p>  </p>
3072  <p>Example:  <p>Example:
3073  </p>  </p>
# Line 2815  Intellectual Property and Copyright Stat Line 3079  Intellectual Property and Copyright Stat
3079  <p>S: "OK"  <p>S: "OK"
3080  </p>  </p>
3081  </blockquote><p>  </blockquote><p>
3082                        
3083  </p>  </p>
3084  <a name="rfc.section.6.3.11"></a><h4><a name="GET MIDI_INPUT_PORT INFO">6.3.11</a>&nbsp;Getting information about a MIDI port</h4>  <a name="GET MIDI_INPUT_PORT INFO"></a><br /><hr />
3085    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3086    <a name="rfc.section.6.3.11"></a><h3>6.3.11.&nbsp;
3087    Getting information about a MIDI port</h3>
3088    
3089  <p>Use the following command to get information about a MIDI port:  <p>Use the following command to get information about a MIDI port:
3090  </p>  </p>
# Line 2827  Intellectual Property and Copyright Stat Line 3094  Intellectual Property and Copyright Stat
3094  <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;
3095  </p>  </p>
3096  </blockquote><p>  </blockquote><p>
3097                        
3098  </p>  </p>
3099  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the
3100                      <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>                      <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>
3101                      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>                      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>
3102                      command and &lt;midi-port&gt; the MIDI input port number.                      command and &lt;midi-port&gt; the MIDI input port number.
3103  </p>  </p>
3104  <p>Possible Answers:  <p>Possible Answers:
# Line 2850  Intellectual Property and Copyright Stat Line 3117  Intellectual Property and Copyright Stat
3117  <blockquote class="text">  <blockquote class="text">
3118  <p>arbitrary character string naming the port  <p>arbitrary character string naming the port
3119  </p>  </p>
3120  </blockquote><p>  </blockquote>
3121                                
3122    
 </p>  
3123  </blockquote><p>  </blockquote><p>
3124                        
3125  </p>  </p>
3126  <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
3127                      ports regardless of the MIDI driver and port. Every MIDI port                      ports regardless of the MIDI driver and port. Every MIDI port
# Line 2875  Intellectual Property and Copyright Stat Line 3142  Intellectual Property and Copyright Stat
3142  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3143  </p>  </p>
3144  </blockquote><p>  </blockquote><p>
3145                        
3146  </p>  </p>
3147  <a name="rfc.section.6.3.12"></a><h4><a name="GET MIDI_INPUT_PORT_PARAMETER INFO">6.3.12</a>&nbsp;Getting information about specific MIDI port parameter</h4>  <a name="GET MIDI_INPUT_PORT_PARAMETER INFO"></a><br /><hr />
3148    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3149    <a name="rfc.section.6.3.12"></a><h3>6.3.12.&nbsp;
3150    Getting information about specific MIDI port parameter</h3>
3151    
3152  <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:
3153  </p>  </p>
# Line 2887  Intellectual Property and Copyright Stat Line 3157  Intellectual Property and Copyright Stat
3157  <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;
3158  </p>  </p>
3159  </blockquote><p>  </blockquote><p>
3160                        
3161  </p>  </p>
3162  <p>Where &lt;dev-id&gt; is the numerical ID of the MIDI input device as returned by the  <p>Where &lt;dev-id&gt; is the numerical ID of the MIDI input device as returned by the
3163                      <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>                      <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>
3164                      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>                      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>
3165                      command, &lt;port&gt; the MIDI port number and                      command, &lt;port&gt; the MIDI port number and
3166                      &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
3167                      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).                      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).
3168  </p>  </p>
3169  <p>Possible Answers:  <p>Possible Answers:
3170  </p>  </p>
# Line 2918  Intellectual Property and Copyright Stat Line 3188  Intellectual Property and Copyright Stat
3188                                      character string(s)                                      character string(s)
3189                                      (always returned)                                      (always returned)
3190  </p>  </p>
3191  </blockquote><p>  </blockquote>
3192                                
3193    
 </p>  
3194  <p>DESCRIPTION -  <p>DESCRIPTION -
3195                                  </p>                                  </p>
3196  <blockquote class="text">  <blockquote class="text">
3197  <p>arbitrary text describing the purpose of the parameter  <p>arbitrary text describing the purpose of the parameter
3198                                      (always returned)                                      (always returned)
3199  </p>  </p>
3200  </blockquote><p>  </blockquote>
3201                                
3202    
 </p>  
3203  <p>FIX -  <p>FIX -
3204                                  </p>                                  </p>
3205  <blockquote class="text">  <blockquote class="text">
# Line 2937  Intellectual Property and Copyright Stat Line 3207  Intellectual Property and Copyright Stat
3207                                      read only, thus cannot be altered                                      read only, thus cannot be altered
3208                                      (always returned)                                      (always returned)
3209  </p>  </p>
3210  </blockquote><p>  </blockquote>
3211                                
3212    
 </p>  
3213  <p>MULTIPLICITY -  <p>MULTIPLICITY -
3214                                  </p>                                  </p>
3215  <blockquote class="text">  <blockquote class="text">
# Line 2948  Intellectual Property and Copyright Stat Line 3218  Intellectual Property and Copyright Stat
3218                                      multiple values and false only a single value allowed                                      multiple values and false only a single value allowed
3219                                      (always returned)                                      (always returned)
3220  </p>  </p>
3221  </blockquote><p>  </blockquote>
3222                                
3223    
 </p>  
3224  <p>RANGE_MIN -  <p>RANGE_MIN -
3225                                  </p>                                  </p>
3226  <blockquote class="text">  <blockquote class="text">
# Line 2961  Intellectual Property and Copyright Stat Line 3231  Intellectual Property and Copyright Stat
3231                                      (optionally returned, dependent to driver and port                                      (optionally returned, dependent to driver and port
3232                                      parameter)                                      parameter)
3233  </p>  </p>
3234  </blockquote><p>  </blockquote>
3235                                
3236    
 </p>  
3237  <p>RANGE_MAX -  <p>RANGE_MAX -
3238                                  </p>                                  </p>
3239  <blockquote class="text">  <blockquote class="text">
# Line 2974  Intellectual Property and Copyright Stat Line 3244  Intellectual Property and Copyright Stat
3244                                      (optionally returned, dependent to driver and port                                      (optionally returned, dependent to driver and port
3245                                      parameter)                                      parameter)
3246  </p>  </p>
3247  </blockquote><p>  </blockquote>
3248                                
3249    
 </p>  
3250  <p>POSSIBILITIES -  <p>POSSIBILITIES -
3251                                  </p>                                  </p>
3252  <blockquote class="text">  <blockquote class="text">
# Line 2986  Intellectual Property and Copyright Stat Line 3256  Intellectual Property and Copyright Stat
3256                                      (optionally returned, dependent to device and port                                      (optionally returned, dependent to device and port
3257                                      parameter)                                      parameter)
3258  </p>  </p>
3259  </blockquote><p>  </blockquote>
3260                                
3261    
 </p>  
3262  </blockquote><p>  </blockquote><p>
3263                        
3264  </p>  </p>
3265  <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.
3266  </p>  </p>
# Line 3014  Intellectual Property and Copyright Stat Line 3284  Intellectual Property and Copyright Stat
3284  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3285  </p>  </p>
3286  </blockquote><p>  </blockquote><p>
3287                        
3288  </p>  </p>
3289  <a name="rfc.section.6.3.13"></a><h4><a name="SET MIDI_INPUT_PORT_PARAMETER">6.3.13</a>&nbsp;Changing settings of MIDI input ports</h4>  <a name="SET MIDI_INPUT_PORT_PARAMETER"></a><br /><hr />
3290    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3291    <a name="rfc.section.6.3.13"></a><h3>6.3.13.&nbsp;
3292    Changing settings of MIDI input ports</h3>
3293    
3294  <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:
3295  </p>  </p>
# Line 3026  Intellectual Property and Copyright Stat Line 3299  Intellectual Property and Copyright Stat
3299  <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;
3300  </p>  </p>
3301  </blockquote><p>  </blockquote><p>
3302                        
3303  </p>  </p>
3304  <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
3305                      MIDI device as returned by the                      MIDI device as returned by the
3306                      <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>                      <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>
3307                      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>                      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>
3308                      command, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of                      command, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of
3309                      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
3310                      parameter.                      parameter (encapsulated into apostrophes) or NONE (not encapsulated into apostrophes)
3311                        for specifying no value for parameters allowing a list of values.
3312  </p>  </p>
3313  <p>Possible Answers:  <p>Possible Answers:
3314  </p>  </p>
# Line 3046  Intellectual Property and Copyright Stat Line 3320  Intellectual Property and Copyright Stat
3320  <blockquote class="text">  <blockquote class="text">
3321  <p>in case setting was successfully changed  <p>in case setting was successfully changed
3322  </p>  </p>
3323  </blockquote><p>  </blockquote>
3324                                
3325    
 </p>  
3326  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3327                                  </p>                                  </p>
3328  <blockquote class="text">  <blockquote class="text">
# Line 3056  Intellectual Property and Copyright Stat Line 3330  Intellectual Property and Copyright Stat
3330                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3331                                      warning code and warning message                                      warning code and warning message
3332  </p>  </p>
3333  </blockquote><p>  </blockquote>
3334                                
3335    
 </p>  
3336  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3337                                  </p>                                  </p>
3338  <blockquote class="text">  <blockquote class="text">
3339  <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
3340  </p>  </p>
3341  </blockquote><p>  </blockquote>
3342                                
3343    
 </p>  
3344  </blockquote><p>  </blockquote><p>
3345                        
3346  </p>  </p>
3347  <p>Example:  <p>Example:
3348  </p>  </p>
3349  <p>  <p>
3350                          </p>                          </p>
3351  <blockquote class="text">  <blockquote class="text">
3352    <p>C: "SET MIDI_INPUT_PORT_PARAMETER 0 0 ALSA_SEQ_BINDINGS='20:0'"
3353    </p>
3354    <p>S: "OK"
3355    </p>
3356    </blockquote><p>
3357                        
3358    </p>
3359  <p>  <p>
3360                            </p>
3361    <blockquote class="text">
3362    <p>C: "SET MIDI_INPUT_PORT_PARAMETER 0 0 ALSA_SEQ_BINDINGS=NONE"
3363    </p>
3364    <p>S: "OK"
3365  </p>  </p>
3366  </blockquote><p>  </blockquote><p>
3367                        
3368  </p>  </p>
3369  <a name="rfc.section.6.4"></a><h4><a name="anchor11">6.4</a>&nbsp;Configuring sampler channels</h4>  <a name="anchor11"></a><br /><hr />
3370    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3371    <a name="rfc.section.6.4"></a><h3>6.4.&nbsp;
3372    Configuring sampler channels</h3>
3373    
3374  <p>The following commands describe how to add and remove sampler channels, associate a  <p>The following commands describe how to add and remove sampler channels, associate a
3375                  sampler channel with a sampler engine, load instruments and connect sampler channels to                  sampler channel with a sampler engine, load instruments and connect sampler channels to
3376                  MIDI and audio devices.                  MIDI and audio devices.
3377  </p>  </p>
3378  <a name="rfc.section.6.4.1"></a><h4><a name="LOAD INSTRUMENT">6.4.1</a>&nbsp;Loading an instrument</h4>  <a name="LOAD INSTRUMENT"></a><br /><hr />
3379    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3380    <a name="rfc.section.6.4.1"></a><h3>6.4.1.&nbsp;
3381    Loading an instrument</h3>
3382    
3383  <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:
3384  </p>  </p>
# Line 3096  Intellectual Property and Copyright Stat Line 3388  Intellectual Property and Copyright Stat
3388  <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;
3389  </p>  </p>
3390  </blockquote><p>  </blockquote><p>
3391                        
3392  </p>  </p>
3393  <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
3394                      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
# Line 3104  Intellectual Property and Copyright Stat Line 3396  Intellectual Property and Copyright Stat
3396                      number of the sampler channel the instrument should be assigned to.                      number of the sampler channel the instrument should be assigned to.
3397                      Each sampler channel can only have one instrument.                      Each sampler channel can only have one instrument.
3398  </p>  </p>
3399    <p>Notice: since LSCP 1.2 the &lt;filename&gt; argument supports
3400                        escape characters for special characters (see chapter
3401                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>"
3402                        for details) and accordingly backslash characters in the filename
3403                        MUST now be escaped as well!
3404    </p>
3405  <p>The difference between regular and NON_MODAL versions of the command  <p>The difference between regular and NON_MODAL versions of the command
3406                      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
3407                      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
3408                      returns immediately and a background process is launched to load the instrument                      returns immediately and a background process is launched to load the instrument
3409                      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>                      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>
3410                      command can be used to obtain loading                      command can be used to obtain loading
3411                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks
3412                      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 3125  Intellectual Property and Copyright Stat Line 3423  Intellectual Property and Copyright Stat
3423  <blockquote class="text">  <blockquote class="text">
3424  <p>in case the instrument was successfully loaded  <p>in case the instrument was successfully loaded
3425  </p>  </p>
3426  </blockquote><p>  </blockquote>
3427                                
3428    
 </p>  
3429  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3430                                  </p>                                  </p>
3431  <blockquote class="text">  <blockquote class="text">
# Line 3137  Intellectual Property and Copyright Stat Line 3435  Intellectual Property and Copyright Stat
3435                                      instrument file), providing an appropriate warning code and                                      instrument file), providing an appropriate warning code and
3436                                      warning message                                      warning message
3437  </p>  </p>
3438  </blockquote><p>  </blockquote>
3439                                
3440    
 </p>  
3441  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3442                                  </p>                                  </p>
3443  <blockquote class="text">  <blockquote class="text">
3444  <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
3445  </p>  </p>
3446  </blockquote><p>  </blockquote>
3447                                
3448    
 </p>  
3449  </blockquote><p>  </blockquote><p>
3450                        
3451  </p>  </p>
3452  <p>Example:  <p>Example:
3453  </p>  </p>
# Line 3159  Intellectual Property and Copyright Stat Line 3457  Intellectual Property and Copyright Stat
3457  <p>  <p>
3458  </p>  </p>
3459  </blockquote><p>  </blockquote><p>
3460                        
3461  </p>  </p>
3462  <a name="rfc.section.6.4.2"></a><h4><a name="LOAD ENGINE">6.4.2</a>&nbsp;Loading a sampler engine</h4>  <a name="LOAD ENGINE"></a><br /><hr />
3463    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3464    <a name="rfc.section.6.4.2"></a><h3>6.4.2.&nbsp;
3465    Loading a sampler engine</h3>
3466    
3467  <p>A sampler engine type can be associated to a specific sampler  <p>A sampler engine type can be associated to a specific sampler
3468                      channel by the following command:                      channel by the following command:
# Line 3172  Intellectual Property and Copyright Stat Line 3473  Intellectual Property and Copyright Stat
3473  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;
3474  </p>  </p>
3475  </blockquote><p>  </blockquote><p>
3476                        
3477  </p>  </p>
3478  <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
3479                      <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;                      <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;
3480                      the sampler channel as returned by the                      the sampler channel as returned by the
3481                      <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a> or                      <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a> or
3482                      <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                      <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
3483                      the engine type should be assigned to. This command should be issued                      the engine type should be assigned to. This command should be issued
3484                      after adding a new sampler channel and before any other control                      after adding a new sampler channel and before any other control
3485                      commands on the new sampler channel. It can also be used to change                      commands on the new sampler channel. It can also be used to change
# Line 3198  Intellectual Property and Copyright Stat Line 3499  Intellectual Property and Copyright Stat
3499  <blockquote class="text">  <blockquote class="text">
3500  <p>in case the engine was successfully deployed  <p>in case the engine was successfully deployed
3501  </p>  </p>
3502  </blockquote><p>  </blockquote>
3503                                
3504    
 </p>  
3505  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3506                                  </p>                                  </p>
3507  <blockquote class="text">  <blockquote class="text">
# Line 3208  Intellectual Property and Copyright Stat Line 3509  Intellectual Property and Copyright Stat
3509                                      are noteworthy issue(s) related, providing an appropriate                                      are noteworthy issue(s) related, providing an appropriate
3510                                      warning code and warning message                                      warning code and warning message
3511  </p>  </p>
3512  </blockquote><p>  </blockquote>
3513                                
3514    
 </p>  
3515  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3516                                  </p>                                  </p>
3517  <blockquote class="text">  <blockquote class="text">
3518  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
3519                                      error message                                      error message
3520  </p>  </p>
3521  </blockquote><p>  </blockquote>
3522                                
3523    
 </p>  
3524  </blockquote><p>  </blockquote><p>
3525                        
3526  </p>  </p>
3527  <p>Example:  <p>Example:
3528  </p>  </p>
# Line 3231  Intellectual Property and Copyright Stat Line 3532  Intellectual Property and Copyright Stat
3532  <p>  <p>
3533  </p>  </p>
3534  </blockquote><p>  </blockquote><p>
3535                        
3536  </p>  </p>
3537  <a name="rfc.section.6.4.3"></a><h4><a name="GET CHANNELS">6.4.3</a>&nbsp;Getting all created sampler channel count</h4>  <a name="GET CHANNELS"></a><br /><hr />
3538    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3539    <a name="rfc.section.6.4.3"></a><h3>6.4.3.&nbsp;
3540    Getting all created sampler channel count</h3>
3541    
3542  <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
3543                      current amount of sampler channels, the front-end can send the                      current amount of sampler channels, the front-end can send the
# Line 3245  Intellectual Property and Copyright Stat Line 3549  Intellectual Property and Copyright Stat
3549  <p>GET CHANNELS  <p>GET CHANNELS
3550  </p>  </p>
3551  </blockquote><p>  </blockquote><p>
3552                        
3553  </p>  </p>
3554  <p>Possible Answers:  <p>Possible Answers:
3555  </p>  </p>
# Line 3255  Intellectual Property and Copyright Stat Line 3559  Intellectual Property and Copyright Stat
3559  <p>LinuxSampler will answer by returning the current number of sampler channels.  <p>LinuxSampler will answer by returning the current number of sampler channels.
3560  </p>  </p>
3561  </blockquote><p>  </blockquote><p>
3562                        
3563  </p>  </p>
3564  <p>Example:  <p>Example:
3565  </p>  </p>
# Line 3267  Intellectual Property and Copyright Stat Line 3571  Intellectual Property and Copyright Stat
3571  <p>S: "12"  <p>S: "12"
3572  </p>  </p>
3573  </blockquote><p>  </blockquote><p>
3574                        
3575  </p>  </p>
3576  <a name="rfc.section.6.4.4"></a><h4><a name="LIST CHANNELS">6.4.4</a>&nbsp;Getting all created sampler channel list</h4>  <a name="LIST CHANNELS"></a><br /><hr />
3577    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3578    <a name="rfc.section.6.4.4"></a><h3>6.4.4.&nbsp;
3579    Getting all created sampler channel list</h3>
3580    
3581  <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
3582                      current list of sampler channels, the front-end can send the                      current list of sampler channels, the front-end can send the
# Line 3281  Intellectual Property and Copyright Stat Line 3588  Intellectual Property and Copyright Stat
3588  <p>LIST CHANNELS  <p>LIST CHANNELS
3589  </p>  </p>
3590  </blockquote><p>  </blockquote><p>
3591                        
3592  </p>  </p>
3593  <p>Possible Answers:  <p>Possible Answers:
3594  </p>  </p>
# Line 3292  Intellectual Property and Copyright Stat Line 3599  Intellectual Property and Copyright Stat
3599                              with all sampler channels numerical IDs.                              with all sampler channels numerical IDs.
3600  </p>  </p>
3601  </blockquote><p>  </blockquote><p>
3602                        
3603  </p>  </p>
3604  <p>Example:  <p>Example:
3605  </p>  </p>
# Line 3304  Intellectual Property and Copyright Stat Line 3611  Intellectual Property and Copyright Stat
3611  <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"
3612  </p>  </p>
3613  </blockquote><p>  </blockquote><p>
3614                        
3615  </p>  </p>
3616  <a name="rfc.section.6.4.5"></a><h4><a name="ADD CHANNEL">6.4.5</a>&nbsp;Adding a new sampler channel</h4>  <a name="ADD CHANNEL"></a><br /><hr />
3617    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3618    <a name="rfc.section.6.4.5"></a><h3>6.4.5.&nbsp;
3619    Adding a new sampler channel</h3>
3620    
3621  <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
3622                      channel list by sending the following command:                      channel list by sending the following command:
# Line 3317  Intellectual Property and Copyright Stat Line 3627  Intellectual Property and Copyright Stat
3627  <p>ADD CHANNEL  <p>ADD CHANNEL
3628  </p>  </p>
3629  </blockquote><p>  </blockquote><p>
3630                        
3631  </p>  </p>
3632  <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
3633                      sampler channel will be appended to the end of the sampler channel                      sampler channel will be appended to the end of the sampler channel
# Line 3343  Intellectual Property and Copyright Stat Line 3653  Intellectual Property and Copyright Stat
3653                                      the sampler channel by sending subsequent initialization                                      the sampler channel by sending subsequent initialization
3654                                      commands                                      commands
3655  </p>  </p>
3656  </blockquote><p>  </blockquote>
3657                                
3658    
 </p>  
3659  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3660                                  </p>                                  </p>
3661  <blockquote class="text">  <blockquote class="text">
# Line 3353  Intellectual Property and Copyright Stat Line 3663  Intellectual Property and Copyright Stat
3663                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3664                                      warning code and warning message                                      warning code and warning message
3665  </p>  </p>
3666  </blockquote><p>  </blockquote>
3667                                
3668    
 </p>  
3669  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3670                                  </p>                                  </p>
3671  <blockquote class="text">  <blockquote class="text">
3672  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
3673                                      error message                                      error message
3674  </p>  </p>
3675  </blockquote><p>  </blockquote>
3676                                
3677    
 </p>  
3678  </blockquote><p>  </blockquote><p>
3679                        
3680  </p>  </p>
3681  <p>Example:  <p>Example:
3682  </p>  </p>
# Line 3376  Intellectual Property and Copyright Stat Line 3686  Intellectual Property and Copyright Stat
3686  <p>  <p>
3687  </p>  </p>
3688  </blockquote><p>  </blockquote><p>
3689                        
3690  </p>  </p>
3691  <a name="rfc.section.6.4.6"></a><h4><a name="REMOVE CHANNEL">6.4.6</a>&nbsp;Removing a sampler channel</h4>  <a name="REMOVE CHANNEL"></a><br /><hr />
3692    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3693    <a name="rfc.section.6.4.6"></a><h3>6.4.6.&nbsp;
3694    Removing a sampler channel</h3>
3695    
3696  <p>A sampler channel can be removed by sending the following command:  <p>A sampler channel can be removed by sending the following command:
3697  </p>  </p>
# Line 3388  Intellectual Property and Copyright Stat Line 3701  Intellectual Property and Copyright Stat
3701  <p>REMOVE CHANNEL &lt;sampler-channel&gt;  <p>REMOVE CHANNEL &lt;sampler-channel&gt;
3702  </p>  </p>
3703  </blockquote><p>  </blockquote><p>
3704                        
3705  </p>  </p>
3706  <p>Where &lt;sampler-channel&gt; should be replaced by the  <p>Where &lt;sampler-channel&gt; should be replaced by the
3707                      number of the sampler channel as given by the                      number of the sampler channel as given by the
3708                      <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span> (</span><span class="info">Adding a new sampler channel</span><span>)</span></a>                      <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a>
3709                      or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span> (</span><span class="info">Getting all created sampler channel list</span><span>)</span></a>                      or <a class='info' href='#LIST CHANNELS'>"LIST CHANNELS"<span> (</span><span class='info'>Getting all created sampler channel list</span><span>)</span></a>
3710                      command. The channel numbers of all subsequent sampler channels                      command. The channel numbers of all subsequent sampler channels
3711                      remain the same.                      remain the same.
3712  </p>  </p>
# Line 3407  Intellectual Property and Copyright Stat Line 3720  Intellectual Property and Copyright Stat
3720  <blockquote class="text">  <blockquote class="text">
3721  <p>in case the given sampler channel could be removed  <p>in case the given sampler channel could be removed
3722  </p>  </p>
3723  </blockquote><p>  </blockquote>
3724                                
3725    
 </p>  
3726  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3727                                  </p>                                  </p>
3728  <blockquote class="text">  <blockquote class="text">
# Line 3417  Intellectual Property and Copyright Stat Line 3730  Intellectual Property and Copyright Stat
3730                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3731                                      warning code and warning message                                      warning code and warning message
3732  </p>  </p>
3733  </blockquote><p>  </blockquote>
3734                                
3735    
 </p>  
3736  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3737                                  </p>                                  </p>
3738  <blockquote class="text">  <blockquote class="text">
3739  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
3740                                      error message                                      error message
3741  </p>  </p>
3742  </blockquote><p>  </blockquote>
3743                                
3744    
 </p>  
3745  </blockquote><p>  </blockquote><p>
3746                        
3747  </p>  </p>
3748  <p>Example:  <p>Example:
3749  </p>  </p>
# Line 3440  Intellectual Property and Copyright Stat Line 3753  Intellectual Property and Copyright Stat
3753  <p>  <p>
3754  </p>  </p>
3755  </blockquote><p>  </blockquote><p>
3756                        
3757  </p>  </p>
3758  <a name="rfc.section.6.4.7"></a><h4><a name="GET AVAILABLE_ENGINES">6.4.7</a>&nbsp;Getting amount of available engines</h4>  <a name="GET AVAILABLE_ENGINES"></a><br /><hr />
3759    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3760    <a name="rfc.section.6.4.7"></a><h3>6.4.7.&nbsp;
3761    Getting amount of available engines</h3>
3762    
3763  <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:
3764  </p>  </p>
# Line 3452  Intellectual Property and Copyright Stat Line 3768  Intellectual Property and Copyright Stat
3768  <p>GET AVAILABLE_ENGINES  <p>GET AVAILABLE_ENGINES
3769  </p>  </p>
3770  </blockquote><p>  </blockquote><p>
3771                        
3772  </p>  </p>
3773  <p>Possible Answers:  <p>Possible Answers:
3774  </p>  </p>
# Line 3462  Intellectual Property and Copyright Stat Line 3778  Intellectual Property and Copyright Stat
3778  <p>LinuxSampler will answer by sending the number of available engines.  <p>LinuxSampler will answer by sending the number of available engines.
3779  </p>  </p>
3780  </blockquote><p>  </blockquote><p>
3781                        
3782  </p>  </p>
3783  <p>Example:  <p>Example:
3784  </p>  </p>
# Line 3474  Intellectual Property and Copyright Stat Line 3790  Intellectual Property and Copyright Stat
3790  <p>S: "4"  <p>S: "4"
3791  </p>  </p>
3792  </blockquote><p>  </blockquote><p>
3793                        
3794  </p>  </p>
3795  <a name="rfc.section.6.4.8"></a><h4><a name="LIST AVAILABLE_ENGINES">6.4.8</a>&nbsp;Getting all available engines</h4>  <a name="LIST AVAILABLE_ENGINES"></a><br /><hr />
3796    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3797    <a name="rfc.section.6.4.8"></a><h3>6.4.8.&nbsp;
3798    Getting all available engines</h3>
3799    
3800  <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:
3801  </p>  </p>
# Line 3486  Intellectual Property and Copyright Stat Line 3805  Intellectual Property and Copyright Stat
3805  <p>LIST AVAILABLE_ENGINES  <p>LIST AVAILABLE_ENGINES
3806  </p>  </p>
3807  </blockquote><p>  </blockquote><p>
3808                        
3809  </p>  </p>
3810  <p>Possible Answers:  <p>Possible Answers:
3811  </p>  </p>
# Line 3499  Intellectual Property and Copyright Stat Line 3818  Intellectual Property and Copyright Stat
3818                              digits and underlines ("_" character).                              digits and underlines ("_" character).
3819  </p>  </p>
3820  </blockquote><p>  </blockquote><p>
3821                        
3822  </p>  </p>
3823  <p>Example:  <p>Example:
3824  </p>  </p>
# Line 3511  Intellectual Property and Copyright Stat Line 3830  Intellectual Property and Copyright Stat
3830  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"
3831  </p>  </p>
3832  </blockquote><p>  </blockquote><p>
3833                        
3834  </p>  </p>
3835  <a name="rfc.section.6.4.9"></a><h4><a name="GET ENGINE INFO">6.4.9</a>&nbsp;Getting information about an engine</h4>  <a name="GET ENGINE INFO"></a><br /><hr />
3836    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3837    <a name="rfc.section.6.4.9"></a><h3>6.4.9.&nbsp;
3838    Getting information about an engine</h3>
3839    
3840  <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
3841                      sending the following command:                      sending the following command:
# Line 3524  Intellectual Property and Copyright Stat Line 3846  Intellectual Property and Copyright Stat
3846  <p>GET ENGINE INFO &lt;engine-name&gt;  <p>GET ENGINE INFO &lt;engine-name&gt;
3847  </p>  </p>
3848  </blockquote><p>  </blockquote><p>
3849                        
3850  </p>  </p>
3851  <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
3852                      <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span> (</span><span class="info">Getting all available engines</span><span>)</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.
3853  </p>  </p>
3854  <p>Possible Answers:  <p>Possible Answers:
3855  </p>  </p>
# Line 3548  Intellectual Property and Copyright Stat Line 3870  Intellectual Property and Copyright Stat
3870  <blockquote class="text">  <blockquote class="text">
3871  <p>arbitrary description text about the engine  <p>arbitrary description text about the engine
3872  </p>  </p>
3873  </blockquote><p>  </blockquote>
3874                                        
3875    
 </p>  
3876  <p>VERSION -  <p>VERSION -
3877                                          </p>                                          </p>
3878  <blockquote class="text">  <blockquote class="text">
3879  <p>arbitrary character string regarding the engine's version  <p>arbitrary character string regarding the engine's version
3880  </p>  </p>
3881  </blockquote><p>  </blockquote>
3882                                        
3883    
3884  </p>  </blockquote>
3885  </blockquote><p>                              
3886    
 </p>  
3887  </blockquote><p>  </blockquote><p>
3888                        
3889  </p>  </p>
3890  <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.
3891  </p>  </p>
# Line 3581  Intellectual Property and Copyright Stat Line 3903  Intellectual Property and Copyright Stat
3903  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3904  </p>  </p>
3905  </blockquote><p>  </blockquote><p>
3906                        
3907  </p>  </p>
3908  <a name="rfc.section.6.4.10"></a><h4><a name="GET CHANNEL INFO">6.4.10</a>&nbsp;Getting sampler channel information</h4>  <a name="GET CHANNEL INFO"></a><br /><hr />
3909    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3910    <a name="rfc.section.6.4.10"></a><h3>6.4.10.&nbsp;
3911    Getting sampler channel information</h3>
3912    
3913  <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
3914                      by sending the following command:                      by sending the following command:
# Line 3594  Intellectual Property and Copyright Stat Line 3919  Intellectual Property and Copyright Stat
3919  <p>GET CHANNEL INFO &lt;sampler-channel&gt;  <p>GET CHANNEL INFO &lt;sampler-channel&gt;
3920  </p>  </p>
3921  </blockquote><p>  </blockquote><p>
3922                        
3923  </p>  </p>
3924  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
3925                      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>                      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>
3926                      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.                      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.
3927  </p>  </p>
3928  <p>Possible Answers:  <p>Possible Answers:
3929  </p>  </p>
# Line 3621  Intellectual Property and Copyright Stat Line 3946  Intellectual Property and Copyright Stat
3946                                              channel, "NONE" if there's no engine associated yet for                                              channel, "NONE" if there's no engine associated yet for
3947                                              this sampler channel                                              this sampler channel
3948  </p>  </p>
3949  </blockquote><p>  </blockquote>
3950                                        
3951    
 </p>  
3952  <p>AUDIO_OUTPUT_DEVICE -  <p>AUDIO_OUTPUT_DEVICE -
3953                                          </p>                                          </p>
3954  <blockquote class="text">  <blockquote class="text">
# Line 3632  Intellectual Property and Copyright Stat Line 3957  Intellectual Property and Copyright Stat
3957                                              the audio signal, "NONE" if there's no device                                              the audio signal, "NONE" if there's no device
3958                                              connected to this sampler channel                                              connected to this sampler channel
3959  </p>  </p>
3960  </blockquote><p>  </blockquote>
3961                                        
3962    
 </p>  
3963  <p>AUDIO_OUTPUT_CHANNELS -  <p>AUDIO_OUTPUT_CHANNELS -
3964                                          </p>                                          </p>
3965  <blockquote class="text">  <blockquote class="text">
3966  <p>number of output channels the sampler channel offers  <p>number of output channels the sampler channel offers
3967                                              (dependent to used sampler engine and loaded instrument)                                              (dependent to used sampler engine and loaded instrument)
3968  </p>  </p>
3969  </blockquote><p>  </blockquote>
3970                                        
3971    
 </p>  
3972  <p>AUDIO_OUTPUT_ROUTING -  <p>AUDIO_OUTPUT_ROUTING -
3973                                          </p>                                          </p>
3974  <blockquote class="text">  <blockquote class="text">
# Line 3655  Intellectual Property and Copyright Stat Line 3980  Intellectual Property and Copyright Stat
3980                                              channel 1 is routed to the channel 3 of the audio                                              channel 1 is routed to the channel 3 of the audio
3981                                              output device                                              output device
3982  </p>  </p>
3983  </blockquote><p>  </blockquote>
3984                                        
3985    
 </p>  
3986  <p>INSTRUMENT_FILE -  <p>INSTRUMENT_FILE -
3987                                          </p>                                          </p>
3988  <blockquote class="text">  <blockquote class="text">
# Line 3665  Intellectual Property and Copyright Stat Line 3990  Intellectual Property and Copyright Stat
3990                                              there's no instrument yet loaded for this sampler                                              there's no instrument yet loaded for this sampler
3991                                              channel                                              channel
3992  </p>  </p>
3993  </blockquote><p>  </blockquote>
3994                                        
3995    
 </p>  
3996  <p>INSTRUMENT_NR -  <p>INSTRUMENT_NR -
3997                                          </p>                                          </p>
3998  <blockquote class="text">  <blockquote class="text">
3999  <p>the instrument index number of the loaded instrument  <p>the instrument index number of the loaded instrument
4000  </p>  </p>
4001  </blockquote><p>  </blockquote>
4002                                        
4003    
 </p>  
4004  <p>INSTRUMENT_NAME -  <p>INSTRUMENT_NAME -
4005                                          </p>                                          </p>
4006  <blockquote class="text">  <blockquote class="text">
4007  <p>the instrument name of the loaded instrument  <p>the instrument name of the loaded instrument
4008  </p>  </p>
4009  </blockquote><p>  </blockquote>
4010                                        
4011    
 </p>  
4012  <p>INSTRUMENT_STATUS -  <p>INSTRUMENT_STATUS -
4013                                          </p>                                          </p>
4014  <blockquote class="text">  <blockquote class="text">
# Line 3691  Intellectual Property and Copyright Stat Line 4016  Intellectual Property and Copyright Stat
4016                                              value indicates a loading exception. Value of 100 indicates that the instrument is fully                                              value indicates a loading exception. Value of 100 indicates that the instrument is fully
4017                                              loaded.                                              loaded.
4018  </p>  </p>
4019  </blockquote><p>  </blockquote>
4020                                        
4021    
 </p>  
4022  <p>MIDI_INPUT_DEVICE -  <p>MIDI_INPUT_DEVICE -
4023                                          </p>                                          </p>
4024  <blockquote class="text">  <blockquote class="text">
# Line 3702  Intellectual Property and Copyright Stat Line 4027  Intellectual Property and Copyright Stat
4027                                              MIDI input commands, "NONE" if there's no device                                              MIDI input commands, "NONE" if there's no device
4028                                              connected to this sampler channel                                              connected to this sampler channel
4029  </p>  </p>
4030  </blockquote><p>  </blockquote>
4031                                        
4032    
 </p>  
4033  <p>MIDI_INPUT_PORT -  <p>MIDI_INPUT_PORT -
4034                                          </p>                                          </p>
4035  <blockquote class="text">  <blockquote class="text">
4036  <p>port number of the MIDI input device  <p>port number of the MIDI input device
4037  </p>  </p>
4038  </blockquote><p>  </blockquote>
4039                                        
4040    
 </p>  
4041  <p>MIDI_INPUT_CHANNEL -  <p>MIDI_INPUT_CHANNEL -
4042                                          </p>                                          </p>
4043  <blockquote class="text">  <blockquote class="text">
4044  <p>the MIDI input channel number this sampler channel  <p>the MIDI input channel number this sampler channel
4045                                              should listen to or "ALL" to listen on all MIDI channels                                              should listen to or "ALL" to listen on all MIDI channels
4046  </p>  </p>
4047  </blockquote><p>  </blockquote>
4048                                        
4049    
 </p>  
4050  <p>VOLUME -  <p>VOLUME -
4051                                          </p>                                          </p>
4052  <blockquote class="text">  <blockquote class="text">
4053  <p>optionally dotted number for the channel volume factor  <p>optionally dotted number for the channel volume factor
4054                                              (where a value < 1.0 means attenuation and a value >                                              (where a value &lt; 1.0 means attenuation and a value >
4055                                              1.0 means amplification)                                              1.0 means amplification)
4056  </p>  </p>
4057  </blockquote><p>  </blockquote>
4058                                        
4059    
 </p>  
4060  <p>MUTE -  <p>MUTE -
4061                                          </p>                                          </p>
4062  <blockquote class="text">  <blockquote class="text">
# Line 3741  Intellectual Property and Copyright Stat Line 4066  Intellectual Property and Copyright Stat
4066                                              presence of a solo channel and will be unmuted when                                              presence of a solo channel and will be unmuted when
4067                                              there are no solo channels left                                              there are no solo channels left
4068  </p>  </p>
4069  </blockquote><p>  </blockquote>
4070                                        
4071    
 </p>  
4072  <p>SOLO -  <p>SOLO -
4073                                          </p>                                          </p>
4074  <blockquote class="text">  <blockquote class="text">
4075  <p>Determines whether this is a solo channel, "true" if  <p>Determines whether this is a solo channel, "true" if
4076                                              the channel is a solo channel; "false" otherwise                                              the channel is a solo channel; "false" otherwise
4077  </p>  </p>
4078  </blockquote><p>  </blockquote>
4079                                        
4080    
4081    <p>MIDI_INSTRUMENT_MAP -
4082                                            </p>
4083    <blockquote class="text">
4084    <p>Determines to which MIDI instrument map this sampler
4085                                                channel is assigned to. Read chapter
4086                                                <a class='info' href='#SET CHANNEL MIDI_INSTRUMENT_MAP'>"SET CHANNEL MIDI_INSTRUMENT_MAP"<span> (</span><span class='info'>Assigning a MIDI instrument map to a sampler channel</span><span>)</span></a>
4087                                                for a list of possible values.
4088  </p>  </p>
4089  </blockquote><p>  </blockquote>
4090                                        
4091    
4092  </p>  </blockquote>
4093  </blockquote><p>                              
4094    
4095    </blockquote><p>
4096                        
4097  </p>  </p>
4098  <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.
4099  </p>  </p>
# Line 3792  Intellectual Property and Copyright Stat Line 4128  Intellectual Property and Copyright Stat
4128  </p>  </p>
4129  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"
4130  </p>  </p>
4131    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
4132    </p>
4133    <p>&nbsp;&nbsp;&nbsp;"MUTE: false"
4134    </p>
4135    <p>&nbsp;&nbsp;&nbsp;"SOLO: false"
4136    </p>
4137    <p>&nbsp;&nbsp;&nbsp;"MIDI_INSTRUMENT_MAP: NONE"
4138    </p>
4139  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
4140  </p>  </p>
4141  </blockquote><p>  </blockquote><p>
4142                        
4143  </p>  </p>
4144  <a name="rfc.section.6.4.11"></a><h4><a name="GET CHANNEL VOICE_COUNT">6.4.11</a>&nbsp;Current number of active voices</h4>  <a name="GET CHANNEL VOICE_COUNT"></a><br /><hr />
4145    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4146    <a name="rfc.section.6.4.11"></a><h3>6.4.11.&nbsp;
4147    Current number of active voices</h3>
4148    
4149  <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
4150                      sampler channel by sending the following command:                      sampler channel by sending the following command:
# Line 3808  Intellectual Property and Copyright Stat Line 4155  Intellectual Property and Copyright Stat
4155  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;
4156  </p>  </p>
4157  </blockquote><p>  </blockquote><p>
4158                        
4159  </p>  </p>
4160  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
4161                      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>                      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>
4162                      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.                      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.
4163  </p>  </p>
4164  <p>Possible Answers:  <p>Possible Answers:
4165  </p>  </p>
# Line 3823  Intellectual Property and Copyright Stat Line 4170  Intellectual Property and Copyright Stat
4170                              voices on that channel.                              voices on that channel.
4171  </p>  </p>
4172  </blockquote><p>  </blockquote><p>
4173                        
4174  </p>  </p>
4175  <p>Example:  <p>Example:
4176  </p>  </p>
# Line 3833  Intellectual Property and Copyright Stat Line 4180  Intellectual Property and Copyright Stat
4180  <p>  <p>
4181  </p>  </p>
4182  </blockquote><p>  </blockquote><p>
4183                        
4184  </p>  </p>
4185  <a name="rfc.section.6.4.12"></a><h4><a name="GET CHANNEL STREAM_COUNT">6.4.12</a>&nbsp;Current number of active disk streams</h4>  <a name="GET CHANNEL STREAM_COUNT"></a><br /><hr />
4186    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4187    <a name="rfc.section.6.4.12"></a><h3>6.4.12.&nbsp;
4188    Current number of active disk streams</h3>
4189    
4190  <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
4191                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
# Line 3846  Intellectual Property and Copyright Stat Line 4196  Intellectual Property and Copyright Stat
4196  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;
4197  </p>  </p>
4198  </blockquote><p>  </blockquote><p>
4199                        
4200  </p>  </p>
4201  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
4202                      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>                      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>
4203                      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.                      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.
4204  </p>  </p>
4205  <p>Possible Answers:  <p>Possible Answers:
4206  </p>  </p>
# Line 3863  Intellectual Property and Copyright Stat Line 4213  Intellectual Property and Copyright Stat
4213                              return "NA" for not available.                              return "NA" for not available.
4214  </p>  </p>
4215  </blockquote><p>  </blockquote><p>
4216                        
4217  </p>  </p>
4218  <p>Example:  <p>Example:
4219  </p>  </p>
# Line 3873  Intellectual Property and Copyright Stat Line 4223  Intellectual Property and Copyright Stat
4223  <p>  <p>
4224  </p>  </p>
4225  </blockquote><p>  </blockquote><p>
4226                        
4227  </p>  </p>
4228  <a name="rfc.section.6.4.13"></a><h4><a name="GET CHANNEL BUFFER_FILL">6.4.13</a>&nbsp;Current fill state of disk stream buffers</h4>  <a name="GET CHANNEL BUFFER_FILL"></a><br /><hr />
4229    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4230    <a name="rfc.section.6.4.13"></a><h3>6.4.13.&nbsp;
4231    Current fill state of disk stream buffers</h3>
4232    
4233  <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
4234                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
# Line 3886  Intellectual Property and Copyright Stat Line 4239  Intellectual Property and Copyright Stat
4239  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;
4240  </p>  </p>
4241  </blockquote><p>  </blockquote><p>
4242                        
4243  </p>  </p>
4244  <p>to get the fill state in bytes or  <p>to get the fill state in bytes or
4245  </p>  </p>
# Line 3896  Intellectual Property and Copyright Stat Line 4249  Intellectual Property and Copyright Stat
4249  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;
4250  </p>  </p>
4251  </blockquote><p>  </blockquote><p>
4252                        
4253  </p>  </p>
4254  <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
4255                      sampler channel number the front-end is interested in                      sampler channel number the front-end is interested in
4256                      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>                      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>
4257                      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.                      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.
4258  </p>  </p>
4259  <p>Possible Answers:  <p>Possible Answers:
4260  </p>  </p>
# Line 3920  Intellectual Property and Copyright Stat Line 4273  Intellectual Property and Copyright Stat
4273                              to sort them by itself if necessary.                              to sort them by itself if necessary.
4274  </p>  </p>
4275  </blockquote><p>  </blockquote><p>
4276                        
4277  </p>  </p>
4278  <p>Examples:  <p>Examples:
4279  </p>  </p>
# Line 3948  Intellectual Property and Copyright Stat Line 4301  Intellectual Property and Copyright Stat
4301  <p>S: ""  <p>S: ""
4302  </p>  </p>
4303  </blockquote><p>  </blockquote><p>
4304                        
4305  </p>  </p>
4306  <a name="rfc.section.6.4.14"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_DEVICE">6.4.14</a>&nbsp;Setting audio output device</h4>  <a name="SET CHANNEL AUDIO_OUTPUT_DEVICE"></a><br /><hr />
4307    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4308    <a name="rfc.section.6.4.14"></a><h3>6.4.14.&nbsp;
4309    Setting audio output device</h3>
4310    
4311  <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
4312                      channel by sending the following command:                      channel by sending the following command:
# Line 3961  Intellectual Property and Copyright Stat Line 4317  Intellectual Property and Copyright Stat
4317  <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;
4318  </p>  </p>
4319  </blockquote><p>  </blockquote><p>
4320                        
4321  </p>  </p>
4322  <p>Where &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4323                      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>                      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>
4324                      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                      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
4325                      &lt;audio-device-id&gt; is the numerical ID of the audio output device as given by the                      &lt;audio-device-id&gt; is the numerical ID of the audio output device as given by the
4326                      <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>                      <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>
4327                      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>                      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>
4328                      command.                      command.
4329  </p>  </p>
4330  <p>Possible Answers:  <p>Possible Answers:
# Line 3981  Intellectual Property and Copyright Stat Line 4337  Intellectual Property and Copyright Stat
4337  <blockquote class="text">  <blockquote class="text">
4338  <p>on success  <p>on success
4339  </p>  </p>
4340  </blockquote><p>  </blockquote>
4341                                
4342    
 </p>  
4343  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4344                                  </p>                                  </p>
4345  <blockquote class="text">  <blockquote class="text">
# Line 3991  Intellectual Property and Copyright Stat Line 4347  Intellectual Property and Copyright Stat
4347                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4348                                      warning message                                      warning message
4349  </p>  </p>
4350  </blockquote><p>  </blockquote>
4351                                
4352    
 </p>  
4353  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4354                                  </p>                                  </p>
4355  <blockquote class="text">  <blockquote class="text">
4356  <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
4357  </p>  </p>
4358  </blockquote><p>  </blockquote>
4359                                
4360    
 </p>  
4361  </blockquote><p>  </blockquote><p>
4362                        
4363  </p>  </p>
4364  <p>Examples:  <p>Examples:
4365  </p>  </p>
# Line 4013  Intellectual Property and Copyright Stat Line 4369  Intellectual Property and Copyright Stat
4369  <p>  <p>
4370  </p>  </p>
4371  </blockquote><p>  </blockquote><p>
4372                        
4373  </p>  </p>
4374  <a name="rfc.section.6.4.15"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_TYP">6.4.15</a>&nbsp;Setting audio output type</h4>  <a name="SET CHANNEL AUDIO_OUTPUT_TYPE"></a><br /><hr />
4375    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4376    <a name="rfc.section.6.4.15"></a><h3>6.4.15.&nbsp;
4377    Setting audio output type</h3>
4378    
4379  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4380  </p>  </p>
# Line 4028  Intellectual Property and Copyright Stat Line 4387  Intellectual Property and Copyright Stat
4387  <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;
4388  </p>  </p>
4389  </blockquote><p>  </blockquote><p>
4390                        
4391  </p>  </p>
4392  <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
4393                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
# Line 4043  Intellectual Property and Copyright Stat Line 4402  Intellectual Property and Copyright Stat
4402  <blockquote class="text">  <blockquote class="text">
4403  <p>on success  <p>on success
4404  </p>  </p>
4405  </blockquote><p>  </blockquote>
4406                                
4407    
 </p>  
4408  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4409                                  </p>                                  </p>
4410  <blockquote class="text">  <blockquote class="text">
# Line 4053  Intellectual Property and Copyright Stat Line 4412  Intellectual Property and Copyright Stat
4412                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4413                                      warning message                                      warning message
4414  </p>  </p>
4415  </blockquote><p>  </blockquote>
4416                                
4417    
 </p>  
4418  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4419                                  </p>                                  </p>
4420  <blockquote class="text">  <blockquote class="text">
4421  <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
4422  </p>  </p>
4423  </blockquote><p>  </blockquote>
4424                                
4425    
 </p>  
4426  </blockquote><p>  </blockquote><p>
4427                        
4428  </p>  </p>
4429  <p>Examples:  <p>Examples:
4430  </p>  </p>
# Line 4075  Intellectual Property and Copyright Stat Line 4434  Intellectual Property and Copyright Stat
4434  <p>  <p>
4435  </p>  </p>
4436  </blockquote><p>  </blockquote><p>
4437                        
4438  </p>  </p>
4439  <a name="rfc.section.6.4.16"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_CHANNEL">6.4.16</a>&nbsp;Setting audio output channel</h4>  <a name="SET CHANNEL AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
4440    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4441    <a name="rfc.section.6.4.16"></a><h3>6.4.16.&nbsp;
4442    Setting audio output channel</h3>
4443    
4444  <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
4445                      sampler channel by sending the following command:                      sampler channel by sending the following command:
# Line 4088  Intellectual Property and Copyright Stat Line 4450  Intellectual Property and Copyright Stat
4450  <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;
4451  </p>  </p>
4452  </blockquote><p>  </blockquote><p>
4453                        
4454  </p>  </p>
4455  <p>Where &lt;sampler-chan&gt; is the sampler channel number  <p>Where &lt;sampler-chan&gt; is the sampler channel number
4456                      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>                      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>
4457                      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                      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
4458                      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
4459                      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
4460                      output device where &lt;audio-out&gt; should be routed to.                      output device where &lt;audio-out&gt; should be routed to.
# Line 4107  Intellectual Property and Copyright Stat Line 4469  Intellectual Property and Copyright Stat
4469  <blockquote class="text">  <blockquote class="text">
4470  <p>on success  <p>on success
4471  </p>  </p>
4472  </blockquote><p>  </blockquote>
4473                                
4474    
 </p>  
4475  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4476                                  </p>                                  </p>
4477  <blockquote class="text">  <blockquote class="text">
# Line 4117  Intellectual Property and Copyright Stat Line 4479  Intellectual Property and Copyright Stat
4479                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4480                                      warning message                                      warning message
4481  </p>  </p>
4482  </blockquote><p>  </blockquote>
4483                                
4484    
 </p>  
4485  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4486                                  </p>                                  </p>
4487  <blockquote class="text">  <blockquote class="text">
4488  <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
4489  </p>  </p>
4490  </blockquote><p>  </blockquote>
4491                                
4492    
 </p>  
4493  </blockquote><p>  </blockquote><p>
4494                        
4495  </p>  </p>
4496  <p>Examples:  <p>Examples:
4497  </p>  </p>
# Line 4139  Intellectual Property and Copyright Stat Line 4501  Intellectual Property and Copyright Stat
4501  <p>  <p>
4502  </p>  </p>
4503  </blockquote><p>  </blockquote><p>
4504                        
4505  </p>  </p>
4506  <a name="rfc.section.6.4.17"></a><h4><a name="SET CHANNEL MIDI_INPUT_DEVICE">6.4.17</a>&nbsp;Setting MIDI input device</h4>  <a name="SET CHANNEL MIDI_INPUT_DEVICE"></a><br /><hr />
4507    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4508    <a name="rfc.section.6.4.17"></a><h3>6.4.17.&nbsp;
4509    Setting MIDI input device</h3>
4510    
4511  <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
4512                      channel by sending the following command:                      channel by sending the following command:
# Line 4152  Intellectual Property and Copyright Stat Line 4517  Intellectual Property and Copyright Stat
4517  <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;
4518  </p>  </p>
4519  </blockquote><p>  </blockquote><p>
4520                        
4521  </p>  </p>
4522  <p>Where &lt;sampler-channel&gt; is the sampler channel number  <p>Where &lt;sampler-channel&gt; is the sampler channel number
4523                      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>                      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>
4524                      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                      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
4525                      and &lt;midi-device-id&gt; is  the numerical ID of the MIDI input device as returned by the                      and &lt;midi-device-id&gt; is  the numerical ID of the MIDI input device as returned by the
4526                      <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>                      <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>
4527                      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.                      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.
4528  </p>  </p>
4529  <p>Possible Answers:  <p>Possible Answers:
4530  </p>  </p>
# Line 4171  Intellectual Property and Copyright Stat Line 4536  Intellectual Property and Copyright Stat
4536  <blockquote class="text">  <blockquote class="text">
4537  <p>on success  <p>on success
4538  </p>  </p>
4539  </blockquote><p>  </blockquote>
4540                                
4541    
 </p>  
4542  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4543                                  </p>                                  </p>
4544  <blockquote class="text">  <blockquote class="text">
# Line 4181  Intellectual Property and Copyright Stat Line 4546  Intellectual Property and Copyright Stat
4546                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4547                                      warning message                                      warning message
4548  </p>  </p>
4549  </blockquote><p>  </blockquote>
4550                                
4551    
 </p>  
4552  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4553                                  </p>                                  </p>
4554  <blockquote class="text">  <blockquote class="text">
4555  <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
4556  </p>  </p>
4557  </blockquote><p>  </blockquote>
4558                                
4559    
 </p>  
4560  </blockquote><p>  </blockquote><p>
4561                        
4562  </p>  </p>
4563  <p>Examples:  <p>Examples:
4564  </p>  </p>
# Line 4203  Intellectual Property and Copyright Stat Line 4568  Intellectual Property and Copyright Stat
4568  <p>  <p>
4569  </p>  </p>
4570  </blockquote><p>  </blockquote><p>
4571                        
4572  </p>  </p>
4573  <a name="rfc.section.6.4.18"></a><h4><a name="SET CHANNEL MIDI_INPUT_TYPE">6.4.18</a>&nbsp;Setting MIDI input type</h4>  <a name="SET CHANNEL MIDI_INPUT_TYPE"></a><br /><hr />
4574    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4575    <a name="rfc.section.6.4.18"></a><h3>6.4.18.&nbsp;
4576    Setting MIDI input type</h3>
4577    
4578  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4579  </p>  </p>
# Line 4218  Intellectual Property and Copyright Stat Line 4586  Intellectual Property and Copyright Stat
4586  <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;
4587  </p>  </p>
4588  </blockquote><p>  </blockquote><p>
4589                        
4590  </p>  </p>
4591  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and
4592                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
# Line 4233  Intellectual Property and Copyright Stat Line 4601  Intellectual Property and Copyright Stat
4601  <blockquote class="text">  <blockquote class="text">
4602  <p>on success  <p>on success
4603  </p>  </p>
4604  </blockquote><p>  </blockquote>
4605                                
4606    
 </p>  
4607  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4608                                  </p>                                  </p>
4609  <blockquote class="text">  <blockquote class="text">
# Line 4243  Intellectual Property and Copyright Stat Line 4611  Intellectual Property and Copyright Stat
4611                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4612                                      warning message                                      warning message
4613  </p>  </p>
4614  </blockquote><p>  </blockquote>
4615                                
4616    
 </p>  
4617  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4618                                  </p>                                  </p>
4619  <blockquote class="text">  <blockquote class="text">
4620  <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
4621  </p>  </p>
4622  </blockquote><p>  </blockquote>
4623                                
4624    
 </p>  
4625  </blockquote><p>  </blockquote><p>
4626                        
4627  </p>  </p>
4628  <p>Examples:  <p>Examples:
4629  </p>  </p>
# Line 4265  Intellectual Property and Copyright Stat Line 4633  Intellectual Property and Copyright Stat
4633  <p>  <p>
4634  </p>  </p>
4635  </blockquote><p>  </blockquote><p>
4636                        
4637  </p>  </p>
4638  <a name="rfc.section.6.4.19"></a><h4><a name="SET CHANNEL MIDI_INPUT_PORT">6.4.19</a>&nbsp;Setting MIDI input port</h4>  <a name="SET CHANNEL MIDI_INPUT_PORT"></a><br /><hr />
4639    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4640    <a name="rfc.section.6.4.19"></a><h3>6.4.19.&nbsp;
4641    Setting MIDI input port</h3>
4642    
4643  <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
4644                      channel by sending the following command:                      channel by sending the following command:
# Line 4278  Intellectual Property and Copyright Stat Line 4649  Intellectual Property and Copyright Stat
4649  <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;
4650  </p>  </p>
4651  </blockquote><p>  </blockquote><p>
4652                        
4653  </p>  </p>
4654  <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
4655                      MIDI input device connected to the sampler channel given by                      MIDI input device connected to the sampler channel given by
# Line 4294  Intellectual Property and Copyright Stat Line 4665  Intellectual Property and Copyright Stat
4665  <blockquote class="text">  <blockquote class="text">
4666  <p>on success  <p>on success
4667  </p>  </p>
4668  </blockquote><p>  </blockquote>
4669                                
4670    
 </p>  
4671  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4672                                  </p>                                  </p>
4673  <blockquote class="text">  <blockquote class="text">
# Line 4304  Intellectual Property and Copyright Stat Line 4675  Intellectual Property and Copyright Stat
4675                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4676                                      warning message                                      warning message
4677  </p>  </p>
4678  </blockquote><p>  </blockquote>
4679                                
4680    
 </p>  
4681  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4682                                  </p>                                  </p>
4683  <blockquote class="text">  <blockquote class="text">
4684  <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
4685  </p>  </p>
4686  </blockquote><p>  </blockquote>
4687                                
4688    
 </p>  
4689  </blockquote><p>  </blockquote><p>
4690                        
4691  </p>  </p>
4692  <p>Examples:  <p>Examples:
4693  </p>  </p>
# Line 4326  Intellectual Property and Copyright Stat Line 4697  Intellectual Property and Copyright Stat
4697  <p>  <p>
4698  </p>  </p>
4699  </blockquote><p>  </blockquote><p>
4700                        
4701  </p>  </p>
4702  <a name="rfc.section.6.4.20"></a><h4><a name="SET CHANNEL MIDI_INPUT_CHANNEL">6.4.20</a>&nbsp;Setting MIDI input channel</h4>  <a name="SET CHANNEL MIDI_INPUT_CHANNEL"></a><br /><hr />
4703    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4704    <a name="rfc.section.6.4.20"></a><h3>6.4.20.&nbsp;
4705    Setting MIDI input channel</h3>
4706    
4707  <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
4708                      listen to by sending the following command:                      listen to by sending the following command:
# Line 4339  Intellectual Property and Copyright Stat Line 4713  Intellectual Property and Copyright Stat
4713  <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;
4714  </p>  </p>
4715  </blockquote><p>  </blockquote><p>
4716                        
4717  </p>  </p>
4718  <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
4719                      &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
# Line 4355  Intellectual Property and Copyright Stat Line 4729  Intellectual Property and Copyright Stat
4729  <blockquote class="text">  <blockquote class="text">
4730  <p>on success  <p>on success
4731  </p>  </p>
4732  </blockquote><p>  </blockquote>
4733                                
4734    
 </p>  
4735  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4736                                  </p>                                  </p>
4737  <blockquote class="text">  <blockquote class="text">
# Line 4365  Intellectual Property and Copyright Stat Line 4739  Intellectual Property and Copyright Stat
4739                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4740                                      warning message                                      warning message
4741  </p>  </p>
4742  </blockquote><p>  </blockquote>
4743                                
4744    
 </p>  
4745  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4746                                  </p>                                  </p>
4747  <blockquote class="text">  <blockquote class="text">
4748  <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
4749  </p>  </p>
4750  </blockquote><p>  </blockquote>
4751                                
4752    
 </p>  
4753  </blockquote><p>  </blockquote><p>
4754                        
4755  </p>  </p>
4756  <p>Examples:  <p>Examples:
4757  </p>  </p>
# Line 4387  Intellectual Property and Copyright Stat Line 4761  Intellectual Property and Copyright Stat
4761  <p>  <p>
4762  </p>  </p>
4763  </blockquote><p>  </blockquote><p>
4764                        
4765  </p>  </p>
4766  <a name="rfc.section.6.4.21"></a><h4><a name="SET CHANNEL VOLUME">6.4.21</a>&nbsp;Setting channel volume</h4>  <a name="SET CHANNEL VOLUME"></a><br /><hr />
4767    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4768    <a name="rfc.section.6.4.21"></a><h3>6.4.21.&nbsp;
4769    Setting channel volume</h3>
4770    
4771  <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
4772                      the following command:                      the following command:
# Line 4400  Intellectual Property and Copyright Stat Line 4777  Intellectual Property and Copyright Stat
4777  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;
4778  </p>  </p>
4779  </blockquote><p>  </blockquote><p>
4780                        
4781  </p>  </p>
4782  <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
4783                      smaller than 1.0 means attenuation, whereas a value greater than                      smaller than 1.0 means attenuation, whereas a value greater than
# Line 4417  Intellectual Property and Copyright Stat Line 4794  Intellectual Property and Copyright Stat
4794  <blockquote class="text">  <blockquote class="text">
4795  <p>on success  <p>on success
4796  </p>  </p>
4797  </blockquote><p>  </blockquote>
4798                                
4799    
 </p>  
4800  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4801                                  </p>                                  </p>
4802  <blockquote class="text">  <blockquote class="text">
# Line 4427  Intellectual Property and Copyright Stat Line 4804  Intellectual Property and Copyright Stat
4804                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4805                                      warning message                                      warning message
4806  </p>  </p>
4807  </blockquote><p>  </blockquote>
4808                                
4809    
 </p>  
4810  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4811                                  </p>                                  </p>
4812  <blockquote class="text">  <blockquote class="text">
4813  <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
4814  </p>  </p>
4815  </blockquote><p>  </blockquote>
4816                                
4817    
 </p>  
4818  </blockquote><p>  </blockquote><p>
4819                        
4820  </p>  </p>
4821  <p>Examples:  <p>Examples:
4822  </p>  </p>
# Line 4449  Intellectual Property and Copyright Stat Line 4826  Intellectual Property and Copyright Stat
4826  <p>  <p>
4827  </p>  </p>
4828  </blockquote><p>  </blockquote><p>
4829                        
4830  </p>  </p>
4831  <a name="rfc.section.6.4.22"></a><h4><a name="SET CHANNEL MUTE">6.4.22</a>&nbsp;Muting a sampler channel</h4>  <a name="SET CHANNEL MUTE"></a><br /><hr />
4832    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4833    <a name="rfc.section.6.4.22"></a><h3>6.4.22.&nbsp;
4834    Muting a sampler channel</h3>
4835    
4836  <p>The front-end can mute/unmute a specific sampler  <p>The front-end can mute/unmute a specific sampler
4837                      channel by sending the following command:                      channel by sending the following command:
# Line 4462  Intellectual Property and Copyright Stat Line 4842  Intellectual Property and Copyright Stat
4842  <p>SET CHANNEL MUTE &lt;sampler-channel&gt; &lt;mute&gt;  <p>SET CHANNEL MUTE &lt;sampler-channel&gt; &lt;mute&gt;
4843  </p>  </p>
4844  </blockquote><p>  </blockquote><p>
4845                        
4846  </p>  </p>
4847  <p>Where &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4848                      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>                      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>
4849                      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                      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
4850                      &lt;mute&gt; should be replaced either by "1" to mute the channel or "0"                      &lt;mute&gt; should be replaced either by "1" to mute the channel or "0"
4851                      to unmute the channel.                      to unmute the channel.
4852  </p>  </p>
# Line 4480  Intellectual Property and Copyright Stat Line 4860  Intellectual Property and Copyright Stat
4860  <blockquote class="text">  <blockquote class="text">
4861  <p>on success  <p>on success
4862  </p>  </p>
4863    </blockquote>
4864                                
4865    
4866    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4867                                    </p>
4868    <blockquote class="text">
4869    <p>if the channel was muted/unmuted, but there are noteworthy
4870                                        issue(s) related, providing an appropriate warning code and
4871                                        warning message
4872    </p>
4873    </blockquote>
4874                                
4875    
4876    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4877                                    </p>
4878    <blockquote class="text">
4879    <p>in case it failed, providing an appropriate error code and error message
4880    </p>
4881    </blockquote>
4882                                
4883    
4884  </blockquote><p>  </blockquote><p>
4885                        
4886    </p>
4887    <p>Examples:
4888    </p>
4889    <p>
4890                            </p>
4891    <blockquote class="text">
4892    <p>
4893    </p>
4894    </blockquote><p>
4895                        
4896    </p>
4897    <a name="SET CHANNEL SOLO"></a><br /><hr />
4898    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4899    <a name="rfc.section.6.4.23"></a><h3>6.4.23.&nbsp;
4900    Soloing a sampler channel</h3>
4901    
4902    <p>The front-end can solo/unsolo a specific sampler channel
4903                        by sending the following command:
4904    </p>
4905    <p>
4906                            </p>
4907    <blockquote class="text">
4908    <p>SET CHANNEL SOLO &lt;sampler-channel&gt; &lt;solo&gt;
4909    </p>
4910    </blockquote><p>
4911                        
4912    </p>
4913    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4914                        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>
4915                        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
4916                        &lt;solo&gt; should be replaced either by "1" to solo the channel or "0"
4917                        to unsolo the channel.
4918    </p>
4919    <p>Possible Answers:
4920  </p>  </p>
4921    <p>
4922                            </p>
4923    <blockquote class="text">
4924    <p>"OK" -
4925                                    </p>
4926    <blockquote class="text">
4927    <p>on success
4928    </p>
4929    </blockquote>
4930                                
4931    
4932  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4933                                  </p>                                  </p>
4934  <blockquote class="text">  <blockquote class="text">
4935  <p>if the channel was muted/unmuted, but there are noteworthy  <p>if the channel was soloed/unsoloed, but there are noteworthy
4936                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4937                                      warning message                                      warning message
4938  </p>  </p>
4939    </blockquote>
4940                                
4941    
4942    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4943                                    </p>
4944    <blockquote class="text">
4945    <p>in case it failed, providing an appropriate error code and error message
4946    </p>
4947    </blockquote>
4948                                
4949    
4950  </blockquote><p>  </blockquote><p>
4951                        
4952    </p>
4953    <p>Examples:
4954    </p>
4955    <p>
4956                            </p>
4957    <blockquote class="text">
4958    <p>
4959    </p>
4960    </blockquote><p>
4961                        
4962    </p>
4963    <a name="SET CHANNEL MIDI_INSTRUMENT_MAP"></a><br /><hr />
4964    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4965    <a name="rfc.section.6.4.24"></a><h3>6.4.24.&nbsp;
4966    Assigning a MIDI instrument map to a sampler channel</h3>
4967    
4968    <p>The front-end can assign a MIDI instrument map to a specific sampler channel
4969                        by sending the following command:
4970    </p>
4971    <p>
4972                            </p>
4973    <blockquote class="text">
4974    <p>SET CHANNEL MIDI_INSTRUMENT_MAP &lt;sampler-channel&gt; &lt;map&gt;
4975    </p>
4976    </blockquote><p>
4977                        
4978    </p>
4979    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4980                        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>
4981                        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
4982                        &lt;map&gt; can have the following possibilites:
4983    </p>
4984    <p>
4985                            </p>
4986    <blockquote class="text">
4987    <p>"NONE" -
4988                                    </p>
4989    <blockquote class="text">
4990    <p>This is the default setting. In this case
4991                                        the sampler channel is not assigned any MIDI
4992                                        instrument map and thus will ignore all MIDI
4993                                        program change messages.
4994    </p>
4995    </blockquote>
4996                                
4997    
4998    <p>"DEFAULT" -
4999                                    </p>
5000    <blockquote class="text">
5001    <p>The sampler channel will always use the
5002                                        default MIDI instrument map to handle MIDI
5003                                        program change messages.
5004    </p>
5005    </blockquote>
5006                                
5007    
5008    <p>numeric ID -
5009                                    </p>
5010    <blockquote class="text">
5011    <p>You can assign a specific MIDI instrument map
5012                                        by replacing &lt;map&gt; with the respective numeric
5013                                        ID of the MIDI instrument map as returned by the
5014                                        <a class='info' href='#LIST MIDI_INSTRUMENT_MAPS'>"LIST MIDI_INSTRUMENT_MAPS"<span> (</span><span class='info'>Getting all created MIDI instrument maps</span><span>)</span></a>
5015                                        command. Once that map will be deleted, the sampler
5016                                        channel would fall back to "NONE".
5017    </p>
5018    </blockquote>
5019                                
5020    
5021    </blockquote><p>
5022                        
5023    </p>
5024    <p>Read chapter <a class='info' href='#MIDI Instrument Mapping'>"MIDI Instrument Mapping"<span> (</span><span class='info'>MIDI Instrument Mapping</span><span>)</span></a>
5025                        for details regarding MIDI instrument mapping.
5026    </p>
5027    <p>Possible Answers:
5028    </p>
5029    <p>
5030                            </p>
5031    <blockquote class="text">
5032    <p>"OK" -
5033                                    </p>
5034    <blockquote class="text">
5035    <p>on success
5036  </p>  </p>
5037    </blockquote>
5038                                
5039    
5040  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5041                                  </p>                                  </p>
5042  <blockquote class="text">  <blockquote class="text">
5043  <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
5044  </p>  </p>
5045    </blockquote>
5046                                
5047    
5048  </blockquote><p>  </blockquote><p>
5049                        
5050    </p>
5051    <p>Examples:
5052    </p>
5053    <p>
5054                            </p>
5055    <blockquote class="text">
5056    <p>
5057    </p>
5058    </blockquote><p>
5059                        
5060    </p>
5061    <a name="CREATE FX_SEND"></a><br /><hr />
5062    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5063    <a name="rfc.section.6.4.25"></a><h3>6.4.25.&nbsp;
5064    Adding an effect send to a sampler channel</h3>
5065    
5066    <p>The front-end can create an additional effect send on a specific sampler channel
5067                        by sending the following command:
5068    </p>
5069    <p>
5070                            </p>
5071    <blockquote class="text">
5072    <p>CREATE FX_SEND &lt;sampler-channel&gt; &lt;midi-ctrl&gt; [&lt;name&gt;]
5073  </p>  </p>
5074  </blockquote><p>  </blockquote><p>
5075                        
5076    </p>
5077    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5078                        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>
5079                        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, that is the
5080                        sampler channel on which the effect send should be created on, &lt;midi-ctrl&gt;
5081                        is a number between 0..127 defining the MIDI controller which can alter the
5082                        effect send level and &lt;name&gt; is an optional argument defining a name
5083                        for the effect send entity. The name does not have to be unique, but MUST be
5084                        encapsulated into apostrophes and supports escape sequences as described in chapter
5085                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>".
5086    </p>
5087    <p>By default, that is as initial routing, the effect send's audio channels
5088                        are automatically routed to the last audio channels of the sampler channel's
5089                        audio output device, that way you can i.e. first increase the amount of audio
5090                        channels on the audio output device for having dedicated effect send output
5091                        channels and when "CREATE FX_SEND" is called, those channels will automatically
5092                        be picked. You can alter the destination channels however with
5093                        <a class='info' href='#SET FX_SEND AUDIO_OUTPUT_CHANNEL'>"SET FX_SEND AUDIO_OUTPUT_CHANNEL"<span> (</span><span class='info'>Altering effect send's audio routing</span><span>)</span></a>.
5094                        
5095    </p>
5096    <p>Note: Create effect sends on a sampler channel only when needed, because having effect
5097                        sends on a sampler channel will decrease runtime performance, because for implementing channel
5098                        effect sends, separate (sampler channel local) audio buffers are needed to render and mix
5099                        the voices and route the audio signal afterwards to the master outputs and effect send
5100                        outputs (along with their respective effect send levels). A sampler channel without effect
5101                        sends however can mix its voices directly into the audio output devices's audio buffers
5102                        and is thus faster.
5103                        
5104    </p>
5105    <p>Possible Answers:
5106    </p>
5107    <p>
5108                            </p>
5109    <blockquote class="text">
5110    <p>"OK[&lt;fx-send-id&gt;]" -
5111                                    </p>
5112    <blockquote class="text">
5113    <p>in case a new effect send could be added to the
5114                                        sampler channel, where &lt;fx-send-id&gt; reflects the
5115                                        unique ID of the newly created effect send entity
5116    </p>
5117    </blockquote>
5118                                
5119    
5120    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5121                                    </p>
5122    <blockquote class="text">
5123    <p>when a new effect send could not be added, i.e.
5124                                        due to invalid parameters
5125    </p>
5126    </blockquote>
5127                                
5128    
5129    </blockquote><p>
5130                        
5131  </p>  </p>
5132  <p>Examples:  <p>Examples:
5133  </p>  </p>
5134  <p>  <p>
5135                          </p>                          </p>
5136  <blockquote class="text">  <blockquote class="text">
5137    <p>C: "CREATE FX_SEND 0 91 'Reverb Send'"
5138    </p>
5139    <p>S: "OK[0]"
5140    </p>
5141    </blockquote><p>
5142                        
5143    </p>
5144    <p>
5145                            </p>
5146    <blockquote class="text">
5147    <p>C: "CREATE FX_SEND 0 93"
5148    </p>
5149    <p>S: "OK[1]"
5150    </p>
5151    </blockquote><p>
5152                        
5153    </p>
5154    <a name="DESTROY FX_SEND"></a><br /><hr />
5155    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5156    <a name="rfc.section.6.4.26"></a><h3>6.4.26.&nbsp;
5157    Removing an effect send from a sampler channel</h3>
5158    
5159    <p>The front-end can remove an existing effect send on a specific sampler channel
5160                        by sending the following command:
5161    </p>
5162  <p>  <p>
5163                            </p>
5164    <blockquote class="text">
5165    <p>DESTROY FX_SEND &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5166  </p>  </p>
5167  </blockquote><p>  </blockquote><p>
5168                        
5169    </p>
5170    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5171                        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>
5172                        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, that is the
5173                        sampler channel from which the effect send should be removed from and
5174                        &lt;fx-send-id&gt; is the respective effect send number as returned by the
5175                        <a class='info' href='#CREATE FX_SEND'>"CREATE FX_SEND"<span> (</span><span class='info'>Adding an effect send to a sampler channel</span><span>)</span></a>
5176                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command.
5177    </p>
5178    <p>Possible Answers:
5179    </p>
5180    <p>
5181                            </p>
5182    <blockquote class="text">
5183    <p>"OK" -
5184                                    </p>
5185    <blockquote class="text">
5186    <p>on success
5187    </p>
5188    </blockquote>
5189                                
5190    
5191    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5192                                    </p>
5193    <blockquote class="text">
5194    <p>in case it failed, providing an appropriate error code and
5195                                        error message
5196  </p>  </p>
5197  <a name="rfc.section.6.4.23"></a><h4><a name="SET CHANNEL SOLO">6.4.23</a>&nbsp;Soloing a sampler channel</h4>  </blockquote>
5198                                
5199    
5200  <p>The front-end can solo/unsolo a specific sampler channel  </blockquote><p>
5201                        
5202    </p>
5203    <p>Example:
5204    </p>
5205    <p>
5206                            </p>
5207    <blockquote class="text">
5208    <p>C: "DESTROY FX_SEND 0 0"
5209    </p>
5210    <p>S: "OK"
5211    </p>
5212    </blockquote><p>
5213                        
5214    </p>
5215    <a name="GET FX_SENDS"></a><br /><hr />
5216    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5217    <a name="rfc.section.6.4.27"></a><h3>6.4.27.&nbsp;
5218    Getting amount of effect sends on a sampler channel</h3>
5219    
5220    <p>The front-end can ask for the amount of effect sends on a specific sampler channel
5221                      by sending the following command:                      by sending the following command:
5222  </p>  </p>
5223  <p>  <p>
5224                          </p>                          </p>
5225  <blockquote class="text">  <blockquote class="text">
5226  <p>SET CHANNEL SOLO &lt;sampler-channel&gt; &lt;solo&gt;  <p>GET FX_SENDS &lt;sampler-channel&gt;
5227  </p>  </p>
5228  </blockquote><p>  </blockquote><p>
5229                        
5230    </p>
5231    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5232                        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>
5233                        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.
5234    </p>
5235    <p>Possible Answers:
5236    </p>
5237    <p>
5238                            </p>
5239    <blockquote class="text">
5240    <p>The sampler will answer by returning the number of effect
5241                                sends on the given sampler channel.
5242    </p>
5243    </blockquote><p>
5244                        
5245    </p>
5246    <p>Example:
5247    </p>
5248    <p>
5249                            </p>
5250    <blockquote class="text">
5251    <p>C: "GET FX_SENDS 0"
5252    </p>
5253    <p>S: "2"
5254    </p>
5255    </blockquote><p>
5256                        
5257    </p>
5258    <a name="LIST FX_SENDS"></a><br /><hr />
5259    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5260    <a name="rfc.section.6.4.28"></a><h3>6.4.28.&nbsp;
5261    Listing all effect sends on a sampler channel</h3>
5262    
5263    <p>The front-end can ask for a list of effect sends on a specific sampler channel
5264                        by sending the following command:
5265    </p>
5266    <p>
5267                            </p>
5268    <blockquote class="text">
5269    <p>LIST FX_SENDS &lt;sampler-channel&gt;
5270    </p>
5271    </blockquote><p>
5272                        
5273  </p>  </p>
5274  <p>Where &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5275                      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>                      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>
5276                      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                      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.
5277                      &lt;solo&gt; should be replaced either by "1" to solo the channel or "0"  </p>
5278                      to unsolo the channel.  <p>Possible Answers:
5279    </p>
5280    <p>
5281                            </p>
5282    <blockquote class="text">
5283    <p>The sampler will answer by returning a comma separated list
5284                                with all effect sends' numerical IDs on the given sampler
5285                                channel.
5286    </p>
5287    </blockquote><p>
5288                        
5289    </p>
5290    <p>Examples:
5291    </p>
5292    <p>
5293                            </p>
5294    <blockquote class="text">
5295    <p>C: "LIST FX_SENDS 0"
5296    </p>
5297    <p>S: "0,1"
5298    </p>
5299    </blockquote><p>
5300                        
5301    </p>
5302    <p>
5303                            </p>
5304    <blockquote class="text">
5305    <p>C: "LIST FX_SENDS 1"
5306    </p>
5307    <p>S: ""
5308    </p>
5309    </blockquote><p>
5310                        
5311    </p>
5312    <a name="GET FX_SEND INFO"></a><br /><hr />
5313    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5314    <a name="rfc.section.6.4.29"></a><h3>6.4.29.&nbsp;
5315    Getting effect send information</h3>
5316    
5317    <p>The front-end can ask for the current settings of an effect send entity
5318                        by sending the following command:
5319    </p>
5320    <p>
5321                            </p>
5322    <blockquote class="text">
5323    <p>GET FX_SEND INFO &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5324    </p>
5325    </blockquote><p>
5326                        
5327    </p>
5328    <p>Where &lt;sampler-channel&gt; is the sampler channel number
5329                        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>
5330                        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
5331                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5332                        as returned by the <a class='info' href='#CREATE FX_SEND'>"CREATE FX_SEND"<span> (</span><span class='info'>Adding an effect send to a sampler channel</span><span>)</span></a>
5333                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command.
5334                      
5335    </p>
5336    <p>Possible Answers:
5337    </p>
5338    <p>
5339                            </p>
5340    <blockquote class="text">
5341    <p>The sampler will answer by sending a &lt;CRLF&gt; separated list.
5342                                Each answer line begins with the settings category name
5343                                followed by a colon and then a space character &lt;SP&gt; and finally
5344                                the info character string to that setting category. At the
5345                                moment the following categories are defined:
5346    </p>
5347    <p>
5348                                    </p>
5349    <blockquote class="text">
5350    <p>NAME -
5351                                            </p>
5352    <blockquote class="text">
5353    <p>name of the effect send entity
5354    </p>
5355    </blockquote>
5356                                        
5357    
5358    <p>MIDI_CONTROLLER -
5359                                            </p>
5360    <blockquote class="text">
5361    <p>a value between 0 and 127 reflecting the MIDI controller
5362                                                which is able to modify the effect send's send level
5363    </p>
5364    </blockquote>
5365                                        
5366    
5367    <p>LEVEL -
5368                                            </p>
5369    <blockquote class="text">
5370    <p>optionally dotted number reflecting the effect send's
5371                                                current send level (where a value &lt; 1.0 means attenuation
5372                                                and a value > 1.0 means amplification)
5373    </p>
5374    </blockquote>
5375                                        
5376    
5377    <p>AUDIO_OUTPUT_ROUTING -
5378                                            </p>
5379    <blockquote class="text">
5380    <p>comma separated list which reflects to which audio
5381                                                channel of the selected audio output device each
5382                                                effect send output channel is routed to, e.g. "0,3" would
5383                                                mean the effect send's output channel 0 is routed to channel
5384                                                0 of the audio output device and the effect send's output
5385                                                channel 1 is routed to the channel 3 of the audio
5386                                                output device (see
5387                                                <a class='info' href='#SET FX_SEND AUDIO_OUTPUT_CHANNEL'>"SET FX_SEND AUDIO_OUTPUT_CHANNEL"<span> (</span><span class='info'>Altering effect send's audio routing</span><span>)</span></a>
5388                                                for details)
5389    </p>
5390    </blockquote>
5391                                        
5392    
5393    </blockquote>
5394                                
5395    
5396    </blockquote><p>
5397                        
5398    </p>
5399    <p>The mentioned fields above don't have to be in particular order.
5400    </p>
5401    <p>Example:
5402    </p>
5403    <p>
5404                            </p>
5405    <blockquote class="text">
5406    <p>C: "GET FX_SEND INFO 0 0"
5407    </p>
5408    <p>S: "NAME: Reverb Send"
5409    </p>
5410    <p>&nbsp;&nbsp;&nbsp;"MIDI_CONTROLLER: 91"
5411    </p>
5412    <p>&nbsp;&nbsp;&nbsp;"LEVEL: 0.3"
5413    </p>
5414    <p>&nbsp;&nbsp;&nbsp;"AUDIO_OUTPUT_ROUTING: 2,3"
5415    </p>
5416    <p>&nbsp;&nbsp;&nbsp;"."
5417    </p>
5418    </blockquote><p>
5419                        
5420    </p>
5421    <a name="SET FX_SEND NAME"></a><br /><hr />
5422    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5423    <a name="rfc.section.6.4.30"></a><h3>6.4.30.&nbsp;
5424    Changing effect send's name</h3>
5425    
5426    <p>The front-end can alter the current name of an effect
5427                        send entity by sending the following command:
5428    </p>
5429    <p>
5430                            </p>
5431    <blockquote class="text">
5432    <p>SET FX_SEND NAME &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;name&gt;
5433    </p>
5434    </blockquote><p>
5435                        
5436    </p>
5437    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5438                        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>
5439                        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,
5440                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5441                        as returned by the <a class='info' href='#CREATE FX_SEND'>"CREATE FX_SEND"<span> (</span><span class='info'>Adding an effect send to a sampler channel</span><span>)</span></a>
5442                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command and
5443                        &lt;name&gt; is the new name of the effect send entity, which
5444                        does not have to be unique (name MUST be encapsulated into apostrophes
5445                        and supports escape sequences as described in chapter
5446                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
5447                        
5448  </p>  </p>
5449  <p>Possible Answers:  <p>Possible Answers:
5450  </p>  </p>
# Line 4543  Intellectual Property and Copyright Stat Line 5456  Intellectual Property and Copyright Stat
5456  <blockquote class="text">  <blockquote class="text">
5457  <p>on success  <p>on success
5458  </p>  </p>
5459    </blockquote>
5460                                
5461    
5462    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5463                                    </p>
5464    <blockquote class="text">
5465    <p>in case it failed, providing an appropriate error code and error message
5466    </p>
5467    </blockquote>
5468                                
5469    
5470  </blockquote><p>  </blockquote><p>
5471                        
5472    </p>
5473    <p>Example:
5474    </p>
5475    <p>
5476                            </p>
5477    <blockquote class="text">
5478    <p>C: "SET FX_SEND NAME 0 0 'Fx Send 1'"
5479    </p>
5480    <p>S: "OK"
5481    </p>
5482    </blockquote><p>
5483                        
5484    </p>
5485    <a name="SET FX_SEND AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
5486    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5487    <a name="rfc.section.6.4.31"></a><h3>6.4.31.&nbsp;
5488    Altering effect send's audio routing</h3>
5489    
5490    <p>The front-end can alter the destination of an effect send's audio channel on a specific
5491                        sampler channel by sending the following command:
5492    </p>
5493    <p>
5494                            </p>
5495    <blockquote class="text">
5496    <p>SET FX_SEND AUDIO_OUTPUT_CHANNEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;audio-src&gt; &lt;audio-dst&gt;
5497    </p>
5498    </blockquote><p>
5499                        
5500    </p>
5501    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5502                        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>
5503                        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,
5504                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5505                        as returned by the <a class='info' href='#CREATE FX_SEND'>"CREATE FX_SEND"<span> (</span><span class='info'>Adding an effect send to a sampler channel</span><span>)</span></a>
5506                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command,
5507                        &lt;audio-src&gt; is the numerical ID of the effect send's audio channel
5508                        which should be rerouted and &lt;audio-dst&gt; is the numerical ID of
5509                        the audio channel of the selected audio output device where &lt;audio-src&gt;
5510                        should be routed to.
5511    </p>
5512    <p>Note that effect sends can only route audio to the same audio output
5513                        device as assigned to the effect send's sampler channel. Also note that an
5514                        effect send entity does always have exactly as much audio channels as its
5515                        sampler channel. So if the sampler channel is stereo, the effect send does
5516                        have two audio channels as well. Also keep in mind that the amount of audio
5517                        channels on a sampler channel might be dependant not only to the deployed
5518                        sampler engine on the sampler channel, but also dependant to the instrument
5519                        currently loaded. However you can (effectively) turn an i.e. stereo effect
5520                        send into a mono one by simply altering its audio routing appropriately.
5521    </p>
5522    <p>Possible Answers:
5523    </p>
5524    <p>
5525                            </p>
5526    <blockquote class="text">
5527    <p>"OK" -
5528                                    </p>
5529    <blockquote class="text">
5530    <p>on success
5531  </p>  </p>
5532    </blockquote>
5533                                
5534    
5535  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5536                                  </p>                                  </p>
5537  <blockquote class="text">  <blockquote class="text">
5538  <p>if the channel was soloed/unsoloed, but there are noteworthy  <p>if audio output channel was set, but there are noteworthy
5539                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
5540                                      warning message                                      warning message
5541  </p>  </p>
5542  </blockquote><p>  </blockquote>
5543                                
5544    
 </p>  
5545  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5546                                  </p>                                  </p>
5547  <blockquote class="text">  <blockquote class="text">
5548  <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
5549  </p>  </p>
5550    </blockquote>
5551                                
5552    
5553    </blockquote><p>
5554                        
5555    </p>
5556    <p>Example:
5557    </p>
5558    <p>
5559                            </p>
5560    <blockquote class="text">
5561    <p>C: "SET FX_SEND AUDIO_OUTPUT_CHANNEL 0 0 0 2"
5562    </p>
5563    <p>S: "OK"
5564    </p>
5565  </blockquote><p>  </blockquote><p>
5566                        
5567    </p>
5568    <a name="SET FX_SEND MIDI_CONTROLLER"></a><br /><hr />
5569    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5570    <a name="rfc.section.6.4.32"></a><h3>6.4.32.&nbsp;
5571    Altering effect send's MIDI controller</h3>
5572    
5573    <p>The front-end can alter the MIDI controller of an effect
5574                        send entity by sending the following command:
5575    </p>
5576    <p>
5577                            </p>
5578    <blockquote class="text">
5579    <p>SET FX_SEND MIDI_CONTROLLER &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;midi-ctrl&gt;
5580  </p>  </p>
5581  </blockquote><p>  </blockquote><p>
5582                        
5583    </p>
5584    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5585                        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>
5586                        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,
5587                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5588                        as returned by the <a class='info' href='#CREATE FX_SEND'>"CREATE FX_SEND"<span> (</span><span class='info'>Adding an effect send to a sampler channel</span><span>)</span></a>
5589                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command and
5590                        &lt;midi-ctrl&gt; reflects the MIDI controller which shall be
5591                        able to modify the effect send's send level.
5592    </p>
5593    <p>Possible Answers:
5594    </p>
5595    <p>
5596                            </p>
5597    <blockquote class="text">
5598    <p>"OK" -
5599                                    </p>
5600    <blockquote class="text">
5601    <p>on success
5602    </p>
5603    </blockquote>
5604                                
5605    
5606    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5607                                    </p>
5608    <blockquote class="text">
5609    <p>if MIDI controller was set, but there are noteworthy
5610                                        issue(s) related, providing an appropriate warning code and
5611                                        warning message
5612  </p>  </p>
5613  <p>Examples:  </blockquote>
5614                                
5615    
5616    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5617                                    </p>
5618    <blockquote class="text">
5619    <p>in case it failed, providing an appropriate error code and error message
5620    </p>
5621    </blockquote>
5622                                
5623    
5624    </blockquote><p>
5625                        
5626    </p>
5627    <p>Example:
5628  </p>  </p>
5629  <p>  <p>
5630                          </p>                          </p>
5631  <blockquote class="text">  <blockquote class="text">
5632    <p>C: "SET FX_SEND MIDI_CONTROLLER 0 0 91"
5633    </p>
5634    <p>S: "OK"
5635    </p>
5636    </blockquote><p>
5637                        
5638    </p>
5639    <a name="SET FX_SEND LEVEL"></a><br /><hr />
5640    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5641    <a name="rfc.section.6.4.33"></a><h3>6.4.33.&nbsp;
5642    Altering effect send's send level</h3>
5643    
5644    <p>The front-end can alter the current send level of an effect
5645                        send entity by sending the following command:
5646    </p>
5647  <p>  <p>
5648                            </p>
5649    <blockquote class="text">
5650    <p>SET FX_SEND LEVEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;volume&gt;
5651  </p>  </p>
5652  </blockquote><p>  </blockquote><p>
5653                        
5654    </p>
5655    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5656                        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>
5657                        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,
5658                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5659                        as returned by the <a class='info' href='#CREATE FX_SEND'>"CREATE FX_SEND"<span> (</span><span class='info'>Adding an effect send to a sampler channel</span><span>)</span></a>
5660                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command and
5661                        &lt;volume&gt; is an optionally dotted positive number (a value
5662                        smaller than 1.0 means attenuation, whereas a value greater than
5663                        1.0 means amplification) reflecting the new send level.
5664    </p>
5665    <p>Possible Answers:
5666    </p>
5667    <p>
5668                            </p>
5669    <blockquote class="text">
5670    <p>"OK" -
5671                                    </p>
5672    <blockquote class="text">
5673    <p>on success
5674    </p>
5675    </blockquote>
5676                                
5677    
5678    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5679                                    </p>
5680    <blockquote class="text">
5681    <p>if new send level was set, but there are noteworthy
5682                                        issue(s) related, providing an appropriate warning code and
5683                                        warning message
5684  </p>  </p>
5685  <a name="rfc.section.6.4.24"></a><h4><a name="RESET CHANNEL">6.4.24</a>&nbsp;Resetting a sampler channel</h4>  </blockquote>
5686                                
5687    
5688    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5689                                    </p>
5690    <blockquote class="text">
5691    <p>in case it failed, providing an appropriate error code and error message
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: "SET FX_SEND LEVEL 0 0 0.15"
5705    </p>
5706    <p>S: "OK"
5707    </p>
5708    </blockquote><p>
5709                        
5710    </p>
5711    <a name="RESET CHANNEL"></a><br /><hr />
5712    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5713    <a name="rfc.section.6.4.34"></a><h3>6.4.34.&nbsp;
5714    Resetting a sampler channel</h3>
5715    
5716  <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:
5717  </p>  </p>
# Line 4587  Intellectual Property and Copyright Stat Line 5721  Intellectual Property and Copyright Stat
5721  <p>RESET CHANNEL &lt;sampler-channel&gt;  <p>RESET CHANNEL &lt;sampler-channel&gt;
5722  </p>  </p>
5723  </blockquote><p>  </blockquote><p>
5724                        
5725  </p>  </p>
5726  <p>  <p>
5727                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.
# Line 4605  Intellectual Property and Copyright Stat Line 5739  Intellectual Property and Copyright Stat
5739  <blockquote class="text">  <blockquote class="text">
5740  <p>on success  <p>on success
5741  </p>  </p>
5742  </blockquote><p>  </blockquote>
5743                                
5744    
 </p>  
5745  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5746                                  </p>                                  </p>
5747  <blockquote class="text">  <blockquote class="text">
# Line 4615  Intellectual Property and Copyright Stat Line 5749  Intellectual Property and Copyright Stat
5749                                      related, providing an appropriate warning code and warning                                      related, providing an appropriate warning code and warning
5750                                      message                                      message
5751  </p>  </p>
5752  </blockquote><p>  </blockquote>
5753                                
5754    
 </p>  
5755  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5756                                  </p>                                  </p>
5757  <blockquote class="text">  <blockquote class="text">
5758  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
5759                                      error message                                      error message
5760  </p>  </p>
5761  </blockquote><p>  </blockquote>
5762                                
5763    
 </p>  
5764  </blockquote><p>  </blockquote><p>
5765                        
5766  </p>  </p>
5767  <p>Examples:  <p>Examples:
5768  </p>  </p>
# Line 4638  Intellectual Property and Copyright Stat Line 5772  Intellectual Property and Copyright Stat
5772  <p>  <p>
5773  </p>  </p>
5774  </blockquote><p>  </blockquote><p>
5775                        
5776  </p>  </p>
5777  <a name="rfc.section.6.5"></a><h4><a name="anchor12">6.5</a>&nbsp;Controlling connection</h4>  <a name="anchor12"></a><br /><hr />
5778    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5779    <a name="rfc.section.6.5"></a><h3>6.5.&nbsp;
5780    Controlling connection</h3>
5781    
5782  <p>The following commands are used to control the connection to LinuxSampler.  <p>The following commands are used to control the connection to LinuxSampler.
5783  </p>  </p>
5784  <a name="rfc.section.6.5.1"></a><h4><a name="SUBSCRIBE">6.5.1</a>&nbsp;Register front-end for receiving event messages</h4>  <a name="SUBSCRIBE"></a><br /><hr />
5785    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5786    <a name="rfc.section.6.5.1"></a><h3>6.5.1.&nbsp;
5787    Register front-end for receiving event messages</h3>
5788    
5789  <p>The front-end can register itself to the LinuxSampler application to  <p>The front-end can register itself to the LinuxSampler application to
5790                      be informed about noteworthy events by sending this command:                      be informed about noteworthy events by sending this command:
# Line 4655  Intellectual Property and Copyright Stat Line 5795  Intellectual Property and Copyright Stat
5795  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
5796  </p>  </p>
5797  </blockquote><p>  </blockquote><p>
5798                        
5799  </p>  </p>
5800  <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
5801                      client wants to subscribe to.                      client wants to subscribe to.
# Line 4670  Intellectual Property and Copyright Stat Line 5810  Intellectual Property and Copyright Stat
5810  <blockquote class="text">  <blockquote class="text">
5811  <p>on success  <p>on success
5812  </p>  </p>
5813  </blockquote><p>  </blockquote>
5814                                
5815    
 </p>  
5816  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5817                                  </p>                                  </p>
5818  <blockquote class="text">  <blockquote class="text">
# Line 4680  Intellectual Property and Copyright Stat Line 5820  Intellectual Property and Copyright Stat
5820                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
5821                                      warning message                                      warning message
5822  </p>  </p>
5823  </blockquote><p>  </blockquote>
5824                                
5825    
 </p>  
5826  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5827                                  </p>                                  </p>
5828  <blockquote class="text">  <blockquote class="text">
5829  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
5830                                      error message                                      error message
5831  </p>  </p>
5832  </blockquote><p>  </blockquote>
5833                                
5834    
 </p>  
5835  </blockquote><p>  </blockquote><p>
5836                        
5837  </p>  </p>
5838  <p>Examples:  <p>Examples:
5839  </p>  </p>
# Line 4703  Intellectual Property and Copyright Stat Line 5843  Intellectual Property and Copyright Stat
5843  <p>  <p>
5844  </p>  </p>
5845  </blockquote><p>  </blockquote><p>
5846                        
5847  </p>  </p>
5848  <a name="rfc.section.6.5.2"></a><h4><a name="UNSUBSCRIBE">6.5.2</a>&nbsp;Unregister front-end for not receiving event messages</h4>  <a name="UNSUBSCRIBE"></a><br /><hr />
5849    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5850    <a name="rfc.section.6.5.2"></a><h3>6.5.2.&nbsp;
5851    Unregister front-end for not receiving event messages</h3>
5852    
5853  <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
5854                      messages anymore by sending the following command:                      messages anymore by sending the following command:
# Line 4716  Intellectual Property and Copyright Stat Line 5859  Intellectual Property and Copyright Stat
5859  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
5860  </p>  </p>
5861  </blockquote><p>  </blockquote><p>
5862                        
5863  </p>  </p>
5864  <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
5865                      client doesn't want to receive anymore.                      client doesn't want to receive anymore.
# Line 4731  Intellectual Property and Copyright Stat Line 5874  Intellectual Property and Copyright Stat
5874  <blockquote class="text">  <blockquote class="text">
5875  <p>on success  <p>on success
5876  </p>  </p>
5877  </blockquote><p>  </blockquote>
5878                                
5879    
 </p>  
5880  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5881                                  </p>                                  </p>
5882  <blockquote class="text">  <blockquote class="text">
# Line 4741  Intellectual Property and Copyright Stat Line 5884  Intellectual Property and Copyright Stat
5884                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
5885                                      warning message                                      warning message
5886  </p>  </p>
5887  </blockquote><p>  </blockquote>
5888                                
5889    
 </p>  
5890  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5891                                  </p>                                  </p>
5892  <blockquote class="text">  <blockquote class="text">
5893  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
5894                                      error message                                      error message
5895  </p>  </p>
5896  </blockquote><p>  </blockquote>
5897                                
5898    
 </p>  
5899  </blockquote><p>  </blockquote><p>
5900                        
5901  </p>  </p>
5902  <p>Examples:  <p>Examples:
5903  </p>  </p>
# Line 4764  Intellectual Property and Copyright Stat Line 5907  Intellectual Property and Copyright Stat
5907  <p>  <p>
5908  </p>  </p>
5909  </blockquote><p>  </blockquote><p>
5910                        
5911  </p>  </p>
5912  <a name="rfc.section.6.5.3"></a><h4><a name="SET ECHO">6.5.3</a>&nbsp;Enable or disable echo of commands</h4>  <a name="SET ECHO"></a><br /><hr />
5913    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5914    <a name="rfc.section.6.5.3"></a><h3>6.5.3.&nbsp;
5915    Enable or disable echo of commands</h3>
5916    
5917  <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:
5918  </p>  </p>
# Line 4776  Intellectual Property and Copyright Stat Line 5922  Intellectual Property and Copyright Stat
5922  <p>SET ECHO &lt;value&gt;  <p>SET ECHO &lt;value&gt;
5923  </p>  </p>
5924  </blockquote><p>  </blockquote><p>
5925                        
5926  </p>  </p>
5927  <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
5928                      or "0" to disable echo mode. When echo mode is enabled, all                      or "0" to disable echo mode. When echo mode is enabled, all
# Line 4796  Intellectual Property and Copyright Stat Line 5942  Intellectual Property and Copyright Stat
5942  <blockquote class="text">  <blockquote class="text">
5943  <p>usually  <p>usually
5944  </p>  </p>
5945  </blockquote><p>  </blockquote>
5946                                
5947    
 </p>  
5948  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5949                                  </p>                                  </p>
5950  <blockquote class="text">  <blockquote class="text">
5951  <p>on syntax error, e.g. non boolean value  <p>on syntax error, e.g. non boolean value
5952  </p>  </p>
5953  </blockquote><p>  </blockquote>
5954                                
5955    
 </p>  
5956  </blockquote><p>  </blockquote><p>
5957                        
5958  </p>  </p>
5959  <p>Examples:  <p>Examples:
5960  </p>  </p>
# Line 4818  Intellectual Property and Copyright Stat Line 5964  Intellectual Property and Copyright Stat
5964  <p>  <p>
5965  </p>  </p>
5966  </blockquote><p>  </blockquote><p>
5967                        
5968  </p>  </p>
5969  <a name="rfc.section.6.5.4"></a><h4><a name="QUIT">6.5.4</a>&nbsp;Close client connection</h4>  <a name="QUIT"></a><br /><hr />
5970    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5971    <a name="rfc.section.6.5.4"></a><h3>6.5.4.&nbsp;
5972    Close client connection</h3>
5973    
5974  <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:
5975  </p>  </p>
# Line 4830  Intellectual Property and Copyright Stat Line 5979  Intellectual Property and Copyright Stat
5979  <p>QUIT  <p>QUIT
5980  </p>  </p>
5981  </blockquote><p>  </blockquote><p>
5982                        
5983  </p>  </p>
5984  <p>This is probably more interesting for manual telnet connections to  <p>This is probably more interesting for manual telnet connections to
5985                      LinuxSampler than really useful for a front-end implementation.                      LinuxSampler than really useful for a front-end implementation.
5986  </p>  </p>
5987  <a name="rfc.section.6.6"></a><h4><a name="anchor13">6.6</a>&nbsp;Global commands</h4>  <a name="anchor13"></a><br /><hr />
5988    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5989    <a name="rfc.section.6.6"></a><h3>6.6.&nbsp;
5990    Global commands</h3>
5991    
5992  <p>The following commands have global impact on the sampler.  <p>The following commands have global impact on the sampler.
5993  </p>  </p>
5994  <a name="rfc.section.6.6.1"></a><h4><a name="RESET">6.6.1</a>&nbsp;Reset sampler</h4>  <a name="GET TOTAL_VOICE_COUNT"></a><br /><hr />
5995    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5996    <a name="rfc.section.6.6.1"></a><h3>6.6.1.&nbsp;
5997    Current number of active voices</h3>
5998    
5999    <p>The front-end can ask for the current number of active voices on
6000                        the sampler by sending the following command:
6001    </p>
6002    <p>
6003                            </p>
6004    <blockquote class="text">
6005    <p>GET TOTAL_VOICE_COUNT
6006    </p>
6007    </blockquote><p>
6008                        
6009    </p>
6010    <p>Possible Answers:
6011    </p>
6012    <p>
6013                            </p>
6014    <blockquote class="text">
6015    <p>LinuxSampler will answer by returning the number of all active
6016                                voices on the sampler.
6017    </p>
6018    </blockquote><p>
6019                        
6020    </p>
6021    <a name="GET TOTAL_VOICE_COUNT_MAX"></a><br /><hr />
6022    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6023    <a name="rfc.section.6.6.2"></a><h3>6.6.2.&nbsp;
6024    Maximum amount of active voices</h3>
6025    
6026    <p>The front-end can ask for the maximum number of active voices
6027                        by sending the following command:
6028    </p>
6029    <p>
6030                            </p>
6031    <blockquote class="text">
6032    <p>GET TOTAL_VOICE_COUNT_MAX
6033    </p>
6034    </blockquote><p>
6035                        
6036    </p>
6037    <p>Possible Answers:
6038    </p>
6039    <p>
6040                            </p>
6041    <blockquote class="text">
6042    <p>LinuxSampler will answer by returning the maximum number
6043                                of active voices.
6044    </p>
6045    </blockquote><p>
6046                        
6047    </p>
6048    <a name="RESET"></a><br /><hr />
6049    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6050    <a name="rfc.section.6.6.3"></a><h3>6.6.3.&nbsp;
6051    Reset sampler</h3>
6052    
6053  <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:
6054  </p>  </p>
# Line 4849  Intellectual Property and Copyright Stat Line 6058  Intellectual Property and Copyright Stat
6058  <p>RESET  <p>RESET
6059  </p>  </p>
6060  </blockquote><p>  </blockquote><p>
6061                        
6062  </p>  </p>
6063  <p>Possible Answers:  <p>Possible Answers:
6064  </p>  </p>
# Line 4861  Intellectual Property and Copyright Stat Line 6070  Intellectual Property and Copyright Stat
6070  <blockquote class="text">  <blockquote class="text">
6071  <p>always  <p>always
6072  </p>  </p>
6073  </blockquote><p>  </blockquote>
6074                                
6075    
 </p>  
6076  </blockquote><p>  </blockquote><p>
6077                        
6078  </p>  </p>
6079  <p>Examples:  <p>Examples:
6080  </p>  </p>
# Line 4875  Intellectual Property and Copyright Stat Line 6084  Intellectual Property and Copyright Stat
6084  <p>  <p>
6085  </p>  </p>
6086  </blockquote><p>  </blockquote><p>
6087                        
6088  </p>  </p>
6089  <a name="rfc.section.6.6.2"></a><h4><a name="GET SERVER INFO">6.6.2</a>&nbsp;General sampler informations</h4>  <a name="GET SERVER INFO"></a><br /><hr />
6090    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6091    <a name="rfc.section.6.6.4"></a><h3>6.6.4.&nbsp;
6092    General sampler informations</h3>
6093    
6094  <p>The client can ask for general informations about the LinuxSampler  <p>The client can ask for general informations about the LinuxSampler
6095                         instance by sending the following command:                         instance by sending the following command:
# Line 4888  Intellectual Property and Copyright Stat Line 6100  Intellectual Property and Copyright Stat
6100  <p>GET SERVER INFO  <p>GET SERVER INFO
6101  </p>  </p>
6102  </blockquote><p>  </blockquote><p>
6103                        
6104  </p>  </p>
6105  <p>Possible Answers:  <p>Possible Answers:
6106  </p>  </p>
# Line 4900  Intellectual Property and Copyright Stat Line 6112  Intellectual Property and Copyright Stat
6112                                 followed by a colon and then a space character &lt;SP&gt; and finally                                 followed by a colon and then a space character &lt;SP&gt; and finally
6113                                 the info character string to that information category. At the                                 the info character string to that information category. At the
6114                                 moment the following categories are defined:                                 moment the following categories are defined:
6115                                
6116  </p>  </p>
6117  <p>  <p>
6118                                  </p>                                  </p>
# Line 4909  Intellectual Property and Copyright Stat Line 6121  Intellectual Property and Copyright Stat
6121                                          </p>                                          </p>
6122  <blockquote class="text">  <blockquote class="text">
6123  <p>arbitrary textual description about the sampler  <p>arbitrary textual description about the sampler
6124                                                (note that the character string may contain
6125                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
6126  </p>  </p>
6127  </blockquote><p>  </blockquote>
6128                                        
6129    
 </p>  
6130  <p>VERSION -  <p>VERSION -
6131                                          </p>                                          </p>
6132  <blockquote class="text">  <blockquote class="text">
6133  <p>version of the sampler  <p>version of the sampler
6134  </p>  </p>
6135  </blockquote><p>  </blockquote>
6136                                        
6137    
 </p>  
6138  <p>PROTOCOL_VERSION -  <p>PROTOCOL_VERSION -
6139                                          </p>                                          </p>
6140  <blockquote class="text">  <blockquote class="text">
6141  <p>version of the LSCP specification the sampler  <p>version of the LSCP specification the sampler
6142                                              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)                                              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)
6143  </p>  </p>
6144    </blockquote>
6145                                        
6146    
6147    <p>INSTRUMENTS_DB_SUPPORT -
6148                                            </p>
6149    <blockquote class="text">
6150    <p>either yes or no, specifies whether the
6151                                                sampler is build with instruments database support.
6152    </p>
6153    </blockquote>
6154                                        
6155    
6156    </blockquote>
6157                                
6158    
6159  </blockquote><p>  </blockquote><p>
6160                        
6161    </p>
6162    <p>The mentioned fields above don't have to be in particular order.
6163                        Other fields might be added in future.
6164    </p>
6165    <a name="GET VOLUME"></a><br /><hr />
6166    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6167    <a name="rfc.section.6.6.5"></a><h3>6.6.5.&nbsp;
6168    Getting global volume attenuation</h3>
6169    
6170    <p>The client can ask for the current global sampler-wide volume
6171                        attenuation by sending the following command:
6172    </p>
6173    <p>
6174                            </p>
6175    <blockquote class="text">
6176    <p>GET VOLUME
6177  </p>  </p>
6178  </blockquote><p>  </blockquote><p>
6179                        
6180    </p>
6181    <p>Possible Answers:
6182    </p>
6183    <p>
6184                            </p>
6185    <blockquote class="text">
6186    <p>The sampler will always answer by returning the optional
6187                                dotted floating point coefficient, reflecting the current
6188                                global volume attenuation.
6189                                
6190    </p>
6191    </blockquote><p>
6192                        
6193    </p>
6194    <p>Note: it is up to the respective sampler engine whether to obey
6195                        that global volume parameter or not, but in general all engines SHOULD
6196                        use this parameter.
6197    </p>
6198    <a name="SET VOLUME"></a><br /><hr />
6199    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6200    <a name="rfc.section.6.6.6"></a><h3>6.6.6.&nbsp;
6201    Setting global volume attenuation</h3>
6202    
6203    <p>The client can alter the current global sampler-wide volume
6204                        attenuation by sending the following command:
6205    </p>
6206    <p>
6207                            </p>
6208    <blockquote class="text">
6209    <p>SET VOLUME &lt;volume&gt;
6210  </p>  </p>
6211  </blockquote><p>  </blockquote><p>
6212                        
6213    </p>
6214    <p>Where &lt;volume&gt; should be replaced by the optional dotted
6215                       floating point value, reflecting the new global volume parameter.
6216                       This value might usually be in the range between 0.0 and 1.0, that
6217                       is for attenuating the overall volume.
6218    </p>
6219    <p>Possible Answers:
6220    </p>
6221    <p>
6222                            </p>
6223    <blockquote class="text">
6224    <p>"OK" -
6225                                    </p>
6226    <blockquote class="text">
6227    <p>on success
6228    </p>
6229    </blockquote>
6230                                
6231    
6232    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6233                                    </p>
6234    <blockquote class="text">
6235    <p>if the global volume was set, but there are noteworthy
6236                                        issue(s) related, providing an appropriate warning code and
6237                                        warning message
6238    </p>
6239    </blockquote>
6240                                
6241    
6242    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6243                                    </p>
6244    <blockquote class="text">
6245    <p>in case it failed, providing an appropriate error code and error message
6246    </p>
6247    </blockquote>
6248                                
6249    
6250    </blockquote><p>
6251                        
6252    </p>
6253    <a name="MIDI Instrument Mapping"></a><br /><hr />
6254    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6255    <a name="rfc.section.6.7"></a><h3>6.7.&nbsp;
6256    MIDI Instrument Mapping</h3>
6257    
6258    <p>The MIDI protocol provides a way to switch between instruments
6259                    by sending so called MIDI bank select and MIDI program change
6260                    messages which are essentially just numbers. The following commands
6261                    allow to actually map arbitrary MIDI bank select / program change
6262                    numbers with real instruments.
6263    </p>
6264    <p>The sampler allows to manage an arbitrary amount of MIDI
6265                    instrument maps which define which instrument to load on
6266                    which MIDI program change message.
6267    </p>
6268    <p>By default, that is when the sampler is launched, there is no
6269                    map, thus the sampler will simply ignore all program change
6270                    messages. The front-end has to explicitly create at least one
6271                    map, add entries to the map and tell the respective sampler
6272                    channel(s) which MIDI instrument map to use, so the sampler
6273                    knows how to react on a given program change message on the
6274                    respective sampler channel, that is by switching to the
6275                    respectively defined engine type and loading the respective
6276                    instrument. See command
6277                    <a class='info' href='#SET CHANNEL MIDI_INSTRUMENT_MAP'>"SET CHANNEL MIDI_INSTRUMENT_MAP"<span> (</span><span class='info'>Assigning a MIDI instrument map to a sampler channel</span><span>)</span></a>
6278                    for how to assign a MIDI instrument map to a sampler channel.
6279    </p>
6280    <p>Also note per MIDI specification a bank select message does not
6281                    cause to switch to another instrument. Instead when receiving a
6282                    bank select message the bank value will be stored and a subsequent
6283                    program change message (which may occur at any time) will finally
6284                    cause the sampler to switch to the respective instrument as
6285                    reflected by the current MIDI instrument map.
6286    </p>
6287    <a name="ADD MIDI_INSTRUMENT_MAP"></a><br /><hr />
6288    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6289    <a name="rfc.section.6.7.1"></a><h3>6.7.1.&nbsp;
6290    Create a new MIDI instrument map</h3>
6291    
6292    <p>The front-end can add a new MIDI instrument map by sending
6293                        the following command:
6294    </p>
6295    <p>
6296                            </p>
6297    <blockquote class="text">
6298    <p>ADD MIDI_INSTRUMENT_MAP [&lt;name&gt;]
6299    </p>
6300    </blockquote><p>
6301                        
6302    </p>
6303    <p>Where &lt;name&gt; is an optional argument allowing to
6304                        assign a custom name to the new map. MIDI instrument Map
6305                        names do not have to be unique, but MUST be encapsulated
6306                        into apostrophes and support escape sequences as described
6307                        in chapter "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>".
6308                        
6309    </p>
6310    <p>Possible Answers:
6311    </p>
6312    <p>
6313                            </p>
6314    <blockquote class="text">
6315    <p>"OK[&lt;map&gt;]" -
6316                                    </p>
6317    <blockquote class="text">
6318    <p>in case a new MIDI instrument map could
6319                                        be added, where &lt;map&gt; reflects the
6320                                        unique ID of the newly created MIDI
6321                                        instrument map
6322    </p>
6323    </blockquote>
6324                                
6325    
6326    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6327                                    </p>
6328    <blockquote class="text">
6329    <p>when a new map could not be created, which
6330                                        might never occur in practice
6331    </p>
6332    </blockquote>
6333                                
6334    
6335    </blockquote><p>
6336                        
6337    </p>
6338    <p>Examples:
6339    </p>
6340    <p>
6341                            </p>
6342    <blockquote class="text">
6343    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Map'"
6344    </p>
6345    <p>S: "OK[0]"
6346    </p>
6347    </blockquote><p>
6348                        
6349    </p>
6350    <p>
6351                            </p>
6352    <blockquote class="text">
6353    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Drumkit'"
6354    </p>
6355    <p>S: "OK[1]"
6356    </p>
6357    </blockquote><p>
6358                        
6359    </p>
6360    <p>
6361                            </p>
6362    <blockquote class="text">
6363    <p>C: "ADD MIDI_INSTRUMENT_MAP"
6364    </p>
6365    <p>S: "OK[5]"
6366    </p>
6367    </blockquote><p>
6368                        
6369    </p>
6370    <a name="REMOVE MIDI_INSTRUMENT_MAP"></a><br /><hr />
6371    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6372    <a name="rfc.section.6.7.2"></a><h3>6.7.2.&nbsp;
6373    Delete one particular or all MIDI instrument maps</h3>
6374    
6375    <p>The front-end can delete a particular MIDI instrument map
6376                        by sending the following command:
6377    </p>
6378    <p>
6379                            </p>
6380    <blockquote class="text">
6381    <p>REMOVE MIDI_INSTRUMENT_MAP &lt;map&gt;
6382    </p>
6383    </blockquote><p>
6384                        
6385    </p>
6386    <p>Where &lt;map&gt; reflects the unique ID of the map to delete
6387                        as returned by the <a class='info' href='#LIST MIDI_INSTRUMENT_MAPS'>"LIST MIDI_INSTRUMENT_MAPS"<span> (</span><span class='info'>Getting all created MIDI instrument maps</span><span>)</span></a>
6388                        command.
6389    </p>
6390    <p>The front-end can delete all MIDI instrument maps by
6391                        sending the following command:
6392    </p>
6393    <p>
6394                            </p>
6395    <blockquote class="text">
6396    <p>REMOVE MIDI_INSTRUMENT_MAP ALL
6397    </p>
6398    </blockquote><p>
6399                        
6400    </p>
6401    <p>Possible Answers:
6402    </p>
6403    <p>
6404                            </p>
6405    <blockquote class="text">
6406    <p>"OK" -
6407                                    </p>
6408    <blockquote class="text">
6409    <p>in case the map(s) could be deleted
6410    </p>
6411    </blockquote>
6412                                
6413    
6414    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6415                                    </p>
6416    <blockquote class="text">
6417    <p>when the given map does not exist
6418    </p>
6419    </blockquote>
6420                                
6421    
6422    </blockquote><p>
6423                        
6424    </p>
6425    <p>Examples:
6426    </p>
6427    <p>
6428                            </p>
6429    <blockquote class="text">
6430    <p>C: "REMOVE MIDI_INSTRUMENT_MAP 0"
6431    </p>
6432    <p>S: "OK"
6433    </p>
6434    </blockquote><p>
6435                        
6436    </p>
6437    <p>
6438                            </p>
6439    <blockquote class="text">
6440    <p>C: "REMOVE MIDI_INSTRUMENT_MAP ALL"
6441    </p>
6442    <p>S: "OK"
6443    </p>
6444    </blockquote><p>
6445                        
6446    </p>
6447    <a name="GET MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6448    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6449    <a name="rfc.section.6.7.3"></a><h3>6.7.3.&nbsp;
6450    Get amount of existing MIDI instrument maps</h3>
6451    
6452    <p>The front-end can retrieve the current amount of MIDI
6453                        instrument maps by sending the following command:
6454    </p>
6455    <p>
6456                            </p>
6457    <blockquote class="text">
6458    <p>GET MIDI_INSTRUMENT_MAPS
6459    </p>
6460    </blockquote><p>
6461                        
6462    </p>
6463    <p>Possible Answers:
6464    </p>
6465    <p>
6466                            </p>
6467    <blockquote class="text">
6468    <p>The sampler will answer by returning the current
6469                                number of MIDI instrument maps.
6470    </p>
6471    </blockquote><p>
6472                        
6473    </p>
6474    <p>Example:
6475    </p>
6476    <p>
6477                            </p>
6478    <blockquote class="text">
6479    <p>C: "GET MIDI_INSTRUMENT_MAPS"
6480    </p>
6481    <p>S: "2"
6482    </p>
6483    </blockquote><p>
6484                        
6485    </p>
6486    <a name="LIST MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6487    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6488    <a name="rfc.section.6.7.4"></a><h3>6.7.4.&nbsp;
6489    Getting all created MIDI instrument maps</h3>
6490    
6491    <p>The number of MIDI instrument maps can change on runtime. To get the
6492                        current list of MIDI instrument maps, the front-end can send the
6493                        following command:
6494    </p>
6495    <p>
6496                            </p>
6497    <blockquote class="text">
6498    <p>LIST MIDI_INSTRUMENT_MAPS
6499    </p>
6500    </blockquote><p>
6501                        
6502    </p>
6503    <p>Possible Answers:
6504    </p>
6505    <p>
6506                            </p>
6507    <blockquote class="text">
6508    <p>The sampler will answer by returning a comma separated list
6509                                with all MIDI instrument maps' numerical IDs.
6510    </p>
6511    </blockquote><p>
6512                        
6513    </p>
6514    <p>Example:
6515    </p>
6516    <p>
6517                            </p>
6518    <blockquote class="text">
6519    <p>C: "LIST MIDI_INSTRUMENT_MAPS"
6520    </p>
6521    <p>S: "0,1,5,12"
6522    </p>
6523    </blockquote><p>
6524                        
6525    </p>
6526    <a name="GET MIDI_INSTRUMENT_MAP INFO"></a><br /><hr />
6527    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6528    <a name="rfc.section.6.7.5"></a><h3>6.7.5.&nbsp;
6529    Getting MIDI instrument map information</h3>
6530    
6531    <p>The front-end can ask for the current settings of a MIDI
6532                        instrument map by sending the following command:
6533    </p>
6534    <p>
6535                            </p>
6536    <blockquote class="text">
6537    <p>GET MIDI_INSTRUMENT_MAP INFO &lt;map&gt;
6538    </p>
6539    </blockquote><p>
6540                        
6541    </p>
6542    <p>Where &lt;map&gt; is the numerical ID of the map the
6543                        front-end is interested in as returned by the
6544                        <a class='info' href='#LIST MIDI_INSTRUMENT_MAPS'>"LIST MIDI_INSTRUMENT_MAPS"<span> (</span><span class='info'>Getting all created MIDI instrument maps</span><span>)</span></a>
6545                        command.
6546    </p>
6547    <p>Possible Answers:
6548    </p>
6549    <p>
6550                            </p>
6551    <blockquote class="text">
6552    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
6553                                Each answer line begins with the settings category name
6554                                followed by a colon and then a space character &lt;SP&gt; and finally
6555                                the info character string to that setting category. At the
6556                                moment the following categories are defined:
6557    </p>
6558    <p>
6559                                    </p>
6560    <blockquote class="text">
6561    <p>NAME -
6562                                            </p>
6563    <blockquote class="text">
6564    <p>custom name of the given map,
6565                                                which does not have to be unique
6566    </p>
6567    </blockquote>
6568                                        
6569    
6570    <p>DEFAULT -
6571                                            </p>
6572    <blockquote class="text">
6573    <p>either true or false,
6574                                                defines whether this map is the default map
6575    </p>
6576    </blockquote>
6577                                        
6578    
6579    </blockquote>
6580                                
6581    
6582    </blockquote><p>
6583                        
6584  </p>  </p>
6585  <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.
6586                      Other fields might be added in future.  </p>
6587    <p>Example:
6588    </p>
6589    <p>
6590                            </p>
6591    <blockquote class="text">
6592    <p>C: "GET MIDI_INSTRUMENT_MAP INFO 0"
6593    </p>
6594    <p>S: "NAME: Standard Map"
6595    </p>
6596    <p>&nbsp;&nbsp;&nbsp;"DEFAULT: true"
6597    </p>
6598    <p>&nbsp;&nbsp;&nbsp;"."
6599    </p>
6600    </blockquote><p>
6601                        
6602    </p>
6603    <a name="SET MIDI_INSTRUMENT_MAP NAME"></a><br /><hr />
6604    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6605    <a name="rfc.section.6.7.6"></a><h3>6.7.6.&nbsp;
6606    Renaming a MIDI instrument map</h3>
6607    
6608    <p>The front-end can alter the custom name of a MIDI
6609                        instrument map by sending the following command:
6610    </p>
6611    <p>
6612                            </p>
6613    <blockquote class="text">
6614    <p>SET MIDI_INSTRUMENT_MAP NAME &lt;map&gt; &lt;name&gt;
6615    </p>
6616    </blockquote><p>
6617                        
6618    </p>
6619    <p>Where &lt;map&gt; is the numerical ID of the map and
6620                        &lt;name&gt; the new custom name of the map, which does not
6621                        have to be unique (name MUST be encapsulated into apostrophes
6622                        and supports escape sequences as described in chapter
6623                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
6624                        
6625    </p>
6626    <p>Possible Answers:
6627    </p>
6628    <p>
6629                            </p>
6630    <blockquote class="text">
6631    <p>"OK" -
6632                                    </p>
6633    <blockquote class="text">
6634    <p>on success
6635    </p>
6636    </blockquote>
6637                                
6638    
6639    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6640                                    </p>
6641    <blockquote class="text">
6642    <p>in case the given map does not exist
6643    </p>
6644    </blockquote>
6645                                
6646    
6647    </blockquote><p>
6648                        
6649    </p>
6650    <p>Example:
6651    </p>
6652    <p>
6653                            </p>
6654    <blockquote class="text">
6655    <p>C: "SET MIDI_INSTRUMENT_MAP NAME 0 'Foo instruments'"
6656    </p>
6657    <p>S: "OK"
6658    </p>
6659    </blockquote><p>
6660                        
6661    </p>
6662    <a name="MAP MIDI_INSTRUMENT"></a><br /><hr />
6663    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6664    <a name="rfc.section.6.7.7"></a><h3>6.7.7.&nbsp;
6665    Create or replace a MIDI instrument map entry</h3>
6666    
6667    <p>The front-end can create a new or replace an existing entry
6668                        in a sampler's MIDI instrument map by sending the following
6669                        command:
6670    </p>
6671    <p>
6672                            </p>
6673    <blockquote class="text">
6674    <p>MAP MIDI_INSTRUMENT [NON_MODAL] &lt;map&gt;
6675                                &lt;midi_bank&gt; &lt;midi_prog&gt; &lt;engine_name&gt;
6676                                &lt;filename&gt; &lt;instrument_index&gt; &lt;volume_value&gt;
6677                                [&lt;instr_load_mode&gt;] [&lt;name&gt;]
6678    </p>
6679    </blockquote><p>
6680                        
6681    </p>
6682    <p>Where &lt;map&gt; is the numeric ID of the map to alter,
6683                        &lt;midi_bank&gt; is an integer value between
6684                        0..16383 reflecting the MIDI bank select index,
6685                        &lt;midi_prog&gt; an
6686                        integer value between 0..127 reflecting the MIDI program change
6687                        index, &lt;engine_name&gt; a sampler engine name as returned by
6688                        the <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a>
6689                        command (not encapsulated into apostrophes), &lt;filename&gt; the name
6690                        of the instrument's file to be deployed (encapsulated into apostrophes,
6691                        supporting escape sequences as described in chapter
6692                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>"),
6693                        &lt;instrument_index&gt; the index (integer value) of the instrument
6694                        within the given file, &lt;volume_value&gt; reflects the master
6695                        volume of the instrument as optionally dotted number (where a
6696                        value &lt; 1.0 means attenuation and a value > 1.0 means
6697                        amplification). This parameter easily allows to adjust the
6698                        volume of all intruments within a custom instrument map
6699                        without having to adjust their instrument files. The
6700                        OPTIONAL &lt;instr_load_mode&gt; argument defines the life
6701                        time of the instrument, that is when the instrument should
6702                        be loaded, when freed and has exactly the following
6703                        possibilities:
6704    </p>
6705    <p>
6706                            </p>
6707    <blockquote class="text">
6708    <p>"ON_DEMAND" -
6709                                    </p>
6710    <blockquote class="text">
6711    <p>The instrument will be loaded when needed,
6712                                        that is when demanded by at least one sampler
6713                                        channel. It will immediately be freed from memory
6714                                        when not needed by any sampler channel anymore.
6715    </p>
6716    </blockquote>
6717                                
6718    
6719    <p>"ON_DEMAND_HOLD" -
6720                                    </p>
6721    <blockquote class="text">
6722    <p>The instrument will be loaded when needed,
6723                                        that is when demanded by at least one sampler
6724                                        channel. It will be kept in memory even when
6725                                        not needed by any sampler channel anymore.
6726                                        Instruments with this mode are only freed
6727                                        when the sampler is reset or all mapping
6728                                        entries with this mode (and respective
6729                                        instrument) are explicitly changed to
6730                                        "ON_DEMAND" and no sampler channel is using
6731                                        the instrument anymore.
6732    </p>
6733    </blockquote>
6734                                
6735    
6736    <p>"PERSISTENT" -
6737                                    </p>
6738    <blockquote class="text">
6739    <p>The instrument will immediately be loaded
6740                                        into memory when this mapping
6741                                        command is sent and the instrument is kept all
6742                                        the time. Instruments with this mode are
6743                                        only freed when the sampler is reset or all
6744                                        mapping entries with this mode (and
6745                                        respective instrument) are explicitly
6746                                        changed to "ON_DEMAND" and no sampler
6747                                        channel is using the instrument anymore.
6748    </p>
6749    </blockquote>
6750                                
6751    
6752    <p>not supplied -
6753                                    </p>
6754    <blockquote class="text">
6755    <p>In case there is no &lt;instr_load_mode&gt;
6756                                        argument given, it will be up to the
6757                                        InstrumentManager to decide which mode to use.
6758                                        Usually it will use "ON_DEMAND" if an entry
6759                                        for the given instrument does not exist in
6760                                        the InstrumentManager's list yet, otherwise
6761                                        if an entry already exists, it will simply
6762                                        stick with the mode currently reflected by
6763                                        the already existing entry, that is it will
6764                                        not change the mode.
6765    </p>
6766    </blockquote>
6767                                
6768    
6769    </blockquote><p>
6770                        
6771    </p>
6772    <p>
6773                        The &lt;instr_load_mode&gt; argument thus allows to define an
6774                        appropriate strategy (low memory consumption vs. fast
6775                        instrument switching) for each instrument individually. Note, the
6776                        following restrictions apply to this argument: "ON_DEMAND_HOLD" and
6777                        "PERSISTENT" have to be supported by the respective sampler engine
6778                        (which is technically the case when the engine provides an
6779                        InstrumentManager for its format). If this is not the case the
6780                        argument will automatically fall back to the default value
6781                        "ON_DEMAND". Also the load mode of one instrument may
6782                        automatically change the laod mode of other instrument(s), i.e.
6783                        because the instruments are part of the same file and the
6784                        engine does not allow a way to manage load modes for them
6785                        individually. Due to this, in case the frontend shows the
6786                        load modes of entries, the frontend should retrieve the actual
6787                        mode by i.e. sending
6788                        <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>
6789                        command(s). Finally the OPTIONAL &lt;name&gt; argument allows to set a custom name
6790                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
6791                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>") for the
6792                        mapping entry, useful for frontends for displaying an appropriate name for
6793                        mapped instruments (using
6794                        <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>).
6795                        
6796    </p>
6797    <p>
6798                        By default, "MAP MIDI_INSTRUMENT" commands block until the mapping is
6799                        completely established in the sampler. The OPTIONAL "NON_MODAL" argument
6800                        however causes the respective "MAP MIDI_INSTRUMENT" command to return
6801                        immediately, that is to let the sampler establish the mapping in the
6802                        background. So this argument might be especially useful for mappings with
6803                        a "PERSISTENT" type, because these have to load the respective instruments
6804                        immediately and might thus block for a very long time. It is recommended
6805                        however to use the OPTIONAL "NON_MODAL" argument only if really necessary,
6806                        because it has the following drawbacks: as "NON_MODAL" instructions return
6807                        immediately, they may not necessarily return an error i.e. when the given
6808                        instrument file turns out to be corrupt, beside that subsequent commands
6809                        in a LSCP instruction sequence might fail, because mandatory mappings are
6810                        not yet completed.
6811                        
6812    </p>
6813    <p>Possible Answers:
6814    </p>
6815    <p>
6816                            </p>
6817    <blockquote class="text">
6818    <p>"OK" -
6819                                    </p>
6820    <blockquote class="text">
6821    <p>usually
6822    </p>
6823    </blockquote>
6824                                
6825    
6826    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6827                                    </p>
6828    <blockquote class="text">
6829    <p>when the given map or engine does not exist or a value
6830                                        is out of range
6831    </p>
6832    </blockquote>
6833                                
6834    
6835    </blockquote><p>
6836                        
6837    </p>
6838    <p>Examples:
6839    </p>
6840    <p>
6841                            </p>
6842    <blockquote class="text">
6843    <p>C: "MAP MIDI_INSTRUMENT 0 3 0 gig '/usr/share/Steinway D.gig' 0 0.8 PERSISTENT"
6844    </p>
6845    <p>S: "OK"
6846    </p>
6847    </blockquote><p>
6848                        
6849    </p>
6850    <p>
6851                            </p>
6852    <blockquote class="text">
6853    <p>C: "MAP MIDI_INSTRUMENT 0 4 50 gig '/home/john/foostrings.gig' 7 1.0"
6854    </p>
6855    <p>S: "OK"
6856    </p>
6857    </blockquote><p>
6858                        
6859    </p>
6860    <p>
6861                            </p>
6862    <blockquote class="text">
6863    <p>C: "MAP MIDI_INSTRUMENT 0 0 0 gig '/usr/share/piano.gig' 0 1.0 'Normal Piano'"
6864    </p>
6865    <p>S: "OK"
6866    </p>
6867    <p>C: "MAP MIDI_INSTRUMENT 0 1 0 gig '/usr/share/piano.gig' 0 0.25 'Silent Piano'"
6868    </p>
6869    <p>S: "OK"
6870    </p>
6871    </blockquote><p>
6872                        
6873    </p>
6874    <p>
6875                            </p>
6876    <blockquote class="text">
6877    <p>C: "MAP MIDI_INSTRUMENT NON_MODAL 1 8 120 gig '/home/joe/foodrums.gig' 0 1.0 PERSISTENT 'Foo Drumkit'"
6878    </p>
6879    <p>S: "OK"
6880    </p>
6881    </blockquote><p>
6882                        
6883    </p>
6884    <a name="GET MIDI_INSTRUMENTS"></a><br /><hr />
6885    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6886    <a name="rfc.section.6.7.8"></a><h3>6.7.8.&nbsp;
6887    Getting ammount of MIDI instrument map entries</h3>
6888    
6889    <p>The front-end can query the amount of currently existing
6890                        entries in a MIDI instrument map by sending the following
6891                        command:
6892    </p>
6893    <p>
6894                            </p>
6895    <blockquote class="text">
6896    <p>GET MIDI_INSTRUMENTS &lt;map&gt;
6897    </p>
6898    </blockquote><p>
6899                        
6900    </p>
6901    <p>The front-end can query the amount of currently existing
6902                        entries in all MIDI instrument maps by sending the following
6903                        command:
6904    </p>
6905    <p>
6906                            </p>
6907    <blockquote class="text">
6908    <p>GET MIDI_INSTRUMENTS ALL
6909    </p>
6910    </blockquote><p>
6911                        
6912    </p>
6913    <p>Possible Answers:
6914    </p>
6915    <p>
6916                            </p>
6917    <blockquote class="text">
6918    <p>The sampler will answer by sending the current number of
6919                                entries in the MIDI instrument map(s).
6920    </p>
6921    </blockquote><p>
6922                        
6923    </p>
6924    <p>Example:
6925    </p>
6926    <p>
6927                            </p>
6928    <blockquote class="text">
6929    <p>C: "GET MIDI_INSTRUMENTS 0"
6930    </p>
6931    <p>S: "234"
6932    </p>
6933    </blockquote><p>
6934                        
6935    </p>
6936    <p>
6937                            </p>
6938    <blockquote class="text">
6939    <p>C: "GET MIDI_INSTRUMENTS ALL"
6940    </p>
6941    <p>S: "954"
6942    </p>
6943    </blockquote><p>
6944                        
6945    </p>
6946    <a name="LIST MIDI_INSTRUMENTS"></a><br /><hr />
6947    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6948    <a name="rfc.section.6.7.9"></a><h3>6.7.9.&nbsp;
6949    Getting indeces of all entries of a MIDI instrument map</h3>
6950    
6951    <p>The front-end can query a list of all currently existing
6952                        entries in a certain MIDI instrument map by sending the following
6953                        command:
6954    </p>
6955    <p>
6956                            </p>
6957    <blockquote class="text">
6958    <p>LIST MIDI_INSTRUMENTS &lt;map&gt;
6959    </p>
6960    </blockquote><p>
6961                        
6962    </p>
6963    <p>Where &lt;map&gt; is the numeric ID of the MIDI instrument map.
6964    </p>
6965    <p>The front-end can query a list of all currently existing
6966                        entries of all MIDI instrument maps by sending the following
6967                        command:
6968    </p>
6969    <p>
6970                            </p>
6971    <blockquote class="text">
6972    <p>LIST MIDI_INSTRUMENTS ALL
6973    </p>
6974    </blockquote><p>
6975                        
6976    </p>
6977    <p>Possible Answers:
6978    </p>
6979    <p>
6980                            </p>
6981    <blockquote class="text">
6982    <p>The sampler will answer by sending a comma separated
6983                                list of map ID - MIDI bank - MIDI program triples, where
6984                                each triple is encapsulated into curly braces. The
6985                                list is returned in one single line. Each triple
6986                                just reflects the key of the respective map entry,
6987                                thus subsequent
6988                                <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>
6989                                command(s) are necessary to retrieve detailed informations
6990                                about each entry.
6991    </p>
6992    </blockquote><p>
6993                        
6994    </p>
6995    <p>Example:
6996    </p>
6997    <p>
6998                            </p>
6999    <blockquote class="text">
7000    <p>C: "LIST MIDI_INSTRUMENTS 0"
7001    </p>
7002    <p>S: "{0,0,0},{0,0,1},{0,0,3},{0,1,4},{1,127,127}"
7003    </p>
7004    </blockquote><p>
7005                        
7006    </p>
7007    <a name="UNMAP MIDI_INSTRUMENT"></a><br /><hr />
7008    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7009    <a name="rfc.section.6.7.10"></a><h3>6.7.10.&nbsp;
7010    Remove an entry from the MIDI instrument map</h3>
7011    
7012    <p>The front-end can delete an entry from a MIDI instrument
7013                        map by sending the following command:
7014    </p>
7015    <p>
7016                            </p>
7017    <blockquote class="text">
7018    <p>UNMAP MIDI_INSTRUMENT &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
7019    </p>
7020    </blockquote><p>
7021                        
7022    </p>
7023    <p>
7024                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
7025                        &lt;midi_bank&gt; is an integer value between 0..16383
7026                        reflecting the MIDI bank value and
7027                        &lt;midi_prog&gt; an integer value between
7028                        0..127 reflecting the MIDI program value of the map's entrie's key
7029                        index triple.
7030                        
7031    </p>
7032    <p>Possible Answers:
7033    </p>
7034    <p>
7035                            </p>
7036    <blockquote class="text">
7037    <p>"OK" -
7038                                    </p>
7039    <blockquote class="text">
7040    <p>usually
7041    </p>
7042    </blockquote>
7043                                
7044    
7045    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7046                                    </p>
7047    <blockquote class="text">
7048    <p>when index out of bounds
7049    </p>
7050    </blockquote>
7051                                
7052    
7053    </blockquote><p>
7054                        
7055    </p>
7056    <p>Example:
7057    </p>
7058    <p>
7059                            </p>
7060    <blockquote class="text">
7061    <p>C: "UNMAP MIDI_INSTRUMENT 0 2 127"
7062    </p>
7063    <p>S: "OK"
7064    </p>
7065    </blockquote><p>
7066                        
7067    </p>
7068    <a name="GET MIDI_INSTRUMENT INFO"></a><br /><hr />
7069    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7070    <a name="rfc.section.6.7.11"></a><h3>6.7.11.&nbsp;
7071    Get current settings of MIDI instrument map entry</h3>
7072    
7073    <p>The front-end can retrieve the current settings of a certain
7074                        instrument map entry by sending the following command:
7075    </p>
7076    <p>
7077                            </p>
7078    <blockquote class="text">
7079    <p>GET MIDI_INSTRUMENT INFO &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
7080    </p>
7081    </blockquote><p>
7082                        
7083    </p>
7084    <p>
7085                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
7086                        &lt;midi_bank&gt; is an integer value between 0..16383
7087                        reflecting the MIDI bank value, &lt;midi_bank&gt;
7088                        and &lt;midi_prog&gt; an integer value between
7089                        0..127 reflecting the MIDI program value of the map's entrie's key
7090                        index triple.
7091                        
7092    </p>
7093    <p>Possible Answers:
7094    </p>
7095    <p>
7096                            </p>
7097    <blockquote class="text">
7098    <p>LinuxSampler will answer by sending a &lt;CRLF&gt;
7099                                separated list. Each answer line begins with the
7100                                information category name followed by a colon and then
7101                                a space character &lt;SP&gt; and finally the info
7102                                character string to that info category. At the moment
7103                                the following categories are defined:
7104    </p>
7105    <p>"NAME" -
7106                                    </p>
7107    <blockquote class="text">
7108    <p>Name for this MIDI instrument map entry (if defined).
7109                                        This name shall be used by frontends for displaying a
7110                                        name for this mapped instrument. It can be set and
7111                                        changed with the
7112                                        <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>
7113                                        command and does not have to be unique.
7114    </p>
7115    </blockquote>
7116                                
7117    
7118    <p>"ENGINE_NAME" -
7119                                    </p>
7120    <blockquote class="text">
7121    <p>Name of the engine to be deployed for this
7122                                        instrument.
7123    </p>
7124    </blockquote>
7125                                
7126    
7127    <p>"INSTRUMENT_FILE" -
7128                                    </p>
7129    <blockquote class="text">
7130    <p>File name of the instrument.
7131    </p>
7132    </blockquote>
7133                                
7134    
7135    <p>"INSTRUMENT_NR" -
7136                                    </p>
7137    <blockquote class="text">
7138    <p>Index of the instrument within the file.
7139    </p>
7140    </blockquote>
7141                                
7142    
7143    <p>"INSTRUMENT_NAME" -
7144                                    </p>
7145    <blockquote class="text">
7146    <p>Name of the loaded instrument as reflected by its file.
7147                                        In contrast to the "NAME" field, the "INSTRUMENT_NAME" field
7148                                        cannot be changed.
7149    </p>
7150    </blockquote>
7151                                
7152    
7153    <p>"LOAD_MODE" -
7154                                    </p>
7155    <blockquote class="text">
7156    <p>Life time of instrument
7157                                        (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).
7158    </p>
7159    </blockquote>
7160                                
7161    
7162    <p>"VOLUME" -
7163                                    </p>
7164    <blockquote class="text">
7165    <p>master volume of the instrument as optionally
7166                                        dotted number (where a value &lt; 1.0 means attenuation
7167                                        and a value > 1.0 means amplification)
7168    </p>
7169    </blockquote>
7170                                
7171    
7172    <p>The mentioned fields above don't have to be in particular order.
7173    </p>
7174    </blockquote><p>
7175                        
7176    </p>
7177    <p>Example:
7178    </p>
7179    <p>
7180                            </p>
7181    <blockquote class="text">
7182    <p>C: "GET MIDI_INSTRUMENT INFO 1 45 120"
7183    </p>
7184    <p>S: "NAME: Drums for Foo Song"
7185    </p>
7186    <p>&nbsp;&nbsp;&nbsp;"ENGINE_NAME: GigEngine"
7187    </p>
7188    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_FILE: /usr/share/joesdrumkit.gig"
7189    </p>
7190    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NR: 0"
7191    </p>
7192    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NAME: Joe's Drumkit"
7193    </p>
7194    <p>&nbsp;&nbsp;&nbsp;"LOAD_MODE: PERSISTENT"
7195    </p>
7196    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
7197    </p>
7198    <p>&nbsp;&nbsp;&nbsp;"."
7199    </p>
7200    </blockquote><p>
7201                        
7202    </p>
7203    <a name="CLEAR MIDI_INSTRUMENTS"></a><br /><hr />
7204    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7205    <a name="rfc.section.6.7.12"></a><h3>6.7.12.&nbsp;
7206    Clear MIDI instrument map</h3>
7207    
7208    <p>The front-end can clear a whole MIDI instrument map, that
7209                        is delete all its entries by sending the following command:
7210    </p>
7211    <p>
7212                            </p>
7213    <blockquote class="text">
7214    <p>CLEAR MIDI_INSTRUMENTS &lt;map&gt;
7215    </p>
7216    </blockquote><p>
7217                        
7218    </p>
7219    <p>Where &lt;map&gt; is the numeric ID of the map to clear.
7220    </p>
7221    <p>The front-end can clear all MIDI instrument maps, that
7222                        is delete all entries of all maps by sending the following
7223                        command:
7224    </p>
7225    <p>
7226                            </p>
7227    <blockquote class="text">
7228    <p>CLEAR MIDI_INSTRUMENTS ALL
7229    </p>
7230    </blockquote><p>
7231                        
7232    </p>
7233    <p>The command "CLEAR MIDI_INSTRUMENTS ALL" does not delete the
7234                        maps, only their entries, thus the map's settings like
7235                        custom name will be preservevd.
7236    </p>
7237    <p>Possible Answers:
7238    </p>
7239    <p>
7240                            </p>
7241    <blockquote class="text">
7242    <p>"OK" -
7243                                    </p>
7244    <blockquote class="text">
7245    <p>always
7246    </p>
7247    </blockquote>
7248                                
7249    
7250    </blockquote><p>
7251                        
7252    </p>
7253    <p>Examples:
7254    </p>
7255    <p>
7256                           </p>
7257    <blockquote class="text">
7258    <p>C: "CLEAR MIDI_INSTRUMENTS 0"
7259    </p>
7260    <p>S: "OK"
7261    </p>
7262    </blockquote><p>
7263                        
7264    </p>
7265    <p>
7266                           </p>
7267    <blockquote class="text">
7268    <p>C: "CLEAR MIDI_INSTRUMENTS ALL"
7269    </p>
7270    <p>S: "OK"
7271    </p>
7272    </blockquote><p>
7273                        
7274    </p>
7275    <a name="Managing Instruments Database"></a><br /><hr />
7276    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7277    <a name="rfc.section.6.8"></a><h3>6.8.&nbsp;
7278    Managing Instruments Database</h3>
7279    
7280    <p>The following commands describe how to use and manage
7281                    the instruments database.
7282    </p>
7283    <p>Notice:
7284    </p>
7285    <p>
7286                            </p>
7287    <blockquote class="text">
7288    <p>All command arguments representing a path or
7289                                instrument/directory name support escape sequences as described in chapter
7290                                "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>".
7291                                
7292    </p>
7293    <p>All occurrences of a forward slash in instrument and directory
7294                                   names are escaped with its hex (\x2f) or octal (\057) escape sequence.
7295                                
7296    </p>
7297    </blockquote><p>
7298                        
7299    </p>
7300    <a name="ADD DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
7301    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7302    <a name="rfc.section.6.8.1"></a><h3>6.8.1.&nbsp;
7303    Creating a new instrument directory</h3>
7304    
7305    <p>The front-end can add a new instrument directory to the
7306                        instruments database by sending the following command:
7307    </p>
7308    <p>
7309                            </p>
7310    <blockquote class="text">
7311    <p>ADD DB_INSTRUMENT_DIRECTORY &lt;dir&gt;
7312    </p>
7313    </blockquote><p>
7314                        
7315    </p>
7316    <p>Where &lt;dir&gt; is the absolute path name of the directory
7317                        to be created (encapsulated into apostrophes).
7318    </p>
7319    <p>Possible Answers:
7320    </p>
7321    <p>
7322                            </p>
7323    <blockquote class="text">
7324    <p>"OK" -
7325                                    </p>
7326    <blockquote class="text">
7327    <p>on success
7328    </p>
7329    </blockquote>
7330                                
7331    
7332    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7333                                    </p>
7334    <blockquote class="text">
7335    <p>when the directory could not be created, which
7336                                        can happen if the directory already exists or the
7337                                        name contains not allowed symbols
7338    </p>
7339    </blockquote>
7340                                
7341    
7342    </blockquote><p>
7343                        
7344    </p>
7345    <p>Examples:
7346    </p>
7347    <p>
7348                            </p>
7349    <blockquote class="text">
7350    <p>C: "ADD DB_INSTRUMENT_DIRECTORY '/Piano Collection'"
7351    </p>
7352    <p>S: "OK"
7353    </p>
7354    </blockquote><p>
7355                        
7356    </p>
7357    <a name="REMOVE DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
7358    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7359    <a name="rfc.section.6.8.2"></a><h3>6.8.2.&nbsp;
7360    Deleting an instrument directory</h3>
7361    
7362    <p>The front-end can delete a particular instrument directory
7363                        from the instruments database by sending the following command:
7364    </p>
7365    <p>
7366                            </p>
7367    <blockquote class="text">
7368    <p>REMOVE DB_INSTRUMENT_DIRECTORY [FORCE] &lt;dir&gt;
7369    </p>
7370    </blockquote><p>
7371                        
7372    </p>
7373    <p>Where &lt;dir&gt; is the absolute path name of the directory
7374                        to delete. The optional FORCE argument can be used to
7375                        force the deletion of a non-empty directory and all its content.
7376    </p>
7377    <p>Possible Answers:
7378    </p>
7379    <p>
7380                            </p>
7381    <blockquote class="text">
7382    <p>"OK" -
7383                                    </p>
7384    <blockquote class="text">
7385    <p>if the directory is deleted successfully
7386    </p>
7387    </blockquote>
7388                                
7389    
7390    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7391                                    </p>
7392    <blockquote class="text">
7393    <p>if the given directory does not exist, or
7394                                        if trying to delete a non-empty directory,
7395                                        without using the FORCE argument.
7396    </p>
7397    </blockquote>
7398                                
7399    
7400    </blockquote><p>
7401                        
7402    </p>
7403    <p>Examples:
7404    </p>
7405    <p>
7406                            </p>
7407    <blockquote class="text">
7408    <p>C: "REMOVE DB_INSTRUMENT_DIRECTORY FORCE '/Piano Collection'"
7409    </p>
7410    <p>S: "OK"
7411    </p>
7412    </blockquote><p>
7413                        
7414    </p>
7415    <a name="GET DB_INSTRUMENT_DIRECTORIES"></a><br /><hr />
7416    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7417    <a name="rfc.section.6.8.3"></a><h3>6.8.3.&nbsp;
7418    Getting amount of instrument directories</h3>
7419    
7420    <p>The front-end can retrieve the current amount of
7421                        directories in a specific directory by sending the following command:
7422    </p>
7423    <p>
7424                            </p>
7425    <blockquote class="text">
7426    <p>GET DB_INSTRUMENT_DIRECTORIES [RECURSIVE] &lt;dir&gt;
7427    </p>
7428    </blockquote><p>
7429                        
7430    </p>
7431    <p>Where &lt;dir&gt; should be replaced by the absolute path
7432                        name of the directory. If RECURSIVE is specified, the number of
7433                        all directories, including those located in subdirectories of the
7434                        specified directory, will be returned.
7435    </p>
7436    <p>Possible Answers:
7437    </p>
7438    <p>
7439                            </p>
7440    <blockquote class="text">
7441    <p>The current number of instrument directories
7442                                in the specified directory.
7443    </p>
7444    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7445                                    </p>
7446    <blockquote class="text">
7447    <p>if the given directory does not exist.
7448    </p>
7449    </blockquote>
7450                                
7451    
7452    </blockquote><p>
7453                        
7454    </p>
7455    <p>Example:
7456    </p>
7457    <p>
7458                            </p>
7459    <blockquote class="text">
7460    <p>C: "GET DB_INSTRUMENT_DIRECTORIES '/'"
7461    </p>
7462    <p>S: "2"
7463    </p>
7464    </blockquote><p>
7465                        
7466    </p>
7467    <a name="LIST DB_INSTRUMENT_DIRECTORIES"></a><br /><hr />
7468    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7469    <a name="rfc.section.6.8.4"></a><h3>6.8.4.&nbsp;
7470    Listing all directories in specific directory</h3>
7471    
7472    <p>The front-end can retrieve the current list of directories
7473                        in specific directory by sending the following command:
7474    </p>
7475    <p>
7476                            </p>
7477    <blockquote class="text">
7478    <p>LIST DB_INSTRUMENT_DIRECTORIES [RECURSIVE] &lt;dir&gt;
7479    </p>
7480    </blockquote><p>
7481                        
7482    </p>
7483    <p>Where &lt;dir&gt; should be replaced by the absolute path
7484                        name of the directory. If RECURSIVE is specified, the absolute path names
7485                        of all directories, including those located in subdirectories of the
7486                        specified directory, will be returned.
7487    </p>
7488    <p>Possible Answers:
7489    </p>
7490    <p>
7491                            </p>
7492    <blockquote class="text">
7493    <p>A comma separated list of all instrument directories
7494                                (encapsulated into apostrophes) in the specified directory.
7495    </p>
7496    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7497                                    </p>
7498    <blockquote class="text">
7499    <p>if the given directory does not exist.
7500    </p>
7501    </blockquote>
7502                                
7503    
7504    </blockquote><p>
7505                        
7506    </p>
7507    <p>Example:
7508    </p>
7509    <p>
7510                            </p>
7511    <blockquote class="text">
7512    <p>C: "LIST DB_INSTRUMENT_DIRECTORIES '/'"
7513    </p>
7514    <p>S: "'Piano Collection','Percussion Collection'"
7515    </p>
7516    </blockquote><p>
7517                        
7518    </p>
7519    <p>
7520                            </p>
7521    <blockquote class="text">
7522    <p>C: "LIST DB_INSTRUMENT_DIRECTORIES RECURSIVE '/'"
7523    </p>
7524    <p>S: "'/Piano Collection','/Piano Collection/Acoustic','/Piano Collection/Acoustic/New','/Percussion Collection'"
7525    </p>
7526    </blockquote><p>
7527                        
7528    </p>
7529    <a name="GET DB_INSTRUMENT_DIRECTORY INFO"></a><br /><hr />
7530    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7531    <a name="rfc.section.6.8.5"></a><h3>6.8.5.&nbsp;
7532    Getting instrument directory information</h3>
7533    
7534    <p>The front-end can ask for the current settings of an
7535                        instrument directory by sending the following command:
7536    </p>
7537    <p>
7538                            </p>
7539    <blockquote class="text">
7540    <p>GET DB_INSTRUMENT_DIRECTORY INFO &lt;dir&gt;
7541    </p>
7542    </blockquote><p>
7543                        
7544    </p>
7545    <p>Where &lt;dir&gt; should be replaced by the absolute path
7546                        name of the directory the front-end is interested in.
7547    </p>
7548    <p>Possible Answers:
7549    </p>
7550    <p>
7551                            </p>
7552    <blockquote class="text">
7553    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
7554                                Each answer line begins with the settings category name
7555                                followed by a colon and then a space character &lt;SP&gt; and finally
7556                                the info character string to that setting category. At the
7557                                moment the following categories are defined:
7558    </p>
7559    <p>
7560                                    </p>
7561    <blockquote class="text">
7562    <p>DESCRIPTION -
7563                                            </p>
7564    <blockquote class="text">
7565    <p>A brief description of the directory content.
7566                                                Note that the character string may contain
7567                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
7568    </p>
7569    </blockquote>
7570                                        
7571    
7572    <p>CREATED -
7573                                            </p>
7574    <blockquote class="text">
7575    <p>The creation date and time of the directory,
7576                                                represented in "YYYY-MM-DD HH:MM:SS" format
7577    </p>
7578    </blockquote>
7579                                        
7580    
7581    <p>MODIFIED -
7582                                            </p>
7583    <blockquote class="text">
7584    <p>The date and time of the last modification of the
7585                                                directory, represented in "YYYY-MM-DD HH:MM:SS" format
7586    </p>
7587    </blockquote>
7588                                        
7589    
7590    </blockquote>
7591                                
7592    
7593    </blockquote><p>
7594                        
7595    </p>
7596    <p>The mentioned fields above don't have to be in particular order.
7597    </p>
7598    <p>Example:
7599    </p>
7600    <p>
7601                            </p>
7602    <blockquote class="text">
7603    <p>C: "GET DB_INSTRUMENT_DIRECTORY INFO '/Piano Collection'"
7604    </p>
7605    <p>S: "DESCRIPTION: Piano collection of instruments in GigaSampler format."
7606    </p>
7607    <p>&nbsp;&nbsp;&nbsp;"CREATED: 2007-02-05 10:23:12"
7608    </p>
7609    <p>&nbsp;&nbsp;&nbsp;"MODIFIED: 2007-04-07 12:50:21"
7610    </p>
7611    <p>&nbsp;&nbsp;&nbsp;"."
7612    </p>
7613    </blockquote><p>
7614                        
7615    </p>
7616    <a name="SET DB_INSTRUMENT_DIRECTORY NAME"></a><br /><hr />
7617    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7618    <a name="rfc.section.6.8.6"></a><h3>6.8.6.&nbsp;
7619    Renaming an instrument directory</h3>
7620    
7621    <p>The front-end can alter the name of a specific
7622                        instrument directory by sending the following command:
7623    </p>
7624    <p>
7625                            </p>
7626    <blockquote class="text">
7627    <p>SET DB_INSTRUMENT_DIRECTORY NAME &lt;dir&gt; &lt;name&gt;
7628    </p>
7629    </blockquote><p>
7630                        
7631    </p>
7632    <p>Where &lt;dir&gt; is the absolute path name of the directory and
7633                        &lt;name&gt; is the new name for that directory.
7634    </p>
7635    <p>Possible Answers:
7636    </p>
7637    <p>
7638                            </p>
7639    <blockquote class="text">
7640    <p>"OK" -
7641                                    </p>
7642    <blockquote class="text">
7643    <p>on success
7644    </p>
7645    </blockquote>
7646                                
7647    
7648    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7649                                    </p>
7650    <blockquote class="text">
7651    <p>in case the given directory does not exists,
7652                                        or if a directory with name equal to the new
7653                                        name already exists.
7654    </p>
7655    </blockquote>
7656                                
7657    
7658    </blockquote><p>
7659                        
7660    </p>
7661    <p>Example:
7662    </p>
7663    <p>
7664                            </p>
7665    <blockquote class="text">
7666    <p>C: "SET DB_INSTRUMENT_DIRECTORY NAME '/Piano Collection/Acustic' 'Acoustic'"
7667    </p>
7668    <p>S: "OK"
7669    </p>
7670    </blockquote><p>
7671                        
7672    </p>
7673    <a name="MOVE DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
7674    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7675    <a name="rfc.section.6.8.7"></a><h3>6.8.7.&nbsp;
7676    Moving an instrument directory</h3>
7677    
7678    <p>The front-end can move a specific
7679                        instrument directory by sending the following command:
7680    </p>
7681    <p>
7682                            </p>
7683    <blockquote class="text">
7684    <p>MOVE DB_INSTRUMENT_DIRECTORY &lt;dir&gt; &lt;dst&gt;
7685    </p>
7686    </blockquote><p>
7687                        
7688    </p>
7689    <p>Where &lt;dir&gt; is the absolute path name of the directory
7690                        to move and &lt;dst&gt; is the location where the directory will
7691                        be moved to.
7692    </p>
7693    <p>Possible Answers:
7694    </p>
7695    <p>
7696                            </p>
7697    <blockquote class="text">
7698    <p>"OK" -
7699                                    </p>
7700    <blockquote class="text">
7701    <p>on success
7702    </p>
7703    </blockquote>
7704                                
7705    
7706    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7707                                    </p>
7708    <blockquote class="text">
7709    <p>in case a given directory does not exists,
7710                                        or if a directory with name equal to the name
7711                                        of the specified directory already exists in
7712                                        the destination directory. Error is also thrown
7713                                        when trying to move a directory to a subdirectory
7714                                        of itself.
7715    </p>
7716    </blockquote>
7717                                
7718    
7719    </blockquote><p>
7720                        
7721    </p>
7722    <p>Example:
7723    </p>
7724    <p>
7725                            </p>
7726    <blockquote class="text">
7727    <p>C: "MOVE DB_INSTRUMENT_DIRECTORY '/Acoustic' '/Piano Collection/Acoustic'"
7728    </p>
7729    <p>S: "OK"
7730    </p>
7731    </blockquote><p>
7732                        
7733    </p>
7734    <a name="COPY DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
7735    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7736    <a name="rfc.section.6.8.8"></a><h3>6.8.8.&nbsp;
7737    Copying instrument directories</h3>
7738    
7739    <p>The front-end can copy a specific
7740                        instrument directory by sending the following command:
7741    </p>
7742    <p>
7743                            </p>
7744    <blockquote class="text">
7745    <p>COPY DB_INSTRUMENT_DIRECTORY &lt;dir&gt; &lt;dst&gt;
7746    </p>
7747    </blockquote><p>
7748                        
7749    </p>
7750    <p>Where &lt;dir&gt; is the absolute path name of the directory
7751                        to copy and &lt;dst&gt; is the location where the directory will
7752                        be copied to.
7753    </p>
7754    <p>Possible Answers:
7755    </p>
7756    <p>
7757                            </p>
7758    <blockquote class="text">
7759    <p>"OK" -
7760                                    </p>
7761    <blockquote class="text">
7762    <p>on success
7763    </p>
7764    </blockquote>
7765                                
7766    
7767    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7768                                    </p>
7769    <blockquote class="text">
7770    <p>in case a given directory does not exists,
7771                                        or if a directory with name equal to the name
7772                                        of the specified directory already exists in
7773                                        the destination directory. Error is also thrown
7774                                        when trying to copy a directory to a subdirectory
7775                                        of itself.
7776    </p>
7777    </blockquote>
7778                                
7779    
7780    </blockquote><p>
7781                        
7782    </p>
7783    <p>Example:
7784    </p>
7785    <p>
7786                            </p>
7787    <blockquote class="text">
7788    <p>C: "COPY DB_INSTRUMENT_DIRECTORY '/Piano Collection/Acoustic' '/Acoustic/Pianos'"
7789    </p>
7790    <p>S: "OK"
7791    </p>
7792    </blockquote><p>
7793                        
7794    </p>
7795    <a name="SET DB_INSTRUMENT_DIRECTORY DESCRIPTION"></a><br /><hr />
7796    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7797    <a name="rfc.section.6.8.9"></a><h3>6.8.9.&nbsp;
7798    Changing the description of directory</h3>
7799    
7800    <p>The front-end can alter the description of a specific
7801                        instrument directory by sending the following command:
7802    </p>
7803    <p>
7804                            </p>
7805    <blockquote class="text">
7806    <p>SET DB_INSTRUMENT_DIRECTORY DESCRIPTION &lt;dir&gt; &lt;desc&gt;
7807    </p>
7808    </blockquote><p>
7809                        
7810    </p>
7811    <p>Where &lt;dir&gt; is the absolute path name of the directory and
7812                        &lt;desc&gt; is the new description for the directory
7813                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
7814                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
7815    </p>
7816    <p>Possible Answers:
7817    </p>
7818    <p>
7819                            </p>
7820    <blockquote class="text">
7821    <p>"OK" -
7822                                    </p>
7823    <blockquote class="text">
7824    <p>on success
7825    </p>
7826    </blockquote>
7827                                
7828    
7829    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7830                                    </p>
7831    <blockquote class="text">
7832    <p>in case the given directory does not exists.
7833    </p>
7834    </blockquote>
7835                                
7836    
7837    </blockquote><p>
7838                        
7839    </p>
7840    <p>Example:
7841    </p>
7842    <p>
7843                            </p>
7844    <blockquote class="text">
7845    <p>C: "SET DB_INSTRUMENT_DIRECTORY DESCRIPTION '/Piano Collection' 'A collection of piano instruments in various format.'"
7846    </p>
7847    <p>S: "OK"
7848    </p>
7849    </blockquote><p>
7850                        
7851    </p>
7852    <a name="FIND DB_INSTRUMENT_DIRECTORIES"></a><br /><hr />
7853    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7854    <a name="rfc.section.6.8.10"></a><h3>6.8.10.&nbsp;
7855    Finding directories</h3>
7856    
7857    <p>The front-end can search for directories
7858                        in specific directory by sending the following command:
7859    </p>
7860    <p>
7861                            </p>
7862    <blockquote class="text">
7863    <p>FIND DB_INSTRUMENT_DIRECTORIES [NON_RECURSIVE] &lt;dir&gt; &lt;criteria-list&gt;
7864    </p>
7865    </blockquote><p>
7866                        
7867    </p>
7868    <p>Where &lt;dir&gt; should be replaced by the absolute path
7869                        name of the directory to search in. If NON_RECURSIVE is specified, the
7870                        directories located in subdirectories of the specified directory will not
7871                        be searched. &lt;criteria-list&gt; is a list of search criterias
7872                        in form of "key1=val1 key2=val2 ...". The following criterias are
7873                        allowed:
7874    </p>
7875    <p>
7876                          
7877    <p>NAME='&lt;search-string&gt;'
7878                              </p>
7879    <blockquote class="text">
7880    <p>Restricts the search to directories, which names
7881                                  satisfy the supplied search string (encapsulated into apostrophes,
7882                                  supporting escape sequences as described in chapter
7883                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
7884    </p>
7885    </blockquote><p>
7886                          
7887    </p>
7888    
7889                          
7890    <p>CREATED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
7891                              </p>
7892    <blockquote class="text">
7893    <p>Restricts the search to directories, which creation
7894                                  date satisfies the specified period, where &lt;date-after&gt;
7895                                  and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS" format.
7896                                  If &lt;date-after&gt; is omitted the search is restricted to
7897                                  directories created before &lt;date-before&gt;. If
7898                                  &lt;date-before&gt; is omitted, the search is restricted
7899                                  to directories created after &lt;date-after&gt;.
7900    </p>
7901    </blockquote><p>
7902                          
7903    </p>
7904    
7905                          
7906    <p>MODIFIED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
7907                              </p>
7908    <blockquote class="text">
7909    <p>Restricts the search to directories, which
7910                                  date of last modification satisfies the specified period, where
7911                                  &lt;date-after&gt; and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS"
7912                                  format. If &lt;date-after&gt; is omitted the search is restricted to
7913                                  directories, which are last modified before &lt;date-before&gt;. If
7914                                  &lt;date-before&gt; is omitted, the search is restricted to directories,
7915                                  which are last modified after &lt;date-after&gt;.
7916    </p>
7917    </blockquote><p>
7918                          
7919    </p>
7920    
7921                          
7922    <p>DESCRIPTION='&lt;search-string&gt;'
7923                              </p>
7924    <blockquote class="text">
7925    <p>Restricts the search to directories with description
7926                                  that satisfies the supplied search string
7927                                  (encapsulated into apostrophes, supporting escape
7928                                  sequences as described in chapter
7929                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
7930    </p>
7931    </blockquote><p>
7932                          
7933    </p>
7934                        
7935    
7936    <p>Where &lt;search-string&gt; is either a regular expression, or a
7937                        word list separated with spaces for OR search and with '+' for AND search.
7938    </p>
7939    <p>Possible Answers:
7940    </p>
7941    <p>
7942                            </p>
7943    <blockquote class="text">
7944    <p>A comma separated list with the absolute path names (encapsulated into
7945                                apostrophes) of all directories in the specified directory that satisfy
7946                                the supplied search criterias.
7947    </p>
7948    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7949                                    </p>
7950    <blockquote class="text">
7951    <p>if the given directory does not exist.
7952    </p>
7953    </blockquote>
7954                                
7955    
7956    </blockquote><p>
7957                        
7958    </p>
7959    <p>Example:
7960    </p>
7961    <p>
7962                            </p>
7963    <blockquote class="text">
7964    <p>C: "FIND DB_INSTRUMENT_DIRECTORIES '/' NAME='Piano'"
7965    </p>
7966    <p>S: "'/Piano Collection'"
7967    </p>
7968    </blockquote><p>
7969                        
7970    </p>
7971    <p>
7972                            </p>
7973    <blockquote class="text">
7974    <p>C: "FIND DB_INSTRUMENT_DIRECTORIES '/' CREATED='..2007-04-01 09:30:13'"
7975    </p>
7976    <p>S: "'/Piano Collection','/Percussions'"
7977    </p>
7978    </blockquote><p>
7979                        
7980    </p>
7981    <a name="ADD DB_INSTRUMENTS"></a><br /><hr />
7982    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7983    <a name="rfc.section.6.8.11"></a><h3>6.8.11.&nbsp;
7984    Adding instruments to the instruments database</h3>
7985    
7986    <p>The front-end can add one or more instruments
7987                        to the instruments database by sending the following command:
7988    </p>
7989    <p>
7990                            </p>
7991    <blockquote class="text">
7992    <p>ADD DB_INSTRUMENTS [NON_MODAL] [&lt;mode&gt;] &lt;db_dir&gt; &lt;file_path&gt; [&lt;instr_index&gt;]
7993    </p>
7994    </blockquote><p>
7995                        
7996    </p>
7997    <p>Where &lt;db_dir&gt; is the absolute path name of a directory
7998                        (encapsulated into apostrophes) in the instruments database in which
7999                        only the new instruments (that are not already in the database) will
8000                        be added, &lt;file_path&gt; is the absolute path name of a file or
8001                        directory in the file system (encapsulated into apostrophes). In case
8002                        an instrument file is supplied, only the instruments in the specified
8003                        file will be added to the instruments database. If the optional
8004                        &lt;instr_index&gt; (the index of the instrument within the given file)
8005                        is supplied too, then only the specified instrument will be added.
8006                        In case a directory is supplied, the instruments in that directory
8007                        will be added. The OPTIONAL &lt;mode&gt; argument is only applied
8008                        when a directory is provided as &lt;file_path&gt; and specifies how the
8009                        scanning will be done and has exactly the following possibilities:
8010    </p>
8011    <p>
8012                            </p>
8013    <blockquote class="text">
8014    <p>"RECURSIVE" -
8015                                    </p>
8016    <blockquote class="text">
8017    <p>All instruments will be processed, including those
8018                                        in the subdirectories, and the respective subdirectory
8019                                        tree structure will be recreated in the instruments
8020                                        database
8021    </p>
8022    </blockquote>
8023                                
8024    
8025    <p>"NON_RECURSIVE" -
8026                                    </p>
8027    <blockquote class="text">
8028    <p>Only the instruments in the specified directory
8029                                        will be added, the instruments in the subdirectories
8030                                        will not be processed.
8031    </p>
8032    </blockquote>
8033                                
8034    
8035    <p>"FLAT" -
8036                                    </p>
8037    <blockquote class="text">
8038    <p>All instruments will be processed, including those
8039                                        in the subdirectories, but the respective subdirectory
8040                                        structure will not be recreated in the instruments
8041                                        database. All instruments will be added directly in
8042                                        the specified database directory.
8043    </p>
8044    </blockquote>
8045                                
8046    
8047    </blockquote><p>
8048                        
8049    </p>
8050    <p>The difference between regular and NON_MODAL versions of the command
8051                        is that the regular command returns when the scanning is finished
8052                        while NON_MODAL version returns immediately and a background process is launched.
8053                        The <a class='info' href='#GET DB_INSTRUMENTS_JOB INFO'>GET DB_INSTRUMENTS_JOB INFO<span> (</span><span class='info'>Getting job status information</span><span>)</span></a>
8054                        command can be used to monitor the scanning progress.
8055    </p>
8056    <p>Possible Answers:
8057    </p>
8058    <p>
8059                            </p>
8060    <blockquote class="text">
8061    <p>"OK" -
8062                                    </p>
8063    <blockquote class="text">
8064    <p>on success when NON_MODAL is not supplied
8065    </p>
8066    </blockquote>
8067                                
8068    
8069    <p>"OK[&lt;job-id&gt;]" -
8070                                    </p>
8071    <blockquote class="text">
8072    <p>on success when NON_MODAL is supplied, where &lt;job-id&gt;
8073                                        is a numerical ID used to obtain status information about the job progress.
8074                                        See <a class='info' href='#GET DB_INSTRUMENTS_JOB INFO'>GET DB_INSTRUMENTS_JOB INFO<span> (</span><span class='info'>Getting job status information</span><span>)</span></a>
8075                                        
8076    </p>
8077    </blockquote>
8078                                
8079    
8080    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8081                                    </p>
8082    <blockquote class="text">
8083    <p>if an invalid path is specified.
8084    </p>
8085    </blockquote>
8086                                
8087    
8088    </blockquote><p>
8089                        
8090    </p>
8091    <p>Examples:
8092    </p>
8093    <p>
8094                            </p>
8095    <blockquote class="text">
8096    <p>C: "ADD DB_INSTRUMENTS '/Piano Collection' '/home/me/gigs/PMI Bosendorfer 290.gig' 0"
8097    </p>
8098    <p>S: "OK"
8099    </p>
8100    </blockquote><p>
8101                        
8102    </p>
8103    <a name="REMOVE DB_INSTRUMENT"></a><br /><hr />
8104    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8105    <a name="rfc.section.6.8.12"></a><h3>6.8.12.&nbsp;
8106    Removing an instrument</h3>
8107    
8108    <p>The front-end can remove a particular instrument
8109                        from the instruments database by sending the following command:
8110    </p>
8111    <p>
8112                            </p>
8113    <blockquote class="text">
8114    <p>REMOVE DB_INSTRUMENT &lt;instr_path&gt;
8115    </p>
8116    </blockquote><p>
8117                        
8118    </p>
8119    <p>Where &lt;instr_path&gt; is the absolute path name
8120                        (in the instruments database) of the instrument to remove.
8121    </p>
8122    <p>Possible Answers:
8123    </p>
8124    <p>
8125                            </p>
8126    <blockquote class="text">
8127    <p>"OK" -
8128                                    </p>
8129    <blockquote class="text">
8130    <p>if the instrument is removed successfully
8131    </p>
8132    </blockquote>
8133                                
8134    
8135    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8136                                    </p>
8137    <blockquote class="text">
8138    <p>if the given path does not exist or
8139                                        is a directory.
8140    </p>
8141    </blockquote>
8142                                
8143    
8144    </blockquote><p>
8145                        
8146    </p>
8147    <p>Examples:
8148    </p>
8149    <p>
8150                            </p>
8151    <blockquote class="text">
8152    <p>C: "REMOVE DB_INSTRUMENT '/Piano Collection/Bosendorfer 290'"
8153    </p>
8154    <p>S: "OK"
8155    </p>
8156    </blockquote><p>
8157                        
8158    </p>
8159    <a name="GET DB_INSTRUMENTS"></a><br /><hr />
8160    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8161    <a name="rfc.section.6.8.13"></a><h3>6.8.13.&nbsp;
8162    Getting amount of instruments</h3>
8163    
8164    <p>The front-end can retrieve the current amount of
8165                        instruments in a specific directory by sending the following command:
8166    </p>
8167    <p>
8168                            </p>
8169    <blockquote class="text">
8170    <p>GET DB_INSTRUMENTS [RECURSIVE] &lt;dir&gt;
8171    </p>
8172    </blockquote><p>
8173                        
8174    </p>
8175    <p>Where &lt;dir&gt; should be replaced by the absolute path name
8176                        of the directory. If RECURSIVE is specified, the number of all
8177                        instruments, including those located in subdirectories of the
8178                        specified directory, will be returned.
8179    </p>
8180    <p>Possible Answers:
8181    </p>
8182    <p>
8183                            </p>
8184    <blockquote class="text">
8185    <p>The current number of instruments
8186                                in the specified directory.
8187    </p>
8188    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8189                                    </p>
8190    <blockquote class="text">
8191    <p>if the given directory does not exist.
8192    </p>
8193    </blockquote>
8194                                
8195    
8196    </blockquote><p>
8197                        
8198    </p>
8199    <p>Example:
8200    </p>
8201    <p>
8202                            </p>
8203    <blockquote class="text">
8204    <p>C: "GET DB_INSTRUMENTS '/Piano Collection'"
8205    </p>
8206    <p>S: "2"
8207    </p>
8208    </blockquote><p>
8209                        
8210    </p>
8211    <a name="LIST DB_INSTRUMENTS"></a><br /><hr />
8212    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8213    <a name="rfc.section.6.8.14"></a><h3>6.8.14.&nbsp;
8214    Listing all instruments in specific directory</h3>
8215    
8216    <p>The front-end can retrieve the current list of instruments
8217                        in specific directory by sending the following command:
8218    </p>
8219    <p>
8220                            </p>
8221    <blockquote class="text">
8222    <p>LIST DB_INSTRUMENTS [RECURSIVE] &lt;dir&gt;
8223    </p>
8224    </blockquote><p>
8225                        
8226    </p>
8227    <p>Where &lt;dir&gt; should be replaced by the absolute path
8228                        name of the directory. If RECURSIVE is specified, the absolute path
8229                        names of all instruments, including those located in subdirectories
8230                        of the specified directory, will be returned.
8231    </p>
8232    <p>Possible Answers:
8233    </p>
8234    <p>
8235                            </p>
8236    <blockquote class="text">
8237    <p>A comma separated list of all instruments
8238                                (encapsulated into apostrophes) in the specified directory.
8239    </p>
8240    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8241                                    </p>
8242    <blockquote class="text">
8243    <p>if the given directory does not exist.
8244    </p>
8245    </blockquote>
8246                                
8247    
8248    </blockquote><p>
8249                        
8250    </p>
8251    <p>Example:
8252    </p>
8253    <p>
8254                            </p>
8255    <blockquote class="text">
8256    <p>C: "LIST DB_INSTRUMENTS '/Piano Collection'"
8257    </p>
8258    <p>S: "'Bosendorfer 290','Steinway D'"
8259    </p>
8260    </blockquote><p>
8261                        
8262    </p>
8263    <p>
8264                            </p>
8265    <blockquote class="text">
8266    <p>C: "LIST DB_INSTRUMENTS RECURSIVE '/Piano Collection'"
8267    </p>
8268    <p>S: "'/Piano Collection/Bosendorfer 290','/Piano Collection/Steinway D','/Piano Collection/Lite/Free Piano'"
8269    </p>
8270    </blockquote><p>
8271                        
8272    </p>
8273    <a name="GET DB_INSTRUMENT INFO"></a><br /><hr />
8274    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8275    <a name="rfc.section.6.8.15"></a><h3>6.8.15.&nbsp;
8276    Getting instrument information</h3>
8277    
8278    <p>The front-end can ask for the current settings of an
8279                        instrument by sending the following command:
8280    </p>
8281    <p>
8282                            </p>
8283    <blockquote class="text">
8284    <p>GET DB_INSTRUMENT INFO &lt;instr_path&gt;
8285    </p>
8286    </blockquote><p>
8287                        
8288    </p>
8289    <p>Where &lt;instr_path&gt; should be replaced by the absolute path
8290                        name of the instrument the front-end is interested in.
8291    </p>
8292    <p>Possible Answers:
8293    </p>
8294    <p>
8295                            </p>
8296    <blockquote class="text">
8297    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
8298                                Each answer line begins with the settings category name
8299                                followed by a colon and then a space character &lt;SP&gt; and finally
8300                                the info character string to that setting category. At the
8301                                moment the following categories are defined:
8302    </p>
8303    <p>
8304                                    </p>
8305    <blockquote class="text">
8306    <p>INSTRUMENT_FILE -
8307                                            </p>
8308    <blockquote class="text">
8309    <p>File name of the instrument.
8310                                                Note that the character string may contain
8311                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8312    </p>
8313    </blockquote>
8314                                        
8315    
8316    <p>INSTRUMENT_NR -
8317                                            </p>
8318    <blockquote class="text">
8319    <p>Index of the instrument within the file.
8320    </p>
8321    </blockquote>
8322                                        
8323    
8324    <p>FORMAT_FAMILY -
8325                                            </p>
8326    <blockquote class="text">
8327    <p>The format family of the instrument.
8328    </p>
8329    </blockquote>
8330                                        
8331    
8332    <p>FORMAT_VERSION -
8333                                            </p>
8334    <blockquote class="text">
8335    <p>The format version of the instrument.
8336    </p>
8337    </blockquote>
8338                                        
8339    
8340    <p>SIZE -
8341                                            </p>
8342    <blockquote class="text">
8343    <p>The size of the instrument in bytes.
8344    </p>
8345    </blockquote>
8346                                        
8347    
8348    <p>CREATED -
8349                                            </p>
8350    <blockquote class="text">
8351    <p>The date and time when the instrument is added
8352                                                in the instruments database, represented in
8353                                               "YYYY-MM-DD HH:MM:SS" format
8354    </p>
8355    </blockquote>
8356                                        
8357    
8358    <p>MODIFIED -
8359                                            </p>
8360    <blockquote class="text">
8361    <p>The date and time of the last modification of the
8362                                                instrument's database settings, represented in
8363                                                "YYYY-MM-DD HH:MM:SS" format
8364    </p>
8365    </blockquote>
8366                                        
8367    
8368    <p>DESCRIPTION -
8369                                            </p>
8370    <blockquote class="text">
8371    <p>A brief description of the instrument.
8372                                                Note that the character string may contain
8373                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8374    </p>
8375    </blockquote>
8376                                        
8377    
8378    <p>IS_DRUM -
8379                                            </p>
8380    <blockquote class="text">
8381    <p>either true or false, determines whether the
8382                                                instrument is a drumkit or a chromatic instrument
8383    </p>
8384    </blockquote>
8385                                        
8386    
8387    <p>PRODUCT -
8388                                            </p>
8389    <blockquote class="text">
8390    <p>The product title of the instrument.
8391                                                Note that the character string may contain
8392                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8393    </p>
8394    </blockquote>
8395                                        
8396    
8397    <p>ARTISTS -
8398                                            </p>
8399    <blockquote class="text">
8400    <p>Lists the artist names.
8401                                                Note that the character string may contain
8402                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8403    </p>
8404    </blockquote>
8405                                        
8406    
8407    <p>KEYWORDS -
8408                                            </p>
8409    <blockquote class="text">
8410    <p>Provides a list of keywords that refer to the instrument.
8411                                                Keywords are separated with semicolon and blank.
8412                                                Note that the character string may contain
8413                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8414    </p>
8415    </blockquote>
8416                                        
8417    
8418    </blockquote>
8419                                
8420    
8421    </blockquote><p>
8422                        
8423    </p>
8424    <p>The mentioned fields above don't have to be in particular order.
8425    </p>
8426    <p>Example:
8427    </p>
8428    <p>
8429                            </p>
8430    <blockquote class="text">
8431    <p>C: "GET DB_INSTRUMENT INFO '/Piano Collection/Bosendorfer 290'"
8432    </p>
8433    <p>S: "INSTRUMENT_FILE: /home/me/gigs/Bosendorfer 290.gig"
8434    </p>
8435    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NR: 0"
8436    </p>
8437    <p>&nbsp;&nbsp;&nbsp;"FORMAT_FAMILY: GIG"
8438    </p>
8439    <p>&nbsp;&nbsp;&nbsp;"FORMAT_VERSION: 2"
8440    </p>
8441    <p>&nbsp;&nbsp;&nbsp;"SIZE: 2050871870"
8442    </p>
8443    <p>&nbsp;&nbsp;&nbsp;"CREATED: 2007-02-05 10:23:12"
8444    </p>
8445    <p>&nbsp;&nbsp;&nbsp;"MODIFIED: 2007-04-07 12:50:21"
8446    </p>
8447    <p>&nbsp;&nbsp;&nbsp;"DESCRIPTION: "
8448    </p>
8449    <p>&nbsp;&nbsp;&nbsp;"IS_DRUM: false"
8450    </p>
8451    <p>&nbsp;&nbsp;&nbsp;"PRODUCT: GRANDIOSO Bosendorfer 290"
8452    </p>
8453    <p>&nbsp;&nbsp;&nbsp;"ARTISTS: Post Musical Instruments"
8454    </p>
8455    <p>&nbsp;&nbsp;&nbsp;"KEYWORDS: Bosendorfer"
8456    </p>
8457    <p>&nbsp;&nbsp;&nbsp;"."
8458    </p>
8459    </blockquote><p>
8460                        
8461    </p>
8462    <a name="SET DB_INSTRUMENT NAME"></a><br /><hr />
8463    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8464    <a name="rfc.section.6.8.16"></a><h3>6.8.16.&nbsp;
8465    Renaming an instrument</h3>
8466    
8467    <p>The front-end can alter the name of a specific
8468                        instrument by sending the following command:
8469    </p>
8470    <p>
8471                            </p>
8472    <blockquote class="text">
8473    <p>SET DB_INSTRUMENT NAME &lt;instr&gt; &lt;name&gt;
8474    </p>
8475    </blockquote><p>
8476                        
8477    </p>
8478    <p>Where &lt;instr&gt; is the absolute path name of the instrument and
8479                        &lt;name&gt; is the new name for that instrument.
8480    </p>
8481    <p>Possible Answers:
8482    </p>
8483    <p>
8484                            </p>
8485    <blockquote class="text">
8486    <p>"OK" -
8487                                    </p>
8488    <blockquote class="text">
8489    <p>on success
8490    </p>
8491    </blockquote>
8492                                
8493    
8494    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8495                                    </p>
8496    <blockquote class="text">
8497    <p>in case the given instrument does not exists,
8498                                        or if an instrument with name equal to the new
8499                                        name already exists.
8500    </p>
8501    </blockquote>
8502                                
8503    
8504    </blockquote><p>
8505                        
8506    </p>
8507    <p>Example:
8508    </p>
8509    <p>
8510                            </p>
8511    <blockquote class="text">
8512    <p>C: "SET DB_INSTRUMENT NAME '/Piano Collection/Bosendorfer' 'Bosendorfer 290'"
8513    </p>
8514    <p>S: "OK"
8515    </p>
8516    </blockquote><p>
8517                        
8518    </p>
8519    <a name="MOVE DB_INSTRUMENT"></a><br /><hr />
8520    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8521    <a name="rfc.section.6.8.17"></a><h3>6.8.17.&nbsp;
8522    Moving an instrument</h3>
8523    
8524    <p>The front-end can move a specific instrument to another directory by
8525                        sending the following command:
8526    </p>
8527    <p>
8528                            </p>
8529    <blockquote class="text">
8530    <p>MOVE DB_INSTRUMENT &lt;instr&gt; &lt;dst&gt;
8531    </p>
8532    </blockquote><p>
8533                        
8534    </p>
8535    <p>Where &lt;instr&gt; is the absolute path name of the instrument
8536                        to move and &lt;dst&gt; is the directory where the instrument will
8537                        be moved to.
8538    </p>
8539    <p>Possible Answers:
8540    </p>
8541    <p>
8542                            </p>
8543    <blockquote class="text">
8544    <p>"OK" -
8545                                    </p>
8546    <blockquote class="text">
8547    <p>on success
8548    </p>
8549    </blockquote>
8550                                
8551    
8552    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8553                                    </p>
8554    <blockquote class="text">
8555    <p>in case the given instrument does not exists,
8556                                        or if an instrument with name equal to the name of the
8557                                        specified instrument already exists in the destination
8558                                        directory.
8559    </p>
8560    </blockquote>
8561                                
8562    
8563    </blockquote><p>
8564                        
8565    </p>
8566    <p>Example:
8567    </p>
8568    <p>
8569                            </p>
8570    <blockquote class="text">
8571    <p>C: "MOVE DB_INSTRUMENT '/Piano Collection/Bosendorfer 290' '/Piano Collection/Acoustic'"
8572    </p>
8573    <p>S: "OK"
8574    </p>
8575    </blockquote><p>
8576                        
8577    </p>
8578    <a name="COPY DB_INSTRUMENT"></a><br /><hr />
8579    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8580    <a name="rfc.section.6.8.18"></a><h3>6.8.18.&nbsp;
8581    Copying instruments</h3>
8582    
8583    <p>The front-end can copy a specific instrument to another directory by
8584                        sending the following command:
8585    </p>
8586    <p>
8587                            </p>
8588    <blockquote class="text">
8589    <p>COPY DB_INSTRUMENT &lt;instr&gt; &lt;dst&gt;
8590    </p>
8591    </blockquote><p>
8592                        
8593    </p>
8594    <p>Where &lt;instr&gt; is the absolute path name of the instrument
8595                        to copy and &lt;dst&gt; is the directory where the instrument will
8596                        be copied to.
8597    </p>
8598    <p>Possible Answers:
8599    </p>
8600    <p>
8601                            </p>
8602    <blockquote class="text">
8603    <p>"OK" -
8604                                    </p>
8605    <blockquote class="text">
8606    <p>on success
8607    </p>
8608    </blockquote>
8609                                
8610    
8611    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8612                                    </p>
8613    <blockquote class="text">
8614    <p>in case the given instrument does not exists,
8615                                        or if an instrument with name equal to the name of the
8616                                        specified instrument already exists in the destination
8617                                        directory.
8618    </p>
8619    </blockquote>
8620                                
8621    
8622    </blockquote><p>
8623                        
8624    </p>
8625    <p>Example:
8626    </p>
8627    <p>
8628                            </p>
8629    <blockquote class="text">
8630    <p>C: "COPY DB_INSTRUMENT '/Piano Collection/Bosendorfer 290' '/Acoustic/Pianos/'"
8631    </p>
8632    <p>S: "OK"
8633    </p>
8634    </blockquote><p>
8635                        
8636    </p>
8637    <a name="SET DB_INSTRUMENT DESCRIPTION"></a><br /><hr />
8638    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8639    <a name="rfc.section.6.8.19"></a><h3>6.8.19.&nbsp;
8640    Changing the description of instrument</h3>
8641    
8642    <p>The front-end can alter the description of a specific
8643                        instrument by sending the following command:
8644    </p>
8645    <p>
8646                            </p>
8647    <blockquote class="text">
8648    <p>SET DB_INSTRUMENT DESCRIPTION &lt;instr&gt; &lt;desc&gt;
8649    </p>
8650    </blockquote><p>
8651                        
8652    </p>
8653    <p>Where &lt;instr&gt; is the absolute path name of the instrument and
8654                        &lt;desc&gt; is the new description for the instrument
8655                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
8656                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8657    </p>
8658    <p>Possible Answers:
8659    </p>
8660    <p>
8661                            </p>
8662    <blockquote class="text">
8663    <p>"OK" -
8664                                    </p>
8665    <blockquote class="text">
8666    <p>on success
8667    </p>
8668    </blockquote>
8669                                
8670    
8671    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8672                                    </p>
8673    <blockquote class="text">
8674    <p>in case the given instrument does not exists.
8675    </p>
8676    </blockquote>
8677                                
8678    
8679    </blockquote><p>
8680                        
8681    </p>
8682    <p>Example:
8683    </p>
8684    <p>
8685                            </p>
8686    <blockquote class="text">
8687    <p>C: "SET DB_INSTRUMENT DESCRIPTION '/Piano Collection/Acoustic/Bosendorfer 290' 'No comment :)'"
8688    </p>
8689    <p>S: "OK"
8690    </p>
8691    </blockquote><p>
8692                        
8693    </p>
8694    <a name="FIND DB_INSTRUMENTS"></a><br /><hr />
8695    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8696    <a name="rfc.section.6.8.20"></a><h3>6.8.20.&nbsp;
8697    Finding instruments</h3>
8698    
8699    <p>The front-end can search for instruments
8700                        in specific directory by sending the following command:
8701    </p>
8702    <p>
8703                            </p>
8704    <blockquote class="text">
8705    <p>FIND DB_INSTRUMENTS [NON_RECURSIVE] &lt;dir&gt; &lt;criteria-list&gt;
8706    </p>
8707    </blockquote><p>
8708                        
8709    </p>
8710    <p>Where &lt;dir&gt; should be replaced by the absolute path
8711                        name of the directory to search in. If NON_RECURSIVE is specified, the
8712                        directories located in subdirectories of the specified directory will not
8713                        be searched. &lt;criteria-list&gt; is a list of search criterias
8714                        in form of "key1=val1 key2=val2 ...". The following criterias are
8715                        allowed:
8716    </p>
8717    <p>
8718                          
8719    <p>NAME='&lt;search-string&gt;'
8720                              </p>
8721    <blockquote class="text">
8722    <p>Restricts the search to instruments, which names
8723                                  satisfy the supplied search string (encapsulated into apostrophes,
8724                                  supporting escape sequences as described in chapter
8725                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8726    </p>
8727    </blockquote><p>
8728                          
8729    </p>
8730    
8731                          
8732    <p>SIZE=[&lt;min&gt;]..[&lt;max&gt;]
8733                              </p>
8734    <blockquote class="text">
8735    <p>Restricts the search to instruments, which
8736                                  size is in the specified range. If &lt;min&gt; is omitted,
8737                                  the search results are restricted to instruments with size less then
8738                                  or equal to &lt;max&gt;. If &lt;max&gt; is omitted, the
8739                                  search is restricted to instruments with size greater then
8740                                  or equal to &lt;min&gt;.
8741    </p>
8742    </blockquote><p>
8743                          
8744    </p>
8745    
8746                          
8747    <p>CREATED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
8748                              </p>
8749    <blockquote class="text">
8750    <p>Restricts the search to instruments, which creation
8751                                  date satisfies the specified period, where &lt;date-after&gt;
8752                                  and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS" format.
8753                                  If &lt;date-after&gt; is omitted the search is restricted to
8754                                  instruments created before &lt;date-before&gt;. If
8755                                  &lt;date-before&gt; is omitted, the search is restricted
8756                                  to instruments created after &lt;date-after&gt;.
8757    </p>
8758    </blockquote><p>
8759                          
8760    </p>
8761    
8762                          
8763    <p>MODIFIED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
8764                              </p>
8765    <blockquote class="text">
8766    <p>Restricts the search to instruments, which
8767                                  date of last modification satisfies the specified period, where
8768                                  &lt;date-after&gt; and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS"
8769                                  format. If &lt;date-after&gt; is omitted the search is restricted to
8770                                  instruments, which are last modified before &lt;date-before&gt;. If
8771                                  &lt;date-before&gt; is omitted, the search is restricted to instruments,
8772                                  which are last modified after &lt;date-after&gt;.
8773    </p>
8774    </blockquote><p>
8775                          
8776    </p>
8777    
8778                          
8779    <p>DESCRIPTION='&lt;search-string&gt;'
8780                              </p>
8781    <blockquote class="text">
8782    <p>Restricts the search to instruments with description
8783                                  that satisfies the supplied search string (encapsulated into apostrophes,
8784                                  supporting escape sequences as described in chapter
8785                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8786    </p>
8787    </blockquote><p>
8788                          
8789    </p>
8790    
8791                          
8792    <p>PRODUCT='&lt;search-string&gt;'
8793                              </p>
8794    <blockquote class="text">
8795    <p>Restricts the search to instruments with product info
8796                                  that satisfies the supplied search string (encapsulated into apostrophes,
8797                                  supporting escape sequences as described in chapter
8798                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8799    </p>
8800    </blockquote><p>
8801                          
8802    </p>
8803    
8804                          
8805    <p>ARTISTS='&lt;search-string&gt;'
8806                              </p>
8807    <blockquote class="text">
8808    <p>Restricts the search to instruments with artists info
8809                                  that satisfies the supplied search string (encapsulated into apostrophes,
8810                                  supporting escape sequences as described in chapter
8811                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8812    </p>
8813    </blockquote><p>
8814                          
8815    </p>
8816    
8817                          
8818    <p>KEYWORDS='&lt;search-string&gt;'
8819                              </p>
8820    <blockquote class="text">
8821    <p>Restricts the search to instruments with keyword list
8822                                  that satisfies the supplied search string (encapsulated into apostrophes,
8823                                  supporting escape sequences as described in chapter
8824                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8825    </p>
8826    </blockquote><p>
8827                          
8828    </p>
8829    
8830                          
8831    <p>IS_DRUM=true | false
8832                              </p>
8833    <blockquote class="text">
8834    <p>Either true or false. Restricts the search to
8835                                  drum kits or chromatic instruments.
8836    </p>
8837    </blockquote><p>
8838                          
8839    </p>
8840    
8841                          
8842    <p>FORMAT_FAMILIES='&lt;format-list&gt;'
8843                              </p>
8844    <blockquote class="text">
8845    <p>Restricts the search to instruments of the supplied format families,
8846                                  where &lt;format-list&gt; is a comma separated list of format families.
8847    </p>
8848    </blockquote><p>
8849                          
8850    </p>
8851                        
8852    
8853    <p>Where &lt;search-string&gt; is either a regular expression, or a
8854                        word list separated with spaces for OR search and with '+' for AND search.
8855    </p>
8856    <p>Possible Answers:
8857    </p>
8858    <p>
8859                            </p>
8860    <blockquote class="text">
8861    <p>A comma separated list with the absolute path names (encapsulated into
8862                                apostrophes) of all instruments in the specified directory that satisfy
8863                                the supplied search criterias.
8864    </p>
8865    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8866                                    </p>
8867    <blockquote class="text">
8868    <p>if the given directory does not exist.
8869    </p>
8870    </blockquote>
8871                                
8872    
8873    </blockquote><p>
8874                        
8875    </p>
8876    <p>Example:
8877    </p>
8878    <p>
8879                            </p>
8880    <blockquote class="text">
8881    <p>C: "FIND DB_INSTRUMENTS '/Piano Collection' NAME='bosendorfer+290'"
8882    </p>
8883    <p>S: "'/Piano Collection/Bosendorfer 290'"
8884    </p>
8885    </blockquote><p>
8886                        
8887    </p>
8888    <p>
8889                            </p>
8890    <blockquote class="text">
8891    <p>C: "FIND DB_INSTRUMENTS '/Piano Collection' CREATED='2007-04-01 09:30:13..'"
8892    </p>
8893    <p>S: "'/Piano Collection/Bosendorfer 290','/Piano Collection/Steinway D'"
8894    </p>
8895    </blockquote><p>
8896                        
8897    </p>
8898    <a name="GET DB_INSTRUMENTS_JOB INFO"></a><br /><hr />
8899    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8900    <a name="rfc.section.6.8.21"></a><h3>6.8.21.&nbsp;
8901    Getting job status information</h3>
8902    
8903    <p>The front-end can ask for the current status of a
8904                        particular database instruments job by sending the following command:
8905    </p>
8906    <p>
8907                            </p>
8908    <blockquote class="text">
8909    <p>GET DB_INSTRUMENTS_JOB INFO &lt;job-id&gt;
8910    </p>
8911    </blockquote><p>
8912                        
8913    </p>
8914    <p>Where &lt;job-id&gt; should be replaced by the numerical ID
8915                        of the job the front-end is interested in.
8916    </p>
8917    <p>Possible Answers:
8918    </p>
8919    <p>
8920                            </p>
8921    <blockquote class="text">
8922    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
8923                                Each answer line begins with the settings category name
8924                                followed by a colon and then a space character &lt;SP&gt; and finally
8925                                the info character string to that setting category. At the
8926                                moment the following categories are defined:
8927    </p>
8928    <p>
8929                                    </p>
8930    <blockquote class="text">
8931    <p>FILES_TOTAL -
8932                                            </p>
8933    <blockquote class="text">
8934    <p>The total number of files scheduled for scanning
8935    </p>
8936    </blockquote>
8937                                        
8938    
8939    <p>FILES_SCANNED -
8940                                            </p>
8941    <blockquote class="text">
8942    <p>The current number of scanned files
8943    </p>
8944    </blockquote>
8945                                        
8946    
8947    <p>SCANNING -
8948                                            </p>
8949    <blockquote class="text">
8950    <p>The absolute path name of the file which is currently
8951                                                being scanned
8952    </p>
8953    </blockquote>
8954                                        
8955    
8956    <p>STATUS -
8957                                            </p>
8958    <blockquote class="text">
8959    <p>An integer value between 0 and 100 indicating the
8960                                                scanning progress percentage of the file which is
8961                                                currently being scanned
8962    </p>
8963    </blockquote>
8964                                        
8965    
8966    </blockquote>
8967                                
8968    
8969    </blockquote><p>
8970                        
8971    </p>
8972    <p>The mentioned fields above don't have to be in particular order.
8973    </p>
8974    <p>Example:
8975    </p>
8976    <p>
8977                            </p>
8978    <blockquote class="text">
8979    <p>C: "GET DB_INSTRUMENTS_JOB INFO 2"
8980    </p>
8981    <p>S: "FILES_TOTAL: 12"
8982    </p>
8983    <p>&nbsp;&nbsp;&nbsp;"FILES_SCANNED: 7"
8984    </p>
8985    <p>&nbsp;&nbsp;&nbsp;"SCANNING: /home/me/gigs/Bosendorfer 290.gig"
8986    </p>
8987    <p>&nbsp;&nbsp;&nbsp;"STATUS: 42"
8988    </p>
8989    <p>&nbsp;&nbsp;&nbsp;"."
8990    </p>
8991    </blockquote><p>
8992                        
8993    </p>
8994    <a name="FORMAT INSTRUMENTS_DB"></a><br /><hr />
8995    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8996    <a name="rfc.section.6.8.22"></a><h3>6.8.22.&nbsp;
8997    Formatting the instruments database</h3>
8998    
8999    <p>The front-end can remove all instruments and directories and re-create
9000                        the instruments database structure (e.g., in case of a database corruption)
9001                        by sending the following command:
9002    </p>
9003    <p>
9004                            </p>
9005    <blockquote class="text">
9006    <p>FORMAT INSTRUMENTS_DB
9007    </p>
9008    </blockquote><p>
9009                        
9010    </p>
9011    <p>Possible Answers:
9012    </p>
9013    <p>
9014                            </p>
9015    <blockquote class="text">
9016    <p>"OK" -
9017                                    </p>
9018    <blockquote class="text">
9019    <p>on success
9020    </p>
9021    </blockquote>
9022                                
9023    
9024    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9025                                    </p>
9026    <blockquote class="text">
9027    <p>If the formatting of the instruments database
9028                                        failed.
9029    </p>
9030    </blockquote>
9031                                
9032    
9033    </blockquote><p>
9034                        
9035    </p>
9036    <a name="editing_instruments"></a><br /><hr />
9037    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9038    <a name="rfc.section.6.9"></a><h3>6.9.&nbsp;
9039    Editing Instruments</h3>
9040    
9041    <p>The sampler allows to edit instruments while playing with the
9042                    sampler by spawning an external (3rd party) instrument editor
9043                    application for a given instrument. The 3rd party instrument
9044                    editor applications have to place a respective plugin DLL file
9045                    into the sampler's plugins directory. The sampler will
9046                    automatically try to load all plugin DLLs in that directory on
9047                    startup and only on startup!
9048    </p>
9049    <p>At the moment there is only one command for this feature set,
9050                    but this will most probably change in future.
9051    </p>
9052    <a name="EDIT INSTRUMENT"></a><br /><hr />
9053    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9054    <a name="rfc.section.6.9.1"></a><h3>6.9.1.&nbsp;
9055    Opening an appropriate instrument editor application</h3>
9056    
9057    <p>The front-end can request to open an appropriate instrument
9058                        editor application by sending the following command:
9059    </p>
9060    <p>
9061                            </p>
9062    <blockquote class="text">
9063    <p>EDIT INSTRUMENT &lt;sampler-channel&gt;
9064    </p>
9065    </blockquote><p>
9066                        
9067    </p>
9068    <p>Where &lt;sampler-channel&gt; should be replaced by the
9069                        number of the sampler channel as given by the
9070                        <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a>
9071                        or <a class='info' href='#LIST CHANNELS'>"LIST CHANNELS"<span> (</span><span class='info'>Getting all created sampler channel list</span><span>)</span></a>
9072                        command.
9073    </p>
9074    <p>The sampler will try to ask all registered instrument
9075                        editors (or to be more specific: their sampler plugins)
9076                        whether they are capable to handle the instrument on the
9077                        given sampler channel. The sampler will simply use the first
9078                        instrument editor application which replied with a positive
9079                        answer and spawn that instrument editor application within
9080                        the sampler's process and provide that application access
9081                        to the instrument's data structures, so both applications
9082                        can share and access the same instruments data at the same
9083                        time, thus allowing to immediately hear changes with the
9084                        sampler made by the instrument editor.
9085    </p>
9086    <p>Note: consequently instrument editors are always spawned
9087                        locally on the same machine where the sampler is running
9088                        on!
9089    </p>
9090    <p>Possible Answers:
9091    </p>
9092    <p>
9093                            </p>
9094    <blockquote class="text">
9095    <p>"OK" -
9096                                    </p>
9097    <blockquote class="text">
9098    <p>when an appropriate instrument editor was
9099                                        launched
9100    </p>
9101    </blockquote>
9102                                
9103    
9104    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
9105                                    </p>
9106    <blockquote class="text">
9107    <p>when an appropriate instrument editor was
9108                                        launched, but there are noteworthy issues
9109    </p>
9110    </blockquote>
9111                                
9112    
9113    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9114                                    </p>
9115    <blockquote class="text">
9116    <p>when an appropriate instrument editor
9117                                        could not be launched
9118    </p>
9119    </blockquote>
9120                                
9121    
9122    </blockquote><p>
9123                        
9124    </p>
9125    <p>Examples:
9126    </p>
9127    <p>
9128                            </p>
9129    <blockquote class="text">
9130    <p>C: "EDIT INSTRUMENT 0"
9131    </p>
9132    <p>S: "OK"
9133    </p>
9134    </blockquote><p>
9135                        
9136  </p>  </p>
9137  <a name="command_syntax"></a><br /><hr />  <a name="command_syntax"></a><br /><hr />
9138  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9139  <a name="rfc.section.7"></a><h3>7.&nbsp;Command Syntax</h3>  <a name="rfc.section.7"></a><h3>7.&nbsp;
9140    Command Syntax</h3>
9141    
9142  <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>  <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>
9143              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>)              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>)
9144              where applicable.              where applicable.
9145                
9146  </p>  </p>
9147  <p>input =  <p>input =
9148          </p>          </p>
9149  <blockquote class="text">  <blockquote class="text">
9150  <p>line LF  <p>line LF
9151                    
9152  </p>  </p>
9153  <p>/ line CR LF  <p>/ line CR LF
9154                    
9155  </p>  </p>
9156  </blockquote><p>  </blockquote><p>
9157    
# Line 4964  Intellectual Property and Copyright Stat Line 9160  Intellectual Property and Copyright Stat
9160          </p>          </p>
9161  <blockquote class="text">  <blockquote class="text">
9162  <p>/* epsilon (empty line ignored) */  <p>/* epsilon (empty line ignored) */
9163                    
9164  </p>  </p>
9165  <p>/ comment  <p>/ comment
9166                    
9167  </p>  </p>
9168  <p>/ command  <p>/ command
9169                    
9170  </p>  </p>
9171  <p>/ error  <p>/ error
9172                    
9173  </p>  </p>
9174  </blockquote><p>  </blockquote><p>
9175    
# Line 4982  Intellectual Property and Copyright Stat Line 9178  Intellectual Property and Copyright Stat
9178          </p>          </p>
9179  <blockquote class="text">  <blockquote class="text">
9180  <p>'#'  <p>'#'
9181                    
9182  </p>  </p>
9183  <p>/ comment '#'  <p>/ comment '#'
9184                    
9185  </p>  </p>
9186  <p>/ comment SP  <p>/ comment SP
9187                    
9188  </p>  </p>
9189  <p>/ comment number  <p>/ comment number
9190                    
9191  </p>  </p>
9192  <p>/ comment string  <p>/ comment string
9193                    
9194  </p>  </p>
9195  </blockquote><p>  </blockquote><p>
9196    
# Line 5002  Intellectual Property and Copyright Stat Line 9198  Intellectual Property and Copyright Stat
9198  <p>command =  <p>command =
9199          </p>          </p>
9200  <blockquote class="text">  <blockquote class="text">
9201  <p>ADD SP CHANNEL  <p>ADD SP add_instruction
9202                    
9203    </p>
9204    <p>/ MAP SP map_instruction
9205                    
9206    </p>
9207    <p>/ UNMAP SP unmap_instruction
9208                    
9209  </p>  </p>
9210  <p>/ GET SP get_instruction  <p>/ GET SP get_instruction
9211                    
9212  </p>  </p>
9213  <p>/ CREATE SP create_instruction  <p>/ CREATE SP create_instruction
9214                    
9215  </p>  </p>
9216  <p>/ DESTROY SP destroy_instruction  <p>/ DESTROY SP destroy_instruction
9217                    
9218  </p>  </p>
9219  <p>/ LIST SP list_instruction  <p>/ LIST SP list_instruction
9220                    
9221  </p>  </p>
9222  <p>/ LOAD SP load_instruction  <p>/ LOAD SP load_instruction
9223                    
9224  </p>  </p>
9225  <p>/ REMOVE SP CHANNEL SP sampler_channel  <p>/ REMOVE SP remove_instruction
9226                    
9227  </p>  </p>
9228  <p>/ SET SP set_instruction  <p>/ SET SP set_instruction
9229                    
9230  </p>  </p>
9231  <p>/ SUBSCRIBE SP subscribe_event  <p>/ SUBSCRIBE SP subscribe_event
9232                    
9233  </p>  </p>
9234  <p>/ UNSUBSCRIBE SP unsubscribe_event  <p>/ UNSUBSCRIBE SP unsubscribe_event
9235                    
9236  </p>  </p>
9237  <p>/ SELECT SP text  <p>/ RESET SP reset_instruction
9238                    
9239  </p>  </p>
9240  <p>/ RESET SP CHANNEL SP sampler_channel  <p>/ CLEAR SP clear_instruction
9241                    
9242    </p>
9243    <p>/ FIND SP find_instruction
9244                    
9245    </p>
9246    <p>/ MOVE SP move_instruction
9247                    
9248    </p>
9249    <p>/ COPY SP copy_instruction
9250                    
9251    </p>
9252    <p>/ EDIT SP edit_instruction
9253                    
9254    </p>
9255    <p>/ FORMAT SP format_instruction
9256                    
9257  </p>  </p>
9258  <p>/ RESET  <p>/ RESET
9259                    
9260  </p>  </p>
9261  <p>/ QUIT  <p>/ QUIT
9262                    
9263    </p>
9264    </blockquote><p>
9265    
9266  </p>  </p>
9267    <p>add_instruction =
9268            </p>
9269    <blockquote class="text">
9270    <p>CHANNEL
9271                    
9272    </p>
9273    <p>/ DB_INSTRUMENT_DIRECTORY SP db_path
9274                    
9275    </p>
9276    <p>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP db_path SP filename
9277                    
9278    </p>
9279    <p>/ DB_INSTRUMENTS SP scan_mode SP db_path SP filename
9280                    
9281    </p>
9282    <p>/ DB_INSTRUMENTS SP NON_MODAL SP db_path SP filename
9283                    
9284    </p>
9285    <p>/ DB_INSTRUMENTS SP NON_MODAL SP db_path SP filename SP instrument_index
9286                    
9287    </p>
9288    <p>/ DB_INSTRUMENTS SP db_path SP filename
9289                    
9290    </p>
9291    <p>/ DB_INSTRUMENTS SP db_path SP filename SP instrument_index
9292                    
9293    </p>
9294    <p>/ MIDI_INSTRUMENT_MAP
9295                    
9296    </p>
9297    <p>/ MIDI_INSTRUMENT_MAP SP map_name
9298                    
9299    </p>
9300  </blockquote><p>  </blockquote><p>
9301    
9302  </p>  </p>
9303  <p>subscribe_event =  <p>subscribe_event =
9304          </p>          </p>
9305  <blockquote class="text">  <blockquote class="text">
9306  <p>CHANNEL_COUNT  <p>AUDIO_OUTPUT_DEVICE_COUNT
9307                    
9308    </p>
9309    <p>/ AUDIO_OUTPUT_DEVICE_INFO
9310                    
9311    </p>
9312    <p>/ MIDI_INPUT_DEVICE_COUNT
9313                    
9314    </p>
9315    <p>/ MIDI_INPUT_DEVICE_INFO
9316                    
9317    </p>
9318    <p>/ CHANNEL_COUNT
9319                    
9320  </p>  </p>
9321  <p>/ VOICE_COUNT  <p>/ VOICE_COUNT
9322                    
9323  </p>  </p>
9324  <p>/ STREAM_COUNT  <p>/ STREAM_COUNT
9325                    
9326  </p>  </p>
9327  <p>/ BUFFER_FILL  <p>/ BUFFER_FILL
9328                    
9329  </p>  </p>
9330  <p>/ CHANNEL_INFO  <p>/ CHANNEL_INFO
9331                    
9332    </p>
9333    <p>/ FX_SEND_COUNT
9334                    
9335    </p>
9336    <p>/ FX_SEND_INFO
9337                    
9338    </p>
9339    <p>/ MIDI_INSTRUMENT_MAP_COUNT
9340                    
9341    </p>
9342    <p>/ MIDI_INSTRUMENT_MAP_INFO
9343                    
9344    </p>
9345    <p>/ MIDI_INSTRUMENT_COUNT
9346                    
9347    </p>
9348    <p>/ MIDI_INSTRUMENT_INFO
9349                    
9350    </p>
9351    <p>/ DB_INSTRUMENT_DIRECTORY_COUNT
9352                    
9353    </p>
9354    <p>/ DB_INSTRUMENT_DIRECTORY_INFO
9355                    
9356    </p>
9357    <p>/ DB_INSTRUMENT_COUNT
9358                    
9359    </p>
9360    <p>/ DB_INSTRUMENT_INFO
9361                    
9362    </p>
9363    <p>/ DB_INSTRUMENTS_JOB_INFO
9364                    
9365  </p>  </p>
9366  <p>/ MISCELLANEOUS  <p>/ MISCELLANEOUS
9367                    
9368    </p>
9369    <p>/ TOTAL_VOICE_COUNT
9370                    
9371    </p>
9372    <p>/ GLOBAL_INFO
9373                    
9374  </p>  </p>
9375  </blockquote><p>  </blockquote><p>
9376    
# Line 5074  Intellectual Property and Copyright Stat Line 9378  Intellectual Property and Copyright Stat
9378  <p>unsubscribe_event =  <p>unsubscribe_event =
9379          </p>          </p>
9380  <blockquote class="text">  <blockquote class="text">
9381  <p>CHANNEL_COUNT  <p>AUDIO_OUTPUT_DEVICE_COUNT
9382                    
9383    </p>
9384    <p>/ AUDIO_OUTPUT_DEVICE_INFO
9385                    
9386    </p>
9387    <p>/ MIDI_INPUT_DEVICE_COUNT
9388                    
9389    </p>
9390    <p>/ MIDI_INPUT_DEVICE_INFO
9391                    
9392    </p>
9393    <p>/ CHANNEL_COUNT
9394                    
9395  </p>  </p>
9396  <p>/ VOICE_COUNT  <p>/ VOICE_COUNT
9397                    
9398  </p>  </p>
9399  <p>/ STREAM_COUNT  <p>/ STREAM_COUNT
9400                    
9401  </p>  </p>
9402  <p>/ BUFFER_FILL  <p>/ BUFFER_FILL
9403                    
9404  </p>  </p>
9405  <p>/ CHANNEL_INFO  <p>/ CHANNEL_INFO
9406                    
9407    </p>
9408    <p>/ FX_SEND_COUNT
9409                    
9410    </p>
9411    <p>/ FX_SEND_INFO
9412                    
9413    </p>
9414    <p>/ MIDI_INSTRUMENT_MAP_COUNT
9415                    
9416    </p>
9417    <p>/ MIDI_INSTRUMENT_MAP_INFO
9418                    
9419    </p>
9420    <p>/ MIDI_INSTRUMENT_COUNT
9421                    
9422    </p>
9423    <p>/ MIDI_INSTRUMENT_INFO
9424                    
9425    </p>
9426    <p>/ DB_INSTRUMENT_DIRECTORY_COUNT
9427                    
9428    </p>
9429    <p>/ DB_INSTRUMENT_DIRECTORY_INFO
9430                    
9431    </p>
9432    <p>/ DB_INSTRUMENT_COUNT
9433                    
9434    </p>
9435    <p>/ DB_INSTRUMENT_INFO
9436                    
9437    </p>
9438    <p>/ DB_INSTRUMENTS_JOB_INFO
9439                    
9440  </p>  </p>
9441  <p>/ MISCELLANEOUS  <p>/ MISCELLANEOUS
9442                    
9443    </p>
9444    <p>/ TOTAL_VOICE_COUNT
9445                    
9446    </p>
9447    <p>/ GLOBAL_INFO
9448                    
9449    </p>
9450    </blockquote><p>
9451    
9452    </p>
9453    <p>map_instruction =
9454            </p>
9455    <blockquote class="text">
9456    <p>MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value
9457                    
9458    </p>
9459    <p>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode
9460                    
9461    </p>
9462    <p>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP entry_name
9463                    
9464    </p>
9465    <p>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode SP entry_name
9466                    
9467    </p>
9468    </blockquote><p>
9469    
9470    </p>
9471    <p>unmap_instruction =
9472            </p>
9473    <blockquote class="text">
9474    <p>MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog
9475                    
9476    </p>
9477    </blockquote><p>
9478    
9479  </p>  </p>
9480    <p>remove_instruction =
9481            </p>
9482    <blockquote class="text">
9483    <p>CHANNEL SP sampler_channel
9484                    
9485    </p>
9486    <p>/ MIDI_INSTRUMENT_MAP SP midi_map
9487                    
9488    </p>
9489    <p>/ MIDI_INSTRUMENT_MAP SP ALL
9490                    
9491    </p>
9492    <p>/ DB_INSTRUMENT_DIRECTORY SP FORCE SP db_path
9493                    
9494    </p>
9495    <p>/ DB_INSTRUMENT_DIRECTORY SP db_path
9496                    
9497    </p>
9498    <p>/ DB_INSTRUMENT SP db_path
9499                    
9500    </p>
9501  </blockquote><p>  </blockquote><p>
9502    
9503  </p>  </p>
# Line 5099  Intellectual Property and Copyright Stat Line 9505  Intellectual Property and Copyright Stat
9505          </p>          </p>
9506  <blockquote class="text">  <blockquote class="text">
9507  <p>AVAILABLE_ENGINES  <p>AVAILABLE_ENGINES
9508                    
9509  </p>  </p>
9510  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
9511                    
9512  </p>  </p>
9513  <p>/ MIDI_INPUT_DRIVER SP INFO SP string  <p>/ MIDI_INPUT_DRIVER SP INFO SP string
9514                    
9515  </p>  </p>
9516  <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string  <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string
9517                    
9518  </p>  </p>
9519  <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list  <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
9520                    
9521  </p>  </p>
9522  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
9523                    
9524  </p>  </p>
9525  <p>/ AUDIO_OUTPUT_DRIVER SP INFO SP string  <p>/ AUDIO_OUTPUT_DRIVER SP INFO SP string
9526                    
9527  </p>  </p>
9528  <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string  <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string
9529                    
9530  </p>  </p>
9531  <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list  <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
9532                    
9533  </p>  </p>
9534  <p>/ AUDIO_OUTPUT_DEVICES  <p>/ AUDIO_OUTPUT_DEVICES
9535                    
9536  </p>  </p>
9537  <p>/ MIDI_INPUT_DEVICES  <p>/ MIDI_INPUT_DEVICES
9538                    
9539  </p>  </p>
9540  <p>/ AUDIO_OUTPUT_DEVICE SP INFO SP number  <p>/ AUDIO_OUTPUT_DEVICE SP INFO SP number
9541                    
9542  </p>  </p>
9543  <p>/ MIDI_INPUT_DEVICE SP INFO SP number  <p>/ MIDI_INPUT_DEVICE SP INFO SP number
9544                    
9545  </p>  </p>
9546  <p>/ MIDI_INPUT_PORT SP INFO SP number SP number  <p>/ MIDI_INPUT_PORT SP INFO SP number SP number
9547                    
9548  </p>  </p>
9549  <p>/ MIDI_INPUT_PORT_PARAMETER SP INFO SP number SP number SP string  <p>/ MIDI_INPUT_PORT_PARAMETER SP INFO SP number SP number SP string
9550                    
9551  </p>  </p>
9552  <p>/ AUDIO_OUTPUT_CHANNEL SP INFO SP number SP number  <p>/ AUDIO_OUTPUT_CHANNEL SP INFO SP number SP number
9553                    
9554  </p>  </p>
9555  <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP INFO SP number SP number SP string  <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP INFO SP number SP number SP string
9556                    
9557  </p>  </p>
9558  <p>/ CHANNELS  <p>/ CHANNELS
9559                    
9560  </p>  </p>
9561  <p>/ CHANNEL SP INFO SP sampler_channel  <p>/ CHANNEL SP INFO SP sampler_channel
9562                    
9563  </p>  </p>
9564  <p>/ CHANNEL SP BUFFER_FILL SP buffer_size_type SP sampler_channel  <p>/ CHANNEL SP BUFFER_FILL SP buffer_size_type SP sampler_channel
9565                    
9566  </p>  </p>
9567  <p>/ CHANNEL SP STREAM_COUNT SP sampler_channel  <p>/ CHANNEL SP STREAM_COUNT SP sampler_channel
9568                    
9569  </p>  </p>
9570  <p>/ CHANNEL SP VOICE_COUNT SP sampler_channel  <p>/ CHANNEL SP VOICE_COUNT SP sampler_channel
9571                    
9572  </p>  </p>
9573  <p>/ ENGINE SP INFO SP engine_name  <p>/ ENGINE SP INFO SP engine_name
9574                    
9575  </p>  </p>
9576  <p>/ SERVER SP INFO  <p>/ SERVER SP INFO
9577                    
9578    </p>
9579    <p>/ TOTAL_VOICE_COUNT
9580                    
9581    </p>
9582    <p>/ TOTAL_VOICE_COUNT_MAX
9583                    
9584    </p>
9585    <p>/ MIDI_INSTRUMENTS SP midi_map
9586                    
9587    </p>
9588    <p>/ MIDI_INSTRUMENTS SP ALL
9589                    
9590    </p>
9591    <p>/ MIDI_INSTRUMENT SP INFO SP midi_map SP midi_bank SP midi_prog
9592                    
9593    </p>
9594    <p>/ MIDI_INSTRUMENT_MAPS
9595                    
9596    </p>
9597    <p>/ MIDI_INSTRUMENT_MAP SP INFO SP midi_map
9598                    
9599    </p>
9600    <p>/ FX_SENDS SP sampler_channel
9601                    
9602    </p>
9603    <p>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id
9604                    
9605    </p>
9606    <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP db_path
9607                    
9608    </p>
9609    <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path
9610                    
9611    </p>
9612    <p>/ DB_INSTRUMENT_DIRECTORY SP INFO SP db_path
9613                    
9614    </p>
9615    <p>/ DB_INSTRUMENTS SP RECURSIVE SP db_path
9616                    
9617    </p>
9618    <p>/ DB_INSTRUMENTS SP db_path
9619                    
9620    </p>
9621    <p>/ DB_INSTRUMENT SP INFO SP db_path
9622                    
9623    </p>
9624    <p>/ DB_INSTRUMENTS_JOB SP INFO SP number
9625                    
9626    </p>
9627    <p>/ VOLUME
9628                    
9629  </p>  </p>
9630  </blockquote><p>  </blockquote><p>
9631    
# Line 5177  Intellectual Property and Copyright Stat Line 9634  Intellectual Property and Copyright Stat
9634          </p>          </p>
9635  <blockquote class="text">  <blockquote class="text">
9636  <p>AUDIO_OUTPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list  <p>AUDIO_OUTPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
9637                    
9638  </p>  </p>
9639  <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP number SP number SP string '=' param_val_list  <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP number SP number SP string '=' param_val_list
9640                    
9641  </p>  </p>
9642  <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list  <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
9643                    
9644    </p>
9645    <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' NONE
9646                    
9647  </p>  </p>
9648  <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' param_val_list  <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' param_val_list
9649                    
9650  </p>  </p>
9651  <p>/ CHANNEL SP set_chan_instruction  <p>/ CHANNEL SP set_chan_instruction
9652                    
9653    </p>
9654    <p>/ MIDI_INSTRUMENT_MAP SP NAME SP midi_map SP map_name
9655                    
9656    </p>
9657    <p>/ FX_SEND SP NAME SP sampler_channel SP fx_send_id SP fx_send_name
9658                    
9659    </p>
9660    <p>/ FX_SEND SP AUDIO_OUTPUT_CHANNEL SP sampler_channel SP fx_send_id SP audio_channel_index SP audio_channel_index
9661                    
9662    </p>
9663    <p>/ FX_SEND SP MIDI_CONTROLLER SP sampler_channel SP fx_send_id SP midi_ctrl
9664                    
9665    </p>
9666    <p>/ FX_SEND SP LEVEL SP sampler_channel SP fx_send_id SP volume_value
9667                    
9668    </p>
9669    <p>/ DB_INSTRUMENT_DIRECTORY SP NAME SP db_path SP stringval_escaped
9670                    
9671    </p>
9672    <p>/ DB_INSTRUMENT_DIRECTORY SP DESCRIPTION SP db_path SP stringval_escaped
9673                    
9674    </p>
9675    <p>/ DB_INSTRUMENT SP NAME SP db_path SP stringval_escaped
9676                    
9677    </p>
9678    <p>/ DB_INSTRUMENT SP DESCRIPTION SP db_path SP stringval_escaped
9679                    
9680  </p>  </p>
9681  <p>/ ECHO SP boolean  <p>/ ECHO SP boolean
9682                    
9683    </p>
9684    <p>/ VOLUME SP volume_value
9685                    
9686  </p>  </p>
9687  </blockquote><p>  </blockquote><p>
9688    
# Line 5201  Intellectual Property and Copyright Stat Line 9691  Intellectual Property and Copyright Stat
9691          </p>          </p>
9692  <blockquote class="text">  <blockquote class="text">
9693  <p>AUDIO_OUTPUT_DEVICE SP string SP key_val_list  <p>AUDIO_OUTPUT_DEVICE SP string SP key_val_list
9694                    
9695  </p>  </p>
9696  <p>/ AUDIO_OUTPUT_DEVICE SP string  <p>/ AUDIO_OUTPUT_DEVICE SP string
9697                    
9698  </p>  </p>
9699  <p>/ MIDI_INPUT_DEVICE SP string SP key_val_list  <p>/ MIDI_INPUT_DEVICE SP string SP key_val_list
9700                    
9701  </p>  </p>
9702  <p>/ MIDI_INPUT_DEVICE SP string  <p>/ MIDI_INPUT_DEVICE SP string
9703                    
9704    </p>
9705    <p>/ FX_SEND SP sampler_channel SP midi_ctrl
9706                    
9707    </p>
9708    <p>/ FX_SEND SP sampler_channel SP midi_ctrl SP fx_send_name
9709                    
9710    </p>
9711    </blockquote><p>
9712    
9713  </p>  </p>
9714    <p>reset_instruction =
9715            </p>
9716    <blockquote class="text">
9717    <p>CHANNEL SP sampler_channel
9718                    
9719    </p>
9720    </blockquote><p>
9721    
9722    </p>
9723    <p>clear_instruction =
9724            </p>
9725    <blockquote class="text">
9726    <p>MIDI_INSTRUMENTS SP midi_map
9727                    
9728    </p>
9729    <p>/ MIDI_INSTRUMENTS SP ALL
9730                    
9731    </p>
9732    </blockquote><p>
9733    
9734    </p>
9735    <p>find_instruction =
9736            </p>
9737    <blockquote class="text">
9738    <p>DB_INSTRUMENTS SP NON_RECURSIVE SP db_path SP query_val_list
9739                    
9740    </p>
9741    <p>/ DB_INSTRUMENTS SP db_path SP query_val_list
9742                    
9743    </p>
9744    <p>/ DB_INSTRUMENT_DIRECTORIES SP NON_RECURSIVE SP db_path SP query_val_list
9745                    
9746    </p>
9747    <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path SP query_val_list
9748                    
9749    </p>
9750    </blockquote><p>
9751    
9752    </p>
9753    <p>move_instruction =
9754            </p>
9755    <blockquote class="text">
9756    <p>DB_INSTRUMENT_DIRECTORY SP db_path SP db_path
9757                    
9758    </p>
9759    <p>/ DB_INSTRUMENT SP db_path SP db_path
9760                    
9761    </p>
9762    </blockquote><p>
9763    
9764    </p>
9765    <p>copy_instruction =
9766            </p>
9767    <blockquote class="text">
9768    <p>DB_INSTRUMENT_DIRECTORY SP db_path SP db_path
9769                    
9770    </p>
9771    <p>/ DB_INSTRUMENT SP db_path SP db_path
9772                    
9773    </p>
9774  </blockquote><p>  </blockquote><p>
9775    
9776  </p>  </p>
# Line 5219  Intellectual Property and Copyright Stat Line 9778  Intellectual Property and Copyright Stat
9778          </p>          </p>
9779  <blockquote class="text">  <blockquote class="text">
9780  <p>AUDIO_OUTPUT_DEVICE SP number  <p>AUDIO_OUTPUT_DEVICE SP number
9781                    
9782  </p>  </p>
9783  <p>/ MIDI_INPUT_DEVICE SP number  <p>/ MIDI_INPUT_DEVICE SP number
9784                    
9785    </p>
9786    <p>/ FX_SEND SP sampler_channel SP fx_send_id
9787                    
9788  </p>  </p>
9789  </blockquote><p>  </blockquote><p>
9790    
# Line 5231  Intellectual Property and Copyright Stat Line 9793  Intellectual Property and Copyright Stat
9793          </p>          </p>
9794  <blockquote class="text">  <blockquote class="text">
9795  <p>INSTRUMENT SP load_instr_args  <p>INSTRUMENT SP load_instr_args
9796                    
9797  </p>  </p>
9798  <p>/ ENGINE SP load_engine_args  <p>/ ENGINE SP load_engine_args
9799                    
9800  </p>  </p>
9801  </blockquote><p>  </blockquote><p>
9802    
# Line 5243  Intellectual Property and Copyright Stat Line 9805  Intellectual Property and Copyright Stat
9805          </p>          </p>
9806  <blockquote class="text">  <blockquote class="text">
9807  <p>AUDIO_OUTPUT_DEVICE SP sampler_channel SP device_index  <p>AUDIO_OUTPUT_DEVICE SP sampler_channel SP device_index
9808                    
9809  </p>  </p>
9810  <p>/ AUDIO_OUTPUT_CHANNEL SP sampler_channel SP audio_channel_index SP audio_channel_index  <p>/ AUDIO_OUTPUT_CHANNEL SP sampler_channel SP audio_channel_index SP audio_channel_index
9811                    
9812  </p>  </p>
9813  <p>/ AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type_name  <p>/ AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type_name
9814                    
9815  </p>  </p>
9816  <p>/ MIDI_INPUT SP sampler_channel SP device_index SP midi_input_port_index SP midi_input_channel_index  <p>/ MIDI_INPUT SP sampler_channel SP device_index SP midi_input_port_index SP midi_input_channel_index
9817                    
9818  </p>  </p>
9819  <p>/ MIDI_INPUT_DEVICE SP sampler_channel SP device_index  <p>/ MIDI_INPUT_DEVICE SP sampler_channel SP device_index
9820                    
9821  </p>  </p>
9822  <p>/ MIDI_INPUT_PORT SP sampler_channel SP midi_input_port_index  <p>/ MIDI_INPUT_PORT SP sampler_channel SP midi_input_port_index
9823                    
9824  </p>  </p>
9825  <p>/ MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel_index  <p>/ MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel_index
9826                    
9827  </p>  </p>
9828  <p>/ MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type_name  <p>/ MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type_name
9829                    
9830  </p>  </p>
9831  <p>/ VOLUME SP sampler_channel SP volume_value  <p>/ VOLUME SP sampler_channel SP volume_value
9832                    
9833  </p>  </p>
9834  <p>/ MUTE SP sampler_channel SP boolean  <p>/ MUTE SP sampler_channel SP boolean
9835                    
9836  </p>  </p>
9837  <p>/ SOLO SP sampler_channel SP boolean  <p>/ SOLO SP sampler_channel SP boolean
9838                    
9839    </p>
9840    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP midi_map
9841                    
9842    </p>
9843    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP NONE
9844                    
9845    </p>
9846    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP DEFAULT
9847                    
9848    </p>
9849    </blockquote><p>
9850    
9851  </p>  </p>
9852    <p>edit_instruction =
9853            </p>
9854    <blockquote class="text">
9855    <p>INSTRUMENT SP sampler_channel
9856                    
9857    </p>
9858    </blockquote><p>
9859    
9860    </p>
9861    <p>format_instruction =
9862            </p>
9863    <blockquote class="text">
9864    <p>INSTRUMENTS_DB
9865                    
9866    </p>
9867    </blockquote><p>
9868    
9869    </p>
9870    <p>modal_arg =
9871            </p>
9872    <blockquote class="text">
9873    <p>/* epsilon (empty argument) */
9874                    
9875    </p>
9876    <p>/ NON_MODAL SP
9877                    
9878    </p>
9879  </blockquote><p>  </blockquote><p>
9880    
9881  </p>  </p>
# Line 5282  Intellectual Property and Copyright Stat Line 9883  Intellectual Property and Copyright Stat
9883          </p>          </p>
9884  <blockquote class="text">  <blockquote class="text">
9885  <p>string '=' param_val_list  <p>string '=' param_val_list
9886                    
9887  </p>  </p>
9888  <p>/ key_val_list SP string '=' param_val_list  <p>/ key_val_list SP string '=' param_val_list
9889                    
9890  </p>  </p>
9891  </blockquote><p>  </blockquote><p>
9892    
# Line 5294  Intellectual Property and Copyright Stat Line 9895  Intellectual Property and Copyright Stat
9895          </p>          </p>
9896  <blockquote class="text">  <blockquote class="text">
9897  <p>BYTES  <p>BYTES
9898                    
9899  </p>  </p>
9900  <p>/ PERCENTAGE  <p>/ PERCENTAGE
9901                    
9902  </p>  </p>
9903  </blockquote><p>  </blockquote><p>
9904    
# Line 5306  Intellectual Property and Copyright Stat Line 9907  Intellectual Property and Copyright Stat
9907          </p>          </p>
9908  <blockquote class="text">  <blockquote class="text">
9909  <p>AUDIO_OUTPUT_DEVICES  <p>AUDIO_OUTPUT_DEVICES
9910                    
9911  </p>  </p>
9912  <p>/ MIDI_INPUT_DEVICES  <p>/ MIDI_INPUT_DEVICES
9913                    
9914  </p>  </p>
9915  <p>/ CHANNELS  <p>/ CHANNELS
9916                    
9917  </p>  </p>
9918  <p>/ AVAILABLE_ENGINES  <p>/ AVAILABLE_ENGINES
9919                    
9920  </p>  </p>
9921  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
9922                    
9923  </p>  </p>
9924  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
9925                    
9926    </p>
9927    <p>/ MIDI_INSTRUMENTS SP midi_map
9928                    
9929    </p>
9930    <p>/ MIDI_INSTRUMENTS SP ALL
9931                    
9932    </p>
9933    <p>/ MIDI_INSTRUMENT_MAPS
9934                    
9935    </p>
9936    <p>/ FX_SENDS SP sampler_channel
9937                    
9938    </p>
9939    <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP db_path
9940                    
9941    </p>
9942    <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path
9943                    
9944    </p>
9945    <p>/ DB_INSTRUMENTS SP RECURSIVE SP db_path
9946                    
9947    </p>
9948    <p>/ DB_INSTRUMENTS SP db_path
9949                    
9950  </p>  </p>
9951  </blockquote><p>  </blockquote><p>
9952    
# Line 5330  Intellectual Property and Copyright Stat Line 9955  Intellectual Property and Copyright Stat
9955          </p>          </p>
9956  <blockquote class="text">  <blockquote class="text">
9957  <p>filename SP instrument_index SP sampler_channel  <p>filename SP instrument_index SP sampler_channel
9958                    
9959  </p>  </p>
9960  <p>/ NON_MODAL SP filename SP instrument_index SP sampler_channel  <p>/ NON_MODAL SP filename SP instrument_index SP sampler_channel
9961                    
9962  </p>  </p>
9963  </blockquote><p>  </blockquote><p>
9964    
# Line 5342  Intellectual Property and Copyright Stat Line 9967  Intellectual Property and Copyright Stat
9967          </p>          </p>
9968  <blockquote class="text">  <blockquote class="text">
9969  <p>engine_name SP sampler_channel  <p>engine_name SP sampler_channel
9970                    
9971    </p>
9972    </blockquote><p>
9973    
9974  </p>  </p>
9975    <p>instr_load_mode =
9976            </p>
9977    <blockquote class="text">
9978    <p>ON_DEMAND
9979                    
9980    </p>
9981    <p>/ ON_DEMAND_HOLD
9982                    
9983    </p>
9984    <p>/ PERSISTENT
9985                    
9986    </p>
9987  </blockquote><p>  </blockquote><p>
9988    
9989  </p>  </p>
# Line 5351  Intellectual Property and Copyright Stat Line 9991  Intellectual Property and Copyright Stat
9991          </p>          </p>
9992  <blockquote class="text">  <blockquote class="text">
9993  <p>number  <p>number
9994                    
9995  </p>  </p>
9996  </blockquote><p>  </blockquote><p>
9997    
# Line 5360  Intellectual Property and Copyright Stat Line 10000  Intellectual Property and Copyright Stat
10000          </p>          </p>
10001  <blockquote class="text">  <blockquote class="text">
10002  <p>number  <p>number
10003                    
10004  </p>  </p>
10005  </blockquote><p>  </blockquote><p>
10006    
# Line 5369  Intellectual Property and Copyright Stat Line 10009  Intellectual Property and Copyright Stat
10009          </p>          </p>
10010  <blockquote class="text">  <blockquote class="text">
10011  <p>string  <p>string
10012                    
10013  </p>  </p>
10014  </blockquote><p>  </blockquote><p>
10015    
# Line 5378  Intellectual Property and Copyright Stat Line 10018  Intellectual Property and Copyright Stat
10018          </p>          </p>
10019  <blockquote class="text">  <blockquote class="text">
10020  <p>number  <p>number
10021                    
10022  </p>  </p>
10023  </blockquote><p>  </blockquote><p>
10024    
# Line 5387  Intellectual Property and Copyright Stat Line 10027  Intellectual Property and Copyright Stat
10027          </p>          </p>
10028  <blockquote class="text">  <blockquote class="text">
10029  <p>number  <p>number
10030                    
10031  </p>  </p>
10032  <p>/ ALL  <p>/ ALL
10033                    
10034  </p>  </p>
10035  </blockquote><p>  </blockquote><p>
10036    
# Line 5399  Intellectual Property and Copyright Stat Line 10039  Intellectual Property and Copyright Stat
10039          </p>          </p>
10040  <blockquote class="text">  <blockquote class="text">
10041  <p>string  <p>string
10042                    
10043    </p>
10044    </blockquote><p>
10045    
10046  </p>  </p>
10047    <p>midi_map =
10048            </p>
10049    <blockquote class="text">
10050    <p>number
10051                    
10052    </p>
10053    </blockquote><p>
10054    
10055    </p>
10056    <p>midi_bank =
10057            </p>
10058    <blockquote class="text">
10059    <p>number
10060                    
10061    </p>
10062    </blockquote><p>
10063    
10064    </p>
10065    <p>midi_prog =
10066            </p>
10067    <blockquote class="text">
10068    <p>number
10069                    
10070    </p>
10071    </blockquote><p>
10072    
10073    </p>
10074    <p>midi_ctrl =
10075            </p>
10076    <blockquote class="text">
10077    <p>number
10078                    
10079    </p>
10080  </blockquote><p>  </blockquote><p>
10081    
10082  </p>  </p>
# Line 5408  Intellectual Property and Copyright Stat Line 10084  Intellectual Property and Copyright Stat
10084          </p>          </p>
10085  <blockquote class="text">  <blockquote class="text">
10086  <p>dotnum  <p>dotnum
10087                    
10088  </p>  </p>
10089  <p>/ number  <p>/ number
10090                    
10091  </p>  </p>
10092  </blockquote><p>  </blockquote><p>
10093    
# Line 5420  Intellectual Property and Copyright Stat Line 10096  Intellectual Property and Copyright Stat
10096          </p>          </p>
10097  <blockquote class="text">  <blockquote class="text">
10098  <p>number  <p>number
10099                    
10100  </p>  </p>
10101  </blockquote><p>  </blockquote><p>
10102    
# Line 5429  Intellectual Property and Copyright Stat Line 10105  Intellectual Property and Copyright Stat
10105          </p>          </p>
10106  <blockquote class="text">  <blockquote class="text">
10107  <p>number  <p>number
10108                    
10109    </p>
10110    </blockquote><p>
10111    
10112  </p>  </p>
10113    <p>fx_send_id =
10114            </p>
10115    <blockquote class="text">
10116    <p>number
10117                    
10118    </p>
10119  </blockquote><p>  </blockquote><p>
10120    
10121  </p>  </p>
# Line 5438  Intellectual Property and Copyright Stat Line 10123  Intellectual Property and Copyright Stat
10123          </p>          </p>
10124  <blockquote class="text">  <blockquote class="text">
10125  <p>string  <p>string
10126                    
10127  </p>  </p>
10128  </blockquote><p>  </blockquote><p>
10129    
# Line 5446  Intellectual Property and Copyright Stat Line 10131  Intellectual Property and Copyright Stat
10131  <p>filename =  <p>filename =
10132          </p>          </p>
10133  <blockquote class="text">  <blockquote class="text">
10134  <p>stringval  <p>path
10135                    
10136    </p>
10137    </blockquote><p>
10138    
10139  </p>  </p>
10140    <p>db_path =
10141            </p>
10142    <blockquote class="text">
10143    <p>path
10144                    
10145    </p>
10146    </blockquote><p>
10147    
10148    </p>
10149    <p>map_name =
10150            </p>
10151    <blockquote class="text">
10152    <p>stringval_escaped
10153                    
10154    </p>
10155    </blockquote><p>
10156    
10157    </p>
10158    <p>entry_name =
10159            </p>
10160    <blockquote class="text">
10161    <p>stringval_escaped
10162                    
10163    </p>
10164    </blockquote><p>
10165    
10166    </p>
10167    <p>fx_send_name =
10168            </p>
10169    <blockquote class="text">
10170    <p>stringval_escaped
10171                    
10172    </p>
10173  </blockquote><p>  </blockquote><p>
10174    
10175  </p>  </p>
# Line 5456  Intellectual Property and Copyright Stat Line 10177  Intellectual Property and Copyright Stat
10177          </p>          </p>
10178  <blockquote class="text">  <blockquote class="text">
10179  <p>param_val  <p>param_val
10180                    
10181  </p>  </p>
10182  <p>/ param_val_list','param_val  <p>/ param_val_list','param_val
10183                    
10184  </p>  </p>
10185  </blockquote><p>  </blockquote><p>
10186    
# Line 5468  Intellectual Property and Copyright Stat Line 10189  Intellectual Property and Copyright Stat
10189          </p>          </p>
10190  <blockquote class="text">  <blockquote class="text">
10191  <p>string  <p>string
10192                    
10193    </p>
10194    <p>/ stringval
10195                    
10196    </p>
10197    <p>/ number
10198                    
10199    </p>
10200    <p>/ dotnum
10201                    
10202    </p>
10203    </blockquote><p>
10204    
10205  </p>  </p>
10206  <p>/ '\'' string '\''  <p>query_val_list =
10207            </p>
10208    <blockquote class="text">
10209    <p>string '=' query_val
10210                    
10211    </p>
10212    <p>/ query_val_list SP string '=' query_val
10213                    
10214    </p>
10215    </blockquote><p>
10216    
10217  </p>  </p>
10218  <p>/ '\"' string '\"'  <p>query_val =
10219            </p>
10220    <blockquote class="text">
10221    <p>text_escaped
10222                    
10223    </p>
10224    <p>/ stringval_escaped
10225                    
10226    </p>
10227    </blockquote><p>
10228    
10229  </p>  </p>
10230  <p>/ number  <p>scan_mode =
10231            </p>
10232    <blockquote class="text">
10233    <p>RECURSIVE
10234                    
10235    </p>
10236    <p>/ NON_RECURSIVE
10237                    
10238    </p>
10239    <p>/ FLAT
10240                    
10241    </p>
10242    </blockquote><p>
10243    
10244  </p>  </p>
10245  <p>/ dotnum  <a name="character_set"></a><br /><hr />
10246    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10247    <a name="rfc.section.7.1"></a><h3>7.1.&nbsp;
10248    Character Set and Escape Sequences</h3>
10249    
10250    <p>Older versions of this protocol up to and including v1.1 only
10251                    supported the standard ASCII character set (ASCII code 0 - 127)
10252                    <a class='info' href='#RFC20'>[RFC20]<span> (</span><span class='info'>UCLA, &ldquo;ASCII format for Network Interchange,&rdquo; 1969.</span><span>)</span></a>, all younger versions of this protocol
10253                    however support the Extended ASCII character set (ASCII code
10254                    0 - 255). The same group of younger protocols also support
10255                    escape sequences, but only for certain, explicitly declared
10256                    parts of the protocol. The supported escape sequences are
10257                    defined as follows:
10258    </p><table class="full" align="center" border="0" cellpadding="2" cellspacing="2">
10259    <col align="left"><col align="left">
10260    <tr><th align="left">ASCII Character Sequence</th><th align="left">Translated into (Name)</th></tr>
10261    <tr>
10262    <td align="left">\n</td>
10263    <td align="left">new line</td>
10264    </tr>
10265    <tr>
10266    <td align="left">\r</td>
10267    <td align="left">carriage return</td>
10268    </tr>
10269    <tr>
10270    <td align="left">\f</td>
10271    <td align="left">form feed</td>
10272    </tr>
10273    <tr>
10274    <td align="left">\t</td>
10275    <td align="left">horizontal tab</td>
10276    </tr>
10277    <tr>
10278    <td align="left">\v</td>
10279    <td align="left">vertical tab</td>
10280    </tr>
10281    <tr>
10282    <td align="left">\'</td>
10283    <td align="left">apostrophe</td>
10284    </tr>
10285    <tr>
10286    <td align="left">\"</td>
10287    <td align="left">quotation mark</td>
10288    </tr>
10289    <tr>
10290    <td align="left">\\</td>
10291    <td align="left">backslash</td>
10292    </tr>
10293    <tr>
10294    <td align="left">\OOO</td>
10295    <td align="left">three digit octal ASCII code of the character</td>
10296    </tr>
10297    <tr>
10298    <td align="left">\xHH</td>
10299    <td align="left">two digit hex ASCII code of the character</td>
10300    </tr>
10301    </table>
10302    
10303    <p>Notice: due to the transition of certain parts of the
10304                    protocol which now support escape sequences, a slight backward
10305                    incompatibility to protocols version v1.1 and younger has been
10306                    introduced. The only difference is that in parts of the protocol
10307                    where escape characters are now supported, a backslash characters
10308                    MUST be escaped as well (that is as double backslash), whereas
10309                    in the old versions a single backslash was sufficient.
10310    </p>
10311    <p>The following LSCP commands support escape sequences as part
10312                    of their filename / path based arguments:
10313                    </p>
10314    <blockquote class="text">
10315    <p><a class='info' href='#LOAD INSTRUMENT'>"LOAD INSTRUMENT"<span> (</span><span class='info'>Loading an instrument</span><span>)</span></a>
10316    </p>
10317    <p><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>
10318    </p>
10319    <p><a class='info' href='#ADD DB_INSTRUMENT_DIRECTORY'>"ADD DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Creating a new instrument directory</span><span>)</span></a>
10320    </p>
10321    <p><a class='info' href='#ADD DB_INSTRUMENTS'>"ADD DB_INSTRUMENTS"<span> (</span><span class='info'>Adding instruments to the instruments database</span><span>)</span></a>
10322    </p>
10323    <p><a class='info' href='#REMOVE DB_INSTRUMENT_DIRECTORY'>"REMOVE DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Deleting an instrument directory</span><span>)</span></a>
10324    </p>
10325    <p><a class='info' href='#REMOVE DB_INSTRUMENT'>"REMOVE DB_INSTRUMENT"<span> (</span><span class='info'>Removing an instrument</span><span>)</span></a>
10326    </p>
10327    <p><a class='info' href='#GET DB_INSTRUMENT_DIRECTORIES'>"GET DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Getting amount of instrument directories</span><span>)</span></a>
10328    </p>
10329    <p><a class='info' href='#LIST DB_INSTRUMENT_DIRECTORIES'>"LIST DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Listing all directories in specific directory</span><span>)</span></a>
10330    </p>
10331    <p><a class='info' href='#GET DB_INSTRUMENT_DIRECTORY INFO'>"GET DB_INSTRUMENT_DIRECTORY INFO"<span> (</span><span class='info'>Getting instrument directory information</span><span>)</span></a>
10332    </p>
10333    <p><a class='info' href='#GET DB_INSTRUMENTS'>"GET DB_INSTRUMENTS"<span> (</span><span class='info'>Getting amount of instruments</span><span>)</span></a>
10334    </p>
10335    <p><a class='info' href='#LIST DB_INSTRUMENTS'>"LIST DB_INSTRUMENTS"<span> (</span><span class='info'>Listing all instruments in specific directory</span><span>)</span></a>
10336    </p>
10337    <p><a class='info' href='#GET DB_INSTRUMENT INFO'>"GET DB_INSTRUMENT INFO"<span> (</span><span class='info'>Getting instrument information</span><span>)</span></a>
10338    </p>
10339    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY NAME'>"SET DB_INSTRUMENT_DIRECTORY NAME"<span> (</span><span class='info'>Renaming an instrument directory</span><span>)</span></a>
10340    </p>
10341    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY DESCRIPTION'>"SET DB_INSTRUMENT_DIRECTORY DESCRIPTION"<span> (</span><span class='info'>Changing the description of directory</span><span>)</span></a>
10342    </p>
10343    <p><a class='info' href='#SET DB_INSTRUMENT NAME'>"SET DB_INSTRUMENT NAME"<span> (</span><span class='info'>Renaming an instrument</span><span>)</span></a>
10344    </p>
10345    <p><a class='info' href='#SET DB_INSTRUMENT DESCRIPTION'>"SET DB_INSTRUMENT DESCRIPTION"<span> (</span><span class='info'>Changing the description of instrument</span><span>)</span></a>
10346    </p>
10347    <p><a class='info' href='#FIND DB_INSTRUMENTS'>"FIND DB_INSTRUMENTS"<span> (</span><span class='info'>Finding instruments</span><span>)</span></a>
10348    </p>
10349    <p><a class='info' href='#FIND DB_INSTRUMENT_DIRECTORIES'>"FIND DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Finding directories</span><span>)</span></a>
10350    </p>
10351    <p><a class='info' href='#MOVE DB_INSTRUMENT'>"MOVE DB_INSTRUMENT"<span> (</span><span class='info'>Moving an instrument</span><span>)</span></a>
10352    </p>
10353    <p><a class='info' href='#MOVE DB_INSTRUMENT_DIRECTORY'>"MOVE DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Moving an instrument directory</span><span>)</span></a>
10354    </p>
10355    <p><a class='info' href='#COPY DB_INSTRUMENT'>"COPY DB_INSTRUMENT"<span> (</span><span class='info'>Copying instruments</span><span>)</span></a>
10356    </p>
10357    <p><a class='info' href='#COPY DB_INSTRUMENT_DIRECTORY'>"COPY DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Copying instrument directories</span><span>)</span></a>
10358  </p>  </p>
10359  </blockquote><p>  </blockquote><p>
10360                    Note that the forward slash character ('/') has a special meaning in
10361                    filename / path based arguments: it acts as separator of the nodes in
10362                    the path, thus if a directory- or filename includes a forward slash
10363                    (not intended as path node separator), you MUST escape that slash
10364                    either with the respective hex escape sequence ("\x2f") or with the
10365                    respective octal escape sequence ("\057").
10366                    
10367    </p>
10368    <p>
10369                    The following LSCP commands even support escape sequences as
10370                    part of at least one of their text-based arguments (i.e. entity name,
10371                    description):
10372                    </p>
10373    <blockquote class="text">
10374    <p><a class='info' href='#ADD MIDI_INSTRUMENT_MAP'>"ADD MIDI_INSTRUMENT_MAP"<span> (</span><span class='info'>Create a new MIDI instrument map</span><span>)</span></a>
10375    </p>
10376    <p><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>
10377    </p>
10378    <p><a class='info' href='#SET MIDI_INSTRUMENT_MAP NAME'>"SET MIDI_INSTRUMENT_MAP NAME"<span> (</span><span class='info'>Renaming a MIDI instrument map</span><span>)</span></a>
10379    </p>
10380    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY NAME'>"SET DB_INSTRUMENT_DIRECTORY NAME"<span> (</span><span class='info'>Renaming an instrument directory</span><span>)</span></a>
10381    </p>
10382    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY DESCRIPTION'>"SET DB_INSTRUMENT_DIRECTORY DESCRIPTION"<span> (</span><span class='info'>Changing the description of directory</span><span>)</span></a>
10383    </p>
10384    <p><a class='info' href='#SET DB_INSTRUMENT NAME'>"SET DB_INSTRUMENT NAME"<span> (</span><span class='info'>Renaming an instrument</span><span>)</span></a>
10385    </p>
10386    <p><a class='info' href='#SET DB_INSTRUMENT DESCRIPTION'>"SET DB_INSTRUMENT DESCRIPTION"<span> (</span><span class='info'>Changing the description of instrument</span><span>)</span></a>
10387    </p>
10388    <p><a class='info' href='#FIND DB_INSTRUMENT_DIRECTORIES'>"FIND DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Finding directories</span><span>)</span></a>
10389    </p>
10390    </blockquote><p>
10391                    Please note that these lists are manually maintained. If you
10392                    find a command that also supports escape sequences we forgot to
10393                    mention here, please report it!
10394                    
10395  </p>  </p>
10396  <a name="events"></a><br /><hr />  <a name="events"></a><br /><hr />
10397  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10398  <a name="rfc.section.8"></a><h3>8.&nbsp;Events</h3>  <a name="rfc.section.8"></a><h3>8.&nbsp;
10399    Events</h3>
10400    
10401  <p>This chapter will describe all currently defined events supported by LinuxSampler.  <p>This chapter will describe all currently defined events supported by LinuxSampler.
10402  </p>  </p>
10403  <a name="rfc.section.8.1"></a><h4><a name="SUBSCRIBE CHANNEL">8.1</a>&nbsp;Number of sampler channels changed</h4>  <a name="SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT"></a><br /><hr />
10404    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10405    <a name="rfc.section.8.1"></a><h3>8.1.&nbsp;
10406    Number of audio output devices changed</h3>
10407    
10408    <p>Client may want to be notified when the total number of audio output devices on the
10409                    back-end changes by issuing the following command:
10410    </p>
10411    <p>
10412                        </p>
10413    <blockquote class="text">
10414    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT
10415    </p>
10416    </blockquote><p>
10417                    
10418    </p>
10419    <p>Server will start sending the following notification messages:
10420    </p>
10421    <p>
10422                        </p>
10423    <blockquote class="text">
10424    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_COUNT:&lt;devices&gt;"
10425    </p>
10426    </blockquote><p>
10427                    
10428    </p>
10429    <p>where &lt;devices&gt; will be replaced by the new number
10430                    of audio output devices.
10431    </p>
10432    <a name="SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO"></a><br /><hr />
10433    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10434    <a name="rfc.section.8.2"></a><h3>8.2.&nbsp;
10435    Audio output device's settings changed</h3>
10436    
10437    <p>Client may want to be notified when changes were made to audio output devices on the
10438                    back-end by issuing the following command:
10439    </p>
10440    <p>
10441                        </p>
10442    <blockquote class="text">
10443    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO
10444    </p>
10445    </blockquote><p>
10446                    
10447    </p>
10448    <p>Server will start sending the following notification messages:
10449    </p>
10450    <p>
10451                        </p>
10452    <blockquote class="text">
10453    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_INFO:&lt;device-id&gt;"
10454    </p>
10455    </blockquote><p>
10456                    
10457    </p>
10458    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the audio output device,
10459                    which settings has been changed. The front-end will have to send
10460                    the respective command to actually get the audio output device info. Because these messages
10461                    will be triggered by LSCP commands issued by other clients rather than real
10462                    time events happening on the server, it is believed that an empty notification
10463                    message is sufficient here.
10464    </p>
10465    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_COUNT"></a><br /><hr />
10466    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10467    <a name="rfc.section.8.3"></a><h3>8.3.&nbsp;
10468    Number of MIDI input devices changed</h3>
10469    
10470    <p>Client may want to be notified when the total number of MIDI input devices on the
10471                    back-end changes by issuing the following command:
10472    </p>
10473    <p>
10474                        </p>
10475    <blockquote class="text">
10476    <p>SUBSCRIBE MIDI_INPUT_DEVICE_COUNT
10477    </p>
10478    </blockquote><p>
10479                    
10480    </p>
10481    <p>Server will start sending the following notification messages:
10482    </p>
10483    <p>
10484                        </p>
10485    <blockquote class="text">
10486    <p>"NOTIFY:MIDI_INPUT_DEVICE_COUNT:&lt;devices&gt;"
10487    </p>
10488    </blockquote><p>
10489                    
10490    </p>
10491    <p>where &lt;devices&gt; will be replaced by the new number
10492                    of MIDI input devices.
10493    </p>
10494    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_INFO"></a><br /><hr />
10495    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10496    <a name="rfc.section.8.4"></a><h3>8.4.&nbsp;
10497    MIDI input device's settings changed</h3>
10498    
10499    <p>Client may want to be notified when changes were made to MIDI input devices on the
10500                    back-end by issuing the following command:
10501    </p>
10502    <p>
10503                        </p>
10504    <blockquote class="text">
10505    <p>SUBSCRIBE MIDI_INPUT_DEVICE_INFO
10506    </p>
10507    </blockquote><p>
10508                    
10509    </p>
10510    <p>Server will start sending the following notification messages:
10511    </p>
10512    <p>
10513                        </p>
10514    <blockquote class="text">
10515    <p>"NOTIFY:MIDI_INPUT_DEVICE_INFO:&lt;device-id&gt;"
10516    </p>
10517    </blockquote><p>
10518                    
10519    </p>
10520    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the MIDI input device,
10521                    which settings has been changed. The front-end will have to send
10522                    the respective command to actually get the MIDI input device info. Because these messages
10523                    will be triggered by LSCP commands issued by other clients rather than real
10524                    time events happening on the server, it is believed that an empty notification
10525                    message is sufficient here.
10526    </p>
10527    <a name="SUBSCRIBE CHANNEL_COUNT"></a><br /><hr />
10528    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10529    <a name="rfc.section.8.5"></a><h3>8.5.&nbsp;
10530    Number of sampler channels changed</h3>
10531    
10532  <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
10533                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
# Line 5502  Intellectual Property and Copyright Stat Line 10538  Intellectual Property and Copyright Stat
10538  <p>SUBSCRIBE CHANNEL_COUNT  <p>SUBSCRIBE CHANNEL_COUNT
10539  </p>  </p>
10540  </blockquote><p>  </blockquote><p>
10541                    
10542  </p>  </p>
10543  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
10544  </p>  </p>
# Line 5512  Intellectual Property and Copyright Stat Line 10548  Intellectual Property and Copyright Stat
10548  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"
10549  </p>  </p>
10550  </blockquote><p>  </blockquote><p>
10551                    
10552  </p>  </p>
10553  <p>where &lt;channels&gt; will be replaced by the new number  <p>where &lt;channels&gt; will be replaced by the new number
10554                  of sampler channels.                  of sampler channels.
10555  </p>  </p>
10556  <a name="rfc.section.8.2"></a><h4><a name="SUBSCRIBE VOICE_COUNT">8.2</a>&nbsp;Number of active voices changed</h4>  <a name="SUBSCRIBE VOICE_COUNT"></a><br /><hr />
10557    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10558    <a name="rfc.section.8.6"></a><h3>8.6.&nbsp;
10559    Number of active voices changed</h3>
10560    
10561  <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
10562                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
# Line 5528  Intellectual Property and Copyright Stat Line 10567  Intellectual Property and Copyright Stat
10567  <p>SUBSCRIBE VOICE_COUNT  <p>SUBSCRIBE VOICE_COUNT
10568  </p>  </p>
10569  </blockquote><p>  </blockquote><p>
10570                    
10571  </p>  </p>
10572  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
10573  </p>  </p>
10574  <p>  <p>
10575                      </p>                      </p>
10576  <blockquote class="text">  <blockquote class="text">
10577  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;"
10578  </p>  </p>
10579  </blockquote><p>  </blockquote><p>
10580                    
10581  </p>  </p>
10582  <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
10583                  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
10584                  active voices on that channel.                  active voices on that channel.
10585  </p>  </p>
10586  <a name="rfc.section.8.3"></a><h4><a name="SUBSCRIBE STREAM_COUNT">8.3</a>&nbsp;Number of active disk streams changed</h4>  <a name="SUBSCRIBE STREAM_COUNT"></a><br /><hr />
10587    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10588    <a name="rfc.section.8.7"></a><h3>8.7.&nbsp;
10589    Number of active disk streams changed</h3>
10590    
10591  <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
10592                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT
# Line 5555  Intellectual Property and Copyright Stat Line 10597  Intellectual Property and Copyright Stat
10597  <p>SUBSCRIBE STREAM_COUNT  <p>SUBSCRIBE STREAM_COUNT
10598  </p>  </p>
10599  </blockquote><p>  </blockquote><p>
10600                    
10601  </p>  </p>
10602  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
10603  </p>  </p>
# Line 5565  Intellectual Property and Copyright Stat Line 10607  Intellectual Property and Copyright Stat
10607  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"
10608  </p>  </p>
10609  </blockquote><p>  </blockquote><p>
10610                    
10611  </p>  </p>
10612  <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
10613                  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
10614                  active disk streams on that channel.                  active disk streams on that channel.
10615  </p>  </p>
10616  <a name="rfc.section.8.4"></a><h4><a name="SUBSCRIBE BUFFER_FILL">8.4</a>&nbsp;Disk stream buffer fill state changed</h4>  <a name="SUBSCRIBE BUFFER_FILL"></a><br /><hr />
10617    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10618    <a name="rfc.section.8.8"></a><h3>8.8.&nbsp;
10619    Disk stream buffer fill state changed</h3>
10620    
10621  <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
10622                  on the back-end changes by issuing the following command:                  on the back-end changes by issuing the following command:
# Line 5582  Intellectual Property and Copyright Stat Line 10627  Intellectual Property and Copyright Stat
10627  <p>SUBSCRIBE BUFFER_FILL  <p>SUBSCRIBE BUFFER_FILL
10628  </p>  </p>
10629  </blockquote><p>  </blockquote><p>
10630                    
10631  </p>  </p>
10632  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
10633  </p>  </p>
# Line 5592  Intellectual Property and Copyright Stat Line 10637  Intellectual Property and Copyright Stat
10637  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"
10638  </p>  </p>
10639  </blockquote><p>  </blockquote><p>
10640                    
10641  </p>  </p>
10642  <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
10643                  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
10644                  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>                  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>
10645                  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.                  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.
10646  </p>  </p>
10647  <a name="rfc.section.8.5"></a><h4><a name="SUBSCRIBE INFO">8.5</a>&nbsp;Channel information changed</h4>  <a name="SUBSCRIBE CHANNEL_INFO"></a><br /><hr />
10648    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10649    <a name="rfc.section.8.9"></a><h3>8.9.&nbsp;
10650    Channel information changed</h3>
10651    
10652  <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
10653                  back-end by issuing the following command:                  back-end by issuing the following command:
# Line 5610  Intellectual Property and Copyright Stat Line 10658  Intellectual Property and Copyright Stat
10658  <p>SUBSCRIBE CHANNEL_INFO  <p>SUBSCRIBE CHANNEL_INFO
10659  </p>  </p>
10660  </blockquote><p>  </blockquote><p>
10661                    
10662  </p>  </p>
10663  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
10664  </p>  </p>
# Line 5620  Intellectual Property and Copyright Stat Line 10668  Intellectual Property and Copyright Stat
10668  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"
10669  </p>  </p>
10670  </blockquote><p>  </blockquote><p>
10671                    
10672  </p>  </p>
10673  <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
10674                  channel info change occurred. The front-end will have to send                  channel info change occurred. The front-end will have to send
# Line 5629  Intellectual Property and Copyright Stat Line 10677  Intellectual Property and Copyright Stat
10677                  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
10678                  message is sufficient here.                  message is sufficient here.
10679  </p>  </p>
10680  <a name="rfc.section.8.6"></a><h4><a name="SUBSCRIBE MISCELLANEOUS">8.6</a>&nbsp;Miscellaneous and debugging events</h4>  <a name="SUBSCRIBE FX_SEND_COUNT"></a><br /><hr />
10681    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10682    <a name="rfc.section.8.10"></a><h3>8.10.&nbsp;
10683    Number of effect sends changed</h3>
10684    
10685    <p>Client may want to be notified when the number of effect sends on
10686                    a particular sampler channel is changed by issuing the following command:
10687    </p>
10688    <p>
10689                        </p>
10690    <blockquote class="text">
10691    <p>SUBSCRIBE FX_SEND_COUNT
10692    </p>
10693    </blockquote><p>
10694                    
10695    </p>
10696    <p>Server will start sending the following notification messages:
10697    </p>
10698    <p>
10699                        </p>
10700    <blockquote class="text">
10701    <p>"NOTIFY:FX_SEND_COUNT:&lt;channel-id&gt; &lt;fx-sends&gt;"
10702    </p>
10703    </blockquote><p>
10704                    
10705    </p>
10706    <p>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
10707                    channel, on which the effect sends number is changed and &lt;fx-sends&gt; will
10708                    be replaced by the new number of effect sends on that channel.
10709    </p>
10710    <a name="SUBSCRIBE FX_SEND_INFO"></a><br /><hr />
10711    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10712    <a name="rfc.section.8.11"></a><h3>8.11.&nbsp;
10713    Effect send information changed</h3>
10714    
10715    <p>Client may want to be notified when changes were made to effect sends on a
10716                    a particular sampler channel by issuing the following command:
10717    </p>
10718    <p>
10719                        </p>
10720    <blockquote class="text">
10721    <p>SUBSCRIBE FX_SEND_INFO
10722    </p>
10723    </blockquote><p>
10724                    
10725    </p>
10726    <p>Server will start sending the following notification messages:
10727    </p>
10728    <p>
10729                        </p>
10730    <blockquote class="text">
10731    <p>"NOTIFY:FX_SEND_INFO:&lt;channel-id&gt; &lt;fx-send-id&gt;"
10732    </p>
10733    </blockquote><p>
10734                    
10735    </p>
10736    <p>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
10737                    channel, on which an effect send entity is changed and &lt;fx-send-id&gt; will
10738                    be replaced by the numerical ID of the changed effect send.
10739    </p>
10740    <a name="SUBSCRIBE TOTAL_VOICE_COUNT"></a><br /><hr />
10741    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10742    <a name="rfc.section.8.12"></a><h3>8.12.&nbsp;
10743    Total number of active voices changed</h3>
10744    
10745    <p>Client may want to be notified when the total number of voices on the
10746                    back-end changes by issuing the following command:
10747    </p>
10748    <p>
10749                        </p>
10750    <blockquote class="text">
10751    <p>SUBSCRIBE TOTAL_VOICE_COUNT
10752    </p>
10753    </blockquote><p>
10754                    
10755    </p>
10756    <p>Server will start sending the following notification messages:
10757    </p>
10758    <p>
10759                        </p>
10760    <blockquote class="text">
10761    <p>"NOTIFY:TOTAL_VOICE_COUNT:&lt;voices&gt;"
10762    </p>
10763    </blockquote><p>
10764                    
10765    </p>
10766    <p>where &lt;voices&gt; will be replaced by the new number of
10767                    all currently active voices.
10768    </p>
10769    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT"></a><br /><hr />
10770    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10771    <a name="rfc.section.8.13"></a><h3>8.13.&nbsp;
10772    Number of MIDI instrument maps changed</h3>
10773    
10774    <p>Client may want to be notified when the number of MIDI instrument maps on the
10775                    back-end changes by issuing the following command:
10776    </p>
10777    <p>
10778                        </p>
10779    <blockquote class="text">
10780    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT
10781    </p>
10782    </blockquote><p>
10783                    
10784    </p>
10785    <p>Server will start sending the following notification messages:
10786    </p>
10787    <p>
10788                        </p>
10789    <blockquote class="text">
10790    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_COUNT:&lt;maps&gt;"
10791    </p>
10792    </blockquote><p>
10793                    
10794    </p>
10795    <p>where &lt;maps&gt; will be replaced by the new number
10796                    of MIDI instrument maps.
10797    </p>
10798    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO"></a><br /><hr />
10799    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10800    <a name="rfc.section.8.14"></a><h3>8.14.&nbsp;
10801    MIDI instrument map information changed</h3>
10802    
10803    <p>Client may want to be notified when changes were made to MIDI instrument maps on the
10804                    back-end by issuing the following command:
10805    </p>
10806    <p>
10807                        </p>
10808    <blockquote class="text">
10809    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO
10810    </p>
10811    </blockquote><p>
10812                    
10813    </p>
10814    <p>Server will start sending the following notification messages:
10815    </p>
10816    <p>
10817                        </p>
10818    <blockquote class="text">
10819    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_INFO:&lt;map-id&gt;"
10820    </p>
10821    </blockquote><p>
10822                    
10823    </p>
10824    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
10825                    for which information changes occurred. The front-end will have to send
10826                    the respective command to actually get the MIDI instrument map info. Because these messages
10827                    will be triggered by LSCP commands issued by other clients rather than real
10828                    time events happening on the server, it is believed that an empty notification
10829                    message is sufficient here.
10830    </p>
10831    <a name="SUBSCRIBE MIDI_INSTRUMENT_COUNT"></a><br /><hr />
10832    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10833    <a name="rfc.section.8.15"></a><h3>8.15.&nbsp;
10834    Number of MIDI instruments changed</h3>
10835    
10836    <p>Client may want to be notified when the number of MIDI instrument maps on the
10837                    back-end changes by issuing the following command:
10838    </p>
10839    <p>
10840                        </p>
10841    <blockquote class="text">
10842    <p>SUBSCRIBE MIDI_INSTRUMENT_COUNT
10843    </p>
10844    </blockquote><p>
10845                    
10846    </p>
10847    <p>Server will start sending the following notification messages:
10848    </p>
10849    <p>
10850                        </p>
10851    <blockquote class="text">
10852    <p>"NOTIFY:MIDI_INSTRUMENT_COUNT:&lt;map-id&gt; &lt;instruments&gt;"
10853    </p>
10854    </blockquote><p>
10855                    
10856    </p>
10857    <p>where &lt;map-id&gt; is the numerical ID of the MIDI instrument map, in which
10858                    the nuber of instruments has changed and &lt;instruments&gt; will be replaced by
10859                    the new number of MIDI instruments in the specified map.
10860    </p>
10861    <a name="SUBSCRIBE MIDI_INSTRUMENT_INFO"></a><br /><hr />
10862    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10863    <a name="rfc.section.8.16"></a><h3>8.16.&nbsp;
10864    MIDI instrument information changed</h3>
10865    
10866    <p>Client may want to be notified when changes were made to MIDI instruments on the
10867                    back-end by issuing the following command:
10868    </p>
10869    <p>
10870                        </p>
10871    <blockquote class="text">
10872    <p>SUBSCRIBE MIDI_INSTRUMENT_INFO
10873    </p>
10874    </blockquote><p>
10875                    
10876    </p>
10877    <p>Server will start sending the following notification messages:
10878    </p>
10879    <p>
10880                        </p>
10881    <blockquote class="text">
10882    <p>"NOTIFY:MIDI_INSTRUMENT_INFO:&lt;map-id&gt; &lt;bank&gt; &lt;program&gt;"
10883    </p>
10884    </blockquote><p>
10885                    
10886    </p>
10887    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
10888                    in which a MIDI instrument is changed. &lt;bank&gt; and &lt;program&gt; specifies
10889                    the location of the changed MIDI instrument in the map. The front-end will have to send
10890                    the respective command to actually get the MIDI instrument info. Because these messages
10891                    will be triggered by LSCP commands issued by other clients rather than real
10892                    time events happening on the server, it is believed that an empty notification
10893                    message is sufficient here.
10894    </p>
10895    <a name="SUBSCRIBE GLOBAL_INFO"></a><br /><hr />
10896    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10897    <a name="rfc.section.8.17"></a><h3>8.17.&nbsp;
10898    Global settings changed</h3>
10899    
10900    <p>Client may want to be notified when changes to the global settings
10901                    of the sampler were made by issuing the following command:
10902    </p>
10903    <p>
10904                        </p>
10905    <blockquote class="text">
10906    <p>SUBSCRIBE GLOBAL_INFO
10907    </p>
10908    </blockquote><p>
10909                    
10910    </p>
10911    <p>Server will start sending the following types of notification messages:
10912    </p>
10913    <p>
10914                        </p>
10915    <blockquote class="text">
10916    <p>"NOTIFY:GLOBAL_INFO:VOLUME &lt;volume&gt;" - Notifies that the
10917                            golbal volume of the sampler is changed, where &lt;volume&gt; will be
10918                            replaced by the optional dotted floating point value, reflecting the
10919                            new global volume parameter.
10920    </p>
10921    </blockquote><p>
10922                    
10923    </p>
10924    <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT"></a><br /><hr />
10925    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10926    <a name="rfc.section.8.18"></a><h3>8.18.&nbsp;
10927    Number of database instrument directories changed</h3>
10928    
10929    <p>Client may want to be notified when the number of instrument
10930                    directories in a particular directory in the instruments database
10931                    is changed by issuing the following command:
10932    </p>
10933    <p>
10934                        </p>
10935    <blockquote class="text">
10936    <p>SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT
10937    </p>
10938    </blockquote><p>
10939                    
10940    </p>
10941    <p>Server will start sending the following notification messages:
10942    </p>
10943    <p>
10944                        </p>
10945    <blockquote class="text">
10946    <p>"NOTIFY:DB_INSTRUMENT_DIRECTORY_COUNT:&lt;dir-path&gt;"
10947    </p>
10948    </blockquote><p>
10949                    
10950    </p>
10951    <p>where &lt;dir-path&gt; will be replaced by the absolute path
10952                    name of the directory in the instruments database,
10953                    in which the number of directories is changed.
10954    </p>
10955    <p>Note that when a non-empty directory is removed, this event
10956                    is not sent for the subdirectories in that directory.
10957    </p>
10958    <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO"></a><br /><hr />
10959    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
10960    <a name="rfc.section.8.19"></a><h3>8.19.&nbsp;
10961    Database instrument directory information changed</h3>
10962    
10963    <p>Client may want to be notified when changes were made to directories
10964                    in the instruments database by issuing the following command:
10965    </p>
10966    <p>
10967                        </p>
10968    <blockquote class="text">
10969    <p>SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO
10970    </p>
10971    </blockquote><p>
10972                    
10973    </p>
10974    <p>Server will start sending the following notification messages:
10975    </p>
10976    <p>
10977                        </p>
10978    <blockquote class="text">
10979    <p>"NOTIFY:DB_INSTRUMENT_DIRECTORY_INFO:&lt;dir-path&gt;"
10980    </p>
10981    </blockquote><p>
10982                    
10983    </p>
10984    <p>where &lt;dir-path&gt; will be replaced by the absolute path name
10985                    of the directory, for which information changes occurred. The front-end will have to send
10986                    the respective command to actually get the updated directory info. Because these messages
10987                    will be triggered by LSCP commands issued by other clients rather than real
10988                    time events happening on the server, it is believed that an empty notification
10989                    message is sufficient here.
10990    </p>
10991    <p>
10992                        </p>
10993    <blockquote class="text">
10994    <p>"NOTIFY:DB_INSTRUMENT_DIRECTORY_INFO:NAME &lt;old-dir-path&gt; &lt;new-name&gt;"
10995    </p>
10996    </blockquote><p>
10997                    
10998    </p>
10999    <p>where &lt;old-dir-path&gt; is the old absolute path name of the directory
11000                    (encapsulated into apostrophes), which name is changes and &lt;new-name&gt; is
11001                    the new name of the directory, encapsulated into apostrophes.
11002    </p>
11003    <a name="SUBSCRIBE DB_INSTRUMENT_COUNT"></a><br /><hr />
11004    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11005    <a name="rfc.section.8.20"></a><h3>8.20.&nbsp;
11006    Number of database instruments changed</h3>
11007    
11008    <p>Client may want to be notified when the number of instruments
11009                    in a particular directory in the instruments database
11010                    is changed by issuing the following command:
11011    </p>
11012    <p>
11013                        </p>
11014    <blockquote class="text">
11015    <p>SUBSCRIBE DB_INSTRUMENT_COUNT
11016    </p>
11017    </blockquote><p>
11018                    
11019    </p>
11020    <p>Server will start sending the following notification messages:
11021    </p>
11022    <p>
11023                        </p>
11024    <blockquote class="text">
11025    <p>"NOTIFY:DB_INSTRUMENT_COUNT:&lt;dir-path&gt;"
11026    </p>
11027    </blockquote><p>
11028                    
11029    </p>
11030    <p>where &lt;dir-path&gt; will be replaced by the absolute path
11031                    name of the directory in the instruments database,
11032                    in which the number of instruments is changed.
11033    </p>
11034    <p>Note that when a non-empty directory is removed, this event
11035                    is not sent for the instruments in that directory.
11036    </p>
11037    <a name="SUBSCRIBE DB_INSTRUMENT_INFO"></a><br /><hr />
11038    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11039    <a name="rfc.section.8.21"></a><h3>8.21.&nbsp;
11040    Database instrument information changed</h3>
11041    
11042    <p>Client may want to be notified when changes were made to instruments
11043                    in the instruments database by issuing the following command:
11044    </p>
11045    <p>
11046                        </p>
11047    <blockquote class="text">
11048    <p>SUBSCRIBE DB_INSTRUMENT_INFO
11049    </p>
11050    </blockquote><p>
11051                    
11052    </p>
11053    <p>Server will start sending the following notification messages:
11054    </p>
11055    <p>
11056                        </p>
11057    <blockquote class="text">
11058    <p>"NOTIFY:DB_INSTRUMENT_INFO:&lt;instr-path&gt;"
11059    </p>
11060    </blockquote><p>
11061                    
11062    </p>
11063    <p>where &lt;instr-path&gt; will be replaced by the absolute path name
11064                    of the instrument, which settings are changed. The front-end will have to send
11065                    the respective command to actually get the updated directory info. Because these messages
11066                    will be triggered by LSCP commands issued by other clients rather than real
11067                    time events happening on the server, it is believed that an empty notification
11068                    message is sufficient here.
11069    </p>
11070    <p>
11071                        </p>
11072    <blockquote class="text">
11073    <p>"NOTIFY:DB_INSTRUMENT_INFO:NAME &lt;old-instr-path&gt; &lt;new-name&gt;"
11074    </p>
11075    </blockquote><p>
11076                    
11077    </p>
11078    <p>where &lt;old-instr-path&gt; is the old absolute path name of the instrument
11079                    (encapsulated into apostrophes), which name is changes and &lt;new-name&gt; is
11080                    the new name of the instrument, encapsulated into apostrophes.
11081    </p>
11082    <a name="SUBSCRIBE DB_INSTRUMENTS_JOB_INFO"></a><br /><hr />
11083    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11084    <a name="rfc.section.8.22"></a><h3>8.22.&nbsp;
11085    Database job status information changed</h3>
11086    
11087    <p>Client may want to be notified when the status of particular database
11088                    instruments job is changed by issuing the following command:
11089    </p>
11090    <p>
11091                        </p>
11092    <blockquote class="text">
11093    <p>SUBSCRIBE DB_INSTRUMENTS_JOB_INFO
11094    </p>
11095    </blockquote><p>
11096                    
11097    </p>
11098    <p>Server will start sending the following notification messages:
11099    </p>
11100    <p>
11101                        </p>
11102    <blockquote class="text">
11103    <p>"NOTIFY:DB_INSTRUMENTS_JOB_INFO:&lt;job-id&gt;"
11104    </p>
11105    </blockquote><p>
11106                    
11107    </p>
11108    <p>where &lt;job-id&gt; will be replaced by the numerical ID of the job,
11109                    which status is changed. The front-end will have to send the respective
11110                    command to actually get the status info. Because these messages
11111                    will be triggered by LSCP commands issued by other clients rather than real
11112                    time events happening on the server, it is believed that an empty notification
11113                    message is sufficient here.
11114    </p>
11115    <a name="SUBSCRIBE MISCELLANEOUS"></a><br /><hr />
11116    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11117    <a name="rfc.section.8.23"></a><h3>8.23.&nbsp;
11118    Miscellaneous and debugging events</h3>
11119    
11120  <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
11121                  the server by issuing the following command:                  the server by issuing the following command:
# Line 5640  Intellectual Property and Copyright Stat Line 11126  Intellectual Property and Copyright Stat
11126  <p>SUBSCRIBE MISCELLANEOUS  <p>SUBSCRIBE MISCELLANEOUS
11127  </p>  </p>
11128  </blockquote><p>  </blockquote><p>
11129                    
11130  </p>  </p>
11131  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
11132  </p>  </p>
# Line 5650  Intellectual Property and Copyright Stat Line 11136  Intellectual Property and Copyright Stat
11136  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"
11137  </p>  </p>
11138  </blockquote><p>  </blockquote><p>
11139                    
11140  </p>  </p>
11141  <p>where &lt;string&gt; will be replaced by whatever data server  <p>where &lt;string&gt; will be replaced by whatever data server
11142                  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
11143                  user AS IS to facilitate debugging.                  user AS IS to facilitate debugging.
11144  </p>  </p>
11145  <a name="anchor14"></a><br /><hr />  <a name="anchor14"></a><br /><hr />
11146  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11147  <a name="rfc.section.9"></a><h3>9.&nbsp;Security Considerations</h3>  <a name="rfc.section.9"></a><h3>9.&nbsp;
11148    Security Considerations</h3>
11149    
11150  <p>As there is so far no method of authentication and authorization  <p>As there is so far no method of authentication and authorization
11151              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 5666  Intellectual Property and Copyright Stat Line 11153  Intellectual Property and Copyright Stat
11153              system the LinuxSampler instance is running on.              system the LinuxSampler instance is running on.
11154  </p>  </p>
11155  <a name="anchor15"></a><br /><hr />  <a name="anchor15"></a><br /><hr />
11156  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11157  <a name="rfc.section.10"></a><h3>10.&nbsp;Acknowledgments</h3>  <a name="rfc.section.10"></a><h3>10.&nbsp;
11158    Acknowledgments</h3>
11159    
11160  <p>This document has benefited greatly from the comments of the  <p>This document has benefited greatly from the comments of the
11161              following people, discussed on the LinuxSampler developer's mailing              following people, discussed on the LinuxSampler developer's mailing
# Line 5685  Intellectual Property and Copyright Stat Line 11173  Intellectual Property and Copyright Stat
11173  <p>Grigor Iliev  <p>Grigor Iliev
11174  </p>  </p>
11175  </blockquote><p>  </blockquote><p>
11176                
11177  </p>  </p>
11178  <a name="rfc.references1"></a><br /><hr />  <a name="rfc.references1"></a><br /><hr />
11179  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11180  <h3>11.&nbsp;References</h3>  <h3>11.&nbsp;References</h3>
11181  <table width="99%" border="0">  <table width="99%" border="0">
11182    <tr><td class="author-text" valign="top"><a name="RFC20">[RFC20]</a></td>
11183    <td class="author-text">UCLA, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc20.txt">ASCII format for Network Interchange</a>,&rdquo; RFC&nbsp;20, 1969.</td></tr>
11184  <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>
11185  <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>  <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>
11186  <tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td>  <tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td>
# Line 5700  Intellectual Property and Copyright Stat Line 11190  Intellectual Property and Copyright Stat
11190  </table>  </table>
11191    
11192  <a name="rfc.authors"></a><br /><hr />  <a name="rfc.authors"></a><br /><hr />
11193  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11194  <h3>Author's Address</h3>  <h3>Author's Address</h3>
11195  <table width="99%" border="0" cellpadding="0" cellspacing="0">  <table width="99%" border="0" cellpadding="0" cellspacing="0">
11196  <tr><td class="author-text">&nbsp;</td>  <tr><td class="author-text">&nbsp;</td>
# Line 5718  Schoenebeck</td></tr> Line 11208  Schoenebeck</td></tr>
11208  <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>
11209  </table>  </table>
11210  <a name="rfc.copyright"></a><br /><hr />  <a name="rfc.copyright"></a><br /><hr />
11211  <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="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11212  <h3>Intellectual Property Statement</h3>  <h3>Full Copyright Statement</h3>
11213  <p class='copyright'>  <p class='copyright'>
11214  The IETF takes no position regarding the validity or scope of  Copyright &copy; The IETF Trust (2007).</p>
 any intellectual property or other rights that might be claimed  
 to  pertain to the implementation or use of the technology  
 described in this document or the extent to which any license  
 under such rights might or might not be available; neither does  
 it represent that it has made any effort to identify any such  
 rights. Information on the IETF's procedures with respect to  
 rights in standards-track and standards-related documentation  
 can be found in BCP&nbsp;11. Copies of claims of rights made  
 available for publication and any assurances of licenses to  
 be made available, or the result of an attempt made  
 to obtain a general license or permission for the use of such  
 proprietary rights by implementors or users of this  
 specification can be obtained from the IETF Secretariat.</p>  
11215  <p class='copyright'>  <p class='copyright'>
11216  The IETF invites any interested party to bring to its  This document is subject to the rights,
11217  attention any copyrights, patents or patent applications, or  licenses and restrictions contained in BCP&nbsp;78,
11218  other proprietary rights which may cover technology that may be  and except as set forth therein,
11219  required to practice this standard. Please address the  the authors retain all their rights.</p>
 information to the IETF Executive Director.</p>  
 <h3>Full Copyright Statement</h3>  
11220  <p class='copyright'>  <p class='copyright'>
11221  Copyright &copy; The Internet Society (2005). All Rights Reserved.</p>  This document and the information contained herein are provided
11222    on an &ldquo;AS IS&rdquo; basis and THE CONTRIBUTOR,
11223    THE ORGANIZATION HE/SHE REPRESENTS
11224    OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST
11225    AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES,
11226    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT
11227    THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY
11228    IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
11229    PURPOSE.</p>
11230    <h3>Intellectual Property</h3>
11231  <p class='copyright'>  <p class='copyright'>
11232  This document and translations of it may be copied and furnished to  The IETF takes no position regarding the validity or scope of any
11233  others, and derivative works that comment on or otherwise explain it  Intellectual Property Rights or other rights that might be claimed
11234  or assist in its implementation may be prepared, copied, published and  to pertain to the implementation or use of the technology
11235  distributed, in whole or in part, without restriction of any kind,  described in this document or the extent to which any license
11236  provided that the above copyright notice and this paragraph are  under such rights might or might not be available; nor does it
11237  included on all such copies and derivative works. However, this  represent that it has made any independent effort to identify any
11238  document itself may not be modified in any way, such as by removing  such rights.
11239  the copyright notice or references to the Internet Society or other  Information on the procedures with respect to
11240  Internet organizations, except as needed for the purpose of  rights in RFC documents can be found in BCP&nbsp;78 and BCP&nbsp;79.</p>
 developing Internet standards in which case the procedures for  
 copyrights defined in the Internet Standards process must be  
 followed, or as required to translate it into languages other than  
 English.</p>  
11241  <p class='copyright'>  <p class='copyright'>
11242  The limited permissions granted above are perpetual and will not be  Copies of IPR disclosures made to the IETF Secretariat and any
11243  revoked by the Internet Society or its successors or assignees.</p>  assurances of licenses to be made available,
11244    or the result of an attempt made to obtain a general license or
11245    permission for the use of such proprietary rights by implementers or
11246    users of this specification can be obtained from the IETF on-line IPR
11247    repository at <a href='http://www.ietf.org/ipr'>http://www.ietf.org/ipr</a>.</p>
11248  <p class='copyright'>  <p class='copyright'>
11249  This document and the information contained herein is provided on an  The IETF invites any interested party to bring to its attention
11250  &ldquo;AS IS&rdquo; basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING  any copyrights,
11251  TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING  patents or patent applications,
11252  BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION  or other
11253  HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF  proprietary rights that may cover technology that may be required
11254  MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.</p>  to implement this standard.
11255    Please address the information to the IETF at <a href='mailto:ietf-ipr@ietf.org'>ietf-ipr@ietf.org</a>.</p>
11256  <h3>Acknowledgment</h3>  <h3>Acknowledgment</h3>
11257  <p class='copyright'>  <p class='copyright'>
11258  Funding for the RFC Editor function is currently provided by the  Funding for the RFC Editor function is provided by
11259  Internet Society.</p>  the IETF Administrative Support Activity (IASA).</p>
11260  </body></html>  </body></html>
11261    

Legend:
Removed from v.708  
changed lines
  Added in v.1390

  ViewVC Help
Powered by ViewVC