/[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 1805 by schoenebeck, Wed Dec 10 22:10:17 2008 UTC
# Line 3  Line 3 
3  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4  <meta name="description" content="LinuxSampler Control Protocol">  <meta name="description" content="LinuxSampler Control Protocol">
5  <meta name="keywords" content="LSCP">  <meta name="keywords" content="LSCP">
6  <meta name="generator" content="xml2rfc v1.29 (http://xml.resource.org/)">  <meta name="generator" content="xml2rfc v1.33 (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;
         display:block;  
         position:absolute;  
         font-size: smaller ;  
         top:2em; left:2em; width:15em;  
         padding: 2px ;  
         border:1px solid #333333;  
         background-color:#eeeeee; color:#990000;  
         text-align: left ;}  
   
      A { font-weight: bold; }  
      A:link { color: #990000; background-color: transparent ; }  
      A:visited { color: #333333; background-color: transparent ; }  
      A:active { color: #333333; background-color: transparent ; }  
   
     p { margin-left: 2em; margin-right: 2em; }  
     p.copyright { font-size: x-small ; }  
     p.toc { font-size: small ; font-weight: bold ; margin-left: 3em ;}  
   
     span.emph { font-style: italic; }  
     span.strong { font-weight: bold; }  
     span.verb, span.vbare { font-family: "Courier New", Courier, monospace ; }  
   
     span.vemph { font-style: italic; font-family: "Courier New", Courier, monospace ; }  
     span.vstrong { font-weight: bold; font-family: "Courier New", Courier, monospace ; }  
     span.vdeluxe { font-weight: bold; font-style: italic; font-family: "Courier New", Courier, monospace ; }  
   
     ol.text { margin-left: 2em; margin-right: 2em; }  
     ul.text { margin-left: 2em; margin-right: 2em; }  
     li { margin-left: 3em;  }  
   
     pre { margin-left: 3em; color: #333333;  background-color: transparent;  
         font-family: "Courier New", Courier, monospace ; font-size: small ;  
         text-align: left;  
44          }          }
45    
46      h3 { color: #333333; font-size: medium ;          td.header {
47          font-family: helvetica, arial, sans-serif ;                  font-family: arial, helvetica, sans-serif; font-size: x-small;
48          background-color: transparent; }                  vertical-align: top; width: 33%;
49      h4 { font-size: small; font-family: helvetica, arial, sans-serif ; }                  color: #FFF; background-color: #666;
50            }
51      table.bug { width: 30px ; height: 15px ; }          td.author { font-weight: bold; font-size: x-small; margin-left: 4em; }
52      td.bug { color: #ffffff ; background-color: #990000 ;          td.author-text { font-size: x-small; }
53          text-align: center ; width: 30px ; height: 15px ;  
54           }          /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */
55      td.bug A.link2 { color: #ffffff ; font-weight: bold;          a.info {
56          text-decoration: none;                  /* This is the key. */
57          font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, sans-serif;                  position: relative;
58          font-size: x-small ; background-color: transparent }                  z-index: 24;
59                    text-decoration: none;
60      td.header { color: #ffffff; font-size: x-small ;          }
61          font-family: arial, helvetica, sans-serif; vertical-align: top;          a.info:hover {
62          background-color: #666666 ; width: 33% ; }                  z-index: 25;
63      td.author { font-weight: bold; margin-left: 4em; font-size: x-small ; }                  color: #FFF; background-color: #900;
64      td.author-text { font-size: x-small; }          }
65      table.data { vertical-align: top ; border-collapse: collapse ;          a.info span { display: none; }
66          border-style: solid solid solid solid ;          a.info:hover span.info {
67          border-color: black black black black ;                  /* The span will display just on :hover state. */
68          font-size: small ; text-align: center ; }                  display: block;
69      table.data th { font-weight: bold ;                  position: absolute;
70          border-style: solid solid solid solid ;                  font-size: smaller;
71          border-color: black black black black ; }                  top: 2em; left: -5em; width: 15em;
72      table.data td {                  padding: 2px; border: 1px solid #333;
73          border-style: solid solid solid solid ;                  color: #900; background-color: #EEE;
74          border-color: #333333 #333333 #333333 #333333 ; }                  text-align: left;
75            }
76      hr { height: 1px }  
77  -->          a { font-weight: bold; }
78  </style>          a:link    { color: #900; background-color: transparent; }
79            a:visited { color: #633; background-color: transparent; }
80            a:active  { color: #633; background-color: transparent; }
81    
82            p { margin-left: 2em; margin-right: 2em; }
83            p.copyright { font-size: x-small; }
84            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.toc { font-size: small; font-weight: bold; vertical-align: text-top; }
87    
88            ol.text { margin-left: 2em; margin-right: 2em; }
89            ul.text { margin-left: 2em; margin-right: 2em; }
90            li      { margin-left: 3em; }
91    
92            /* RFC-2629 <spanx>s and <artwork>s. */
93            em     { font-style: italic; }
94            strong { font-weight: bold; }
95            dfn    { font-weight: bold; font-style: normal; }
96            cite   { font-weight: normal; font-style: normal; }
97            tt     { color: #036; }
98            tt, pre, pre dfn, pre em, pre cite, pre span {
99                    font-family: "Courier New", Courier, monospace; font-size: small;
100            }
101            pre {
102                    text-align: left; padding: 4px;
103                    color: #000; background-color: #CCC;
104            }
105            pre dfn  { color: #900; }
106            pre em   { color: #66F; background-color: #FFC; font-weight: normal; }
107            pre .key { color: #33C; font-weight: bold; }
108            pre .id  { color: #900; }
109            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: June 13, 2009</td><td class="header">December 10, 2008</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<br />LSCP 1.4</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 June 13, 2009.</p>
   
 <h3>Copyright Notice</h3>  
 <p>  
 Copyright &copy; The Internet Society (2005). All Rights Reserved.</p>  
177    
178  <h3>Abstract</h3>  <h3>Abstract</h3>
179    
# Line 169  Introduction<br /> Line 196  Introduction<br />
196  Focus of this protocol<br />  Focus of this protocol<br />
197  <a href="#anchor4">5.</a>&nbsp;  <a href="#anchor4">5.</a>&nbsp;
198  Communication Overview<br />  Communication Overview<br />
199  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">5.1.</a>&nbsp;
200  Request/response communication method<br />  Request/response communication method<br />
201  &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;
202  Result format<br />  Result format<br />
203  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">5.2.</a>&nbsp;
204  Subscribe/notify communication method<br />  Subscribe/notify communication method<br />
205  <a href="#control_commands">6.</a>&nbsp;  <a href="#control_commands">6.</a>&nbsp;
206  Description for control commands<br />  Description for control commands<br />
207  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor8">6.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor8">6.1.</a>&nbsp;
208  Ignored lines and comments<br />  Ignored lines and comments<br />
209  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">6.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">6.2.</a>&nbsp;
210  Configuring audio drivers<br />  Configuring audio drivers<br />
211  &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;
212  Getting amount of available audio output drivers<br />  Getting amount of available audio output drivers<br />
213  &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;
214  Getting all available audio output drivers<br />  Getting all available audio output drivers<br />
215  &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;
216  Getting information about a specific audio  Getting information about a specific audio
217                  output driver<br />                  output driver<br />
218  &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;
219  Getting information about specific audio  Getting information about specific audio
220                  output driver parameter<br />                  output driver parameter<br />
221  &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;
222  Creating an audio output device<br />  Creating an audio output device<br />
223  &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;
224  Destroying an audio output device<br />  Destroying an audio output device<br />
225  &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;
226  Getting all created audio output device count<br />  Getting all created audio output device count<br />
227  &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;
228  Getting all created audio output device list<br />  Getting all created audio output device list<br />
229  &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;
230  Getting current settings of an audio output device<br />  Getting current settings of an audio output device<br />
231  &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;
232  Changing settings of audio output devices<br />  Changing settings of audio output devices<br />
233  &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;
234  Getting information about an audio channel<br />  Getting information about an audio channel<br />
235  &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;
236  Getting information about specific audio channel parameter<br />  Getting information about specific audio channel parameter<br />
237  &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;
238  Changing settings of audio output channels<br />  Changing settings of audio output channels<br />
239  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">6.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">6.3.</a>&nbsp;
240  Configuring MIDI input drivers<br />  Configuring MIDI input drivers<br />
241  &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;
242  Getting amount of available MIDI input drivers<br />  Getting amount of available MIDI input drivers<br />
243  &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;
244  Getting all available MIDI input drivers<br />  Getting all available MIDI input drivers<br />
245  &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;
246  Getting information about a specific MIDI input driver<br />  Getting information about a specific MIDI input driver<br />
247  &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;
248  Getting information about specific MIDI input driver parameter<br />  Getting information about specific MIDI input driver parameter<br />
249  &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;
250  Creating a MIDI input device<br />  Creating a MIDI input device<br />
251  &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;
252  Destroying a MIDI input device<br />  Destroying a MIDI input device<br />
253  &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;
254  Getting all created MIDI input device count<br />  Getting all created MIDI input device count<br />
255  &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;
256  Getting all created MIDI input device list<br />  Getting all created MIDI input device list<br />
257  &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;
258  Getting current settings of a MIDI input device<br />  Getting current settings of a MIDI input device<br />
259  &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;
260  Changing settings of MIDI input devices<br />  Changing settings of MIDI input devices<br />
261  &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;
262  Getting information about a MIDI port<br />  Getting information about a MIDI port<br />
263  &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;
264  Getting information about specific MIDI port parameter<br />  Getting information about specific MIDI port parameter<br />
265  &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;
266  Changing settings of MIDI input ports<br />  Changing settings of MIDI input ports<br />
267  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">6.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">6.4.</a>&nbsp;
268  Configuring sampler channels<br />  Configuring sampler channels<br />
269  &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;
270  Loading an instrument<br />  Loading an instrument<br />
271  &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;
272  Loading a sampler engine<br />  Loading a sampler engine<br />
273  &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;
274  Getting all created sampler channel count<br />  Getting all created sampler channel count<br />
275  &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;
276  Getting all created sampler channel list<br />  Getting all created sampler channel list<br />
277  &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;
278  Adding a new sampler channel<br />  Adding a new sampler channel<br />
279  &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;
280  Removing a sampler channel<br />  Removing a sampler channel<br />
281  &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;
282  Getting amount of available engines<br />  Getting amount of available engines<br />
283  &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;
284  Getting all available engines<br />  Getting all available engines<br />
285  &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;
286  Getting information about an engine<br />  Getting information about an engine<br />
287  &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;
288  Getting sampler channel information<br />  Getting sampler channel information<br />
289  &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;
290  Current number of active voices<br />  Current number of active voices<br />
291  &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;
292  Current number of active disk streams<br />  Current number of active disk streams<br />
293  &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;
294  Current fill state of disk stream buffers<br />  Current fill state of disk stream buffers<br />
295  &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;
296  Setting audio output device<br />  Setting audio output device<br />
297  &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;
298  Setting audio output type<br />  Setting audio output type<br />
299  &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;
300  Setting audio output channel<br />  Setting audio output channel<br />
301  &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;
302  Setting MIDI input device<br />  Setting MIDI input device<br />
303  &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;
304  Setting MIDI input type<br />  Setting MIDI input type<br />
305  &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;
306  Setting MIDI input port<br />  Setting MIDI input port<br />
307  &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;
308  Setting MIDI input channel<br />  Setting MIDI input channel<br />
309  &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;
310  Setting channel volume<br />  Setting channel volume<br />
311  &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;
312  Muting a sampler channel<br />  Muting a sampler channel<br />
313  &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;
314  Soloing a sampler channel<br />  Soloing a sampler channel<br />
315  &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;
316    Assigning a MIDI instrument map to a sampler channel<br />
317    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE FX_SEND">6.4.25.</a>&nbsp;
318    Adding an effect send to a sampler channel<br />
319    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY FX_SEND">6.4.26.</a>&nbsp;
320    Removing an effect send from a sampler channel<br />
321    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FX_SENDS">6.4.27.</a>&nbsp;
322    Getting amount of effect sends on a sampler channel<br />
323    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST FX_SENDS">6.4.28.</a>&nbsp;
324    Listing all effect sends on a sampler channel<br />
325    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FX_SEND INFO">6.4.29.</a>&nbsp;
326    Getting effect send information<br />
327    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND NAME">6.4.30.</a>&nbsp;
328    Changing effect send's name<br />
329    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND AUDIO_OUTPUT_CHANNEL">6.4.31.</a>&nbsp;
330    Altering effect send's audio routing<br />
331    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND MIDI_CONTROLLER">6.4.32.</a>&nbsp;
332    Altering effect send's MIDI controller<br />
333    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND LEVEL">6.4.33.</a>&nbsp;
334    Altering effect send's send level<br />
335    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SEND CHANNEL MIDI_DATA">6.4.34.</a>&nbsp;
336    Sending MIDI messages to sampler channel<br />
337    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.35.</a>&nbsp;
338  Resetting a sampler channel<br />  Resetting a sampler channel<br />
339  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5.</a>&nbsp;
340  Controlling connection<br />  Controlling connection<br />
341  &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;
342  Register front-end for receiving event messages<br />  Register front-end for receiving event messages<br />
343  &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;
344  Unregister front-end for not receiving event messages<br />  Unregister front-end for not receiving event messages<br />
345  &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;
346  Enable or disable echo of commands<br />  Enable or disable echo of commands<br />
347  &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;
348  Close client connection<br />  Close client connection<br />
349  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">6.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">6.6.</a>&nbsp;
350  Global commands<br />  Global commands<br />
351  &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;
352    Current number of active voices<br />
353    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT_MAX">6.6.2.</a>&nbsp;
354    Maximum amount of active voices<br />
355    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_STREAM_COUNT">6.6.3.</a>&nbsp;
356    Current number of active disk streams<br />
357    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.4.</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.5.</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.6.</a>&nbsp;
362    Getting global volume attenuation<br />
363    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET VOLUME">6.6.7.</a>&nbsp;
364    Setting global volume attenuation<br />
365    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET VOICES">6.6.8.</a>&nbsp;
366    Getting global voice limit<br />
367    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET VOICES">6.6.9.</a>&nbsp;
368    Setting global voice limit<br />
369    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET STREAMS">6.6.10.</a>&nbsp;
370    Getting global disk stream limit<br />
371    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET STREAMS">6.6.11.</a>&nbsp;
372    Setting global disk stream limit<br />
373    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#MIDI Instrument Mapping">6.7.</a>&nbsp;
374    MIDI Instrument Mapping<br />
375    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD MIDI_INSTRUMENT_MAP">6.7.1.</a>&nbsp;
376    Create a new MIDI instrument map<br />
377    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE MIDI_INSTRUMENT_MAP">6.7.2.</a>&nbsp;
378    Delete one particular or all MIDI instrument maps<br />
379    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAPS">6.7.3.</a>&nbsp;
380    Get amount of existing MIDI instrument maps<br />
381    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENT_MAPS">6.7.4.</a>&nbsp;
382    Getting all created MIDI instrument maps<br />
383    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAP INFO">6.7.5.</a>&nbsp;
384    Getting MIDI instrument map information<br />
385    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INSTRUMENT_MAP NAME">6.7.6.</a>&nbsp;
386    Renaming a MIDI instrument map<br />
387    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MAP MIDI_INSTRUMENT">6.7.7.</a>&nbsp;
388    Create or replace a MIDI instrument map entry<br />
389    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENTS">6.7.8.</a>&nbsp;
390    Getting ammount of MIDI instrument map entries<br />
391    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENTS">6.7.9.</a>&nbsp;
392    Getting indeces of all entries of a MIDI instrument map<br />
393    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNMAP MIDI_INSTRUMENT">6.7.10.</a>&nbsp;
394    Remove an entry from the MIDI instrument map<br />
395    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT INFO">6.7.11.</a>&nbsp;
396    Get current settings of MIDI instrument map entry<br />
397    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CLEAR MIDI_INSTRUMENTS">6.7.12.</a>&nbsp;
398    Clear MIDI instrument map<br />
399    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#Managing Instruments Database">6.8.</a>&nbsp;
400    Managing Instruments Database<br />
401    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD DB_INSTRUMENT_DIRECTORY">6.8.1.</a>&nbsp;
402    Creating a new instrument directory<br />
403    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE DB_INSTRUMENT_DIRECTORY">6.8.2.</a>&nbsp;
404    Deleting an instrument directory<br />
405    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENT_DIRECTORIES">6.8.3.</a>&nbsp;
406    Getting amount of instrument directories<br />
407    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST DB_INSTRUMENT_DIRECTORIES">6.8.4.</a>&nbsp;
408    Listing all directories in specific directory<br />
409    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENT_DIRECTORY INFO">6.8.5.</a>&nbsp;
410    Getting instrument directory information<br />
411    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT_DIRECTORY NAME">6.8.6.</a>&nbsp;
412    Renaming an instrument directory<br />
413    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MOVE DB_INSTRUMENT_DIRECTORY">6.8.7.</a>&nbsp;
414    Moving an instrument directory<br />
415    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#COPY DB_INSTRUMENT_DIRECTORY">6.8.8.</a>&nbsp;
416    Copying instrument directories<br />
417    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT_DIRECTORY DESCRIPTION">6.8.9.</a>&nbsp;
418    Changing the description of directory<br />
419    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FIND DB_INSTRUMENT_DIRECTORIES">6.8.10.</a>&nbsp;
420    Finding directories<br />
421    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD DB_INSTRUMENTS">6.8.11.</a>&nbsp;
422    Adding instruments to the instruments database<br />
423    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE DB_INSTRUMENT">6.8.12.</a>&nbsp;
424    Removing an instrument<br />
425    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENTS">6.8.13.</a>&nbsp;
426    Getting amount of instruments<br />
427    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST DB_INSTRUMENTS">6.8.14.</a>&nbsp;
428    Listing all instruments in specific directory<br />
429    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENT INFO">6.8.15.</a>&nbsp;
430    Getting instrument information<br />
431    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT NAME">6.8.16.</a>&nbsp;
432    Renaming an instrument<br />
433    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MOVE DB_INSTRUMENT">6.8.17.</a>&nbsp;
434    Moving an instrument<br />
435    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#COPY DB_INSTRUMENT">6.8.18.</a>&nbsp;
436    Copying instruments<br />
437    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT DESCRIPTION">6.8.19.</a>&nbsp;
438    Changing the description of instrument<br />
439    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FIND DB_INSTRUMENTS">6.8.20.</a>&nbsp;
440    Finding instruments<br />
441    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENTS_JOB INFO">6.8.21.</a>&nbsp;
442    Getting job status information<br />
443    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FORMAT INSTRUMENTS_DB">6.8.22.</a>&nbsp;
444    Formatting the instruments database<br />
445    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FIND LOST DB_INSTRUMENT_FILES">6.8.23.</a>&nbsp;
446    Checking for lost instrument files<br />
447    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT FILE_PATH">6.8.24.</a>&nbsp;
448    Replacing an instrument file<br />
449    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#editing_instruments">6.9.</a>&nbsp;
450    Editing Instruments<br />
451    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#EDIT INSTRUMENT">6.9.1.</a>&nbsp;
452    Opening an appropriate instrument editor application<br />
453    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#file_management">6.10.</a>&nbsp;
454    Managing Files<br />
455    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FILE INSTRUMENTS">6.10.1.</a>&nbsp;
456    Retrieving amount of instruments of a file<br />
457    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST FILE INSTRUMENTS">6.10.2.</a>&nbsp;
458    Retrieving all instruments of a file<br />
459    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FILE INSTRUMENT INFO">6.10.3.</a>&nbsp;
460    Retrieving informations about one instrument in a file<br />
461  <a href="#command_syntax">7.</a>&nbsp;  <a href="#command_syntax">7.</a>&nbsp;
462  Command Syntax<br />  Command Syntax<br />
463    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#character_set">7.1.</a>&nbsp;
464    Character Set and Escape Sequences<br />
465  <a href="#events">8.</a>&nbsp;  <a href="#events">8.</a>&nbsp;
466  Events<br />  Events<br />
467  &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;
468    Number of audio output devices changed<br />
469    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO">8.2.</a>&nbsp;
470    Audio output device's settings changed<br />
471    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_COUNT">8.3.</a>&nbsp;
472    Number of MIDI input devices changed<br />
473    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_INFO">8.4.</a>&nbsp;
474    MIDI input device's settings changed<br />
475    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_COUNT">8.5.</a>&nbsp;
476  Number of sampler channels changed<br />  Number of sampler channels changed<br />
477  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_MIDI">8.6.</a>&nbsp;
478    MIDI data on a sampler channel arrived<br />
479    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DEVICE_MIDI">8.7.</a>&nbsp;
480    MIDI data on a MIDI input device arrived<br />
481    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.8.</a>&nbsp;
482  Number of active voices changed<br />  Number of active voices changed<br />
483  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.9.</a>&nbsp;
484  Number of active disk streams changed<br />  Number of active disk streams changed<br />
485  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.10.</a>&nbsp;
486  Disk stream buffer fill state changed<br />  Disk stream buffer fill state changed<br />
487  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE INFO">8.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_INFO">8.11.</a>&nbsp;
488  Channel information changed<br />  Channel information changed<br />
489  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_COUNT">8.12.</a>&nbsp;
490    Number of effect sends changed<br />
491    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_INFO">8.13.</a>&nbsp;
492    Effect send information changed<br />
493    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_VOICE_COUNT">8.14.</a>&nbsp;
494    Total number of active voices changed<br />
495    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_STREAM_COUNT">8.15.</a>&nbsp;
496    Total number of active disk streams changed<br />
497    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT">8.16.</a>&nbsp;
498    Number of MIDI instrument maps changed<br />
499    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO">8.17.</a>&nbsp;
500    MIDI instrument map information changed<br />
501    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_COUNT">8.18.</a>&nbsp;
502    Number of MIDI instruments changed<br />
503    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_INFO">8.19.</a>&nbsp;
504    MIDI instrument information changed<br />
505    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE GLOBAL_INFO">8.20.</a>&nbsp;
506    Global settings changed<br />
507    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT">8.21.</a>&nbsp;
508    Number of database instrument directories changed<br />
509    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO">8.22.</a>&nbsp;
510    Database instrument directory information changed<br />
511    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_COUNT">8.23.</a>&nbsp;
512    Number of database instruments changed<br />
513    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_INFO">8.24.</a>&nbsp;
514    Database instrument information changed<br />
515    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENTS_JOB_INFO">8.25.</a>&nbsp;
516    Database job status information changed<br />
517    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.26.</a>&nbsp;
518  Miscellaneous and debugging events<br />  Miscellaneous and debugging events<br />
519  <a href="#anchor14">9.</a>&nbsp;  <a href="#anchor14">9.</a>&nbsp;
520  Security Considerations<br />  Security Considerations<br />
# Line 333  Intellectual Property and Copyright Stat Line 530  Intellectual Property and Copyright Stat
530  <br clear="all" />  <br clear="all" />
531    
532  <a name="anchor1"></a><br /><hr />  <a name="anchor1"></a><br /><hr />
533  <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>
534  <a name="rfc.section.1"></a><h3>1.&nbsp;Requirements notation</h3>  <a name="rfc.section.1"></a><h3>1.&nbsp;
535    Requirements notation</h3>
536    
537  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
538              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
539              and "OPTIONAL" in this document are to be interpreted as              and "OPTIONAL" in this document are to be interpreted as
540              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>.
541  </p>  </p>
542  <p>This protocol is always case-sensitive if not explicitly  <p>This protocol is always case-sensitive if not explicitly
543              claimed the opposite.              claimed the opposite.
# Line 348  Intellectual Property and Copyright Stat Line 546  Intellectual Property and Copyright Stat
546              (front-end) and server (LinuxSampler) respectively. Lines in              (front-end) and server (LinuxSampler) respectively. Lines in
547              examples must be interpreted as every line being CRLF              examples must be interpreted as every line being CRLF
548              terminated (carriage return character followed by line feed              terminated (carriage return character followed by line feed
549              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>),
550              example:              thus the following example:
551  </p>  </p>
552  <p>  <p>
553                  </p>                  </p>
# Line 359  Intellectual Property and Copyright Stat Line 557  Intellectual Property and Copyright Stat
557  <p>&nbsp;&nbsp;&nbsp;"another line"  <p>&nbsp;&nbsp;&nbsp;"another line"
558  </p>  </p>
559  </blockquote><p>  </blockquote><p>
560                
561  </p>  </p>
562  <p>must actually be interpreted as client sending the following  <p>must actually be interpreted as client sending the following
563              message:              message:
# Line 371  Intellectual Property and Copyright Stat Line 569  Intellectual Property and Copyright Stat
569                      line&lt;CR&gt;&lt;LF&gt;"                      line&lt;CR&gt;&lt;LF&gt;"
570  </p>  </p>
571  </blockquote><p>  </blockquote><p>
572                
573  </p>  </p>
574  <p>where &lt;CR&gt; symbolizes the carriage return character and  <p>where &lt;CR&gt; symbolizes the carriage return character and
575              &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 584  Intellectual Property and Copyright Stat
584  <p>S: "abcd"  <p>S: "abcd"
585  </p>  </p>
586  </blockquote><p>  </blockquote><p>
587                
588  </p>  </p>
589  <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
590              following sequence scenario:              following sequence scenario:
# Line 409  Intellectual Property and Copyright Stat Line 607  Intellectual Property and Copyright Stat
607                      "&lt;LF&gt;"                      "&lt;LF&gt;"
608  </li>  </li>
609  </ul><p>  </ul><p>
610                
611  </p>  </p>
612  <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
613              return and line feed characters respectively.              return and line feed characters respectively.
614  </p>  </p>
615  <a name="LSCP versioning"></a><br /><hr />  <a name="LSCP versioning"></a><br /><hr />
616  <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>
617  <a name="rfc.section.2"></a><h3>2.&nbsp;Versioning of this specification</h3>  <a name="rfc.section.2"></a><h3>2.&nbsp;
618    Versioning of this specification</h3>
619    
620  <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
621              release of the LSCP specification will be tagged with a unique version              release of the LSCP specification will be tagged with a unique version
622              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
623              number like:              number like:
624                
625  </p>  </p>
626  <p>  <p>
627                  </p>                  </p>
# Line 430  Intellectual Property and Copyright Stat Line 629  Intellectual Property and Copyright Stat
629  <p>"1.2"  <p>"1.2"
630  </p>  </p>
631  </blockquote><p>  </blockquote><p>
632                
633  </p>  </p>
634  <p>  <p>
635              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 639  Intellectual Property and Copyright Stat
639              compatible to the connected sampler if and only if the LSCP versions              compatible to the connected sampler if and only if the LSCP versions
640              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
641              following rules:              following rules:
642                
643  </p>  </p>
644  <p>Compatibility:  <p>Compatibility:
645  </p>  </p>
# Line 454  Intellectual Property and Copyright Stat Line 653  Intellectual Property and Copyright Stat
653                      the sampler's LSCP minor version.                      the sampler's LSCP minor version.
654  </li>  </li>
655  </ol><p>  </ol><p>
656                
657  </p>  </p>
658  <p>  <p>
659              Compatibility can only be claimed if both rules are true.              Compatibility can only be claimed if both rules are true.
660              The frontend can use the              The frontend can use the
661              <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
662              get the version of the LSCP specification the sampler complies with.              get the version of the LSCP specification the sampler complies with.
663                
664  </p>  </p>
665  <a name="anchor2"></a><br /><hr />  <a name="anchor2"></a><br /><hr />
666  <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>
667  <a name="rfc.section.3"></a><h3>3.&nbsp;Introduction</h3>  <a name="rfc.section.3"></a><h3>3.&nbsp;
668    Introduction</h3>
669    
670  <p>LinuxSampler is a so called software sampler application  <p>LinuxSampler is a so called software sampler application
671              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 685  Intellectual Property and Copyright Stat
685              there.              there.
686  </p>  </p>
687  <a name="anchor3"></a><br /><hr />  <a name="anchor3"></a><br /><hr />
688  <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>
689  <a name="rfc.section.4"></a><h3>4.&nbsp;Focus of this protocol</h3>  <a name="rfc.section.4"></a><h3>4.&nbsp;
690    Focus of this protocol</h3>
691    
692  <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
693              a running LinuxSampler instance and to retrieve information              a running LinuxSampler instance and to retrieve information
# Line 497  Intellectual Property and Copyright Stat Line 698  Intellectual Property and Copyright Stat
698              via MIDI System Exclusive Messages.              via MIDI System Exclusive Messages.
699  </p>  </p>
700  <a name="anchor4"></a><br /><hr />  <a name="anchor4"></a><br /><hr />
701  <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>
702  <a name="rfc.section.5"></a><h3>5.&nbsp;Communication Overview</h3>  <a name="rfc.section.5"></a><h3>5.&nbsp;
703    Communication Overview</h3>
704    
705  <p>There are two distinct methods of communication between a  <p>There are two distinct methods of communication between a
706              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 713  Intellectual Property and Copyright Stat
713              implemented in the front-end application. The two communication              implemented in the front-end application. The two communication
714              methods will be described next.              methods will be described next.
715  </p>  </p>
716  <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 />
717    <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>
718    <a name="rfc.section.5.1"></a><h3>5.1.&nbsp;
719    Request/response communication method</h3>
720    
721  <p>This simple communication method is based on  <p>This simple communication method is based on
722                  <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
723                  front-end application establishes a TCP connection to the                  front-end application establishes a TCP connection to the
724                  LinuxSampler instance on a certain host system. Then the                  LinuxSampler instance on a certain host system. Then the
725                  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 759  Intellectual Property and Copyright Stat
759                  processed in the order they were received and result sets                  processed in the order they were received and result sets
760                  MUST be sent back in the same order.                  MUST be sent back in the same order.
761  </p>  </p>
762  <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 />
763    <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>
764    <a name="rfc.section.5.1.1"></a><h3>5.1.1.&nbsp;
765    Result format</h3>
766    
767  <p>Result set could be one of the following types:  <p>Result set could be one of the following types:
768  </p>  </p>
# Line 568  Intellectual Property and Copyright Stat Line 776  Intellectual Property and Copyright Stat
776  <li>Error  <li>Error
777  </li>  </li>
778  </ol><p>  </ol><p>
779                        
780  </p>  </p>
781  <p>Warning and Error result sets MUST be single line and  <p>Warning and Error result sets MUST be single line and
782                      have the following format:                      have the following format:
# Line 581  Intellectual Property and Copyright Stat Line 789  Intellectual Property and Copyright Stat
789  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"
790  </li>  </li>
791  </ul><p>  </ul><p>
792                        
793  </p>  </p>
794  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are
795                      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 807  Intellectual Property and Copyright Stat
807  <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."
808  </p>  </p>
809  </blockquote><p>  </blockquote><p>
810                        
811  </p>  </p>
812  <p>  <p>
813                          </p>                          </p>
# Line 609  Intellectual Property and Copyright Stat Line 817  Intellectual Property and Copyright Stat
817  <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'."
818  </p>  </p>
819  </blockquote><p>  </blockquote><p>
820                        
821  </p>  </p>
822  <p>  <p>
823                          </p>                          </p>
# Line 619  Intellectual Property and Copyright Stat Line 827  Intellectual Property and Copyright Stat
827  <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."
828  </p>  </p>
829  </blockquote><p>  </blockquote><p>
830                        
831  </p>  </p>
832  <p>Normal result sets could be:  <p>Normal result sets could be:
833  </p>  </p>
# Line 633  Intellectual Property and Copyright Stat Line 841  Intellectual Property and Copyright Stat
841  <li>Multi-line  <li>Multi-line
842  </li>  </li>
843  </ol><p>  </ol><p>
844                        
845  </p>  </p>
846  <p> Empty result set is issued when the server only  <p> Empty result set is issued when the server only
847                      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 855  Intellectual Property and Copyright Stat
855  <p>"OK"  <p>"OK"
856  </p>  </p>
857  </blockquote><p>  </blockquote><p>
858                        
859  </p>  </p>
860  <p>Example:  <p>Example:
861  </p>  </p>
# Line 659  Intellectual Property and Copyright Stat Line 867  Intellectual Property and Copyright Stat
867  <p>S: "OK"  <p>S: "OK"
868  </p>  </p>
869  </blockquote><p>  </blockquote><p>
870                        
871  </p>  </p>
872  <p>Single line result sets are command specific. One  <p>Single line result sets are command specific. One
873                      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 881  Intellectual Property and Copyright Stat
881  <p>"."  <p>"."
882  </p>  </p>
883  </blockquote><p>  </blockquote><p>
884                        
885  </p>  </p>
886  <p>Example:  <p>Example:
887  </p>  </p>
# Line 699  Intellectual Property and Copyright Stat Line 907  Intellectual Property and Copyright Stat
907  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
908  </p>  </p>
909  </blockquote><p>  </blockquote><p>
910                        
911  </p>  </p>
912  <p>In addition to above mentioned formats, warnings and  <p>In addition to above mentioned formats, warnings and
913                      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 921  Intellectual Property and Copyright Stat
921  <li>"OK[&lt;index&gt;]"  <li>"OK[&lt;index&gt;]"
922  </li>  </li>
923  </ul><p>  </ul><p>
924                        
925  </p>  </p>
926  <p>where &lt;index&gt; is command specific and is used  <p>where &lt;index&gt; is command specific and is used
927                      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 940  Intellectual Property and Copyright Stat
940  <p>S: "OK[12]"  <p>S: "OK[12]"
941  </p>  </p>
942  </blockquote><p>  </blockquote><p>
943                        
944  </p>  </p>
945  <p>  <p>
946                          </p>                          </p>
# Line 742  Intellectual Property and Copyright Stat Line 950  Intellectual Property and Copyright Stat
950  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."
951  </p>  </p>
952  </blockquote><p>  </blockquote><p>
953                        
954  </p>  </p>
955  <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 />
956    <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>
957    <a name="rfc.section.5.2"></a><h3>5.2.&nbsp;
958    Subscribe/notify communication method</h3>
959    
960  <p>This more sophisticated communication method is actually  <p>This more sophisticated communication method is actually
961                  only an extension of the simple request/response                  only an extension of the simple request/response
# Line 762  Intellectual Property and Copyright Stat Line 973  Intellectual Property and Copyright Stat
973  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
974  </p>  </p>
975  </blockquote><p>  </blockquote><p>
976                    
977  </p>  </p>
978  <p>where &lt;event-id&gt; will be replaced by the respective  <p>where &lt;event-id&gt; will be replaced by the respective
979                  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 990  Intellectual Property and Copyright Stat
990  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;
991  </p>  </p>
992  </blockquote><p>  </blockquote><p>
993                    
994  </p>  </p>
995  <p>where &lt;event-id&gt; uniquely identifies the event that  <p>where &lt;event-id&gt; uniquely identifies the event that
996                  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 1016  Intellectual Property and Copyright Stat
1016                          response.                          response.
1017  </li>  </li>
1018  </ol><p>  </ol><p>
1019                    
1020  </p>  </p>
1021  <p>If the client is not interested in a particular event  <p>If the client is not interested in a particular event
1022                  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 1028  Intellectual Property and Copyright Stat
1028  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
1029  </p>  </p>
1030  </blockquote><p>  </blockquote><p>
1031                    
1032  </p>  </p>
1033  <p>where &lt;event-id&gt; will be replace by the respective  <p>where &lt;event-id&gt; will be replace by the respective
1034                  event that client is no longer interested in receiving. For                  event that client is no longer interested in receiving. For
1035                  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>.
1036  </p>  </p>
1037  <p>Example: the fill states of disk stream buffers have  <p>Example: the fill states of disk stream buffers have
1038                  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 1045  Intellectual Property and Copyright Stat
1045  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%
1046  </p>  </p>
1047  </blockquote><p>  </blockquote><p>
1048                    
1049  </p>  </p>
1050  <p>Which means there are currently three active streams on  <p>Which means there are currently three active streams on
1051                  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 1078  Intellectual Property and Copyright Stat
1078                  it wants to receive.                  it wants to receive.
1079  </p>  </p>
1080  <a name="control_commands"></a><br /><hr />  <a name="control_commands"></a><br /><hr />
1081  <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>
1082  <a name="rfc.section.6"></a><h3>6.&nbsp;Description for control commands</h3>  <a name="rfc.section.6"></a><h3>6.&nbsp;
1083    Description for control commands</h3>
1084    
1085  <p>This chapter will describe the available control commands  <p>This chapter will describe the available control commands
1086              that can be sent on the TCP connection in detail. Some certain              that can be sent on the TCP connection in detail. Some certain
1087              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>
1088              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
1089              multiple-line responses. In this case LinuxSampler signals the              multiple-line responses. In this case LinuxSampler signals the
1090              end of the response by a "." (single dot) line.              end of the response by a "." (single dot) line.
1091  </p>  </p>
1092  <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 />
1093    <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>
1094    <a name="rfc.section.6.1"></a><h3>6.1.&nbsp;
1095    Ignored lines and comments</h3>
1096    
1097  <p>White lines, that is lines which only contain space and  <p>White lines, that is lines which only contain space and
1098                  tabulator characters, and lines that start with a "#"                  tabulator characters, and lines that start with a "#"
# Line 885  Intellectual Property and Copyright Stat Line 1100  Intellectual Property and Copyright Stat
1100                  group commands and to place comments in a LSCP script                  group commands and to place comments in a LSCP script
1101                  file.                  file.
1102  </p>  </p>
1103  <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 />
1104    <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>
1105    <a name="rfc.section.6.2"></a><h3>6.2.&nbsp;
1106    Configuring audio drivers</h3>
1107    
1108  <p>Instances of drivers in LinuxSampler are called devices.  <p>Instances of drivers in LinuxSampler are called devices.
1109                  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 1136  Intellectual Property and Copyright Stat
1136                  what parameters drivers are offering, how to retrieve their                  what parameters drivers are offering, how to retrieve their
1137                  possible values, etc.                  possible values, etc.
1138  </p>  </p>
1139  <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 />
1140    <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>
1141    <a name="rfc.section.6.2.1"></a><h3>6.2.1.&nbsp;
1142    Getting amount of available audio output drivers</h3>
1143    
1144  <p>Use the following command to get the number of  <p>Use the following command to get the number of
1145                      audio output drivers currently available for the                      audio output drivers currently available for the
# Line 930  Intellectual Property and Copyright Stat Line 1151  Intellectual Property and Copyright Stat
1151  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS
1152  </p>  </p>
1153  </blockquote><p>  </blockquote><p>
1154                        
1155  </p>  </p>
1156  <p>Possible Answers:  <p>Possible Answers:
1157  </p>  </p>
# Line 941  Intellectual Property and Copyright Stat Line 1162  Intellectual Property and Copyright Stat
1162                              number of audio output drivers.                              number of audio output drivers.
1163  </p>  </p>
1164  </blockquote><p>  </blockquote><p>
1165                        
1166  </p>  </p>
1167  <p>Example:  <p>Example:
1168  </p>  </p>
# Line 953  Intellectual Property and Copyright Stat Line 1174  Intellectual Property and Copyright Stat
1174  <p>S: "2"  <p>S: "2"
1175  </p>  </p>
1176  </blockquote><p>  </blockquote><p>
1177                        
1178  </p>  </p>
1179  <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 />
1180    <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>
1181    <a name="rfc.section.6.2.2"></a><h3>6.2.2.&nbsp;
1182    Getting all available audio output drivers</h3>
1183    
1184  <p>Use the following command to list all audio output  <p>Use the following command to list all audio output
1185                      drivers currently available for the LinuxSampler                      drivers currently available for the LinuxSampler
# Line 967  Intellectual Property and Copyright Stat Line 1191  Intellectual Property and Copyright Stat
1191  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS
1192  </p>  </p>
1193  </blockquote><p>  </blockquote><p>
1194                        
1195  </p>  </p>
1196  <p>Possible Answers:  <p>Possible Answers:
1197  </p>  </p>
# Line 979  Intellectual Property and Copyright Stat Line 1203  Intellectual Property and Copyright Stat
1203                              audio output driver.                              audio output driver.
1204  </p>  </p>
1205  </blockquote><p>  </blockquote><p>
1206                        
1207  </p>  </p>
1208  <p>Example:  <p>Example:
1209  </p>  </p>
# Line 991  Intellectual Property and Copyright Stat Line 1215  Intellectual Property and Copyright Stat
1215  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
1216  </p>  </p>
1217  </blockquote><p>  </blockquote><p>
1218                        
1219  </p>  </p>
1220  <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 />
1221                  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>
1222    <a name="rfc.section.6.2.3"></a><h3>6.2.3.&nbsp;
1223    Getting information about a specific audio
1224                    output driver</h3>
1225    
1226  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1227                      about a specific audio output driver:                      about a specific audio output driver:
# Line 1006  Intellectual Property and Copyright Stat Line 1233  Intellectual Property and Copyright Stat
1233                               &lt;audio-output-driver&gt;                               &lt;audio-output-driver&gt;
1234  </p>  </p>
1235  </blockquote><p>  </blockquote><p>
1236                        
1237  </p>  </p>
1238  <p>Where &lt;audio-output-driver&gt; is the name of the  <p>Where &lt;audio-output-driver&gt; is the name of the
1239                      audio output driver, returned by the                      audio output driver, returned by the
1240                      <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.
1241  </p>  </p>
1242  <p>Possible Answers:  <p>Possible Answers:
1243  </p>  </p>
# Line 1035  Intellectual Property and Copyright Stat Line 1262  Intellectual Property and Copyright Stat
1262  <p> character string describing the  <p> character string describing the
1263                                        audio output driver                                        audio output driver
1264  </p>  </p>
1265  </blockquote><p>  </blockquote>
1266                                      
1267    
 </p>  
1268  <p>VERSION -  <p>VERSION -
1269                                      </p>                                      </p>
1270  <blockquote class="text">  <blockquote class="text">
1271  <p>character string reflecting the  <p>character string reflecting the
1272                                        driver's version                                        driver's version
1273  </p>  </p>
1274  </blockquote><p>  </blockquote>
1275                                      
1276    
 </p>  
1277  <p>PARAMETERS -  <p>PARAMETERS -
1278                                      </p>                                      </p>
1279  <blockquote class="text">  <blockquote class="text">
# Line 1057  Intellectual Property and Copyright Stat Line 1284  Intellectual Property and Copyright Stat
1284                                        and 'active' are offered by all audio                                        and 'active' are offered by all audio
1285                                        output drivers                                        output drivers
1286  </p>  </p>
1287  </blockquote><p>  </blockquote>
1288                                      
1289    
1290  </p>  </blockquote>
1291  </blockquote><p>                              
1292    
 </p>  
1293  <p>The mentioned fields above don't have to be  <p>The mentioned fields above don't have to be
1294                              in particular order.                              in particular order.
1295  </p>  </p>
1296  </blockquote><p>  </blockquote><p>
1297                        
1298  </p>  </p>
1299  <p>Example:  <p>Example:
1300  </p>  </p>
# Line 1088  Intellectual Property and Copyright Stat Line 1315  Intellectual Property and Copyright Stat
1315  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1316  </p>  </p>
1317  </blockquote><p>  </blockquote><p>
1318                        
1319  </p>  </p>
1320  <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 />
1321                  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>
1322    <a name="rfc.section.6.2.4"></a><h3>6.2.4.&nbsp;
1323    Getting information about specific audio
1324                    output driver parameter</h3>
1325    
1326  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1327                      about a  specific audio output driver parameter:                      about a  specific audio output driver parameter:
# Line 1102  Intellectual Property and Copyright Stat Line 1332  Intellectual Property and Copyright Stat
1332  <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;]
1333  </p>  </p>
1334  </blockquote><p>  </blockquote><p>
1335                        
1336  </p>  </p>
1337  <p>Where &lt;audio&gt; is the name of the audio output  <p>Where &lt;audio&gt; is the name of the audio output
1338                      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,
1339                      &lt;prm&gt; a specific parameter name for which information should be                      &lt;prm&gt; a specific parameter name for which information should be
1340                      obtained (as returned by the                      obtained (as returned by the
1341                      <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
1342                      &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
1343                      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
1344                      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 1364  Intellectual Property and Copyright Stat
1364                              the moment the following information categories are defined:                              the moment the following information categories are defined:
1365  </p>  </p>
1366  </blockquote><p>  </blockquote><p>
1367                        
1368  </p>  </p>
1369  <p>  <p>
1370                          </p>                          </p>
# Line 1148  Intellectual Property and Copyright Stat Line 1378  Intellectual Property and Copyright Stat
1378                                  character string(s)                                  character string(s)
1379                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1380  </p>  </p>
1381  </blockquote><p>  </blockquote>
1382                                
1383    
 </p>  
1384  <p>DESCRIPTION -  <p>DESCRIPTION -
1385                                </p>                                </p>
1386  <blockquote class="text">  <blockquote class="text">
1387  <p>arbitrary text describing the purpose of the parameter  <p>arbitrary text describing the purpose of the parameter
1388                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1389  </p>  </p>
1390  </blockquote><p>  </blockquote>
1391                                
1392    
 </p>  
1393  <p>MANDATORY -  <p>MANDATORY -
1394                                </p>                                </p>
1395  <blockquote class="text">  <blockquote class="text">
1396  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
1397                                  given when the device is to be created with the                                  given when the device is to be created with the
1398                                  <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>
1399                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1400  </p>  </p>
1401  </blockquote><p>  </blockquote>
1402                                
1403    
 </p>  
1404  <p>FIX -  <p>FIX -
1405                                </p>                                </p>
1406  <blockquote class="text">  <blockquote class="text">
1407  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
1408                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
1409                                  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>
1410                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1411  </p>  </p>
1412  </blockquote><p>  </blockquote>
1413                                
1414    
 </p>  
1415  <p>MULTIPLICITY -  <p>MULTIPLICITY -
1416                                </p>                                </p>
1417  <blockquote class="text">  <blockquote class="text">
# Line 1190  Intellectual Property and Copyright Stat Line 1420  Intellectual Property and Copyright Stat
1420                                  multiple values and false only a single value allowed                                  multiple values and false only a single value allowed
1421                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1422  </p>  </p>
1423  </blockquote><p>  </blockquote>
1424                                
1425    
 </p>  
1426  <p>DEPENDS -  <p>DEPENDS -
1427                                </p>                                </p>
1428  <blockquote class="text">  <blockquote class="text">
# Line 1207  Intellectual Property and Copyright Stat Line 1437  Intellectual Property and Copyright Stat
1437                                  chosen by the 'card' parameter                                  chosen by the 'card' parameter
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>DEFAULT -  <p>DEFAULT -
1444                                </p>                                </p>
1445  <blockquote class="text">  <blockquote class="text">
1446  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
1447                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
1448                                  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,
1449                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
1450                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
1451                                  apostrophes (')                                  apostrophes (')
1452                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1453  </p>  </p>
1454  </blockquote><p>  </blockquote>
1455                                
1456    
 </p>  
1457  <p>RANGE_MIN -  <p>RANGE_MIN -
1458                                </p>                                </p>
1459  <blockquote class="text">  <blockquote class="text">
# Line 1233  Intellectual Property and Copyright Stat Line 1463  Intellectual Property and Copyright Stat
1463                                  with RANGE_MAX, but may also appear without                                  with RANGE_MAX, but may also appear without
1464                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1465  </p>  </p>
1466  </blockquote><p>  </blockquote>
1467                                
1468    
 </p>  
1469  <p>RANGE_MAX -  <p>RANGE_MAX -
1470                                </p>                                </p>
1471  <blockquote class="text">  <blockquote class="text">
# Line 1245  Intellectual Property and Copyright Stat Line 1475  Intellectual Property and Copyright Stat
1475                                  RANGE_MIN, but may also appear without                                  RANGE_MIN, but may also appear without
1476                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1477  </p>  </p>
1478  </blockquote><p>  </blockquote>
1479                                
1480    
 </p>  
1481  <p>POSSIBILITIES -  <p>POSSIBILITIES -
1482                                </p>                                </p>
1483  <blockquote class="text">  <blockquote class="text">
# Line 1256  Intellectual Property and Copyright Stat Line 1486  Intellectual Property and Copyright Stat
1486                                  apostrophes                                  apostrophes
1487                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1488  </p>  </p>
1489  </blockquote><p>  </blockquote>
1490                                
1491    
 </p>  
1492  </blockquote><p>  </blockquote><p>
1493                        
1494  </p>  </p>
1495  <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.
1496  </p>  </p>
# Line 1288  Intellectual Property and Copyright Stat Line 1518  Intellectual Property and Copyright Stat
1518  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1519  </p>  </p>
1520  </blockquote><p>  </blockquote><p>
1521                        
1522  </p>  </p>
1523  <p>  <p>
1524                          </p>                          </p>
# Line 1312  Intellectual Property and Copyright Stat Line 1542  Intellectual Property and Copyright Stat
1542  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1543  </p>  </p>
1544  </blockquote><p>  </blockquote><p>
1545                        
1546  </p>  </p>
1547  <p>  <p>
1548                          </p>                          </p>
# Line 1340  Intellectual Property and Copyright Stat Line 1570  Intellectual Property and Copyright Stat
1570  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1571  </p>  </p>
1572  </blockquote><p>  </blockquote><p>
1573                        
1574  </p>  </p>
1575  <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 />
1576    <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>
1577    <a name="rfc.section.6.2.5"></a><h3>6.2.5.&nbsp;
1578    Creating an audio output device</h3>
1579    
1580  <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:
1581  </p>  </p>
# Line 1352  Intellectual Property and Copyright Stat Line 1585  Intellectual Property and Copyright Stat
1585  <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;]
1586  </p>  </p>
1587  </blockquote><p>  </blockquote><p>
1588                        
1589  </p>  </p>
1590  <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
1591                      output system as returned by the                      output system as returned by the
1592                      <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>
1593                      command and &lt;param-list&gt; by an optional list of driver                      command and &lt;param-list&gt; by an optional list of driver
1594                      specific parameters in form of "key1=val1 key2=val2 ...", where                      specific parameters in form of "key1=val1 key2=val2 ...", where
1595                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
# Line 1375  Intellectual Property and Copyright Stat Line 1608  Intellectual Property and Copyright Stat
1608  <p>in case the device was successfully created, where  <p>in case the device was successfully created, where
1609                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
1610  </p>  </p>
1611  </blockquote><p>  </blockquote>
1612                                
1613    
 </p>  
1614  <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;" -
1615                                  </p>                                  </p>
1616  <blockquote class="text">  <blockquote class="text">
# Line 1388  Intellectual Property and Copyright Stat Line 1621  Intellectual Property and Copyright Stat
1621                                      fall-back values), providing an appropriate warning code and                                      fall-back values), providing an appropriate warning code and
1622                                      warning message                                      warning message
1623  </p>  </p>
1624  </blockquote><p>  </blockquote>
1625                                
1626    
 </p>  
1627  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1628                                  </p>                                  </p>
1629  <blockquote class="text">  <blockquote class="text">
1630  <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
1631  </p>  </p>
1632  </blockquote><p>  </blockquote>
1633                                
1634    
 </p>  
1635  </blockquote><p>  </blockquote><p>
1636                        
1637  </p>  </p>
1638  <p>Examples:  <p>Examples:
1639  </p>  </p>
# Line 1412  Intellectual Property and Copyright Stat Line 1645  Intellectual Property and Copyright Stat
1645  <p>S: "OK[0]"  <p>S: "OK[0]"
1646  </p>  </p>
1647  </blockquote><p>  </blockquote><p>
1648                        
1649  </p>  </p>
1650  <p>  <p>
1651                          </p>                          </p>
# Line 1422  Intellectual Property and Copyright Stat Line 1655  Intellectual Property and Copyright Stat
1655  <p>S: "OK[1]"  <p>S: "OK[1]"
1656  </p>  </p>
1657  </blockquote><p>  </blockquote><p>
1658                        
1659  </p>  </p>
1660  <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 />
1661    <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>
1662    <a name="rfc.section.6.2.6"></a><h3>6.2.6.&nbsp;
1663    Destroying an audio output device</h3>
1664    
1665  <p>Use the following command to destroy a created output device:  <p>Use the following command to destroy a created output device:
1666  </p>  </p>
# Line 1434  Intellectual Property and Copyright Stat Line 1670  Intellectual Property and Copyright Stat
1670  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;
1671  </p>  </p>
1672  </blockquote><p>  </blockquote><p>
1673                        
1674  </p>  </p>
1675  <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
1676                      audio output device as given by the                      audio output device as given by the
1677                      <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>
1678                      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>
1679                      command.                      command.
1680  </p>  </p>
1681  <p>Possible Answers:  <p>Possible Answers:
# Line 1452  Intellectual Property and Copyright Stat Line 1688  Intellectual Property and Copyright Stat
1688  <blockquote class="text">  <blockquote class="text">
1689  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
1690  </p>  </p>
1691  </blockquote><p>  </blockquote>
1692                                
1693    
 </p>  
1694  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1695                                  </p>                                  </p>
1696  <blockquote class="text">  <blockquote class="text">
# Line 1464  Intellectual Property and Copyright Stat Line 1700  Intellectual Property and Copyright Stat
1700                                      informed about this situation), providing an appropriate                                      informed about this situation), providing an appropriate
1701                                      warning code and warning message                                      warning code and warning message
1702  </p>  </p>
1703  </blockquote><p>  </blockquote>
1704                                
1705    
 </p>  
1706  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1707                                  </p>                                  </p>
1708  <blockquote class="text">  <blockquote class="text">
1709  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
1710                                      error message                                      error message
1711  </p>  </p>
1712  </blockquote><p>  </blockquote>
1713                                
1714    
 </p>  
1715  </blockquote><p>  </blockquote><p>
1716                        
1717  </p>  </p>
1718  <p>Example:  <p>Example:
1719  </p>  </p>
# Line 1489  Intellectual Property and Copyright Stat Line 1725  Intellectual Property and Copyright Stat
1725  <p>S: "OK"  <p>S: "OK"
1726  </p>  </p>
1727  </blockquote><p>  </blockquote><p>
1728                        
1729  </p>  </p>
1730  <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 />
1731    <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>
1732    <a name="rfc.section.6.2.7"></a><h3>6.2.7.&nbsp;
1733    Getting all created audio output device count</h3>
1734    
1735  <p>Use the following command to count all created audio output devices:  <p>Use the following command to count all created audio output devices:
1736  </p>  </p>
# Line 1501  Intellectual Property and Copyright Stat Line 1740  Intellectual Property and Copyright Stat
1740  <p>GET AUDIO_OUTPUT_DEVICES  <p>GET AUDIO_OUTPUT_DEVICES
1741  </p>  </p>
1742  </blockquote><p>  </blockquote><p>
1743                        
1744  </p>  </p>
1745  <p>Possible Answers:  <p>Possible Answers:
1746  </p>  </p>
# Line 1512  Intellectual Property and Copyright Stat Line 1751  Intellectual Property and Copyright Stat
1751                              audio output devices.                              audio output devices.
1752  </p>  </p>
1753  </blockquote><p>  </blockquote><p>
1754                        
1755  </p>  </p>
1756  <p>Example:  <p>Example:
1757  </p>  </p>
# Line 1524  Intellectual Property and Copyright Stat Line 1763  Intellectual Property and Copyright Stat
1763  <p>S: "4"  <p>S: "4"
1764  </p>  </p>
1765  </blockquote><p>  </blockquote><p>
1766                        
1767  </p>  </p>
1768  <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 />
1769    <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>
1770    <a name="rfc.section.6.2.8"></a><h3>6.2.8.&nbsp;
1771    Getting all created audio output device list</h3>
1772    
1773  <p>Use the following command to list all created audio output devices:  <p>Use the following command to list all created audio output devices:
1774  </p>  </p>
# Line 1536  Intellectual Property and Copyright Stat Line 1778  Intellectual Property and Copyright Stat
1778  <p>LIST AUDIO_OUTPUT_DEVICES  <p>LIST AUDIO_OUTPUT_DEVICES
1779  </p>  </p>
1780  </blockquote><p>  </blockquote><p>
1781                        
1782  </p>  </p>
1783  <p>Possible Answers:  <p>Possible Answers:
1784  </p>  </p>
# Line 1547  Intellectual Property and Copyright Stat Line 1789  Intellectual Property and Copyright Stat
1789                              the numerical IDs of all audio output devices.                              the numerical IDs of all audio output devices.
1790  </p>  </p>
1791  </blockquote><p>  </blockquote><p>
1792                        
1793  </p>  </p>
1794  <p>Example:  <p>Example:
1795  </p>  </p>
# Line 1559  Intellectual Property and Copyright Stat Line 1801  Intellectual Property and Copyright Stat
1801  <p>S: "0,1,4,5"  <p>S: "0,1,4,5"
1802  </p>  </p>
1803  </blockquote><p>  </blockquote><p>
1804                        
1805  </p>  </p>
1806  <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 />
1807    <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>
1808    <a name="rfc.section.6.2.9"></a><h3>6.2.9.&nbsp;
1809    Getting current settings of an audio output device</h3>
1810    
1811  <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:
1812  </p>  </p>
# Line 1571  Intellectual Property and Copyright Stat Line 1816  Intellectual Property and Copyright Stat
1816  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;
1817  </p>  </p>
1818  </blockquote><p>  </blockquote><p>
1819                        
1820  </p>  </p>
1821  <p>Where &lt;device-id&gt; should be replaced by numerical ID  <p>Where &lt;device-id&gt; should be replaced by numerical ID
1822                      of the audio output device as e.g. returned by the                      of the audio output device as e.g. returned by the
1823                      <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.
1824  </p>  </p>
1825  <p>Possible Answers:  <p>Possible Answers:
1826  </p>  </p>
# Line 1595  Intellectual Property and Copyright Stat Line 1840  Intellectual Property and Copyright Stat
1840  <blockquote class="text">  <blockquote class="text">
1841  <p>identifier of the used audio output driver, as also  <p>identifier of the used audio output driver, as also
1842                                      returned by the                                      returned by the
1843                                      <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>
1844                                      command                                      command
1845  </p>  </p>
1846  </blockquote><p>  </blockquote>
1847                                
1848    
 </p>  
1849  <p>CHANNELS -  <p>CHANNELS -
1850                                  </p>                                  </p>
1851  <blockquote class="text">  <blockquote class="text">
1852  <p>amount of audio output channels this device currently  <p>amount of audio output channels this device currently
1853                                      offers                                      offers
1854  </p>  </p>
1855  </blockquote><p>  </blockquote>
1856                                
1857    
 </p>  
1858  <p>SAMPLERATE -  <p>SAMPLERATE -
1859                                  </p>                                  </p>
1860  <blockquote class="text">  <blockquote class="text">
1861  <p>playback sample rate the device uses  <p>playback sample rate the device uses
1862  </p>  </p>
1863  </blockquote><p>  </blockquote>
1864                                
1865    
 </p>  
1866  <p>ACTIVE -  <p>ACTIVE -
1867                                  </p>                                  </p>
1868  <blockquote class="text">  <blockquote class="text">
# Line 1626  Intellectual Property and Copyright Stat Line 1871  Intellectual Property and Copyright Stat
1871                                      sampler channels connected to this audio device render                                      sampler channels connected to this audio device render
1872                                      any audio                                      any audio
1873  </p>  </p>
1874  </blockquote><p>  </blockquote>
1875                                
1876    
 </p>  
1877  </blockquote><p>  </blockquote><p>
1878                        
1879  </p>  </p>
1880  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1881                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1882                      returned by all audio output devices. Every audio output driver                      returned by all audio output devices. Every audio output driver
1883                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
1884                      <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>)
1885                      which are also returned by this command.                      which are also returned by this command.
1886  </p>  </p>
1887  <p>Example:  <p>Example:
# Line 1663  Intellectual Property and Copyright Stat Line 1908  Intellectual Property and Copyright Stat
1908  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1909  </p>  </p>
1910  </blockquote><p>  </blockquote><p>
1911                        
1912  </p>  </p>
1913  <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 />
1914    <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>
1915    <a name="rfc.section.6.2.10"></a><h3>6.2.10.&nbsp;
1916    Changing settings of audio output devices</h3>
1917    
1918  <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:
1919  </p>  </p>
# Line 1675  Intellectual Property and Copyright Stat Line 1923  Intellectual Property and Copyright Stat
1923  <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;
1924  </p>  </p>
1925  </blockquote><p>  </blockquote><p>
1926                        
1927  </p>  </p>
1928  <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
1929                      audio output device as given by the                      audio output device as given by the
1930                      <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>
1931                      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>
1932                      command, &lt;key&gt; by the name of the parameter to change                      command, &lt;key&gt; by the name of the parameter to change
1933                      and &lt;value&gt; by the new value for this parameter.                      and &lt;value&gt; by the new value for this parameter.
1934  </p>  </p>
# Line 1694  Intellectual Property and Copyright Stat Line 1942  Intellectual Property and Copyright Stat
1942  <blockquote class="text">  <blockquote class="text">
1943  <p>in case setting was successfully changed  <p>in case setting was successfully changed
1944  </p>  </p>
1945  </blockquote><p>  </blockquote>
1946                                
1947    
 </p>  
1948  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1949                                  </p>                                  </p>
1950  <blockquote class="text">  <blockquote class="text">
# Line 1704  Intellectual Property and Copyright Stat Line 1952  Intellectual Property and Copyright Stat
1952                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
1953                                      warning code and warning message                                      warning code and warning message
1954  </p>  </p>
1955  </blockquote><p>  </blockquote>
1956                                
1957    
 </p>  
1958  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1959                                  </p>                                  </p>
1960  <blockquote class="text">  <blockquote class="text">
1961  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
1962                                      error message                                      error message
1963  </p>  </p>
1964  </blockquote><p>  </blockquote>
1965                                
1966    
 </p>  
1967  </blockquote><p>  </blockquote><p>
1968                        
1969  </p>  </p>
1970  <p>Example:  <p>Example:
1971  </p>  </p>
# Line 1729  Intellectual Property and Copyright Stat Line 1977  Intellectual Property and Copyright Stat
1977  <p>S: "OK"  <p>S: "OK"
1978  </p>  </p>
1979  </blockquote><p>  </blockquote><p>
1980                        
1981  </p>  </p>
1982  <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 />
1983    <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>
1984    <a name="rfc.section.6.2.11"></a><h3>6.2.11.&nbsp;
1985    Getting information about an audio channel</h3>
1986    
1987  <p>Use the following command to get information about an audio channel:  <p>Use the following command to get information about an audio channel:
1988  </p>  </p>
# Line 1741  Intellectual Property and Copyright Stat Line 1992  Intellectual Property and Copyright Stat
1992  <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;
1993  </p>  </p>
1994  </blockquote><p>  </blockquote><p>
1995                        
1996  </p>  </p>
1997  <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
1998                      <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>
1999                      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>
2000                      command and &lt;audio-chan&gt; the audio channel number.                      command and &lt;audio-chan&gt; the audio channel number.
2001  </p>  </p>
2002  <p>Possible Answers:  <p>Possible Answers:
# Line 1768  Intellectual Property and Copyright Stat Line 2019  Intellectual Property and Copyright Stat
2019  <p>arbitrary character string naming the channel, which  <p>arbitrary character string naming the channel, which
2020                                              doesn't have to be unique (always returned by all audio channels)                                              doesn't have to be unique (always returned by all audio channels)
2021  </p>  </p>
2022  </blockquote><p>  </blockquote>
2023                                        
2024    
 </p>  
2025  <p>IS_MIX_CHANNEL -  <p>IS_MIX_CHANNEL -
2026                                          </p>                                          </p>
2027  <blockquote class="text">  <blockquote class="text">
# Line 1781  Intellectual Property and Copyright Stat Line 2032  Intellectual Property and Copyright Stat
2032                                              channels than the used audio system might be able to offer                                              channels than the used audio system might be able to offer
2033                                              (always returned by all audio channels)                                              (always returned by all audio channels)
2034  </p>  </p>
2035  </blockquote><p>  </blockquote>
2036                                        
2037    
 </p>  
2038  <p>MIX_CHANNEL_DESTINATION -  <p>MIX_CHANNEL_DESTINATION -
2039                                          </p>                                          </p>
2040  <blockquote class="text">  <blockquote class="text">
# Line 1793  Intellectual Property and Copyright Stat Line 2044  Intellectual Property and Copyright Stat
2044                                              the audio signal actually will be routed / added to                                              the audio signal actually will be routed / added to
2045                                              (only returned in case the audio channel is mix channel)                                              (only returned in case the audio channel is mix channel)
2046  </p>  </p>
2047  </blockquote><p>  </blockquote>
2048                                        
2049    
2050  </p>  </blockquote>
2051  </blockquote><p>                              
2052    
 </p>  
2053  </blockquote><p>  </blockquote><p>
2054                        
2055  </p>  </p>
2056  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
2057                      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 2074  Intellectual Property and Copyright Stat
2074  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2075  </p>  </p>
2076  </blockquote><p>  </blockquote><p>
2077                        
2078  </p>  </p>
2079  <p>  <p>
2080                          </p>                          </p>
# Line 1837  Intellectual Property and Copyright Stat Line 2088  Intellectual Property and Copyright Stat
2088  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2089  </p>  </p>
2090  </blockquote><p>  </blockquote><p>
2091                        
2092  </p>  </p>
2093  <p>  <p>
2094                          </p>                          </p>
# Line 1853  Intellectual Property and Copyright Stat Line 2104  Intellectual Property and Copyright Stat
2104  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2105  </p>  </p>
2106  </blockquote><p>  </blockquote><p>
2107                        
2108  </p>  </p>
2109  <p>  <p>
2110                          </p>                          </p>
# Line 1869  Intellectual Property and Copyright Stat Line 2120  Intellectual Property and Copyright Stat
2120  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2121  </p>  </p>
2122  </blockquote><p>  </blockquote><p>
2123                        
2124  </p>  </p>
2125  <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 />
2126    <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>
2127    <a name="rfc.section.6.2.12"></a><h3>6.2.12.&nbsp;
2128    Getting information about specific audio channel parameter</h3>
2129    
2130  <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:
2131  </p>  </p>
# Line 1881  Intellectual Property and Copyright Stat Line 2135  Intellectual Property and Copyright Stat
2135  <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;
2136  </p>  </p>
2137  </blockquote><p>  </blockquote><p>
2138                        
2139  </p>  </p>
2140  <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
2141                      <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>
2142                      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>
2143                      command, &lt;chan&gt; the audio channel number                      command, &lt;chan&gt; the audio channel number
2144                      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
2145                      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).
2146  </p>  </p>
2147  <p>Possible Answers:  <p>Possible Answers:
2148  </p>  </p>
# Line 1915  Intellectual Property and Copyright Stat Line 2169  Intellectual Property and Copyright Stat
2169                                              character string(s)                                              character string(s)
2170                                              (always returned)                                              (always returned)
2171  </p>  </p>
2172  </blockquote><p>  </blockquote>
2173                                        
2174    
 </p>  
2175  <p>DESCRIPTION -  <p>DESCRIPTION -
2176                                          </p>                                          </p>
2177  <blockquote class="text">  <blockquote class="text">
2178  <p>arbitrary text describing the purpose of the parameter (always returned)  <p>arbitrary text describing the purpose of the parameter (always returned)
2179  </p>  </p>
2180  </blockquote><p>  </blockquote>
2181                                        
2182    
 </p>  
2183  <p>FIX -  <p>FIX -
2184                                          </p>                                          </p>
2185  <blockquote class="text">  <blockquote class="text">
# Line 1933  Intellectual Property and Copyright Stat Line 2187  Intellectual Property and Copyright Stat
2187                                              read only, thus cannot be altered                                              read only, thus cannot be altered
2188                                              (always returned)                                              (always returned)
2189  </p>  </p>
2190  </blockquote><p>  </blockquote>
2191                                        
2192    
 </p>  
2193  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2194                                          </p>                                          </p>
2195  <blockquote class="text">  <blockquote class="text">
# Line 1944  Intellectual Property and Copyright Stat Line 2198  Intellectual Property and Copyright Stat
2198                                              multiple values and false only a single value allowed                                              multiple values and false only a single value allowed
2199                                              (always returned)                                              (always returned)
2200  </p>  </p>
2201  </blockquote><p>  </blockquote>
2202                                        
2203    
 </p>  
2204  <p>RANGE_MIN -  <p>RANGE_MIN -
2205                                          </p>                                          </p>
2206  <blockquote class="text">  <blockquote class="text">
# Line 1957  Intellectual Property and Copyright Stat Line 2211  Intellectual Property and Copyright Stat
2211                                              (optionally returned, dependent to driver and channel                                              (optionally returned, dependent to driver and channel
2212                                              parameter)                                              parameter)
2213  </p>  </p>
2214  </blockquote><p>  </blockquote>
2215                                        
2216    
 </p>  
2217  <p>RANGE_MAX -  <p>RANGE_MAX -
2218                                          </p>                                          </p>
2219  <blockquote class="text">  <blockquote class="text">
# Line 1970  Intellectual Property and Copyright Stat Line 2224  Intellectual Property and Copyright Stat
2224                                              (optionally returned, dependent to driver and channel                                              (optionally returned, dependent to driver and channel
2225                                              parameter)                                              parameter)
2226  </p>  </p>
2227  </blockquote><p>  </blockquote>
2228                                        
2229    
 </p>  
2230  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2231                                          </p>                                          </p>
2232  <blockquote class="text">  <blockquote class="text">
# Line 1982  Intellectual Property and Copyright Stat Line 2236  Intellectual Property and Copyright Stat
2236                                              (optionally returned, dependent to driver and channel                                              (optionally returned, dependent to driver and channel
2237                                              parameter)                                              parameter)
2238  </p>  </p>
2239  </blockquote><p>  </blockquote>
2240                                        
2241    
2242  </p>  </blockquote>
2243  </blockquote><p>                              
2244    
 </p>  
2245  <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.
2246  </p>  </p>
2247  </blockquote><p>  </blockquote><p>
2248                        
2249  </p>  </p>
2250  <p>Example:  <p>Example:
2251  </p>  </p>
# Line 2013  Intellectual Property and Copyright Stat Line 2267  Intellectual Property and Copyright Stat
2267  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2268  </p>  </p>
2269  </blockquote><p>  </blockquote><p>
2270                        
2271  </p>  </p>
2272  <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 />
2273    <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>
2274    <a name="rfc.section.6.2.13"></a><h3>6.2.13.&nbsp;
2275    Changing settings of audio output channels</h3>
2276    
2277  <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:
2278  </p>  </p>
# Line 2025  Intellectual Property and Copyright Stat Line 2282  Intellectual Property and Copyright Stat
2282  <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;
2283  </p>  </p>
2284  </blockquote><p>  </blockquote><p>
2285                        
2286  </p>  </p>
2287  <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
2288                      <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>
2289                      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>
2290                      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
2291                      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.
2292  </p>  </p>
# Line 2043  Intellectual Property and Copyright Stat Line 2300  Intellectual Property and Copyright Stat
2300  <blockquote class="text">  <blockquote class="text">
2301  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2302  </p>  </p>
2303  </blockquote><p>  </blockquote>
2304                                
2305    
 </p>  
2306  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2307                                  </p>                                  </p>
2308  <blockquote class="text">  <blockquote class="text">
# Line 2053  Intellectual Property and Copyright Stat Line 2310  Intellectual Property and Copyright Stat
2310                                     noteworthy issue(s) related, providing an appropriate                                     noteworthy issue(s) related, providing an appropriate
2311                                     warning code and warning message                                     warning code and warning message
2312  </p>  </p>
2313  </blockquote><p>  </blockquote>
2314                                
2315    
 </p>  
2316  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2317                                  </p>                                  </p>
2318  <blockquote class="text">  <blockquote class="text">
2319  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
2320                                     error message                                     error message
2321  </p>  </p>
2322  </blockquote><p>  </blockquote>
2323                                
2324    
 </p>  
2325  </blockquote><p>  </blockquote><p>
2326                        
2327  </p>  </p>
2328  <p>Example:  <p>Example:
2329  </p>  </p>
# Line 2078  Intellectual Property and Copyright Stat Line 2335  Intellectual Property and Copyright Stat
2335  <p>S: "OK"  <p>S: "OK"
2336  </p>  </p>
2337  </blockquote><p>  </blockquote><p>
2338                        
2339  </p>  </p>
2340  <p>  <p>
2341                          </p>                          </p>
# Line 2088  Intellectual Property and Copyright Stat Line 2345  Intellectual Property and Copyright Stat
2345  <p>S: "OK"  <p>S: "OK"
2346  </p>  </p>
2347  </blockquote><p>  </blockquote><p>
2348                        
2349  </p>  </p>
2350  <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 />
2351    <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>
2352    <a name="rfc.section.6.3"></a><h3>6.3.&nbsp;
2353    Configuring MIDI input drivers</h3>
2354    
2355  <p>Instances of drivers in LinuxSampler are called devices. You can use  <p>Instances of drivers in LinuxSampler are called devices. You can use
2356                  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 2378  Intellectual Property and Copyright Stat
2378                  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
2379                  possible values, etc.                  possible values, etc.
2380  </p>  </p>
2381  <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 />
2382    <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>
2383    <a name="rfc.section.6.3.1"></a><h3>6.3.1.&nbsp;
2384    Getting amount of available MIDI input drivers</h3>
2385    
2386  <p>Use the following command to get the number of  <p>Use the following command to get the number of
2387                      MIDI input drivers currently available for the                      MIDI input drivers currently available for the
# Line 2130  Intellectual Property and Copyright Stat Line 2393  Intellectual Property and Copyright Stat
2393  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS
2394  </p>  </p>
2395  </blockquote><p>  </blockquote><p>
2396                        
2397  </p>  </p>
2398  <p>Possible Answers:  <p>Possible Answers:
2399  </p>  </p>
# Line 2141  Intellectual Property and Copyright Stat Line 2404  Intellectual Property and Copyright Stat
2404                              number of available MIDI input drivers.                              number of available MIDI input drivers.
2405  </p>  </p>
2406  </blockquote><p>  </blockquote><p>
2407                        
2408  </p>  </p>
2409  <p>Example:  <p>Example:
2410  </p>  </p>
# Line 2153  Intellectual Property and Copyright Stat Line 2416  Intellectual Property and Copyright Stat
2416  <p>S: "2"  <p>S: "2"
2417  </p>  </p>
2418  </blockquote><p>  </blockquote><p>
2419                        
2420  </p>  </p>
2421  <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 />
2422    <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>
2423    <a name="rfc.section.6.3.2"></a><h3>6.3.2.&nbsp;
2424    Getting all available MIDI input drivers</h3>
2425    
2426  <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
2427                      for the LinuxSampler instance:                      for the LinuxSampler instance:
# Line 2166  Intellectual Property and Copyright Stat Line 2432  Intellectual Property and Copyright Stat
2432  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS
2433  </p>  </p>
2434  </blockquote><p>  </blockquote><p>
2435                        
2436  </p>  </p>
2437  <p>Possible Answers:  <p>Possible Answers:
2438  </p>  </p>
# Line 2177  Intellectual Property and Copyright Stat Line 2443  Intellectual Property and Copyright Stat
2443                              strings, each symbolizing a MIDI input driver.                              strings, each symbolizing a MIDI input driver.
2444  </p>  </p>
2445  </blockquote><p>  </blockquote><p>
2446                        
2447  </p>  </p>
2448  <p>Example:  <p>Example:
2449  </p>  </p>
# Line 2189  Intellectual Property and Copyright Stat Line 2455  Intellectual Property and Copyright Stat
2455  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
2456  </p>  </p>
2457  </blockquote><p>  </blockquote><p>
2458                        
2459  </p>  </p>
2460  <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 />
2461    <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>
2462    <a name="rfc.section.6.3.3"></a><h3>6.3.3.&nbsp;
2463    Getting information about a specific MIDI input driver</h3>
2464    
2465  <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:
2466  </p>  </p>
# Line 2201  Intellectual Property and Copyright Stat Line 2470  Intellectual Property and Copyright Stat
2470  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;
2471  </p>  </p>
2472  </blockquote><p>  </blockquote><p>
2473                        
2474  </p>  </p>
2475  <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
2476                      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.
2477  </p>  </p>
2478  <p>Possible Answers:  <p>Possible Answers:
2479  </p>  </p>
# Line 2225  Intellectual Property and Copyright Stat Line 2494  Intellectual Property and Copyright Stat
2494  <blockquote class="text">  <blockquote class="text">
2495  <p>arbitrary description text about the MIDI input driver  <p>arbitrary description text about the MIDI input driver
2496  </p>  </p>
2497  </blockquote><p>  </blockquote>
2498                                        
2499    
 </p>  
2500  <p>VERSION -  <p>VERSION -
2501                                          </p>                                          </p>
2502  <blockquote class="text">  <blockquote class="text">
2503  <p>arbitrary character string regarding the driver's version  <p>arbitrary character string regarding the driver's version
2504  </p>  </p>
2505  </blockquote><p>  </blockquote>
2506                                        
2507    
 </p>  
2508  <p>PARAMETERS -  <p>PARAMETERS -
2509                                          </p>                                          </p>
2510  <blockquote class="text">  <blockquote class="text">
2511  <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
2512  </p>  </p>
2513  </blockquote><p>  </blockquote>
2514                                        
2515    
2516  </p>  </blockquote>
2517  </blockquote><p>                              
2518    
 </p>  
2519  <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.
2520  </p>  </p>
2521  </blockquote><p>  </blockquote><p>
2522                        
2523  </p>  </p>
2524  <p>Example:  <p>Example:
2525  </p>  </p>
# Line 2268  Intellectual Property and Copyright Stat Line 2537  Intellectual Property and Copyright Stat
2537  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2538  </p>  </p>
2539  </blockquote><p>  </blockquote><p>
2540                        
2541  </p>  </p>
2542  <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 />
2543    <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>
2544    <a name="rfc.section.6.3.4"></a><h3>6.3.4.&nbsp;
2545    Getting information about specific MIDI input driver parameter</h3>
2546    
2547  <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:
2548  </p>  </p>
# Line 2280  Intellectual Property and Copyright Stat Line 2552  Intellectual Property and Copyright Stat
2552  <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;]
2553  </p>  </p>
2554  </blockquote><p>  </blockquote><p>
2555                        
2556  </p>  </p>
2557  <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
2558                      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
2559                      parameter name for which information should be obtained (as returned by the                      parameter name for which information should be obtained (as returned by the
2560                      <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
2561                      of parameters on which the sought parameter &lt;param&gt; depends on,                      of parameters on which the sought parameter &lt;param&gt; depends on,
2562                      &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 ...",
2563                      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 2587  Intellectual Property and Copyright Stat
2587                                  character string(s)                                  character string(s)
2588                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2589  </p>  </p>
2590  </blockquote><p>  </blockquote>
2591                                
2592    
 </p>  
2593  <p>DESCRIPTION -  <p>DESCRIPTION -
2594                                </p>                                </p>
2595  <blockquote class="text">  <blockquote class="text">
2596  <p>arbitrary text describing the purpose of the parameter  <p>arbitrary text describing the purpose of the parameter
2597                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2598  </p>  </p>
2599  </blockquote><p>  </blockquote>
2600                                
2601    
 </p>  
2602  <p>MANDATORY -  <p>MANDATORY -
2603                                </p>                                </p>
2604  <blockquote class="text">  <blockquote class="text">
2605  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
2606                                  given when the device is to be created with the                                  given when the device is to be created with the
2607                                  <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
2608                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2609  </p>  </p>
2610  </blockquote><p>  </blockquote>
2611                                
2612    
 </p>  
2613  <p>FIX -  <p>FIX -
2614                                </p>                                </p>
2615  <blockquote class="text">  <blockquote class="text">
2616  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
2617                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
2618                                  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
2619                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2620  </p>  </p>
2621  </blockquote><p>  </blockquote>
2622                                
2623    
 </p>  
2624  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2625                                </p>                                </p>
2626  <blockquote class="text">  <blockquote class="text">
# Line 2357  Intellectual Property and Copyright Stat Line 2629  Intellectual Property and Copyright Stat
2629                                  multiple values and false only a single value allowed                                  multiple values and false only a single value allowed
2630                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2631  </p>  </p>
2632  </blockquote><p>  </blockquote>
2633                                
2634    
 </p>  
2635  <p>DEPENDS -  <p>DEPENDS -
2636                                </p>                                </p>
2637  <blockquote class="text">  <blockquote class="text">
# Line 2374  Intellectual Property and Copyright Stat Line 2646  Intellectual Property and Copyright Stat
2646                                  chosen by the 'card' parameter                                  chosen by the 'card' parameter
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>DEFAULT -  <p>DEFAULT -
2653                                </p>                                </p>
2654  <blockquote class="text">  <blockquote class="text">
2655  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
2656                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
2657                                  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,
2658                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
2659                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
2660                                  apostrophes (')                                  apostrophes (')
2661                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2662  </p>  </p>
2663  </blockquote><p>  </blockquote>
2664                                
2665    
 </p>  
2666  <p>RANGE_MIN -  <p>RANGE_MIN -
2667                                </p>                                </p>
2668  <blockquote class="text">  <blockquote class="text">
# Line 2400  Intellectual Property and Copyright Stat Line 2672  Intellectual Property and Copyright Stat
2672                                  with RANGE_MAX, but may also appear without                                  with RANGE_MAX, but may also appear without
2673                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2674  </p>  </p>
2675  </blockquote><p>  </blockquote>
2676                                
2677    
 </p>  
2678  <p>RANGE_MAX -  <p>RANGE_MAX -
2679                                </p>                                </p>
2680  <blockquote class="text">  <blockquote class="text">
# Line 2412  Intellectual Property and Copyright Stat Line 2684  Intellectual Property and Copyright Stat
2684                                  RANGE_MIN, but may also appear without                                  RANGE_MIN, but may also appear without
2685                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2686  </p>  </p>
2687  </blockquote><p>  </blockquote>
2688                                
2689    
 </p>  
2690  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2691                                </p>                                </p>
2692  <blockquote class="text">  <blockquote class="text">
# Line 2423  Intellectual Property and Copyright Stat Line 2695  Intellectual Property and Copyright Stat
2695                                  apostrophes                                  apostrophes
2696                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2697  </p>  </p>
2698  </blockquote><p>  </blockquote>
2699                                
2700    
 </p>  
2701  </blockquote><p>  </blockquote><p>
2702                        
2703  </p>  </p>
2704  <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.
2705  </p>  </p>
# Line 2453  Intellectual Property and Copyright Stat Line 2725  Intellectual Property and Copyright Stat
2725  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2726  </p>  </p>
2727  </blockquote><p>  </blockquote><p>
2728                        
2729  </p>  </p>
2730  <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 />
2731    <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>
2732    <a name="rfc.section.6.3.5"></a><h3>6.3.5.&nbsp;
2733    Creating a MIDI input device</h3>
2734    
2735  <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:
2736  </p>  </p>
# Line 2465  Intellectual Property and Copyright Stat Line 2740  Intellectual Property and Copyright Stat
2740  <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;]
2741  </p>  </p>
2742  </blockquote><p>  </blockquote><p>
2743                        
2744  </p>  </p>
2745  <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
2746                      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
2747                      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
2748                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
2749                      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 2761  Intellectual Property and Copyright Stat
2761  <p>in case the device was successfully created, where  <p>in case the device was successfully created, where
2762                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
2763  </p>  </p>
2764  </blockquote><p>  </blockquote>
2765                                
2766    
 </p>  
2767  <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;" -
2768                                  </p>                                  </p>
2769  <blockquote class="text">  <blockquote class="text">
# Line 2497  Intellectual Property and Copyright Stat Line 2772  Intellectual Property and Copyright Stat
2772                                      there are noteworthy issue(s) related, providing an                                      there are noteworthy issue(s) related, providing an
2773                                      appropriate warning code and warning message                                      appropriate warning code and warning message
2774  </p>  </p>
2775  </blockquote><p>  </blockquote>
2776                                
2777    
 </p>  
2778  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2779                                  </p>                                  </p>
2780  <blockquote class="text">  <blockquote class="text">
2781  <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
2782  </p>  </p>
2783  </blockquote><p>  </blockquote>
2784                                
2785    
 </p>  
2786  </blockquote><p>  </blockquote><p>
2787                        
2788  </p>  </p>
2789  <p>Example:  <p>Example:
2790  </p>  </p>
# Line 2521  Intellectual Property and Copyright Stat Line 2796  Intellectual Property and Copyright Stat
2796  <p>S: "OK[0]"  <p>S: "OK[0]"
2797  </p>  </p>
2798  </blockquote><p>  </blockquote><p>
2799                        
2800  </p>  </p>
2801  <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 />
2802    <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>
2803    <a name="rfc.section.6.3.6"></a><h3>6.3.6.&nbsp;
2804    Destroying a MIDI input device</h3>
2805    
2806  <p>Use the following command to destroy a created MIDI input device:  <p>Use the following command to destroy a created MIDI input device:
2807  </p>  </p>
# Line 2533  Intellectual Property and Copyright Stat Line 2811  Intellectual Property and Copyright Stat
2811  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;
2812  </p>  </p>
2813  </blockquote><p>  </blockquote><p>
2814                        
2815  </p>  </p>
2816  <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
2817                      <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>
2818                      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>
2819                      command.                      command.
2820  </p>  </p>
2821  <p>Possible Answers:  <p>Possible Answers:
# Line 2550  Intellectual Property and Copyright Stat Line 2828  Intellectual Property and Copyright Stat
2828  <blockquote class="text">  <blockquote class="text">
2829  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
2830  </p>  </p>
2831  </blockquote><p>  </blockquote>
2832                                
2833    
 </p>  
2834  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2835                                  </p>                                  </p>
2836  <blockquote class="text">  <blockquote class="text">
# Line 2560  Intellectual Property and Copyright Stat Line 2838  Intellectual Property and Copyright Stat
2838                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
2839                                      warning message                                      warning message
2840  </p>  </p>
2841  </blockquote><p>  </blockquote>
2842                                
2843    
 </p>  
2844  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2845                                  </p>                                  </p>
2846  <blockquote class="text">  <blockquote class="text">
2847  <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
2848  </p>  </p>
2849  </blockquote><p>  </blockquote>
2850                                
2851    
 </p>  
2852  </blockquote><p>  </blockquote><p>
2853                        
2854  </p>  </p>
2855  <p>Example:  <p>Example:
2856  </p>  </p>
# Line 2584  Intellectual Property and Copyright Stat Line 2862  Intellectual Property and Copyright Stat
2862  <p>S: "OK"  <p>S: "OK"
2863  </p>  </p>
2864  </blockquote><p>  </blockquote><p>
2865                        
2866  </p>  </p>
2867  <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 />
2868    <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>
2869    <a name="rfc.section.6.3.7"></a><h3>6.3.7.&nbsp;
2870    Getting all created MIDI input device count</h3>
2871    
2872  <p>Use the following command to count all created MIDI input devices:  <p>Use the following command to count all created MIDI input devices:
2873  </p>  </p>
# Line 2596  Intellectual Property and Copyright Stat Line 2877  Intellectual Property and Copyright Stat
2877  <p>GET MIDI_INPUT_DEVICES  <p>GET MIDI_INPUT_DEVICES
2878  </p>  </p>
2879  </blockquote><p>  </blockquote><p>
2880                        
2881  </p>  </p>
2882  <p>Possible Answers:  <p>Possible Answers:
2883  </p>  </p>
# Line 2607  Intellectual Property and Copyright Stat Line 2888  Intellectual Property and Copyright Stat
2888                              MIDI input devices.                              MIDI input devices.
2889  </p>  </p>
2890  </blockquote><p>  </blockquote><p>
2891                        
2892  </p>  </p>
2893  <p>Example:  <p>Example:
2894  </p>  </p>
# Line 2619  Intellectual Property and Copyright Stat Line 2900  Intellectual Property and Copyright Stat
2900  <p>S: "3"  <p>S: "3"
2901  </p>  </p>
2902  </blockquote><p>  </blockquote><p>
2903                        
2904  </p>  </p>
2905  <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 />
2906    <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>
2907    <a name="rfc.section.6.3.8"></a><h3>6.3.8.&nbsp;
2908    Getting all created MIDI input device list</h3>
2909    
2910  <p>Use the following command to list all created MIDI input devices:  <p>Use the following command to list all created MIDI input devices:
2911  </p>  </p>
# Line 2631  Intellectual Property and Copyright Stat Line 2915  Intellectual Property and Copyright Stat
2915  <p>LIST MIDI_INPUT_DEVICES  <p>LIST MIDI_INPUT_DEVICES
2916  </p>  </p>
2917  </blockquote><p>  </blockquote><p>
2918                        
2919  </p>  </p>
2920  <p>Possible Answers:  <p>Possible Answers:
2921  </p>  </p>
# Line 2642  Intellectual Property and Copyright Stat Line 2926  Intellectual Property and Copyright Stat
2926                              with the numerical Ids of all created MIDI input devices.                              with the numerical Ids of all created MIDI input devices.
2927  </p>  </p>
2928  </blockquote><p>  </blockquote><p>
2929                        
2930  </p>  </p>
2931  <p>Examples:  <p>Examples:
2932  </p>  </p>
# Line 2654  Intellectual Property and Copyright Stat Line 2938  Intellectual Property and Copyright Stat
2938  <p>S: "0,1,2"  <p>S: "0,1,2"
2939  </p>  </p>
2940  </blockquote><p>  </blockquote><p>
2941                        
2942  </p>  </p>
2943  <p>  <p>
2944                          </p>                          </p>
# Line 2664  Intellectual Property and Copyright Stat Line 2948  Intellectual Property and Copyright Stat
2948  <p>S: "1,3"  <p>S: "1,3"
2949  </p>  </p>
2950  </blockquote><p>  </blockquote><p>
2951                        
2952  </p>  </p>
2953  <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 />
2954    <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>
2955    <a name="rfc.section.6.3.9"></a><h3>6.3.9.&nbsp;
2956    Getting current settings of a MIDI input device</h3>
2957    
2958  <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:
2959  </p>  </p>
# Line 2676  Intellectual Property and Copyright Stat Line 2963  Intellectual Property and Copyright Stat
2963  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;
2964  </p>  </p>
2965  </blockquote><p>  </blockquote><p>
2966                        
2967  </p>  </p>
2968  <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
2969                      <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>
2970                      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>
2971                      command.                      command.
2972  </p>  </p>
2973  <p>Possible Answers:  <p>Possible Answers:
# Line 2703  Intellectual Property and Copyright Stat Line 2990  Intellectual Property and Copyright Stat
2990                                          </p>                                          </p>
2991  <blockquote class="text">  <blockquote class="text">
2992  <p>identifier of the used MIDI input driver, as e.g.  <p>identifier of the used MIDI input driver, as e.g.
2993                                              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>
2994                                              command                                              command
2995  </p>  </p>
2996  </blockquote><p>  </blockquote>
2997                                        
2998    
2999  </p>  </blockquote>
3000  </blockquote><p>                                  
                                 </p>  
3001  <blockquote class="text">  <blockquote class="text">
3002  <p>ACTIVE -  <p>ACTIVE -
3003                                          </p>                                          </p>
# Line 2720  Intellectual Property and Copyright Stat Line 3007  Intellectual Property and Copyright Stat
3007                                              and thus doesn't forward them to connected sampler                                              and thus doesn't forward them to connected sampler
3008                                              channels                                              channels
3009  </p>  </p>
3010  </blockquote><p>  </blockquote>
3011                                        
3012    
3013  </p>  </blockquote>
3014  </blockquote><p>                              
3015    
 </p>  
3016  </blockquote><p>  </blockquote><p>
3017                        
3018  </p>  </p>
3019  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
3020                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
3021                      returned by all MIDI input devices. Every MIDI input driver                      returned by all MIDI input devices. Every MIDI input driver
3022                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
3023                      <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
3024                      by this command.                      by this command.
3025  </p>  </p>
3026  <p>Example:  <p>Example:
# Line 2750  Intellectual Property and Copyright Stat Line 3037  Intellectual Property and Copyright Stat
3037  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3038  </p>  </p>
3039  </blockquote><p>  </blockquote><p>
3040                        
3041  </p>  </p>
3042  <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 />
3043    <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>
3044    <a name="rfc.section.6.3.10"></a><h3>6.3.10.&nbsp;
3045    Changing settings of MIDI input devices</h3>
3046    
3047  <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:
3048  </p>  </p>
# Line 2762  Intellectual Property and Copyright Stat Line 3052  Intellectual Property and Copyright Stat
3052  <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;
3053  </p>  </p>
3054  </blockquote><p>  </blockquote><p>
3055                        
3056  </p>  </p>
3057  <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
3058                      MIDI input device as returned by the                      MIDI input device as returned by the
3059                      <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>
3060                      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>
3061                      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
3062                      &lt;value&gt; by the new value for this parameter.                      &lt;value&gt; by the new value for this parameter.
3063  </p>  </p>
# Line 2781  Intellectual Property and Copyright Stat Line 3071  Intellectual Property and Copyright Stat
3071  <blockquote class="text">  <blockquote class="text">
3072  <p>in case setting was successfully changed  <p>in case setting was successfully changed
3073  </p>  </p>
3074  </blockquote><p>  </blockquote>
3075                                
3076    
 </p>  
3077  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3078                                  </p>                                  </p>
3079  <blockquote class="text">  <blockquote class="text">
# Line 2791  Intellectual Property and Copyright Stat Line 3081  Intellectual Property and Copyright Stat
3081                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3082                                      warning code and warning message                                      warning code and warning message
3083  </p>  </p>
3084  </blockquote><p>  </blockquote>
3085                                
3086    
 </p>  
3087  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3088                                  </p>                                  </p>
3089  <blockquote class="text">  <blockquote class="text">
3090  <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
3091  </p>  </p>
3092  </blockquote><p>  </blockquote>
3093                                
3094    
 </p>  
3095  </blockquote><p>  </blockquote><p>
3096                        
3097  </p>  </p>
3098  <p>Example:  <p>Example:
3099  </p>  </p>
# Line 2815  Intellectual Property and Copyright Stat Line 3105  Intellectual Property and Copyright Stat
3105  <p>S: "OK"  <p>S: "OK"
3106  </p>  </p>
3107  </blockquote><p>  </blockquote><p>
3108                        
3109  </p>  </p>
3110  <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 />
3111    <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>
3112    <a name="rfc.section.6.3.11"></a><h3>6.3.11.&nbsp;
3113    Getting information about a MIDI port</h3>
3114    
3115  <p>Use the following command to get information about a MIDI port:  <p>Use the following command to get information about a MIDI port:
3116  </p>  </p>
# Line 2827  Intellectual Property and Copyright Stat Line 3120  Intellectual Property and Copyright Stat
3120  <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;
3121  </p>  </p>
3122  </blockquote><p>  </blockquote><p>
3123                        
3124  </p>  </p>
3125  <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
3126                      <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>
3127                      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>
3128                      command and &lt;midi-port&gt; the MIDI input port number.                      command and &lt;midi-port&gt; the MIDI input port number.
3129  </p>  </p>
3130  <p>Possible Answers:  <p>Possible Answers:
# Line 2850  Intellectual Property and Copyright Stat Line 3143  Intellectual Property and Copyright Stat
3143  <blockquote class="text">  <blockquote class="text">
3144  <p>arbitrary character string naming the port  <p>arbitrary character string naming the port
3145  </p>  </p>
3146  </blockquote><p>  </blockquote>
3147                                
3148    
 </p>  
3149  </blockquote><p>  </blockquote><p>
3150                        
3151  </p>  </p>
3152  <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
3153                      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 3168  Intellectual Property and Copyright Stat
3168  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3169  </p>  </p>
3170  </blockquote><p>  </blockquote><p>
3171                        
3172  </p>  </p>
3173  <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 />
3174    <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>
3175    <a name="rfc.section.6.3.12"></a><h3>6.3.12.&nbsp;
3176    Getting information about specific MIDI port parameter</h3>
3177    
3178  <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:
3179  </p>  </p>
# Line 2887  Intellectual Property and Copyright Stat Line 3183  Intellectual Property and Copyright Stat
3183  <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;
3184  </p>  </p>
3185  </blockquote><p>  </blockquote><p>
3186                        
3187  </p>  </p>
3188  <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
3189                      <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>
3190                      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>
3191                      command, &lt;port&gt; the MIDI port number and                      command, &lt;port&gt; the MIDI port number and
3192                      &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
3193                      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).
3194  </p>  </p>
3195  <p>Possible Answers:  <p>Possible Answers:
3196  </p>  </p>
# Line 2918  Intellectual Property and Copyright Stat Line 3214  Intellectual Property and Copyright Stat
3214                                      character string(s)                                      character string(s)
3215                                      (always returned)                                      (always returned)
3216  </p>  </p>
3217  </blockquote><p>  </blockquote>
3218                                
3219    
 </p>  
3220  <p>DESCRIPTION -  <p>DESCRIPTION -
3221                                  </p>                                  </p>
3222  <blockquote class="text">  <blockquote class="text">
3223  <p>arbitrary text describing the purpose of the parameter  <p>arbitrary text describing the purpose of the parameter
3224                                      (always returned)                                      (always returned)
3225  </p>  </p>
3226  </blockquote><p>  </blockquote>
3227                                
3228    
 </p>  
3229  <p>FIX -  <p>FIX -
3230                                  </p>                                  </p>
3231  <blockquote class="text">  <blockquote class="text">
# Line 2937  Intellectual Property and Copyright Stat Line 3233  Intellectual Property and Copyright Stat
3233                                      read only, thus cannot be altered                                      read only, thus cannot be altered
3234                                      (always returned)                                      (always returned)
3235  </p>  </p>
3236  </blockquote><p>  </blockquote>
3237                                
3238    
 </p>  
3239  <p>MULTIPLICITY -  <p>MULTIPLICITY -
3240                                  </p>                                  </p>
3241  <blockquote class="text">  <blockquote class="text">
# Line 2948  Intellectual Property and Copyright Stat Line 3244  Intellectual Property and Copyright Stat
3244                                      multiple values and false only a single value allowed                                      multiple values and false only a single value allowed
3245                                      (always returned)                                      (always returned)
3246  </p>  </p>
3247  </blockquote><p>  </blockquote>
3248                                
3249    
 </p>  
3250  <p>RANGE_MIN -  <p>RANGE_MIN -
3251                                  </p>                                  </p>
3252  <blockquote class="text">  <blockquote class="text">
# Line 2961  Intellectual Property and Copyright Stat Line 3257  Intellectual Property and Copyright Stat
3257                                      (optionally returned, dependent to driver and port                                      (optionally returned, dependent to driver and port
3258                                      parameter)                                      parameter)
3259  </p>  </p>
3260  </blockquote><p>  </blockquote>
3261                                
3262    
 </p>  
3263  <p>RANGE_MAX -  <p>RANGE_MAX -
3264                                  </p>                                  </p>
3265  <blockquote class="text">  <blockquote class="text">
# Line 2974  Intellectual Property and Copyright Stat Line 3270  Intellectual Property and Copyright Stat
3270                                      (optionally returned, dependent to driver and port                                      (optionally returned, dependent to driver and port
3271                                      parameter)                                      parameter)
3272  </p>  </p>
3273  </blockquote><p>  </blockquote>
3274                                
3275    
 </p>  
3276  <p>POSSIBILITIES -  <p>POSSIBILITIES -
3277                                  </p>                                  </p>
3278  <blockquote class="text">  <blockquote class="text">
# Line 2986  Intellectual Property and Copyright Stat Line 3282  Intellectual Property and Copyright Stat
3282                                      (optionally returned, dependent to device and port                                      (optionally returned, dependent to device and port
3283                                      parameter)                                      parameter)
3284  </p>  </p>
3285  </blockquote><p>  </blockquote>
3286                                
3287    
 </p>  
3288  </blockquote><p>  </blockquote><p>
3289                        
3290  </p>  </p>
3291  <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.
3292  </p>  </p>
# Line 3014  Intellectual Property and Copyright Stat Line 3310  Intellectual Property and Copyright Stat
3310  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3311  </p>  </p>
3312  </blockquote><p>  </blockquote><p>
3313                        
3314  </p>  </p>
3315  <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 />
3316    <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>
3317    <a name="rfc.section.6.3.13"></a><h3>6.3.13.&nbsp;
3318    Changing settings of MIDI input ports</h3>
3319    
3320  <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:
3321  </p>  </p>
# Line 3026  Intellectual Property and Copyright Stat Line 3325  Intellectual Property and Copyright Stat
3325  <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;
3326  </p>  </p>
3327  </blockquote><p>  </blockquote><p>
3328                        
3329  </p>  </p>
3330  <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
3331                      MIDI device as returned by the                      MIDI device as returned by the
3332                      <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>
3333                      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>
3334                      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
3335                      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
3336                      parameter.                      parameter (encapsulated into apostrophes) or NONE (not encapsulated into apostrophes)
3337                        for specifying no value for parameters allowing a list of values.
3338  </p>  </p>
3339  <p>Possible Answers:  <p>Possible Answers:
3340  </p>  </p>
# Line 3046  Intellectual Property and Copyright Stat Line 3346  Intellectual Property and Copyright Stat
3346  <blockquote class="text">  <blockquote class="text">
3347  <p>in case setting was successfully changed  <p>in case setting was successfully changed
3348  </p>  </p>
3349  </blockquote><p>  </blockquote>
3350                                
3351    
 </p>  
3352  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3353                                  </p>                                  </p>
3354  <blockquote class="text">  <blockquote class="text">
# Line 3056  Intellectual Property and Copyright Stat Line 3356  Intellectual Property and Copyright Stat
3356                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3357                                      warning code and warning message                                      warning code and warning message
3358  </p>  </p>
3359  </blockquote><p>  </blockquote>
3360                                
3361    
 </p>  
3362  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3363                                  </p>                                  </p>
3364  <blockquote class="text">  <blockquote class="text">
3365  <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
3366  </p>  </p>
3367  </blockquote><p>  </blockquote>
3368                                
3369    
 </p>  
3370  </blockquote><p>  </blockquote><p>
3371                        
3372  </p>  </p>
3373  <p>Example:  <p>Example:
3374  </p>  </p>
3375  <p>  <p>
3376                          </p>                          </p>
3377  <blockquote class="text">  <blockquote class="text">
3378    <p>C: "SET MIDI_INPUT_PORT_PARAMETER 0 0 ALSA_SEQ_BINDINGS='20:0'"
3379    </p>
3380    <p>S: "OK"
3381    </p>
3382    </blockquote><p>
3383                        
3384    </p>
3385  <p>  <p>
3386                            </p>
3387    <blockquote class="text">
3388    <p>C: "SET MIDI_INPUT_PORT_PARAMETER 0 0 ALSA_SEQ_BINDINGS=NONE"
3389    </p>
3390    <p>S: "OK"
3391  </p>  </p>
3392  </blockquote><p>  </blockquote><p>
3393                        
3394  </p>  </p>
3395  <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 />
3396    <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>
3397    <a name="rfc.section.6.4"></a><h3>6.4.&nbsp;
3398    Configuring sampler channels</h3>
3399    
3400  <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
3401                  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
3402                  MIDI and audio devices.                  MIDI and audio devices.
3403  </p>  </p>
3404  <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 />
3405    <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>
3406    <a name="rfc.section.6.4.1"></a><h3>6.4.1.&nbsp;
3407    Loading an instrument</h3>
3408    
3409  <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:
3410  </p>  </p>
# Line 3096  Intellectual Property and Copyright Stat Line 3414  Intellectual Property and Copyright Stat
3414  <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;
3415  </p>  </p>
3416  </blockquote><p>  </blockquote><p>
3417                        
3418  </p>  </p>
3419  <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
3420                      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 3422  Intellectual Property and Copyright Stat
3422                      number of the sampler channel the instrument should be assigned to.                      number of the sampler channel the instrument should be assigned to.
3423                      Each sampler channel can only have one instrument.                      Each sampler channel can only have one instrument.
3424  </p>  </p>
3425    <p>Notice: since LSCP 1.2 the &lt;filename&gt; argument supports
3426                        escape characters for special characters (see chapter
3427                        "<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>"
3428                        for details) and accordingly backslash characters in the filename
3429                        MUST now be escaped as well!
3430    </p>
3431  <p>The difference between regular and NON_MODAL versions of the command  <p>The difference between regular and NON_MODAL versions of the command
3432                      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
3433                      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
3434                      returns immediately and a background process is launched to load the instrument                      returns immediately and a background process is launched to load the instrument
3435                      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>
3436                      command can be used to obtain loading                      command can be used to obtain loading
3437                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks
3438                      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 3449  Intellectual Property and Copyright Stat
3449  <blockquote class="text">  <blockquote class="text">
3450  <p>in case the instrument was successfully loaded  <p>in case the instrument was successfully loaded
3451  </p>  </p>
3452  </blockquote><p>  </blockquote>
3453                                
3454    
 </p>  
3455  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3456                                  </p>                                  </p>
3457  <blockquote class="text">  <blockquote class="text">
# Line 3137  Intellectual Property and Copyright Stat Line 3461  Intellectual Property and Copyright Stat
3461                                      instrument file), providing an appropriate warning code and                                      instrument file), providing an appropriate warning code and
3462                                      warning message                                      warning message
3463  </p>  </p>
3464  </blockquote><p>  </blockquote>
3465                                
3466    
 </p>  
3467  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3468                                  </p>                                  </p>
3469  <blockquote class="text">  <blockquote class="text">
3470  <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
3471  </p>  </p>
3472  </blockquote><p>  </blockquote>
3473                                
3474    
 </p>  
3475  </blockquote><p>  </blockquote><p>
3476                        
3477  </p>  </p>
3478  <p>Example:  <p>Example (Unix):
3479  </p>  </p>
3480  <p>  <p>
3481                          </p>                          </p>
3482  <blockquote class="text">  <blockquote class="text">
3483    <p>C: LOAD INSTRUMENT '/home/joe/gigs/cello.gig' 0 0
3484    </p>
3485    <p>S: OK
3486    </p>
3487    </blockquote><p>
3488                        
3489    </p>
3490    <p>Example (Windows):
3491    </p>
3492  <p>  <p>
3493                            </p>
3494    <blockquote class="text">
3495    <p>C: LOAD INSTRUMENT 'D:/MySounds/cello.gig' 0 0
3496    </p>
3497    <p>S: OK
3498  </p>  </p>
3499  </blockquote><p>  </blockquote><p>
3500                        
3501  </p>  </p>
3502  <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 />
3503    <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>
3504    <a name="rfc.section.6.4.2"></a><h3>6.4.2.&nbsp;
3505    Loading a sampler engine</h3>
3506    
3507  <p>A sampler engine type can be associated to a specific sampler  <p>A sampler engine type can be associated to a specific sampler
3508                      channel by the following command:                      channel by the following command:
# Line 3172  Intellectual Property and Copyright Stat Line 3513  Intellectual Property and Copyright Stat
3513  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;
3514  </p>  </p>
3515  </blockquote><p>  </blockquote><p>
3516                        
3517  </p>  </p>
3518  <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
3519                      <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;
3520                      the sampler channel as returned by the                      the sampler channel as returned by the
3521                      <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
3522                      <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
3523                      the engine type should be assigned to. This command should be issued                      the engine type should be assigned to. This command should be issued
3524                      after adding a new sampler channel and before any other control                      after adding a new sampler channel and before any other control
3525                      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 3539  Intellectual Property and Copyright Stat
3539  <blockquote class="text">  <blockquote class="text">
3540  <p>in case the engine was successfully deployed  <p>in case the engine was successfully deployed
3541  </p>  </p>
3542  </blockquote><p>  </blockquote>
3543                                
3544    
 </p>  
3545  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3546                                  </p>                                  </p>
3547  <blockquote class="text">  <blockquote class="text">
# Line 3208  Intellectual Property and Copyright Stat Line 3549  Intellectual Property and Copyright Stat
3549                                      are noteworthy issue(s) related, providing an appropriate                                      are noteworthy issue(s) related, providing an appropriate
3550                                      warning code and warning message                                      warning code and warning message
3551  </p>  </p>
3552  </blockquote><p>  </blockquote>
3553                                
3554    
 </p>  
3555  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3556                                  </p>                                  </p>
3557  <blockquote class="text">  <blockquote class="text">
3558  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
3559                                      error message                                      error message
3560  </p>  </p>
3561  </blockquote><p>  </blockquote>
3562                                
3563    
 </p>  
3564  </blockquote><p>  </blockquote><p>
3565                        
3566  </p>  </p>
3567  <p>Example:  <p>Example:
3568  </p>  </p>
# Line 3231  Intellectual Property and Copyright Stat Line 3572  Intellectual Property and Copyright Stat
3572  <p>  <p>
3573  </p>  </p>
3574  </blockquote><p>  </blockquote><p>
3575                        
3576  </p>  </p>
3577  <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 />
3578    <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>
3579    <a name="rfc.section.6.4.3"></a><h3>6.4.3.&nbsp;
3580    Getting all created sampler channel count</h3>
3581    
3582  <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
3583                      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 3589  Intellectual Property and Copyright Stat
3589  <p>GET CHANNELS  <p>GET CHANNELS
3590  </p>  </p>
3591  </blockquote><p>  </blockquote><p>
3592                        
3593  </p>  </p>
3594  <p>Possible Answers:  <p>Possible Answers:
3595  </p>  </p>
# Line 3255  Intellectual Property and Copyright Stat Line 3599  Intellectual Property and Copyright Stat
3599  <p>LinuxSampler will answer by returning the current number of sampler channels.  <p>LinuxSampler will answer by returning the current number of sampler channels.
3600  </p>  </p>
3601  </blockquote><p>  </blockquote><p>
3602                        
3603  </p>  </p>
3604  <p>Example:  <p>Example:
3605  </p>  </p>
# Line 3267  Intellectual Property and Copyright Stat Line 3611  Intellectual Property and Copyright Stat
3611  <p>S: "12"  <p>S: "12"
3612  </p>  </p>
3613  </blockquote><p>  </blockquote><p>
3614                        
3615  </p>  </p>
3616  <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 />
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.4"></a><h3>6.4.4.&nbsp;
3619    Getting all created sampler channel list</h3>
3620    
3621  <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
3622                      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 3628  Intellectual Property and Copyright Stat
3628  <p>LIST CHANNELS  <p>LIST CHANNELS
3629  </p>  </p>
3630  </blockquote><p>  </blockquote><p>
3631                        
3632  </p>  </p>
3633  <p>Possible Answers:  <p>Possible Answers:
3634  </p>  </p>
# Line 3292  Intellectual Property and Copyright Stat Line 3639  Intellectual Property and Copyright Stat
3639                              with all sampler channels numerical IDs.                              with all sampler channels numerical IDs.
3640  </p>  </p>
3641  </blockquote><p>  </blockquote><p>
3642                        
3643  </p>  </p>
3644  <p>Example:  <p>Example:
3645  </p>  </p>
# Line 3304  Intellectual Property and Copyright Stat Line 3651  Intellectual Property and Copyright Stat
3651  <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"
3652  </p>  </p>
3653  </blockquote><p>  </blockquote><p>
3654                        
3655  </p>  </p>
3656  <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 />
3657    <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>
3658    <a name="rfc.section.6.4.5"></a><h3>6.4.5.&nbsp;
3659    Adding a new sampler channel</h3>
3660    
3661  <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
3662                      channel list by sending the following command:                      channel list by sending the following command:
# Line 3317  Intellectual Property and Copyright Stat Line 3667  Intellectual Property and Copyright Stat
3667  <p>ADD CHANNEL  <p>ADD CHANNEL
3668  </p>  </p>
3669  </blockquote><p>  </blockquote><p>
3670                        
3671  </p>  </p>
3672  <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
3673                      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 3693  Intellectual Property and Copyright Stat
3693                                      the sampler channel by sending subsequent initialization                                      the sampler channel by sending subsequent initialization
3694                                      commands                                      commands
3695  </p>  </p>
3696  </blockquote><p>  </blockquote>
3697                                
3698    
 </p>  
3699  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3700                                  </p>                                  </p>
3701  <blockquote class="text">  <blockquote class="text">
# Line 3353  Intellectual Property and Copyright Stat Line 3703  Intellectual Property and Copyright Stat
3703                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3704                                      warning code and warning message                                      warning code and warning message
3705  </p>  </p>
3706  </blockquote><p>  </blockquote>
3707                                
3708    
 </p>  
3709  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3710                                  </p>                                  </p>
3711  <blockquote class="text">  <blockquote class="text">
3712  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
3713                                      error message                                      error message
3714  </p>  </p>
3715  </blockquote><p>  </blockquote>
3716                                
3717    
 </p>  
3718  </blockquote><p>  </blockquote><p>
3719                        
3720  </p>  </p>
3721  <p>Example:  <p>Example:
3722  </p>  </p>
# Line 3376  Intellectual Property and Copyright Stat Line 3726  Intellectual Property and Copyright Stat
3726  <p>  <p>
3727  </p>  </p>
3728  </blockquote><p>  </blockquote><p>
3729                        
3730  </p>  </p>
3731  <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 />
3732    <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>
3733    <a name="rfc.section.6.4.6"></a><h3>6.4.6.&nbsp;
3734    Removing a sampler channel</h3>
3735    
3736  <p>A sampler channel can be removed by sending the following command:  <p>A sampler channel can be removed by sending the following command:
3737  </p>  </p>
# Line 3388  Intellectual Property and Copyright Stat Line 3741  Intellectual Property and Copyright Stat
3741  <p>REMOVE CHANNEL &lt;sampler-channel&gt;  <p>REMOVE CHANNEL &lt;sampler-channel&gt;
3742  </p>  </p>
3743  </blockquote><p>  </blockquote><p>
3744                        
3745  </p>  </p>
3746  <p>Where &lt;sampler-channel&gt; should be replaced by the  <p>Where &lt;sampler-channel&gt; should be replaced by the
3747                      number of the sampler channel as given by the                      number of the sampler channel as given by the
3748                      <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>
3749                      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>
3750                      command. The channel numbers of all subsequent sampler channels                      command. The channel numbers of all subsequent sampler channels
3751                      remain the same.                      remain the same.
3752  </p>  </p>
# Line 3407  Intellectual Property and Copyright Stat Line 3760  Intellectual Property and Copyright Stat
3760  <blockquote class="text">  <blockquote class="text">
3761  <p>in case the given sampler channel could be removed  <p>in case the given sampler channel could be removed
3762  </p>  </p>
3763  </blockquote><p>  </blockquote>
3764                                
3765    
 </p>  
3766  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3767                                  </p>                                  </p>
3768  <blockquote class="text">  <blockquote class="text">
# Line 3417  Intellectual Property and Copyright Stat Line 3770  Intellectual Property and Copyright Stat
3770                                      noteworthy issue(s) related, providing an appropriate                                      noteworthy issue(s) related, providing an appropriate
3771                                      warning code and warning message                                      warning code and warning message
3772  </p>  </p>
3773  </blockquote><p>  </blockquote>
3774                                
3775    
 </p>  
3776  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3777                                  </p>                                  </p>
3778  <blockquote class="text">  <blockquote class="text">
3779  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
3780                                      error message                                      error message
3781  </p>  </p>
3782  </blockquote><p>  </blockquote>
3783                                
3784    
 </p>  
3785  </blockquote><p>  </blockquote><p>
3786                        
3787  </p>  </p>
3788  <p>Example:  <p>Example:
3789  </p>  </p>
# Line 3440  Intellectual Property and Copyright Stat Line 3793  Intellectual Property and Copyright Stat
3793  <p>  <p>
3794  </p>  </p>
3795  </blockquote><p>  </blockquote><p>
3796                        
3797  </p>  </p>
3798  <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 />
3799    <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>
3800    <a name="rfc.section.6.4.7"></a><h3>6.4.7.&nbsp;
3801    Getting amount of available engines</h3>
3802    
3803  <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:
3804  </p>  </p>
# Line 3452  Intellectual Property and Copyright Stat Line 3808  Intellectual Property and Copyright Stat
3808  <p>GET AVAILABLE_ENGINES  <p>GET AVAILABLE_ENGINES
3809  </p>  </p>
3810  </blockquote><p>  </blockquote><p>
3811                        
3812  </p>  </p>
3813  <p>Possible Answers:  <p>Possible Answers:
3814  </p>  </p>
# Line 3462  Intellectual Property and Copyright Stat Line 3818  Intellectual Property and Copyright Stat
3818  <p>LinuxSampler will answer by sending the number of available engines.  <p>LinuxSampler will answer by sending the number of available engines.
3819  </p>  </p>
3820  </blockquote><p>  </blockquote><p>
3821                        
3822  </p>  </p>
3823  <p>Example:  <p>Example:
3824  </p>  </p>
# Line 3474  Intellectual Property and Copyright Stat Line 3830  Intellectual Property and Copyright Stat
3830  <p>S: "4"  <p>S: "4"
3831  </p>  </p>
3832  </blockquote><p>  </blockquote><p>
3833                        
3834  </p>  </p>
3835  <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 />
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.8"></a><h3>6.4.8.&nbsp;
3838    Getting all available engines</h3>
3839    
3840  <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:
3841  </p>  </p>
# Line 3486  Intellectual Property and Copyright Stat Line 3845  Intellectual Property and Copyright Stat
3845  <p>LIST AVAILABLE_ENGINES  <p>LIST AVAILABLE_ENGINES
3846  </p>  </p>
3847  </blockquote><p>  </blockquote><p>
3848                        
3849  </p>  </p>
3850  <p>Possible Answers:  <p>Possible Answers:
3851  </p>  </p>
# Line 3499  Intellectual Property and Copyright Stat Line 3858  Intellectual Property and Copyright Stat
3858                              digits and underlines ("_" character).                              digits and underlines ("_" character).
3859  </p>  </p>
3860  </blockquote><p>  </blockquote><p>
3861                        
3862  </p>  </p>
3863  <p>Example:  <p>Example:
3864  </p>  </p>
# Line 3511  Intellectual Property and Copyright Stat Line 3870  Intellectual Property and Copyright Stat
3870  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"
3871  </p>  </p>
3872  </blockquote><p>  </blockquote><p>
3873                        
3874  </p>  </p>
3875  <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 />
3876    <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>
3877    <a name="rfc.section.6.4.9"></a><h3>6.4.9.&nbsp;
3878    Getting information about an engine</h3>
3879    
3880  <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
3881                      sending the following command:                      sending the following command:
# Line 3524  Intellectual Property and Copyright Stat Line 3886  Intellectual Property and Copyright Stat
3886  <p>GET ENGINE INFO &lt;engine-name&gt;  <p>GET ENGINE INFO &lt;engine-name&gt;
3887  </p>  </p>
3888  </blockquote><p>  </blockquote><p>
3889                        
3890  </p>  </p>
3891  <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
3892                      <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.
3893  </p>  </p>
3894  <p>Possible Answers:  <p>Possible Answers:
3895  </p>  </p>
# Line 3547  Intellectual Property and Copyright Stat Line 3909  Intellectual Property and Copyright Stat
3909                                          </p>                                          </p>
3910  <blockquote class="text">  <blockquote class="text">
3911  <p>arbitrary description text about the engine  <p>arbitrary description text about the engine
3912                                                (note that the character string may contain
3913                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
3914  </p>  </p>
3915  </blockquote><p>  </blockquote>
3916                                        
3917    
 </p>  
3918  <p>VERSION -  <p>VERSION -
3919                                          </p>                                          </p>
3920  <blockquote class="text">  <blockquote class="text">
3921  <p>arbitrary character string regarding the engine's version  <p>arbitrary character string regarding the engine's version
3922  </p>  </p>
3923  </blockquote><p>  </blockquote>
3924                                        
3925    
3926  </p>  </blockquote>
3927  </blockquote><p>                              
3928    
 </p>  
3929  </blockquote><p>  </blockquote><p>
3930                        
3931  </p>  </p>
3932  <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.
3933  </p>  </p>
# Line 3581  Intellectual Property and Copyright Stat Line 3945  Intellectual Property and Copyright Stat
3945  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3946  </p>  </p>
3947  </blockquote><p>  </blockquote><p>
3948                        
3949  </p>  </p>
3950  <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 />
3951    <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>
3952    <a name="rfc.section.6.4.10"></a><h3>6.4.10.&nbsp;
3953    Getting sampler channel information</h3>
3954    
3955  <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
3956                      by sending the following command:                      by sending the following command:
# Line 3594  Intellectual Property and Copyright Stat Line 3961  Intellectual Property and Copyright Stat
3961  <p>GET CHANNEL INFO &lt;sampler-channel&gt;  <p>GET CHANNEL INFO &lt;sampler-channel&gt;
3962  </p>  </p>
3963  </blockquote><p>  </blockquote><p>
3964                        
3965  </p>  </p>
3966  <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
3967                      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>
3968                      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.
3969  </p>  </p>
3970  <p>Possible Answers:  <p>Possible Answers:
3971  </p>  </p>
# Line 3621  Intellectual Property and Copyright Stat Line 3988  Intellectual Property and Copyright Stat
3988                                              channel, "NONE" if there's no engine associated yet for                                              channel, "NONE" if there's no engine associated yet for
3989                                              this sampler channel                                              this sampler channel
3990  </p>  </p>
3991  </blockquote><p>  </blockquote>
3992                                        
3993    
 </p>  
3994  <p>AUDIO_OUTPUT_DEVICE -  <p>AUDIO_OUTPUT_DEVICE -
3995                                          </p>                                          </p>
3996  <blockquote class="text">  <blockquote class="text">
3997  <p>numerical ID of the audio output device which is  <p>numerical ID of the audio output device which is
3998                                              currently connected to this sampler channel to output                                              currently connected to this sampler channel to output
3999                                              the audio signal, "NONE" if there's no device                                              the audio signal, "-1" if there's no device
4000                                              connected to this sampler channel                                              connected to this sampler channel
4001  </p>  </p>
4002  </blockquote><p>  </blockquote>
4003                                        
4004    
 </p>  
4005  <p>AUDIO_OUTPUT_CHANNELS -  <p>AUDIO_OUTPUT_CHANNELS -
4006                                          </p>                                          </p>
4007  <blockquote class="text">  <blockquote class="text">
4008  <p>number of output channels the sampler channel offers  <p>number of output channels the sampler channel offers
4009                                              (dependent to used sampler engine and loaded instrument)                                              (dependent to used sampler engine and loaded instrument)
4010  </p>  </p>
4011  </blockquote><p>  </blockquote>
4012                                        
4013    
 </p>  
4014  <p>AUDIO_OUTPUT_ROUTING -  <p>AUDIO_OUTPUT_ROUTING -
4015                                          </p>                                          </p>
4016  <blockquote class="text">  <blockquote class="text">
# Line 3655  Intellectual Property and Copyright Stat Line 4022  Intellectual Property and Copyright Stat
4022                                              channel 1 is routed to the channel 3 of the audio                                              channel 1 is routed to the channel 3 of the audio
4023                                              output device                                              output device
4024  </p>  </p>
4025  </blockquote><p>  </blockquote>
4026                                        
4027    
 </p>  
4028  <p>INSTRUMENT_FILE -  <p>INSTRUMENT_FILE -
4029                                          </p>                                          </p>
4030  <blockquote class="text">  <blockquote class="text">
4031  <p>the file name of the loaded instrument, "NONE" if  <p>the file name of the loaded instrument, "NONE" if
4032                                              there's no instrument yet loaded for this sampler                                              there's no instrument yet loaded for this sampler
4033                                              channel                                              channel (note: since LSCP 1.2 this path may contain
4034                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
4035  </p>  </p>
4036  </blockquote><p>  </blockquote>
4037                                        
4038    
 </p>  
4039  <p>INSTRUMENT_NR -  <p>INSTRUMENT_NR -
4040                                          </p>                                          </p>
4041  <blockquote class="text">  <blockquote class="text">
4042  <p>the instrument index number of the loaded instrument  <p>the instrument index number of the loaded instrument,
4043                                                "-1" if there's no instrument loaded for this sampler
4044                                                channel
4045  </p>  </p>
4046  </blockquote><p>  </blockquote>
4047                                        
4048    
 </p>  
4049  <p>INSTRUMENT_NAME -  <p>INSTRUMENT_NAME -
4050                                          </p>                                          </p>
4051  <blockquote class="text">  <blockquote class="text">
4052  <p>the instrument name of the loaded instrument  <p>the instrument name of the loaded instrument
4053                                                (note: since LSCP 1.2 this character string may contain
4054                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
4055  </p>  </p>
4056  </blockquote><p>  </blockquote>
4057                                        
4058    
 </p>  
4059  <p>INSTRUMENT_STATUS -  <p>INSTRUMENT_STATUS -
4060                                          </p>                                          </p>
4061  <blockquote class="text">  <blockquote class="text">
4062  <p>integer values 0 to 100 indicating loading progress percentage for the instrument. Negative  <p>Integer values 0 to 100 indicating loading progress
4063                                              value indicates a loading exception. Value of 100 indicates that the instrument is fully                                              percentage for the instrument. Negative
4064                                                value indicates a loading exception (also returns "-1" in case no
4065                                                instrument was yet to be loaded on the sampler channel).
4066                                                Value of 100 indicates that the instrument is fully
4067                                              loaded.                                              loaded.
4068  </p>  </p>
4069  </blockquote><p>  </blockquote>
4070                                        
4071    
 </p>  
4072  <p>MIDI_INPUT_DEVICE -  <p>MIDI_INPUT_DEVICE -
4073                                          </p>                                          </p>
4074  <blockquote class="text">  <blockquote class="text">
4075  <p>numerical ID of the MIDI input device which is  <p>numerical ID of the MIDI input device which is
4076                                              currently connected to this sampler channel to deliver                                              currently connected to this sampler channel to deliver
4077                                              MIDI input commands, "NONE" if there's no device                                              MIDI input commands, "-1" if there's no device
4078                                              connected to this sampler channel                                              connected to this sampler channel
4079  </p>  </p>
4080  </blockquote><p>  </blockquote>
4081                                        
4082    
 </p>  
4083  <p>MIDI_INPUT_PORT -  <p>MIDI_INPUT_PORT -
4084                                          </p>                                          </p>
4085  <blockquote class="text">  <blockquote class="text">
4086  <p>port number of the MIDI input device  <p>port number of the MIDI input device (in case a
4087                                                MIDI device was already assigned to the sampler
4088                                                channel)
4089  </p>  </p>
4090  </blockquote><p>  </blockquote>
4091                                        
4092    
 </p>  
4093  <p>MIDI_INPUT_CHANNEL -  <p>MIDI_INPUT_CHANNEL -
4094                                          </p>                                          </p>
4095  <blockquote class="text">  <blockquote class="text">
4096  <p>the MIDI input channel number this sampler channel  <p>the MIDI input channel number this sampler channel
4097                                              should listen to or "ALL" to listen on all MIDI channels                                              should listen to or "ALL" to listen on all MIDI channels
4098  </p>  </p>
4099  </blockquote><p>  </blockquote>
4100                                        
4101    
 </p>  
4102  <p>VOLUME -  <p>VOLUME -
4103                                          </p>                                          </p>
4104  <blockquote class="text">  <blockquote class="text">
4105  <p>optionally dotted number for the channel volume factor  <p>optionally dotted number for the channel volume factor
4106                                              (where a value < 1.0 means attenuation and a value >                                              (where a value &lt; 1.0 means attenuation and a value >
4107                                              1.0 means amplification)                                              1.0 means amplification)
4108  </p>  </p>
4109  </blockquote><p>  </blockquote>
4110                                        
4111    
 </p>  
4112  <p>MUTE -  <p>MUTE -
4113                                          </p>                                          </p>
4114  <blockquote class="text">  <blockquote class="text">
# Line 3741  Intellectual Property and Copyright Stat Line 4118  Intellectual Property and Copyright Stat
4118                                              presence of a solo channel and will be unmuted when                                              presence of a solo channel and will be unmuted when
4119                                              there are no solo channels left                                              there are no solo channels left
4120  </p>  </p>
4121  </blockquote><p>  </blockquote>
4122                                        
4123    
 </p>  
4124  <p>SOLO -  <p>SOLO -
4125                                          </p>                                          </p>
4126  <blockquote class="text">  <blockquote class="text">
4127  <p>Determines whether this is a solo channel, "true" if  <p>Determines whether this is a solo channel, "true" if
4128                                              the channel is a solo channel; "false" otherwise                                              the channel is a solo channel; "false" otherwise
4129  </p>  </p>
4130  </blockquote><p>  </blockquote>
4131                                        
4132    
4133    <p>MIDI_INSTRUMENT_MAP -
4134                                            </p>
4135    <blockquote class="text">
4136    <p>Determines to which MIDI instrument map this sampler
4137                                                channel is assigned to. Read chapter
4138                                                <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>
4139                                                for a list of possible values.
4140  </p>  </p>
4141  </blockquote><p>  </blockquote>
4142                                        
4143    
4144  </p>  </blockquote>
4145  </blockquote><p>                              
4146    
4147    </blockquote><p>
4148                        
4149  </p>  </p>
4150  <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.
4151  </p>  </p>
# Line 3792  Intellectual Property and Copyright Stat Line 4180  Intellectual Property and Copyright Stat
4180  </p>  </p>
4181  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"
4182  </p>  </p>
4183    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
4184    </p>
4185    <p>&nbsp;&nbsp;&nbsp;"MUTE: false"
4186    </p>
4187    <p>&nbsp;&nbsp;&nbsp;"SOLO: false"
4188    </p>
4189    <p>&nbsp;&nbsp;&nbsp;"MIDI_INSTRUMENT_MAP: NONE"
4190    </p>
4191  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
4192  </p>  </p>
4193  </blockquote><p>  </blockquote><p>
4194                        
4195  </p>  </p>
4196  <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 />
4197    <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>
4198    <a name="rfc.section.6.4.11"></a><h3>6.4.11.&nbsp;
4199    Current number of active voices</h3>
4200    
4201  <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
4202                      sampler channel by sending the following command:                      sampler channel by sending the following command:
# Line 3808  Intellectual Property and Copyright Stat Line 4207  Intellectual Property and Copyright Stat
4207  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;
4208  </p>  </p>
4209  </blockquote><p>  </blockquote><p>
4210                        
4211  </p>  </p>
4212  <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
4213                      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>
4214                      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.
4215  </p>  </p>
4216  <p>Possible Answers:  <p>Possible Answers:
4217  </p>  </p>
# Line 3823  Intellectual Property and Copyright Stat Line 4222  Intellectual Property and Copyright Stat
4222                              voices on that channel.                              voices on that channel.
4223  </p>  </p>
4224  </blockquote><p>  </blockquote><p>
4225                        
4226  </p>  </p>
4227  <p>Example:  <p>Example:
4228  </p>  </p>
# Line 3833  Intellectual Property and Copyright Stat Line 4232  Intellectual Property and Copyright Stat
4232  <p>  <p>
4233  </p>  </p>
4234  </blockquote><p>  </blockquote><p>
4235                        
4236  </p>  </p>
4237  <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 />
4238    <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>
4239    <a name="rfc.section.6.4.12"></a><h3>6.4.12.&nbsp;
4240    Current number of active disk streams</h3>
4241    
4242  <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
4243                      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 4248  Intellectual Property and Copyright Stat
4248  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;
4249  </p>  </p>
4250  </blockquote><p>  </blockquote><p>
4251                        
4252  </p>  </p>
4253  <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
4254                      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>
4255                      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.
4256  </p>  </p>
4257  <p>Possible Answers:  <p>Possible Answers:
4258  </p>  </p>
# Line 3863  Intellectual Property and Copyright Stat Line 4265  Intellectual Property and Copyright Stat
4265                              return "NA" for not available.                              return "NA" for not available.
4266  </p>  </p>
4267  </blockquote><p>  </blockquote><p>
4268                        
4269  </p>  </p>
4270  <p>Example:  <p>Example:
4271  </p>  </p>
# Line 3873  Intellectual Property and Copyright Stat Line 4275  Intellectual Property and Copyright Stat
4275  <p>  <p>
4276  </p>  </p>
4277  </blockquote><p>  </blockquote><p>
4278                        
4279  </p>  </p>
4280  <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 />
4281    <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>
4282    <a name="rfc.section.6.4.13"></a><h3>6.4.13.&nbsp;
4283    Current fill state of disk stream buffers</h3>
4284    
4285  <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
4286                      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 4291  Intellectual Property and Copyright Stat
4291  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;
4292  </p>  </p>
4293  </blockquote><p>  </blockquote><p>
4294                        
4295  </p>  </p>
4296  <p>to get the fill state in bytes or  <p>to get the fill state in bytes or
4297  </p>  </p>
# Line 3896  Intellectual Property and Copyright Stat Line 4301  Intellectual Property and Copyright Stat
4301  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;
4302  </p>  </p>
4303  </blockquote><p>  </blockquote><p>
4304                        
4305  </p>  </p>
4306  <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
4307                      sampler channel number the front-end is interested in                      sampler channel number the front-end is interested in
4308                      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>
4309                      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.
4310  </p>  </p>
4311  <p>Possible Answers:  <p>Possible Answers:
4312  </p>  </p>
# Line 3920  Intellectual Property and Copyright Stat Line 4325  Intellectual Property and Copyright Stat
4325                              to sort them by itself if necessary.                              to sort them by itself if necessary.
4326  </p>  </p>
4327  </blockquote><p>  </blockquote><p>
4328                        
4329  </p>  </p>
4330  <p>Examples:  <p>Examples:
4331  </p>  </p>
# Line 3948  Intellectual Property and Copyright Stat Line 4353  Intellectual Property and Copyright Stat
4353  <p>S: ""  <p>S: ""
4354  </p>  </p>
4355  </blockquote><p>  </blockquote><p>
4356                        
4357  </p>  </p>
4358  <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 />
4359    <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>
4360    <a name="rfc.section.6.4.14"></a><h3>6.4.14.&nbsp;
4361    Setting audio output device</h3>
4362    
4363  <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
4364                      channel by sending the following command:                      channel by sending the following command:
# Line 3961  Intellectual Property and Copyright Stat Line 4369  Intellectual Property and Copyright Stat
4369  <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;
4370  </p>  </p>
4371  </blockquote><p>  </blockquote><p>
4372                        
4373  </p>  </p>
4374  <p>Where &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4375                      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>
4376                      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
4377                      &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
4378                      <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>
4379                      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>
4380                      command.                      command.
4381  </p>  </p>
4382  <p>Possible Answers:  <p>Possible Answers:
# Line 3981  Intellectual Property and Copyright Stat Line 4389  Intellectual Property and Copyright Stat
4389  <blockquote class="text">  <blockquote class="text">
4390  <p>on success  <p>on success
4391  </p>  </p>
4392  </blockquote><p>  </blockquote>
4393                                
4394    
 </p>  
4395  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4396                                  </p>                                  </p>
4397  <blockquote class="text">  <blockquote class="text">
# Line 3991  Intellectual Property and Copyright Stat Line 4399  Intellectual Property and Copyright Stat
4399                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4400                                      warning message                                      warning message
4401  </p>  </p>
4402  </blockquote><p>  </blockquote>
4403                                
4404    
 </p>  
4405  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4406                                  </p>                                  </p>
4407  <blockquote class="text">  <blockquote class="text">
4408  <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
4409  </p>  </p>
4410  </blockquote><p>  </blockquote>
4411                                
4412    
 </p>  
4413  </blockquote><p>  </blockquote><p>
4414                        
4415  </p>  </p>
4416  <p>Examples:  <p>Examples:
4417  </p>  </p>
# Line 4013  Intellectual Property and Copyright Stat Line 4421  Intellectual Property and Copyright Stat
4421  <p>  <p>
4422  </p>  </p>
4423  </blockquote><p>  </blockquote><p>
4424                        
4425  </p>  </p>
4426  <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 />
4427    <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>
4428    <a name="rfc.section.6.4.15"></a><h3>6.4.15.&nbsp;
4429    Setting audio output type</h3>
4430    
4431  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4432  </p>  </p>
# Line 4028  Intellectual Property and Copyright Stat Line 4439  Intellectual Property and Copyright Stat
4439  <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;
4440  </p>  </p>
4441  </blockquote><p>  </blockquote><p>
4442                        
4443  </p>  </p>
4444  <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
4445                      &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 4454  Intellectual Property and Copyright Stat
4454  <blockquote class="text">  <blockquote class="text">
4455  <p>on success  <p>on success
4456  </p>  </p>
4457  </blockquote><p>  </blockquote>
4458                                
4459    
 </p>  
4460  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4461                                  </p>                                  </p>
4462  <blockquote class="text">  <blockquote class="text">
# Line 4053  Intellectual Property and Copyright Stat Line 4464  Intellectual Property and Copyright Stat
4464                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4465                                      warning message                                      warning message
4466  </p>  </p>
4467  </blockquote><p>  </blockquote>
4468                                
4469    
 </p>  
4470  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4471                                  </p>                                  </p>
4472  <blockquote class="text">  <blockquote class="text">
4473  <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
4474  </p>  </p>
4475  </blockquote><p>  </blockquote>
4476                                
4477    
 </p>  
4478  </blockquote><p>  </blockquote><p>
4479                        
4480  </p>  </p>
4481  <p>Examples:  <p>Examples:
4482  </p>  </p>
# Line 4075  Intellectual Property and Copyright Stat Line 4486  Intellectual Property and Copyright Stat
4486  <p>  <p>
4487  </p>  </p>
4488  </blockquote><p>  </blockquote><p>
4489                        
4490  </p>  </p>
4491  <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 />
4492    <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>
4493    <a name="rfc.section.6.4.16"></a><h3>6.4.16.&nbsp;
4494    Setting audio output channel</h3>
4495    
4496  <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
4497                      sampler channel by sending the following command:                      sampler channel by sending the following command:
# Line 4088  Intellectual Property and Copyright Stat Line 4502  Intellectual Property and Copyright Stat
4502  <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;
4503  </p>  </p>
4504  </blockquote><p>  </blockquote><p>
4505                        
4506  </p>  </p>
4507  <p>Where &lt;sampler-chan&gt; is the sampler channel number  <p>Where &lt;sampler-chan&gt; is the sampler channel number
4508                      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>
4509                      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
4510                      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
4511                      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
4512                      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 4521  Intellectual Property and Copyright Stat
4521  <blockquote class="text">  <blockquote class="text">
4522  <p>on success  <p>on success
4523  </p>  </p>
4524  </blockquote><p>  </blockquote>
4525                                
4526    
 </p>  
4527  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4528                                  </p>                                  </p>
4529  <blockquote class="text">  <blockquote class="text">
# Line 4117  Intellectual Property and Copyright Stat Line 4531  Intellectual Property and Copyright Stat
4531                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4532                                      warning message                                      warning message
4533  </p>  </p>
4534  </blockquote><p>  </blockquote>
4535                                
4536    
 </p>  
4537  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4538                                  </p>                                  </p>
4539  <blockquote class="text">  <blockquote class="text">
4540  <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
4541  </p>  </p>
4542  </blockquote><p>  </blockquote>
4543                                
4544    
 </p>  
4545  </blockquote><p>  </blockquote><p>
4546                        
4547  </p>  </p>
4548  <p>Examples:  <p>Examples:
4549  </p>  </p>
# Line 4139  Intellectual Property and Copyright Stat Line 4553  Intellectual Property and Copyright Stat
4553  <p>  <p>
4554  </p>  </p>
4555  </blockquote><p>  </blockquote><p>
4556                        
4557  </p>  </p>
4558  <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 />
4559    <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>
4560    <a name="rfc.section.6.4.17"></a><h3>6.4.17.&nbsp;
4561    Setting MIDI input device</h3>
4562    
4563  <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
4564                      channel by sending the following command:                      channel by sending the following command:
# Line 4152  Intellectual Property and Copyright Stat Line 4569  Intellectual Property and Copyright Stat
4569  <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;
4570  </p>  </p>
4571  </blockquote><p>  </blockquote><p>
4572                        
4573  </p>  </p>
4574  <p>Where &lt;sampler-channel&gt; is the sampler channel number  <p>Where &lt;sampler-channel&gt; is the sampler channel number
4575                      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>
4576                      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
4577                      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
4578                      <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>
4579                      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.
4580  </p>  </p>
4581  <p>Possible Answers:  <p>Possible Answers:
4582  </p>  </p>
# Line 4171  Intellectual Property and Copyright Stat Line 4588  Intellectual Property and Copyright Stat
4588  <blockquote class="text">  <blockquote class="text">
4589  <p>on success  <p>on success
4590  </p>  </p>
4591  </blockquote><p>  </blockquote>
4592                                
4593    
 </p>  
4594  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4595                                  </p>                                  </p>
4596  <blockquote class="text">  <blockquote class="text">
# Line 4181  Intellectual Property and Copyright Stat Line 4598  Intellectual Property and Copyright Stat
4598                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4599                                      warning message                                      warning message
4600  </p>  </p>
4601  </blockquote><p>  </blockquote>
4602                                
4603    
 </p>  
4604  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4605                                  </p>                                  </p>
4606  <blockquote class="text">  <blockquote class="text">
4607  <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
4608  </p>  </p>
4609  </blockquote><p>  </blockquote>
4610                                
4611    
 </p>  
4612  </blockquote><p>  </blockquote><p>
4613                        
4614  </p>  </p>
4615  <p>Examples:  <p>Examples:
4616  </p>  </p>
# Line 4203  Intellectual Property and Copyright Stat Line 4620  Intellectual Property and Copyright Stat
4620  <p>  <p>
4621  </p>  </p>
4622  </blockquote><p>  </blockquote><p>
4623                        
4624  </p>  </p>
4625  <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 />
4626    <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>
4627    <a name="rfc.section.6.4.18"></a><h3>6.4.18.&nbsp;
4628    Setting MIDI input type</h3>
4629    
4630  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4631  </p>  </p>
# Line 4218  Intellectual Property and Copyright Stat Line 4638  Intellectual Property and Copyright Stat
4638  <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;
4639  </p>  </p>
4640  </blockquote><p>  </blockquote><p>
4641                        
4642  </p>  </p>
4643  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and
4644                      &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 4653  Intellectual Property and Copyright Stat
4653  <blockquote class="text">  <blockquote class="text">
4654  <p>on success  <p>on success
4655  </p>  </p>
4656  </blockquote><p>  </blockquote>
4657                                
4658    
 </p>  
4659  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4660                                  </p>                                  </p>
4661  <blockquote class="text">  <blockquote class="text">
# Line 4243  Intellectual Property and Copyright Stat Line 4663  Intellectual Property and Copyright Stat
4663                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4664                                      warning message                                      warning message
4665  </p>  </p>
4666  </blockquote><p>  </blockquote>
4667                                
4668    
 </p>  
4669  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4670                                  </p>                                  </p>
4671  <blockquote class="text">  <blockquote class="text">
4672  <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
4673  </p>  </p>
4674  </blockquote><p>  </blockquote>
4675                                
4676    
 </p>  
4677  </blockquote><p>  </blockquote><p>
4678                        
4679  </p>  </p>
4680  <p>Examples:  <p>Examples:
4681  </p>  </p>
# Line 4265  Intellectual Property and Copyright Stat Line 4685  Intellectual Property and Copyright Stat
4685  <p>  <p>
4686  </p>  </p>
4687  </blockquote><p>  </blockquote><p>
4688                        
4689  </p>  </p>
4690  <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 />
4691    <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>
4692    <a name="rfc.section.6.4.19"></a><h3>6.4.19.&nbsp;
4693    Setting MIDI input port</h3>
4694    
4695  <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
4696                      channel by sending the following command:                      channel by sending the following command:
# Line 4278  Intellectual Property and Copyright Stat Line 4701  Intellectual Property and Copyright Stat
4701  <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;
4702  </p>  </p>
4703  </blockquote><p>  </blockquote><p>
4704                        
4705  </p>  </p>
4706  <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
4707                      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 4717  Intellectual Property and Copyright Stat
4717  <blockquote class="text">  <blockquote class="text">
4718  <p>on success  <p>on success
4719  </p>  </p>
4720  </blockquote><p>  </blockquote>
4721                                
4722    
 </p>  
4723  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4724                                  </p>                                  </p>
4725  <blockquote class="text">  <blockquote class="text">
# Line 4304  Intellectual Property and Copyright Stat Line 4727  Intellectual Property and Copyright Stat
4727                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4728                                      warning message                                      warning message
4729  </p>  </p>
4730  </blockquote><p>  </blockquote>
4731                                
4732    
 </p>  
4733  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4734                                  </p>                                  </p>
4735  <blockquote class="text">  <blockquote class="text">
4736  <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
4737  </p>  </p>
4738  </blockquote><p>  </blockquote>
4739                                
4740    
 </p>  
4741  </blockquote><p>  </blockquote><p>
4742                        
4743  </p>  </p>
4744  <p>Examples:  <p>Examples:
4745  </p>  </p>
# Line 4326  Intellectual Property and Copyright Stat Line 4749  Intellectual Property and Copyright Stat
4749  <p>  <p>
4750  </p>  </p>
4751  </blockquote><p>  </blockquote><p>
4752                        
4753  </p>  </p>
4754  <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 />
4755    <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>
4756    <a name="rfc.section.6.4.20"></a><h3>6.4.20.&nbsp;
4757    Setting MIDI input channel</h3>
4758    
4759  <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
4760                      listen to by sending the following command:                      listen to by sending the following command:
# Line 4339  Intellectual Property and Copyright Stat Line 4765  Intellectual Property and Copyright Stat
4765  <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;
4766  </p>  </p>
4767  </blockquote><p>  </blockquote><p>
4768                        
4769  </p>  </p>
4770  <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
4771                      &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 4781  Intellectual Property and Copyright Stat
4781  <blockquote class="text">  <blockquote class="text">
4782  <p>on success  <p>on success
4783  </p>  </p>
4784  </blockquote><p>  </blockquote>
4785                                
4786    
 </p>  
4787  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4788                                  </p>                                  </p>
4789  <blockquote class="text">  <blockquote class="text">
# Line 4365  Intellectual Property and Copyright Stat Line 4791  Intellectual Property and Copyright Stat
4791                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4792                                      warning message                                      warning message
4793  </p>  </p>
4794  </blockquote><p>  </blockquote>
4795                                
4796    
 </p>  
4797  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4798                                  </p>                                  </p>
4799  <blockquote class="text">  <blockquote class="text">
4800  <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
4801  </p>  </p>
4802  </blockquote><p>  </blockquote>
4803                                
4804    
 </p>  
4805  </blockquote><p>  </blockquote><p>
4806                        
4807  </p>  </p>
4808  <p>Examples:  <p>Examples:
4809  </p>  </p>
# Line 4387  Intellectual Property and Copyright Stat Line 4813  Intellectual Property and Copyright Stat
4813  <p>  <p>
4814  </p>  </p>
4815  </blockquote><p>  </blockquote><p>
4816                        
4817  </p>  </p>
4818  <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 />
4819    <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>
4820    <a name="rfc.section.6.4.21"></a><h3>6.4.21.&nbsp;
4821    Setting channel volume</h3>
4822    
4823  <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
4824                      the following command:                      the following command:
# Line 4400  Intellectual Property and Copyright Stat Line 4829  Intellectual Property and Copyright Stat
4829  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;
4830  </p>  </p>
4831  </blockquote><p>  </blockquote><p>
4832                        
4833  </p>  </p>
4834  <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
4835                      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 4846  Intellectual Property and Copyright Stat
4846  <blockquote class="text">  <blockquote class="text">
4847  <p>on success  <p>on success
4848  </p>  </p>
4849  </blockquote><p>  </blockquote>
4850                                
4851    
 </p>  
4852  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4853                                  </p>                                  </p>
4854  <blockquote class="text">  <blockquote class="text">
# Line 4427  Intellectual Property and Copyright Stat Line 4856  Intellectual Property and Copyright Stat
4856                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4857                                      warning message                                      warning message
4858  </p>  </p>
4859  </blockquote><p>  </blockquote>
4860                                
4861    
 </p>  
4862  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4863                                  </p>                                  </p>
4864  <blockquote class="text">  <blockquote class="text">
4865  <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
4866  </p>  </p>
4867  </blockquote><p>  </blockquote>
4868                                
4869    
 </p>  
4870  </blockquote><p>  </blockquote><p>
4871                        
4872  </p>  </p>
4873  <p>Examples:  <p>Examples:
4874  </p>  </p>
# Line 4449  Intellectual Property and Copyright Stat Line 4878  Intellectual Property and Copyright Stat
4878  <p>  <p>
4879  </p>  </p>
4880  </blockquote><p>  </blockquote><p>
4881                        
4882  </p>  </p>
4883  <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 />
4884    <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>
4885    <a name="rfc.section.6.4.22"></a><h3>6.4.22.&nbsp;
4886    Muting a sampler channel</h3>
4887    
4888  <p>The front-end can mute/unmute a specific sampler  <p>The front-end can mute/unmute a specific sampler
4889                      channel by sending the following command:                      channel by sending the following command:
# Line 4462  Intellectual Property and Copyright Stat Line 4894  Intellectual Property and Copyright Stat
4894  <p>SET CHANNEL MUTE &lt;sampler-channel&gt; &lt;mute&gt;  <p>SET CHANNEL MUTE &lt;sampler-channel&gt; &lt;mute&gt;
4895  </p>  </p>
4896  </blockquote><p>  </blockquote><p>
4897                        
4898  </p>  </p>
4899  <p>Where &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4900                      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>
4901                      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
4902                      &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"
4903                      to unmute the channel.                      to unmute the channel.
4904  </p>  </p>
# Line 4480  Intellectual Property and Copyright Stat Line 4912  Intellectual Property and Copyright Stat
4912  <blockquote class="text">  <blockquote class="text">
4913  <p>on success  <p>on success
4914  </p>  </p>
4915    </blockquote>
4916                                
4917    
4918    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4919                                    </p>
4920    <blockquote class="text">
4921    <p>if the channel was muted/unmuted, but there are noteworthy
4922                                        issue(s) related, providing an appropriate warning code and
4923                                        warning message
4924    </p>
4925    </blockquote>
4926                                
4927    
4928    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4929                                    </p>
4930    <blockquote class="text">
4931    <p>in case it failed, providing an appropriate error code and error message
4932    </p>
4933    </blockquote>
4934                                
4935    
4936    </blockquote><p>
4937                        
4938    </p>
4939    <p>Examples:
4940    </p>
4941    <p>
4942                            </p>
4943    <blockquote class="text">
4944    <p>
4945    </p>
4946  </blockquote><p>  </blockquote><p>
4947                        
4948    </p>
4949    <a name="SET CHANNEL SOLO"></a><br /><hr />
4950    <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>
4951    <a name="rfc.section.6.4.23"></a><h3>6.4.23.&nbsp;
4952    Soloing a sampler channel</h3>
4953    
4954    <p>The front-end can solo/unsolo a specific sampler channel
4955                        by sending the following command:
4956    </p>
4957    <p>
4958                            </p>
4959    <blockquote class="text">
4960    <p>SET CHANNEL SOLO &lt;sampler-channel&gt; &lt;solo&gt;
4961    </p>
4962    </blockquote><p>
4963                        
4964  </p>  </p>
4965    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4966                        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>
4967                        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
4968                        &lt;solo&gt; should be replaced either by "1" to solo the channel or "0"
4969                        to unsolo the channel.
4970    </p>
4971    <p>Possible Answers:
4972    </p>
4973    <p>
4974                            </p>
4975    <blockquote class="text">
4976    <p>"OK" -
4977                                    </p>
4978    <blockquote class="text">
4979    <p>on success
4980    </p>
4981    </blockquote>
4982                                
4983    
4984  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4985                                  </p>                                  </p>
4986  <blockquote class="text">  <blockquote class="text">
4987  <p>if the channel was muted/unmuted, but there are noteworthy  <p>if the channel was soloed/unsoloed, but there are noteworthy
4988                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
4989                                      warning message                                      warning message
4990  </p>  </p>
4991    </blockquote>
4992                                
4993    
4994    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4995                                    </p>
4996    <blockquote class="text">
4997    <p>in case it failed, providing an appropriate error code and error message
4998    </p>
4999    </blockquote>
5000                                
5001    
5002  </blockquote><p>  </blockquote><p>
5003                        
5004    </p>
5005    <p>Examples:
5006    </p>
5007    <p>
5008                            </p>
5009    <blockquote class="text">
5010    <p>
5011    </p>
5012    </blockquote><p>
5013                        
5014    </p>
5015    <a name="SET CHANNEL MIDI_INSTRUMENT_MAP"></a><br /><hr />
5016    <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>
5017    <a name="rfc.section.6.4.24"></a><h3>6.4.24.&nbsp;
5018    Assigning a MIDI instrument map to a sampler channel</h3>
5019    
5020    <p>The front-end can assign a MIDI instrument map to a specific sampler channel
5021                        by sending the following command:
5022    </p>
5023    <p>
5024                            </p>
5025    <blockquote class="text">
5026    <p>SET CHANNEL MIDI_INSTRUMENT_MAP &lt;sampler-channel&gt; &lt;map&gt;
5027  </p>  </p>
5028    </blockquote><p>
5029                        
5030    </p>
5031    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5032                        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>
5033                        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
5034                        &lt;map&gt; can have the following possibilites:
5035    </p>
5036    <p>
5037                            </p>
5038    <blockquote class="text">
5039    <p>"NONE" -
5040                                    </p>
5041    <blockquote class="text">
5042    <p>This is the default setting. In this case
5043                                        the sampler channel is not assigned any MIDI
5044                                        instrument map and thus will ignore all MIDI
5045                                        program change messages.
5046    </p>
5047    </blockquote>
5048                                
5049    
5050    <p>"DEFAULT" -
5051                                    </p>
5052    <blockquote class="text">
5053    <p>The sampler channel will always use the
5054                                        default MIDI instrument map to handle MIDI
5055                                        program change messages.
5056    </p>
5057    </blockquote>
5058                                
5059    
5060    <p>numeric ID -
5061                                    </p>
5062    <blockquote class="text">
5063    <p>You can assign a specific MIDI instrument map
5064                                        by replacing &lt;map&gt; with the respective numeric
5065                                        ID of the MIDI instrument map as returned by the
5066                                        <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>
5067                                        command. Once that map will be deleted, the sampler
5068                                        channel would fall back to "NONE".
5069    </p>
5070    </blockquote>
5071                                
5072    
5073    </blockquote><p>
5074                        
5075    </p>
5076    <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>
5077                        for details regarding MIDI instrument mapping.
5078    </p>
5079    <p>Possible Answers:
5080    </p>
5081    <p>
5082                            </p>
5083    <blockquote class="text">
5084    <p>"OK" -
5085                                    </p>
5086    <blockquote class="text">
5087    <p>on success
5088    </p>
5089    </blockquote>
5090                                
5091    
5092  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5093                                  </p>                                  </p>
5094  <blockquote class="text">  <blockquote class="text">
5095  <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
5096  </p>  </p>
5097    </blockquote>
5098                                
5099    
5100  </blockquote><p>  </blockquote><p>
5101                        
5102    </p>
5103    <p>Examples:
5104    </p>
5105    <p>
5106                            </p>
5107    <blockquote class="text">
5108    <p>
5109    </p>
5110    </blockquote><p>
5111                        
5112    </p>
5113    <a name="CREATE FX_SEND"></a><br /><hr />
5114    <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>
5115    <a name="rfc.section.6.4.25"></a><h3>6.4.25.&nbsp;
5116    Adding an effect send to a sampler channel</h3>
5117    
5118    <p>The front-end can create an additional effect send on a specific sampler channel
5119                        by sending the following command:
5120    </p>
5121    <p>
5122                            </p>
5123    <blockquote class="text">
5124    <p>CREATE FX_SEND &lt;sampler-channel&gt; &lt;midi-ctrl&gt; [&lt;name&gt;]
5125  </p>  </p>
5126  </blockquote><p>  </blockquote><p>
5127                        
5128    </p>
5129    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5130                        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>
5131                        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
5132                        sampler channel on which the effect send should be created on, &lt;midi-ctrl&gt;
5133                        is a number between 0..127 defining the MIDI controller which can alter the
5134                        effect send level and &lt;name&gt; is an optional argument defining a name
5135                        for the effect send entity. The name does not have to be unique, but MUST be
5136                        encapsulated into apostrophes and supports escape sequences as described in chapter
5137                        "<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>".
5138    </p>
5139    <p>By default, that is as initial routing, the effect send's audio channels
5140                        are automatically routed to the last audio channels of the sampler channel's
5141                        audio output device, that way you can i.e. first increase the amount of audio
5142                        channels on the audio output device for having dedicated effect send output
5143                        channels and when "CREATE FX_SEND" is called, those channels will automatically
5144                        be picked. You can alter the destination channels however with
5145                        <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>.
5146                        
5147    </p>
5148    <p>Note: Create effect sends on a sampler channel only when needed, because having effect
5149                        sends on a sampler channel will decrease runtime performance, because for implementing channel
5150                        effect sends, separate (sampler channel local) audio buffers are needed to render and mix
5151                        the voices and route the audio signal afterwards to the master outputs and effect send
5152                        outputs (along with their respective effect send levels). A sampler channel without effect
5153                        sends however can mix its voices directly into the audio output devices's audio buffers
5154                        and is thus faster.
5155                        
5156    </p>
5157    <p>Possible Answers:
5158    </p>
5159    <p>
5160                            </p>
5161    <blockquote class="text">
5162    <p>"OK[&lt;fx-send-id&gt;]" -
5163                                    </p>
5164    <blockquote class="text">
5165    <p>in case a new effect send could be added to the
5166                                        sampler channel, where &lt;fx-send-id&gt; reflects the
5167                                        unique ID of the newly created effect send entity
5168    </p>
5169    </blockquote>
5170                                
5171    
5172    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5173                                    </p>
5174    <blockquote class="text">
5175    <p>when a new effect send could not be added, i.e.
5176                                        due to invalid parameters
5177    </p>
5178    </blockquote>
5179                                
5180    
5181    </blockquote><p>
5182                        
5183  </p>  </p>
5184  <p>Examples:  <p>Examples:
5185  </p>  </p>
5186  <p>  <p>
5187                          </p>                          </p>
5188  <blockquote class="text">  <blockquote class="text">
5189    <p>C: "CREATE FX_SEND 0 91 'Reverb Send'"
5190    </p>
5191    <p>S: "OK[0]"
5192    </p>
5193    </blockquote><p>
5194                        
5195    </p>
5196  <p>  <p>
5197                            </p>
5198    <blockquote class="text">
5199    <p>C: "CREATE FX_SEND 0 93"
5200    </p>
5201    <p>S: "OK[1]"
5202  </p>  </p>
5203  </blockquote><p>  </blockquote><p>
5204                        
5205    </p>
5206    <a name="DESTROY FX_SEND"></a><br /><hr />
5207    <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>
5208    <a name="rfc.section.6.4.26"></a><h3>6.4.26.&nbsp;
5209    Removing an effect send from a sampler channel</h3>
5210    
5211    <p>The front-end can remove an existing effect send on a specific sampler channel
5212                        by sending the following command:
5213    </p>
5214    <p>
5215                            </p>
5216    <blockquote class="text">
5217    <p>DESTROY FX_SEND &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5218  </p>  </p>
5219  <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><p>
5220                        
5221    </p>
5222    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5223                        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>
5224                        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
5225                        sampler channel from which the effect send should be removed from and
5226                        &lt;fx-send-id&gt; is the respective effect send number as returned by the
5227                        <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>
5228                        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.
5229    </p>
5230    <p>Possible Answers:
5231    </p>
5232    <p>
5233                            </p>
5234    <blockquote class="text">
5235    <p>"OK" -
5236                                    </p>
5237    <blockquote class="text">
5238    <p>on success
5239    </p>
5240    </blockquote>
5241                                
5242    
5243  <p>The front-end can solo/unsolo a specific sampler channel  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5244                                    </p>
5245    <blockquote class="text">
5246    <p>in case it failed, providing an appropriate error code and
5247                                        error message
5248    </p>
5249    </blockquote>
5250                                
5251    
5252    </blockquote><p>
5253                        
5254    </p>
5255    <p>Example:
5256    </p>
5257    <p>
5258                            </p>
5259    <blockquote class="text">
5260    <p>C: "DESTROY FX_SEND 0 0"
5261    </p>
5262    <p>S: "OK"
5263    </p>
5264    </blockquote><p>
5265                        
5266    </p>
5267    <a name="GET FX_SENDS"></a><br /><hr />
5268    <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>
5269    <a name="rfc.section.6.4.27"></a><h3>6.4.27.&nbsp;
5270    Getting amount of effect sends on a sampler channel</h3>
5271    
5272    <p>The front-end can ask for the amount of effect sends on a specific sampler channel
5273                      by sending the following command:                      by sending the following command:
5274  </p>  </p>
5275  <p>  <p>
5276                          </p>                          </p>
5277  <blockquote class="text">  <blockquote class="text">
5278  <p>SET CHANNEL SOLO &lt;sampler-channel&gt; &lt;solo&gt;  <p>GET FX_SENDS &lt;sampler-channel&gt;
5279    </p>
5280    </blockquote><p>
5281                        
5282    </p>
5283    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5284                        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>
5285                        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.
5286    </p>
5287    <p>Possible Answers:
5288    </p>
5289    <p>
5290                            </p>
5291    <blockquote class="text">
5292    <p>The sampler will answer by returning the number of effect
5293                                sends on the given sampler channel.
5294  </p>  </p>
5295  </blockquote><p>  </blockquote><p>
5296                        
5297    </p>
5298    <p>Example:
5299    </p>
5300    <p>
5301                            </p>
5302    <blockquote class="text">
5303    <p>C: "GET FX_SENDS 0"
5304    </p>
5305    <p>S: "2"
5306    </p>
5307    </blockquote><p>
5308                        
5309    </p>
5310    <a name="LIST FX_SENDS"></a><br /><hr />
5311    <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>
5312    <a name="rfc.section.6.4.28"></a><h3>6.4.28.&nbsp;
5313    Listing all effect sends on a sampler channel</h3>
5314    
5315    <p>The front-end can ask for a list of effect sends on a specific sampler channel
5316                        by sending the following command:
5317    </p>
5318    <p>
5319                            </p>
5320    <blockquote class="text">
5321    <p>LIST FX_SENDS &lt;sampler-channel&gt;
5322    </p>
5323    </blockquote><p>
5324                        
5325  </p>  </p>
5326  <p>Where &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5327                      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>
5328                      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.
5329                      &lt;solo&gt; should be replaced either by "1" to solo the channel or "0"  </p>
5330                      to unsolo the channel.  <p>Possible Answers:
5331    </p>
5332    <p>
5333                            </p>
5334    <blockquote class="text">
5335    <p>The sampler will answer by returning a comma separated list
5336                                with all effect sends' numerical IDs on the given sampler
5337                                channel.
5338    </p>
5339    </blockquote><p>
5340                        
5341    </p>
5342    <p>Examples:
5343    </p>
5344    <p>
5345                            </p>
5346    <blockquote class="text">
5347    <p>C: "LIST FX_SENDS 0"
5348    </p>
5349    <p>S: "0,1"
5350    </p>
5351    </blockquote><p>
5352                        
5353    </p>
5354    <p>
5355                            </p>
5356    <blockquote class="text">
5357    <p>C: "LIST FX_SENDS 1"
5358    </p>
5359    <p>S: ""
5360    </p>
5361    </blockquote><p>
5362                        
5363    </p>
5364    <a name="GET FX_SEND INFO"></a><br /><hr />
5365    <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>
5366    <a name="rfc.section.6.4.29"></a><h3>6.4.29.&nbsp;
5367    Getting effect send information</h3>
5368    
5369    <p>The front-end can ask for the current settings of an effect send entity
5370                        by sending the following command:
5371    </p>
5372    <p>
5373                            </p>
5374    <blockquote class="text">
5375    <p>GET FX_SEND INFO &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5376    </p>
5377    </blockquote><p>
5378                        
5379    </p>
5380    <p>Where &lt;sampler-channel&gt; is the sampler channel number
5381                        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>
5382                        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
5383                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5384                        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>
5385                        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.
5386                      
5387    </p>
5388    <p>Possible Answers:
5389    </p>
5390    <p>
5391                            </p>
5392    <blockquote class="text">
5393    <p>The sampler will answer by sending a &lt;CRLF&gt; separated list.
5394                                Each answer line begins with the settings category name
5395                                followed by a colon and then a space character &lt;SP&gt; and finally
5396                                the info character string to that setting category. At the
5397                                moment the following categories are defined:
5398    </p>
5399    <p>
5400                                    </p>
5401    <blockquote class="text">
5402    <p>NAME -
5403                                            </p>
5404    <blockquote class="text">
5405    <p>name of the effect send entity
5406                                                (note that this character string may contain
5407                                                 <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
5408    </p>
5409    </blockquote>
5410                                        
5411    
5412    <p>MIDI_CONTROLLER -
5413                                            </p>
5414    <blockquote class="text">
5415    <p>a value between 0 and 127 reflecting the MIDI controller
5416                                                which is able to modify the effect send's send level
5417    </p>
5418    </blockquote>
5419                                        
5420    
5421    <p>LEVEL -
5422                                            </p>
5423    <blockquote class="text">
5424    <p>optionally dotted number reflecting the effect send's
5425                                                current send level (where a value &lt; 1.0 means attenuation
5426                                                and a value > 1.0 means amplification)
5427    </p>
5428    </blockquote>
5429                                        
5430    
5431    <p>AUDIO_OUTPUT_ROUTING -
5432                                            </p>
5433    <blockquote class="text">
5434    <p>comma separated list which reflects to which audio
5435                                                channel of the selected audio output device each
5436                                                effect send output channel is routed to, e.g. "0,3" would
5437                                                mean the effect send's output channel 0 is routed to channel
5438                                                0 of the audio output device and the effect send's output
5439                                                channel 1 is routed to the channel 3 of the audio
5440                                                output device (see
5441                                                <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>
5442                                                for details)
5443    </p>
5444    </blockquote>
5445                                        
5446    
5447    </blockquote>
5448                                
5449    
5450    </blockquote><p>
5451                        
5452    </p>
5453    <p>The mentioned fields above don't have to be in particular order.
5454    </p>
5455    <p>Example:
5456    </p>
5457    <p>
5458                            </p>
5459    <blockquote class="text">
5460    <p>C: "GET FX_SEND INFO 0 0"
5461    </p>
5462    <p>S: "NAME: Reverb Send"
5463    </p>
5464    <p>&nbsp;&nbsp;&nbsp;"MIDI_CONTROLLER: 91"
5465    </p>
5466    <p>&nbsp;&nbsp;&nbsp;"LEVEL: 0.3"
5467    </p>
5468    <p>&nbsp;&nbsp;&nbsp;"AUDIO_OUTPUT_ROUTING: 2,3"
5469    </p>
5470    <p>&nbsp;&nbsp;&nbsp;"."
5471    </p>
5472    </blockquote><p>
5473                        
5474    </p>
5475    <a name="SET FX_SEND NAME"></a><br /><hr />
5476    <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>
5477    <a name="rfc.section.6.4.30"></a><h3>6.4.30.&nbsp;
5478    Changing effect send's name</h3>
5479    
5480    <p>The front-end can alter the current name of an effect
5481                        send entity by sending the following command:
5482    </p>
5483    <p>
5484                            </p>
5485    <blockquote class="text">
5486    <p>SET FX_SEND NAME &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;name&gt;
5487    </p>
5488    </blockquote><p>
5489                        
5490    </p>
5491    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5492                        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>
5493                        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,
5494                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5495                        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>
5496                        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
5497                        &lt;name&gt; is the new name of the effect send entity, which
5498                        does not have to be unique (name MUST be encapsulated into apostrophes
5499                        and supports escape sequences as described in chapter
5500                        "<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>").
5501                        
5502  </p>  </p>
5503  <p>Possible Answers:  <p>Possible Answers:
5504  </p>  </p>
# Line 4543  Intellectual Property and Copyright Stat Line 5510  Intellectual Property and Copyright Stat
5510  <blockquote class="text">  <blockquote class="text">
5511  <p>on success  <p>on success
5512  </p>  </p>
5513    </blockquote>
5514                                
5515    
5516    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5517                                    </p>
5518    <blockquote class="text">
5519    <p>in case it failed, providing an appropriate error code and error message
5520    </p>
5521    </blockquote>
5522                                
5523    
5524  </blockquote><p>  </blockquote><p>
5525                        
5526    </p>
5527    <p>Example:
5528    </p>
5529    <p>
5530                            </p>
5531    <blockquote class="text">
5532    <p>C: "SET FX_SEND NAME 0 0 'Fx Send 1'"
5533    </p>
5534    <p>S: "OK"
5535    </p>
5536    </blockquote><p>
5537                        
5538    </p>
5539    <a name="SET FX_SEND AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
5540    <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>
5541    <a name="rfc.section.6.4.31"></a><h3>6.4.31.&nbsp;
5542    Altering effect send's audio routing</h3>
5543    
5544    <p>The front-end can alter the destination of an effect send's audio channel on a specific
5545                        sampler channel by sending the following command:
5546    </p>
5547    <p>
5548                            </p>
5549    <blockquote class="text">
5550    <p>SET FX_SEND AUDIO_OUTPUT_CHANNEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;audio-src&gt; &lt;audio-dst&gt;
5551    </p>
5552    </blockquote><p>
5553                        
5554    </p>
5555    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5556                        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>
5557                        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,
5558                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5559                        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>
5560                        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,
5561                        &lt;audio-src&gt; is the numerical ID of the effect send's audio channel
5562                        which should be rerouted and &lt;audio-dst&gt; is the numerical ID of
5563                        the audio channel of the selected audio output device where &lt;audio-src&gt;
5564                        should be routed to.
5565    </p>
5566    <p>Note that effect sends can only route audio to the same audio output
5567                        device as assigned to the effect send's sampler channel. Also note that an
5568                        effect send entity does always have exactly as much audio channels as its
5569                        sampler channel. So if the sampler channel is stereo, the effect send does
5570                        have two audio channels as well. Also keep in mind that the amount of audio
5571                        channels on a sampler channel might be dependant not only to the deployed
5572                        sampler engine on the sampler channel, but also dependant to the instrument
5573                        currently loaded. However you can (effectively) turn an i.e. stereo effect
5574                        send into a mono one by simply altering its audio routing appropriately.
5575    </p>
5576    <p>Possible Answers:
5577    </p>
5578    <p>
5579                            </p>
5580    <blockquote class="text">
5581    <p>"OK" -
5582                                    </p>
5583    <blockquote class="text">
5584    <p>on success
5585  </p>  </p>
5586    </blockquote>
5587                                
5588    
5589  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5590                                  </p>                                  </p>
5591  <blockquote class="text">  <blockquote class="text">
5592  <p>if the channel was soloed/unsoloed, but there are noteworthy  <p>if audio output channel was set, but there are noteworthy
5593                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
5594                                      warning message                                      warning message
5595  </p>  </p>
5596    </blockquote>
5597                                
5598    
5599    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5600                                    </p>
5601    <blockquote class="text">
5602    <p>in case it failed, providing an appropriate error code and error message
5603    </p>
5604    </blockquote>
5605                                
5606    
5607  </blockquote><p>  </blockquote><p>
5608                        
5609    </p>
5610    <p>Example:
5611    </p>
5612    <p>
5613                            </p>
5614    <blockquote class="text">
5615    <p>C: "SET FX_SEND AUDIO_OUTPUT_CHANNEL 0 0 0 2"
5616    </p>
5617    <p>S: "OK"
5618    </p>
5619    </blockquote><p>
5620                        
5621    </p>
5622    <a name="SET FX_SEND MIDI_CONTROLLER"></a><br /><hr />
5623    <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>
5624    <a name="rfc.section.6.4.32"></a><h3>6.4.32.&nbsp;
5625    Altering effect send's MIDI controller</h3>
5626    
5627    <p>The front-end can alter the MIDI controller of an effect
5628                        send entity by sending the following command:
5629    </p>
5630    <p>
5631                            </p>
5632    <blockquote class="text">
5633    <p>SET FX_SEND MIDI_CONTROLLER &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;midi-ctrl&gt;
5634    </p>
5635    </blockquote><p>
5636                        
5637  </p>  </p>
5638    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5639                        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>
5640                        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,
5641                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5642                        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>
5643                        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
5644                        &lt;midi-ctrl&gt; reflects the MIDI controller which shall be
5645                        able to modify the effect send's send level.
5646    </p>
5647    <p>Possible Answers:
5648    </p>
5649    <p>
5650                            </p>
5651    <blockquote class="text">
5652    <p>"OK" -
5653                                    </p>
5654    <blockquote class="text">
5655    <p>on success
5656    </p>
5657    </blockquote>
5658                                
5659    
5660    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5661                                    </p>
5662    <blockquote class="text">
5663    <p>if MIDI controller was set, but there are noteworthy
5664                                        issue(s) related, providing an appropriate warning code and
5665                                        warning message
5666    </p>
5667    </blockquote>
5668                                
5669    
5670  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5671                                  </p>                                  </p>
5672  <blockquote class="text">  <blockquote class="text">
5673  <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
5674  </p>  </p>
5675    </blockquote>
5676                                
5677    
5678    </blockquote><p>
5679                        
5680    </p>
5681    <p>Example:
5682    </p>
5683    <p>
5684                            </p>
5685    <blockquote class="text">
5686    <p>C: "SET FX_SEND MIDI_CONTROLLER 0 0 91"
5687    </p>
5688    <p>S: "OK"
5689    </p>
5690  </blockquote><p>  </blockquote><p>
5691                        
5692    </p>
5693    <a name="SET FX_SEND LEVEL"></a><br /><hr />
5694    <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>
5695    <a name="rfc.section.6.4.33"></a><h3>6.4.33.&nbsp;
5696    Altering effect send's send level</h3>
5697    
5698    <p>The front-end can alter the current send level of an effect
5699                        send entity by sending the following command:
5700    </p>
5701    <p>
5702                            </p>
5703    <blockquote class="text">
5704    <p>SET FX_SEND LEVEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;volume&gt;
5705  </p>  </p>
5706  </blockquote><p>  </blockquote><p>
5707                        
5708    </p>
5709    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5710                        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>
5711                        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,
5712                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5713                        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>
5714                        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
5715                        &lt;volume&gt; is an optionally dotted positive number (a value
5716                        smaller than 1.0 means attenuation, whereas a value greater than
5717                        1.0 means amplification) reflecting the new send level.
5718    </p>
5719    <p>Possible Answers:
5720    </p>
5721    <p>
5722                            </p>
5723    <blockquote class="text">
5724    <p>"OK" -
5725                                    </p>
5726    <blockquote class="text">
5727    <p>on success
5728    </p>
5729    </blockquote>
5730                                
5731    
5732    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5733                                    </p>
5734    <blockquote class="text">
5735    <p>if new send level was set, but there are noteworthy
5736                                        issue(s) related, providing an appropriate warning code and
5737                                        warning message
5738  </p>  </p>
5739  <p>Examples:  </blockquote>
5740                                
5741    
5742    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5743                                    </p>
5744    <blockquote class="text">
5745    <p>in case it failed, providing an appropriate error code and error message
5746    </p>
5747    </blockquote>
5748                                
5749    
5750    </blockquote><p>
5751                        
5752    </p>
5753    <p>Example:
5754  </p>  </p>
5755  <p>  <p>
5756                          </p>                          </p>
5757  <blockquote class="text">  <blockquote class="text">
5758    <p>C: "SET FX_SEND LEVEL 0 0 0.15"
5759    </p>
5760    <p>S: "OK"
5761    </p>
5762    </blockquote><p>
5763                        
5764    </p>
5765    <a name="SEND CHANNEL MIDI_DATA"></a><br /><hr />
5766    <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>
5767    <a name="rfc.section.6.4.34"></a><h3>6.4.34.&nbsp;
5768    Sending MIDI messages to sampler channel</h3>
5769    
5770    <p>The front-end can send MIDI events to specific sampler channel
5771                        by sending the following command:
5772    </p>
5773  <p>  <p>
5774                            </p>
5775    <blockquote class="text">
5776    <p>SEND CHANNEL MIDI_DATA &lt;midi-msg&gt; &lt;sampler-chan&gt; &lt;arg1&gt; &lt;arg2&gt;
5777  </p>  </p>
5778  </blockquote><p>  </blockquote><p>
5779                        
5780    </p>
5781    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5782                        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>
5783                        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,
5784                        &lt;arg1&gt; and &lt;arg2&gt; arguments depend on the &lt;midi-msg&gt; argument, which
5785                        specifies the MIDI message type. Currently, the following MIDI messages are supported:
5786    </p>
5787    <p>
5788                            </p>
5789    <blockquote class="text">
5790    <p>"NOTE_ON" -
5791                                    </p>
5792    <blockquote class="text">
5793    <p>For turning on MIDI notes, where &lt;arg1&gt;
5794                                        specifies the key number and &lt;arg2&gt; the velocity
5795                                        as described in the MIDI specification.
5796    </p>
5797    </blockquote>
5798                                
5799    
5800    <p>"NOTE_OFF" -
5801                                    </p>
5802    <blockquote class="text">
5803    <p>For turning a currently playing MIDI note off, where &lt;arg1&gt;
5804                                        specifies the key number and &lt;arg2&gt; the velocity
5805                                        as described in the MIDI specification.
5806  </p>  </p>
5807  <a name="rfc.section.6.4.24"></a><h4><a name="RESET CHANNEL">6.4.24</a>&nbsp;Resetting a sampler channel</h4>  </blockquote>
5808                                
5809    
5810    </blockquote><p>
5811                        
5812    </p>
5813    <p>CAUTION: This command is provided for implementations of virtual MIDI keyboards
5814                        and no realtime guarantee whatsoever will be made!
5815    </p>
5816    <p>Possible Answers:
5817    </p>
5818    <p>
5819                            </p>
5820    <blockquote class="text">
5821    <p>"OK" -
5822                                    </p>
5823    <blockquote class="text">
5824    <p>on success
5825    </p>
5826    </blockquote>
5827                                
5828    
5829    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5830                                    </p>
5831    <blockquote class="text">
5832    <p>in case it failed, providing an appropriate error code and error message
5833    </p>
5834    </blockquote>
5835                                
5836    
5837    </blockquote><p>
5838                        
5839    </p>
5840    <p>Example:
5841    </p>
5842    <p>
5843                            </p>
5844    <blockquote class="text">
5845    <p>C: "SEND CHANNEL MIDI_DATA NOTE_ON 0 56 112"
5846    </p>
5847    <p>S: "OK"
5848    </p>
5849    </blockquote><p>
5850                        
5851    </p>
5852    <a name="RESET CHANNEL"></a><br /><hr />
5853    <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>
5854    <a name="rfc.section.6.4.35"></a><h3>6.4.35.&nbsp;
5855    Resetting a sampler channel</h3>
5856    
5857  <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:
5858  </p>  </p>
# Line 4587  Intellectual Property and Copyright Stat Line 5862  Intellectual Property and Copyright Stat
5862  <p>RESET CHANNEL &lt;sampler-channel&gt;  <p>RESET CHANNEL &lt;sampler-channel&gt;
5863  </p>  </p>
5864  </blockquote><p>  </blockquote><p>
5865                        
5866  </p>  </p>
5867  <p>  <p>
5868                      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 5880  Intellectual Property and Copyright Stat
5880  <blockquote class="text">  <blockquote class="text">
5881  <p>on success  <p>on success
5882  </p>  </p>
5883  </blockquote><p>  </blockquote>
5884                                
5885    
 </p>  
5886  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5887                                  </p>                                  </p>
5888  <blockquote class="text">  <blockquote class="text">
# Line 4615  Intellectual Property and Copyright Stat Line 5890  Intellectual Property and Copyright Stat
5890                                      related, providing an appropriate warning code and warning                                      related, providing an appropriate warning code and warning
5891                                      message                                      message
5892  </p>  </p>
5893  </blockquote><p>  </blockquote>
5894                                
5895    
 </p>  
5896  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5897                                  </p>                                  </p>
5898  <blockquote class="text">  <blockquote class="text">
5899  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
5900                                      error message                                      error message
5901  </p>  </p>
5902  </blockquote><p>  </blockquote>
5903                                
5904    
 </p>  
5905  </blockquote><p>  </blockquote><p>
5906                        
5907  </p>  </p>
5908  <p>Examples:  <p>Examples:
5909  </p>  </p>
# Line 4638  Intellectual Property and Copyright Stat Line 5913  Intellectual Property and Copyright Stat
5913  <p>  <p>
5914  </p>  </p>
5915  </blockquote><p>  </blockquote><p>
5916                        
5917  </p>  </p>
5918  <a name="rfc.section.6.5"></a><h4><a name="anchor12">6.5</a>&nbsp;Controlling connection</h4>  <a name="anchor12"></a><br /><hr />
5919    <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>
5920    <a name="rfc.section.6.5"></a><h3>6.5.&nbsp;
5921    Controlling connection</h3>
5922    
5923  <p>The following commands are used to control the connection to LinuxSampler.  <p>The following commands are used to control the connection to LinuxSampler.
5924  </p>  </p>
5925  <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 />
5926    <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>
5927    <a name="rfc.section.6.5.1"></a><h3>6.5.1.&nbsp;
5928    Register front-end for receiving event messages</h3>
5929    
5930  <p>The front-end can register itself to the LinuxSampler application to  <p>The front-end can register itself to the LinuxSampler application to
5931                      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 5936  Intellectual Property and Copyright Stat
5936  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
5937  </p>  </p>
5938  </blockquote><p>  </blockquote><p>
5939                        
5940  </p>  </p>
5941  <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
5942                      client wants to subscribe to.                      client wants to subscribe to.
# Line 4670  Intellectual Property and Copyright Stat Line 5951  Intellectual Property and Copyright Stat
5951  <blockquote class="text">  <blockquote class="text">
5952  <p>on success  <p>on success
5953  </p>  </p>
5954  </blockquote><p>  </blockquote>
5955                                
5956    
 </p>  
5957  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5958                                  </p>                                  </p>
5959  <blockquote class="text">  <blockquote class="text">
# Line 4680  Intellectual Property and Copyright Stat Line 5961  Intellectual Property and Copyright Stat
5961                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
5962                                      warning message                                      warning message
5963  </p>  </p>
5964  </blockquote><p>  </blockquote>
5965                                
5966    
 </p>  
5967  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5968                                  </p>                                  </p>
5969  <blockquote class="text">  <blockquote class="text">
5970  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
5971                                      error message                                      error message
5972  </p>  </p>
5973  </blockquote><p>  </blockquote>
5974                                
5975    
 </p>  
5976  </blockquote><p>  </blockquote><p>
5977                        
5978  </p>  </p>
5979  <p>Examples:  <p>Examples:
5980  </p>  </p>
# Line 4703  Intellectual Property and Copyright Stat Line 5984  Intellectual Property and Copyright Stat
5984  <p>  <p>
5985  </p>  </p>
5986  </blockquote><p>  </blockquote><p>
5987                        
5988  </p>  </p>
5989  <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 />
5990    <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>
5991    <a name="rfc.section.6.5.2"></a><h3>6.5.2.&nbsp;
5992    Unregister front-end for not receiving event messages</h3>
5993    
5994  <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
5995                      messages anymore by sending the following command:                      messages anymore by sending the following command:
# Line 4716  Intellectual Property and Copyright Stat Line 6000  Intellectual Property and Copyright Stat
6000  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
6001  </p>  </p>
6002  </blockquote><p>  </blockquote><p>
6003                        
6004  </p>  </p>
6005  <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
6006                      client doesn't want to receive anymore.                      client doesn't want to receive anymore.
# Line 4731  Intellectual Property and Copyright Stat Line 6015  Intellectual Property and Copyright Stat
6015  <blockquote class="text">  <blockquote class="text">
6016  <p>on success  <p>on success
6017  </p>  </p>
6018  </blockquote><p>  </blockquote>
6019                                
6020    
 </p>  
6021  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6022                                  </p>                                  </p>
6023  <blockquote class="text">  <blockquote class="text">
# Line 4741  Intellectual Property and Copyright Stat Line 6025  Intellectual Property and Copyright Stat
6025                                      issue(s) related, providing an appropriate warning code and                                      issue(s) related, providing an appropriate warning code and
6026                                      warning message                                      warning message
6027  </p>  </p>
6028  </blockquote><p>  </blockquote>
6029                                
6030    
 </p>  
6031  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6032                                  </p>                                  </p>
6033  <blockquote class="text">  <blockquote class="text">
6034  <p>in case it failed, providing an appropriate error code and  <p>in case it failed, providing an appropriate error code and
6035                                      error message                                      error message
6036  </p>  </p>
6037  </blockquote><p>  </blockquote>
6038                                
6039    
 </p>  
6040  </blockquote><p>  </blockquote><p>
6041                        
6042  </p>  </p>
6043  <p>Examples:  <p>Examples:
6044  </p>  </p>
# Line 4764  Intellectual Property and Copyright Stat Line 6048  Intellectual Property and Copyright Stat
6048  <p>  <p>
6049  </p>  </p>
6050  </blockquote><p>  </blockquote><p>
6051                        
6052  </p>  </p>
6053  <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 />
6054    <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>
6055    <a name="rfc.section.6.5.3"></a><h3>6.5.3.&nbsp;
6056    Enable or disable echo of commands</h3>
6057    
6058  <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:
6059  </p>  </p>
# Line 4776  Intellectual Property and Copyright Stat Line 6063  Intellectual Property and Copyright Stat
6063  <p>SET ECHO &lt;value&gt;  <p>SET ECHO &lt;value&gt;
6064  </p>  </p>
6065  </blockquote><p>  </blockquote><p>
6066                        
6067  </p>  </p>
6068  <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
6069                      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 6083  Intellectual Property and Copyright Stat
6083  <blockquote class="text">  <blockquote class="text">
6084  <p>usually  <p>usually
6085  </p>  </p>
6086  </blockquote><p>  </blockquote>
6087                                
6088    
 </p>  
6089  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6090                                  </p>                                  </p>
6091  <blockquote class="text">  <blockquote class="text">
6092  <p>on syntax error, e.g. non boolean value  <p>on syntax error, e.g. non boolean value
6093  </p>  </p>
6094  </blockquote><p>  </blockquote>
6095                                
6096    
 </p>  
6097  </blockquote><p>  </blockquote><p>
6098                        
6099  </p>  </p>
6100  <p>Examples:  <p>Examples:
6101  </p>  </p>
# Line 4818  Intellectual Property and Copyright Stat Line 6105  Intellectual Property and Copyright Stat
6105  <p>  <p>
6106  </p>  </p>
6107  </blockquote><p>  </blockquote><p>
6108                        
6109  </p>  </p>
6110  <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 />
6111    <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>
6112    <a name="rfc.section.6.5.4"></a><h3>6.5.4.&nbsp;
6113    Close client connection</h3>
6114    
6115  <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:
6116  </p>  </p>
# Line 4830  Intellectual Property and Copyright Stat Line 6120  Intellectual Property and Copyright Stat
6120  <p>QUIT  <p>QUIT
6121  </p>  </p>
6122  </blockquote><p>  </blockquote><p>
6123                        
6124  </p>  </p>
6125  <p>This is probably more interesting for manual telnet connections to  <p>This is probably more interesting for manual telnet connections to
6126                      LinuxSampler than really useful for a front-end implementation.                      LinuxSampler than really useful for a front-end implementation.
6127  </p>  </p>
6128  <a name="rfc.section.6.6"></a><h4><a name="anchor13">6.6</a>&nbsp;Global commands</h4>  <a name="anchor13"></a><br /><hr />
6129    <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>
6130    <a name="rfc.section.6.6"></a><h3>6.6.&nbsp;
6131    Global commands</h3>
6132    
6133  <p>The following commands have global impact on the sampler.  <p>The following commands have global impact on the sampler.
6134  </p>  </p>
6135  <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 />
6136    <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>
6137    <a name="rfc.section.6.6.1"></a><h3>6.6.1.&nbsp;
6138    Current number of active voices</h3>
6139    
6140    <p>The front-end can ask for the current number of active voices on
6141                        the sampler by sending the following command:
6142    </p>
6143    <p>
6144                            </p>
6145    <blockquote class="text">
6146    <p>GET TOTAL_VOICE_COUNT
6147    </p>
6148    </blockquote><p>
6149                        
6150    </p>
6151    <p>Possible Answers:
6152    </p>
6153    <p>
6154                            </p>
6155    <blockquote class="text">
6156    <p>LinuxSampler will answer by returning the number of all active
6157                                voices on the sampler.
6158    </p>
6159    </blockquote><p>
6160                        
6161    </p>
6162    <a name="GET TOTAL_VOICE_COUNT_MAX"></a><br /><hr />
6163    <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>
6164    <a name="rfc.section.6.6.2"></a><h3>6.6.2.&nbsp;
6165    Maximum amount of active voices</h3>
6166    
6167    <p>The front-end can ask for the maximum number of active voices
6168                        by sending the following command:
6169    </p>
6170    <p>
6171                            </p>
6172    <blockquote class="text">
6173    <p>GET TOTAL_VOICE_COUNT_MAX
6174    </p>
6175    </blockquote><p>
6176                        
6177    </p>
6178    <p>Possible Answers:
6179    </p>
6180    <p>
6181                            </p>
6182    <blockquote class="text">
6183    <p>LinuxSampler will answer by returning the maximum number
6184                                of active voices.
6185    </p>
6186    </blockquote><p>
6187                        
6188    </p>
6189    <a name="GET TOTAL_STREAM_COUNT"></a><br /><hr />
6190    <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>
6191    <a name="rfc.section.6.6.3"></a><h3>6.6.3.&nbsp;
6192    Current number of active disk streams</h3>
6193    
6194    <p>The front-end can ask for the current number of active disk streams on
6195                        the sampler by sending the following command:
6196    </p>
6197    <p>
6198                            </p>
6199    <blockquote class="text">
6200    <p>GET TOTAL_STREAM_COUNT
6201    </p>
6202    </blockquote><p>
6203                        
6204    </p>
6205    <p>Possible Answers:
6206    </p>
6207    <p>
6208                            </p>
6209    <blockquote class="text">
6210    <p>LinuxSampler will answer by returning the number of all active
6211                                disk streams on the sampler.
6212    </p>
6213    </blockquote><p>
6214                        
6215    </p>
6216    <a name="RESET"></a><br /><hr />
6217    <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>
6218    <a name="rfc.section.6.6.4"></a><h3>6.6.4.&nbsp;
6219    Reset sampler</h3>
6220    
6221  <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:
6222  </p>  </p>
# Line 4849  Intellectual Property and Copyright Stat Line 6226  Intellectual Property and Copyright Stat
6226  <p>RESET  <p>RESET
6227  </p>  </p>
6228  </blockquote><p>  </blockquote><p>
6229                        
6230  </p>  </p>
6231  <p>Possible Answers:  <p>Possible Answers:
6232  </p>  </p>
# Line 4861  Intellectual Property and Copyright Stat Line 6238  Intellectual Property and Copyright Stat
6238  <blockquote class="text">  <blockquote class="text">
6239  <p>always  <p>always
6240  </p>  </p>
6241  </blockquote><p>  </blockquote>
6242                                
6243    
 </p>  
6244  </blockquote><p>  </blockquote><p>
6245                        
6246  </p>  </p>
6247  <p>Examples:  <p>Examples:
6248  </p>  </p>
# Line 4875  Intellectual Property and Copyright Stat Line 6252  Intellectual Property and Copyright Stat
6252  <p>  <p>
6253  </p>  </p>
6254  </blockquote><p>  </blockquote><p>
6255                        
6256  </p>  </p>
6257  <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 />
6258    <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>
6259    <a name="rfc.section.6.6.5"></a><h3>6.6.5.&nbsp;
6260    General sampler informations</h3>
6261    
6262  <p>The client can ask for general informations about the LinuxSampler  <p>The client can ask for general informations about the LinuxSampler
6263                         instance by sending the following command:                         instance by sending the following command:
# Line 4888  Intellectual Property and Copyright Stat Line 6268  Intellectual Property and Copyright Stat
6268  <p>GET SERVER INFO  <p>GET SERVER INFO
6269  </p>  </p>
6270  </blockquote><p>  </blockquote><p>
6271                        
6272  </p>  </p>
6273  <p>Possible Answers:  <p>Possible Answers:
6274  </p>  </p>
# Line 4900  Intellectual Property and Copyright Stat Line 6280  Intellectual Property and Copyright Stat
6280                                 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
6281                                 the info character string to that information category. At the                                 the info character string to that information category. At the
6282                                 moment the following categories are defined:                                 moment the following categories are defined:
6283                                
6284  </p>  </p>
6285  <p>  <p>
6286                                  </p>                                  </p>
# Line 4909  Intellectual Property and Copyright Stat Line 6289  Intellectual Property and Copyright Stat
6289                                          </p>                                          </p>
6290  <blockquote class="text">  <blockquote class="text">
6291  <p>arbitrary textual description about the sampler  <p>arbitrary textual description about the sampler
6292                                                (note that the character string may contain
6293                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
6294  </p>  </p>
6295  </blockquote><p>  </blockquote>
6296                                        
6297    
 </p>  
6298  <p>VERSION -  <p>VERSION -
6299                                          </p>                                          </p>
6300  <blockquote class="text">  <blockquote class="text">
6301  <p>version of the sampler  <p>version of the sampler
6302  </p>  </p>
6303  </blockquote><p>  </blockquote>
6304                                        
6305    
 </p>  
6306  <p>PROTOCOL_VERSION -  <p>PROTOCOL_VERSION -
6307                                          </p>                                          </p>
6308  <blockquote class="text">  <blockquote class="text">
6309  <p>version of the LSCP specification the sampler  <p>version of the LSCP specification the sampler
6310                                              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)
6311    </p>
6312    </blockquote>
6313                                        
6314    
6315    <p>INSTRUMENTS_DB_SUPPORT -
6316                                            </p>
6317    <blockquote class="text">
6318    <p>either yes or no, specifies whether the
6319                                                sampler is build with instruments database support.
6320    </p>
6321    </blockquote>
6322                                        
6323    
6324    </blockquote>
6325                                
6326    
6327    </blockquote><p>
6328                        
6329    </p>
6330    <p>The mentioned fields above don't have to be in particular order.
6331                        Other fields might be added in future.
6332    </p>
6333    <a name="GET VOLUME"></a><br /><hr />
6334    <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>
6335    <a name="rfc.section.6.6.6"></a><h3>6.6.6.&nbsp;
6336    Getting global volume attenuation</h3>
6337    
6338    <p>The client can ask for the current global sampler-wide volume
6339                        attenuation by sending the following command:
6340    </p>
6341    <p>
6342                            </p>
6343    <blockquote class="text">
6344    <p>GET VOLUME
6345    </p>
6346    </blockquote><p>
6347                        
6348    </p>
6349    <p>Possible Answers:
6350    </p>
6351    <p>
6352                            </p>
6353    <blockquote class="text">
6354    <p>The sampler will always answer by returning the optional
6355                                dotted floating point coefficient, reflecting the current
6356                                global volume attenuation.
6357                                
6358    </p>
6359    </blockquote><p>
6360                        
6361    </p>
6362    <p>Note: it is up to the respective sampler engine whether to obey
6363                        that global volume parameter or not, but in general all engines SHOULD
6364                        use this parameter.
6365    </p>
6366    <a name="SET VOLUME"></a><br /><hr />
6367    <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>
6368    <a name="rfc.section.6.6.7"></a><h3>6.6.7.&nbsp;
6369    Setting global volume attenuation</h3>
6370    
6371    <p>The client can alter the current global sampler-wide volume
6372                        attenuation by sending the following command:
6373    </p>
6374    <p>
6375                            </p>
6376    <blockquote class="text">
6377    <p>SET VOLUME &lt;volume&gt;
6378    </p>
6379    </blockquote><p>
6380                        
6381    </p>
6382    <p>Where &lt;volume&gt; should be replaced by the optional dotted
6383                       floating point value, reflecting the new global volume parameter.
6384                       This value might usually be in the range between 0.0 and 1.0, that
6385                       is for attenuating the overall volume.
6386    </p>
6387    <p>Possible Answers:
6388    </p>
6389    <p>
6390                            </p>
6391    <blockquote class="text">
6392    <p>"OK" -
6393                                    </p>
6394    <blockquote class="text">
6395    <p>on success
6396    </p>
6397    </blockquote>
6398                                
6399    
6400    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6401                                    </p>
6402    <blockquote class="text">
6403    <p>if the global volume was set, but there are noteworthy
6404                                        issue(s) related, providing an appropriate warning code and
6405                                        warning message
6406    </p>
6407    </blockquote>
6408                                
6409    
6410    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6411                                    </p>
6412    <blockquote class="text">
6413    <p>in case it failed, providing an appropriate error code and error message
6414  </p>  </p>
6415    </blockquote>
6416                                
6417    
6418  </blockquote><p>  </blockquote><p>
6419                        
6420    </p>
6421    <a name="GET VOICES"></a><br /><hr />
6422    <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>
6423    <a name="rfc.section.6.6.8"></a><h3>6.6.8.&nbsp;
6424    Getting global voice limit</h3>
6425    
6426    <p>The client can ask for the current global sampler-wide limit
6427                           for maximum voices by sending the following command:
6428    </p>
6429    <p>
6430                            </p>
6431    <blockquote class="text">
6432    <p>GET VOICES
6433    </p>
6434    </blockquote><p>
6435                        
6436    </p>
6437    <p>Possible Answers:
6438    </p>
6439    <p>
6440                            </p>
6441    <blockquote class="text">
6442    <p>LinuxSampler will answer by returning the number for
6443                                   the current limit of maximum voices.
6444  </p>  </p>
6445  </blockquote><p>  </blockquote><p>
6446                        
6447    </p>
6448    <p>The voice limit setting defines how many voices should maximum
6449                           be processed by the sampler at the same time. If the user
6450                           triggers new notes which would exceed that voice limit, the
6451                           sampler engine will react by stealing old voices for those
6452                           newly triggered notes. Note that the amount of voices triggered
6453                           by a new note can be larger than one and is dependent to the
6454                           respective instrument and probably further criterias.
6455    </p>
6456    <a name="SET VOICES"></a><br /><hr />
6457    <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>
6458    <a name="rfc.section.6.6.9"></a><h3>6.6.9.&nbsp;
6459    Setting global voice limit</h3>
6460    
6461    <p>The client can alter the current global sampler-wide limit
6462                        for maximum voices by sending the following command:
6463    </p>
6464    <p>
6465                            </p>
6466    <blockquote class="text">
6467    <p>SET VOICES &lt;max-voices&gt;
6468  </p>  </p>
6469  </blockquote><p>  </blockquote><p>
6470                        
6471    </p>
6472    <p>Where &lt;max-voices&gt; should be replaced by the integer
6473                       value, reflecting the new global amount limit of maximum voices.
6474                       This value has to be larger than 0.
6475    </p>
6476    <p>Possible Answers:
6477    </p>
6478    <p>
6479                            </p>
6480    <blockquote class="text">
6481    <p>"OK" -
6482                                    </p>
6483    <blockquote class="text">
6484    <p>on success
6485    </p>
6486    </blockquote>
6487                                
6488    
6489    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6490                                    </p>
6491    <blockquote class="text">
6492    <p>if the voice limit was set, but there are noteworthy
6493                                        issue(s) related, providing an appropriate warning code and
6494                                        warning message
6495    </p>
6496    </blockquote>
6497                                
6498    
6499    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6500                                    </p>
6501    <blockquote class="text">
6502    <p>in case it failed, providing an appropriate error code and error message
6503    </p>
6504    </blockquote>
6505                                
6506    
6507    </blockquote><p>
6508                        
6509    </p>
6510    <p>Note: the given value will be passed to all sampler engine instances.
6511                           The total amount of maximum voices on the running system might thus
6512                           be as big as the given value multiplied by the current amount of engine
6513                           instances.
6514    </p>
6515    <p>Caution: when adjusting the voice limit, you SHOULD also
6516                            adjust the disk stream limit respectively and vice versa.
6517    </p>
6518    <a name="GET STREAMS"></a><br /><hr />
6519    <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>
6520    <a name="rfc.section.6.6.10"></a><h3>6.6.10.&nbsp;
6521    Getting global disk stream limit</h3>
6522    
6523    <p>The client can ask for the current global sampler-wide limit
6524                           for maximum disk streams by sending the following command:
6525    </p>
6526    <p>
6527                            </p>
6528    <blockquote class="text">
6529    <p>GET STREAMS
6530    </p>
6531    </blockquote><p>
6532                        
6533    </p>
6534    <p>Possible Answers:
6535    </p>
6536    <p>
6537                            </p>
6538    <blockquote class="text">
6539    <p>LinuxSampler will answer by returning the number for
6540                                   the current limit of maximum disk streams.
6541    </p>
6542    </blockquote><p>
6543                        
6544    </p>
6545    <p>The disk stream limit setting defines how many disk streams should
6546                           maximum be processed by a sampler engine at the same time. The
6547                           higher this value, the more memory (RAM) will be occupied, since
6548                           every disk streams allocates a certain buffer size for being able
6549                           to perform its streaming operations.
6550    </p>
6551    <a name="SET STREAMS"></a><br /><hr />
6552    <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>
6553    <a name="rfc.section.6.6.11"></a><h3>6.6.11.&nbsp;
6554    Setting global disk stream limit</h3>
6555    
6556    <p>The client can alter the current global sampler-wide limit
6557                        for maximum disk streams by sending the following command:
6558    </p>
6559    <p>
6560                            </p>
6561    <blockquote class="text">
6562    <p>SET STREAMS &lt;max-streams&gt;
6563    </p>
6564    </blockquote><p>
6565                        
6566    </p>
6567    <p>Where &lt;max-streams&gt; should be replaced by the integer
6568                       value, reflecting the new global amount limit of maximum disk streams.
6569                       This value has to be positive.
6570    </p>
6571    <p>Possible Answers:
6572    </p>
6573    <p>
6574                            </p>
6575    <blockquote class="text">
6576    <p>"OK" -
6577                                    </p>
6578    <blockquote class="text">
6579    <p>on success
6580    </p>
6581    </blockquote>
6582                                
6583    
6584    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6585                                    </p>
6586    <blockquote class="text">
6587    <p>if the disk stream limit was set, but there are noteworthy
6588                                        issue(s) related, providing an appropriate warning code and
6589                                        warning message
6590    </p>
6591    </blockquote>
6592                                
6593    
6594    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6595                                    </p>
6596    <blockquote class="text">
6597    <p>in case it failed, providing an appropriate error code and error message
6598    </p>
6599    </blockquote>
6600                                
6601    
6602    </blockquote><p>
6603                        
6604    </p>
6605    <p>Note: the given value will be passed to all sampler engine instances.
6606                           The total amount of maximum disk streams on the running system might
6607                           thus be as big as the given value multiplied by the current amount of
6608                           engine instances.
6609    </p>
6610    <p>Caution: when adjusting the disk stream limit, you SHOULD also
6611                            adjust the voice limit respectively and vice versa.
6612    </p>
6613    <a name="MIDI Instrument Mapping"></a><br /><hr />
6614    <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>
6615    <a name="rfc.section.6.7"></a><h3>6.7.&nbsp;
6616    MIDI Instrument Mapping</h3>
6617    
6618    <p>The MIDI protocol provides a way to switch between instruments
6619                    by sending so called MIDI bank select and MIDI program change
6620                    messages which are essentially just numbers. The following commands
6621                    allow to actually map arbitrary MIDI bank select / program change
6622                    numbers with real instruments.
6623    </p>
6624    <p>The sampler allows to manage an arbitrary amount of MIDI
6625                    instrument maps which define which instrument to load on
6626                    which MIDI program change message.
6627    </p>
6628    <p>By default, that is when the sampler is launched, there is no
6629                    map, thus the sampler will simply ignore all program change
6630                    messages. The front-end has to explicitly create at least one
6631                    map, add entries to the map and tell the respective sampler
6632                    channel(s) which MIDI instrument map to use, so the sampler
6633                    knows how to react on a given program change message on the
6634                    respective sampler channel, that is by switching to the
6635                    respectively defined engine type and loading the respective
6636                    instrument. See command
6637                    <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>
6638                    for how to assign a MIDI instrument map to a sampler channel.
6639    </p>
6640    <p>Also note per MIDI specification a bank select message does not
6641                    cause to switch to another instrument. Instead when receiving a
6642                    bank select message the bank value will be stored and a subsequent
6643                    program change message (which may occur at any time) will finally
6644                    cause the sampler to switch to the respective instrument as
6645                    reflected by the current MIDI instrument map.
6646    </p>
6647    <a name="ADD MIDI_INSTRUMENT_MAP"></a><br /><hr />
6648    <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>
6649    <a name="rfc.section.6.7.1"></a><h3>6.7.1.&nbsp;
6650    Create a new MIDI instrument map</h3>
6651    
6652    <p>The front-end can add a new MIDI instrument map by sending
6653                        the following command:
6654    </p>
6655    <p>
6656                            </p>
6657    <blockquote class="text">
6658    <p>ADD MIDI_INSTRUMENT_MAP [&lt;name&gt;]
6659    </p>
6660    </blockquote><p>
6661                        
6662    </p>
6663    <p>Where &lt;name&gt; is an optional argument allowing to
6664                        assign a custom name to the new map. MIDI instrument Map
6665                        names do not have to be unique, but MUST be encapsulated
6666                        into apostrophes and support escape sequences as described
6667                        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>".
6668                        
6669    </p>
6670    <p>Possible Answers:
6671    </p>
6672    <p>
6673                            </p>
6674    <blockquote class="text">
6675    <p>"OK[&lt;map&gt;]" -
6676                                    </p>
6677    <blockquote class="text">
6678    <p>in case a new MIDI instrument map could
6679                                        be added, where &lt;map&gt; reflects the
6680                                        unique ID of the newly created MIDI
6681                                        instrument map
6682    </p>
6683    </blockquote>
6684                                
6685    
6686    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6687                                    </p>
6688    <blockquote class="text">
6689    <p>when a new map could not be created, which
6690                                        might never occur in practice
6691    </p>
6692    </blockquote>
6693                                
6694    
6695    </blockquote><p>
6696                        
6697    </p>
6698    <p>Examples:
6699    </p>
6700    <p>
6701                            </p>
6702    <blockquote class="text">
6703    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Map'"
6704    </p>
6705    <p>S: "OK[0]"
6706    </p>
6707    </blockquote><p>
6708                        
6709    </p>
6710    <p>
6711                            </p>
6712    <blockquote class="text">
6713    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Drumkit'"
6714    </p>
6715    <p>S: "OK[1]"
6716    </p>
6717    </blockquote><p>
6718                        
6719    </p>
6720    <p>
6721                            </p>
6722    <blockquote class="text">
6723    <p>C: "ADD MIDI_INSTRUMENT_MAP"
6724    </p>
6725    <p>S: "OK[5]"
6726    </p>
6727    </blockquote><p>
6728                        
6729    </p>
6730    <a name="REMOVE MIDI_INSTRUMENT_MAP"></a><br /><hr />
6731    <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>
6732    <a name="rfc.section.6.7.2"></a><h3>6.7.2.&nbsp;
6733    Delete one particular or all MIDI instrument maps</h3>
6734    
6735    <p>The front-end can delete a particular MIDI instrument map
6736                        by sending the following command:
6737    </p>
6738    <p>
6739                            </p>
6740    <blockquote class="text">
6741    <p>REMOVE MIDI_INSTRUMENT_MAP &lt;map&gt;
6742    </p>
6743    </blockquote><p>
6744                        
6745    </p>
6746    <p>Where &lt;map&gt; reflects the unique ID of the map to delete
6747                        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>
6748                        command.
6749    </p>
6750    <p>The front-end can delete all MIDI instrument maps by
6751                        sending the following command:
6752    </p>
6753    <p>
6754                            </p>
6755    <blockquote class="text">
6756    <p>REMOVE MIDI_INSTRUMENT_MAP ALL
6757    </p>
6758    </blockquote><p>
6759                        
6760    </p>
6761    <p>Possible Answers:
6762    </p>
6763    <p>
6764                            </p>
6765    <blockquote class="text">
6766    <p>"OK" -
6767                                    </p>
6768    <blockquote class="text">
6769    <p>in case the map(s) could be deleted
6770    </p>
6771    </blockquote>
6772                                
6773    
6774    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6775                                    </p>
6776    <blockquote class="text">
6777    <p>when the given map does not exist
6778    </p>
6779    </blockquote>
6780                                
6781    
6782    </blockquote><p>
6783                        
6784    </p>
6785    <p>Examples:
6786    </p>
6787    <p>
6788                            </p>
6789    <blockquote class="text">
6790    <p>C: "REMOVE MIDI_INSTRUMENT_MAP 0"
6791    </p>
6792    <p>S: "OK"
6793    </p>
6794    </blockquote><p>
6795                        
6796    </p>
6797    <p>
6798                            </p>
6799    <blockquote class="text">
6800    <p>C: "REMOVE MIDI_INSTRUMENT_MAP ALL"
6801    </p>
6802    <p>S: "OK"
6803    </p>
6804    </blockquote><p>
6805                        
6806    </p>
6807    <a name="GET MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6808    <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>
6809    <a name="rfc.section.6.7.3"></a><h3>6.7.3.&nbsp;
6810    Get amount of existing MIDI instrument maps</h3>
6811    
6812    <p>The front-end can retrieve the current amount of MIDI
6813                        instrument maps by sending the following command:
6814    </p>
6815    <p>
6816                            </p>
6817    <blockquote class="text">
6818    <p>GET MIDI_INSTRUMENT_MAPS
6819    </p>
6820    </blockquote><p>
6821                        
6822    </p>
6823    <p>Possible Answers:
6824    </p>
6825    <p>
6826                            </p>
6827    <blockquote class="text">
6828    <p>The sampler will answer by returning the current
6829                                number of MIDI instrument maps.
6830    </p>
6831    </blockquote><p>
6832                        
6833    </p>
6834    <p>Example:
6835    </p>
6836    <p>
6837                            </p>
6838    <blockquote class="text">
6839    <p>C: "GET MIDI_INSTRUMENT_MAPS"
6840    </p>
6841    <p>S: "2"
6842    </p>
6843    </blockquote><p>
6844                        
6845    </p>
6846    <a name="LIST MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6847    <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>
6848    <a name="rfc.section.6.7.4"></a><h3>6.7.4.&nbsp;
6849    Getting all created MIDI instrument maps</h3>
6850    
6851    <p>The number of MIDI instrument maps can change on runtime. To get the
6852                        current list of MIDI instrument maps, the front-end can send the
6853                        following command:
6854    </p>
6855    <p>
6856                            </p>
6857    <blockquote class="text">
6858    <p>LIST MIDI_INSTRUMENT_MAPS
6859    </p>
6860    </blockquote><p>
6861                        
6862    </p>
6863    <p>Possible Answers:
6864    </p>
6865    <p>
6866                            </p>
6867    <blockquote class="text">
6868    <p>The sampler will answer by returning a comma separated list
6869                                with all MIDI instrument maps' numerical IDs.
6870    </p>
6871    </blockquote><p>
6872                        
6873    </p>
6874    <p>Example:
6875    </p>
6876    <p>
6877                            </p>
6878    <blockquote class="text">
6879    <p>C: "LIST MIDI_INSTRUMENT_MAPS"
6880    </p>
6881    <p>S: "0,1,5,12"
6882    </p>
6883    </blockquote><p>
6884                        
6885    </p>
6886    <a name="GET MIDI_INSTRUMENT_MAP INFO"></a><br /><hr />
6887    <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>
6888    <a name="rfc.section.6.7.5"></a><h3>6.7.5.&nbsp;
6889    Getting MIDI instrument map information</h3>
6890    
6891    <p>The front-end can ask for the current settings of a MIDI
6892                        instrument map by sending the following command:
6893    </p>
6894    <p>
6895                            </p>
6896    <blockquote class="text">
6897    <p>GET MIDI_INSTRUMENT_MAP INFO &lt;map&gt;
6898    </p>
6899    </blockquote><p>
6900                        
6901    </p>
6902    <p>Where &lt;map&gt; is the numerical ID of the map the
6903                        front-end is interested in as returned by the
6904                        <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>
6905                        command.
6906    </p>
6907    <p>Possible Answers:
6908    </p>
6909    <p>
6910                            </p>
6911    <blockquote class="text">
6912    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
6913                                Each answer line begins with the settings category name
6914                                followed by a colon and then a space character &lt;SP&gt; and finally
6915                                the info character string to that setting category. At the
6916                                moment the following categories are defined:
6917    </p>
6918    <p>
6919                                    </p>
6920    <blockquote class="text">
6921    <p>NAME -
6922                                            </p>
6923    <blockquote class="text">
6924    <p>custom name of the given map,
6925                                                which does not have to be unique
6926                                                (note that this character string may contain
6927                                                 <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
6928    </p>
6929    </blockquote>
6930                                        
6931    
6932    <p>DEFAULT -
6933                                            </p>
6934    <blockquote class="text">
6935    <p>either true or false,
6936                                                defines whether this map is the default map
6937    </p>
6938    </blockquote>
6939                                        
6940    
6941    </blockquote>
6942                                
6943    
6944    </blockquote><p>
6945                        
6946  </p>  </p>
6947  <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.
6948                      Other fields might be added in future.  </p>
6949    <p>Example:
6950    </p>
6951    <p>
6952                            </p>
6953    <blockquote class="text">
6954    <p>C: "GET MIDI_INSTRUMENT_MAP INFO 0"
6955    </p>
6956    <p>S: "NAME: Standard Map"
6957    </p>
6958    <p>&nbsp;&nbsp;&nbsp;"DEFAULT: true"
6959    </p>
6960    <p>&nbsp;&nbsp;&nbsp;"."
6961    </p>
6962    </blockquote><p>
6963                        
6964    </p>
6965    <a name="SET MIDI_INSTRUMENT_MAP NAME"></a><br /><hr />
6966    <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>
6967    <a name="rfc.section.6.7.6"></a><h3>6.7.6.&nbsp;
6968    Renaming a MIDI instrument map</h3>
6969    
6970    <p>The front-end can alter the custom name of a MIDI
6971                        instrument map by sending the following command:
6972    </p>
6973    <p>
6974                            </p>
6975    <blockquote class="text">
6976    <p>SET MIDI_INSTRUMENT_MAP NAME &lt;map&gt; &lt;name&gt;
6977    </p>
6978    </blockquote><p>
6979                        
6980    </p>
6981    <p>Where &lt;map&gt; is the numerical ID of the map and
6982                        &lt;name&gt; the new custom name of the map, which does not
6983                        have to be unique (name MUST be encapsulated into apostrophes
6984                        and supports escape sequences as described in chapter
6985                        "<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>").
6986                        
6987    </p>
6988    <p>Possible Answers:
6989    </p>
6990    <p>
6991                            </p>
6992    <blockquote class="text">
6993    <p>"OK" -
6994                                    </p>
6995    <blockquote class="text">
6996    <p>on success
6997    </p>
6998    </blockquote>
6999                                
7000    
7001    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7002                                    </p>
7003    <blockquote class="text">
7004    <p>in case the given map does not exist
7005    </p>
7006    </blockquote>
7007                                
7008    
7009    </blockquote><p>
7010                        
7011    </p>
7012    <p>Example:
7013    </p>
7014    <p>
7015                            </p>
7016    <blockquote class="text">
7017    <p>C: "SET MIDI_INSTRUMENT_MAP NAME 0 'Foo instruments'"
7018    </p>
7019    <p>S: "OK"
7020    </p>
7021    </blockquote><p>
7022                        
7023    </p>
7024    <a name="MAP MIDI_INSTRUMENT"></a><br /><hr />
7025    <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>
7026    <a name="rfc.section.6.7.7"></a><h3>6.7.7.&nbsp;
7027    Create or replace a MIDI instrument map entry</h3>
7028    
7029    <p>The front-end can create a new or replace an existing entry
7030                        in a sampler's MIDI instrument map by sending the following
7031                        command:
7032    </p>
7033    <p>
7034                            </p>
7035    <blockquote class="text">
7036    <p>MAP MIDI_INSTRUMENT [NON_MODAL] &lt;map&gt;
7037                                &lt;midi_bank&gt; &lt;midi_prog&gt; &lt;engine_name&gt;
7038                                &lt;filename&gt; &lt;instrument_index&gt; &lt;volume_value&gt;
7039                                [&lt;instr_load_mode&gt;] [&lt;name&gt;]
7040    </p>
7041    </blockquote><p>
7042                        
7043    </p>
7044    <p>Where &lt;map&gt; is the numeric ID of the map to alter,
7045                        &lt;midi_bank&gt; is an integer value between
7046                        0..16383 reflecting the MIDI bank select index,
7047                        &lt;midi_prog&gt; an
7048                        integer value between 0..127 reflecting the MIDI program change
7049                        index, &lt;engine_name&gt; a sampler engine name as returned by
7050                        the <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a>
7051                        command (not encapsulated into apostrophes), &lt;filename&gt; the name
7052                        of the instrument's file to be deployed (encapsulated into apostrophes,
7053                        supporting escape sequences as described in chapter
7054                        "<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>"),
7055                        &lt;instrument_index&gt; the index (integer value) of the instrument
7056                        within the given file, &lt;volume_value&gt; reflects the master
7057                        volume of the instrument as optionally dotted number (where a
7058                        value &lt; 1.0 means attenuation and a value > 1.0 means
7059                        amplification). This parameter easily allows to adjust the
7060                        volume of all intruments within a custom instrument map
7061                        without having to adjust their instrument files. The
7062                        OPTIONAL &lt;instr_load_mode&gt; argument defines the life
7063                        time of the instrument, that is when the instrument should
7064                        be loaded, when freed and has exactly the following
7065                        possibilities:
7066    </p>
7067    <p>
7068                            </p>
7069    <blockquote class="text">
7070    <p>"ON_DEMAND" -
7071                                    </p>
7072    <blockquote class="text">
7073    <p>The instrument will be loaded when needed,
7074                                        that is when demanded by at least one sampler
7075                                        channel. It will immediately be freed from memory
7076                                        when not needed by any sampler channel anymore.
7077    </p>
7078    </blockquote>
7079                                
7080    
7081    <p>"ON_DEMAND_HOLD" -
7082                                    </p>
7083    <blockquote class="text">
7084    <p>The instrument will be loaded when needed,
7085                                        that is when demanded by at least one sampler
7086                                        channel. It will be kept in memory even when
7087                                        not needed by any sampler channel anymore.
7088                                        Instruments with this mode are only freed
7089                                        when the sampler is reset or all mapping
7090                                        entries with this mode (and respective
7091                                        instrument) are explicitly changed to
7092                                        "ON_DEMAND" and no sampler channel is using
7093                                        the instrument anymore.
7094    </p>
7095    </blockquote>
7096                                
7097    
7098    <p>"PERSISTENT" -
7099                                    </p>
7100    <blockquote class="text">
7101    <p>The instrument will immediately be loaded
7102                                        into memory when this mapping
7103                                        command is sent and the instrument is kept all
7104                                        the time. Instruments with this mode are
7105                                        only freed when the sampler is reset or all
7106                                        mapping entries with this mode (and
7107                                        respective instrument) are explicitly
7108                                        changed to "ON_DEMAND" and no sampler
7109                                        channel is using the instrument anymore.
7110    </p>
7111    </blockquote>
7112                                
7113    
7114    <p>not supplied -
7115                                    </p>
7116    <blockquote class="text">
7117    <p>In case there is no &lt;instr_load_mode&gt;
7118                                        argument given, it will be up to the
7119                                        InstrumentManager to decide which mode to use.
7120                                        Usually it will use "ON_DEMAND" if an entry
7121                                        for the given instrument does not exist in
7122                                        the InstrumentManager's list yet, otherwise
7123                                        if an entry already exists, it will simply
7124                                        stick with the mode currently reflected by
7125                                        the already existing entry, that is it will
7126                                        not change the mode.
7127    </p>
7128    </blockquote>
7129                                
7130    
7131    </blockquote><p>
7132                        
7133    </p>
7134    <p>
7135                        The &lt;instr_load_mode&gt; argument thus allows to define an
7136                        appropriate strategy (low memory consumption vs. fast
7137                        instrument switching) for each instrument individually. Note, the
7138                        following restrictions apply to this argument: "ON_DEMAND_HOLD" and
7139                        "PERSISTENT" have to be supported by the respective sampler engine
7140                        (which is technically the case when the engine provides an
7141                        InstrumentManager for its format). If this is not the case the
7142                        argument will automatically fall back to the default value
7143                        "ON_DEMAND". Also the load mode of one instrument may
7144                        automatically change the laod mode of other instrument(s), i.e.
7145                        because the instruments are part of the same file and the
7146                        engine does not allow a way to manage load modes for them
7147                        individually. Due to this, in case the frontend shows the
7148                        load modes of entries, the frontend should retrieve the actual
7149                        mode by i.e. sending
7150                        <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>
7151                        command(s). Finally the OPTIONAL &lt;name&gt; argument allows to set a custom name
7152                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
7153                        "<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
7154                        mapping entry, useful for frontends for displaying an appropriate name for
7155                        mapped instruments (using
7156                        <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>).
7157                        
7158    </p>
7159    <p>
7160                        By default, "MAP MIDI_INSTRUMENT" commands block until the mapping is
7161                        completely established in the sampler. The OPTIONAL "NON_MODAL" argument
7162                        however causes the respective "MAP MIDI_INSTRUMENT" command to return
7163                        immediately, that is to let the sampler establish the mapping in the
7164                        background. So this argument might be especially useful for mappings with
7165                        a "PERSISTENT" type, because these have to load the respective instruments
7166                        immediately and might thus block for a very long time. It is recommended
7167                        however to use the OPTIONAL "NON_MODAL" argument only if really necessary,
7168                        because it has the following drawbacks: as "NON_MODAL" instructions return
7169                        immediately, they may not necessarily return an error i.e. when the given
7170                        instrument file turns out to be corrupt, beside that subsequent commands
7171                        in a LSCP instruction sequence might fail, because mandatory mappings are
7172                        not yet completed.
7173                        
7174    </p>
7175    <p>Possible Answers:
7176    </p>
7177    <p>
7178                            </p>
7179    <blockquote class="text">
7180    <p>"OK" -
7181                                    </p>
7182    <blockquote class="text">
7183    <p>usually
7184    </p>
7185    </blockquote>
7186                                
7187    
7188    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7189                                    </p>
7190    <blockquote class="text">
7191    <p>when the given map or engine does not exist or a value
7192                                        is out of range
7193    </p>
7194    </blockquote>
7195                                
7196    
7197    </blockquote><p>
7198                        
7199    </p>
7200    <p>Examples:
7201    </p>
7202    <p>
7203                            </p>
7204    <blockquote class="text">
7205    <p>C: "MAP MIDI_INSTRUMENT 0 3 0 gig '/usr/share/Steinway D.gig' 0 0.8 PERSISTENT"
7206    </p>
7207    <p>S: "OK"
7208    </p>
7209    </blockquote><p>
7210                        
7211    </p>
7212    <p>
7213                            </p>
7214    <blockquote class="text">
7215    <p>C: "MAP MIDI_INSTRUMENT 0 4 50 gig '/home/john/foostrings.gig' 7 1.0"
7216    </p>
7217    <p>S: "OK"
7218    </p>
7219    </blockquote><p>
7220                        
7221    </p>
7222    <p>
7223                            </p>
7224    <blockquote class="text">
7225    <p>C: "MAP MIDI_INSTRUMENT 0 0 0 gig '/usr/share/piano.gig' 0 1.0 'Normal Piano'"
7226    </p>
7227    <p>S: "OK"
7228    </p>
7229    <p>C: "MAP MIDI_INSTRUMENT 0 1 0 gig '/usr/share/piano.gig' 0 0.25 'Silent Piano'"
7230    </p>
7231    <p>S: "OK"
7232    </p>
7233    </blockquote><p>
7234                        
7235    </p>
7236    <p>
7237                            </p>
7238    <blockquote class="text">
7239    <p>C: "MAP MIDI_INSTRUMENT NON_MODAL 1 8 120 gig '/home/joe/foodrums.gig' 0 1.0 PERSISTENT 'Foo Drumkit'"
7240    </p>
7241    <p>S: "OK"
7242    </p>
7243    </blockquote><p>
7244                        
7245    </p>
7246    <a name="GET MIDI_INSTRUMENTS"></a><br /><hr />
7247    <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>
7248    <a name="rfc.section.6.7.8"></a><h3>6.7.8.&nbsp;
7249    Getting ammount of MIDI instrument map entries</h3>
7250    
7251    <p>The front-end can query the amount of currently existing
7252                        entries in a MIDI instrument map by sending the following
7253                        command:
7254    </p>
7255    <p>
7256                            </p>
7257    <blockquote class="text">
7258    <p>GET MIDI_INSTRUMENTS &lt;map&gt;
7259    </p>
7260    </blockquote><p>
7261                        
7262    </p>
7263    <p>The front-end can query the amount of currently existing
7264                        entries in all MIDI instrument maps by sending the following
7265                        command:
7266    </p>
7267    <p>
7268                            </p>
7269    <blockquote class="text">
7270    <p>GET MIDI_INSTRUMENTS ALL
7271    </p>
7272    </blockquote><p>
7273                        
7274    </p>
7275    <p>Possible Answers:
7276    </p>
7277    <p>
7278                            </p>
7279    <blockquote class="text">
7280    <p>The sampler will answer by sending the current number of
7281                                entries in the MIDI instrument map(s).
7282    </p>
7283    </blockquote><p>
7284                        
7285    </p>
7286    <p>Example:
7287    </p>
7288    <p>
7289                            </p>
7290    <blockquote class="text">
7291    <p>C: "GET MIDI_INSTRUMENTS 0"
7292    </p>
7293    <p>S: "234"
7294    </p>
7295    </blockquote><p>
7296                        
7297    </p>
7298    <p>
7299                            </p>
7300    <blockquote class="text">
7301    <p>C: "GET MIDI_INSTRUMENTS ALL"
7302    </p>
7303    <p>S: "954"
7304    </p>
7305    </blockquote><p>
7306                        
7307    </p>
7308    <a name="LIST MIDI_INSTRUMENTS"></a><br /><hr />
7309    <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>
7310    <a name="rfc.section.6.7.9"></a><h3>6.7.9.&nbsp;
7311    Getting indeces of all entries of a MIDI instrument map</h3>
7312    
7313    <p>The front-end can query a list of all currently existing
7314                        entries in a certain MIDI instrument map by sending the following
7315                        command:
7316    </p>
7317    <p>
7318                            </p>
7319    <blockquote class="text">
7320    <p>LIST MIDI_INSTRUMENTS &lt;map&gt;
7321    </p>
7322    </blockquote><p>
7323                        
7324    </p>
7325    <p>Where &lt;map&gt; is the numeric ID of the MIDI instrument map.
7326    </p>
7327    <p>The front-end can query a list of all currently existing
7328                        entries of all MIDI instrument maps by sending the following
7329                        command:
7330    </p>
7331    <p>
7332                            </p>
7333    <blockquote class="text">
7334    <p>LIST MIDI_INSTRUMENTS ALL
7335    </p>
7336    </blockquote><p>
7337                        
7338    </p>
7339    <p>Possible Answers:
7340    </p>
7341    <p>
7342                            </p>
7343    <blockquote class="text">
7344    <p>The sampler will answer by sending a comma separated
7345                                list of map ID - MIDI bank - MIDI program triples, where
7346                                each triple is encapsulated into curly braces. The
7347                                list is returned in one single line. Each triple
7348                                just reflects the key of the respective map entry,
7349                                thus subsequent
7350                                <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>
7351                                command(s) are necessary to retrieve detailed informations
7352                                about each entry.
7353    </p>
7354    </blockquote><p>
7355                        
7356    </p>
7357    <p>Example:
7358    </p>
7359    <p>
7360                            </p>
7361    <blockquote class="text">
7362    <p>C: "LIST MIDI_INSTRUMENTS 0"
7363    </p>
7364    <p>S: "{0,0,0},{0,0,1},{0,0,3},{0,1,4},{1,127,127}"
7365    </p>
7366    </blockquote><p>
7367                        
7368    </p>
7369    <a name="UNMAP MIDI_INSTRUMENT"></a><br /><hr />
7370    <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>
7371    <a name="rfc.section.6.7.10"></a><h3>6.7.10.&nbsp;
7372    Remove an entry from the MIDI instrument map</h3>
7373    
7374    <p>The front-end can delete an entry from a MIDI instrument
7375                        map by sending the following command:
7376    </p>
7377    <p>
7378                            </p>
7379    <blockquote class="text">
7380    <p>UNMAP MIDI_INSTRUMENT &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
7381    </p>
7382    </blockquote><p>
7383                        
7384    </p>
7385    <p>
7386                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
7387                        &lt;midi_bank&gt; is an integer value between 0..16383
7388                        reflecting the MIDI bank value and
7389                        &lt;midi_prog&gt; an integer value between
7390                        0..127 reflecting the MIDI program value of the map's entrie's key
7391                        index triple.
7392                        
7393    </p>
7394    <p>Possible Answers:
7395    </p>
7396    <p>
7397                            </p>
7398    <blockquote class="text">
7399    <p>"OK" -
7400                                    </p>
7401    <blockquote class="text">
7402    <p>usually
7403    </p>
7404    </blockquote>
7405                                
7406    
7407    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7408                                    </p>
7409    <blockquote class="text">
7410    <p>when index out of bounds
7411    </p>
7412    </blockquote>
7413                                
7414    
7415    </blockquote><p>
7416                        
7417    </p>
7418    <p>Example:
7419    </p>
7420    <p>
7421                            </p>
7422    <blockquote class="text">
7423    <p>C: "UNMAP MIDI_INSTRUMENT 0 2 127"
7424    </p>
7425    <p>S: "OK"
7426    </p>
7427    </blockquote><p>
7428                        
7429    </p>
7430    <a name="GET MIDI_INSTRUMENT INFO"></a><br /><hr />
7431    <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>
7432    <a name="rfc.section.6.7.11"></a><h3>6.7.11.&nbsp;
7433    Get current settings of MIDI instrument map entry</h3>
7434    
7435    <p>The front-end can retrieve the current settings of a certain
7436                        instrument map entry by sending the following command:
7437    </p>
7438    <p>
7439                            </p>
7440    <blockquote class="text">
7441    <p>GET MIDI_INSTRUMENT INFO &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
7442    </p>
7443    </blockquote><p>
7444                        
7445    </p>
7446    <p>
7447                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
7448                        &lt;midi_bank&gt; is an integer value between 0..16383
7449                        reflecting the MIDI bank value, &lt;midi_bank&gt;
7450                        and &lt;midi_prog&gt; an integer value between
7451                        0..127 reflecting the MIDI program value of the map's entrie's key
7452                        index triple.
7453                        
7454    </p>
7455    <p>Possible Answers:
7456    </p>
7457    <p>
7458                            </p>
7459    <blockquote class="text">
7460    <p>LinuxSampler will answer by sending a &lt;CRLF&gt;
7461                                separated list. Each answer line begins with the
7462                                information category name followed by a colon and then
7463                                a space character &lt;SP&gt; and finally the info
7464                                character string to that info category. At the moment
7465                                the following categories are defined:
7466    </p>
7467    <p>"NAME" -
7468                                    </p>
7469    <blockquote class="text">
7470    <p>Name for this MIDI instrument map entry (if defined).
7471                                        This name shall be used by frontends for displaying a
7472                                        name for this mapped instrument. It can be set and
7473                                        changed with the
7474                                        <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>
7475                                        command and does not have to be unique.
7476                                        (note that this character string may contain
7477                                        <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
7478    </p>
7479    </blockquote>
7480                                
7481    
7482    <p>"ENGINE_NAME" -
7483                                    </p>
7484    <blockquote class="text">
7485    <p>Name of the engine to be deployed for this
7486                                        instrument.
7487    </p>
7488    </blockquote>
7489                                
7490    
7491    <p>"INSTRUMENT_FILE" -
7492                                    </p>
7493    <blockquote class="text">
7494    <p>File name of the instrument
7495                                        (note that this path may contain
7496                                        <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>).
7497    </p>
7498    </blockquote>
7499                                
7500    
7501    <p>"INSTRUMENT_NR" -
7502                                    </p>
7503    <blockquote class="text">
7504    <p>Index of the instrument within the file.
7505    </p>
7506    </blockquote>
7507                                
7508    
7509    <p>"INSTRUMENT_NAME" -
7510                                    </p>
7511    <blockquote class="text">
7512    <p>Name of the loaded instrument as reflected by its file.
7513                                        In contrast to the "NAME" field, the "INSTRUMENT_NAME" field
7514                                        cannot be changed (note that this character string may contain
7515                                        <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>).
7516    </p>
7517    </blockquote>
7518                                
7519    
7520    <p>"LOAD_MODE" -
7521                                    </p>
7522    <blockquote class="text">
7523    <p>Life time of instrument
7524                                        (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).
7525    </p>
7526    </blockquote>
7527                                
7528    
7529    <p>"VOLUME" -
7530                                    </p>
7531    <blockquote class="text">
7532    <p>master volume of the instrument as optionally
7533                                        dotted number (where a value &lt; 1.0 means attenuation
7534                                        and a value > 1.0 means amplification)
7535    </p>
7536    </blockquote>
7537                                
7538    
7539    <p>The mentioned fields above don't have to be in particular order.
7540    </p>
7541    </blockquote><p>
7542                        
7543    </p>
7544    <p>Example:
7545    </p>
7546    <p>
7547                            </p>
7548    <blockquote class="text">
7549    <p>C: "GET MIDI_INSTRUMENT INFO 1 45 120"
7550    </p>
7551    <p>S: "NAME: Drums for Foo Song"
7552    </p>
7553    <p>&nbsp;&nbsp;&nbsp;"ENGINE_NAME: GigEngine"
7554    </p>
7555    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_FILE: /usr/share/joesdrumkit.gig"
7556    </p>
7557    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NR: 0"
7558    </p>
7559    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NAME: Joe's Drumkit"
7560    </p>
7561    <p>&nbsp;&nbsp;&nbsp;"LOAD_MODE: PERSISTENT"
7562    </p>
7563    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
7564    </p>
7565    <p>&nbsp;&nbsp;&nbsp;"."
7566    </p>
7567    </blockquote><p>
7568                        
7569    </p>
7570    <a name="CLEAR MIDI_INSTRUMENTS"></a><br /><hr />
7571    <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>
7572    <a name="rfc.section.6.7.12"></a><h3>6.7.12.&nbsp;
7573    Clear MIDI instrument map</h3>
7574    
7575    <p>The front-end can clear a whole MIDI instrument map, that
7576                        is delete all its entries by sending the following command:
7577    </p>
7578    <p>
7579                            </p>
7580    <blockquote class="text">
7581    <p>CLEAR MIDI_INSTRUMENTS &lt;map&gt;
7582    </p>
7583    </blockquote><p>
7584                        
7585    </p>
7586    <p>Where &lt;map&gt; is the numeric ID of the map to clear.
7587    </p>
7588    <p>The front-end can clear all MIDI instrument maps, that
7589                        is delete all entries of all maps by sending the following
7590                        command:
7591    </p>
7592    <p>
7593                            </p>
7594    <blockquote class="text">
7595    <p>CLEAR MIDI_INSTRUMENTS ALL
7596    </p>
7597    </blockquote><p>
7598                        
7599    </p>
7600    <p>The command "CLEAR MIDI_INSTRUMENTS ALL" does not delete the
7601                        maps, only their entries, thus the map's settings like
7602                        custom name will be preservevd.
7603    </p>
7604    <p>Possible Answers:
7605    </p>
7606    <p>
7607                            </p>
7608    <blockquote class="text">
7609    <p>"OK" -
7610                                    </p>
7611    <blockquote class="text">
7612    <p>always
7613    </p>
7614    </blockquote>
7615                                
7616    
7617    </blockquote><p>
7618                        
7619    </p>
7620    <p>Examples:
7621    </p>
7622    <p>
7623                           </p>
7624    <blockquote class="text">
7625    <p>C: "CLEAR MIDI_INSTRUMENTS 0"
7626    </p>
7627    <p>S: "OK"
7628    </p>
7629    </blockquote><p>
7630                        
7631    </p>
7632    <p>
7633                           </p>
7634    <blockquote class="text">
7635    <p>C: "CLEAR MIDI_INSTRUMENTS ALL"
7636    </p>
7637    <p>S: "OK"
7638    </p>
7639    </blockquote><p>
7640                        
7641    </p>
7642    <a name="Managing Instruments Database"></a><br /><hr />
7643    <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>
7644    <a name="rfc.section.6.8"></a><h3>6.8.&nbsp;
7645    Managing Instruments Database</h3>
7646    
7647    <p>The following commands describe how to use and manage
7648                    the instruments database.
7649    </p>
7650    <p>Notice:
7651    </p>
7652    <p>
7653                            </p>
7654    <blockquote class="text">
7655    <p>All command arguments representing a path or
7656                                instrument/directory name support escape sequences as described in chapter
7657                                "<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>".
7658                                
7659    </p>
7660    <p>All occurrences of a forward slash in instrument and directory
7661                                   names are escaped with its hex (\x2f) or octal (\057) escape sequence.
7662                                
7663    </p>
7664    </blockquote><p>
7665                        
7666    </p>
7667    <a name="ADD DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
7668    <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>
7669    <a name="rfc.section.6.8.1"></a><h3>6.8.1.&nbsp;
7670    Creating a new instrument directory</h3>
7671    
7672    <p>The front-end can add a new instrument directory to the
7673                        instruments database by sending the following command:
7674    </p>
7675    <p>
7676                            </p>
7677    <blockquote class="text">
7678    <p>ADD DB_INSTRUMENT_DIRECTORY &lt;dir&gt;
7679    </p>
7680    </blockquote><p>
7681                        
7682    </p>
7683    <p>Where &lt;dir&gt; is the absolute path name of the directory
7684                        to be created (encapsulated into apostrophes).
7685    </p>
7686    <p>Possible Answers:
7687    </p>
7688    <p>
7689                            </p>
7690    <blockquote class="text">
7691    <p>"OK" -
7692                                    </p>
7693    <blockquote class="text">
7694    <p>on success
7695    </p>
7696    </blockquote>
7697                                
7698    
7699    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7700                                    </p>
7701    <blockquote class="text">
7702    <p>when the directory could not be created, which
7703                                        can happen if the directory already exists or the
7704                                        name contains not allowed symbols
7705    </p>
7706    </blockquote>
7707                                
7708    
7709    </blockquote><p>
7710                        
7711    </p>
7712    <p>Examples:
7713    </p>
7714    <p>
7715                            </p>
7716    <blockquote class="text">
7717    <p>C: "ADD DB_INSTRUMENT_DIRECTORY '/Piano Collection'"
7718    </p>
7719    <p>S: "OK"
7720    </p>
7721    </blockquote><p>
7722                        
7723    </p>
7724    <a name="REMOVE DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
7725    <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>
7726    <a name="rfc.section.6.8.2"></a><h3>6.8.2.&nbsp;
7727    Deleting an instrument directory</h3>
7728    
7729    <p>The front-end can delete a particular instrument directory
7730                        from the instruments database by sending the following command:
7731    </p>
7732    <p>
7733                            </p>
7734    <blockquote class="text">
7735    <p>REMOVE DB_INSTRUMENT_DIRECTORY [FORCE] &lt;dir&gt;
7736    </p>
7737    </blockquote><p>
7738                        
7739    </p>
7740    <p>Where &lt;dir&gt; is the absolute path name of the directory
7741                        to delete. The optional FORCE argument can be used to
7742                        force the deletion of a non-empty directory and all its content.
7743    </p>
7744    <p>Possible Answers:
7745    </p>
7746    <p>
7747                            </p>
7748    <blockquote class="text">
7749    <p>"OK" -
7750                                    </p>
7751    <blockquote class="text">
7752    <p>if the directory is deleted successfully
7753    </p>
7754    </blockquote>
7755                                
7756    
7757    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7758                                    </p>
7759    <blockquote class="text">
7760    <p>if the given directory does not exist, or
7761                                        if trying to delete a non-empty directory,
7762                                        without using the FORCE argument.
7763    </p>
7764    </blockquote>
7765                                
7766    
7767    </blockquote><p>
7768                        
7769    </p>
7770    <p>Examples:
7771    </p>
7772    <p>
7773                            </p>
7774    <blockquote class="text">
7775    <p>C: "REMOVE DB_INSTRUMENT_DIRECTORY FORCE '/Piano Collection'"
7776    </p>
7777    <p>S: "OK"
7778    </p>
7779    </blockquote><p>
7780                        
7781    </p>
7782    <a name="GET DB_INSTRUMENT_DIRECTORIES"></a><br /><hr />
7783    <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>
7784    <a name="rfc.section.6.8.3"></a><h3>6.8.3.&nbsp;
7785    Getting amount of instrument directories</h3>
7786    
7787    <p>The front-end can retrieve the current amount of
7788                        directories in a specific directory by sending the following command:
7789    </p>
7790    <p>
7791                            </p>
7792    <blockquote class="text">
7793    <p>GET DB_INSTRUMENT_DIRECTORIES [RECURSIVE] &lt;dir&gt;
7794    </p>
7795    </blockquote><p>
7796                        
7797    </p>
7798    <p>Where &lt;dir&gt; should be replaced by the absolute path
7799                        name of the directory. If RECURSIVE is specified, the number of
7800                        all directories, including those located in subdirectories of the
7801                        specified directory, will be returned.
7802    </p>
7803    <p>Possible Answers:
7804    </p>
7805    <p>
7806                            </p>
7807    <blockquote class="text">
7808    <p>The current number of instrument directories
7809                                in the specified directory.
7810    </p>
7811    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7812                                    </p>
7813    <blockquote class="text">
7814    <p>if the given directory does not exist.
7815    </p>
7816    </blockquote>
7817                                
7818    
7819    </blockquote><p>
7820                        
7821    </p>
7822    <p>Example:
7823    </p>
7824    <p>
7825                            </p>
7826    <blockquote class="text">
7827    <p>C: "GET DB_INSTRUMENT_DIRECTORIES '/'"
7828    </p>
7829    <p>S: "2"
7830    </p>
7831    </blockquote><p>
7832                        
7833    </p>
7834    <a name="LIST DB_INSTRUMENT_DIRECTORIES"></a><br /><hr />
7835    <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>
7836    <a name="rfc.section.6.8.4"></a><h3>6.8.4.&nbsp;
7837    Listing all directories in specific directory</h3>
7838    
7839    <p>The front-end can retrieve the current list of directories
7840                        in specific directory by sending the following command:
7841    </p>
7842    <p>
7843                            </p>
7844    <blockquote class="text">
7845    <p>LIST DB_INSTRUMENT_DIRECTORIES [RECURSIVE] &lt;dir&gt;
7846    </p>
7847    </blockquote><p>
7848                        
7849    </p>
7850    <p>Where &lt;dir&gt; should be replaced by the absolute path
7851                        name of the directory. If RECURSIVE is specified, the absolute path names
7852                        of all directories, including those located in subdirectories of the
7853                        specified directory, will be returned.
7854    </p>
7855    <p>Possible Answers:
7856    </p>
7857    <p>
7858                            </p>
7859    <blockquote class="text">
7860    <p>A comma separated list of all instrument directories
7861                                (encapsulated into apostrophes) in the specified directory.
7862    </p>
7863    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
7864                                    </p>
7865    <blockquote class="text">
7866    <p>if the given directory does not exist.
7867    </p>
7868    </blockquote>
7869                                
7870    
7871    </blockquote><p>
7872                        
7873    </p>
7874    <p>Example:
7875    </p>
7876    <p>
7877                            </p>
7878    <blockquote class="text">
7879    <p>C: "LIST DB_INSTRUMENT_DIRECTORIES '/'"
7880    </p>
7881    <p>S: "'Piano Collection','Percussion Collection'"
7882    </p>
7883    </blockquote><p>
7884                        
7885    </p>
7886    <p>
7887                            </p>
7888    <blockquote class="text">
7889    <p>C: "LIST DB_INSTRUMENT_DIRECTORIES RECURSIVE '/'"
7890    </p>
7891    <p>S: "'/Piano Collection','/Piano Collection/Acoustic','/Piano Collection/Acoustic/New','/Percussion Collection'"
7892    </p>
7893    </blockquote><p>
7894                        
7895    </p>
7896    <a name="GET DB_INSTRUMENT_DIRECTORY INFO"></a><br /><hr />
7897    <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>
7898    <a name="rfc.section.6.8.5"></a><h3>6.8.5.&nbsp;
7899    Getting instrument directory information</h3>
7900    
7901    <p>The front-end can ask for the current settings of an
7902                        instrument directory by sending the following command:
7903    </p>
7904    <p>
7905                            </p>
7906    <blockquote class="text">
7907    <p>GET DB_INSTRUMENT_DIRECTORY INFO &lt;dir&gt;
7908    </p>
7909    </blockquote><p>
7910                        
7911    </p>
7912    <p>Where &lt;dir&gt; should be replaced by the absolute path
7913                        name of the directory the front-end is interested in.
7914    </p>
7915    <p>Possible Answers:
7916    </p>
7917    <p>
7918                            </p>
7919    <blockquote class="text">
7920    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
7921                                Each answer line begins with the settings category name
7922                                followed by a colon and then a space character &lt;SP&gt; and finally
7923                                the info character string to that setting category. At the
7924                                moment the following categories are defined:
7925    </p>
7926    <p>
7927                                    </p>
7928    <blockquote class="text">
7929    <p>DESCRIPTION -
7930                                            </p>
7931    <blockquote class="text">
7932    <p>A brief description of the directory content.
7933                                                Note that the character string may contain
7934                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
7935    </p>
7936    </blockquote>
7937                                        
7938    
7939    <p>CREATED -
7940                                            </p>
7941    <blockquote class="text">
7942    <p>The creation date and time of the directory,
7943                                                represented in "YYYY-MM-DD HH:MM:SS" format
7944    </p>
7945    </blockquote>
7946                                        
7947    
7948    <p>MODIFIED -
7949                                            </p>
7950    <blockquote class="text">
7951    <p>The date and time of the last modification of the
7952                                                directory, represented in "YYYY-MM-DD HH:MM:SS" format
7953    </p>
7954    </blockquote>
7955                                        
7956    
7957    </blockquote>
7958                                
7959    
7960    </blockquote><p>
7961                        
7962    </p>
7963    <p>The mentioned fields above don't have to be in particular order.
7964    </p>
7965    <p>Example:
7966    </p>
7967    <p>
7968                            </p>
7969    <blockquote class="text">
7970    <p>C: "GET DB_INSTRUMENT_DIRECTORY INFO '/Piano Collection'"
7971    </p>
7972    <p>S: "DESCRIPTION: Piano collection of instruments in GigaSampler format."
7973    </p>
7974    <p>&nbsp;&nbsp;&nbsp;"CREATED: 2007-02-05 10:23:12"
7975    </p>
7976    <p>&nbsp;&nbsp;&nbsp;"MODIFIED: 2007-04-07 12:50:21"
7977    </p>
7978    <p>&nbsp;&nbsp;&nbsp;"."
7979    </p>
7980    </blockquote><p>
7981                        
7982    </p>
7983    <a name="SET DB_INSTRUMENT_DIRECTORY NAME"></a><br /><hr />
7984    <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>
7985    <a name="rfc.section.6.8.6"></a><h3>6.8.6.&nbsp;
7986    Renaming an instrument directory</h3>
7987    
7988    <p>The front-end can alter the name of a specific
7989                        instrument directory by sending the following command:
7990    </p>
7991    <p>
7992                            </p>
7993    <blockquote class="text">
7994    <p>SET DB_INSTRUMENT_DIRECTORY NAME &lt;dir&gt; &lt;name&gt;
7995    </p>
7996    </blockquote><p>
7997                        
7998    </p>
7999    <p>Where &lt;dir&gt; is the absolute path name of the directory and
8000                        &lt;name&gt; is the new name for that directory.
8001    </p>
8002    <p>Possible Answers:
8003    </p>
8004    <p>
8005                            </p>
8006    <blockquote class="text">
8007    <p>"OK" -
8008                                    </p>
8009    <blockquote class="text">
8010    <p>on success
8011    </p>
8012    </blockquote>
8013                                
8014    
8015    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8016                                    </p>
8017    <blockquote class="text">
8018    <p>in case the given directory does not exists,
8019                                        or if a directory with name equal to the new
8020                                        name already exists.
8021    </p>
8022    </blockquote>
8023                                
8024    
8025    </blockquote><p>
8026                        
8027    </p>
8028    <p>Example:
8029    </p>
8030    <p>
8031                            </p>
8032    <blockquote class="text">
8033    <p>C: "SET DB_INSTRUMENT_DIRECTORY NAME '/Piano Collection/Acustic' 'Acoustic'"
8034    </p>
8035    <p>S: "OK"
8036    </p>
8037    </blockquote><p>
8038                        
8039    </p>
8040    <a name="MOVE DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
8041    <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>
8042    <a name="rfc.section.6.8.7"></a><h3>6.8.7.&nbsp;
8043    Moving an instrument directory</h3>
8044    
8045    <p>The front-end can move a specific
8046                        instrument directory by sending the following command:
8047    </p>
8048    <p>
8049                            </p>
8050    <blockquote class="text">
8051    <p>MOVE DB_INSTRUMENT_DIRECTORY &lt;dir&gt; &lt;dst&gt;
8052    </p>
8053    </blockquote><p>
8054                        
8055    </p>
8056    <p>Where &lt;dir&gt; is the absolute path name of the directory
8057                        to move and &lt;dst&gt; is the location where the directory will
8058                        be moved to.
8059    </p>
8060    <p>Possible Answers:
8061    </p>
8062    <p>
8063                            </p>
8064    <blockquote class="text">
8065    <p>"OK" -
8066                                    </p>
8067    <blockquote class="text">
8068    <p>on success
8069    </p>
8070    </blockquote>
8071                                
8072    
8073    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8074                                    </p>
8075    <blockquote class="text">
8076    <p>in case a given directory does not exists,
8077                                        or if a directory with name equal to the name
8078                                        of the specified directory already exists in
8079                                        the destination directory. Error is also thrown
8080                                        when trying to move a directory to a subdirectory
8081                                        of itself.
8082    </p>
8083    </blockquote>
8084                                
8085    
8086    </blockquote><p>
8087                        
8088    </p>
8089    <p>Example:
8090    </p>
8091    <p>
8092                            </p>
8093    <blockquote class="text">
8094    <p>C: "MOVE DB_INSTRUMENT_DIRECTORY '/Acoustic' '/Piano Collection/Acoustic'"
8095    </p>
8096    <p>S: "OK"
8097    </p>
8098    </blockquote><p>
8099                        
8100    </p>
8101    <a name="COPY DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
8102    <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>
8103    <a name="rfc.section.6.8.8"></a><h3>6.8.8.&nbsp;
8104    Copying instrument directories</h3>
8105    
8106    <p>The front-end can copy a specific
8107                        instrument directory by sending the following command:
8108    </p>
8109    <p>
8110                            </p>
8111    <blockquote class="text">
8112    <p>COPY DB_INSTRUMENT_DIRECTORY &lt;dir&gt; &lt;dst&gt;
8113    </p>
8114    </blockquote><p>
8115                        
8116    </p>
8117    <p>Where &lt;dir&gt; is the absolute path name of the directory
8118                        to copy and &lt;dst&gt; is the location where the directory will
8119                        be copied to.
8120    </p>
8121    <p>Possible Answers:
8122    </p>
8123    <p>
8124                            </p>
8125    <blockquote class="text">
8126    <p>"OK" -
8127                                    </p>
8128    <blockquote class="text">
8129    <p>on success
8130    </p>
8131    </blockquote>
8132                                
8133    
8134    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8135                                    </p>
8136    <blockquote class="text">
8137    <p>in case a given directory does not exists,
8138                                        or if a directory with name equal to the name
8139                                        of the specified directory already exists in
8140                                        the destination directory. Error is also thrown
8141                                        when trying to copy a directory to a subdirectory
8142                                        of itself.
8143    </p>
8144    </blockquote>
8145                                
8146    
8147    </blockquote><p>
8148                        
8149    </p>
8150    <p>Example:
8151    </p>
8152    <p>
8153                            </p>
8154    <blockquote class="text">
8155    <p>C: "COPY DB_INSTRUMENT_DIRECTORY '/Piano Collection/Acoustic' '/Acoustic/Pianos'"
8156    </p>
8157    <p>S: "OK"
8158    </p>
8159    </blockquote><p>
8160                        
8161    </p>
8162    <a name="SET DB_INSTRUMENT_DIRECTORY DESCRIPTION"></a><br /><hr />
8163    <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>
8164    <a name="rfc.section.6.8.9"></a><h3>6.8.9.&nbsp;
8165    Changing the description of directory</h3>
8166    
8167    <p>The front-end can alter the description of a specific
8168                        instrument directory by sending the following command:
8169    </p>
8170    <p>
8171                            </p>
8172    <blockquote class="text">
8173    <p>SET DB_INSTRUMENT_DIRECTORY DESCRIPTION &lt;dir&gt; &lt;desc&gt;
8174    </p>
8175    </blockquote><p>
8176                        
8177    </p>
8178    <p>Where &lt;dir&gt; is the absolute path name of the directory and
8179                        &lt;desc&gt; is the new description for the directory
8180                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
8181                        "<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>").
8182    </p>
8183    <p>Possible Answers:
8184    </p>
8185    <p>
8186                            </p>
8187    <blockquote class="text">
8188    <p>"OK" -
8189                                    </p>
8190    <blockquote class="text">
8191    <p>on success
8192    </p>
8193    </blockquote>
8194                                
8195    
8196    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8197                                    </p>
8198    <blockquote class="text">
8199    <p>in case the given directory does not exists.
8200    </p>
8201    </blockquote>
8202                                
8203    
8204    </blockquote><p>
8205                        
8206    </p>
8207    <p>Example:
8208    </p>
8209    <p>
8210                            </p>
8211    <blockquote class="text">
8212    <p>C: "SET DB_INSTRUMENT_DIRECTORY DESCRIPTION '/Piano Collection' 'A collection of piano instruments in various format.'"
8213    </p>
8214    <p>S: "OK"
8215    </p>
8216    </blockquote><p>
8217                        
8218    </p>
8219    <a name="FIND DB_INSTRUMENT_DIRECTORIES"></a><br /><hr />
8220    <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>
8221    <a name="rfc.section.6.8.10"></a><h3>6.8.10.&nbsp;
8222    Finding directories</h3>
8223    
8224    <p>The front-end can search for directories
8225                        in specific directory by sending the following command:
8226    </p>
8227    <p>
8228                            </p>
8229    <blockquote class="text">
8230    <p>FIND DB_INSTRUMENT_DIRECTORIES [NON_RECURSIVE] &lt;dir&gt; &lt;criteria-list&gt;
8231    </p>
8232    </blockquote><p>
8233                        
8234    </p>
8235    <p>Where &lt;dir&gt; should be replaced by the absolute path
8236                        name of the directory to search in. If NON_RECURSIVE is specified, the
8237                        directories located in subdirectories of the specified directory will not
8238                        be searched. &lt;criteria-list&gt; is a list of search criterias
8239                        in form of "key1=val1 key2=val2 ...". The following criterias are
8240                        allowed:
8241    </p>
8242    <p>
8243                          
8244    <p>NAME='&lt;search-string&gt;'
8245                              </p>
8246    <blockquote class="text">
8247    <p>Restricts the search to directories, which names
8248                                  satisfy the supplied search string (encapsulated into apostrophes,
8249                                  supporting escape sequences as described in chapter
8250                                  "<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>").
8251    </p>
8252    </blockquote><p>
8253                          
8254    </p>
8255    
8256                          
8257    <p>CREATED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
8258                              </p>
8259    <blockquote class="text">
8260    <p>Restricts the search to directories, which creation
8261                                  date satisfies the specified period, where &lt;date-after&gt;
8262                                  and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS" format.
8263                                  If &lt;date-after&gt; is omitted the search is restricted to
8264                                  directories created before &lt;date-before&gt;. If
8265                                  &lt;date-before&gt; is omitted, the search is restricted
8266                                  to directories created after &lt;date-after&gt;.
8267    </p>
8268    </blockquote><p>
8269                          
8270    </p>
8271    
8272                          
8273    <p>MODIFIED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
8274                              </p>
8275    <blockquote class="text">
8276    <p>Restricts the search to directories, which
8277                                  date of last modification satisfies the specified period, where
8278                                  &lt;date-after&gt; and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS"
8279                                  format. If &lt;date-after&gt; is omitted the search is restricted to
8280                                  directories, which are last modified before &lt;date-before&gt;. If
8281                                  &lt;date-before&gt; is omitted, the search is restricted to directories,
8282                                  which are last modified after &lt;date-after&gt;.
8283    </p>
8284    </blockquote><p>
8285                          
8286    </p>
8287    
8288                          
8289    <p>DESCRIPTION='&lt;search-string&gt;'
8290                              </p>
8291    <blockquote class="text">
8292    <p>Restricts the search to directories with description
8293                                  that satisfies the supplied search string
8294                                  (encapsulated into apostrophes, supporting escape
8295                                  sequences as described in chapter
8296                                  "<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>").
8297    </p>
8298    </blockquote><p>
8299                          
8300    </p>
8301                        
8302    
8303    <p>Where &lt;search-string&gt; is either a regular expression, or a
8304                        word list separated with spaces for OR search and with '+' for AND search.
8305    </p>
8306    <p>Possible Answers:
8307    </p>
8308    <p>
8309                            </p>
8310    <blockquote class="text">
8311    <p>A comma separated list with the absolute path names (encapsulated into
8312                                apostrophes) of all directories in the specified directory that satisfy
8313                                the supplied search criterias.
8314    </p>
8315    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8316                                    </p>
8317    <blockquote class="text">
8318    <p>if the given directory does not exist.
8319    </p>
8320    </blockquote>
8321                                
8322    
8323    </blockquote><p>
8324                        
8325    </p>
8326    <p>Example:
8327    </p>
8328    <p>
8329                            </p>
8330    <blockquote class="text">
8331    <p>C: "FIND DB_INSTRUMENT_DIRECTORIES '/' NAME='Piano'"
8332    </p>
8333    <p>S: "'/Piano Collection'"
8334    </p>
8335    </blockquote><p>
8336                        
8337    </p>
8338    <p>
8339                            </p>
8340    <blockquote class="text">
8341    <p>C: "FIND DB_INSTRUMENT_DIRECTORIES '/' CREATED='..2007-04-01 09:30:13'"
8342    </p>
8343    <p>S: "'/Piano Collection','/Percussions'"
8344    </p>
8345    </blockquote><p>
8346                        
8347    </p>
8348    <a name="ADD DB_INSTRUMENTS"></a><br /><hr />
8349    <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>
8350    <a name="rfc.section.6.8.11"></a><h3>6.8.11.&nbsp;
8351    Adding instruments to the instruments database</h3>
8352    
8353    <p>The front-end can add one or more instruments
8354                        to the instruments database by sending the following command:
8355    </p>
8356    <p>
8357                            </p>
8358    <blockquote class="text">
8359    <p>ADD DB_INSTRUMENTS [NON_MODAL] [&lt;mode&gt;[ FILE_AS_DIR]] &lt;db_dir&gt; &lt;file_path&gt; [&lt;instr_index&gt;]
8360    </p>
8361    </blockquote><p>
8362                        
8363    </p>
8364    <p>Where &lt;db_dir&gt; is the absolute path name of a directory
8365                        (encapsulated into apostrophes) in the instruments database in which
8366                        only the new instruments (that are not already in the database) will
8367                        be added, &lt;file_path&gt; is the absolute path name of a file or
8368                        directory in the file system (encapsulated into apostrophes). In case
8369                        an instrument file is supplied, only the instruments in the specified
8370                        file will be added to the instruments database. If the optional
8371                        &lt;instr_index&gt; (the index of the instrument within the given file)
8372                        is supplied too, then only the specified instrument will be added.
8373                        In case a directory is supplied, the instruments in that directory
8374                        will be added. The OPTIONAL &lt;mode&gt; argument is only applied
8375                        when a directory is provided as &lt;file_path&gt; and specifies how the
8376                        scanning will be done and has exactly the following possibilities:
8377    </p>
8378    <p>
8379                            </p>
8380    <blockquote class="text">
8381    <p>"RECURSIVE" -
8382                                    </p>
8383    <blockquote class="text">
8384    <p>All instruments will be processed, including those
8385                                        in the subdirectories, and the respective subdirectory
8386                                        tree structure will be recreated in the instruments
8387                                        database
8388    </p>
8389    </blockquote>
8390                                
8391    
8392    <p>"NON_RECURSIVE" -
8393                                    </p>
8394    <blockquote class="text">
8395    <p>Only the instruments in the specified directory
8396                                        will be added, the instruments in the subdirectories
8397                                        will not be processed.
8398    </p>
8399    </blockquote>
8400                                
8401    
8402    <p>"FLAT" -
8403                                    </p>
8404    <blockquote class="text">
8405    <p>All instruments will be processed, including those
8406                                        in the subdirectories, but the respective subdirectory
8407                                        structure will not be recreated in the instruments
8408                                        database. All instruments will be added directly in
8409                                        the specified database directory.
8410    </p>
8411    </blockquote>
8412                                
8413    
8414    </blockquote><p>
8415                        
8416    </p>
8417    <p> If FILE_AS_DIR argument is supplied, all instruments in an instrument
8418                     file will be added to a separate directory in the instruments database, which
8419                     name will be the name of the instrument file with the file extension stripped off.
8420                    
8421    </p>
8422    <p>The difference between regular and NON_MODAL versions of the command
8423                        is that the regular command returns when the scanning is finished
8424                        while NON_MODAL version returns immediately and a background process is launched.
8425                        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>
8426                        command can be used to monitor the scanning progress.
8427    </p>
8428    <p>Possible Answers:
8429    </p>
8430    <p>
8431                            </p>
8432    <blockquote class="text">
8433    <p>"OK" -
8434                                    </p>
8435    <blockquote class="text">
8436    <p>on success when NON_MODAL is not supplied
8437    </p>
8438    </blockquote>
8439                                
8440    
8441    <p>"OK[&lt;job-id&gt;]" -
8442                                    </p>
8443    <blockquote class="text">
8444    <p>on success when NON_MODAL is supplied, where &lt;job-id&gt;
8445                                        is a numerical ID used to obtain status information about the job progress.
8446                                        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>
8447                                        
8448    </p>
8449    </blockquote>
8450                                
8451    
8452    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8453                                    </p>
8454    <blockquote class="text">
8455    <p>if an invalid path is specified.
8456    </p>
8457    </blockquote>
8458                                
8459    
8460    </blockquote><p>
8461                        
8462    </p>
8463    <p>Examples:
8464    </p>
8465    <p>
8466                            </p>
8467    <blockquote class="text">
8468    <p>C: "ADD DB_INSTRUMENTS '/Piano Collection' '/home/me/gigs/PMI Bosendorfer 290.gig' 0"
8469    </p>
8470    <p>S: "OK"
8471    </p>
8472    </blockquote><p>
8473                        
8474    </p>
8475    <a name="REMOVE DB_INSTRUMENT"></a><br /><hr />
8476    <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>
8477    <a name="rfc.section.6.8.12"></a><h3>6.8.12.&nbsp;
8478    Removing an instrument</h3>
8479    
8480    <p>The front-end can remove a particular instrument
8481                        from the instruments database by sending the following command:
8482    </p>
8483    <p>
8484                            </p>
8485    <blockquote class="text">
8486    <p>REMOVE DB_INSTRUMENT &lt;instr_path&gt;
8487    </p>
8488    </blockquote><p>
8489                        
8490    </p>
8491    <p>Where &lt;instr_path&gt; is the absolute path name
8492                        (in the instruments database) of the instrument to remove.
8493    </p>
8494    <p>Possible Answers:
8495    </p>
8496    <p>
8497                            </p>
8498    <blockquote class="text">
8499    <p>"OK" -
8500                                    </p>
8501    <blockquote class="text">
8502    <p>if the instrument is removed successfully
8503    </p>
8504    </blockquote>
8505                                
8506    
8507    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8508                                    </p>
8509    <blockquote class="text">
8510    <p>if the given path does not exist or
8511                                        is a directory.
8512    </p>
8513    </blockquote>
8514                                
8515    
8516    </blockquote><p>
8517                        
8518    </p>
8519    <p>Examples:
8520    </p>
8521    <p>
8522                            </p>
8523    <blockquote class="text">
8524    <p>C: "REMOVE DB_INSTRUMENT '/Piano Collection/Bosendorfer 290'"
8525    </p>
8526    <p>S: "OK"
8527    </p>
8528    </blockquote><p>
8529                        
8530    </p>
8531    <a name="GET DB_INSTRUMENTS"></a><br /><hr />
8532    <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>
8533    <a name="rfc.section.6.8.13"></a><h3>6.8.13.&nbsp;
8534    Getting amount of instruments</h3>
8535    
8536    <p>The front-end can retrieve the current amount of
8537                        instruments in a specific directory by sending the following command:
8538    </p>
8539    <p>
8540                            </p>
8541    <blockquote class="text">
8542    <p>GET DB_INSTRUMENTS [RECURSIVE] &lt;dir&gt;
8543    </p>
8544    </blockquote><p>
8545                        
8546    </p>
8547    <p>Where &lt;dir&gt; should be replaced by the absolute path name
8548                        of the directory. If RECURSIVE is specified, the number of all
8549                        instruments, including those located in subdirectories of the
8550                        specified directory, will be returned.
8551    </p>
8552    <p>Possible Answers:
8553    </p>
8554    <p>
8555                            </p>
8556    <blockquote class="text">
8557    <p>The current number of instruments
8558                                in the specified directory.
8559    </p>
8560    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8561                                    </p>
8562    <blockquote class="text">
8563    <p>if the given directory does not exist.
8564    </p>
8565    </blockquote>
8566                                
8567    
8568    </blockquote><p>
8569                        
8570    </p>
8571    <p>Example:
8572    </p>
8573    <p>
8574                            </p>
8575    <blockquote class="text">
8576    <p>C: "GET DB_INSTRUMENTS '/Piano Collection'"
8577    </p>
8578    <p>S: "2"
8579    </p>
8580    </blockquote><p>
8581                        
8582    </p>
8583    <a name="LIST DB_INSTRUMENTS"></a><br /><hr />
8584    <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>
8585    <a name="rfc.section.6.8.14"></a><h3>6.8.14.&nbsp;
8586    Listing all instruments in specific directory</h3>
8587    
8588    <p>The front-end can retrieve the current list of instruments
8589                        in specific directory by sending the following command:
8590    </p>
8591    <p>
8592                            </p>
8593    <blockquote class="text">
8594    <p>LIST DB_INSTRUMENTS [RECURSIVE] &lt;dir&gt;
8595    </p>
8596    </blockquote><p>
8597                        
8598    </p>
8599    <p>Where &lt;dir&gt; should be replaced by the absolute path
8600                        name of the directory. If RECURSIVE is specified, the absolute path
8601                        names of all instruments, including those located in subdirectories
8602                        of the specified directory, will be returned.
8603    </p>
8604    <p>Possible Answers:
8605    </p>
8606    <p>
8607                            </p>
8608    <blockquote class="text">
8609    <p>A comma separated list of all instruments
8610                                (encapsulated into apostrophes) in the specified directory.
8611    </p>
8612    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8613                                    </p>
8614    <blockquote class="text">
8615    <p>if the given directory does not exist.
8616    </p>
8617    </blockquote>
8618                                
8619    
8620    </blockquote><p>
8621                        
8622    </p>
8623    <p>Example:
8624    </p>
8625    <p>
8626                            </p>
8627    <blockquote class="text">
8628    <p>C: "LIST DB_INSTRUMENTS '/Piano Collection'"
8629    </p>
8630    <p>S: "'Bosendorfer 290','Steinway D'"
8631    </p>
8632    </blockquote><p>
8633                        
8634    </p>
8635    <p>
8636                            </p>
8637    <blockquote class="text">
8638    <p>C: "LIST DB_INSTRUMENTS RECURSIVE '/Piano Collection'"
8639    </p>
8640    <p>S: "'/Piano Collection/Bosendorfer 290','/Piano Collection/Steinway D','/Piano Collection/Lite/Free Piano'"
8641    </p>
8642    </blockquote><p>
8643                        
8644    </p>
8645    <a name="GET DB_INSTRUMENT INFO"></a><br /><hr />
8646    <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>
8647    <a name="rfc.section.6.8.15"></a><h3>6.8.15.&nbsp;
8648    Getting instrument information</h3>
8649    
8650    <p>The front-end can ask for the current settings of an
8651                        instrument by sending the following command:
8652    </p>
8653    <p>
8654                            </p>
8655    <blockquote class="text">
8656    <p>GET DB_INSTRUMENT INFO &lt;instr_path&gt;
8657    </p>
8658    </blockquote><p>
8659                        
8660    </p>
8661    <p>Where &lt;instr_path&gt; should be replaced by the absolute path
8662                        name of the instrument the front-end is interested in.
8663    </p>
8664    <p>Possible Answers:
8665    </p>
8666    <p>
8667                            </p>
8668    <blockquote class="text">
8669    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
8670                                Each answer line begins with the settings category name
8671                                followed by a colon and then a space character &lt;SP&gt; and finally
8672                                the info character string to that setting category. At the
8673                                moment the following categories are defined:
8674    </p>
8675    <p>
8676                                    </p>
8677    <blockquote class="text">
8678    <p>INSTRUMENT_FILE -
8679                                            </p>
8680    <blockquote class="text">
8681    <p>File name of the instrument.
8682                                                Note that the character string may contain
8683                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8684    </p>
8685    </blockquote>
8686                                        
8687    
8688    <p>INSTRUMENT_NR -
8689                                            </p>
8690    <blockquote class="text">
8691    <p>Index of the instrument within the file.
8692    </p>
8693    </blockquote>
8694                                        
8695    
8696    <p>FORMAT_FAMILY -
8697                                            </p>
8698    <blockquote class="text">
8699    <p>The format family of the instrument.
8700    </p>
8701    </blockquote>
8702                                        
8703    
8704    <p>FORMAT_VERSION -
8705                                            </p>
8706    <blockquote class="text">
8707    <p>The format version of the instrument.
8708    </p>
8709    </blockquote>
8710                                        
8711    
8712    <p>SIZE -
8713                                            </p>
8714    <blockquote class="text">
8715    <p>The size of the instrument in bytes.
8716    </p>
8717    </blockquote>
8718                                        
8719    
8720    <p>CREATED -
8721                                            </p>
8722    <blockquote class="text">
8723    <p>The date and time when the instrument is added
8724                                                in the instruments database, represented in
8725                                               "YYYY-MM-DD HH:MM:SS" format
8726    </p>
8727    </blockquote>
8728                                        
8729    
8730    <p>MODIFIED -
8731                                            </p>
8732    <blockquote class="text">
8733    <p>The date and time of the last modification of the
8734                                                instrument's database settings, represented in
8735                                                "YYYY-MM-DD HH:MM:SS" format
8736    </p>
8737    </blockquote>
8738                                        
8739    
8740    <p>DESCRIPTION -
8741                                            </p>
8742    <blockquote class="text">
8743    <p>A brief description of the instrument.
8744                                                Note that the character string may contain
8745                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8746    </p>
8747    </blockquote>
8748                                        
8749    
8750    <p>IS_DRUM -
8751                                            </p>
8752    <blockquote class="text">
8753    <p>either true or false, determines whether the
8754                                                instrument is a drumkit or a chromatic instrument
8755    </p>
8756    </blockquote>
8757                                        
8758    
8759    <p>PRODUCT -
8760                                            </p>
8761    <blockquote class="text">
8762    <p>The product title of the instrument.
8763                                                Note that the character string may contain
8764                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8765    </p>
8766    </blockquote>
8767                                        
8768    
8769    <p>ARTISTS -
8770                                            </p>
8771    <blockquote class="text">
8772    <p>Lists the artist names.
8773                                                Note that the character string may contain
8774                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8775    </p>
8776    </blockquote>
8777                                        
8778    
8779    <p>KEYWORDS -
8780                                            </p>
8781    <blockquote class="text">
8782    <p>Provides a list of keywords that refer to the instrument.
8783                                                Keywords are separated with semicolon and blank.
8784                                                Note that the character string may contain
8785                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8786    </p>
8787    </blockquote>
8788                                        
8789    
8790    </blockquote>
8791                                
8792    
8793    </blockquote><p>
8794                        
8795    </p>
8796    <p>The mentioned fields above don't have to be in particular order.
8797    </p>
8798    <p>Example:
8799    </p>
8800    <p>
8801                            </p>
8802    <blockquote class="text">
8803    <p>C: "GET DB_INSTRUMENT INFO '/Piano Collection/Bosendorfer 290'"
8804    </p>
8805    <p>S: "INSTRUMENT_FILE: /home/me/gigs/Bosendorfer 290.gig"
8806    </p>
8807    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NR: 0"
8808    </p>
8809    <p>&nbsp;&nbsp;&nbsp;"FORMAT_FAMILY: GIG"
8810    </p>
8811    <p>&nbsp;&nbsp;&nbsp;"FORMAT_VERSION: 2"
8812    </p>
8813    <p>&nbsp;&nbsp;&nbsp;"SIZE: 2050871870"
8814    </p>
8815    <p>&nbsp;&nbsp;&nbsp;"CREATED: 2007-02-05 10:23:12"
8816    </p>
8817    <p>&nbsp;&nbsp;&nbsp;"MODIFIED: 2007-04-07 12:50:21"
8818    </p>
8819    <p>&nbsp;&nbsp;&nbsp;"DESCRIPTION: "
8820    </p>
8821    <p>&nbsp;&nbsp;&nbsp;"IS_DRUM: false"
8822    </p>
8823    <p>&nbsp;&nbsp;&nbsp;"PRODUCT: GRANDIOSO Bosendorfer 290"
8824    </p>
8825    <p>&nbsp;&nbsp;&nbsp;"ARTISTS: Post Musical Instruments"
8826    </p>
8827    <p>&nbsp;&nbsp;&nbsp;"KEYWORDS: Bosendorfer"
8828    </p>
8829    <p>&nbsp;&nbsp;&nbsp;"."
8830    </p>
8831    </blockquote><p>
8832                        
8833    </p>
8834    <a name="SET DB_INSTRUMENT NAME"></a><br /><hr />
8835    <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>
8836    <a name="rfc.section.6.8.16"></a><h3>6.8.16.&nbsp;
8837    Renaming an instrument</h3>
8838    
8839    <p>The front-end can alter the name of a specific
8840                        instrument by sending the following command:
8841    </p>
8842    <p>
8843                            </p>
8844    <blockquote class="text">
8845    <p>SET DB_INSTRUMENT NAME &lt;instr&gt; &lt;name&gt;
8846    </p>
8847    </blockquote><p>
8848                        
8849    </p>
8850    <p>Where &lt;instr&gt; is the absolute path name of the instrument and
8851                        &lt;name&gt; is the new name for that instrument.
8852    </p>
8853    <p>Possible Answers:
8854    </p>
8855    <p>
8856                            </p>
8857    <blockquote class="text">
8858    <p>"OK" -
8859                                    </p>
8860    <blockquote class="text">
8861    <p>on success
8862    </p>
8863    </blockquote>
8864                                
8865    
8866    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8867                                    </p>
8868    <blockquote class="text">
8869    <p>in case the given instrument does not exists,
8870                                        or if an instrument with name equal to the new
8871                                        name already exists.
8872    </p>
8873    </blockquote>
8874                                
8875    
8876    </blockquote><p>
8877                        
8878    </p>
8879    <p>Example:
8880    </p>
8881    <p>
8882                            </p>
8883    <blockquote class="text">
8884    <p>C: "SET DB_INSTRUMENT NAME '/Piano Collection/Bosendorfer' 'Bosendorfer 290'"
8885    </p>
8886    <p>S: "OK"
8887    </p>
8888    </blockquote><p>
8889                        
8890    </p>
8891    <a name="MOVE DB_INSTRUMENT"></a><br /><hr />
8892    <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>
8893    <a name="rfc.section.6.8.17"></a><h3>6.8.17.&nbsp;
8894    Moving an instrument</h3>
8895    
8896    <p>The front-end can move a specific instrument to another directory by
8897                        sending the following command:
8898    </p>
8899    <p>
8900                            </p>
8901    <blockquote class="text">
8902    <p>MOVE DB_INSTRUMENT &lt;instr&gt; &lt;dst&gt;
8903    </p>
8904    </blockquote><p>
8905                        
8906    </p>
8907    <p>Where &lt;instr&gt; is the absolute path name of the instrument
8908                        to move and &lt;dst&gt; is the directory where the instrument will
8909                        be moved to.
8910    </p>
8911    <p>Possible Answers:
8912    </p>
8913    <p>
8914                            </p>
8915    <blockquote class="text">
8916    <p>"OK" -
8917                                    </p>
8918    <blockquote class="text">
8919    <p>on success
8920    </p>
8921    </blockquote>
8922                                
8923    
8924    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8925                                    </p>
8926    <blockquote class="text">
8927    <p>in case the given instrument does not exists,
8928                                        or if an instrument with name equal to the name of the
8929                                        specified instrument already exists in the destination
8930                                        directory.
8931    </p>
8932    </blockquote>
8933                                
8934    
8935    </blockquote><p>
8936                        
8937    </p>
8938    <p>Example:
8939    </p>
8940    <p>
8941                            </p>
8942    <blockquote class="text">
8943    <p>C: "MOVE DB_INSTRUMENT '/Piano Collection/Bosendorfer 290' '/Piano Collection/Acoustic'"
8944    </p>
8945    <p>S: "OK"
8946    </p>
8947    </blockquote><p>
8948                        
8949    </p>
8950    <a name="COPY DB_INSTRUMENT"></a><br /><hr />
8951    <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>
8952    <a name="rfc.section.6.8.18"></a><h3>6.8.18.&nbsp;
8953    Copying instruments</h3>
8954    
8955    <p>The front-end can copy a specific instrument to another directory by
8956                        sending the following command:
8957    </p>
8958    <p>
8959                            </p>
8960    <blockquote class="text">
8961    <p>COPY DB_INSTRUMENT &lt;instr&gt; &lt;dst&gt;
8962    </p>
8963    </blockquote><p>
8964                        
8965    </p>
8966    <p>Where &lt;instr&gt; is the absolute path name of the instrument
8967                        to copy and &lt;dst&gt; is the directory where the instrument will
8968                        be copied to.
8969    </p>
8970    <p>Possible Answers:
8971    </p>
8972    <p>
8973                            </p>
8974    <blockquote class="text">
8975    <p>"OK" -
8976                                    </p>
8977    <blockquote class="text">
8978    <p>on success
8979    </p>
8980    </blockquote>
8981                                
8982    
8983    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
8984                                    </p>
8985    <blockquote class="text">
8986    <p>in case the given instrument does not exists,
8987                                        or if an instrument with name equal to the name of the
8988                                        specified instrument already exists in the destination
8989                                        directory.
8990    </p>
8991    </blockquote>
8992                                
8993    
8994    </blockquote><p>
8995                        
8996    </p>
8997    <p>Example:
8998    </p>
8999    <p>
9000                            </p>
9001    <blockquote class="text">
9002    <p>C: "COPY DB_INSTRUMENT '/Piano Collection/Bosendorfer 290' '/Acoustic/Pianos/'"
9003    </p>
9004    <p>S: "OK"
9005    </p>
9006    </blockquote><p>
9007                        
9008    </p>
9009    <a name="SET DB_INSTRUMENT DESCRIPTION"></a><br /><hr />
9010    <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>
9011    <a name="rfc.section.6.8.19"></a><h3>6.8.19.&nbsp;
9012    Changing the description of instrument</h3>
9013    
9014    <p>The front-end can alter the description of a specific
9015                        instrument by sending the following command:
9016    </p>
9017    <p>
9018                            </p>
9019    <blockquote class="text">
9020    <p>SET DB_INSTRUMENT DESCRIPTION &lt;instr&gt; &lt;desc&gt;
9021    </p>
9022    </blockquote><p>
9023                        
9024    </p>
9025    <p>Where &lt;instr&gt; is the absolute path name of the instrument and
9026                        &lt;desc&gt; is the new description for the instrument
9027                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
9028                        "<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>").
9029    </p>
9030    <p>Possible Answers:
9031    </p>
9032    <p>
9033                            </p>
9034    <blockquote class="text">
9035    <p>"OK" -
9036                                    </p>
9037    <blockquote class="text">
9038    <p>on success
9039    </p>
9040    </blockquote>
9041                                
9042    
9043    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9044                                    </p>
9045    <blockquote class="text">
9046    <p>in case the given instrument does not exists.
9047    </p>
9048    </blockquote>
9049                                
9050    
9051    </blockquote><p>
9052                        
9053    </p>
9054    <p>Example:
9055    </p>
9056    <p>
9057                            </p>
9058    <blockquote class="text">
9059    <p>C: "SET DB_INSTRUMENT DESCRIPTION '/Piano Collection/Acoustic/Bosendorfer 290' 'No comment :)'"
9060    </p>
9061    <p>S: "OK"
9062    </p>
9063    </blockquote><p>
9064                        
9065    </p>
9066    <a name="FIND DB_INSTRUMENTS"></a><br /><hr />
9067    <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>
9068    <a name="rfc.section.6.8.20"></a><h3>6.8.20.&nbsp;
9069    Finding instruments</h3>
9070    
9071    <p>The front-end can search for instruments
9072                        in specific directory by sending the following command:
9073    </p>
9074    <p>
9075                            </p>
9076    <blockquote class="text">
9077    <p>FIND DB_INSTRUMENTS [NON_RECURSIVE] &lt;dir&gt; &lt;criteria-list&gt;
9078    </p>
9079    </blockquote><p>
9080                        
9081    </p>
9082    <p>Where &lt;dir&gt; should be replaced by the absolute path
9083                        name of the directory to search in. If NON_RECURSIVE is specified, the
9084                        directories located in subdirectories of the specified directory will not
9085                        be searched. &lt;criteria-list&gt; is a list of search criterias
9086                        in form of "key1=val1 key2=val2 ...". The following criterias are
9087                        allowed:
9088    </p>
9089    <p>
9090                          
9091    <p>NAME='&lt;search-string&gt;'
9092                              </p>
9093    <blockquote class="text">
9094    <p>Restricts the search to instruments, which names
9095                                  satisfy the supplied search string (encapsulated into apostrophes,
9096                                  supporting escape sequences as described in chapter
9097                                  "<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>").
9098    </p>
9099    </blockquote><p>
9100                          
9101    </p>
9102    
9103                          
9104    <p>SIZE=[&lt;min&gt;]..[&lt;max&gt;]
9105                              </p>
9106    <blockquote class="text">
9107    <p>Restricts the search to instruments, which
9108                                  size is in the specified range. If &lt;min&gt; is omitted,
9109                                  the search results are restricted to instruments with size less then
9110                                  or equal to &lt;max&gt;. If &lt;max&gt; is omitted, the
9111                                  search is restricted to instruments with size greater then
9112                                  or equal to &lt;min&gt;.
9113    </p>
9114    </blockquote><p>
9115                          
9116    </p>
9117    
9118                          
9119    <p>CREATED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
9120                              </p>
9121    <blockquote class="text">
9122    <p>Restricts the search to instruments, which creation
9123                                  date satisfies the specified period, where &lt;date-after&gt;
9124                                  and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS" format.
9125                                  If &lt;date-after&gt; is omitted the search is restricted to
9126                                  instruments created before &lt;date-before&gt;. If
9127                                  &lt;date-before&gt; is omitted, the search is restricted
9128                                  to instruments created after &lt;date-after&gt;.
9129    </p>
9130    </blockquote><p>
9131                          
9132    </p>
9133    
9134                          
9135    <p>MODIFIED='[&lt;date-after&gt;]..[&lt;date-before&gt;]'
9136                              </p>
9137    <blockquote class="text">
9138    <p>Restricts the search to instruments, which
9139                                  date of last modification satisfies the specified period, where
9140                                  &lt;date-after&gt; and &lt;date-before&gt; are in "YYYY-MM-DD HH:MM:SS"
9141                                  format. If &lt;date-after&gt; is omitted the search is restricted to
9142                                  instruments, which are last modified before &lt;date-before&gt;. If
9143                                  &lt;date-before&gt; is omitted, the search is restricted to instruments,
9144                                  which are last modified after &lt;date-after&gt;.
9145    </p>
9146    </blockquote><p>
9147                          
9148    </p>
9149    
9150                          
9151    <p>DESCRIPTION='&lt;search-string&gt;'
9152                              </p>
9153    <blockquote class="text">
9154    <p>Restricts the search to instruments with description
9155                                  that satisfies the supplied search string (encapsulated into apostrophes,
9156                                  supporting escape sequences as described in chapter
9157                                  "<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>").
9158    </p>
9159    </blockquote><p>
9160                          
9161    </p>
9162    
9163                          
9164    <p>PRODUCT='&lt;search-string&gt;'
9165                              </p>
9166    <blockquote class="text">
9167    <p>Restricts the search to instruments with product info
9168                                  that satisfies the supplied search string (encapsulated into apostrophes,
9169                                  supporting escape sequences as described in chapter
9170                                  "<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>").
9171    </p>
9172    </blockquote><p>
9173                          
9174    </p>
9175    
9176                          
9177    <p>ARTISTS='&lt;search-string&gt;'
9178                              </p>
9179    <blockquote class="text">
9180    <p>Restricts the search to instruments with artists info
9181                                  that satisfies the supplied search string (encapsulated into apostrophes,
9182                                  supporting escape sequences as described in chapter
9183                                  "<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>").
9184    </p>
9185    </blockquote><p>
9186                          
9187    </p>
9188    
9189                          
9190    <p>KEYWORDS='&lt;search-string&gt;'
9191                              </p>
9192    <blockquote class="text">
9193    <p>Restricts the search to instruments with keyword list
9194                                  that satisfies the supplied search string (encapsulated into apostrophes,
9195                                  supporting escape sequences as described in chapter
9196                                  "<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>").
9197    </p>
9198    </blockquote><p>
9199                          
9200    </p>
9201    
9202                          
9203    <p>IS_DRUM=true | false
9204                              </p>
9205    <blockquote class="text">
9206    <p>Either true or false. Restricts the search to
9207                                  drum kits or chromatic instruments.
9208    </p>
9209    </blockquote><p>
9210                          
9211    </p>
9212    
9213                          
9214    <p>FORMAT_FAMILIES='&lt;format-list&gt;'
9215                              </p>
9216    <blockquote class="text">
9217    <p>Restricts the search to instruments of the supplied format families,
9218                                  where &lt;format-list&gt; is a comma separated list of format families.
9219    </p>
9220    </blockquote><p>
9221                          
9222    </p>
9223                        
9224    
9225    <p>Where &lt;search-string&gt; is either a regular expression, or a
9226                        word list separated with spaces for OR search and with '+' for AND search.
9227    </p>
9228    <p>Possible Answers:
9229    </p>
9230    <p>
9231                            </p>
9232    <blockquote class="text">
9233    <p>A comma separated list with the absolute path names (encapsulated into
9234                                apostrophes) of all instruments in the specified directory that satisfy
9235                                the supplied search criterias.
9236    </p>
9237    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9238                                    </p>
9239    <blockquote class="text">
9240    <p>if the given directory does not exist.
9241    </p>
9242    </blockquote>
9243                                
9244    
9245    </blockquote><p>
9246                        
9247    </p>
9248    <p>Example:
9249    </p>
9250    <p>
9251                            </p>
9252    <blockquote class="text">
9253    <p>C: "FIND DB_INSTRUMENTS '/Piano Collection' NAME='bosendorfer+290'"
9254    </p>
9255    <p>S: "'/Piano Collection/Bosendorfer 290'"
9256    </p>
9257    </blockquote><p>
9258                        
9259    </p>
9260    <p>
9261                            </p>
9262    <blockquote class="text">
9263    <p>C: "FIND DB_INSTRUMENTS '/Piano Collection' CREATED='2007-04-01 09:30:13..'"
9264    </p>
9265    <p>S: "'/Piano Collection/Bosendorfer 290','/Piano Collection/Steinway D'"
9266    </p>
9267    </blockquote><p>
9268                        
9269    </p>
9270    <a name="GET DB_INSTRUMENTS_JOB INFO"></a><br /><hr />
9271    <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>
9272    <a name="rfc.section.6.8.21"></a><h3>6.8.21.&nbsp;
9273    Getting job status information</h3>
9274    
9275    <p>The front-end can ask for the current status of a
9276                        particular database instruments job by sending the following command:
9277    </p>
9278    <p>
9279                            </p>
9280    <blockquote class="text">
9281    <p>GET DB_INSTRUMENTS_JOB INFO &lt;job-id&gt;
9282    </p>
9283    </blockquote><p>
9284                        
9285    </p>
9286    <p>Where &lt;job-id&gt; should be replaced by the numerical ID
9287                        of the job the front-end is interested in.
9288    </p>
9289    <p>Possible Answers:
9290    </p>
9291    <p>
9292                            </p>
9293    <blockquote class="text">
9294    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
9295                                Each answer line begins with the settings category name
9296                                followed by a colon and then a space character &lt;SP&gt; and finally
9297                                the info character string to that setting category. At the
9298                                moment the following categories are defined:
9299    </p>
9300    <p>
9301                                    </p>
9302    <blockquote class="text">
9303    <p>FILES_TOTAL -
9304                                            </p>
9305    <blockquote class="text">
9306    <p>The total number of files scheduled for scanning
9307    </p>
9308    </blockquote>
9309                                        
9310    
9311    <p>FILES_SCANNED -
9312                                            </p>
9313    <blockquote class="text">
9314    <p>The current number of scanned files
9315    </p>
9316    </blockquote>
9317                                        
9318    
9319    <p>SCANNING -
9320                                            </p>
9321    <blockquote class="text">
9322    <p>The absolute path name of the file which is currently
9323                                                being scanned
9324    </p>
9325    </blockquote>
9326                                        
9327    
9328    <p>STATUS -
9329                                            </p>
9330    <blockquote class="text">
9331    <p>An integer value between 0 and 100 indicating the
9332                                                scanning progress percentage of the file which is
9333                                                currently being scanned
9334    </p>
9335    </blockquote>
9336                                        
9337    
9338    </blockquote>
9339                                
9340    
9341    </blockquote><p>
9342                        
9343    </p>
9344    <p>The mentioned fields above don't have to be in particular order.
9345    </p>
9346    <p>Example:
9347    </p>
9348    <p>
9349                            </p>
9350    <blockquote class="text">
9351    <p>C: "GET DB_INSTRUMENTS_JOB INFO 2"
9352    </p>
9353    <p>S: "FILES_TOTAL: 12"
9354    </p>
9355    <p>&nbsp;&nbsp;&nbsp;"FILES_SCANNED: 7"
9356    </p>
9357    <p>&nbsp;&nbsp;&nbsp;"SCANNING: /home/me/gigs/Bosendorfer 290.gig"
9358    </p>
9359    <p>&nbsp;&nbsp;&nbsp;"STATUS: 42"
9360    </p>
9361    <p>&nbsp;&nbsp;&nbsp;"."
9362    </p>
9363    </blockquote><p>
9364                        
9365    </p>
9366    <a name="FORMAT INSTRUMENTS_DB"></a><br /><hr />
9367    <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>
9368    <a name="rfc.section.6.8.22"></a><h3>6.8.22.&nbsp;
9369    Formatting the instruments database</h3>
9370    
9371    <p>The front-end can remove all instruments and directories and re-create
9372                        the instruments database structure (e.g., in case of a database corruption)
9373                        by sending the following command:
9374    </p>
9375    <p>
9376                            </p>
9377    <blockquote class="text">
9378    <p>FORMAT INSTRUMENTS_DB
9379    </p>
9380    </blockquote><p>
9381                        
9382    </p>
9383    <p>Possible Answers:
9384    </p>
9385    <p>
9386                            </p>
9387    <blockquote class="text">
9388    <p>"OK" -
9389                                    </p>
9390    <blockquote class="text">
9391    <p>on success
9392    </p>
9393    </blockquote>
9394                                
9395    
9396    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9397                                    </p>
9398    <blockquote class="text">
9399    <p>If the formatting of the instruments database
9400                                        failed.
9401    </p>
9402    </blockquote>
9403                                
9404    
9405    </blockquote><p>
9406                        
9407    </p>
9408    <a name="FIND LOST DB_INSTRUMENT_FILES"></a><br /><hr />
9409    <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>
9410    <a name="rfc.section.6.8.23"></a><h3>6.8.23.&nbsp;
9411    Checking for lost instrument files</h3>
9412    
9413    <p>The front-end can retrieve the list of all instrument files in the instruments database
9414                        that don't exist in the filesystem by sending the following command:
9415    </p>
9416    <p>
9417                            </p>
9418    <blockquote class="text">
9419    <p>FIND LOST DB_INSTRUMENT_FILES
9420    </p>
9421    </blockquote><p>
9422                        
9423    </p>
9424    <p>Possible Answers:
9425    </p>
9426    <p>
9427                            </p>
9428    <blockquote class="text">
9429    <p>A comma separated list with the absolute path names
9430                                (encapsulated into apostrophes) of all lost instrument files.
9431    </p>
9432    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9433                                    </p>
9434    <blockquote class="text">
9435    <p>in case it failed, providing an appropriate error code and error message.
9436    </p>
9437    </blockquote>
9438                                
9439    
9440    </blockquote><p>
9441                        
9442    </p>
9443    <p>Example:
9444    </p>
9445    <p>
9446                            </p>
9447    <blockquote class="text">
9448    <p>C: "FIND LOST DB_INSTRUMENT_FILES"
9449    </p>
9450    <p>S: "'/gigs/Bosendorfer 290.gig','/gigs/Steinway D.gig','/gigs/Free Piano.gig'"
9451    </p>
9452    </blockquote><p>
9453                        
9454    </p>
9455    <a name="SET DB_INSTRUMENT FILE_PATH"></a><br /><hr />
9456    <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>
9457    <a name="rfc.section.6.8.24"></a><h3>6.8.24.&nbsp;
9458    Replacing an instrument file</h3>
9459    
9460    <p>The front-end can substitute all occurrences of an instrument file
9461                        in the instruments database with a new one by sending the following command:
9462    </p>
9463    <p>
9464                            </p>
9465    <blockquote class="text">
9466    <p>SET DB_INSTRUMENT FILE_PATH &lt;old_path&gt; &lt;new_path&gt;
9467    </p>
9468    </blockquote><p>
9469                        
9470    </p>
9471    <p>Where &lt;old_path&gt; is the absolute path name of the instrument file
9472                        to substitute with &lt;new_path&gt;.
9473    </p>
9474    <p>Possible Answers:
9475    </p>
9476    <p>
9477                            </p>
9478    <blockquote class="text">
9479    <p>"OK" -
9480                                    </p>
9481    <blockquote class="text">
9482    <p>on success
9483    </p>
9484    </blockquote>
9485                                
9486    
9487    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9488                                    </p>
9489    <blockquote class="text">
9490    <p>in case it failed, providing an appropriate error code and error message.
9491    </p>
9492    </blockquote>
9493                                
9494    
9495    </blockquote><p>
9496                        
9497    </p>
9498    <p>Example:
9499    </p>
9500    <p>
9501                            </p>
9502    <blockquote class="text">
9503    <p>C: "SET DB_INSTRUMENT FILE_PATH '/gigs/Bosendorfer 290.gig' '/gigs/pianos/Bosendorfer 290.gig'"
9504    </p>
9505    <p>S: "OK"
9506    </p>
9507    </blockquote><p>
9508                        
9509    </p>
9510    <a name="editing_instruments"></a><br /><hr />
9511    <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>
9512    <a name="rfc.section.6.9"></a><h3>6.9.&nbsp;
9513    Editing Instruments</h3>
9514    
9515    <p>The sampler allows to edit instruments while playing with the
9516                    sampler by spawning an external (3rd party) instrument editor
9517                    application for a given instrument. The 3rd party instrument
9518                    editor applications have to place a respective plugin DLL file
9519                    into the sampler's plugins directory. The sampler will
9520                    automatically try to load all plugin DLLs in that directory on
9521                    startup and only on startup!
9522    </p>
9523    <p>At the moment there is only one command for this feature set,
9524                    but this will most probably change in future.
9525    </p>
9526    <a name="EDIT INSTRUMENT"></a><br /><hr />
9527    <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>
9528    <a name="rfc.section.6.9.1"></a><h3>6.9.1.&nbsp;
9529    Opening an appropriate instrument editor application</h3>
9530    
9531    <p>The front-end can request to open an appropriate instrument
9532                        editor application by sending the following command:
9533    </p>
9534    <p>
9535                            </p>
9536    <blockquote class="text">
9537    <p>EDIT CHANNEL INSTRUMENT &lt;sampler-channel&gt;
9538    </p>
9539    </blockquote><p>
9540                        
9541    </p>
9542    <p>Where &lt;sampler-channel&gt; should be replaced by the
9543                        number of the sampler channel as given by the
9544                        <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a>
9545                        or <a class='info' href='#LIST CHANNELS'>"LIST CHANNELS"<span> (</span><span class='info'>Getting all created sampler channel list</span><span>)</span></a>
9546                        command.
9547    </p>
9548    <p>The sampler will try to ask all registered instrument
9549                        editors (or to be more specific: their sampler plugins)
9550                        whether they are capable to handle the instrument on the
9551                        given sampler channel. The sampler will simply use the first
9552                        instrument editor application which replied with a positive
9553                        answer and spawn that instrument editor application within
9554                        the sampler's process and provide that application access
9555                        to the instrument's data structures, so both applications
9556                        can share and access the same instruments data at the same
9557                        time, thus allowing to immediately hear changes with the
9558                        sampler made by the instrument editor.
9559    </p>
9560    <p>Note: consequently instrument editors are always spawned
9561                        locally on the same machine where the sampler is running
9562                        on!
9563    </p>
9564    <p>Possible Answers:
9565    </p>
9566    <p>
9567                            </p>
9568    <blockquote class="text">
9569    <p>"OK" -
9570                                    </p>
9571    <blockquote class="text">
9572    <p>when an appropriate instrument editor was
9573                                        launched
9574    </p>
9575    </blockquote>
9576                                
9577    
9578    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
9579                                    </p>
9580    <blockquote class="text">
9581    <p>when an appropriate instrument editor was
9582                                        launched, but there are noteworthy issues
9583    </p>
9584    </blockquote>
9585                                
9586    
9587    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9588                                    </p>
9589    <blockquote class="text">
9590    <p>when an appropriate instrument editor
9591                                        could not be launched
9592    </p>
9593    </blockquote>
9594                                
9595    
9596    </blockquote><p>
9597                        
9598    </p>
9599    <p>Examples:
9600    </p>
9601    <p>
9602                            </p>
9603    <blockquote class="text">
9604    <p>C: "EDIT CHANNEL INSTRUMENT 0"
9605    </p>
9606    <p>S: "OK"
9607    </p>
9608    </blockquote><p>
9609                        
9610    </p>
9611    <a name="file_management"></a><br /><hr />
9612    <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>
9613    <a name="rfc.section.6.10"></a><h3>6.10.&nbsp;
9614    Managing Files</h3>
9615    
9616    <p>You can query detailed informations about files located
9617                    at the same system where the sampler instance is running on.
9618                    Using this command set allows to retrieve file informations
9619                    even remotely from another machine.
9620    </p>
9621    <a name="GET FILE INSTRUMENTS"></a><br /><hr />
9622    <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>
9623    <a name="rfc.section.6.10.1"></a><h3>6.10.1.&nbsp;
9624    Retrieving amount of instruments of a file</h3>
9625    
9626    <p>The front-end can retrieve the amount of instruments
9627                        within a given instrument file by sending the
9628                        following command:
9629    </p>
9630    <p>
9631                            </p>
9632    <blockquote class="text">
9633    <p>GET FILE INSTRUMENTS &lt;filename&gt;
9634    </p>
9635    </blockquote><p>
9636                        
9637    </p>
9638    <p>Where &lt;filename&gt; is the name of the instrument
9639                        file (encapsulated into apostrophes, supporting escape
9640                        sequences as described in chapter
9641                        "<a class='info' href='#character_set'>Character Set and Escape
9642                            Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9643    </p>
9644    <p>The sampler will try to ask all sampler engines,
9645                        whether they support the given file and ask the first
9646                        engine with a positive answer for the amount of
9647                        instruments.
9648    </p>
9649    <p>Possible Answers:
9650    </p>
9651    <p>
9652                            </p>
9653    <blockquote class="text">
9654    <p>On success, the sampler will answer by
9655                                   returning the amount of instruments.
9656                                
9657    </p>
9658    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9659                                    </p>
9660    <blockquote class="text">
9661    <p>if the file could not be handled
9662    </p>
9663    </blockquote>
9664                                
9665    
9666    </blockquote><p>
9667                        
9668    </p>
9669    <p>Examples:
9670    </p>
9671    <p>
9672                            </p>
9673    <blockquote class="text">
9674    <p>C: "GET FILE INSTRUMENTS 'D:/Sounds/Foo.gig'"
9675    </p>
9676    <p>S: "10"
9677    </p>
9678    </blockquote><p>
9679                        
9680    </p>
9681    <a name="LIST FILE INSTRUMENTS"></a><br /><hr />
9682    <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>
9683    <a name="rfc.section.6.10.2"></a><h3>6.10.2.&nbsp;
9684    Retrieving all instruments of a file</h3>
9685    
9686    <p>The front-end can retrieve a list of all instruments
9687                        within a given instrument file by sending the
9688                        following command:
9689    </p>
9690    <p>
9691                            </p>
9692    <blockquote class="text">
9693    <p>LIST FILE INSTRUMENTS &lt;filename&gt;
9694    </p>
9695    </blockquote><p>
9696                        
9697    </p>
9698    <p>Where &lt;filename&gt; is the name of the instrument
9699                        file (encapsulated into apostrophes, supporting escape
9700                        sequences as described in chapter
9701                        "<a class='info' href='#character_set'>Character Set and Escape
9702                            Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9703    </p>
9704    <p>The sampler will try to ask all sampler engines,
9705                        whether they support the given file and ask the first
9706                        engine with a positive answer for a list of IDs for the
9707                        instruments in the given file.
9708    </p>
9709    <p>Possible Answers:
9710    </p>
9711    <p>
9712                            </p>
9713    <blockquote class="text">
9714    <p>On success, the sampler will answer by
9715                                   returning a comma separated list of
9716                                   instrument IDs.
9717                                
9718    </p>
9719    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9720                                    </p>
9721    <blockquote class="text">
9722    <p>if the file could not be handled
9723    </p>
9724    </blockquote>
9725                                
9726    
9727    </blockquote><p>
9728                        
9729    </p>
9730    <p>Examples:
9731    </p>
9732    <p>
9733                            </p>
9734    <blockquote class="text">
9735    <p>C: "LIST FILE INSTRUMENTS 'D:/Sounds/Foo.gig'"
9736    </p>
9737    <p>S: "0,1,2,3,4,5,6,7,8,9"
9738    </p>
9739    </blockquote><p>
9740                        
9741    </p>
9742    <a name="GET FILE INSTRUMENT INFO"></a><br /><hr />
9743    <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>
9744    <a name="rfc.section.6.10.3"></a><h3>6.10.3.&nbsp;
9745    Retrieving informations about one instrument in a file</h3>
9746    
9747    <p>The front-end can retrieve detailed informations
9748                        about a specific instrument within a given instrument
9749                        file by sending the following command:
9750    </p>
9751    <p>
9752                            </p>
9753    <blockquote class="text">
9754    <p>GET FILE INSTRUMENT INFO &lt;filename&gt;
9755                                &lt;instr-id&gt;
9756    </p>
9757    </blockquote><p>
9758                        
9759    </p>
9760    <p>Where &lt;filename&gt; is the name of the instrument
9761                        file (encapsulated into apostrophes, supporting escape
9762                        sequences as described in chapter
9763                        "<a class='info' href='#character_set'>Character Set and Escape
9764                            Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>") and &lt;instr-id&gt; is the numeric
9765                        instrument ID as returned by the
9766                        <a class='info' href='#LIST FILE INSTRUMENTS'>"LIST FILE INSTRUMENTS"<span> (</span><span class='info'>Retrieving all instruments of a file</span><span>)</span></a> command.
9767    </p>
9768    <p>The sampler will try to ask all sampler engines,
9769                        whether they support the given file and ask the first
9770                        engine with a positive answer for informations about the
9771                        specific instrument in the given file.
9772    </p>
9773    <p>Possible Answers:
9774    </p>
9775    <p>
9776                            </p>
9777    <blockquote class="text">
9778    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
9779                                Each answer line begins with the settings category name
9780                                followed by a colon and then a space character &lt;SP&gt; and finally
9781                                the info character string to that setting category. At the
9782                                moment the following categories are defined:
9783    </p>
9784    <p>
9785                                    </p>
9786    <blockquote class="text">
9787    <p>NAME -
9788                                            </p>
9789    <blockquote class="text">
9790    <p>name of the instrument as
9791                                                stored in the instrument file
9792    </p>
9793    </blockquote>
9794                                        
9795    
9796    <p>FORMAT_FAMILY -
9797                                            </p>
9798    <blockquote class="text">
9799    <p>name of the sampler format
9800                                                of the given instrument
9801    </p>
9802    </blockquote>
9803                                        
9804    
9805    <p>FORMAT_VERSION -
9806                                            </p>
9807    <blockquote class="text">
9808    <p>version of the sampler format
9809                                                the instrumen is stored as
9810    </p>
9811    </blockquote>
9812                                        
9813    
9814    <p>PRODUCT -
9815                                            </p>
9816    <blockquote class="text">
9817    <p>official product name of the
9818                                                instrument as stored in the file
9819                                                
9820    </p>
9821    </blockquote>
9822                                        
9823    
9824    <p>ARTISTS -
9825                                            </p>
9826    <blockquote class="text">
9827    <p>artists / sample library
9828                                                vendor of the instrument
9829    </p>
9830    </blockquote>
9831                                        
9832    
9833    <p>KEY_BINDINGS -
9834                                            </p>
9835    <blockquote class="text">
9836    <p>comma separated list of integer values representing
9837                                                   the instrument's key mapping in the range between 0 .. 127,
9838                                                   reflecting the analog meaning of the MIDI specification.
9839    </p>
9840    </blockquote>
9841                                        
9842    
9843    <p>KEYSWITCH_BINDINGS -
9844                                            </p>
9845    <blockquote class="text">
9846    <p>comma separated list of integer values representing
9847                                                   the instrument's keyswitch mapping in the range between 0 .. 127,
9848                                                   reflecting the analog meaning of the MIDI specification.
9849    </p>
9850    </blockquote>
9851                                        
9852    
9853    </blockquote>
9854                                
9855    
9856    </blockquote><p>
9857                        
9858    </p>
9859    <p>The mentioned fields above don't have to be in particular order.
9860    </p>
9861    <p>Example:
9862    </p>
9863    <p>
9864                            </p>
9865    <blockquote class="text">
9866    <p>C: "GET FILE INSTRUMENT INFO 'D:/Sounds/Foo.gig' 0"
9867    </p>
9868    <p>S: "NAME: Lunatic Loops"
9869    </p>
9870    <p>&nbsp;&nbsp;&nbsp;"FORMAT_FAMILY: GIG"
9871    </p>
9872    <p>&nbsp;&nbsp;&nbsp;"FORMAT_VERSION: 3"
9873    </p>
9874    <p>&nbsp;&nbsp;&nbsp;"PRODUCT: The Backbone Bongo Beats"
9875    </p>
9876    <p>&nbsp;&nbsp;&nbsp;"ARTISTS: Jimmy the Fish"
9877    </p>
9878    <p>&nbsp;&nbsp;&nbsp;"."
9879    </p>
9880    </blockquote><p>
9881                        
9882  </p>  </p>
9883  <a name="command_syntax"></a><br /><hr />  <a name="command_syntax"></a><br /><hr />
9884  <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>
9885  <a name="rfc.section.7"></a><h3>7.&nbsp;Command Syntax</h3>  <a name="rfc.section.7"></a><h3>7.&nbsp;
9886    Command Syntax</h3>
9887    
9888  <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>
9889              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>)
9890              where applicable.              where applicable.
9891                
9892  </p>  </p>
9893  <p>input =  <p>input =
9894          </p>          </p>
9895  <blockquote class="text">  <blockquote class="text">
9896  <p>line LF  <p>line LF
9897                    
9898  </p>  </p>
9899  <p>/ line CR LF  <p>/ line CR LF
9900                    
9901  </p>  </p>
9902  </blockquote><p>  </blockquote><p>
9903    
# Line 4964  Intellectual Property and Copyright Stat Line 9906  Intellectual Property and Copyright Stat
9906          </p>          </p>
9907  <blockquote class="text">  <blockquote class="text">
9908  <p>/* epsilon (empty line ignored) */  <p>/* epsilon (empty line ignored) */
9909                    
9910  </p>  </p>
9911  <p>/ comment  <p>/ comment
9912                    
9913  </p>  </p>
9914  <p>/ command  <p>/ command
9915                    
9916  </p>  </p>
9917  <p>/ error  <p>/ error
9918                    
9919  </p>  </p>
9920  </blockquote><p>  </blockquote><p>
9921    
# Line 4982  Intellectual Property and Copyright Stat Line 9924  Intellectual Property and Copyright Stat
9924          </p>          </p>
9925  <blockquote class="text">  <blockquote class="text">
9926  <p>'#'  <p>'#'
9927                    
9928  </p>  </p>
9929  <p>/ comment '#'  <p>/ comment '#'
9930                    
9931  </p>  </p>
9932  <p>/ comment SP  <p>/ comment SP
9933                    
9934  </p>  </p>
9935  <p>/ comment number  <p>/ comment number
9936                    
9937  </p>  </p>
9938  <p>/ comment string  <p>/ comment string
9939                    
9940  </p>  </p>
9941  </blockquote><p>  </blockquote><p>
9942    
# Line 5002  Intellectual Property and Copyright Stat Line 9944  Intellectual Property and Copyright Stat
9944  <p>command =  <p>command =
9945          </p>          </p>
9946  <blockquote class="text">  <blockquote class="text">
9947  <p>ADD SP CHANNEL  <p>ADD SP add_instruction
9948                    
9949    </p>
9950    <p>/ MAP SP map_instruction
9951                    
9952    </p>
9953    <p>/ UNMAP SP unmap_instruction
9954                    
9955  </p>  </p>
9956  <p>/ GET SP get_instruction  <p>/ GET SP get_instruction
9957                    
9958  </p>  </p>
9959  <p>/ CREATE SP create_instruction  <p>/ CREATE SP create_instruction
9960                    
9961  </p>  </p>
9962  <p>/ DESTROY SP destroy_instruction  <p>/ DESTROY SP destroy_instruction
9963                    
9964  </p>  </p>
9965  <p>/ LIST SP list_instruction  <p>/ LIST SP list_instruction
9966                    
9967  </p>  </p>
9968  <p>/ LOAD SP load_instruction  <p>/ LOAD SP load_instruction
9969                    
9970  </p>  </p>
9971  <p>/ REMOVE SP CHANNEL SP sampler_channel  <p>/ REMOVE SP remove_instruction
9972                    
9973  </p>  </p>
9974  <p>/ SET SP set_instruction  <p>/ SET SP set_instruction
9975                    
9976  </p>  </p>
9977  <p>/ SUBSCRIBE SP subscribe_event  <p>/ SUBSCRIBE SP subscribe_event
9978                    
9979  </p>  </p>
9980  <p>/ UNSUBSCRIBE SP unsubscribe_event  <p>/ UNSUBSCRIBE SP unsubscribe_event
9981                    
9982  </p>  </p>
9983  <p>/ SELECT SP text  <p>/ RESET SP reset_instruction
9984                    
9985  </p>  </p>
9986  <p>/ RESET SP CHANNEL SP sampler_channel  <p>/ CLEAR SP clear_instruction
9987                    
9988    </p>
9989    <p>/ FIND SP find_instruction
9990                    
9991    </p>
9992    <p>/ MOVE SP move_instruction
9993                    
9994    </p>
9995    <p>/ COPY SP copy_instruction
9996                    
9997    </p>
9998    <p>/ EDIT SP edit_instruction
9999                    
10000    </p>
10001    <p>/ FORMAT SP format_instruction
10002                    
10003    </p>
10004    <p>/ SEND SP send_instruction
10005                    
10006  </p>  </p>
10007  <p>/ RESET  <p>/ RESET
10008                    
10009  </p>  </p>
10010  <p>/ QUIT  <p>/ QUIT
10011                    
10012    </p>
10013    </blockquote><p>
10014    
10015  </p>  </p>
10016    <p>add_instruction =
10017            </p>
10018    <blockquote class="text">
10019    <p>CHANNEL
10020                    
10021    </p>
10022    <p>/ DB_INSTRUMENT_DIRECTORY SP db_path
10023                    
10024    </p>
10025    <p>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP db_path SP filename
10026                    
10027    </p>
10028    <p>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP FILE_AS_DIR SP db_path SP filename
10029                    
10030    </p>
10031    <p>/ DB_INSTRUMENTS SP scan_mode SP db_path SP filename
10032                    
10033    </p>
10034    <p>/ DB_INSTRUMENTS SP scan_mode SP FILE_AS_DIR SP db_path SP filename
10035                    
10036    </p>
10037    <p>/ DB_INSTRUMENTS SP NON_MODAL SP db_path SP filename
10038                    
10039    </p>
10040    <p>/ DB_INSTRUMENTS SP NON_MODAL SP db_path SP filename SP instrument_index
10041                    
10042    </p>
10043    <p>/ DB_INSTRUMENTS SP db_path SP filename
10044                    
10045    </p>
10046    <p>/ DB_INSTRUMENTS SP db_path SP filename SP instrument_index
10047                    
10048    </p>
10049    <p>/ MIDI_INSTRUMENT_MAP
10050                    
10051    </p>
10052    <p>/ MIDI_INSTRUMENT_MAP SP map_name
10053                    
10054    </p>
10055  </blockquote><p>  </blockquote><p>
10056    
10057  </p>  </p>
10058  <p>subscribe_event =  <p>subscribe_event =
10059          </p>          </p>
10060  <blockquote class="text">  <blockquote class="text">
10061  <p>CHANNEL_COUNT  <p>AUDIO_OUTPUT_DEVICE_COUNT
10062                    
10063    </p>
10064    <p>/ AUDIO_OUTPUT_DEVICE_INFO
10065                    
10066    </p>
10067    <p>/ MIDI_INPUT_DEVICE_COUNT
10068                    
10069    </p>
10070    <p>/ MIDI_INPUT_DEVICE_INFO
10071                    
10072    </p>
10073    <p>/ CHANNEL_COUNT
10074                    
10075    </p>
10076    <p>/ CHANNEL_MIDI
10077                    
10078    </p>
10079    <p>/ DEVICE_MIDI
10080                    
10081  </p>  </p>
10082  <p>/ VOICE_COUNT  <p>/ VOICE_COUNT
10083                    
10084  </p>  </p>
10085  <p>/ STREAM_COUNT  <p>/ STREAM_COUNT
10086                    
10087  </p>  </p>
10088  <p>/ BUFFER_FILL  <p>/ BUFFER_FILL
10089                    
10090  </p>  </p>
10091  <p>/ CHANNEL_INFO  <p>/ CHANNEL_INFO
10092                    
10093    </p>
10094    <p>/ FX_SEND_COUNT
10095                    
10096    </p>
10097    <p>/ FX_SEND_INFO
10098                    
10099    </p>
10100    <p>/ MIDI_INSTRUMENT_MAP_COUNT
10101                    
10102    </p>
10103    <p>/ MIDI_INSTRUMENT_MAP_INFO
10104                    
10105    </p>
10106    <p>/ MIDI_INSTRUMENT_COUNT
10107                    
10108    </p>
10109    <p>/ MIDI_INSTRUMENT_INFO
10110                    
10111    </p>
10112    <p>/ DB_INSTRUMENT_DIRECTORY_COUNT
10113                    
10114    </p>
10115    <p>/ DB_INSTRUMENT_DIRECTORY_INFO
10116                    
10117    </p>
10118    <p>/ DB_INSTRUMENT_COUNT
10119                    
10120    </p>
10121    <p>/ DB_INSTRUMENT_INFO
10122                    
10123    </p>
10124    <p>/ DB_INSTRUMENTS_JOB_INFO
10125                    
10126  </p>  </p>
10127  <p>/ MISCELLANEOUS  <p>/ MISCELLANEOUS
10128                    
10129    </p>
10130    <p>/ TOTAL_STREAM_COUNT
10131                    
10132    </p>
10133    <p>/ TOTAL_VOICE_COUNT
10134                    
10135    </p>
10136    <p>/ GLOBAL_INFO
10137                    
10138  </p>  </p>
10139  </blockquote><p>  </blockquote><p>
10140    
# Line 5074  Intellectual Property and Copyright Stat Line 10142  Intellectual Property and Copyright Stat
10142  <p>unsubscribe_event =  <p>unsubscribe_event =
10143          </p>          </p>
10144  <blockquote class="text">  <blockquote class="text">
10145  <p>CHANNEL_COUNT  <p>AUDIO_OUTPUT_DEVICE_COUNT
10146                    
10147    </p>
10148    <p>/ AUDIO_OUTPUT_DEVICE_INFO
10149                    
10150    </p>
10151    <p>/ MIDI_INPUT_DEVICE_COUNT
10152                    
10153    </p>
10154    <p>/ MIDI_INPUT_DEVICE_INFO
10155                    
10156    </p>
10157    <p>/ CHANNEL_COUNT
10158                    
10159    </p>
10160    <p>/ CHANNEL_MIDI
10161                    
10162    </p>
10163    <p>/ DEVICE_MIDI
10164                    
10165  </p>  </p>
10166  <p>/ VOICE_COUNT  <p>/ VOICE_COUNT
10167                    
10168  </p>  </p>
10169  <p>/ STREAM_COUNT  <p>/ STREAM_COUNT
10170                    
10171  </p>  </p>
10172  <p>/ BUFFER_FILL  <p>/ BUFFER_FILL
10173                    
10174  </p>  </p>
10175  <p>/ CHANNEL_INFO  <p>/ CHANNEL_INFO
10176                    
10177    </p>
10178    <p>/ FX_SEND_COUNT
10179                    
10180    </p>
10181    <p>/ FX_SEND_INFO
10182                    
10183    </p>
10184    <p>/ MIDI_INSTRUMENT_MAP_COUNT
10185                    
10186    </p>
10187    <p>/ MIDI_INSTRUMENT_MAP_INFO
10188                    
10189    </p>
10190    <p>/ MIDI_INSTRUMENT_COUNT
10191                    
10192    </p>
10193    <p>/ MIDI_INSTRUMENT_INFO
10194                    
10195    </p>
10196    <p>/ DB_INSTRUMENT_DIRECTORY_COUNT
10197                    
10198    </p>
10199    <p>/ DB_INSTRUMENT_DIRECTORY_INFO
10200                    
10201    </p>
10202    <p>/ DB_INSTRUMENT_COUNT
10203                    
10204    </p>
10205    <p>/ DB_INSTRUMENT_INFO
10206                    
10207    </p>
10208    <p>/ DB_INSTRUMENTS_JOB_INFO
10209                    
10210  </p>  </p>
10211  <p>/ MISCELLANEOUS  <p>/ MISCELLANEOUS
10212                    
10213    </p>
10214    <p>/ TOTAL_STREAM_COUNT
10215                    
10216    </p>
10217    <p>/ TOTAL_VOICE_COUNT
10218                    
10219    </p>
10220    <p>/ GLOBAL_INFO
10221                    
10222    </p>
10223    </blockquote><p>
10224    
10225    </p>
10226    <p>map_instruction =
10227            </p>
10228    <blockquote class="text">
10229    <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
10230                    
10231    </p>
10232    <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
10233                    
10234    </p>
10235    <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
10236                    
10237    </p>
10238    <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
10239                    
10240    </p>
10241    </blockquote><p>
10242    
10243    </p>
10244    <p>unmap_instruction =
10245            </p>
10246    <blockquote class="text">
10247    <p>MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog
10248                    
10249    </p>
10250    </blockquote><p>
10251    
10252  </p>  </p>
10253    <p>remove_instruction =
10254            </p>
10255    <blockquote class="text">
10256    <p>CHANNEL SP sampler_channel
10257                    
10258    </p>
10259    <p>/ MIDI_INSTRUMENT_MAP SP midi_map
10260                    
10261    </p>
10262    <p>/ MIDI_INSTRUMENT_MAP SP ALL
10263                    
10264    </p>
10265    <p>/ DB_INSTRUMENT_DIRECTORY SP FORCE SP db_path
10266                    
10267    </p>
10268    <p>/ DB_INSTRUMENT_DIRECTORY SP db_path
10269                    
10270    </p>
10271    <p>/ DB_INSTRUMENT SP db_path
10272                    
10273    </p>
10274  </blockquote><p>  </blockquote><p>
10275    
10276  </p>  </p>
# Line 5099  Intellectual Property and Copyright Stat Line 10278  Intellectual Property and Copyright Stat
10278          </p>          </p>
10279  <blockquote class="text">  <blockquote class="text">
10280  <p>AVAILABLE_ENGINES  <p>AVAILABLE_ENGINES
10281                    
10282  </p>  </p>
10283  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
10284                    
10285  </p>  </p>
10286  <p>/ MIDI_INPUT_DRIVER SP INFO SP string  <p>/ MIDI_INPUT_DRIVER SP INFO SP string
10287                    
10288  </p>  </p>
10289  <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string  <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string
10290                    
10291  </p>  </p>
10292  <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
10293                    
10294  </p>  </p>
10295  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
10296                    
10297  </p>  </p>
10298  <p>/ AUDIO_OUTPUT_DRIVER SP INFO SP string  <p>/ AUDIO_OUTPUT_DRIVER SP INFO SP string
10299                    
10300  </p>  </p>
10301  <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string  <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string
10302                    
10303  </p>  </p>
10304  <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
10305                    
10306  </p>  </p>
10307  <p>/ AUDIO_OUTPUT_DEVICES  <p>/ AUDIO_OUTPUT_DEVICES
10308                    
10309  </p>  </p>
10310  <p>/ MIDI_INPUT_DEVICES  <p>/ MIDI_INPUT_DEVICES
10311                    
10312  </p>  </p>
10313  <p>/ AUDIO_OUTPUT_DEVICE SP INFO SP number  <p>/ AUDIO_OUTPUT_DEVICE SP INFO SP number
10314                    
10315  </p>  </p>
10316  <p>/ MIDI_INPUT_DEVICE SP INFO SP number  <p>/ MIDI_INPUT_DEVICE SP INFO SP number
10317                    
10318  </p>  </p>
10319  <p>/ MIDI_INPUT_PORT SP INFO SP number SP number  <p>/ MIDI_INPUT_PORT SP INFO SP number SP number
10320                    
10321  </p>  </p>
10322  <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
10323                    
10324  </p>  </p>
10325  <p>/ AUDIO_OUTPUT_CHANNEL SP INFO SP number SP number  <p>/ AUDIO_OUTPUT_CHANNEL SP INFO SP number SP number
10326                    
10327  </p>  </p>
10328  <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
10329                    
10330  </p>  </p>
10331  <p>/ CHANNELS  <p>/ CHANNELS
10332                    
10333  </p>  </p>
10334  <p>/ CHANNEL SP INFO SP sampler_channel  <p>/ CHANNEL SP INFO SP sampler_channel
10335                    
10336  </p>  </p>
10337  <p>/ CHANNEL SP BUFFER_FILL SP buffer_size_type SP sampler_channel  <p>/ CHANNEL SP BUFFER_FILL SP buffer_size_type SP sampler_channel
10338                    
10339  </p>  </p>
10340  <p>/ CHANNEL SP STREAM_COUNT SP sampler_channel  <p>/ CHANNEL SP STREAM_COUNT SP sampler_channel
10341                    
10342  </p>  </p>
10343  <p>/ CHANNEL SP VOICE_COUNT SP sampler_channel  <p>/ CHANNEL SP VOICE_COUNT SP sampler_channel
10344                    
10345  </p>  </p>
10346  <p>/ ENGINE SP INFO SP engine_name  <p>/ ENGINE SP INFO SP engine_name
10347                    
10348  </p>  </p>
10349  <p>/ SERVER SP INFO  <p>/ SERVER SP INFO
10350                    
10351    </p>
10352    <p>/ TOTAL_STREAM_COUNT
10353                    
10354    </p>
10355    <p>/ TOTAL_VOICE_COUNT
10356                    
10357    </p>
10358    <p>/ TOTAL_VOICE_COUNT_MAX
10359                    
10360    </p>
10361    <p>/ MIDI_INSTRUMENTS SP midi_map
10362                    
10363    </p>
10364    <p>/ MIDI_INSTRUMENTS SP ALL
10365                    
10366    </p>
10367    <p>/ MIDI_INSTRUMENT SP INFO SP midi_map SP midi_bank SP midi_prog
10368                    
10369    </p>
10370    <p>/ MIDI_INSTRUMENT_MAPS
10371                    
10372    </p>
10373    <p>/ MIDI_INSTRUMENT_MAP SP INFO SP midi_map
10374                    
10375    </p>
10376    <p>/ FX_SENDS SP sampler_channel
10377                    
10378    </p>
10379    <p>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id
10380                    
10381    </p>
10382    <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP db_path
10383                    
10384    </p>
10385    <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path
10386                    
10387    </p>
10388    <p>/ DB_INSTRUMENT_DIRECTORY SP INFO SP db_path
10389                    
10390    </p>
10391    <p>/ DB_INSTRUMENTS SP RECURSIVE SP db_path
10392                    
10393    </p>
10394    <p>/ DB_INSTRUMENTS SP db_path
10395                    
10396    </p>
10397    <p>/ DB_INSTRUMENT SP INFO SP db_path
10398                    
10399    </p>
10400    <p>/ DB_INSTRUMENTS_JOB SP INFO SP number
10401                    
10402    </p>
10403    <p>/ VOLUME
10404                    
10405    </p>
10406    <p>/ VOICES
10407                    
10408    </p>
10409    <p>/ STREAMS
10410                    
10411    </p>
10412    <p>/ FILE SP INSTRUMENTS SP filename
10413                    
10414    </p>
10415    <p>/ FILE SP INSTRUMENT SP INFO SP filename SP instrument_index
10416                    
10417  </p>  </p>
10418  </blockquote><p>  </blockquote><p>
10419    
# Line 5177  Intellectual Property and Copyright Stat Line 10422  Intellectual Property and Copyright Stat
10422          </p>          </p>
10423  <blockquote class="text">  <blockquote class="text">
10424  <p>AUDIO_OUTPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list  <p>AUDIO_OUTPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
10425                    
10426  </p>  </p>
10427  <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
10428                    
10429  </p>  </p>
10430  <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list  <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
10431                    
10432    </p>
10433    <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' NONE
10434                    
10435  </p>  </p>
10436  <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
10437                    
10438  </p>  </p>
10439  <p>/ CHANNEL SP set_chan_instruction  <p>/ CHANNEL SP set_chan_instruction
10440                    
10441    </p>
10442    <p>/ MIDI_INSTRUMENT_MAP SP NAME SP midi_map SP map_name
10443                    
10444    </p>
10445    <p>/ FX_SEND SP NAME SP sampler_channel SP fx_send_id SP fx_send_name
10446                    
10447    </p>
10448    <p>/ FX_SEND SP AUDIO_OUTPUT_CHANNEL SP sampler_channel SP fx_send_id SP audio_channel_index SP audio_channel_index
10449                    
10450    </p>
10451    <p>/ FX_SEND SP MIDI_CONTROLLER SP sampler_channel SP fx_send_id SP midi_ctrl
10452                    
10453    </p>
10454    <p>/ FX_SEND SP LEVEL SP sampler_channel SP fx_send_id SP volume_value
10455                    
10456    </p>
10457    <p>/ DB_INSTRUMENT_DIRECTORY SP NAME SP db_path SP stringval_escaped
10458                    
10459    </p>
10460    <p>/ DB_INSTRUMENT_DIRECTORY SP DESCRIPTION SP db_path SP stringval_escaped
10461                    
10462    </p>
10463    <p>/ DB_INSTRUMENT SP NAME SP db_path SP stringval_escaped
10464                    
10465    </p>
10466    <p>/ DB_INSTRUMENT SP DESCRIPTION SP db_path SP stringval_escaped
10467                    
10468    </p>
10469    <p>/ DB_INSTRUMENT SP FILE_PATH SP filename SP filename
10470                    
10471  </p>  </p>
10472  <p>/ ECHO SP boolean  <p>/ ECHO SP boolean
10473                    
10474    </p>
10475    <p>/ VOLUME SP volume_value
10476                    
10477    </p>
10478    <p>/ VOICES SP number
10479                    
10480    </p>
10481    <p>/ STREAMS SP number
10482                    
10483  </p>  </p>
10484  </blockquote><p>  </blockquote><p>
10485    
# Line 5201  Intellectual Property and Copyright Stat Line 10488  Intellectual Property and Copyright Stat
10488          </p>          </p>
10489  <blockquote class="text">  <blockquote class="text">
10490  <p>AUDIO_OUTPUT_DEVICE SP string SP key_val_list  <p>AUDIO_OUTPUT_DEVICE SP string SP key_val_list
10491                    
10492  </p>  </p>
10493  <p>/ AUDIO_OUTPUT_DEVICE SP string  <p>/ AUDIO_OUTPUT_DEVICE SP string
10494                    
10495  </p>  </p>
10496  <p>/ MIDI_INPUT_DEVICE SP string SP key_val_list  <p>/ MIDI_INPUT_DEVICE SP string SP key_val_list
10497                    
10498  </p>  </p>
10499  <p>/ MIDI_INPUT_DEVICE SP string  <p>/ MIDI_INPUT_DEVICE SP string
10500                    
10501    </p>
10502    <p>/ FX_SEND SP sampler_channel SP midi_ctrl
10503                    
10504    </p>
10505    <p>/ FX_SEND SP sampler_channel SP midi_ctrl SP fx_send_name
10506                    
10507    </p>
10508    </blockquote><p>
10509    
10510  </p>  </p>
10511    <p>reset_instruction =
10512            </p>
10513    <blockquote class="text">
10514    <p>CHANNEL SP sampler_channel
10515                    
10516    </p>
10517    </blockquote><p>
10518    
10519    </p>
10520    <p>clear_instruction =
10521            </p>
10522    <blockquote class="text">
10523    <p>MIDI_INSTRUMENTS SP midi_map
10524                    
10525    </p>
10526    <p>/ MIDI_INSTRUMENTS SP ALL
10527                    
10528    </p>
10529    </blockquote><p>
10530    
10531    </p>
10532    <p>find_instruction =
10533            </p>
10534    <blockquote class="text">
10535    <p>DB_INSTRUMENTS SP NON_RECURSIVE SP db_path SP query_val_list
10536                    
10537    </p>
10538    <p>/ DB_INSTRUMENTS SP db_path SP query_val_list
10539                    
10540    </p>
10541    <p>/ DB_INSTRUMENT_DIRECTORIES SP NON_RECURSIVE SP db_path SP query_val_list
10542                    
10543    </p>
10544    <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path SP query_val_list
10545                    
10546    </p>
10547    <p>/ LOST SP DB_INSTRUMENT_FILES
10548                    
10549    </p>
10550    </blockquote><p>
10551    
10552    </p>
10553    <p>move_instruction =
10554            </p>
10555    <blockquote class="text">
10556    <p>DB_INSTRUMENT_DIRECTORY SP db_path SP db_path
10557                    
10558    </p>
10559    <p>/ DB_INSTRUMENT SP db_path SP db_path
10560                    
10561    </p>
10562    </blockquote><p>
10563    
10564    </p>
10565    <p>copy_instruction =
10566            </p>
10567    <blockquote class="text">
10568    <p>DB_INSTRUMENT_DIRECTORY SP db_path SP db_path
10569                    
10570    </p>
10571    <p>/ DB_INSTRUMENT SP db_path SP db_path
10572                    
10573    </p>
10574  </blockquote><p>  </blockquote><p>
10575    
10576  </p>  </p>
# Line 5219  Intellectual Property and Copyright Stat Line 10578  Intellectual Property and Copyright Stat
10578          </p>          </p>
10579  <blockquote class="text">  <blockquote class="text">
10580  <p>AUDIO_OUTPUT_DEVICE SP number  <p>AUDIO_OUTPUT_DEVICE SP number
10581                    
10582  </p>  </p>
10583  <p>/ MIDI_INPUT_DEVICE SP number  <p>/ MIDI_INPUT_DEVICE SP number
10584                    
10585    </p>
10586    <p>/ FX_SEND SP sampler_channel SP fx_send_id
10587                    
10588  </p>  </p>
10589  </blockquote><p>  </blockquote><p>
10590    
# Line 5231  Intellectual Property and Copyright Stat Line 10593  Intellectual Property and Copyright Stat
10593          </p>          </p>
10594  <blockquote class="text">  <blockquote class="text">
10595  <p>INSTRUMENT SP load_instr_args  <p>INSTRUMENT SP load_instr_args
10596                    
10597  </p>  </p>
10598  <p>/ ENGINE SP load_engine_args  <p>/ ENGINE SP load_engine_args
10599                    
10600  </p>  </p>
10601  </blockquote><p>  </blockquote><p>
10602    
# Line 5243  Intellectual Property and Copyright Stat Line 10605  Intellectual Property and Copyright Stat
10605          </p>          </p>
10606  <blockquote class="text">  <blockquote class="text">
10607  <p>AUDIO_OUTPUT_DEVICE SP sampler_channel SP device_index  <p>AUDIO_OUTPUT_DEVICE SP sampler_channel SP device_index
10608                    
10609  </p>  </p>
10610  <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
10611                    
10612  </p>  </p>
10613  <p>/ AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type_name  <p>/ AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type_name
10614                    
10615  </p>  </p>
10616  <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
10617                    
10618  </p>  </p>
10619  <p>/ MIDI_INPUT_DEVICE SP sampler_channel SP device_index  <p>/ MIDI_INPUT_DEVICE SP sampler_channel SP device_index
10620                    
10621  </p>  </p>
10622  <p>/ MIDI_INPUT_PORT SP sampler_channel SP midi_input_port_index  <p>/ MIDI_INPUT_PORT SP sampler_channel SP midi_input_port_index
10623                    
10624  </p>  </p>
10625  <p>/ MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel_index  <p>/ MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel_index
10626                    
10627  </p>  </p>
10628  <p>/ MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type_name  <p>/ MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type_name
10629                    
10630  </p>  </p>
10631  <p>/ VOLUME SP sampler_channel SP volume_value  <p>/ VOLUME SP sampler_channel SP volume_value
10632                    
10633  </p>  </p>
10634  <p>/ MUTE SP sampler_channel SP boolean  <p>/ MUTE SP sampler_channel SP boolean
10635                    
10636  </p>  </p>
10637  <p>/ SOLO SP sampler_channel SP boolean  <p>/ SOLO SP sampler_channel SP boolean
10638                    
10639    </p>
10640    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP midi_map
10641                    
10642    </p>
10643    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP NONE
10644                    
10645    </p>
10646    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP DEFAULT
10647                    
10648    </p>
10649    </blockquote><p>
10650    
10651    </p>
10652    <p>edit_instruction =
10653            </p>
10654    <blockquote class="text">
10655    <p>CHANNEL SP INSTRUMENT SP sampler_channel
10656                    
10657    </p>
10658    </blockquote><p>
10659    
10660  </p>  </p>
10661    <p>format_instruction =
10662            </p>
10663    <blockquote class="text">
10664    <p>INSTRUMENTS_DB
10665                    
10666    </p>
10667    </blockquote><p>
10668    
10669    </p>
10670    <p>modal_arg =
10671            </p>
10672    <blockquote class="text">
10673    <p>/* epsilon (empty argument) */
10674                    
10675    </p>
10676    <p>/ NON_MODAL SP
10677                    
10678    </p>
10679  </blockquote><p>  </blockquote><p>
10680    
10681  </p>  </p>
# Line 5282  Intellectual Property and Copyright Stat Line 10683  Intellectual Property and Copyright Stat
10683          </p>          </p>
10684  <blockquote class="text">  <blockquote class="text">
10685  <p>string '=' param_val_list  <p>string '=' param_val_list
10686                    
10687  </p>  </p>
10688  <p>/ key_val_list SP string '=' param_val_list  <p>/ key_val_list SP string '=' param_val_list
10689                    
10690  </p>  </p>
10691  </blockquote><p>  </blockquote><p>
10692    
# Line 5294  Intellectual Property and Copyright Stat Line 10695  Intellectual Property and Copyright Stat
10695          </p>          </p>
10696  <blockquote class="text">  <blockquote class="text">
10697  <p>BYTES  <p>BYTES
10698                    
10699  </p>  </p>
10700  <p>/ PERCENTAGE  <p>/ PERCENTAGE
10701                    
10702  </p>  </p>
10703  </blockquote><p>  </blockquote><p>
10704    
# Line 5306  Intellectual Property and Copyright Stat Line 10707  Intellectual Property and Copyright Stat
10707          </p>          </p>
10708  <blockquote class="text">  <blockquote class="text">
10709  <p>AUDIO_OUTPUT_DEVICES  <p>AUDIO_OUTPUT_DEVICES
10710                    
10711  </p>  </p>
10712  <p>/ MIDI_INPUT_DEVICES  <p>/ MIDI_INPUT_DEVICES
10713                    
10714  </p>  </p>
10715  <p>/ CHANNELS  <p>/ CHANNELS
10716                    
10717  </p>  </p>
10718  <p>/ AVAILABLE_ENGINES  <p>/ AVAILABLE_ENGINES
10719                    
10720  </p>  </p>
10721  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS  <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
10722                    
10723  </p>  </p>
10724  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
10725                    
10726    </p>
10727    <p>/ MIDI_INSTRUMENTS SP midi_map
10728                    
10729    </p>
10730    <p>/ MIDI_INSTRUMENTS SP ALL
10731                    
10732    </p>
10733    <p>/ MIDI_INSTRUMENT_MAPS
10734                    
10735    </p>
10736    <p>/ FX_SENDS SP sampler_channel
10737                    
10738    </p>
10739    <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP db_path
10740                    
10741    </p>
10742    <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path
10743                    
10744    </p>
10745    <p>/ DB_INSTRUMENTS SP RECURSIVE SP db_path
10746                    
10747    </p>
10748    <p>/ DB_INSTRUMENTS SP db_path
10749                    
10750    </p>
10751    <p>/ FILE SP INSTRUMENTS SP filename
10752                    
10753    </p>
10754    </blockquote><p>
10755    
10756  </p>  </p>
10757    <p>send_instruction =
10758            </p>
10759    <blockquote class="text">
10760    <p>CHANNEL SP MIDI_DATA SP string SP sampler_channel SP number SP number
10761                    
10762    </p>
10763  </blockquote><p>  </blockquote><p>
10764    
10765  </p>  </p>
# Line 5330  Intellectual Property and Copyright Stat Line 10767  Intellectual Property and Copyright Stat
10767          </p>          </p>
10768  <blockquote class="text">  <blockquote class="text">
10769  <p>filename SP instrument_index SP sampler_channel  <p>filename SP instrument_index SP sampler_channel
10770                    
10771  </p>  </p>
10772  <p>/ NON_MODAL SP filename SP instrument_index SP sampler_channel  <p>/ NON_MODAL SP filename SP instrument_index SP sampler_channel
10773                    
10774  </p>  </p>
10775  </blockquote><p>  </blockquote><p>
10776    
# Line 5342  Intellectual Property and Copyright Stat Line 10779  Intellectual Property and Copyright Stat
10779          </p>          </p>
10780  <blockquote class="text">  <blockquote class="text">
10781  <p>engine_name SP sampler_channel  <p>engine_name SP sampler_channel
10782                    
10783    </p>
10784    </blockquote><p>
10785    
10786  </p>  </p>
10787    <p>instr_load_mode =
10788            </p>
10789    <blockquote class="text">
10790    <p>ON_DEMAND
10791                    
10792    </p>
10793    <p>/ ON_DEMAND_HOLD
10794                    
10795    </p>
10796    <p>/ PERSISTENT
10797                    
10798    </p>
10799  </blockquote><p>  </blockquote><p>
10800    
10801  </p>  </p>
# Line 5351  Intellectual Property and Copyright Stat Line 10803  Intellectual Property and Copyright Stat
10803          </p>          </p>
10804  <blockquote class="text">  <blockquote class="text">
10805  <p>number  <p>number
10806                    
10807  </p>  </p>
10808  </blockquote><p>  </blockquote><p>
10809    
# Line 5360  Intellectual Property and Copyright Stat Line 10812  Intellectual Property and Copyright Stat
10812          </p>          </p>
10813  <blockquote class="text">  <blockquote class="text">
10814  <p>number  <p>number
10815                    
10816  </p>  </p>
10817  </blockquote><p>  </blockquote><p>
10818    
# Line 5369  Intellectual Property and Copyright Stat Line 10821  Intellectual Property and Copyright Stat
10821          </p>          </p>
10822  <blockquote class="text">  <blockquote class="text">
10823  <p>string  <p>string
10824                    
10825  </p>  </p>
10826  </blockquote><p>  </blockquote><p>
10827    
# Line 5378  Intellectual Property and Copyright Stat Line 10830  Intellectual Property and Copyright Stat
10830          </p>          </p>
10831  <blockquote class="text">  <blockquote class="text">
10832  <p>number  <p>number
10833                    
10834  </p>  </p>
10835  </blockquote><p>  </blockquote><p>
10836    
# Line 5387  Intellectual Property and Copyright Stat Line 10839  Intellectual Property and Copyright Stat
10839          </p>          </p>
10840  <blockquote class="text">  <blockquote class="text">
10841  <p>number  <p>number
10842                    
10843  </p>  </p>
10844  <p>/ ALL  <p>/ ALL
10845                    
10846  </p>  </p>
10847  </blockquote><p>  </blockquote><p>
10848    
# Line 5399  Intellectual Property and Copyright Stat Line 10851  Intellectual Property and Copyright Stat
10851          </p>          </p>
10852  <blockquote class="text">  <blockquote class="text">
10853  <p>string  <p>string
10854                    
10855    </p>
10856    </blockquote><p>
10857    
10858    </p>
10859    <p>midi_map =
10860            </p>
10861    <blockquote class="text">
10862    <p>number
10863                    
10864    </p>
10865    </blockquote><p>
10866    
10867    </p>
10868    <p>midi_bank =
10869            </p>
10870    <blockquote class="text">
10871    <p>number
10872                    
10873    </p>
10874    </blockquote><p>
10875    
10876  </p>  </p>
10877    <p>midi_prog =
10878            </p>
10879    <blockquote class="text">
10880    <p>number
10881                    
10882    </p>
10883    </blockquote><p>
10884    
10885    </p>
10886    <p>midi_ctrl =
10887            </p>
10888    <blockquote class="text">
10889    <p>number
10890                    
10891    </p>
10892  </blockquote><p>  </blockquote><p>
10893    
10894  </p>  </p>
# Line 5408  Intellectual Property and Copyright Stat Line 10896  Intellectual Property and Copyright Stat
10896          </p>          </p>
10897  <blockquote class="text">  <blockquote class="text">
10898  <p>dotnum  <p>dotnum
10899                    
10900  </p>  </p>
10901  <p>/ number  <p>/ number
10902                    
10903  </p>  </p>
10904  </blockquote><p>  </blockquote><p>
10905    
# Line 5420  Intellectual Property and Copyright Stat Line 10908  Intellectual Property and Copyright Stat
10908          </p>          </p>
10909  <blockquote class="text">  <blockquote class="text">
10910  <p>number  <p>number
10911                    
10912  </p>  </p>
10913  </blockquote><p>  </blockquote><p>
10914    
# Line 5429  Intellectual Property and Copyright Stat Line 10917  Intellectual Property and Copyright Stat
10917          </p>          </p>
10918  <blockquote class="text">  <blockquote class="text">
10919  <p>number  <p>number
10920                    
10921    </p>
10922    </blockquote><p>
10923    
10924  </p>  </p>
10925    <p>fx_send_id =
10926            </p>
10927    <blockquote class="text">
10928    <p>number
10929                    
10930    </p>
10931  </blockquote><p>  </blockquote><p>
10932    
10933  </p>  </p>
# Line 5438  Intellectual Property and Copyright Stat Line 10935  Intellectual Property and Copyright Stat
10935          </p>          </p>
10936  <blockquote class="text">  <blockquote class="text">
10937  <p>string  <p>string
10938                    
10939  </p>  </p>
10940  </blockquote><p>  </blockquote><p>
10941    
# Line 5446  Intellectual Property and Copyright Stat Line 10943  Intellectual Property and Copyright Stat
10943  <p>filename =  <p>filename =
10944          </p>          </p>
10945  <blockquote class="text">  <blockquote class="text">
10946  <p>stringval  <p>path
10947                    
10948    </p>
10949    </blockquote><p>
10950    
10951    </p>
10952    <p>db_path =
10953            </p>
10954    <blockquote class="text">
10955    <p>path
10956                    
10957    </p>
10958    </blockquote><p>
10959    
10960    </p>
10961    <p>map_name =
10962            </p>
10963    <blockquote class="text">
10964    <p>stringval_escaped
10965                    
10966    </p>
10967    </blockquote><p>
10968    
10969    </p>
10970    <p>entry_name =
10971            </p>
10972    <blockquote class="text">
10973    <p>stringval_escaped
10974                    
10975    </p>
10976    </blockquote><p>
10977    
10978  </p>  </p>
10979    <p>fx_send_name =
10980            </p>
10981    <blockquote class="text">
10982    <p>stringval_escaped
10983                    
10984    </p>
10985  </blockquote><p>  </blockquote><p>
10986    
10987  </p>  </p>
# Line 5456  Intellectual Property and Copyright Stat Line 10989  Intellectual Property and Copyright Stat
10989          </p>          </p>
10990  <blockquote class="text">  <blockquote class="text">
10991  <p>param_val  <p>param_val
10992                    
10993  </p>  </p>
10994  <p>/ param_val_list','param_val  <p>/ param_val_list','param_val
10995                    
10996  </p>  </p>
10997  </blockquote><p>  </blockquote><p>
10998    
# Line 5468  Intellectual Property and Copyright Stat Line 11001  Intellectual Property and Copyright Stat
11001          </p>          </p>
11002  <blockquote class="text">  <blockquote class="text">
11003  <p>string  <p>string
11004                    
11005    </p>
11006    <p>/ stringval
11007                    
11008    </p>
11009    <p>/ number
11010                    
11011    </p>
11012    <p>/ dotnum
11013                    
11014    </p>
11015    </blockquote><p>
11016    
11017  </p>  </p>
11018  <p>/ '\'' string '\''  <p>query_val_list =
11019            </p>
11020    <blockquote class="text">
11021    <p>string '=' query_val
11022                    
11023    </p>
11024    <p>/ query_val_list SP string '=' query_val
11025                    
11026    </p>
11027    </blockquote><p>
11028    
11029  </p>  </p>
11030  <p>/ '\"' string '\"'  <p>query_val =
11031            </p>
11032    <blockquote class="text">
11033    <p>text_escaped
11034                    
11035    </p>
11036    <p>/ stringval_escaped
11037                    
11038    </p>
11039    </blockquote><p>
11040    
11041  </p>  </p>
11042  <p>/ number  <p>scan_mode =
11043            </p>
11044    <blockquote class="text">
11045    <p>RECURSIVE
11046                    
11047    </p>
11048    <p>/ NON_RECURSIVE
11049                    
11050    </p>
11051    <p>/ FLAT
11052                    
11053    </p>
11054    </blockquote><p>
11055    
11056  </p>  </p>
11057  <p>/ dotnum  <a name="character_set"></a><br /><hr />
11058    <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>
11059    <a name="rfc.section.7.1"></a><h3>7.1.&nbsp;
11060    Character Set and Escape Sequences</h3>
11061    
11062    <p>Older versions of this protocol up to and including v1.1 only
11063                    supported the standard ASCII character set (ASCII code 0 - 127)
11064                    <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
11065                    however support the Extended ASCII character set (ASCII code
11066                    0 - 255). The same group of younger protocols also support
11067                    escape sequences, but only for certain, explicitly declared
11068                    parts of the protocol. The supported escape sequences are
11069                    defined as follows:
11070    </p><table class="full" align="center" border="0" cellpadding="2" cellspacing="2">
11071    <col align="left"><col align="left">
11072    <tr><th align="left">ASCII Character Sequence</th><th align="left">Translated into (Name)</th></tr>
11073    <tr>
11074    <td align="left">\n</td>
11075    <td align="left">new line</td>
11076    </tr>
11077    <tr>
11078    <td align="left">\r</td>
11079    <td align="left">carriage return</td>
11080    </tr>
11081    <tr>
11082    <td align="left">\f</td>
11083    <td align="left">form feed</td>
11084    </tr>
11085    <tr>
11086    <td align="left">\t</td>
11087    <td align="left">horizontal tab</td>
11088    </tr>
11089    <tr>
11090    <td align="left">\v</td>
11091    <td align="left">vertical tab</td>
11092    </tr>
11093    <tr>
11094    <td align="left">\'</td>
11095    <td align="left">apostrophe</td>
11096    </tr>
11097    <tr>
11098    <td align="left">\"</td>
11099    <td align="left">quotation mark</td>
11100    </tr>
11101    <tr>
11102    <td align="left">\\</td>
11103    <td align="left">backslash</td>
11104    </tr>
11105    <tr>
11106    <td align="left">\OOO</td>
11107    <td align="left">three digit octal ASCII code of the character</td>
11108    </tr>
11109    <tr>
11110    <td align="left">\xHH</td>
11111    <td align="left">two digit hex ASCII code of the character</td>
11112    </tr>
11113    </table>
11114    <br clear="all" />
11115    
11116    <p>Notice: due to the transition of certain parts of the
11117                    protocol which now support escape sequences, a slight backward
11118                    incompatibility to protocols version v1.1 and younger has been
11119                    introduced. The only difference is that in parts of the protocol
11120                    where escape characters are now supported, a backslash characters
11121                    MUST be escaped as well (that is as double backslash), whereas
11122                    in the old versions a single backslash was sufficient.
11123    </p>
11124    <p>The following LSCP commands support escape sequences as part
11125                    of their filename / path based arguments and / or may contain
11126                    a filename / path with escape sequences in their response:
11127                    </p>
11128    <blockquote class="text">
11129    <p><a class='info' href='#LOAD INSTRUMENT'>"LOAD INSTRUMENT"<span> (</span><span class='info'>Loading an instrument</span><span>)</span></a>
11130    </p>
11131    <p><a class='info' href='#GET CHANNEL INFO'>"GET CHANNEL INFO"<span> (</span><span class='info'>Getting sampler channel information</span><span>)</span></a>
11132    </p>
11133    <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>
11134    </p>
11135    <p><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>
11136    </p>
11137    <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>
11138    </p>
11139    <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>
11140    </p>
11141    <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>
11142    </p>
11143    <p><a class='info' href='#REMOVE DB_INSTRUMENT'>"REMOVE DB_INSTRUMENT"<span> (</span><span class='info'>Removing an instrument</span><span>)</span></a>
11144    </p>
11145    <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>
11146    </p>
11147    <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>
11148    </p>
11149    <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>
11150    </p>
11151    <p><a class='info' href='#GET DB_INSTRUMENTS'>"GET DB_INSTRUMENTS"<span> (</span><span class='info'>Getting amount of instruments</span><span>)</span></a>
11152    </p>
11153    <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>
11154    </p>
11155    <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>
11156    </p>
11157    <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>
11158    </p>
11159    <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>
11160    </p>
11161    <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>
11162    </p>
11163    <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>
11164    </p>
11165    <p><a class='info' href='#FIND DB_INSTRUMENTS'>"FIND DB_INSTRUMENTS"<span> (</span><span class='info'>Finding instruments</span><span>)</span></a>
11166    </p>
11167    <p><a class='info' href='#FIND DB_INSTRUMENT_DIRECTORIES'>"FIND DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Finding directories</span><span>)</span></a>
11168    </p>
11169    <p><a class='info' href='#MOVE DB_INSTRUMENT'>"MOVE DB_INSTRUMENT"<span> (</span><span class='info'>Moving an instrument</span><span>)</span></a>
11170    </p>
11171    <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>
11172    </p>
11173    <p><a class='info' href='#COPY DB_INSTRUMENT'>"COPY DB_INSTRUMENT"<span> (</span><span class='info'>Copying instruments</span><span>)</span></a>
11174    </p>
11175    <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>
11176    </p>
11177    <p><a class='info' href='#FIND LOST DB_INSTRUMENT_FILES'>"FIND LOST DB_INSTRUMENT_FILES"<span> (</span><span class='info'>Checking for lost instrument files</span><span>)</span></a>
11178    </p>
11179    <p><a class='info' href='#SET DB_INSTRUMENT FILE_PATH'>"SET DB_INSTRUMENT FILE_PATH"<span> (</span><span class='info'>Replacing an instrument file</span><span>)</span></a>
11180    </p>
11181    <p><a class='info' href='#GET FILE INSTRUMENTS'>"GET FILE INSTRUMENTS"<span> (</span><span class='info'>Retrieving amount of instruments of a file</span><span>)</span></a>
11182    </p>
11183    <p><a class='info' href='#LIST FILE INSTRUMENTS'>"LIST FILE INSTRUMENTS"<span> (</span><span class='info'>Retrieving all instruments of a file</span><span>)</span></a>
11184    </p>
11185    <p><a class='info' href='#GET FILE INSTRUMENT INFO'>"GET FILE INSTRUMENT INFO"<span> (</span><span class='info'>Retrieving informations about one instrument in a file</span><span>)</span></a>
11186  </p>  </p>
11187  </blockquote><p>  </blockquote><p>
11188                    Note that the forward slash character ('/') has a special meaning in
11189                    filename / path based arguments: it acts as separator of the nodes in
11190                    the path, thus if a directory- or filename includes a forward slash
11191                    (not intended as path node separator), you MUST escape that slash
11192                    either with the respective hex escape sequence ("\x2f") or with the
11193                    respective octal escape sequence ("\057").
11194                    
11195    </p>
11196    <p>
11197                    Note for Windows: file path arguments in LSCP are expected
11198                    to use forward slashes as directory node separator similar
11199                    to Unix based operating systems. In contrast to Unix however
11200                    a Windows typical drive character is expected to be
11201                    prefixed to the path. That is an original Windows file path
11202                    like "D:\Sounds\My.gig" would become in LSCP:
11203                    "D:/Sounds/My.gig".
11204                    
11205    </p>
11206    <p>
11207                    The following LSCP commands even support escape sequences as
11208                    part of at least one of their text-based arguments (i.e. entity name,
11209                    description) and / or may contain escape sequences in at least one of
11210                    their text-based fields in their response:
11211                    </p>
11212    <blockquote class="text">
11213    <p><a class='info' href='#GET SERVER INFO'>"GET SERVER INFO"<span> (</span><span class='info'>General sampler informations</span><span>)</span></a>
11214    </p>
11215    <p><a class='info' href='#GET ENGINE INFO'>"GET ENGINE INFO"<span> (</span><span class='info'>Getting information about an engine</span><span>)</span></a>
11216    </p>
11217    <p><a class='info' href='#GET CHANNEL INFO'>"GET CHANNEL INFO"<span> (</span><span class='info'>Getting sampler channel information</span><span>)</span></a>
11218    </p>
11219    <p><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>
11220    </p>
11221    <p><a class='info' href='#GET FX_SEND INFO'>"GET FX_SEND INFO"<span> (</span><span class='info'>Getting effect send information</span><span>)</span></a>
11222    </p>
11223    <p><a class='info' href='#SET FX_SEND NAME'>"SET FX_SEND NAME"<span> (</span><span class='info'>Changing effect send's name</span><span>)</span></a>
11224    </p>
11225    <p><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>
11226    </p>
11227    <p><a class='info' href='#GET MIDI_INSTRUMENT_MAP INFO'>"GET MIDI_INSTRUMENT_MAP INFO"<span> (</span><span class='info'>Getting MIDI instrument map information</span><span>)</span></a>
11228    </p>
11229    <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>
11230    </p>
11231    <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>
11232    </p>
11233    <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>
11234    </p>
11235    <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>
11236    </p>
11237    <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>
11238    </p>
11239    <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>
11240    </p>
11241    <p><a class='info' href='#FIND DB_INSTRUMENT_DIRECTORIES'>"FIND DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Finding directories</span><span>)</span></a>
11242    </p>
11243    <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>
11244    </p>
11245    <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>
11246    </p>
11247    <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>
11248    </p>
11249    <p><a class='info' href='#FIND DB_INSTRUMENTS'>"FIND DB_INSTRUMENTS"<span> (</span><span class='info'>Finding instruments</span><span>)</span></a>
11250    </p>
11251    </blockquote><p>
11252                    Please note that these lists are manually maintained. If you
11253                    find a command that also supports escape sequences we forgot to
11254                    mention here, please report it!
11255                    
11256  </p>  </p>
11257  <a name="events"></a><br /><hr />  <a name="events"></a><br /><hr />
11258  <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>
11259  <a name="rfc.section.8"></a><h3>8.&nbsp;Events</h3>  <a name="rfc.section.8"></a><h3>8.&nbsp;
11260    Events</h3>
11261    
11262  <p>This chapter will describe all currently defined events supported by LinuxSampler.  <p>This chapter will describe all currently defined events supported by LinuxSampler.
11263  </p>  </p>
11264  <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 />
11265    <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>
11266    <a name="rfc.section.8.1"></a><h3>8.1.&nbsp;
11267    Number of audio output devices changed</h3>
11268    
11269    <p>Client may want to be notified when the total number of audio output devices on the
11270                    back-end changes by issuing the following command:
11271    </p>
11272    <p>
11273                        </p>
11274    <blockquote class="text">
11275    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT
11276    </p>
11277    </blockquote><p>
11278                    
11279    </p>
11280    <p>Server will start sending the following notification messages:
11281    </p>
11282    <p>
11283                        </p>
11284    <blockquote class="text">
11285    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_COUNT:&lt;devices&gt;"
11286    </p>
11287    </blockquote><p>
11288                    
11289    </p>
11290    <p>where &lt;devices&gt; will be replaced by the new number
11291                    of audio output devices.
11292    </p>
11293    <a name="SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO"></a><br /><hr />
11294    <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>
11295    <a name="rfc.section.8.2"></a><h3>8.2.&nbsp;
11296    Audio output device's settings changed</h3>
11297    
11298    <p>Client may want to be notified when changes were made to audio output devices on the
11299                    back-end by issuing the following command:
11300    </p>
11301    <p>
11302                        </p>
11303    <blockquote class="text">
11304    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO
11305    </p>
11306    </blockquote><p>
11307                    
11308    </p>
11309    <p>Server will start sending the following notification messages:
11310    </p>
11311    <p>
11312                        </p>
11313    <blockquote class="text">
11314    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_INFO:&lt;device-id&gt;"
11315    </p>
11316    </blockquote><p>
11317                    
11318    </p>
11319    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the audio output device,
11320                    which settings has been changed. The front-end will have to send
11321                    the respective command to actually get the audio output device info. Because these messages
11322                    will be triggered by LSCP commands issued by other clients rather than real
11323                    time events happening on the server, it is believed that an empty notification
11324                    message is sufficient here.
11325    </p>
11326    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_COUNT"></a><br /><hr />
11327    <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>
11328    <a name="rfc.section.8.3"></a><h3>8.3.&nbsp;
11329    Number of MIDI input devices changed</h3>
11330    
11331    <p>Client may want to be notified when the total number of MIDI input devices on the
11332                    back-end changes by issuing the following command:
11333    </p>
11334    <p>
11335                        </p>
11336    <blockquote class="text">
11337    <p>SUBSCRIBE MIDI_INPUT_DEVICE_COUNT
11338    </p>
11339    </blockquote><p>
11340                    
11341    </p>
11342    <p>Server will start sending the following notification messages:
11343    </p>
11344    <p>
11345                        </p>
11346    <blockquote class="text">
11347    <p>"NOTIFY:MIDI_INPUT_DEVICE_COUNT:&lt;devices&gt;"
11348    </p>
11349    </blockquote><p>
11350                    
11351    </p>
11352    <p>where &lt;devices&gt; will be replaced by the new number
11353                    of MIDI input devices.
11354    </p>
11355    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_INFO"></a><br /><hr />
11356    <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>
11357    <a name="rfc.section.8.4"></a><h3>8.4.&nbsp;
11358    MIDI input device's settings changed</h3>
11359    
11360    <p>Client may want to be notified when changes were made to MIDI input devices on the
11361                    back-end by issuing the following command:
11362    </p>
11363    <p>
11364                        </p>
11365    <blockquote class="text">
11366    <p>SUBSCRIBE MIDI_INPUT_DEVICE_INFO
11367    </p>
11368    </blockquote><p>
11369                    
11370    </p>
11371    <p>Server will start sending the following notification messages:
11372    </p>
11373    <p>
11374                        </p>
11375    <blockquote class="text">
11376    <p>"NOTIFY:MIDI_INPUT_DEVICE_INFO:&lt;device-id&gt;"
11377    </p>
11378    </blockquote><p>
11379                    
11380    </p>
11381    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the MIDI input device,
11382                    which settings has been changed. The front-end will have to send
11383                    the respective command to actually get the MIDI input device info. Because these messages
11384                    will be triggered by LSCP commands issued by other clients rather than real
11385                    time events happening on the server, it is believed that an empty notification
11386                    message is sufficient here.
11387    </p>
11388    <a name="SUBSCRIBE CHANNEL_COUNT"></a><br /><hr />
11389    <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>
11390    <a name="rfc.section.8.5"></a><h3>8.5.&nbsp;
11391    Number of sampler channels changed</h3>
11392    
11393  <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
11394                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
# Line 5502  Intellectual Property and Copyright Stat Line 11399  Intellectual Property and Copyright Stat
11399  <p>SUBSCRIBE CHANNEL_COUNT  <p>SUBSCRIBE CHANNEL_COUNT
11400  </p>  </p>
11401  </blockquote><p>  </blockquote><p>
11402                    
11403  </p>  </p>
11404  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
11405  </p>  </p>
# Line 5512  Intellectual Property and Copyright Stat Line 11409  Intellectual Property and Copyright Stat
11409  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"
11410  </p>  </p>
11411  </blockquote><p>  </blockquote><p>
11412                    
11413  </p>  </p>
11414  <p>where &lt;channels&gt; will be replaced by the new number  <p>where &lt;channels&gt; will be replaced by the new number
11415                  of sampler channels.                  of sampler channels.
11416  </p>  </p>
11417  <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 CHANNEL_MIDI"></a><br /><hr />
11418    <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>
11419    <a name="rfc.section.8.6"></a><h3>8.6.&nbsp;
11420    MIDI data on a sampler channel arrived</h3>
11421    
11422    <p>Client may want to be notified when MIDI data arrive on sampler channels on
11423                    back-end side, by issuing the following command:
11424    </p>
11425    <p>
11426                        </p>
11427    <blockquote class="text">
11428    <p>SUBSCRIBE CHANNEL_MIDI
11429    </p>
11430    </blockquote><p>
11431                    
11432    </p>
11433    <p>Server will start sending one of the the following notification messages:
11434    </p>
11435    <p>
11436                        </p>
11437    <blockquote class="text">
11438    <p>"NOTIFY:CHANNEL_MIDI:&lt;channel-id&gt; NOTE_ON  &lt;note&gt; &lt;velocity&gt;"
11439    </p>
11440    <p>"NOTIFY:CHANNEL_MIDI:&lt;channel-id&gt; NOTE_OFF &lt;note&gt; &lt;velocity&gt;"
11441    </p>
11442    </blockquote><p>
11443                    
11444    </p>
11445    <p>where &lt;channel-id&gt; will be replaced by the ID of the sampler channel where the MIDI
11446                    data arrived. &lt;note&gt; and &lt;velocity&gt; are integer values in the range between
11447                    0 .. 127, reflecting the analog meaning of the MIDI specification.
11448                    
11449    </p>
11450    <p>CAUTION: no guarantee whatsoever will be made that MIDI events are actually all
11451                    delivered by this mechanism! With other words: events could be lost at any time!
11452                    This restriction was made to keep the RT-safeness of the backend's MIDI and audio
11453                    thread unaffected by this feature.
11454    </p>
11455    <a name="SUBSCRIBE DEVICE_MIDI"></a><br /><hr />
11456    <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>
11457    <a name="rfc.section.8.7"></a><h3>8.7.&nbsp;
11458    MIDI data on a MIDI input device arrived</h3>
11459    
11460    <p>Client may want to be notified when MIDI data arrive on MIDI input devices by issuing the following command:
11461    </p>
11462    <p>
11463                                </p>
11464    <blockquote class="text">
11465    <p>SUBSCRIBE DEVICE_MIDI
11466    </p>
11467    </blockquote><p>
11468                        
11469    </p>
11470    <p>Server will start sending one of the the following notification messages:
11471    </p>
11472    <p>
11473                                </p>
11474    <blockquote class="text">
11475    <p>"NOTIFY:DEVICE_MIDI:&lt;device-id&gt; &lt;port-id&gt; NOTE_ON &lt;note&gt; &lt;velocity&gt;"
11476    </p>
11477    <p>"NOTIFY:DEVICE_MIDI:&lt;device-id&gt; &lt;port-id&gt; NOTE_OFF &lt;note&gt; &lt;velocity&gt;"
11478    </p>
11479    </blockquote><p>
11480                        
11481    </p>
11482    <p>where &lt;device-id&gt; &lt;port-id&gt; will be replaced
11483                           by the IDs of the respective MIDI input device and the device's MIDI port where the MIDI
11484                           data arrived. &lt;note&gt; and &lt;velocity&gt; are integer values in the range between
11485                           0 .. 127, reflecting the analog meaning of the MIDI specification.
11486                        
11487    </p>
11488    <p>CAUTION: no guarantee whatsoever will be made that MIDI events are actually all
11489                           delivered by this mechanism! With other words: events could be lost at any time!
11490                           This restriction was made to keep the RT-safeness of the backend's MIDI and audio
11491                           thread unaffected by this feature.
11492    </p>
11493    <a name="SUBSCRIBE VOICE_COUNT"></a><br /><hr />
11494    <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>
11495    <a name="rfc.section.8.8"></a><h3>8.8.&nbsp;
11496    Number of active voices changed</h3>
11497    
11498  <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
11499                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
# Line 5528  Intellectual Property and Copyright Stat Line 11504  Intellectual Property and Copyright Stat
11504  <p>SUBSCRIBE VOICE_COUNT  <p>SUBSCRIBE VOICE_COUNT
11505  </p>  </p>
11506  </blockquote><p>  </blockquote><p>
11507                    
11508  </p>  </p>
11509  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
11510  </p>  </p>
11511  <p>  <p>
11512                      </p>                      </p>
11513  <blockquote class="text">  <blockquote class="text">
11514  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;"
11515  </p>  </p>
11516  </blockquote><p>  </blockquote><p>
11517                    
11518  </p>  </p>
11519  <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
11520                  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
11521                  active voices on that channel.                  active voices on that channel.
11522  </p>  </p>
11523  <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 />
11524    <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>
11525    <a name="rfc.section.8.9"></a><h3>8.9.&nbsp;
11526    Number of active disk streams changed</h3>
11527    
11528  <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
11529                  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 11534  Intellectual Property and Copyright Stat
11534  <p>SUBSCRIBE STREAM_COUNT  <p>SUBSCRIBE STREAM_COUNT
11535  </p>  </p>
11536  </blockquote><p>  </blockquote><p>
11537                    
11538  </p>  </p>
11539  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
11540  </p>  </p>
# Line 5565  Intellectual Property and Copyright Stat Line 11544  Intellectual Property and Copyright Stat
11544  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"
11545  </p>  </p>
11546  </blockquote><p>  </blockquote><p>
11547                    
11548  </p>  </p>
11549  <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
11550                  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
11551                  active disk streams on that channel.                  active disk streams on that channel.
11552  </p>  </p>
11553  <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 />
11554    <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>
11555    <a name="rfc.section.8.10"></a><h3>8.10.&nbsp;
11556    Disk stream buffer fill state changed</h3>
11557    
11558  <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
11559                  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 11564  Intellectual Property and Copyright Stat
11564  <p>SUBSCRIBE BUFFER_FILL  <p>SUBSCRIBE BUFFER_FILL
11565  </p>  </p>
11566  </blockquote><p>  </blockquote><p>
11567                    
11568  </p>  </p>
11569  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
11570  </p>  </p>
# Line 5592  Intellectual Property and Copyright Stat Line 11574  Intellectual Property and Copyright Stat
11574  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"
11575  </p>  </p>
11576  </blockquote><p>  </blockquote><p>
11577                    
11578  </p>  </p>
11579  <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
11580                  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
11581                  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>
11582                  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.
11583  </p>  </p>
11584  <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 />
11585    <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>
11586    <a name="rfc.section.8.11"></a><h3>8.11.&nbsp;
11587    Channel information changed</h3>
11588    
11589  <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
11590                  back-end by issuing the following command:                  back-end by issuing the following command:
# Line 5610  Intellectual Property and Copyright Stat Line 11595  Intellectual Property and Copyright Stat
11595  <p>SUBSCRIBE CHANNEL_INFO  <p>SUBSCRIBE CHANNEL_INFO
11596  </p>  </p>
11597  </blockquote><p>  </blockquote><p>
11598                    
11599  </p>  </p>
11600  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
11601  </p>  </p>
# Line 5620  Intellectual Property and Copyright Stat Line 11605  Intellectual Property and Copyright Stat
11605  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"
11606  </p>  </p>
11607  </blockquote><p>  </blockquote><p>
11608                    
11609  </p>  </p>
11610  <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
11611                  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 11614  Intellectual Property and Copyright Stat
11614                  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
11615                  message is sufficient here.                  message is sufficient here.
11616  </p>  </p>
11617  <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 />
11618    <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>
11619    <a name="rfc.section.8.12"></a><h3>8.12.&nbsp;
11620    Number of effect sends changed</h3>
11621    
11622    <p>Client may want to be notified when the number of effect sends on
11623                    a particular sampler channel is changed by issuing the following command:
11624    </p>
11625    <p>
11626                        </p>
11627    <blockquote class="text">
11628    <p>SUBSCRIBE FX_SEND_COUNT
11629    </p>
11630    </blockquote><p>
11631                    
11632    </p>
11633    <p>Server will start sending the following notification messages:
11634    </p>
11635    <p>
11636                        </p>
11637    <blockquote class="text">
11638    <p>"NOTIFY:FX_SEND_COUNT:&lt;channel-id&gt; &lt;fx-sends&gt;"
11639    </p>
11640    </blockquote><p>
11641                    
11642    </p>
11643    <p>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
11644                    channel, on which the effect sends number is changed and &lt;fx-sends&gt; will
11645                    be replaced by the new number of effect sends on that channel.
11646    </p>
11647    <a name="SUBSCRIBE FX_SEND_INFO"></a><br /><hr />
11648    <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>
11649    <a name="rfc.section.8.13"></a><h3>8.13.&nbsp;
11650    Effect send information changed</h3>
11651    
11652    <p>Client may want to be notified when changes were made to effect sends on a
11653                    a particular sampler channel by issuing the following command:
11654    </p>
11655    <p>
11656                        </p>
11657    <blockquote class="text">
11658    <p>SUBSCRIBE FX_SEND_INFO
11659    </p>
11660    </blockquote><p>
11661                    
11662    </p>
11663    <p>Server will start sending the following notification messages:
11664    </p>
11665    <p>
11666                        </p>
11667    <blockquote class="text">
11668    <p>"NOTIFY:FX_SEND_INFO:&lt;channel-id&gt; &lt;fx-send-id&gt;"
11669    </p>
11670    </blockquote><p>
11671                    
11672    </p>
11673    <p>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
11674                    channel, on which an effect send entity is changed and &lt;fx-send-id&gt; will
11675                    be replaced by the numerical ID of the changed effect send.
11676    </p>
11677    <a name="SUBSCRIBE TOTAL_VOICE_COUNT"></a><br /><hr />
11678    <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>
11679    <a name="rfc.section.8.14"></a><h3>8.14.&nbsp;
11680    Total number of active voices changed</h3>
11681    
11682    <p>Client may want to be notified when the total number of voices on the
11683                    back-end changes by issuing the following command:
11684    </p>
11685    <p>
11686                        </p>
11687    <blockquote class="text">
11688    <p>SUBSCRIBE TOTAL_VOICE_COUNT
11689    </p>
11690    </blockquote><p>
11691                    
11692    </p>
11693    <p>Server will start sending the following notification messages:
11694    </p>
11695    <p>
11696                        </p>
11697    <blockquote class="text">
11698    <p>"NOTIFY:TOTAL_VOICE_COUNT:&lt;voices&gt;"
11699    </p>
11700    </blockquote><p>
11701                    
11702    </p>
11703    <p>where &lt;voices&gt; will be replaced by the new number of
11704                    all currently active voices.
11705    </p>
11706    <a name="SUBSCRIBE TOTAL_STREAM_COUNT"></a><br /><hr />
11707    <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>
11708    <a name="rfc.section.8.15"></a><h3>8.15.&nbsp;
11709    Total number of active disk streams changed</h3>
11710    
11711    <p>Client may want to be notified when the total number of disk streams on the
11712                    back-end changes by issuing the following command:
11713    </p>
11714    <p>
11715                        </p>
11716    <blockquote class="text">
11717    <p>SUBSCRIBE TOTAL_STREAM_COUNT
11718    </p>
11719    </blockquote><p>
11720                    
11721    </p>
11722    <p>Server will start sending the following notification messages:
11723    </p>
11724    <p>
11725                        </p>
11726    <blockquote class="text">
11727    <p>"NOTIFY:TOTAL_STREAM_COUNT:&lt;streams&gt;"
11728    </p>
11729    </blockquote><p>
11730                    
11731    </p>
11732    <p>where &lt;streams&gt; will be replaced by the new number of
11733                    all currently active disk streams.
11734    </p>
11735    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT"></a><br /><hr />
11736    <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>
11737    <a name="rfc.section.8.16"></a><h3>8.16.&nbsp;
11738    Number of MIDI instrument maps changed</h3>
11739    
11740    <p>Client may want to be notified when the number of MIDI instrument maps on the
11741                    back-end changes by issuing the following command:
11742    </p>
11743    <p>
11744                        </p>
11745    <blockquote class="text">
11746    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT
11747    </p>
11748    </blockquote><p>
11749                    
11750    </p>
11751    <p>Server will start sending the following notification messages:
11752    </p>
11753    <p>
11754                        </p>
11755    <blockquote class="text">
11756    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_COUNT:&lt;maps&gt;"
11757    </p>
11758    </blockquote><p>
11759                    
11760    </p>
11761    <p>where &lt;maps&gt; will be replaced by the new number
11762                    of MIDI instrument maps.
11763    </p>
11764    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO"></a><br /><hr />
11765    <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>
11766    <a name="rfc.section.8.17"></a><h3>8.17.&nbsp;
11767    MIDI instrument map information changed</h3>
11768    
11769    <p>Client may want to be notified when changes were made to MIDI instrument maps on the
11770                    back-end by issuing the following command:
11771    </p>
11772    <p>
11773                        </p>
11774    <blockquote class="text">
11775    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO
11776    </p>
11777    </blockquote><p>
11778                    
11779    </p>
11780    <p>Server will start sending the following notification messages:
11781    </p>
11782    <p>
11783                        </p>
11784    <blockquote class="text">
11785    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_INFO:&lt;map-id&gt;"
11786    </p>
11787    </blockquote><p>
11788                    
11789    </p>
11790    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
11791                    for which information changes occurred. The front-end will have to send
11792                    the respective command to actually get the MIDI instrument map info. Because these messages
11793                    will be triggered by LSCP commands issued by other clients rather than real
11794                    time events happening on the server, it is believed that an empty notification
11795                    message is sufficient here.
11796    </p>
11797    <a name="SUBSCRIBE MIDI_INSTRUMENT_COUNT"></a><br /><hr />
11798    <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>
11799    <a name="rfc.section.8.18"></a><h3>8.18.&nbsp;
11800    Number of MIDI instruments changed</h3>
11801    
11802    <p>Client may want to be notified when the number of MIDI instrument maps on the
11803                    back-end changes by issuing the following command:
11804    </p>
11805    <p>
11806                        </p>
11807    <blockquote class="text">
11808    <p>SUBSCRIBE MIDI_INSTRUMENT_COUNT
11809    </p>
11810    </blockquote><p>
11811                    
11812    </p>
11813    <p>Server will start sending the following notification messages:
11814    </p>
11815    <p>
11816                        </p>
11817    <blockquote class="text">
11818    <p>"NOTIFY:MIDI_INSTRUMENT_COUNT:&lt;map-id&gt; &lt;instruments&gt;"
11819    </p>
11820    </blockquote><p>
11821                    
11822    </p>
11823    <p>where &lt;map-id&gt; is the numerical ID of the MIDI instrument map, in which
11824                    the nuber of instruments has changed and &lt;instruments&gt; will be replaced by
11825                    the new number of MIDI instruments in the specified map.
11826    </p>
11827    <a name="SUBSCRIBE MIDI_INSTRUMENT_INFO"></a><br /><hr />
11828    <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>
11829    <a name="rfc.section.8.19"></a><h3>8.19.&nbsp;
11830    MIDI instrument information changed</h3>
11831    
11832    <p>Client may want to be notified when changes were made to MIDI instruments on the
11833                    back-end by issuing the following command:
11834    </p>
11835    <p>
11836                        </p>
11837    <blockquote class="text">
11838    <p>SUBSCRIBE MIDI_INSTRUMENT_INFO
11839    </p>
11840    </blockquote><p>
11841                    
11842    </p>
11843    <p>Server will start sending the following notification messages:
11844    </p>
11845    <p>
11846                        </p>
11847    <blockquote class="text">
11848    <p>"NOTIFY:MIDI_INSTRUMENT_INFO:&lt;map-id&gt; &lt;bank&gt; &lt;program&gt;"
11849    </p>
11850    </blockquote><p>
11851                    
11852    </p>
11853    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
11854                    in which a MIDI instrument is changed. &lt;bank&gt; and &lt;program&gt; specifies
11855                    the location of the changed MIDI instrument in the map. The front-end will have to send
11856                    the respective command to actually get the MIDI instrument info. Because these messages
11857                    will be triggered by LSCP commands issued by other clients rather than real
11858                    time events happening on the server, it is believed that an empty notification
11859                    message is sufficient here.
11860    </p>
11861    <a name="SUBSCRIBE GLOBAL_INFO"></a><br /><hr />
11862    <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>
11863    <a name="rfc.section.8.20"></a><h3>8.20.&nbsp;
11864    Global settings changed</h3>
11865    
11866    <p>Client may want to be notified when changes to the global settings
11867                    of the sampler were made by issuing the following command:
11868    </p>
11869    <p>
11870                        </p>
11871    <blockquote class="text">
11872    <p>SUBSCRIBE GLOBAL_INFO
11873    </p>
11874    </blockquote><p>
11875                    
11876    </p>
11877    <p>Server will start sending the following types of notification messages:
11878    </p>
11879    <p>
11880                        </p>
11881    <blockquote class="text">
11882    <p>"NOTIFY:GLOBAL_INFO:VOLUME &lt;volume&gt;" - Notifies that the
11883                            golbal volume of the sampler is changed, where &lt;volume&gt; will be
11884                            replaced by the optional dotted floating point value, reflecting the
11885                            new global volume parameter.
11886    </p>
11887    </blockquote><p>
11888                        </p>
11889    <blockquote class="text">
11890    <p>"NOTIFY:GLOBAL_INFO:VOICES &lt;max-voices&gt;" - Notifies that the
11891                            golbal limit of the sampler for maximum voices is changed, where
11892                            &lt;max-voices&gt; will be an integer value, reflecting the
11893                            new global voice limit parameter.
11894    </p>
11895    </blockquote><p>
11896                        </p>
11897    <blockquote class="text">
11898    <p>"NOTIFY:GLOBAL_INFO:STREAMS &lt;max-streams&gt;" - Notifies that the
11899                            golbal limit of the sampler for maximum disk streams is changed, where
11900                            &lt;max-streams&gt; will be an integer value, reflecting the
11901                            new global disk streams limit parameter.
11902    </p>
11903    </blockquote><p>
11904                    
11905    </p>
11906    <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT"></a><br /><hr />
11907    <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>
11908    <a name="rfc.section.8.21"></a><h3>8.21.&nbsp;
11909    Number of database instrument directories changed</h3>
11910    
11911    <p>Client may want to be notified when the number of instrument
11912                    directories in a particular directory in the instruments database
11913                    is changed by issuing the following command:
11914    </p>
11915    <p>
11916                        </p>
11917    <blockquote class="text">
11918    <p>SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT
11919    </p>
11920    </blockquote><p>
11921                    
11922    </p>
11923    <p>Server will start sending the following notification messages:
11924    </p>
11925    <p>
11926                        </p>
11927    <blockquote class="text">
11928    <p>"NOTIFY:DB_INSTRUMENT_DIRECTORY_COUNT:&lt;dir-path&gt;"
11929    </p>
11930    </blockquote><p>
11931                    
11932    </p>
11933    <p>where &lt;dir-path&gt; will be replaced by the absolute path
11934                    name of the directory in the instruments database,
11935                    in which the number of directories is changed.
11936    </p>
11937    <p>Note that when a non-empty directory is removed, this event
11938                    is not sent for the subdirectories in that directory.
11939    </p>
11940    <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO"></a><br /><hr />
11941    <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>
11942    <a name="rfc.section.8.22"></a><h3>8.22.&nbsp;
11943    Database instrument directory information changed</h3>
11944    
11945    <p>Client may want to be notified when changes were made to directories
11946                    in the instruments database by issuing the following command:
11947    </p>
11948    <p>
11949                        </p>
11950    <blockquote class="text">
11951    <p>SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO
11952    </p>
11953    </blockquote><p>
11954                    
11955    </p>
11956    <p>Server will start sending the following notification messages:
11957    </p>
11958    <p>
11959                        </p>
11960    <blockquote class="text">
11961    <p>"NOTIFY:DB_INSTRUMENT_DIRECTORY_INFO:&lt;dir-path&gt;"
11962    </p>
11963    </blockquote><p>
11964                    
11965    </p>
11966    <p>where &lt;dir-path&gt; will be replaced by the absolute path name
11967                    of the directory, for which information changes occurred. The front-end will have to send
11968                    the respective command to actually get the updated directory info. Because these messages
11969                    will be triggered by LSCP commands issued by other clients rather than real
11970                    time events happening on the server, it is believed that an empty notification
11971                    message is sufficient here.
11972    </p>
11973    <p>
11974                        </p>
11975    <blockquote class="text">
11976    <p>"NOTIFY:DB_INSTRUMENT_DIRECTORY_INFO:NAME &lt;old-dir-path&gt; &lt;new-name&gt;"
11977    </p>
11978    </blockquote><p>
11979                    
11980    </p>
11981    <p>where &lt;old-dir-path&gt; is the old absolute path name of the directory
11982                    (encapsulated into apostrophes), which name is changes and &lt;new-name&gt; is
11983                    the new name of the directory, encapsulated into apostrophes.
11984    </p>
11985    <a name="SUBSCRIBE DB_INSTRUMENT_COUNT"></a><br /><hr />
11986    <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>
11987    <a name="rfc.section.8.23"></a><h3>8.23.&nbsp;
11988    Number of database instruments changed</h3>
11989    
11990    <p>Client may want to be notified when the number of instruments
11991                    in a particular directory in the instruments database
11992                    is changed by issuing the following command:
11993    </p>
11994    <p>
11995                        </p>
11996    <blockquote class="text">
11997    <p>SUBSCRIBE DB_INSTRUMENT_COUNT
11998    </p>
11999    </blockquote><p>
12000                    
12001    </p>
12002    <p>Server will start sending the following notification messages:
12003    </p>
12004    <p>
12005                        </p>
12006    <blockquote class="text">
12007    <p>"NOTIFY:DB_INSTRUMENT_COUNT:&lt;dir-path&gt;"
12008    </p>
12009    </blockquote><p>
12010                    
12011    </p>
12012    <p>where &lt;dir-path&gt; will be replaced by the absolute path
12013                    name of the directory in the instruments database,
12014                    in which the number of instruments is changed.
12015    </p>
12016    <p>Note that when a non-empty directory is removed, this event
12017                    is not sent for the instruments in that directory.
12018    </p>
12019    <a name="SUBSCRIBE DB_INSTRUMENT_INFO"></a><br /><hr />
12020    <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>
12021    <a name="rfc.section.8.24"></a><h3>8.24.&nbsp;
12022    Database instrument information changed</h3>
12023    
12024    <p>Client may want to be notified when changes were made to instruments
12025                    in the instruments database by issuing the following command:
12026    </p>
12027    <p>
12028                        </p>
12029    <blockquote class="text">
12030    <p>SUBSCRIBE DB_INSTRUMENT_INFO
12031    </p>
12032    </blockquote><p>
12033                    
12034    </p>
12035    <p>Server will start sending the following notification messages:
12036    </p>
12037    <p>
12038                        </p>
12039    <blockquote class="text">
12040    <p>"NOTIFY:DB_INSTRUMENT_INFO:&lt;instr-path&gt;"
12041    </p>
12042    </blockquote><p>
12043                    
12044    </p>
12045    <p>where &lt;instr-path&gt; will be replaced by the absolute path name
12046                    of the instrument, which settings are changed. The front-end will have to send
12047                    the respective command to actually get the updated directory info. Because these messages
12048                    will be triggered by LSCP commands issued by other clients rather than real
12049                    time events happening on the server, it is believed that an empty notification
12050                    message is sufficient here.
12051    </p>
12052    <p>
12053                        </p>
12054    <blockquote class="text">
12055    <p>"NOTIFY:DB_INSTRUMENT_INFO:NAME &lt;old-instr-path&gt; &lt;new-name&gt;"
12056    </p>
12057    </blockquote><p>
12058                    
12059    </p>
12060    <p>where &lt;old-instr-path&gt; is the old absolute path name of the instrument
12061                    (encapsulated into apostrophes), which name is changes and &lt;new-name&gt; is
12062                    the new name of the instrument, encapsulated into apostrophes.
12063    </p>
12064    <a name="SUBSCRIBE DB_INSTRUMENTS_JOB_INFO"></a><br /><hr />
12065    <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>
12066    <a name="rfc.section.8.25"></a><h3>8.25.&nbsp;
12067    Database job status information changed</h3>
12068    
12069    <p>Client may want to be notified when the status of particular database
12070                    instruments job is changed by issuing the following command:
12071    </p>
12072    <p>
12073                        </p>
12074    <blockquote class="text">
12075    <p>SUBSCRIBE DB_INSTRUMENTS_JOB_INFO
12076    </p>
12077    </blockquote><p>
12078                    
12079    </p>
12080    <p>Server will start sending the following notification messages:
12081    </p>
12082    <p>
12083                        </p>
12084    <blockquote class="text">
12085    <p>"NOTIFY:DB_INSTRUMENTS_JOB_INFO:&lt;job-id&gt;"
12086    </p>
12087    </blockquote><p>
12088                    
12089    </p>
12090    <p>where &lt;job-id&gt; will be replaced by the numerical ID of the job,
12091                    which status is changed. The front-end will have to send the respective
12092                    command to actually get the status info. Because these messages
12093                    will be triggered by LSCP commands issued by other clients rather than real
12094                    time events happening on the server, it is believed that an empty notification
12095                    message is sufficient here.
12096    </p>
12097    <a name="SUBSCRIBE MISCELLANEOUS"></a><br /><hr />
12098    <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>
12099    <a name="rfc.section.8.26"></a><h3>8.26.&nbsp;
12100    Miscellaneous and debugging events</h3>
12101    
12102  <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
12103                  the server by issuing the following command:                  the server by issuing the following command:
# Line 5640  Intellectual Property and Copyright Stat Line 12108  Intellectual Property and Copyright Stat
12108  <p>SUBSCRIBE MISCELLANEOUS  <p>SUBSCRIBE MISCELLANEOUS
12109  </p>  </p>
12110  </blockquote><p>  </blockquote><p>
12111                    
12112  </p>  </p>
12113  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
12114  </p>  </p>
# Line 5650  Intellectual Property and Copyright Stat Line 12118  Intellectual Property and Copyright Stat
12118  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"
12119  </p>  </p>
12120  </blockquote><p>  </blockquote><p>
12121                    
12122  </p>  </p>
12123  <p>where &lt;string&gt; will be replaced by whatever data server  <p>where &lt;string&gt; will be replaced by whatever data server
12124                  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
12125                  user AS IS to facilitate debugging.                  user AS IS to facilitate debugging.
12126  </p>  </p>
12127  <a name="anchor14"></a><br /><hr />  <a name="anchor14"></a><br /><hr />
12128  <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>
12129  <a name="rfc.section.9"></a><h3>9.&nbsp;Security Considerations</h3>  <a name="rfc.section.9"></a><h3>9.&nbsp;
12130    Security Considerations</h3>
12131    
12132  <p>As there is so far no method of authentication and authorization  <p>As there is so far no method of authentication and authorization
12133              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 12135  Intellectual Property and Copyright Stat
12135              system the LinuxSampler instance is running on.              system the LinuxSampler instance is running on.
12136  </p>  </p>
12137  <a name="anchor15"></a><br /><hr />  <a name="anchor15"></a><br /><hr />
12138  <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>
12139  <a name="rfc.section.10"></a><h3>10.&nbsp;Acknowledgments</h3>  <a name="rfc.section.10"></a><h3>10.&nbsp;
12140    Acknowledgments</h3>
12141    
12142  <p>This document has benefited greatly from the comments of the  <p>This document has benefited greatly from the comments of the
12143              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 12155  Intellectual Property and Copyright Stat
12155  <p>Grigor Iliev  <p>Grigor Iliev
12156  </p>  </p>
12157  </blockquote><p>  </blockquote><p>
12158                
12159  </p>  </p>
12160  <a name="rfc.references1"></a><br /><hr />  <a name="rfc.references1"></a><br /><hr />
12161  <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>
12162  <h3>11.&nbsp;References</h3>  <h3>11.&nbsp;References</h3>
12163  <table width="99%" border="0">  <table width="99%" border="0">
12164    <tr><td class="author-text" valign="top"><a name="RFC20">[RFC20]</a></td>
12165    <td class="author-text">UCLA, &ldquo;<a href="http://tools.ietf.org/html/rfc20">ASCII format for Network Interchange</a>,&rdquo; RFC&nbsp;20, 1969.</td></tr>
12166  <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>
12167  <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="http://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</a>,&rdquo; RFC&nbsp;2119, 1997.</td></tr>
12168  <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>
12169  <td class="author-text">Crocker, D. and P. Overell, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc2234.txt">Augmented BNF for Syntax Specifications</a>,&rdquo; RFC&nbsp;2234, 1997.</td></tr>  <td class="author-text">Crocker, D. and P. Overell, &ldquo;<a href="http://tools.ietf.org/html/rfc2234">Augmented BNF for Syntax Specifications</a>,&rdquo; RFC&nbsp;2234, 1997.</td></tr>
12170  <tr><td class="author-text" valign="top"><a name="RFC793">[RFC793]</a></td>  <tr><td class="author-text" valign="top"><a name="RFC793">[RFC793]</a></td>
12171  <td class="author-text">Defense Advanced Research Projects Agency, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc793.txt">TRANSMISSION CONTROL PROTOCOL</a>,&rdquo; RFC&nbsp;793, 1981.</td></tr>  <td class="author-text">Defense Advanced Research Projects Agency, &ldquo;<a href="http://tools.ietf.org/html/rfc793">TRANSMISSION CONTROL PROTOCOL</a>,&rdquo; RFC&nbsp;793, 1981.</td></tr>
12172  </table>  </table>
12173    
12174  <a name="rfc.authors"></a><br /><hr />  <a name="rfc.authors"></a><br /><hr />
12175  <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>
12176  <h3>Author's Address</h3>  <h3>Author's Address</h3>
12177  <table width="99%" border="0" cellpadding="0" cellspacing="0">  <table width="99%" border="0" cellpadding="0" cellspacing="0">
12178  <tr><td class="author-text">&nbsp;</td>  <tr><td class="author-text">&nbsp;</td>
# Line 5718  Schoenebeck</td></tr> Line 12190  Schoenebeck</td></tr>
12190  <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>
12191  </table>  </table>
12192  <a name="rfc.copyright"></a><br /><hr />  <a name="rfc.copyright"></a><br /><hr />
12193  <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>
 <h3>Intellectual Property Statement</h3>  
 <p class='copyright'>  
 The IETF takes no position regarding the validity or scope of  
 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>  
 <p class='copyright'>  
 The IETF invites any interested party to bring to its  
 attention any copyrights, patents or patent applications, or  
 other proprietary rights which may cover technology that may be  
 required to practice this standard. Please address the  
 information to the IETF Executive Director.</p>  
12194  <h3>Full Copyright Statement</h3>  <h3>Full Copyright Statement</h3>
12195  <p class='copyright'>  <p class='copyright'>
12196  Copyright &copy; The Internet Society (2005). All Rights Reserved.</p>  Copyright &copy; The IETF Trust (2008).</p>
12197  <p class='copyright'>  <p class='copyright'>
12198  This document and translations of it may be copied and furnished to  This document is subject to the rights,
12199  others, and derivative works that comment on or otherwise explain it  licenses and restrictions contained in BCP&nbsp;78,
12200  or assist in its implementation may be prepared, copied, published and  and except as set forth therein,
12201  distributed, in whole or in part, without restriction of any kind,  the authors retain all their rights.</p>
 provided that the above copyright notice and this paragraph are  
 included on all such copies and derivative works. However, this  
 document itself may not be modified in any way, such as by removing  
 the copyright notice or references to the Internet Society or other  
 Internet organizations, except as needed for the purpose of  
 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>  
12202  <p class='copyright'>  <p class='copyright'>
12203  The limited permissions granted above are perpetual and will not be  This document and the information contained herein are provided
12204  revoked by the Internet Society or its successors or assignees.</p>  on an &ldquo;AS IS&rdquo; basis and THE CONTRIBUTOR,
12205    THE ORGANIZATION HE/SHE REPRESENTS
12206    OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST
12207    AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES,
12208    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT
12209    THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY
12210    IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
12211    PURPOSE.</p>
12212    <h3>Intellectual Property</h3>
12213  <p class='copyright'>  <p class='copyright'>
12214  This document and the information contained herein is provided on an  The IETF takes no position regarding the validity or scope of any
12215  &ldquo;AS IS&rdquo; basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING  Intellectual Property Rights or other rights that might be claimed
12216  TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING  to pertain to the implementation or use of the technology
12217  BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION  described in this document or the extent to which any license
12218  HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF  under such rights might or might not be available; nor does it
12219  MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.</p>  represent that it has made any independent effort to identify any
12220  <h3>Acknowledgment</h3>  such rights.
12221    Information on the procedures with respect to
12222    rights in RFC documents can be found in BCP&nbsp;78 and BCP&nbsp;79.</p>
12223    <p class='copyright'>
12224    Copies of IPR disclosures made to the IETF Secretariat and any
12225    assurances of licenses to be made available,
12226    or the result of an attempt made to obtain a general license or
12227    permission for the use of such proprietary rights by implementers or
12228    users of this specification can be obtained from the IETF on-line IPR
12229    repository at <a href='http://www.ietf.org/ipr'>http://www.ietf.org/ipr</a>.</p>
12230  <p class='copyright'>  <p class='copyright'>
12231  Funding for the RFC Editor function is currently provided by the  The IETF invites any interested party to bring to its attention
12232  Internet Society.</p>  any copyrights,
12233    patents or patent applications,
12234    or other
12235    proprietary rights that may cover technology that may be required
12236    to implement this standard.
12237    Please address the information to the IETF at <a href='mailto:ietf-ipr@ietf.org'>ietf-ipr@ietf.org</a>.</p>
12238  </body></html>  </body></html>
12239    

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

  ViewVC Help
Powered by ViewVC