/[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 561 by schoenebeck, Sat May 21 20:01:32 2005 UTC revision 1002 by schoenebeck, Wed Dec 27 16:23:46 2006 UTC
# Line 3  Line 3 
3  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4  <meta name="description" content="LinuxSampler Control Protocol">  <meta name="description" content="LinuxSampler Control Protocol">
5  <meta name="keywords" content="LSCP">  <meta name="keywords" content="LSCP">
6  <meta name="generator" content="xml2rfc v1.25 (http://xml.resource.org/)">  <meta name="generator" content="xml2rfc v1.31 (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{ /*the span will display just on :hover state*/                  color: #FFF; background-color: transparent;
44          display:block;          }
45          position:absolute;  
46          font-size: smaller ;          td.header {
47          top:2em; left:2em; width:15em;                  font-family: arial, helvetica, sans-serif; font-size: x-small;
48          padding: 2px ;                  vertical-align: top; width: 33%;
49          border:1px solid #333333;                  color: #FFF; background-color: #666;
50          background-color:#eeeeee; color:#990000;          }
51          text-align: left ;}          td.author { font-weight: bold; font-size: x-small; margin-left: 4em; }
52            td.author-text { font-size: x-small; }
53       A { font-weight: bold; }  
54       A:link { color: #990000; background-color: transparent ; }          /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */
55       A:visited { color: #333333; background-color: transparent ; }          a.info {
56       A:active { color: #333333; background-color: transparent ; }                  /* This is the key. */
57                    position: relative;
58      p { margin-left: 2em; margin-right: 2em; }                  z-index: 24;
59      p.copyright { font-size: x-small ; }                  text-decoration: none;
60      p.toc { font-size: small ; font-weight: bold ; margin-left: 3em ;}          }
61            a.info:hover {
62      span.emph { font-style: italic; }                  z-index: 25;
63      span.strong { font-weight: bold; }                  color: #FFF; background-color: #900;
64      span.verb { font-family: "Courier New", Courier, monospace ; }          }
65            a.info span { display: none; }
66      ol.text { margin-left: 2em; margin-right: 2em; }          a.info:hover span.info {
67      ul.text { margin-left: 2em; margin-right: 2em; }                  /* The span will display just on :hover state. */
68      li { margin-left: 3em;  }                  display: block;
69                    position: absolute;
70      pre { margin-left: 3em; color: #333333;  background-color: transparent;                  font-size: smaller;
71          font-family: "Courier New", Courier, monospace ; font-size: small ;                  top: 2em; left: -5em; width: 15em;
72          }                  padding: 2px; border: 1px solid #333;
73                    color: #900; background-color: #EEE;
74      h3 { color: #333333; font-size: medium ;                  text-align: left;
75          font-family: helvetica, arial, sans-serif ;          }
76          background-color: transparent; }  
77      h4 { font-size: small; font-family: helvetica, arial, sans-serif ; }          a { font-weight: bold; }
78            a:link    { color: #900; background-color: transparent; }
79      table.bug { width: 30px ; height: 15px ; }          a:visited { color: #633; background-color: transparent; }
80      td.bug { color: #ffffff ; background-color: #990000 ;          a:active  { color: #633; background-color: transparent; }
81          text-align: center ; width: 30px ; height: 15px ;  
82           }          p { margin-left: 2em; margin-right: 2em; }
83      td.bug A.link2 { color: #ffffff ; font-weight: bold;          p.copyright { font-size: x-small; }
84          text-decoration: none;          p.toc { font-size: small; font-weight: bold; margin-left: 3em; }
85          font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, sans-serif;          table.toc { margin: 0 0 0 3em; padding: 0; border: 0; vertical-align: text-top; }
86          font-size: x-small ; background-color: transparent }          td.toc { font-size: small; font-weight: bold; vertical-align: text-top; }
87    
88      td.header { color: #ffffff; font-size: x-small ;          ol.text { margin-left: 2em; margin-right: 2em; }
89          font-family: arial, helvetica, sans-serif; vertical-align: top;          ul.text { margin-left: 2em; margin-right: 2em; }
90          background-color: #666666 ; width: 33% ; }          li      { margin-left: 3em; }
91      td.author { font-weight: bold; margin-left: 4em; font-size: x-small ; }  
92      td.author-text { font-size: x-small; }          /* RFC-2629 <spanx>s and <artwork>s. */
93      table.data { vertical-align: top ; border-collapse: collapse ;          em     { font-style: italic; }
94          border-style: solid solid solid solid ;          strong { font-weight: bold; }
95          border-color: black black black black ;          dfn    { font-weight: bold; font-style: normal; }
96          font-size: small ; text-align: center ; }          cite   { font-weight: normal; font-style: normal; }
97      table.data th { font-weight: bold ;          tt     { color: #036; }
98          border-style: solid solid solid solid ;          tt, pre, pre dfn, pre em, pre cite, pre span {
99          border-color: black black black black ; }                  font-family: "Courier New", Courier, monospace; font-size: small;
100      table.data td {          }
101          border-style: solid solid solid solid ;          pre {
102          border-color: #333333 #333333 #333333 #333333 ; }                  text-align: left; padding: 4px;
103                    color: #000; background-color: #CCC;
104      hr { height: 1px }          }
105  -->          pre dfn  { color: #900; }
106  </style>          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.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.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.full th { border-style: solid; }
127            table.headers th { border-style: none none solid none; }
128            table.none th { border-style: none; }
129            table.full td {
130                    border-style: solid; border-color: #333;
131                    border-width: 1px 2px;
132            }
133            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 19, 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 21, 2005</td></tr>  <tr><td class="header">Expires: June 30, 2007</td><td class="header">December 27, 2006</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.2</h1>
 <div align="right"><span class="title"><br />lscp.txt</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 10 of RFC2026.</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 129  Internet-Drafts.</p> Line 165  Internet-Drafts.</p>
165  Internet-Drafts are draft documents valid for a maximum of six months  Internet-Drafts are draft documents valid for a maximum of six months
166  and may be updated, replaced, or obsoleted by other documents at any time.  and may be updated, replaced, or obsoleted by other documents at any time.
167  It is inappropriate to use Internet-Drafts as reference material or to cite  It is inappropriate to use Internet-Drafts as reference material or to cite
168  them other than as "work in progress."</p>  them other than as &ldquo;work in progress.&rdquo;</p>
169  <p>  <p>
170  The list of current Internet-Drafts can be accessed at  The list of current Internet-Drafts can be accessed at
171  <a href='http://www.ietf.org/ietf/1id-abstracts.txt'>http://www.ietf.org/ietf/1id-abstracts.txt</a>.</p>  <a href='http://www.ietf.org/ietf/1id-abstracts.txt'>http://www.ietf.org/ietf/1id-abstracts.txt</a>.</p>
# Line 137  The list of current Internet-Drafts can Line 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 19, 2005.</p>  This Internet-Draft will expire on June 30, 2007.</p>
177    
178  <h3>Copyright Notice</h3>  <h3>Copyright Notice</h3>
179  <p>  <p>
180  Copyright (C) The Internet Society (2005). All Rights Reserved.</p>  Copyright &copy; The Internet Society (2006).</p>
181    
182  <h3>Abstract</h3>  <h3>Abstract</h3>
183    
184  <p>The LinuxSampler Control Protocol (LSCP) is an  <p>The LinuxSampler Control Protocol (LSCP) is an
185              application-level protocol primarily intended for local and              application-level protocol primarily intended for local and
186              remote controlling the LinuxSampler main application, which is a              remote controlling the LinuxSampler backend application, which is a
187              sophisticated console application essentially playing back audio              sophisticated server-like console application essentially playing
188              samples and manipulating the samples in real time to certain              back audio samples and manipulating the samples in real time to
189              extent.              certain extent.
190  </p><a name="toc"></a><br /><hr />  </p><a name="toc"></a><br /><hr />
191  <h3>Table of Contents</h3>  <h3>Table of Contents</h3>
192  <p class="toc">  <p class="toc">
193  <a href="#anchor1">1.</a>&nbsp;  <a href="#anchor1">1.</a>&nbsp;
194  Requirements notation<br />  Requirements notation<br />
195  <a href="#anchor2">2.</a>&nbsp;  <a href="#LSCP versioning">2.</a>&nbsp;
196    Versioning of this specification<br />
197    <a href="#anchor2">3.</a>&nbsp;
198  Introduction<br />  Introduction<br />
199  <a href="#anchor3">3.</a>&nbsp;  <a href="#anchor3">4.</a>&nbsp;
200  Focus of this protocol<br />  Focus of this protocol<br />
201  <a href="#anchor4">4.</a>&nbsp;  <a href="#anchor4">5.</a>&nbsp;
202  Communication Overview<br />  Communication Overview<br />
203  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">4.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">5.1.</a>&nbsp;
204  Request/response communication method<br />  Request/response communication method<br />
205  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor6">4.1.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor6">5.1.1.</a>&nbsp;
206  Result format<br />  Result format<br />
207  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">4.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor7">5.2.</a>&nbsp;
208  Subscribe/notify communication method<br />  Subscribe/notify communication method<br />
209  <a href="#anchor8">5.</a>&nbsp;  <a href="#control_commands">6.</a>&nbsp;
210  Description for control commands<br />  Description for control commands<br />
211  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor8">6.1.</a>&nbsp;
212  Ignored lines and comments<br />  Ignored lines and comments<br />
213  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor9">6.2.</a>&nbsp;
214  Configuring audio drivers<br />  Configuring audio drivers<br />
215  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.1.</a>&nbsp;
216  Getting amount of available audio output drivers<br />  Getting amount of available audio output drivers<br />
217  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">6.2.2.</a>&nbsp;
218  Getting all available audio output drivers<br />  Getting all available audio output drivers<br />
219  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER INFO">5.2.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER INFO">6.2.3.</a>&nbsp;
220  Getting information about a specific audio  Getting information about a specific audio
221                  output driver<br />                  output driver<br />
222  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">5.2.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">6.2.4.</a>&nbsp;
223  Getting information about specific audio  Getting information about specific audio
224                  output driver parameter<br />                  output driver parameter<br />
225  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE AUDIO_OUTPUT_DEVICE">5.2.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE AUDIO_OUTPUT_DEVICE">6.2.5.</a>&nbsp;
226  Creating an audio output device<br />  Creating an audio output device<br />
227  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY AUDIO_OUTPUT_DEVICE">5.2.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY AUDIO_OUTPUT_DEVICE">6.2.6.</a>&nbsp;
228  Destroying an audio output device<br />  Destroying an audio output device<br />
229  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICES">5.2.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICES">6.2.7.</a>&nbsp;
230  Getting all created audio output device count<br />  Getting all created audio output device count<br />
231  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AUDIO_OUTPUT_DEVICES">5.2.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AUDIO_OUTPUT_DEVICES">6.2.8.</a>&nbsp;
232  Getting all created audio output device list<br />  Getting all created audio output device list<br />
233  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICE INFO">5.2.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_DEVICE INFO">6.2.9.</a>&nbsp;
234  Getting current settings of an audio output device<br />  Getting current settings of an audio output device<br />
235  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_DEVICE_PARAMETER">5.2.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_DEVICE_PARAMETER">6.2.10.</a>&nbsp;
236  Changing settings of audio output devices<br />  Changing settings of audio output devices<br />
237  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL INFO">5.2.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL INFO">6.2.11.</a>&nbsp;
238  Getting information about an audio channel<br />  Getting information about an audio channel<br />
239  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">5.2.12</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">6.2.12.</a>&nbsp;
240  Getting information about specific audio channel parameter<br />  Getting information about specific audio channel parameter<br />
241  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_CHANNEL_PARAMETER">5.2.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET AUDIO_OUTPUT_CHANNEL_PARAMETER">6.2.13.</a>&nbsp;
242  Changing settings of audio output channels<br />  Changing settings of audio output channels<br />
243  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">5.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor10">6.3.</a>&nbsp;
244  Configuring MIDI input drivers<br />  Configuring MIDI input drivers<br />
245  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_MIDI_INPUT_DRIVERS">5.3.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_MIDI_INPUT_DRIVERS">6.3.1.</a>&nbsp;
246  Getting amount of available MIDI input drivers<br />  Getting amount of available MIDI input drivers<br />
247  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">5.3.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">6.3.2.</a>&nbsp;
248  Getting all available MIDI input drivers<br />  Getting all available MIDI input drivers<br />
249  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER INFO">5.3.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER INFO">6.3.3.</a>&nbsp;
250  Getting information about a specific MIDI input driver<br />  Getting information about a specific MIDI input driver<br />
251  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER_PARAMETER INFO">5.3.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DRIVER_PARAMETER INFO">6.3.4.</a>&nbsp;
252  Getting information about specific MIDI input driver parameter<br />  Getting information about specific MIDI input driver parameter<br />
253  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE MIDI_INPUT_DEVICE">5.3.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE MIDI_INPUT_DEVICE">6.3.5.</a>&nbsp;
254  Creating a MIDI input device<br />  Creating a MIDI input device<br />
255  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY MIDI_INPUT_DEVICE">5.3.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY MIDI_INPUT_DEVICE">6.3.6.</a>&nbsp;
256  Destroying a MIDI input device<br />  Destroying a MIDI input device<br />
257  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICES">5.3.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICES">6.3.7.</a>&nbsp;
258  Getting all created MIDI input device count<br />  Getting all created MIDI input device count<br />
259  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INPUT_DEVICES">5.3.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INPUT_DEVICES">6.3.8.</a>&nbsp;
260  Getting all created MIDI input device list<br />  Getting all created MIDI input device list<br />
261  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICE INFO">5.3.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_DEVICE INFO">6.3.9.</a>&nbsp;
262  Getting current settings of a MIDI input device<br />  Getting current settings of a MIDI input device<br />
263  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_DEVICE_PARAMETER">5.3.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_DEVICE_PARAMETER">6.3.10.</a>&nbsp;
264  Changing settings of MIDI input devices<br />  Changing settings of MIDI input devices<br />
265  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT INFO">5.3.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT INFO">6.3.11.</a>&nbsp;
266  Getting information about a MIDI port<br />  Getting information about a MIDI port<br />
267  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT_PARAMETER INFO">5.3.12</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INPUT_PORT_PARAMETER INFO">6.3.12.</a>&nbsp;
268  Getting information about specific MIDI port parameter<br />  Getting information about specific MIDI port parameter<br />
269  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_PORT_PARAMETER">5.3.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INPUT_PORT_PARAMETER">6.3.13.</a>&nbsp;
270  Changing settings of MIDI input ports<br />  Changing settings of MIDI input ports<br />
271  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">5.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor11">6.4.</a>&nbsp;
272  Configuring sampler channels<br />  Configuring sampler channels<br />
273  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD INSTRUMENT">5.4.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD INSTRUMENT">6.4.1.</a>&nbsp;
274  Loading an instrument<br />  Loading an instrument<br />
275  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD ENGINE">5.4.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LOAD ENGINE">6.4.2.</a>&nbsp;
276  Loading a sampler engine<br />  Loading a sampler engine<br />
277  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNELS">5.4.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNELS">6.4.3.</a>&nbsp;
278  Getting all created sampler channel count<br />  Getting all created sampler channel count<br />
279  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST CHANNELS">5.4.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST CHANNELS">6.4.4.</a>&nbsp;
280  Getting all created sampler channel list<br />  Getting all created sampler channel list<br />
281  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD CHANNEL">5.4.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD CHANNEL">6.4.5.</a>&nbsp;
282  Adding a new sampler channel<br />  Adding a new sampler channel<br />
283  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE CHANNEL">5.4.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE CHANNEL">6.4.6.</a>&nbsp;
284  Removing a sampler channel<br />  Removing a sampler channel<br />
285  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_ENGINES">5.4.7</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET AVAILABLE_ENGINES">6.4.7.</a>&nbsp;
286  Getting amount of available engines<br />  Getting amount of available engines<br />
287  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_ENGINES">5.4.8</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST AVAILABLE_ENGINES">6.4.8.</a>&nbsp;
288  Getting all available engines<br />  Getting all available engines<br />
289  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET ENGINE INFO">5.4.9</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET ENGINE INFO">6.4.9.</a>&nbsp;
290  Getting information about an engine<br />  Getting information about an engine<br />
291  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL INFO">5.4.10</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL INFO">6.4.10.</a>&nbsp;
292  Getting sampler channel information<br />  Getting sampler channel information<br />
293  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL VOICE_COUNT">5.4.11</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL VOICE_COUNT">6.4.11.</a>&nbsp;
294  Current number of active voices<br />  Current number of active voices<br />
295  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL STREAM_COUNT">5.4.12</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL STREAM_COUNT">6.4.12.</a>&nbsp;
296  Current number of active disk streams<br />  Current number of active disk streams<br />
297  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL BUFFER_FILL">5.4.13</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET CHANNEL BUFFER_FILL">6.4.13.</a>&nbsp;
298  Current fill state of disk stream buffers<br />  Current fill state of disk stream buffers<br />
299  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_DEVICE">5.4.14</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_DEVICE">6.4.14.</a>&nbsp;
300  Setting audio output device<br />  Setting audio output device<br />
301  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_TYP">5.4.15</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_TYPE">6.4.15.</a>&nbsp;
302  Setting audio output type<br />  Setting audio output type<br />
303  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_CHANNEL">5.4.16</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL AUDIO_OUTPUT_CHANNEL">6.4.16.</a>&nbsp;
304  Setting audio output channel<br />  Setting audio output channel<br />
305  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_DEVICE">5.4.17</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_DEVICE">6.4.17.</a>&nbsp;
306  Setting MIDI input device<br />  Setting MIDI input device<br />
307  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_TYPE">5.4.18</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_TYPE">6.4.18.</a>&nbsp;
308  Setting MIDI input type<br />  Setting MIDI input type<br />
309  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_PORT">5.4.19</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_PORT">6.4.19.</a>&nbsp;
310  Setting MIDI input port<br />  Setting MIDI input port<br />
311  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_CHANNEL">5.4.20</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INPUT_CHANNEL">6.4.20.</a>&nbsp;
312  Setting MIDI input channel<br />  Setting MIDI input channel<br />
313  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL VOLUME">5.4.21</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL VOLUME">6.4.21.</a>&nbsp;
314  Setting channel volume<br />  Setting channel volume<br />
315  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">5.4.22</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MUTE">6.4.22.</a>&nbsp;
316    Muting a sampler channel<br />
317    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL SOLO">6.4.23.</a>&nbsp;
318    Soloing a sampler channel<br />
319    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET CHANNEL MIDI_INSTRUMENT_MAP">6.4.24.</a>&nbsp;
320    Assigning a MIDI instrument map to a sampler channel<br />
321    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CREATE FX_SEND">6.4.25.</a>&nbsp;
322    Adding an effect send to a sampler channel<br />
323    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#DESTROY FX_SEND">6.4.26.</a>&nbsp;
324    Removing an effect send from a sampler channel<br />
325    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FX_SENDS">6.4.27.</a>&nbsp;
326    Getting amount of effect sends on a sampler channel<br />
327    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST FX_SENDS">6.4.28.</a>&nbsp;
328    Listing all effect sends on a sampler channel<br />
329    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FX_SEND INFO">6.4.29.</a>&nbsp;
330    Getting effect send information<br />
331    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND AUDIO_OUTPUT_CHANNEL">6.4.30.</a>&nbsp;
332    Altering effect send's audio routing<br />
333    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.31.</a>&nbsp;
334  Resetting a sampler channel<br />  Resetting a sampler channel<br />
335  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">5.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5.</a>&nbsp;
336  Controlling connection<br />  Controlling connection<br />
337  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">5.5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">6.5.1.</a>&nbsp;
338  Register front-end for receiving event messages<br />  Register front-end for receiving event messages<br />
339  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">5.5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">6.5.2.</a>&nbsp;
340  Unregister front-end for not receiving event messages<br />  Unregister front-end for not receiving event messages<br />
341  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">5.5.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">6.5.3.</a>&nbsp;
342  Enable or disable echo of commands<br />  Enable or disable echo of commands<br />
343  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">5.5.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">6.5.4.</a>&nbsp;
344  Close client connection<br />  Close client connection<br />
345  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor14">5.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">6.6.</a>&nbsp;
346  Global commands<br />  Global commands<br />
347  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">5.6.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT">6.6.1.</a>&nbsp;
348    Current number of active voices<br />
349    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT_MAX">6.6.2.</a>&nbsp;
350    Maximum amount of active voices<br />
351    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.3.</a>&nbsp;
352  Reset sampler<br />  Reset sampler<br />
353  <a href="#command_syntax">6.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET SERVER INFO">6.6.4.</a>&nbsp;
354    General sampler informations<br />
355    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#MIDI Instrument Mapping">6.7.</a>&nbsp;
356    MIDI Instrument Mapping<br />
357    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD MIDI_INSTRUMENT MAP">6.7.1.</a>&nbsp;
358    Create a new MIDI instrument map<br />
359    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE MIDI_INSTRUMENT_MAP">6.7.2.</a>&nbsp;
360    Delete one particular or all MIDI instrument maps<br />
361    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAPS">6.7.3.</a>&nbsp;
362    Get amount of existing MIDI instrument maps<br />
363    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENT_MAPS">6.7.4.</a>&nbsp;
364    Getting all created MIDI instrument maps<br />
365    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAP INFO">6.7.5.</a>&nbsp;
366    Getting MIDI instrument map information<br />
367    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INSTRUMENT_MAP NAME">6.7.6.</a>&nbsp;
368    Renaming a MIDI instrument map<br />
369    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MAP MIDI_INSTRUMENT">6.7.7.</a>&nbsp;
370    Create or replace a MIDI instrument map entry<br />
371    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENTS">6.7.8.</a>&nbsp;
372    Getting ammount of MIDI instrument map entries<br />
373    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENTS">6.7.9.</a>&nbsp;
374    Getting indeces of all entries of a MIDI instrument map<br />
375    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNMAP MIDI_INSTRUMENT">6.7.10.</a>&nbsp;
376    Remove an entry from the MIDI instrument map<br />
377    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT INFO">6.7.11.</a>&nbsp;
378    Get current settings of MIDI instrument map entry<br />
379    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CLEAR MIDI_INSTRUMENTS">6.7.12.</a>&nbsp;
380    Clear MIDI instrument map<br />
381    <a href="#command_syntax">7.</a>&nbsp;
382  Command Syntax<br />  Command Syntax<br />
383  <a href="#events">7.</a>&nbsp;  <a href="#events">8.</a>&nbsp;
384  Events<br />  Events<br />
385  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL">7.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT">8.1.</a>&nbsp;
386    Number of audio output devices changed<br />
387    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO">8.2.</a>&nbsp;
388    Audio output device's settings changed<br />
389    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_COUNT">8.3.</a>&nbsp;
390    Number of MIDI input devices changed<br />
391    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_INFO">8.4.</a>&nbsp;
392    MIDI input device's settings changed<br />
393    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_COUNT">8.5.</a>&nbsp;
394  Number of sampler channels changed<br />  Number of sampler channels changed<br />
395  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">7.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.6.</a>&nbsp;
396  Number of active voices changed<br />  Number of active voices changed<br />
397  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">7.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.7.</a>&nbsp;
398  Number of active disk streams changed<br />  Number of active disk streams changed<br />
399  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">7.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.8.</a>&nbsp;
400  Disk stream buffer fill state changed<br />  Disk stream buffer fill state changed<br />
401  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE INFO">7.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_INFO">8.9.</a>&nbsp;
402  Channel information changed<br />  Channel information changed<br />
403  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">7.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_VOICE_COUNT">8.10.</a>&nbsp;
404    Total number of active voices changed<br />
405    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT">8.11.</a>&nbsp;
406    Number of MIDI instrument maps changed<br />
407    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO">8.12.</a>&nbsp;
408    MIDI instrument map information changed<br />
409    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_COUNT">8.13.</a>&nbsp;
410    Number of MIDI instruments changed<br />
411    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_INFO">8.14.</a>&nbsp;
412    MIDI instrument information changed<br />
413    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.15.</a>&nbsp;
414  Miscellaneous and debugging events<br />  Miscellaneous and debugging events<br />
415  <a href="#anchor15">8.</a>&nbsp;  <a href="#anchor14">9.</a>&nbsp;
416  Security Considerations<br />  Security Considerations<br />
417  <a href="#anchor16">9.</a>&nbsp;  <a href="#anchor15">10.</a>&nbsp;
418  Acknowledgments<br />  Acknowledgments<br />
419  <a href="#rfc.references1">10.</a>&nbsp;  <a href="#rfc.references1">11.</a>&nbsp;
420  References<br />  References<br />
421  <a href="#rfc.authors">&#167;</a>&nbsp;  <a href="#rfc.authors">&#167;</a>&nbsp;
422  Author's Address<br />  Author's Address<br />
# Line 320  Intellectual Property and Copyright Stat Line 426  Intellectual Property and Copyright Stat
426  <br clear="all" />  <br clear="all" />
427    
428  <a name="anchor1"></a><br /><hr />  <a name="anchor1"></a><br /><hr />
429  <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>
430  <a name="rfc.section.1"></a><h3>1.&nbsp;Requirements notation</h3>  <a name="rfc.section.1"></a><h3>1.&nbsp;
431    Requirements notation</h3>
432    
433  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
434              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
435              and "OPTIONAL" in this document are to be interpreted as              and "OPTIONAL" in this document are to be interpreted as
436              described in <a class="info" href="#RFC2119">[RFC2119]<span>Bradner, S., Key words for use in RFCs to Indicate Requirement Levels, March 1997.</span></a>.              described in <a class='info' href='#RFC2119'>[RFC2119]<span> (</span><span class='info'>Bradner, S., &ldquo;Key words for use in RFCs to Indicate Requirement Levels,&rdquo; 1997.</span><span>)</span></a>.
437  </p>  </p>
438  <p>This protocol is always case-sensitive if not explicitly  <p>This protocol is always case-sensitive if not explicitly
439              claimed the opposite.              claimed the opposite.
# Line 338  Intellectual Property and Copyright Stat Line 445  Intellectual Property and Copyright Stat
445              character as defined in the ASCII standard), thus the following              character as defined in the ASCII standard), thus the following
446              example:              example:
447  </p>  </p>
448  <p></p>  <p>
449                    </p>
450  <blockquote class="text">  <blockquote class="text">
451  <p>C: "some line"  <p>C: "some line"
452  </p>  </p>
453  <p>&nbsp;&nbsp;&nbsp;"another line"  <p>&nbsp;&nbsp;&nbsp;"another line"
454  </p>  </p>
455  </blockquote>  </blockquote><p>
456                
457    </p>
458  <p>must actually be interpreted as client sending the following  <p>must actually be interpreted as client sending the following
459              message:              message:
460  </p>  </p>
461  <p></p>  <p>
462                    </p>
463  <blockquote class="text">  <blockquote class="text">
464  <p>"some line&lt;CR&gt;&lt;LF&gt;another  <p>"some line&lt;CR&gt;&lt;LF&gt;another
465                      line&lt;CR&gt;&lt;LF&gt;"                      line&lt;CR&gt;&lt;LF&gt;"
466  </p>  </p>
467  </blockquote>  </blockquote><p>
468                
469    </p>
470  <p>where &lt;CR&gt; symbolizes the carriage return character and  <p>where &lt;CR&gt; symbolizes the carriage return character and
471              &lt;LF&gt; the line feed character as defined in the ASCII              &lt;LF&gt; the line feed character as defined in the ASCII
472              standard.              standard.
# Line 363  Intellectual Property and Copyright Stat Line 474  Intellectual Property and Copyright Stat
474  <p>Due to technical reasons, messages can arbitrary be  <p>Due to technical reasons, messages can arbitrary be
475              fragmented, means the following example:              fragmented, means the following example:
476  </p>  </p>
477  <p></p>  <p>
478                    </p>
479  <blockquote class="text">  <blockquote class="text">
480  <p>S: "abcd"  <p>S: "abcd"
481  </p>  </p>
482  </blockquote>  </blockquote><p>
483                
484    </p>
485  <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
486              following sequence scenario:              following sequence scenario:
487  </p>  </p>
488  <p></p>  <p>
489                    </p>
490  <ul class="text">  <ul class="text">
491  <li>server sending message "a"  <li>server sending message "a"
492  </li>  </li>
# Line 388  Intellectual Property and Copyright Stat Line 502  Intellectual Property and Copyright Stat
502  <li>followed by server sending the message  <li>followed by server sending the message
503                      "&lt;LF&gt;"                      "&lt;LF&gt;"
504  </li>  </li>
505  </ul>  </ul><p>
506                
507    </p>
508  <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
509              return and line feed characters respectively.              return and line feed characters respectively.
510  </p>  </p>
511    <a name="LSCP versioning"></a><br /><hr />
512    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
513    <a name="rfc.section.2"></a><h3>2.&nbsp;
514    Versioning of this specification</h3>
515    
516    <p>LSCP will certainly be extended and enhanced by-and-by. Each official
517                release of the LSCP specification will be tagged with a unique version
518                tuple. The version tuple consists at least of a major and minor version
519                number like:
520                
521    </p>
522    <p>
523                    </p>
524    <blockquote class="text">
525    <p>"1.2"
526    </p>
527    </blockquote><p>
528                
529    </p>
530    <p>
531                In this example the major version number would be "1" and the minor
532                version number would be "2". Note that the version tuple might also
533                have more than two elements. The major version number defines a
534                group of backward compatible versions. That means a frontend is
535                compatible to the connected sampler if and only if the LSCP versions
536                to which each of the two parties complies to, match both of the
537                following rules:
538                
539    </p>
540    <p>Compatibility:
541    </p>
542    <p>
543                    </p>
544    <ol class="text">
545    <li>The frontend's LSCP major version and the sampler's LSCP
546                        major version are exactly equal.
547    </li>
548    <li>The frontend's LSCP minor version is less or equal than
549                        the sampler's LSCP minor version.
550    </li>
551    </ol><p>
552                
553    </p>
554    <p>
555                Compatibility can only be claimed if both rules are true.
556                The frontend can use the
557                <a class='info' href='#GET SERVER INFO'>"GET SERVER INFO"<span> (</span><span class='info'>General sampler informations</span><span>)</span></a> command to
558                get the version of the LSCP specification the sampler complies with.
559                
560    </p>
561  <a name="anchor2"></a><br /><hr />  <a name="anchor2"></a><br /><hr />
562  <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>
563  <a name="rfc.section.2"></a><h3>2.&nbsp;Introduction</h3>  <a name="rfc.section.3"></a><h3>3.&nbsp;
564    Introduction</h3>
565    
566  <p>LinuxSampler is a so called software sampler application  <p>LinuxSampler is a so called software sampler application
567              capable to playback audio samples from a computer's Random              capable to playback audio samples from a computer's Random
# Line 408  Intellectual Property and Copyright Stat Line 574  Intellectual Property and Copyright Stat
574              arbitrary MIDI input method and arbitrary MIDI channel (e.g.              arbitrary MIDI input method and arbitrary MIDI channel (e.g.
575              sampler channel 17 could be connected to an ALSA sequencer              sampler channel 17 could be connected to an ALSA sequencer
576              device 64:0 and listening to MIDI channel 1 there). Each sampler              device 64:0 and listening to MIDI channel 1 there). Each sampler
577              engine will be assigned an own instance of one of the available              channel will be associated with an instance of one of the available
578              sampler engines (e.g. GigEngine, DLSEngine). The audio output of              sampler engines (e.g. GigEngine, DLSEngine). The audio output of
579              each sampler channel can be routed to an arbitrary audio output              each sampler channel can be routed to an arbitrary audio output
580              method (ALSA / JACK) and an arbitrary audio output channel              method (ALSA / JACK) and an arbitrary audio output channel
581              there.              there.
582  </p>  </p>
583  <a name="anchor3"></a><br /><hr />  <a name="anchor3"></a><br /><hr />
584  <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>
585  <a name="rfc.section.3"></a><h3>3.&nbsp;Focus of this protocol</h3>  <a name="rfc.section.4"></a><h3>4.&nbsp;
586    Focus of this protocol</h3>
587    
588  <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
589              a running LinuxSampler instance and to retrieve information              a running LinuxSampler instance and to retrieve information
# Line 427  Intellectual Property and Copyright Stat Line 594  Intellectual Property and Copyright Stat
594              via MIDI System Exclusive Messages.              via MIDI System Exclusive Messages.
595  </p>  </p>
596  <a name="anchor4"></a><br /><hr />  <a name="anchor4"></a><br /><hr />
597  <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>
598  <a name="rfc.section.4"></a><h3>4.&nbsp;Communication Overview</h3>  <a name="rfc.section.5"></a><h3>5.&nbsp;
599    Communication Overview</h3>
600    
601  <p>There are two distinct methods of communication between a  <p>There are two distinct methods of communication between a
602              running instance of LinuxSampler and one or more control              running instance of LinuxSampler and one or more control
# Line 441  Intellectual Property and Copyright Stat Line 609  Intellectual Property and Copyright Stat
609              implemented in the front-end application. The two communication              implemented in the front-end application. The two communication
610              methods will be described next.              methods will be described next.
611  </p>  </p>
612  <a name="rfc.section.4.1"></a><h4><a name="anchor5">4.1</a>&nbsp;Request/response communication method</h4>  <a name="anchor5"></a><br /><hr />
613    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
614    <a name="rfc.section.5.1"></a><h3>5.1.&nbsp;
615    Request/response communication method</h3>
616    
617  <p>This simple communication method is based on TCP. The  <p>This simple communication method is based on
618                    <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
619                  front-end application establishes a TCP connection to the                  front-end application establishes a TCP connection to the
620                  LinuxSampler instance on a certain host system. Then the                  LinuxSampler instance on a certain host system. Then the
621                  front-end application will send certain ASCII based commands                  front-end application will send certain ASCII based commands
# Line 483  Intellectual Property and Copyright Stat Line 655  Intellectual Property and Copyright Stat
655                  processed in the order they were received and result sets                  processed in the order they were received and result sets
656                  MUST be sent back in the same order.                  MUST be sent back in the same order.
657  </p>  </p>
658  <a name="rfc.section.4.1.1"></a><h4><a name="anchor6">4.1.1</a>&nbsp;Result format</h4>  <a name="anchor6"></a><br /><hr />
659    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
660    <a name="rfc.section.5.1.1"></a><h3>5.1.1.&nbsp;
661    Result format</h3>
662    
663  <p>Result set could be one of the following types:  <p>Result set could be one of the following types:
664  </p>  </p>
665  <p></p>  <p>
666                            </p>
667  <ol class="text">  <ol class="text">
668  <li>Normal  <li>Normal
669  </li>  </li>
# Line 495  Intellectual Property and Copyright Stat Line 671  Intellectual Property and Copyright Stat
671  </li>  </li>
672  <li>Error  <li>Error
673  </li>  </li>
674  </ol>  </ol><p>
675                        
676    </p>
677  <p>Warning and Error result sets MUST be single line and  <p>Warning and Error result sets MUST be single line and
678                      have the following format:                      have the following format:
679  </p>  </p>
680  <p></p>  <p>
681                            </p>
682  <ul class="text">  <ul class="text">
683  <li>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;"  <li>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;"
684  </li>  </li>
685  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"
686  </li>  </li>
687  </ul>  </ul><p>
688                        
689    </p>
690  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are
691                      numeric unique identifiers of the warning or error and                      numeric unique identifiers of the warning or error and
692                      &lt;warning-message&gt; and &lt;error-message&gt; are                      &lt;warning-message&gt; and &lt;error-message&gt; are
# Line 516  Intellectual Property and Copyright Stat Line 695  Intellectual Property and Copyright Stat
695  </p>  </p>
696  <p>Examples:  <p>Examples:
697  </p>  </p>
698  <p></p>  <p>
699                            </p>
700  <blockquote class="text">  <blockquote class="text">
701  <p>C: "LOAD INSTRUMENT '/home/me/Boesendorfer24bit.gig" 0 0  <p>C: "LOAD INSTRUMENT '/home/me/Boesendorfer24bit.gig" 0 0
702  </p>  </p>
703  <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."
704  </p>  </p>
705  </blockquote>  </blockquote><p>
706                        
707  <p></p>  </p>
708    <p>
709                            </p>
710  <blockquote class="text">  <blockquote class="text">
711  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA EAR"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA EAR"
712  </p>  </p>
713  <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'."
714  </p>  </p>
715  </blockquote>  </blockquote><p>
716                        
717  <p></p>  </p>
718    <p>
719                            </p>
720  <blockquote class="text">  <blockquote class="text">
721  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 123456"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 123456"
722  </p>  </p>
723  <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."
724  </p>  </p>
725  </blockquote>  </blockquote><p>
726                        
727    </p>
728  <p>Normal result sets could be:  <p>Normal result sets could be:
729  </p>  </p>
730  <p></p>  <p>
731                            </p>
732  <ol class="text">  <ol class="text">
733  <li>Empty  <li>Empty
734  </li>  </li>
# Line 550  Intellectual Property and Copyright Stat Line 736  Intellectual Property and Copyright Stat
736  </li>  </li>
737  <li>Multi-line  <li>Multi-line
738  </li>  </li>
739  </ol>  </ol><p>
740                        
741    </p>
742  <p> Empty result set is issued when the server only  <p> Empty result set is issued when the server only
743                      needed to acknowledge the fact that the request was                      needed to acknowledge the fact that the request was
744                      received and it was processed successfully and no                      received and it was processed successfully and no
745                      additional information is available. This result set has                      additional information is available. This result set has
746                      the following format:                      the following format:
747  </p>  </p>
748  <p></p>  <p>
749                            </p>
750  <blockquote class="text">  <blockquote class="text">
751  <p>"OK"  <p>"OK"
752  </p>  </p>
753  </blockquote>  </blockquote><p>
754                        
755    </p>
756  <p>Example:  <p>Example:
757  </p>  </p>
758  <p></p>  <p>
759                            </p>
760  <blockquote class="text">  <blockquote class="text">
761  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 CHANNELS=4"  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 CHANNELS=4"
762  </p>  </p>
763  <p>S: "OK"  <p>S: "OK"
764  </p>  </p>
765  </blockquote>  </blockquote><p>
766                        
767    </p>
768  <p>Single line result sets are command specific. One  <p>Single line result sets are command specific. One
769                      example of a single line result set is an empty line.                      example of a single line result set is an empty line.
770                      Multi-line result sets are command specific and may                      Multi-line result sets are command specific and may
771                      include one or more lines of information. They MUST                      include one or more lines of information. They MUST
772                      always end with the following line:                      always end with the following line:
773  </p>  </p>
774  <p></p>  <p>
775                            </p>
776  <blockquote class="text">  <blockquote class="text">
777  <p>"."  <p>"."
778  </p>  </p>
779  </blockquote>  </blockquote><p>
780                        
781    </p>
782  <p>Example:  <p>Example:
783  </p>  </p>
784  <p></p>  <p>
785                            </p>
786  <blockquote class="text">  <blockquote class="text">
787  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"
788  </p>  </p>
# Line 608  Intellectual Property and Copyright Stat Line 802  Intellectual Property and Copyright Stat
802  </p>  </p>
803  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
804  </p>  </p>
805  </blockquote>  </blockquote><p>
806                        
807    </p>
808  <p>In addition to above mentioned formats, warnings and  <p>In addition to above mentioned formats, warnings and
809                      empty result sets MAY be indexed. In this case, they                      empty result sets MAY be indexed. In this case, they
810                      have the following formats respectively:                      have the following formats respectively:
811  </p>  </p>
812  <p></p>  <p>
813                            </p>
814  <ul class="text">  <ul class="text">
815  <li>"WRN[&lt;index&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;"  <li>"WRN[&lt;index&gt;]:&lt;warning-code&gt;:&lt;warning-message&gt;"
816  </li>  </li>
817  <li>"OK[&lt;index&gt;]"  <li>"OK[&lt;index&gt;]"
818  </li>  </li>
819  </ul>  </ul><p>
820                        
821    </p>
822  <p>where &lt;index&gt; is command specific and is used  <p>where &lt;index&gt; is command specific and is used
823                      to indicate channel number that the result set was                      to indicate channel number that the result set was
824                      related to or other integer value.                      related to or other integer value.
# Line 631  Intellectual Property and Copyright Stat Line 828  Intellectual Property and Copyright Stat
828  </p>  </p>
829  <p>Examples:  <p>Examples:
830  </p>  </p>
831  <p></p>  <p>
832                            </p>
833  <blockquote class="text">  <blockquote class="text">
834  <p>C: "ADD CHANNEL"  <p>C: "ADD CHANNEL"
835  </p>  </p>
836  <p>S: "OK[12]"  <p>S: "OK[12]"
837  </p>  </p>
838  </blockquote>  </blockquote><p>
839                        
840  <p></p>  </p>
841    <p>
842                            </p>
843  <blockquote class="text">  <blockquote class="text">
844  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA SAMPLERATE=96000"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA SAMPLERATE=96000"
845  </p>  </p>
846  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."
847  </p>  </p>
848  </blockquote>  </blockquote><p>
849                        
850  <a name="rfc.section.4.2"></a><h4><a name="anchor7">4.2</a>&nbsp;Subscribe/notify communication method</h4>  </p>
851    <a name="anchor7"></a><br /><hr />
852    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
853    <a name="rfc.section.5.2"></a><h3>5.2.&nbsp;
854    Subscribe/notify communication method</h3>
855    
856  <p>This more sophisticated communication method is actually  <p>This more sophisticated communication method is actually
857                  only an extension of the simple request/response                  only an extension of the simple request/response
# Line 659  Intellectual Property and Copyright Stat Line 863  Intellectual Property and Copyright Stat
863                  as they happen on the server. The SUBSCRIBE command has the                  as they happen on the server. The SUBSCRIBE command has the
864                  following syntax:                  following syntax:
865  </p>  </p>
866  <p></p>  <p>
867                        </p>
868  <blockquote class="text">  <blockquote class="text">
869  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
870  </p>  </p>
871  </blockquote>  </blockquote><p>
872                    
873    </p>
874  <p>where &lt;event-id&gt; will be replaced by the respective  <p>where &lt;event-id&gt; will be replaced by the respective
875                  event that client wants to subscribe to. Upon receiving such                  event that client wants to subscribe to. Upon receiving such
876                  request, server SHOULD respond with OK and start sending                  request, server SHOULD respond with OK and start sending
# Line 674  Intellectual Property and Copyright Stat Line 880  Intellectual Property and Copyright Stat
880                  time nature of their generation. Event messages have the                  time nature of their generation. Event messages have the
881                  following format:                  following format:
882  </p>  </p>
883  <p></p>  <p>
884                        </p>
885  <blockquote class="text">  <blockquote class="text">
886  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;
887  </p>  </p>
888  </blockquote>  </blockquote><p>
889                    
890    </p>
891  <p>where &lt;event-id&gt; uniquely identifies the event that  <p>where &lt;event-id&gt; uniquely identifies the event that
892                  has occurred and &lt;custom-event-data&gt; is event                  has occurred and &lt;custom-event-data&gt; is event
893                  specific.                  specific.
# Line 687  Intellectual Property and Copyright Stat Line 895  Intellectual Property and Copyright Stat
895  <p>Several rules must be followed by the server when  <p>Several rules must be followed by the server when
896                  generating events:                  generating events:
897  </p>  </p>
898  <p></p>  <p>
899                        </p>
900  <ol class="text">  <ol class="text">
901  <li>Events MUST NOT be sent to any client who has not  <li>Events MUST NOT be sent to any client who has not
902                          issued an appropriate SUBSCRIBE command.                          issued an appropriate SUBSCRIBE command.
# Line 702  Intellectual Property and Copyright Stat Line 911  Intellectual Property and Copyright Stat
911                          middle of the event message as well as any other                          middle of the event message as well as any other
912                          response.                          response.
913  </li>  </li>
914  </ol>  </ol><p>
915                    
916    </p>
917  <p>If the client is not interested in a particular event  <p>If the client is not interested in a particular event
918                  anymore it MAY issue UNSUBSCRIBE command using the following                  anymore it MAY issue UNSUBSCRIBE command using the following
919                  syntax:                  syntax:
920  </p>  </p>
921  <p></p>  <p>
922                        </p>
923  <blockquote class="text">  <blockquote class="text">
924  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
925  </p>  </p>
926  </blockquote>  </blockquote><p>
927                    
928    </p>
929  <p>where &lt;event-id&gt; will be replace by the respective  <p>where &lt;event-id&gt; will be replace by the respective
930                  event that client is no longer interested in receiving. For                  event that client is no longer interested in receiving. For
931                  a list of supported events see <a class="info" href="#events">Section 7<span>Events</span></a>.                  a list of supported events see <a class='info' href='#events'>Section&nbsp;8<span> (</span><span class='info'>Events</span><span>)</span></a>.
932  </p>  </p>
933  <p>Example: the fill states of disk stream buffers have  <p>Example: the fill states of disk stream buffers have
934                  changed on sampler channel 4 and the LinuxSampler instance                  changed on sampler channel 4 and the LinuxSampler instance
935                  will react by sending the following message to all clients                  will react by sending the following message to all clients
936                  who subscribed to this event:                  who subscribed to this event:
937  </p>  </p>
938  <p></p>  <p>
939                        </p>
940  <blockquote class="text">  <blockquote class="text">
941  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%
942  </p>  </p>
943  </blockquote>  </blockquote><p>
944                    
945    </p>
946  <p>Which means there are currently three active streams on  <p>Which means there are currently three active streams on
947                  sampler channel 4, where the stream with ID "35" is filled                  sampler channel 4, where the stream with ID "35" is filled
948                  by 62%, stream with ID 33 is filled by 80% and stream with                  by 62%, stream with ID 33 is filled by 80% and stream with
# Line 759  Intellectual Property and Copyright Stat Line 973  Intellectual Property and Copyright Stat
973                  If client reconnects it MUST resubscribe to all events that                  If client reconnects it MUST resubscribe to all events that
974                  it wants to receive.                  it wants to receive.
975  </p>  </p>
976  <a name="anchor8"></a><br /><hr />  <a name="control_commands"></a><br /><hr />
977  <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>
978  <a name="rfc.section.5"></a><h3>5.&nbsp;Description for control commands</h3>  <a name="rfc.section.6"></a><h3>6.&nbsp;
979    Description for control commands</h3>
980    
981  <p>This chapter will describe the available control commands  <p>This chapter will describe the available control commands
982              that can be sent on the TCP connection in detail. Some certain              that can be sent on the TCP connection in detail. Some certain
983              commands (e.g. <a class="info" href="#GET CHANNEL INFO">"GET CHANNEL INFO"<span>Getting sampler channel information</span></a>              commands (e.g. <a class='info' href='#GET CHANNEL INFO'>"GET CHANNEL INFO"<span> (</span><span class='info'>Getting sampler channel information</span><span>)</span></a>
984              or <a class="info" href="#GET ENGINE INFO">"GET ENGINE INFO"<span>Getting information about an engine</span></a>) lead to              or <a class='info' href='#GET ENGINE INFO'>"GET ENGINE INFO"<span> (</span><span class='info'>Getting information about an engine</span><span>)</span></a>) lead to
985              multiple-line responses. In this case LinuxSampler signals the              multiple-line responses. In this case LinuxSampler signals the
986              end of the response by a "." (single dot) line.              end of the response by a "." (single dot) line.
987  </p>  </p>
988  <a name="rfc.section.5.1"></a><h4><a name="anchor9">5.1</a>&nbsp;Ignored lines and comments</h4>  <a name="anchor8"></a><br /><hr />
989    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
990    <a name="rfc.section.6.1"></a><h3>6.1.&nbsp;
991    Ignored lines and comments</h3>
992    
993  <p>White lines, that is lines which only contain space and  <p>White lines, that is lines which only contain space and
994                  tabulator characters, and lines that start with a "#"                  tabulator characters, and lines that start with a "#"
# Line 778  Intellectual Property and Copyright Stat Line 996  Intellectual Property and Copyright Stat
996                  group commands and to place comments in a LSCP script                  group commands and to place comments in a LSCP script
997                  file.                  file.
998  </p>  </p>
999  <a name="rfc.section.5.2"></a><h4><a name="anchor10">5.2</a>&nbsp;Configuring audio drivers</h4>  <a name="anchor9"></a><br /><hr />
1000    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1001    <a name="rfc.section.6.2"></a><h3>6.2.&nbsp;
1002    Configuring audio drivers</h3>
1003    
1004  <p>Instances of drivers in LinuxSampler are called devices.  <p>Instances of drivers in LinuxSampler are called devices.
1005                  You can use multiple audio devices simultaneously, e.g. to                  You can use multiple audio devices simultaneously, e.g. to
# Line 811  Intellectual Property and Copyright Stat Line 1032  Intellectual Property and Copyright Stat
1032                  what parameters drivers are offering, how to retrieve their                  what parameters drivers are offering, how to retrieve their
1033                  possible values, etc.                  possible values, etc.
1034  </p>  </p>
1035  <a name="rfc.section.5.2.1"></a><h4><a name="GET AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.1</a>&nbsp;Getting amount of available audio output drivers</h4>  <a name="GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"></a><br /><hr />
1036    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1037    <a name="rfc.section.6.2.1"></a><h3>6.2.1.&nbsp;
1038    Getting amount of available audio output drivers</h3>
1039    
1040  <p>Use the following command to get the number of  <p>Use the following command to get the number of
1041                      audio output drivers currently available for the                      audio output drivers currently available for the
1042                      LinuxSampler instance:                      LinuxSampler instance:
1043  </p>  </p>
1044  <p></p>  <p>
1045                            </p>
1046  <blockquote class="text">  <blockquote class="text">
1047  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS
1048  </p>  </p>
1049  </blockquote>  </blockquote><p>
1050                        
1051    </p>
1052  <p>Possible Answers:  <p>Possible Answers:
1053  </p>  </p>
1054  <p></p>  <p>
1055                            </p>
1056  <blockquote class="text">  <blockquote class="text">
1057  <p>LinuxSampler will answer by sending the  <p>LinuxSampler will answer by sending the
1058                              number of audio output drivers.                              number of audio output drivers.
1059  </p>  </p>
1060  </blockquote>  </blockquote><p>
1061                        
1062    </p>
1063  <p>Example:  <p>Example:
1064  </p>  </p>
1065  <p></p>  <p>
1066                            </p>
1067  <blockquote class="text">  <blockquote class="text">
1068  <p>C: "GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"  <p>C: "GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"
1069  </p>  </p>
1070  <p>S: "2"  <p>S: "2"
1071  </p>  </p>
1072  </blockquote>  </blockquote><p>
1073                        
1074  <a name="rfc.section.5.2.2"></a><h4><a name="LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">5.2.2</a>&nbsp;Getting all available audio output drivers</h4>  </p>
1075    <a name="LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"></a><br /><hr />
1076    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1077    <a name="rfc.section.6.2.2"></a><h3>6.2.2.&nbsp;
1078    Getting all available audio output drivers</h3>
1079    
1080  <p>Use the following command to list all audio output  <p>Use the following command to list all audio output
1081                      drivers currently available for the LinuxSampler                      drivers currently available for the LinuxSampler
1082                      instance:                      instance:
1083  </p>  </p>
1084  <p></p>  <p>
1085                            </p>
1086  <blockquote class="text">  <blockquote class="text">
1087  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS
1088  </p>  </p>
1089  </blockquote>  </blockquote><p>
1090                        
1091    </p>
1092  <p>Possible Answers:  <p>Possible Answers:
1093  </p>  </p>
1094  <p></p>  <p>
1095                            </p>
1096  <blockquote class="text">  <blockquote class="text">
1097  <p>LinuxSampler will answer by sending comma  <p>LinuxSampler will answer by sending comma
1098                              separated character strings, each symbolizing an                              separated character strings, each symbolizing an
1099                              audio output driver.                              audio output driver.
1100  </p>  </p>
1101  </blockquote>  </blockquote><p>
1102                        
1103    </p>
1104  <p>Example:  <p>Example:
1105  </p>  </p>
1106  <p></p>  <p>
1107                            </p>
1108  <blockquote class="text">  <blockquote class="text">
1109  <p>C: "LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"  <p>C: "LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"
1110  </p>  </p>
1111  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
1112  </p>  </p>
1113  </blockquote>  </blockquote><p>
1114                        
1115  <a name="rfc.section.5.2.3"></a><h4><a name="GET AUDIO_OUTPUT_DRIVER INFO">5.2.3</a>&nbsp;Getting information about a specific audio  </p>
1116                  output driver</h4>  <a name="GET AUDIO_OUTPUT_DRIVER INFO"></a><br /><hr />
1117    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1118    <a name="rfc.section.6.2.3"></a><h3>6.2.3.&nbsp;
1119    Getting information about a specific audio
1120                    output driver</h3>
1121    
1122  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1123                      about a specific audio output driver:                      about a specific audio output driver:
1124  </p>  </p>
1125  <p></p>  <p>
1126                            </p>
1127  <blockquote class="text">  <blockquote class="text">
1128  <p>GET AUDIO_OUTPUT_DRIVER INFO  <p>GET AUDIO_OUTPUT_DRIVER INFO
1129                               &lt;audio-output-driver&gt;                               &lt;audio-output-driver&gt;
1130  </p>  </p>
1131  </blockquote>  </blockquote><p>
1132                        
1133    </p>
1134  <p>Where &lt;audio-output-driver&gt; is the name of the  <p>Where &lt;audio-output-driver&gt; is the name of the
1135                      audio output driver, returned by the                      audio output driver, returned by the
1136                      <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span>Getting all available audio output drivers</span></a> command.                      <a class='info' href='#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS'>"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span> (</span><span class='info'>Getting all available audio output drivers</span><span>)</span></a> command.
1137  </p>  </p>
1138  <p>Possible Answers:  <p>Possible Answers:
1139  </p>  </p>
1140  <p></p>  <p>
1141                            </p>
1142  <blockquote class="text">  <blockquote class="text">
1143  <p>LinuxSampler will answer by sending a  <p>LinuxSampler will answer by sending a
1144                              &lt;CRLF&gt; separated list. Each answer line                              &lt;CRLF&gt; separated list. Each answer line
# Line 904  Intellectual Property and Copyright Stat Line 1149  Intellectual Property and Copyright Stat
1149                              following information categories are                              following information categories are
1150                              defined:                              defined:
1151  </p>  </p>
1152  <p></p>  <p>
1153                                  </p>
1154  <blockquote class="text">  <blockquote class="text">
1155  <p>DESCRIPTION -  <p>DESCRIPTION -
1156                                      </p>                                      </p>
# Line 913  Intellectual Property and Copyright Stat Line 1159  Intellectual Property and Copyright Stat
1159                                        audio output driver                                        audio output driver
1160  </p>  </p>
1161  </blockquote>  </blockquote>
1162                                      
1163    
1164  <p>VERSION -  <p>VERSION -
1165                                      </p>                                      </p>
# Line 921  Intellectual Property and Copyright Stat Line 1168  Intellectual Property and Copyright Stat
1168                                        driver's version                                        driver's version
1169  </p>  </p>
1170  </blockquote>  </blockquote>
1171                                      
1172    
1173  <p>PARAMETERS -  <p>PARAMETERS -
1174                                      </p>                                      </p>
# Line 933  Intellectual Property and Copyright Stat Line 1181  Intellectual Property and Copyright Stat
1181                                        output drivers                                        output drivers
1182  </p>  </p>
1183  </blockquote>  </blockquote>
1184                                      
1185    
1186  </blockquote>  </blockquote>
1187                                
1188    
1189  <p>The mentioned fields above don't have to be  <p>The mentioned fields above don't have to be
1190                              in particular order.                              in particular order.
1191  </p>  </p>
1192  </blockquote>  </blockquote><p>
1193                        
1194    </p>
1195  <p>Example:  <p>Example:
1196  </p>  </p>
1197  <p></p>  <p>
1198                          </p>
1199  <blockquote class="text">  <blockquote class="text">
1200  <p>C: "GET AUDIO_OUTPUT_DRIVER INFO ALSA"  <p>C: "GET AUDIO_OUTPUT_DRIVER INFO ALSA"
1201  </p>  </p>
# Line 958  Intellectual Property and Copyright Stat Line 1210  Intellectual Property and Copyright Stat
1210  </p>  </p>
1211  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1212  </p>  </p>
1213  </blockquote>  </blockquote><p>
1214                        
1215  <a name="rfc.section.5.2.4"></a><h4><a name="GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO">5.2.4</a>&nbsp;Getting information about specific audio  </p>
1216                  output driver parameter</h4>  <a name="GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
1217    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1218    <a name="rfc.section.6.2.4"></a><h3>6.2.4.&nbsp;
1219    Getting information about specific audio
1220                    output driver parameter</h3>
1221    
1222  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1223                      about a  specific audio output driver parameter:                      about a  specific audio output driver parameter:
1224  </p>  </p>
1225  <p></p>  <p>
1226                            </p>
1227  <blockquote class="text">  <blockquote class="text">
1228  <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;]
1229  </p>  </p>
1230  </blockquote>  </blockquote><p>
1231                        
1232    </p>
1233  <p>Where &lt;audio&gt; is the name of the audio output  <p>Where &lt;audio&gt; is the name of the audio output
1234                      driver as returned by the <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span>Getting all available audio output drivers</span></a> command,                      driver as returned by the <a class='info' href='#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS'>"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span> (</span><span class='info'>Getting all available audio output drivers</span><span>)</span></a> command,
1235                      &lt;prm&gt; a specific parameter name for which information should be                      &lt;prm&gt; a specific parameter name for which information should be
1236                      obtained (as returned by the                      obtained (as returned by the
1237                      <a class="info" href="#GET AUDIO_OUTPUT_DRIVER INFO">"GET AUDIO_OUTPUT_DRIVER INFO"<span>Getting information about a specific audio                 output driver</span></a> command) and                      <a class='info' href='#GET AUDIO_OUTPUT_DRIVER INFO'>"GET AUDIO_OUTPUT_DRIVER INFO"<span> (</span><span class='info'>Getting information about a specific audio                 output driver</span><span>)</span></a> command) and
1238                      &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
1239                      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
1240                      pairs in form of "key1=val1 key2=val2 ...", where character string values                      pairs in form of "key1=val1 key2=val2 ...", where character string values
# Line 987  Intellectual Property and Copyright Stat Line 1245  Intellectual Property and Copyright Stat
1245  </p>  </p>
1246  <p>Possible Answers:  <p>Possible Answers:
1247  </p>  </p>
1248  <p></p>  <p>
1249                            </p>
1250  <blockquote class="text">  <blockquote class="text">
1251  <p>LinuxSampler will answer by sending a  <p>LinuxSampler will answer by sending a
1252                              &lt;CRLF&gt; separated list.                              &lt;CRLF&gt; separated list.
# Line 1000  Intellectual Property and Copyright Stat Line 1259  Intellectual Property and Copyright Stat
1259                              which is only shown dependently to given driver parameter. At                              which is only shown dependently to given driver parameter. At
1260                              the moment the following information categories are defined:                              the moment the following information categories are defined:
1261  </p>  </p>
1262  </blockquote>  </blockquote><p>
1263                        
1264  <p></p>  </p>
1265    <p>
1266                            </p>
1267  <blockquote class="text">  <blockquote class="text">
1268  <p>TYPE -  <p>TYPE -
1269                                </p>                                </p>
# Line 1014  Intellectual Property and Copyright Stat Line 1275  Intellectual Property and Copyright Stat
1275                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1276  </p>  </p>
1277  </blockquote>  </blockquote>
1278                                
1279    
1280  <p>DESCRIPTION -  <p>DESCRIPTION -
1281                                </p>                                </p>
# Line 1022  Intellectual Property and Copyright Stat Line 1284  Intellectual Property and Copyright Stat
1284                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1285  </p>  </p>
1286  </blockquote>  </blockquote>
1287                                
1288    
1289  <p>MANDATORY -  <p>MANDATORY -
1290                                </p>                                </p>
1291  <blockquote class="text">  <blockquote class="text">
1292  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
1293                                  given when the device is to be created with the                                  given when the device is to be created with the
1294                                  <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span>Creating an audio output device</span></a>                                  <a class='info' href='#CREATE AUDIO_OUTPUT_DEVICE'>'CREATE AUDIO_OUTPUT_DEVICE'<span> (</span><span class='info'>Creating an audio output device</span><span>)</span></a>
1295                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1296  </p>  </p>
1297  </blockquote>  </blockquote>
1298                                
1299    
1300  <p>FIX -  <p>FIX -
1301                                </p>                                </p>
1302  <blockquote class="text">  <blockquote class="text">
1303  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
1304                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
1305                                  the <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span>Creating an audio output device</span></a>                                  the <a class='info' href='#CREATE AUDIO_OUTPUT_DEVICE'>'CREATE AUDIO_OUTPUT_DEVICE'<span> (</span><span class='info'>Creating an audio output device</span><span>)</span></a>
1306                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1307  </p>  </p>
1308  </blockquote>  </blockquote>
1309                                
1310    
1311  <p>MULTIPLICITY -  <p>MULTIPLICITY -
1312                                </p>                                </p>
# Line 1052  Intellectual Property and Copyright Stat Line 1317  Intellectual Property and Copyright Stat
1317                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1318  </p>  </p>
1319  </blockquote>  </blockquote>
1320                                
1321    
1322  <p>DEPENDS -  <p>DEPENDS -
1323                                </p>                                </p>
# Line 1068  Intellectual Property and Copyright Stat Line 1334  Intellectual Property and Copyright Stat
1334                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1335  </p>  </p>
1336  </blockquote>  </blockquote>
1337                                
1338    
1339  <p>DEFAULT -  <p>DEFAULT -
1340                                </p>                                </p>
1341  <blockquote class="text">  <blockquote class="text">
1342  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
1343                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
1344                                  given with the <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">'CREATE AUDIO_OUTPUT_DEVICE'<span>Creating an audio output device</span></a> command,                                  given with the <a class='info' href='#CREATE AUDIO_OUTPUT_DEVICE'>'CREATE AUDIO_OUTPUT_DEVICE'<span> (</span><span class='info'>Creating an audio output device</span><span>)</span></a> command,
1345                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
1346                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
1347                                  apostrophes (')                                  apostrophes (')
1348                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1349  </p>  </p>
1350  </blockquote>  </blockquote>
1351                                
1352    
1353  <p>RANGE_MIN -  <p>RANGE_MIN -
1354                                </p>                                </p>
# Line 1092  Intellectual Property and Copyright Stat Line 1360  Intellectual Property and Copyright Stat
1360                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1361  </p>  </p>
1362  </blockquote>  </blockquote>
1363                                
1364    
1365  <p>RANGE_MAX -  <p>RANGE_MAX -
1366                                </p>                                </p>
# Line 1103  Intellectual Property and Copyright Stat Line 1372  Intellectual Property and Copyright Stat
1372                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1373  </p>  </p>
1374  </blockquote>  </blockquote>
1375                                
1376    
1377  <p>POSSIBILITIES -  <p>POSSIBILITIES -
1378                                </p>                                </p>
# Line 1113  Intellectual Property and Copyright Stat Line 1383  Intellectual Property and Copyright Stat
1383                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1384  </p>  </p>
1385  </blockquote>  </blockquote>
1386                                
1387    
1388  </blockquote>  </blockquote><p>
1389                        
1390    </p>
1391  <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.
1392  </p>  </p>
1393  <p>Examples:  <p>Examples:
1394  </p>  </p>
1395  <p></p>  <p>
1396                            </p>
1397  <blockquote class="text">  <blockquote class="text">
1398  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA CARD"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA CARD"
1399  </p>  </p>
# Line 1140  Intellectual Property and Copyright Stat Line 1413  Intellectual Property and Copyright Stat
1413  </p>  </p>
1414  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1415  </p>  </p>
1416  </blockquote>  </blockquote><p>
1417                        
1418  <p></p>  </p>
1419    <p>
1420                            </p>
1421  <blockquote class="text">  <blockquote class="text">
1422  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE"
1423  </p>  </p>
# Line 1162  Intellectual Property and Copyright Stat Line 1437  Intellectual Property and Copyright Stat
1437  </p>  </p>
1438  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1439  </p>  </p>
1440  </blockquote>  </blockquote><p>
1441                        
1442  <p></p>  </p>
1443    <p>
1444                            </p>
1445  <blockquote class="text">  <blockquote class="text">
1446  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE CARD='0,0'"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE CARD='0,0'"
1447  </p>  </p>
# Line 1188  Intellectual Property and Copyright Stat Line 1465  Intellectual Property and Copyright Stat
1465  </p>  </p>
1466  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1467  </p>  </p>
1468  </blockquote>  </blockquote><p>
1469                        
1470  <a name="rfc.section.5.2.5"></a><h4><a name="CREATE AUDIO_OUTPUT_DEVICE">5.2.5</a>&nbsp;Creating an audio output device</h4>  </p>
1471    <a name="CREATE AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1472    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1473    <a name="rfc.section.6.2.5"></a><h3>6.2.5.&nbsp;
1474    Creating an audio output device</h3>
1475    
1476  <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:
1477  </p>  </p>
1478  <p></p>  <p>
1479                            </p>
1480  <blockquote class="text">  <blockquote class="text">
1481  <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;]
1482  </p>  </p>
1483  </blockquote>  </blockquote><p>
1484                        
1485    </p>
1486  <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
1487                      output system and &lt;param-list&gt; by an optional list of driver                      output system as returned by the
1488                        <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>
1489                        command and &lt;param-list&gt; by an optional list of driver
1490                      specific parameters in form of "key1=val1 key2=val2 ...", where                      specific parameters in form of "key1=val1 key2=val2 ...", where
1491                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
1492                      Note that there might be drivers which require parameter(s) to be                      Note that there might be drivers which require parameter(s) to be
# Line 1210  Intellectual Property and Copyright Stat Line 1495  Intellectual Property and Copyright Stat
1495  </p>  </p>
1496  <p>Possible Answers:  <p>Possible Answers:
1497  </p>  </p>
1498  <p></p>  <p>
1499                            </p>
1500  <blockquote class="text">  <blockquote class="text">
1501  <p>"OK[&lt;device-id&gt;]" -  <p>"OK[&lt;device-id&gt;]" -
1502                                  </p>                                  </p>
# Line 1219  Intellectual Property and Copyright Stat Line 1505  Intellectual Property and Copyright Stat
1505                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
1506  </p>  </p>
1507  </blockquote>  </blockquote>
1508                                
1509    
1510  <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;" -
1511                                  </p>                                  </p>
# Line 1231  Intellectual Property and Copyright Stat Line 1518  Intellectual Property and Copyright Stat
1518                                      warning message                                      warning message
1519  </p>  </p>
1520  </blockquote>  </blockquote>
1521                                
1522    
1523  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1524                                  </p>                                  </p>
# Line 1238  Intellectual Property and Copyright Stat Line 1526  Intellectual Property and Copyright Stat
1526  <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
1527  </p>  </p>
1528  </blockquote>  </blockquote>
1529                                
1530    
1531  </blockquote>  </blockquote><p>
1532                        
1533    </p>
1534  <p>Examples:  <p>Examples:
1535  </p>  </p>
1536  <p></p>  <p>
1537                            </p>
1538  <blockquote class="text">  <blockquote class="text">
1539  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA"
1540  </p>  </p>
1541  <p>S: "OK[0]"  <p>S: "OK[0]"
1542  </p>  </p>
1543  </blockquote>  </blockquote><p>
1544                        
1545  <p></p>  </p>
1546    <p>
1547                            </p>
1548  <blockquote class="text">  <blockquote class="text">
1549  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA CARD='2,0' SAMPLERATE=96000"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA CARD='2,0' SAMPLERATE=96000"
1550  </p>  </p>
1551  <p>S: "OK[1]"  <p>S: "OK[1]"
1552  </p>  </p>
1553  </blockquote>  </blockquote><p>
1554                        
1555  <a name="rfc.section.5.2.6"></a><h4><a name="DESTROY AUDIO_OUTPUT_DEVICE">5.2.6</a>&nbsp;Destroying an audio output device</h4>  </p>
1556    <a name="DESTROY AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1557    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1558    <a name="rfc.section.6.2.6"></a><h3>6.2.6.&nbsp;
1559    Destroying an audio output device</h3>
1560    
1561  <p>Use the following command to destroy a created output device:  <p>Use the following command to destroy a created output device:
1562  </p>  </p>
1563  <p></p>  <p>
1564                            </p>
1565  <blockquote class="text">  <blockquote class="text">
1566  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;
1567  </p>  </p>
1568  </blockquote>  </blockquote><p>
1569                        
1570    </p>
1571  <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
1572                      audio output device as given by the                      audio output device as given by the
1573                      <a class="info" href="#CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"<span>Creating an audio output device</span></a>                      <a class='info' href='#CREATE AUDIO_OUTPUT_DEVICE'>"CREATE AUDIO_OUTPUT_DEVICE"<span> (</span><span class='info'>Creating an audio output device</span><span>)</span></a>
1574                      or <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span>Getting all created audio output device list</span></a>                      or <a class='info' href='#LIST AUDIO_OUTPUT_DEVICES'>"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class='info'>Getting all created audio output device list</span><span>)</span></a>
1575                      command.                      command.
1576  </p>  </p>
1577  <p>Possible Answers:  <p>Possible Answers:
1578  </p>  </p>
1579  <p></p>  <p>
1580                            </p>
1581  <blockquote class="text">  <blockquote class="text">
1582  <p>"OK" -  <p>"OK" -
1583                                  </p>                                  </p>
# Line 1285  Intellectual Property and Copyright Stat Line 1585  Intellectual Property and Copyright Stat
1585  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
1586  </p>  </p>
1587  </blockquote>  </blockquote>
1588                                
1589    
1590  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1591                                  </p>                                  </p>
# Line 1296  Intellectual Property and Copyright Stat Line 1597  Intellectual Property and Copyright Stat
1597                                      warning code and warning message                                      warning code and warning message
1598  </p>  </p>
1599  </blockquote>  </blockquote>
1600                                
1601    
1602  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1603                                  </p>                                  </p>
# Line 1304  Intellectual Property and Copyright Stat Line 1606  Intellectual Property and Copyright Stat
1606                                      error message                                      error message
1607  </p>  </p>
1608  </blockquote>  </blockquote>
1609                                
1610    
1611  </blockquote>  </blockquote><p>
1612                        
1613    </p>
1614  <p>Example:  <p>Example:
1615  </p>  </p>
1616  <p></p>  <p>
1617                            </p>
1618  <blockquote class="text">  <blockquote class="text">
1619  <p>C: "DESTROY AUDIO_OUTPUT_DEVICE 0"  <p>C: "DESTROY AUDIO_OUTPUT_DEVICE 0"
1620  </p>  </p>
1621  <p>S: "OK"  <p>S: "OK"
1622  </p>  </p>
1623  </blockquote>  </blockquote><p>
1624                        
1625  <a name="rfc.section.5.2.7"></a><h4><a name="GET AUDIO_OUTPUT_DEVICES">5.2.7</a>&nbsp;Getting all created audio output device count</h4>  </p>
1626    <a name="GET AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1627    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1628    <a name="rfc.section.6.2.7"></a><h3>6.2.7.&nbsp;
1629    Getting all created audio output device count</h3>
1630    
1631  <p>Use the following command to count all created audio output devices:  <p>Use the following command to count all created audio output devices:
1632  </p>  </p>
1633  <p></p>  <p>
1634                            </p>
1635  <blockquote class="text">  <blockquote class="text">
1636  <p>GET AUDIO_OUTPUT_DEVICES  <p>GET AUDIO_OUTPUT_DEVICES
1637  </p>  </p>
1638  </blockquote>  </blockquote><p>
1639                        
1640    </p>
1641  <p>Possible Answers:  <p>Possible Answers:
1642  </p>  </p>
1643  <p></p>  <p>
1644                            </p>
1645  <blockquote class="text">  <blockquote class="text">
1646  <p>LinuxSampler will answer by sending the current number of all  <p>LinuxSampler will answer by sending the current number of all
1647                              audio output devices.                              audio output devices.
1648  </p>  </p>
1649  </blockquote>  </blockquote><p>
1650                        
1651    </p>
1652  <p>Example:  <p>Example:
1653  </p>  </p>
1654  <p></p>  <p>
1655                            </p>
1656  <blockquote class="text">  <blockquote class="text">
1657  <p>C: "GET AUDIO_OUTPUT_DEVICES"  <p>C: "GET AUDIO_OUTPUT_DEVICES"
1658  </p>  </p>
1659  <p>S: "4"  <p>S: "4"
1660  </p>  </p>
1661  </blockquote>  </blockquote><p>
1662                        
1663  <a name="rfc.section.5.2.8"></a><h4><a name="LIST AUDIO_OUTPUT_DEVICES">5.2.8</a>&nbsp;Getting all created audio output device list</h4>  </p>
1664    <a name="LIST AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1665    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1666    <a name="rfc.section.6.2.8"></a><h3>6.2.8.&nbsp;
1667    Getting all created audio output device list</h3>
1668    
1669  <p>Use the following command to list all created audio output devices:  <p>Use the following command to list all created audio output devices:
1670  </p>  </p>
1671  <p></p>  <p>
1672                            </p>
1673  <blockquote class="text">  <blockquote class="text">
1674  <p>LIST AUDIO_OUTPUT_DEVICES  <p>LIST AUDIO_OUTPUT_DEVICES
1675  </p>  </p>
1676  </blockquote>  </blockquote><p>
1677                        
1678    </p>
1679  <p>Possible Answers:  <p>Possible Answers:
1680  </p>  </p>
1681  <p></p>  <p>
1682                            </p>
1683  <blockquote class="text">  <blockquote class="text">
1684  <p>LinuxSampler will answer by sending a comma separated list with  <p>LinuxSampler will answer by sending a comma separated list with
1685                              the numerical IDs of all audio output devices.                              the numerical IDs of all audio output devices.
1686  </p>  </p>
1687  </blockquote>  </blockquote><p>
1688                        
1689    </p>
1690  <p>Example:  <p>Example:
1691  </p>  </p>
1692  <p></p>  <p>
1693                            </p>
1694  <blockquote class="text">  <blockquote class="text">
1695  <p>C: "LIST AUDIO_OUTPUT_DEVICES"  <p>C: "LIST AUDIO_OUTPUT_DEVICES"
1696  </p>  </p>
1697  <p>S: "0,1,4,5"  <p>S: "0,1,4,5"
1698  </p>  </p>
1699  </blockquote>  </blockquote><p>
1700                        
1701  <a name="rfc.section.5.2.9"></a><h4><a name="GET AUDIO_OUTPUT_DEVICE INFO">5.2.9</a>&nbsp;Getting current settings of an audio output device</h4>  </p>
1702    <a name="GET AUDIO_OUTPUT_DEVICE INFO"></a><br /><hr />
1703    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1704    <a name="rfc.section.6.2.9"></a><h3>6.2.9.&nbsp;
1705    Getting current settings of an audio output device</h3>
1706    
1707  <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:
1708  </p>  </p>
1709  <p></p>  <p>
1710                            </p>
1711  <blockquote class="text">  <blockquote class="text">
1712  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;
1713  </p>  </p>
1714  </blockquote>  </blockquote><p>
1715                        
1716    </p>
1717  <p>Where &lt;device-id&gt; should be replaced by numerical ID  <p>Where &lt;device-id&gt; should be replaced by numerical ID
1718                      of the audio output device as e.g. returned by the                      of the audio output device as e.g. returned by the
1719                      <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span>Getting all created audio output device list</span></a> command.                      <a class='info' href='#LIST AUDIO_OUTPUT_DEVICES'>"LIST AUDIO_OUTPUT_DEVICES"<span> (</span><span class='info'>Getting all created audio output device list</span><span>)</span></a> command.
1720  </p>  </p>
1721  <p>Possible Answers:  <p>Possible Answers:
1722  </p>  </p>
# Line 1399  Intellectual Property and Copyright Stat Line 1728  Intellectual Property and Copyright Stat
1728                      encapsulated into apostrophes ('). At the moment the following                      encapsulated into apostrophes ('). At the moment the following
1729                      information categories are defined (independently of device):                      information categories are defined (independently of device):
1730  </p>  </p>
1731  <p></p>  <p>
1732                            </p>
1733  <blockquote class="text">  <blockquote class="text">
1734  <p>DRIVER -  <p>DRIVER -
1735                                  </p>                                  </p>
1736  <blockquote class="text">  <blockquote class="text">
1737  <p>identifier of the used audio output driver, as also  <p>identifier of the used audio output driver, as also
1738                                      returned by the                                      returned by the
1739                                      <a class="info" href="#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS">"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span>Getting all available audio output drivers</span></a>                                      <a class='info' href='#LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS'>"LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"<span> (</span><span class='info'>Getting all available audio output drivers</span><span>)</span></a>
1740                                      command                                      command
1741  </p>  </p>
1742  </blockquote>  </blockquote>
1743                                
1744    
1745  <p>CHANNELS -  <p>CHANNELS -
1746                                  </p>                                  </p>
# Line 1418  Intellectual Property and Copyright Stat Line 1749  Intellectual Property and Copyright Stat
1749                                      offers                                      offers
1750  </p>  </p>
1751  </blockquote>  </blockquote>
1752                                
1753    
1754  <p>SAMPLERATE -  <p>SAMPLERATE -
1755                                  </p>                                  </p>
# Line 1425  Intellectual Property and Copyright Stat Line 1757  Intellectual Property and Copyright Stat
1757  <p>playback sample rate the device uses  <p>playback sample rate the device uses
1758  </p>  </p>
1759  </blockquote>  </blockquote>
1760                                
1761    
1762  <p>ACTIVE -  <p>ACTIVE -
1763                                  </p>                                  </p>
# Line 1435  Intellectual Property and Copyright Stat Line 1768  Intellectual Property and Copyright Stat
1768                                      any audio                                      any audio
1769  </p>  </p>
1770  </blockquote>  </blockquote>
1771                                
1772    
1773  </blockquote>  </blockquote><p>
1774                        
1775    </p>
1776  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1777                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1778                      returned by all audio output devices. Every audio output driver                      returned by all audio output devices. Every audio output driver
1779                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
1780                      <a class="info" href="#GET AUDIO_OUTPUT_DRIVER INFO">Section 5.2.3<span>Getting information about a specific audio                 output driver</span></a>)                      <a class='info' href='#GET AUDIO_OUTPUT_DRIVER INFO'>Section&nbsp;6.2.3<span> (</span><span class='info'>Getting information about a specific audio                 output driver</span><span>)</span></a>)
1781                      which are also returned by this command.                      which are also returned by this command.
1782  </p>  </p>
1783  <p>Example:  <p>Example:
1784  </p>  </p>
1785  <p></p>  <p>
1786                            </p>
1787  <blockquote class="text">  <blockquote class="text">
1788  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"
1789  </p>  </p>
# Line 1467  Intellectual Property and Copyright Stat Line 1803  Intellectual Property and Copyright Stat
1803  </p>  </p>
1804  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1805  </p>  </p>
1806  </blockquote>  </blockquote><p>
1807                        
1808  <a name="rfc.section.5.2.10"></a><h4><a name="SET AUDIO_OUTPUT_DEVICE_PARAMETER">5.2.10</a>&nbsp;Changing settings of audio output devices</h4>  </p>
1809    <a name="SET AUDIO_OUTPUT_DEVICE_PARAMETER"></a><br /><hr />
1810    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1811    <a name="rfc.section.6.2.10"></a><h3>6.2.10.&nbsp;
1812    Changing settings of audio output devices</h3>
1813    
1814  <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:
1815  </p>  </p>
1816  <p></p>  <p>
1817                            </p>
1818  <blockquote class="text">  <blockquote class="text">
1819  <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;
1820  </p>  </p>
1821  </blockquote>  </blockquote><p>
1822                        
1823    </p>
1824  <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
1825                      audio output device, &lt;key&gt; by the name of the parameter to change                      audio output device as given by the
1826                        <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>
1827                        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>
1828                        command, &lt;key&gt; by the name of the parameter to change
1829                      and &lt;value&gt; by the new value for this parameter.                      and &lt;value&gt; by the new value for this parameter.
1830  </p>  </p>
1831  <p>Possible Answers:  <p>Possible Answers:
1832  </p>  </p>
1833  <p></p>  <p>
1834                            </p>
1835  <blockquote class="text">  <blockquote class="text">
1836  <p>"OK" -  <p>"OK" -
1837                                  </p>                                  </p>
# Line 1493  Intellectual Property and Copyright Stat Line 1839  Intellectual Property and Copyright Stat
1839  <p>in case setting was successfully changed  <p>in case setting was successfully changed
1840  </p>  </p>
1841  </blockquote>  </blockquote>
1842                                
1843    
1844  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1845                                  </p>                                  </p>
# Line 1502  Intellectual Property and Copyright Stat Line 1849  Intellectual Property and Copyright Stat
1849                                      warning code and warning message                                      warning code and warning message
1850  </p>  </p>
1851  </blockquote>  </blockquote>
1852                                
1853    
1854  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1855                                  </p>                                  </p>
# Line 1510  Intellectual Property and Copyright Stat Line 1858  Intellectual Property and Copyright Stat
1858                                      error message                                      error message
1859  </p>  </p>
1860  </blockquote>  </blockquote>
1861                                
1862    
1863  </blockquote>  </blockquote><p>
1864                        
1865    </p>
1866  <p>Example:  <p>Example:
1867  </p>  </p>
1868  <p></p>  <p>
1869                            </p>
1870  <blockquote class="text">  <blockquote class="text">
1871  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 FRAGMENTSIZE=128"  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 FRAGMENTSIZE=128"
1872  </p>  </p>
1873  <p>S: "OK"  <p>S: "OK"
1874  </p>  </p>
1875  </blockquote>  </blockquote><p>
1876                        
1877  <a name="rfc.section.5.2.11"></a><h4><a name="GET AUDIO_OUTPUT_CHANNEL INFO">5.2.11</a>&nbsp;Getting information about an audio channel</h4>  </p>
1878    <a name="GET AUDIO_OUTPUT_CHANNEL INFO"></a><br /><hr />
1879    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1880    <a name="rfc.section.6.2.11"></a><h3>6.2.11.&nbsp;
1881    Getting information about an audio channel</h3>
1882    
1883  <p>Use the following command to get information about an audio channel:  <p>Use the following command to get information about an audio channel:
1884  </p>  </p>
1885  <p></p>  <p>
1886                            </p>
1887  <blockquote class="text">  <blockquote class="text">
1888  <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;
1889  </p>  </p>
1890  </blockquote>  </blockquote><p>
1891                        
1892  <p>Where &lt;device-id&gt; is the numerical ID of the audio output device  </p>
1893                      and &lt;audio-chan&gt; the audio channel number.  <p>Where &lt;device-id&gt; is the numerical ID of the audio output device as given by the
1894                        <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>
1895                        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>
1896                        command and &lt;audio-chan&gt; the audio channel number.
1897  </p>  </p>
1898  <p>Possible Answers:  <p>Possible Answers:
1899  </p>  </p>
1900  <p></p>  <p>
1901                            </p>
1902  <blockquote class="text">  <blockquote class="text">
1903  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
1904                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 1546  Intellectual Property and Copyright Stat Line 1906  Intellectual Property and Copyright Stat
1906                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
1907                              the following information categories are defined:                              the following information categories are defined:
1908  </p>  </p>
1909  <p></p>  <p>
1910                                    </p>
1911  <blockquote class="text">  <blockquote class="text">
1912  <p>NAME -  <p>NAME -
1913                                          </p>                                          </p>
# Line 1555  Intellectual Property and Copyright Stat Line 1916  Intellectual Property and Copyright Stat
1916                                              doesn't have to be unique (always returned by all audio channels)                                              doesn't have to be unique (always returned by all audio channels)
1917  </p>  </p>
1918  </blockquote>  </blockquote>
1919                                        
1920    
1921  <p>IS_MIX_CHANNEL -  <p>IS_MIX_CHANNEL -
1922                                          </p>                                          </p>
# Line 1567  Intellectual Property and Copyright Stat Line 1929  Intellectual Property and Copyright Stat
1929                                              (always returned by all audio channels)                                              (always returned by all audio channels)
1930  </p>  </p>
1931  </blockquote>  </blockquote>
1932                                        
1933    
1934  <p>MIX_CHANNEL_DESTINATION -  <p>MIX_CHANNEL_DESTINATION -
1935                                          </p>                                          </p>
# Line 1578  Intellectual Property and Copyright Stat Line 1941  Intellectual Property and Copyright Stat
1941                                              (only returned in case the audio channel is mix channel)                                              (only returned in case the audio channel is mix channel)
1942  </p>  </p>
1943  </blockquote>  </blockquote>
1944                                        
1945    
1946  </blockquote>  </blockquote>
1947                                
1948    
1949  </blockquote>  </blockquote><p>
1950                        
1951    </p>
1952  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1953                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1954                      generally returned for the described cases by all audio                      generally returned for the described cases by all audio
# Line 1592  Intellectual Property and Copyright Stat Line 1958  Intellectual Property and Copyright Stat
1958  </p>  </p>
1959  <p>Examples:  <p>Examples:
1960  </p>  </p>
1961  <p></p>  <p>
1962                            </p>
1963  <blockquote class="text">  <blockquote class="text">
1964  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 0"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 0"
1965  </p>  </p>
# Line 1602  Intellectual Property and Copyright Stat Line 1969  Intellectual Property and Copyright Stat
1969  </p>  </p>
1970  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1971  </p>  </p>
1972  </blockquote>  </blockquote><p>
1973                        
1974  <p></p>  </p>
1975    <p>
1976                            </p>
1977  <blockquote class="text">  <blockquote class="text">
1978  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 1"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 1"
1979  </p>  </p>
# Line 1614  Intellectual Property and Copyright Stat Line 1983  Intellectual Property and Copyright Stat
1983  </p>  </p>
1984  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1985  </p>  </p>
1986  </blockquote>  </blockquote><p>
1987                        
1988  <p></p>  </p>
1989    <p>
1990                            </p>
1991  <blockquote class="text">  <blockquote class="text">
1992  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 2"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 2"
1993  </p>  </p>
# Line 1628  Intellectual Property and Copyright Stat Line 1999  Intellectual Property and Copyright Stat
1999  </p>  </p>
2000  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2001  </p>  </p>
2002  </blockquote>  </blockquote><p>
2003                        
2004  <p></p>  </p>
2005    <p>
2006                            </p>
2007  <blockquote class="text">  <blockquote class="text">
2008  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 1 0"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 1 0"
2009  </p>  </p>
# Line 1642  Intellectual Property and Copyright Stat Line 2015  Intellectual Property and Copyright Stat
2015  </p>  </p>
2016  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2017  </p>  </p>
2018  </blockquote>  </blockquote><p>
2019                        
2020  <a name="rfc.section.5.2.12"></a><h4><a name="GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO">5.2.12</a>&nbsp;Getting information about specific audio channel parameter</h4>  </p>
2021    <a name="GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO"></a><br /><hr />
2022    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2023    <a name="rfc.section.6.2.12"></a><h3>6.2.12.&nbsp;
2024    Getting information about specific audio channel parameter</h3>
2025    
2026  <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:
2027  </p>  </p>
2028  <p></p>  <p>
2029                            </p>
2030  <blockquote class="text">  <blockquote class="text">
2031  <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;
2032  </p>  </p>
2033  </blockquote>  </blockquote><p>
2034                        
2035  <p>Where &lt;dev-id&gt; is the numerical ID of the audio output device as returned  </p>
2036                      by the <a class="info" href="#LIST AUDIO_OUTPUT_DEVICES">"LIST AUDIO_OUTPUT_DEVICES"<span>Getting all created audio output device list</span></a>  <p>Where &lt;dev-id&gt; is the numerical ID of the audio output device as returned by the
2037                        <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>
2038                        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>
2039                      command, &lt;chan&gt; the audio channel number                      command, &lt;chan&gt; the audio channel number
2040                      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
2041                      be obtained (as returned by the <a class="info" href="#GET AUDIO_OUTPUT_CHANNEL INFO">"GET AUDIO_OUTPUT_CHANNEL INFO"<span>Getting information about an audio channel</span></a> command).                      be obtained (as returned by the <a class='info' href='#GET AUDIO_OUTPUT_CHANNEL INFO'>"GET AUDIO_OUTPUT_CHANNEL INFO"<span> (</span><span class='info'>Getting information about an audio channel</span><span>)</span></a> command).
2042  </p>  </p>
2043  <p>Possible Answers:  <p>Possible Answers:
2044  </p>  </p>
2045  <p></p>  <p>
2046                            </p>
2047  <blockquote class="text">  <blockquote class="text">
2048  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2049                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 1673  Intellectual Property and Copyright Stat Line 2054  Intellectual Property and Copyright Stat
2054                              which is only shown dependently to the given audio channel. At                              which is only shown dependently to the given audio channel. At
2055                              the moment the following information categories are defined:                              the moment the following information categories are defined:
2056  </p>  </p>
2057  <p></p>  <p>
2058                                    </p>
2059  <blockquote class="text">  <blockquote class="text">
2060  <p>TYPE -  <p>TYPE -
2061                                          </p>                                          </p>
# Line 1684  Intellectual Property and Copyright Stat Line 2066  Intellectual Property and Copyright Stat
2066                                              (always returned)                                              (always returned)
2067  </p>  </p>
2068  </blockquote>  </blockquote>
2069                                        
2070    
2071  <p>DESCRIPTION -  <p>DESCRIPTION -
2072                                          </p>                                          </p>
# Line 1691  Intellectual Property and Copyright Stat Line 2074  Intellectual Property and Copyright Stat
2074  <p>arbitrary text describing the purpose of the parameter (always returned)  <p>arbitrary text describing the purpose of the parameter (always returned)
2075  </p>  </p>
2076  </blockquote>  </blockquote>
2077                                        
2078    
2079  <p>FIX -  <p>FIX -
2080                                          </p>                                          </p>
# Line 1700  Intellectual Property and Copyright Stat Line 2084  Intellectual Property and Copyright Stat
2084                                              (always returned)                                              (always returned)
2085  </p>  </p>
2086  </blockquote>  </blockquote>
2087                                        
2088    
2089  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2090                                          </p>                                          </p>
# Line 1710  Intellectual Property and Copyright Stat Line 2095  Intellectual Property and Copyright Stat
2095                                              (always returned)                                              (always returned)
2096  </p>  </p>
2097  </blockquote>  </blockquote>
2098                                        
2099    
2100  <p>RANGE_MIN -  <p>RANGE_MIN -
2101                                          </p>                                          </p>
# Line 1722  Intellectual Property and Copyright Stat Line 2108  Intellectual Property and Copyright Stat
2108                                              parameter)                                              parameter)
2109  </p>  </p>
2110  </blockquote>  </blockquote>
2111                                        
2112    
2113  <p>RANGE_MAX -  <p>RANGE_MAX -
2114                                          </p>                                          </p>
# Line 1734  Intellectual Property and Copyright Stat Line 2121  Intellectual Property and Copyright Stat
2121                                              parameter)                                              parameter)
2122  </p>  </p>
2123  </blockquote>  </blockquote>
2124                                        
2125    
2126  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2127                                          </p>                                          </p>
# Line 1745  Intellectual Property and Copyright Stat Line 2133  Intellectual Property and Copyright Stat
2133                                              parameter)                                              parameter)
2134  </p>  </p>
2135  </blockquote>  </blockquote>
2136                                        
2137    
2138  </blockquote>  </blockquote>
2139                                
2140    
2141  <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.
2142  </p>  </p>
2143  </blockquote>  </blockquote><p>
2144                        
2145    </p>
2146  <p>Example:  <p>Example:
2147  </p>  </p>
2148  <p></p>  <p>
2149                            </p>
2150  <blockquote class="text">  <blockquote class="text">
2151  <p>C: "GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 1 0 JACK_BINDINGS"  <p>C: "GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 1 0 JACK_BINDINGS"
2152  </p>  </p>
# Line 1770  Intellectual Property and Copyright Stat Line 2162  Intellectual Property and Copyright Stat
2162  </p>  </p>
2163  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2164  </p>  </p>
2165  </blockquote>  </blockquote><p>
2166                        
2167  <a name="rfc.section.5.2.13"></a><h4><a name="SET AUDIO_OUTPUT_CHANNEL_PARAMETER">5.2.13</a>&nbsp;Changing settings of audio output channels</h4>  </p>
2168    <a name="SET AUDIO_OUTPUT_CHANNEL_PARAMETER"></a><br /><hr />
2169    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2170    <a name="rfc.section.6.2.13"></a><h3>6.2.13.&nbsp;
2171    Changing settings of audio output channels</h3>
2172    
2173  <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:
2174  </p>  </p>
2175  <p></p>  <p>
2176                            </p>
2177  <blockquote class="text">  <blockquote class="text">
2178  <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;
2179  </p>  </p>
2180  </blockquote>  </blockquote><p>
2181                        
2182  <p>Where &lt;dev-id&gt; should be replaced by the numerical ID of the audio  </p>
2183                      device, &lt;chn&gt; by the audio channel number, &lt;key&gt; by the name of the  <p>Where &lt;dev-id&gt; should be replaced by the numerical ID of the audio output device as returned by the
2184                        <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>
2185                        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>
2186                        command, &lt;chn&gt; by the audio channel number, &lt;key&gt; by the name of the
2187                      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.
2188  </p>  </p>
2189  <p>Possible Answers:  <p>Possible Answers:
2190  </p>  </p>
2191  <p></p>  <p>
2192                            </p>
2193  <blockquote class="text">  <blockquote class="text">
2194  <p>"OK" -  <p>"OK" -
2195                                  </p>                                  </p>
# Line 1796  Intellectual Property and Copyright Stat Line 2197  Intellectual Property and Copyright Stat
2197  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2198  </p>  </p>
2199  </blockquote>  </blockquote>
2200                                
2201    
2202  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2203                                  </p>                                  </p>
# Line 1805  Intellectual Property and Copyright Stat Line 2207  Intellectual Property and Copyright Stat
2207                                     warning code and warning message                                     warning code and warning message
2208  </p>  </p>
2209  </blockquote>  </blockquote>
2210                                
2211    
2212  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2213                                  </p>                                  </p>
# Line 1813  Intellectual Property and Copyright Stat Line 2216  Intellectual Property and Copyright Stat
2216                                     error message                                     error message
2217  </p>  </p>
2218  </blockquote>  </blockquote>
2219                                
2220    
2221  </blockquote>  </blockquote><p>
2222                        
2223    </p>
2224  <p>Example:  <p>Example:
2225  </p>  </p>
2226  <p></p>  <p>
2227                            </p>
2228  <blockquote class="text">  <blockquote class="text">
2229  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 JACK_BINDINGS='PCM:0'"  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 JACK_BINDINGS='PCM:0'"
2230  </p>  </p>
2231  <p>S: "OK"  <p>S: "OK"
2232  </p>  </p>
2233  </blockquote>  </blockquote><p>
2234                        
2235  <p></p>  </p>
2236    <p>
2237                            </p>
2238  <blockquote class="text">  <blockquote class="text">
2239  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 NAME='monitor left'"  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 NAME='monitor left'"
2240  </p>  </p>
2241  <p>S: "OK"  <p>S: "OK"
2242  </p>  </p>
2243  </blockquote>  </blockquote><p>
2244                        
2245  <a name="rfc.section.5.3"></a><h4><a name="anchor11">5.3</a>&nbsp;Configuring MIDI input drivers</h4>  </p>
2246    <a name="anchor10"></a><br /><hr />
2247    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2248    <a name="rfc.section.6.3"></a><h3>6.3.&nbsp;
2249    Configuring MIDI input drivers</h3>
2250    
2251  <p>Instances of drivers in LinuxSampler are called devices. You can use  <p>Instances of drivers in LinuxSampler are called devices. You can use
2252                  multiple MIDI devices simultaneously, e.g. to use MIDI over ethernet as                  multiple MIDI devices simultaneously, e.g. to use MIDI over ethernet as
# Line 1862  Intellectual Property and Copyright Stat Line 2274  Intellectual Property and Copyright Stat
2274                  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
2275                  possible values, etc.                  possible values, etc.
2276  </p>  </p>
2277  <a name="rfc.section.5.3.1"></a><h4><a name="GET AVAILABLE_MIDI_INPUT_DRIVERS">5.3.1</a>&nbsp;Getting amount of available MIDI input drivers</h4>  <a name="GET AVAILABLE_MIDI_INPUT_DRIVERS"></a><br /><hr />
2278    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2279    <a name="rfc.section.6.3.1"></a><h3>6.3.1.&nbsp;
2280    Getting amount of available MIDI input drivers</h3>
2281    
2282  <p>Use the following command to get the number of  <p>Use the following command to get the number of
2283                      MIDI input drivers currently available for the                      MIDI input drivers currently available for the
2284                      LinuxSampler instance:                      LinuxSampler instance:
2285  </p>  </p>
2286  <p></p>  <p>
2287                            </p>
2288  <blockquote class="text">  <blockquote class="text">
2289  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS
2290  </p>  </p>
2291  </blockquote>  </blockquote><p>
2292                        
2293    </p>
2294  <p>Possible Answers:  <p>Possible Answers:
2295  </p>  </p>
2296  <p></p>  <p>
2297                            </p>
2298  <blockquote class="text">  <blockquote class="text">
2299  <p>LinuxSampler will answer by sending the  <p>LinuxSampler will answer by sending the
2300                              number of available MIDI input drivers.                              number of available MIDI input drivers.
2301  </p>  </p>
2302  </blockquote>  </blockquote><p>
2303                        
2304    </p>
2305  <p>Example:  <p>Example:
2306  </p>  </p>
2307  <p></p>  <p>
2308                            </p>
2309  <blockquote class="text">  <blockquote class="text">
2310  <p>C: "GET AVAILABLE_MIDI_INPUT_DRIVERS"  <p>C: "GET AVAILABLE_MIDI_INPUT_DRIVERS"
2311  </p>  </p>
2312  <p>S: "2"  <p>S: "2"
2313  </p>  </p>
2314  </blockquote>  </blockquote><p>
2315                        
2316  <a name="rfc.section.5.3.2"></a><h4><a name="LIST AVAILABLE_MIDI_INPUT_DRIVERS">5.3.2</a>&nbsp;Getting all available MIDI input drivers</h4>  </p>
2317    <a name="LIST AVAILABLE_MIDI_INPUT_DRIVERS"></a><br /><hr />
2318    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2319    <a name="rfc.section.6.3.2"></a><h3>6.3.2.&nbsp;
2320    Getting all available MIDI input drivers</h3>
2321    
2322  <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
2323                      for the LinuxSampler instance:                      for the LinuxSampler instance:
2324  </p>  </p>
2325  <p></p>  <p>
2326                            </p>
2327  <blockquote class="text">  <blockquote class="text">
2328  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS
2329  </p>  </p>
2330  </blockquote>  </blockquote><p>
2331                        
2332    </p>
2333  <p>Possible Answers:  <p>Possible Answers:
2334  </p>  </p>
2335  <p></p>  <p>
2336                            </p>
2337  <blockquote class="text">  <blockquote class="text">
2338  <p>LinuxSampler will answer by sending comma separated character  <p>LinuxSampler will answer by sending comma separated character
2339                              strings, each symbolizing a MIDI input driver.                              strings, each symbolizing a MIDI input driver.
2340  </p>  </p>
2341  </blockquote>  </blockquote><p>
2342                        
2343    </p>
2344  <p>Example:  <p>Example:
2345  </p>  </p>
2346  <p></p>  <p>
2347                            </p>
2348  <blockquote class="text">  <blockquote class="text">
2349  <p>C: "LIST AVAILABLE_MIDI_INPUT_DRIVERS"  <p>C: "LIST AVAILABLE_MIDI_INPUT_DRIVERS"
2350  </p>  </p>
2351  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
2352  </p>  </p>
2353  </blockquote>  </blockquote><p>
2354                        
2355  <a name="rfc.section.5.3.3"></a><h4><a name="GET MIDI_INPUT_DRIVER INFO">5.3.3</a>&nbsp;Getting information about a specific MIDI input driver</h4>  </p>
2356    <a name="GET MIDI_INPUT_DRIVER INFO"></a><br /><hr />
2357    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2358    <a name="rfc.section.6.3.3"></a><h3>6.3.3.&nbsp;
2359    Getting information about a specific MIDI input driver</h3>
2360    
2361  <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:
2362  </p>  </p>
2363  <p></p>  <p>
2364                            </p>
2365  <blockquote class="text">  <blockquote class="text">
2366  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;
2367  </p>  </p>
2368  </blockquote>  </blockquote><p>
2369                        
2370  <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver.  </p>
2371    <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver as returned
2372                        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.
2373  </p>  </p>
2374  <p>Possible Answers:  <p>Possible Answers:
2375  </p>  </p>
2376  <p></p>  <p>
2377                            </p>
2378  <blockquote class="text">  <blockquote class="text">
2379  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2380                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 1945  Intellectual Property and Copyright Stat Line 2382  Intellectual Property and Copyright Stat
2382                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
2383                              the following information categories are defined:                              the following information categories are defined:
2384  </p>  </p>
2385  <p></p>  <p>
2386                                    </p>
2387  <blockquote class="text">  <blockquote class="text">
2388  <p>DESCRIPTION -  <p>DESCRIPTION -
2389                                          </p>                                          </p>
# Line 1953  Intellectual Property and Copyright Stat Line 2391  Intellectual Property and Copyright Stat
2391  <p>arbitrary description text about the MIDI input driver  <p>arbitrary description text about the MIDI input driver
2392  </p>  </p>
2393  </blockquote>  </blockquote>
2394                                        
2395    
2396  <p>VERSION -  <p>VERSION -
2397                                          </p>                                          </p>
# Line 1960  Intellectual Property and Copyright Stat Line 2399  Intellectual Property and Copyright Stat
2399  <p>arbitrary character string regarding the driver's version  <p>arbitrary character string regarding the driver's version
2400  </p>  </p>
2401  </blockquote>  </blockquote>
2402                                        
2403    
2404  <p>PARAMETERS -  <p>PARAMETERS -
2405                                          </p>                                          </p>
# Line 1967  Intellectual Property and Copyright Stat Line 2407  Intellectual Property and Copyright Stat
2407  <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
2408  </p>  </p>
2409  </blockquote>  </blockquote>
2410                                        
2411    
2412  </blockquote>  </blockquote>
2413                                
2414    
2415  <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.
2416  </p>  </p>
2417  </blockquote>  </blockquote><p>
2418                        
2419    </p>
2420  <p>Example:  <p>Example:
2421  </p>  </p>
2422  <p></p>  <p>
2423                            </p>
2424  <blockquote class="text">  <blockquote class="text">
2425  <p>C: "GET MIDI_INPUT_DRIVER INFO ALSA"  <p>C: "GET MIDI_INPUT_DRIVER INFO ALSA"
2426  </p>  </p>
# Line 1988  Intellectual Property and Copyright Stat Line 2432  Intellectual Property and Copyright Stat
2432  </p>  </p>
2433  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2434  </p>  </p>
2435  </blockquote>  </blockquote><p>
2436                        
2437  <a name="rfc.section.5.3.4"></a><h4><a name="GET MIDI_INPUT_DRIVER_PARAMETER INFO">5.3.4</a>&nbsp;Getting information about specific MIDI input driver parameter</h4>  </p>
2438    <a name="GET MIDI_INPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
2439    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2440    <a name="rfc.section.6.3.4"></a><h3>6.3.4.&nbsp;
2441    Getting information about specific MIDI input driver parameter</h3>
2442    
2443  <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:
2444  </p>  </p>
2445  <p></p>  <p>
2446                            </p>
2447  <blockquote class="text">  <blockquote class="text">
2448  <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;]
2449  </p>  </p>
2450  </blockquote>  </blockquote><p>
2451                        
2452    </p>
2453  <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
2454                      by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span>Getting all available MIDI input drivers</span></a> command, &lt;param&gt; a specific                      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
2455                      parameter name for which information should be obtained (as returned by the                      parameter name for which information should be obtained (as returned by the
2456                      <a class="info" href="#GET MIDI_INPUT_DRIVER INFO">"GET MIDI_INPUT_DRIVER INFO"<span>Getting information about a specific MIDI input driver</span></a> command) and &lt;deplist&gt; is an optional list                      <a class='info' href='#GET MIDI_INPUT_DRIVER INFO'>"GET MIDI_INPUT_DRIVER INFO"<span> (</span><span class='info'>Getting information about a specific MIDI input driver</span><span>)</span></a> command) and &lt;deplist&gt; is an optional list
2457                      of parameters on which the sought parameter &lt;param&gt; depends on,                      of parameters on which the sought parameter &lt;param&gt; depends on,
2458                      &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 ...",
2459                      where character string values are encapsulated into apostrophes ('). Arguments                      where character string values are encapsulated into apostrophes ('). Arguments
# Line 2022  Intellectual Property and Copyright Stat Line 2472  Intellectual Property and Copyright Stat
2472                      which is only shown dependent to given driver parameter. At                      which is only shown dependent to given driver parameter. At
2473                      the moment the following information categories are defined:                      the moment the following information categories are defined:
2474  </p>  </p>
2475  <p></p>  <p>
2476                            </p>
2477  <blockquote class="text">  <blockquote class="text">
2478  <p>TYPE -  <p>TYPE -
2479                                </p>                                </p>
# Line 2033  Intellectual Property and Copyright Stat Line 2484  Intellectual Property and Copyright Stat
2484                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2485  </p>  </p>
2486  </blockquote>  </blockquote>
2487                                
2488    
2489  <p>DESCRIPTION -  <p>DESCRIPTION -
2490                                </p>                                </p>
# Line 2041  Intellectual Property and Copyright Stat Line 2493  Intellectual Property and Copyright Stat
2493                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2494  </p>  </p>
2495  </blockquote>  </blockquote>
2496                                
2497    
2498  <p>MANDATORY -  <p>MANDATORY -
2499                                </p>                                </p>
2500  <blockquote class="text">  <blockquote class="text">
2501  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
2502                                  given when the device is to be created with the                                  given when the device is to be created with the
2503                                  <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span>Creating a MIDI input device</span></a> command                                  <a class='info' href='#CREATE MIDI_INPUT_DEVICE'>'CREATE MIDI_INPUT_DEVICE'<span> (</span><span class='info'>Creating a MIDI input device</span><span>)</span></a> command
2504                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2505  </p>  </p>
2506  </blockquote>  </blockquote>
2507                                
2508    
2509  <p>FIX -  <p>FIX -
2510                                </p>                                </p>
2511  <blockquote class="text">  <blockquote class="text">
2512  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
2513                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
2514                                  the <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span>Creating a MIDI input device</span></a> command                                  the <a class='info' href='#CREATE MIDI_INPUT_DEVICE'>'CREATE MIDI_INPUT_DEVICE'<span> (</span><span class='info'>Creating a MIDI input device</span><span>)</span></a> command
2515                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2516  </p>  </p>
2517  </blockquote>  </blockquote>
2518                                
2519    
2520  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2521                                </p>                                </p>
# Line 2071  Intellectual Property and Copyright Stat Line 2526  Intellectual Property and Copyright Stat
2526                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2527  </p>  </p>
2528  </blockquote>  </blockquote>
2529                                
2530    
2531  <p>DEPENDS -  <p>DEPENDS -
2532                                </p>                                </p>
# Line 2087  Intellectual Property and Copyright Stat Line 2543  Intellectual Property and Copyright Stat
2543                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2544  </p>  </p>
2545  </blockquote>  </blockquote>
2546                                
2547    
2548  <p>DEFAULT -  <p>DEFAULT -
2549                                </p>                                </p>
2550  <blockquote class="text">  <blockquote class="text">
2551  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
2552                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
2553                                  given with the <a class="info" href="#CREATE MIDI_INPUT_DEVICE">'CREATE MIDI_INPUT_DEVICE'<span>Creating a MIDI input device</span></a> command,                                  given with the <a class='info' href='#CREATE MIDI_INPUT_DEVICE'>'CREATE MIDI_INPUT_DEVICE'<span> (</span><span class='info'>Creating a MIDI input device</span><span>)</span></a> command,
2554                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
2555                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
2556                                  apostrophes (')                                  apostrophes (')
2557                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2558  </p>  </p>
2559  </blockquote>  </blockquote>
2560                                
2561    
2562  <p>RANGE_MIN -  <p>RANGE_MIN -
2563                                </p>                                </p>
# Line 2111  Intellectual Property and Copyright Stat Line 2569  Intellectual Property and Copyright Stat
2569                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2570  </p>  </p>
2571  </blockquote>  </blockquote>
2572                                
2573    
2574  <p>RANGE_MAX -  <p>RANGE_MAX -
2575                                </p>                                </p>
# Line 2122  Intellectual Property and Copyright Stat Line 2581  Intellectual Property and Copyright Stat
2581                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2582  </p>  </p>
2583  </blockquote>  </blockquote>
2584                                
2585    
2586  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2587                                </p>                                </p>
# Line 2132  Intellectual Property and Copyright Stat Line 2592  Intellectual Property and Copyright Stat
2592                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2593  </p>  </p>
2594  </blockquote>  </blockquote>
2595                                
2596    
2597  </blockquote>  </blockquote><p>
2598                        
2599    </p>
2600  <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.
2601  </p>  </p>
2602  <p>Example:  <p>Example:
2603  </p>  </p>
2604  <p></p>  <p>
2605                            </p>
2606  <blockquote class="text">  <blockquote class="text">
2607  <p>C: "GET MIDI_INPUT_DRIVER_PARAMETER INFO ALSA ACTIVE"  <p>C: "GET MIDI_INPUT_DRIVER_PARAMETER INFO ALSA ACTIVE"
2608  </p>  </p>
# Line 2157  Intellectual Property and Copyright Stat Line 2620  Intellectual Property and Copyright Stat
2620  </p>  </p>
2621  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2622  </p>  </p>
2623  </blockquote>  </blockquote><p>
2624                        
2625  <a name="rfc.section.5.3.5"></a><h4><a name="CREATE MIDI_INPUT_DEVICE">5.3.5</a>&nbsp;Creating a MIDI input device</h4>  </p>
2626    <a name="CREATE MIDI_INPUT_DEVICE"></a><br /><hr />
2627    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2628    <a name="rfc.section.6.3.5"></a><h3>6.3.5.&nbsp;
2629    Creating a MIDI input device</h3>
2630    
2631  <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:
2632  </p>  </p>
2633  <p></p>  <p>
2634                            </p>
2635  <blockquote class="text">  <blockquote class="text">
2636  <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;]
2637  </p>  </p>
2638  </blockquote>  </blockquote><p>
2639                        
2640  <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system and &lt;param-list&gt; by an  </p>
2641    <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system as returned
2642                        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
2643                      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
2644                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
2645                      Note that there might be drivers which require parameter(s) to be                      Note that there might be drivers which require parameter(s) to be
# Line 2178  Intellectual Property and Copyright Stat Line 2648  Intellectual Property and Copyright Stat
2648  </p>  </p>
2649  <p>Possible Answers:  <p>Possible Answers:
2650  </p>  </p>
2651  <p></p>  <p>
2652                            </p>
2653  <blockquote class="text">  <blockquote class="text">
2654  <p>"OK[&lt;device-id&gt;]" -  <p>"OK[&lt;device-id&gt;]" -
2655                                  </p>                                  </p>
# Line 2187  Intellectual Property and Copyright Stat Line 2658  Intellectual Property and Copyright Stat
2658                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
2659  </p>  </p>
2660  </blockquote>  </blockquote>
2661                                
2662    
2663  <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;" -
2664                                  </p>                                  </p>
# Line 2197  Intellectual Property and Copyright Stat Line 2669  Intellectual Property and Copyright Stat
2669                                      appropriate warning code and warning message                                      appropriate warning code and warning message
2670  </p>  </p>
2671  </blockquote>  </blockquote>
2672                                
2673    
2674  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2675                                  </p>                                  </p>
# Line 2204  Intellectual Property and Copyright Stat Line 2677  Intellectual Property and Copyright Stat
2677  <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
2678  </p>  </p>
2679  </blockquote>  </blockquote>
2680                                
2681    
2682  </blockquote>  </blockquote><p>
2683                        
2684    </p>
2685  <p>Example:  <p>Example:
2686  </p>  </p>
2687  <p></p>  <p>
2688                            </p>
2689  <blockquote class="text">  <blockquote class="text">
2690  <p>C: "CREATE MIDI_INPUT_DEVICE ALSA"  <p>C: "CREATE MIDI_INPUT_DEVICE ALSA"
2691  </p>  </p>
2692  <p>S: "OK[0]"  <p>S: "OK[0]"
2693  </p>  </p>
2694  </blockquote>  </blockquote><p>
2695                        
2696  <a name="rfc.section.5.3.6"></a><h4><a name="DESTROY MIDI_INPUT_DEVICE">5.3.6</a>&nbsp;Destroying a MIDI input device</h4>  </p>
2697    <a name="DESTROY MIDI_INPUT_DEVICE"></a><br /><hr />
2698    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2699    <a name="rfc.section.6.3.6"></a><h3>6.3.6.&nbsp;
2700    Destroying a MIDI input device</h3>
2701    
2702  <p>Use the following command to destroy a created MIDI input device:  <p>Use the following command to destroy a created MIDI input device:
2703  </p>  </p>
2704  <p></p>  <p>
2705                            </p>
2706  <blockquote class="text">  <blockquote class="text">
2707  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;
2708  </p>  </p>
2709  </blockquote>  </blockquote><p>
2710                        
2711  <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID.  </p>
2712    <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID as returned by the
2713                        <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>
2714                        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>
2715                        command.
2716  </p>  </p>
2717  <p>Possible Answers:  <p>Possible Answers:
2718  </p>  </p>
2719  <p></p>  <p>
2720                            </p>
2721  <blockquote class="text">  <blockquote class="text">
2722  <p>"OK" -  <p>"OK" -
2723                                  </p>                                  </p>
# Line 2239  Intellectual Property and Copyright Stat Line 2725  Intellectual Property and Copyright Stat
2725  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
2726  </p>  </p>
2727  </blockquote>  </blockquote>
2728                                
2729    
2730  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2731                                  </p>                                  </p>
# Line 2248  Intellectual Property and Copyright Stat Line 2735  Intellectual Property and Copyright Stat
2735                                      warning message                                      warning message
2736  </p>  </p>
2737  </blockquote>  </blockquote>
2738                                
2739    
2740  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2741                                  </p>                                  </p>
# Line 2255  Intellectual Property and Copyright Stat Line 2743  Intellectual Property and Copyright Stat
2743  <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
2744  </p>  </p>
2745  </blockquote>  </blockquote>
2746                                
2747    
2748  </blockquote>  </blockquote><p>
2749                        
2750    </p>
2751  <p>Example:  <p>Example:
2752  </p>  </p>
2753  <p></p>  <p>
2754                            </p>
2755  <blockquote class="text">  <blockquote class="text">
2756  <p>C: "DESTROY MIDI_INPUT_DEVICE 0"  <p>C: "DESTROY MIDI_INPUT_DEVICE 0"
2757  </p>  </p>
2758  <p>S: "OK"  <p>S: "OK"
2759  </p>  </p>
2760  </blockquote>  </blockquote><p>
2761                        
2762  <a name="rfc.section.5.3.7"></a><h4><a name="GET MIDI_INPUT_DEVICES">5.3.7</a>&nbsp;Getting all created MIDI input device count</h4>  </p>
2763    <a name="GET MIDI_INPUT_DEVICES"></a><br /><hr />
2764    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2765    <a name="rfc.section.6.3.7"></a><h3>6.3.7.&nbsp;
2766    Getting all created MIDI input device count</h3>
2767    
2768  <p>Use the following command to count all created MIDI input devices:  <p>Use the following command to count all created MIDI input devices:
2769  </p>  </p>
2770  <p></p>  <p>
2771                            </p>
2772  <blockquote class="text">  <blockquote class="text">
2773  <p>GET MIDI_INPUT_DEVICES  <p>GET MIDI_INPUT_DEVICES
2774  </p>  </p>
2775  </blockquote>  </blockquote><p>
2776                        
2777    </p>
2778  <p>Possible Answers:  <p>Possible Answers:
2779  </p>  </p>
2780  <p></p>  <p>
2781                            </p>
2782  <blockquote class="text">  <blockquote class="text">
2783  <p>LinuxSampler will answer by sending the current number of all  <p>LinuxSampler will answer by sending the current number of all
2784                              MIDI input devices.                              MIDI input devices.
2785  </p>  </p>
2786  </blockquote>  </blockquote><p>
2787                        
2788    </p>
2789  <p>Example:  <p>Example:
2790  </p>  </p>
2791  <p></p>  <p>
2792                            </p>
2793  <blockquote class="text">  <blockquote class="text">
2794  <p>C: "GET MIDI_INPUT_DEVICES"  <p>C: "GET MIDI_INPUT_DEVICES"
2795  </p>  </p>
2796  <p>S: "3"  <p>S: "3"
2797  </p>  </p>
2798  </blockquote>  </blockquote><p>
2799                        
2800  <a name="rfc.section.5.3.8"></a><h4><a name="LIST MIDI_INPUT_DEVICES">5.3.8</a>&nbsp;Getting all created MIDI input device list</h4>  </p>
2801    <a name="LIST MIDI_INPUT_DEVICES"></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.8"></a><h3>6.3.8.&nbsp;
2804    Getting all created MIDI input device list</h3>
2805    
2806  <p>Use the following command to list all created MIDI input devices:  <p>Use the following command to list all created MIDI input devices:
2807  </p>  </p>
2808  <p></p>  <p>
2809                            </p>
2810  <blockquote class="text">  <blockquote class="text">
2811  <p>LIST MIDI_INPUT_DEVICES  <p>LIST MIDI_INPUT_DEVICES
2812  </p>  </p>
2813  </blockquote>  </blockquote><p>
2814                        
2815    </p>
2816  <p>Possible Answers:  <p>Possible Answers:
2817  </p>  </p>
2818  <p></p>  <p>
2819                            </p>
2820  <blockquote class="text">  <blockquote class="text">
2821  <p>LinuxSampler will answer by sending a comma separated list  <p>LinuxSampler will answer by sending a comma separated list
2822                              with the numerical Ids of all created MIDI input devices.                              with the numerical Ids of all created MIDI input devices.
2823  </p>  </p>
2824  </blockquote>  </blockquote><p>
2825                        
2826    </p>
2827  <p>Examples:  <p>Examples:
2828  </p>  </p>
2829  <p></p>  <p>
2830                            </p>
2831  <blockquote class="text">  <blockquote class="text">
2832  <p>C: "LIST MIDI_INPUT_DEVICES"  <p>C: "LIST MIDI_INPUT_DEVICES"
2833  </p>  </p>
2834  <p>S: "0,1,2"  <p>S: "0,1,2"
2835  </p>  </p>
2836  </blockquote>  </blockquote><p>
2837                        
2838  <p></p>  </p>
2839    <p>
2840                            </p>
2841  <blockquote class="text">  <blockquote class="text">
2842  <p>C: "LIST MIDI_INPUT_DEVICES"  <p>C: "LIST MIDI_INPUT_DEVICES"
2843  </p>  </p>
2844  <p>S: "1,3"  <p>S: "1,3"
2845  </p>  </p>
2846  </blockquote>  </blockquote><p>
2847                        
2848  <a name="rfc.section.5.3.9"></a><h4><a name="GET MIDI_INPUT_DEVICE INFO">5.3.9</a>&nbsp;Getting current settings of a MIDI input device</h4>  </p>
2849    <a name="GET MIDI_INPUT_DEVICE INFO"></a><br /><hr />
2850    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2851    <a name="rfc.section.6.3.9"></a><h3>6.3.9.&nbsp;
2852    Getting current settings of a MIDI input device</h3>
2853    
2854  <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:
2855  </p>  </p>
2856  <p></p>  <p>
2857                            </p>
2858  <blockquote class="text">  <blockquote class="text">
2859  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;
2860  </p>  </p>
2861  </blockquote>  </blockquote><p>
2862                        
2863  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device.  </p>
2864    <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the
2865                        <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>
2866                        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>
2867                        command.
2868  </p>  </p>
2869  <p>Possible Answers:  <p>Possible Answers:
2870  </p>  </p>
2871  <p></p>  <p>
2872                            </p>
2873  <blockquote class="text">  <blockquote class="text">
2874  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2875                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 2358  Intellectual Property and Copyright Stat Line 2879  Intellectual Property and Copyright Stat
2879                              encapsulated into apostrophes ('). At the moment the following                              encapsulated into apostrophes ('). At the moment the following
2880                              information categories are defined (independent of driver):                              information categories are defined (independent of driver):
2881  </p>  </p>
2882  <p></p>  <p>
2883                                    </p>
2884  <blockquote class="text">  <blockquote class="text">
2885  <p>DRIVER -  <p>DRIVER -
2886                                          </p>                                          </p>
2887  <blockquote class="text">  <blockquote class="text">
2888  <p>identifier of the used MIDI input driver, as e.g.  <p>identifier of the used MIDI input driver, as e.g.
2889                                              returned by the <a class="info" href="#LIST AVAILABLE_MIDI_INPUT_DRIVERS">"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span>Getting all available MIDI input drivers</span></a>                                              returned by the <a class='info' href='#LIST AVAILABLE_MIDI_INPUT_DRIVERS'>"LIST AVAILABLE_MIDI_INPUT_DRIVERS"<span> (</span><span class='info'>Getting all available MIDI input drivers</span><span>)</span></a>
2890                                              command                                              command
2891  </p>  </p>
2892  </blockquote>  </blockquote>
2893                                        
2894    
2895  </blockquote>  </blockquote>
2896                                    
2897  <blockquote class="text">  <blockquote class="text">
2898  <p><p>ACTIVE -  <p>ACTIVE -
2899                                          </p>                                          </p>
2900  <blockquote class="text">  <blockquote class="text">
2901  <p>either true or false, if false then the MIDI device is  <p>either true or false, if false then the MIDI device is
# Line 2380  Intellectual Property and Copyright Stat Line 2904  Intellectual Property and Copyright Stat
2904                                              channels                                              channels
2905  </p>  </p>
2906  </blockquote>  </blockquote>
2907                                        
2908    
2909  </blockquote>  </blockquote>
2910                                
2911    
2912  </blockquote>  </blockquote><p>
2913                        
2914    </p>
2915  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
2916                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
2917                      returned by all MIDI input devices. Every MIDI input driver                      returned by all MIDI input devices. Every MIDI input driver
2918                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
2919                      <a class="info" href="#GET MIDI_INPUT_DRIVER INFO">"GET MIDI_INPUT_DRIVER INFO"<span>Getting information about a specific MIDI input driver</span></a> command) which are also returned                      <a class='info' href='#GET MIDI_INPUT_DRIVER INFO'>"GET MIDI_INPUT_DRIVER INFO"<span> (</span><span class='info'>Getting information about a specific MIDI input driver</span><span>)</span></a> command) which are also returned
2920                      by this command.                      by this command.
2921  </p>  </p>
2922  <p>Example:  <p>Example:
2923  </p>  </p>
2924  <p></p>  <p>
2925                            </p>
2926  <blockquote class="text">  <blockquote class="text">
2927  <p>C: "GET MIDI_INPUT_DEVICE INFO 0"  <p>C: "GET MIDI_INPUT_DEVICE INFO 0"
2928  </p>  </p>
# Line 2404  Intellectual Property and Copyright Stat Line 2932  Intellectual Property and Copyright Stat
2932  </p>  </p>
2933  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2934  </p>  </p>
2935  </blockquote>  </blockquote><p>
2936                        
2937  <a name="rfc.section.5.3.10"></a><h4><a name="SET MIDI_INPUT_DEVICE_PARAMETER">5.3.10</a>&nbsp;Changing settings of MIDI input devices</h4>  </p>
2938    <a name="SET MIDI_INPUT_DEVICE_PARAMETER"></a><br /><hr />
2939    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2940    <a name="rfc.section.6.3.10"></a><h3>6.3.10.&nbsp;
2941    Changing settings of MIDI input devices</h3>
2942    
2943  <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:
2944  </p>  </p>
2945  <p></p>  <p>
2946                            </p>
2947  <blockquote class="text">  <blockquote class="text">
2948  <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;
2949  </p>  </p>
2950  </blockquote>  </blockquote><p>
2951                        
2952    </p>
2953  <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
2954                      MIDI input device, &lt;key&gt; by the name of the parameter to change and                      MIDI input device as returned by the
2955                        <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>
2956                        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>
2957                        command, &lt;key&gt; by the name of the parameter to change and
2958                      &lt;value&gt; by the new value for this parameter.                      &lt;value&gt; by the new value for this parameter.
2959  </p>  </p>
2960  <p>Possible Answers:  <p>Possible Answers:
2961  </p>  </p>
2962  <p></p>  <p>
2963                            </p>
2964  <blockquote class="text">  <blockquote class="text">
2965  <p>"OK" -  <p>"OK" -
2966                                  </p>                                  </p>
# Line 2430  Intellectual Property and Copyright Stat Line 2968  Intellectual Property and Copyright Stat
2968  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2969  </p>  </p>
2970  </blockquote>  </blockquote>
2971                                
2972    
2973  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2974                                  </p>                                  </p>
# Line 2439  Intellectual Property and Copyright Stat Line 2978  Intellectual Property and Copyright Stat
2978                                      warning code and warning message                                      warning code and warning message
2979  </p>  </p>
2980  </blockquote>  </blockquote>
2981                                
2982    
2983  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2984                                  </p>                                  </p>
# Line 2446  Intellectual Property and Copyright Stat Line 2986  Intellectual Property and Copyright Stat
2986  <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
2987  </p>  </p>
2988  </blockquote>  </blockquote>
2989                                
2990    
2991  </blockquote>  </blockquote><p>
2992                        
2993    </p>
2994  <p>Example:  <p>Example:
2995  </p>  </p>
2996  <p></p>  <p>
2997                            </p>
2998  <blockquote class="text">  <blockquote class="text">
2999  <p>C: "SET MIDI_INPUT_DEVICE_PARAMETER 0 ACTIVE=false"  <p>C: "SET MIDI_INPUT_DEVICE_PARAMETER 0 ACTIVE=false"
3000  </p>  </p>
3001  <p>S: "OK"  <p>S: "OK"
3002  </p>  </p>
3003  </blockquote>  </blockquote><p>
3004                        
3005  <a name="rfc.section.5.3.11"></a><h4><a name="GET MIDI_INPUT_PORT INFO">5.3.11</a>&nbsp;Getting information about a MIDI port</h4>  </p>
3006    <a name="GET MIDI_INPUT_PORT INFO"></a><br /><hr />
3007    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3008    <a name="rfc.section.6.3.11"></a><h3>6.3.11.&nbsp;
3009    Getting information about a MIDI port</h3>
3010    
3011  <p>Use the following command to get information about a MIDI port:  <p>Use the following command to get information about a MIDI port:
3012  </p>  </p>
3013  <p></p>  <p>
3014                            </p>
3015  <blockquote class="text">  <blockquote class="text">
3016  <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;
3017  </p>  </p>
3018  </blockquote>  </blockquote><p>
3019                        
3020  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device  </p>
3021                      and &lt;midi-port&gt; the MIDI input port number.  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the
3022                        <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>
3023                        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>
3024                        command and &lt;midi-port&gt; the MIDI input port number.
3025  </p>  </p>
3026  <p>Possible Answers:  <p>Possible Answers:
3027  </p>  </p>
3028  <p></p>  <p>
3029                            </p>
3030  <blockquote class="text">  <blockquote class="text">
3031  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3032                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 2488  Intellectual Property and Copyright Stat Line 3040  Intellectual Property and Copyright Stat
3040  <p>arbitrary character string naming the port  <p>arbitrary character string naming the port
3041  </p>  </p>
3042  </blockquote>  </blockquote>
3043                                
3044    
3045  </blockquote>  </blockquote><p>
3046                        
3047    </p>
3048  <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
3049                      ports regardless of the MIDI driver and port. Every MIDI port                      ports regardless of the MIDI driver and port. Every MIDI port
3050                      might have its own, additional driver and port specific                      might have its own, additional driver and port specific
# Line 2498  Intellectual Property and Copyright Stat Line 3052  Intellectual Property and Copyright Stat
3052  </p>  </p>
3053  <p>Example:  <p>Example:
3054  </p>  </p>
3055  <p></p>  <p>
3056                            </p>
3057  <blockquote class="text">  <blockquote class="text">
3058  <p>C: "GET MIDI_INPUT_PORT INFO 0 0"  <p>C: "GET MIDI_INPUT_PORT INFO 0 0"
3059  </p>  </p>
# Line 2508  Intellectual Property and Copyright Stat Line 3063  Intellectual Property and Copyright Stat
3063  </p>  </p>
3064  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3065  </p>  </p>
3066  </blockquote>  </blockquote><p>
3067                        
3068  <a name="rfc.section.5.3.12"></a><h4><a name="GET MIDI_INPUT_PORT_PARAMETER INFO">5.3.12</a>&nbsp;Getting information about specific MIDI port parameter</h4>  </p>
3069    <a name="GET MIDI_INPUT_PORT_PARAMETER INFO"></a><br /><hr />
3070    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3071    <a name="rfc.section.6.3.12"></a><h3>6.3.12.&nbsp;
3072    Getting information about specific MIDI port parameter</h3>
3073    
3074  <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:
3075  </p>  </p>
3076  <p></p>  <p>
3077                            </p>
3078  <blockquote class="text">  <blockquote class="text">
3079  <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;
3080  </p>  </p>
3081  </blockquote>  </blockquote><p>
3082                        
3083  <p>Where &lt;dev-id&gt; is the numerical ID of the MIDI input device as returned  </p>
3084                      by the <a class="info" href="#LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"<span>Getting all created MIDI input device list</span></a> command, &lt;port&gt; the MIDI port number and  <p>Where &lt;dev-id&gt; is the numerical ID of the MIDI input device as returned by the
3085                        <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>
3086                        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>
3087                        command, &lt;port&gt; the MIDI port number and
3088                      &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
3089                      obtained (as returned by the <a class="info" href="#GET MIDI_INPUT_PORT INFO">"GET MIDI_INPUT_PORT INFO"<span>Getting information about a MIDI port</span></a> command).                      obtained (as returned by the <a class='info' href='#GET MIDI_INPUT_PORT INFO'>"GET MIDI_INPUT_PORT INFO"<span> (</span><span class='info'>Getting information about a MIDI port</span><span>)</span></a> command).
3090  </p>  </p>
3091  <p>Possible Answers:  <p>Possible Answers:
3092  </p>  </p>
3093  <p></p>  <p>
3094                            </p>
3095  <blockquote class="text">  <blockquote class="text">
3096  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3097                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 2547  Intellectual Property and Copyright Stat Line 3111  Intellectual Property and Copyright Stat
3111                                      (always returned)                                      (always returned)
3112  </p>  </p>
3113  </blockquote>  </blockquote>
3114                                
3115    
3116  <p>DESCRIPTION -  <p>DESCRIPTION -
3117                                  </p>                                  </p>
# Line 2555  Intellectual Property and Copyright Stat Line 3120  Intellectual Property and Copyright Stat
3120                                      (always returned)                                      (always returned)
3121  </p>  </p>
3122  </blockquote>  </blockquote>
3123                                
3124    
3125  <p>FIX -  <p>FIX -
3126                                  </p>                                  </p>
# Line 2564  Intellectual Property and Copyright Stat Line 3130  Intellectual Property and Copyright Stat
3130                                      (always returned)                                      (always returned)
3131  </p>  </p>
3132  </blockquote>  </blockquote>
3133                                
3134    
3135  <p>MULTIPLICITY -  <p>MULTIPLICITY -
3136                                  </p>                                  </p>
# Line 2574  Intellectual Property and Copyright Stat Line 3141  Intellectual Property and Copyright Stat
3141                                      (always returned)                                      (always returned)
3142  </p>  </p>
3143  </blockquote>  </blockquote>
3144                                
3145    
3146  <p>RANGE_MIN -  <p>RANGE_MIN -
3147                                  </p>                                  </p>
# Line 2586  Intellectual Property and Copyright Stat Line 3154  Intellectual Property and Copyright Stat
3154                                      parameter)                                      parameter)
3155  </p>  </p>
3156  </blockquote>  </blockquote>
3157                                
3158    
3159  <p>RANGE_MAX -  <p>RANGE_MAX -
3160                                  </p>                                  </p>
# Line 2598  Intellectual Property and Copyright Stat Line 3167  Intellectual Property and Copyright Stat
3167                                      parameter)                                      parameter)
3168  </p>  </p>
3169  </blockquote>  </blockquote>
3170                                
3171    
3172  <p>POSSIBILITIES -  <p>POSSIBILITIES -
3173                                  </p>                                  </p>
# Line 2609  Intellectual Property and Copyright Stat Line 3179  Intellectual Property and Copyright Stat
3179                                      parameter)                                      parameter)
3180  </p>  </p>
3181  </blockquote>  </blockquote>
3182                                
3183    
3184  </blockquote>  </blockquote><p>
3185                        
3186    </p>
3187  <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.
3188  </p>  </p>
3189  <p>Example:  <p>Example:
3190  </p>  </p>
3191  <p></p>  <p>
3192                            </p>
3193  <blockquote class="text">  <blockquote class="text">
3194  <p>C: "GET MIDI_INPUT_PORT_PARAMETER INFO 0 0 ALSA_SEQ_BINDINGS"  <p>C: "GET MIDI_INPUT_PORT_PARAMETER INFO 0 0 ALSA_SEQ_BINDINGS"
3195  </p>  </p>
# Line 2632  Intellectual Property and Copyright Stat Line 3205  Intellectual Property and Copyright Stat
3205  </p>  </p>
3206  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3207  </p>  </p>
3208  </blockquote>  </blockquote><p>
3209                        
3210  <a name="rfc.section.5.3.13"></a><h4><a name="SET MIDI_INPUT_PORT_PARAMETER">5.3.13</a>&nbsp;Changing settings of MIDI input ports</h4>  </p>
3211    <a name="SET MIDI_INPUT_PORT_PARAMETER"></a><br /><hr />
3212    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3213    <a name="rfc.section.6.3.13"></a><h3>6.3.13.&nbsp;
3214    Changing settings of MIDI input ports</h3>
3215    
3216  <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:
3217  </p>  </p>
3218  <p></p>  <p>
3219                            </p>
3220  <blockquote class="text">  <blockquote class="text">
3221  <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;
3222  </p>  </p>
3223  </blockquote>  </blockquote><p>
3224                        
3225    </p>
3226  <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
3227                      MIDI device, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of                      MIDI device as returned by the
3228                        <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>
3229                        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>
3230                        command, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of
3231                      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
3232                      parameter.                      parameter.
3233  </p>  </p>
3234  <p>Possible Answers:  <p>Possible Answers:
3235  </p>  </p>
3236  <p></p>  <p>
3237                            </p>
3238  <blockquote class="text">  <blockquote class="text">
3239  <p>"OK" -  <p>"OK" -
3240                                  </p>                                  </p>
# Line 2659  Intellectual Property and Copyright Stat Line 3242  Intellectual Property and Copyright Stat
3242  <p>in case setting was successfully changed  <p>in case setting was successfully changed
3243  </p>  </p>
3244  </blockquote>  </blockquote>
3245                                
3246    
3247  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3248                                  </p>                                  </p>
# Line 2668  Intellectual Property and Copyright Stat Line 3252  Intellectual Property and Copyright Stat
3252                                      warning code and warning message                                      warning code and warning message
3253  </p>  </p>
3254  </blockquote>  </blockquote>
3255                                
3256    
3257  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3258                                  </p>                                  </p>
# Line 2675  Intellectual Property and Copyright Stat Line 3260  Intellectual Property and Copyright Stat
3260  <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
3261  </p>  </p>
3262  </blockquote>  </blockquote>
3263                                
3264    
3265  </blockquote>  </blockquote><p>
3266                        
3267    </p>
3268  <p>Example:  <p>Example:
3269  </p>  </p>
3270  <p></p>  <p>
3271                            </p>
3272  <blockquote class="text">  <blockquote class="text">
3273  <p>  <p>
3274  </p>  </p>
3275  </blockquote>  </blockquote><p>
3276                        
 <a name="rfc.section.5.4"></a><h4><a name="anchor12">5.4</a>&nbsp;Configuring sampler channels</h4>  
   
 <p>The following commands describe how to add and remove sampler channels, deploy  
                 sampler engines, load instruments and connect sampler channels to MIDI and audio devices.  
3277  </p>  </p>
3278  <a name="rfc.section.5.4.1"></a><h4><a name="LOAD INSTRUMENT">5.4.1</a>&nbsp;Loading an instrument</h4>  <a name="anchor11"></a><br /><hr />
3279    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3280    <a name="rfc.section.6.4"></a><h3>6.4.&nbsp;
3281    Configuring sampler channels</h3>
3282    
3283    <p>The following commands describe how to add and remove sampler channels, associate a
3284                    sampler channel with a sampler engine, load instruments and connect sampler channels to
3285                    MIDI and audio devices.
3286    </p>
3287    <a name="LOAD INSTRUMENT"></a><br /><hr />
3288    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3289    <a name="rfc.section.6.4.1"></a><h3>6.4.1.&nbsp;
3290    Loading an instrument</h3>
3291    
3292  <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:
3293  </p>  </p>
3294  <p></p>  <p>
3295                            </p>
3296  <blockquote class="text">  <blockquote class="text">
3297  <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;
3298  </p>  </p>
3299  </blockquote>  </blockquote><p>
3300                        
3301    </p>
3302  <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
3303                      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
3304                      instrument in the instrument file and &lt;sampler-channel> is the                      instrument in the instrument file and &lt;sampler-channel> is the
# Line 2711  Intellectual Property and Copyright Stat Line 3309  Intellectual Property and Copyright Stat
3309                      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
3310                      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
3311                      returns immediately and a background process is launched to load the instrument                      returns immediately and a background process is launched to load the instrument
3312                      on the channel. The <a class="info" href="#GET CHANNEL INFO">GET CHANNEL INFO<span>Getting sampler channel information</span></a>                      on the channel. The <a class='info' href='#GET CHANNEL INFO'>GET CHANNEL INFO<span> (</span><span class='info'>Getting sampler channel information</span><span>)</span></a>
3313                      command can be used to obtain loading                      command can be used to obtain loading
3314                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks
3315                      such as making sure that the file could be read and it is of a proper format                      such as making sure that the file could be read and it is of a proper format
# Line 2720  Intellectual Property and Copyright Stat Line 3318  Intellectual Property and Copyright Stat
3318  </p>  </p>
3319  <p>Possible Answers:  <p>Possible Answers:
3320  </p>  </p>
3321  <p></p>  <p>
3322                            </p>
3323  <blockquote class="text">  <blockquote class="text">
3324  <p>"OK" -  <p>"OK" -
3325                                  </p>                                  </p>
# Line 2728  Intellectual Property and Copyright Stat Line 3327  Intellectual Property and Copyright Stat
3327  <p>in case the instrument was successfully loaded  <p>in case the instrument was successfully loaded
3328  </p>  </p>
3329  </blockquote>  </blockquote>
3330                                
3331    
3332  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3333                                  </p>                                  </p>
# Line 2739  Intellectual Property and Copyright Stat Line 3339  Intellectual Property and Copyright Stat
3339                                      warning message                                      warning message
3340  </p>  </p>
3341  </blockquote>  </blockquote>
3342                                
3343    
3344  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3345                                  </p>                                  </p>
# Line 2746  Intellectual Property and Copyright Stat Line 3347  Intellectual Property and Copyright Stat
3347  <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
3348  </p>  </p>
3349  </blockquote>  </blockquote>
3350                                
3351    
3352  </blockquote>  </blockquote><p>
3353                        
3354    </p>
3355  <p>Example:  <p>Example:
3356  </p>  </p>
3357  <p></p>  <p>
3358                            </p>
3359  <blockquote class="text">  <blockquote class="text">
3360  <p>  <p>
3361  </p>  </p>
3362  </blockquote>  </blockquote><p>
3363                        
3364  <a name="rfc.section.5.4.2"></a><h4><a name="LOAD ENGINE">5.4.2</a>&nbsp;Loading a sampler engine</h4>  </p>
3365    <a name="LOAD ENGINE"></a><br /><hr />
3366    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3367    <a name="rfc.section.6.4.2"></a><h3>6.4.2.&nbsp;
3368    Loading a sampler engine</h3>
3369    
3370  <p>A sample engine can be deployed and assigned to a specific sampler  <p>A sampler engine type can be associated to a specific sampler
3371                      channel by the following command:                      channel by the following command:
3372  </p>  </p>
3373  <p></p>  <p>
3374                            </p>
3375  <blockquote class="text">  <blockquote class="text">
3376  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;
3377  </p>  </p>
3378  </blockquote>  </blockquote><p>
3379                        
3380    </p>
3381  <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
3382                      <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span>Getting all available engines</span></a> command and &lt;sampler-channel&gt; the sampler channel the                      <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a> command and &lt;sampler-channel&gt;
3383                      deployed engine should be assigned to. Even if the respective                      the sampler channel as returned by the
3384                      sampler channel has already a deployed engine with that engine                      <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a> or
3385                      name, a new engine instance will be assigned to the sampler channel.                      <a class='info' href='#LIST CHANNELS'>"LIST CHANNELS"<span> (</span><span class='info'>Getting all created sampler channel list</span><span>)</span></a> command where
3386                        the engine type should be assigned to. This command should be issued
3387                        after adding a new sampler channel and before any other control
3388                        commands on the new sampler channel. It can also be used to change
3389                        the engine type of a sampler channel. This command has (currently) no
3390                        way to define or force if a new engine instance should be created and
3391                        assigned to the given sampler channel or if an already existing
3392                        instance of that engine type, shared with other sampler channels,
3393                        should be used.
3394  </p>  </p>
3395  <p>Possible Answers:  <p>Possible Answers:
3396  </p>  </p>
3397  <p></p>  <p>
3398                            </p>
3399  <blockquote class="text">  <blockquote class="text">
3400  <p>"OK" -  <p>"OK" -
3401                                  </p>                                  </p>
# Line 2784  Intellectual Property and Copyright Stat Line 3403  Intellectual Property and Copyright Stat
3403  <p>in case the engine was successfully deployed  <p>in case the engine was successfully deployed
3404  </p>  </p>
3405  </blockquote>  </blockquote>
3406                                
3407    
3408  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3409                                  </p>                                  </p>
# Line 2793  Intellectual Property and Copyright Stat Line 3413  Intellectual Property and Copyright Stat
3413                                      warning code and warning message                                      warning code and warning message
3414  </p>  </p>
3415  </blockquote>  </blockquote>
3416                                
3417    
3418  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3419                                  </p>                                  </p>
# Line 2801  Intellectual Property and Copyright Stat Line 3422  Intellectual Property and Copyright Stat
3422                                      error message                                      error message
3423  </p>  </p>
3424  </blockquote>  </blockquote>
3425                                
3426    
3427  </blockquote>  </blockquote><p>
3428                        
3429    </p>
3430  <p>Example:  <p>Example:
3431  </p>  </p>
3432  <p></p>  <p>
3433                            </p>
3434  <blockquote class="text">  <blockquote class="text">
3435  <p>  <p>
3436  </p>  </p>
3437  </blockquote>  </blockquote><p>
3438                        
3439  <a name="rfc.section.5.4.3"></a><h4><a name="GET CHANNELS">5.4.3</a>&nbsp;Getting all created sampler channel count</h4>  </p>
3440    <a name="GET CHANNELS"></a><br /><hr />
3441    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3442    <a name="rfc.section.6.4.3"></a><h3>6.4.3.&nbsp;
3443    Getting all created sampler channel count</h3>
3444    
3445  <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
3446                      current amount of sampler channels, the front-end can send the                      current amount of sampler channels, the front-end can send the
3447                      following command:                      following command:
3448  </p>  </p>
3449  <p></p>  <p>
3450                            </p>
3451  <blockquote class="text">  <blockquote class="text">
3452  <p>GET CHANNELS  <p>GET CHANNELS
3453  </p>  </p>
3454  </blockquote>  </blockquote><p>
3455                        
3456    </p>
3457  <p>Possible Answers:  <p>Possible Answers:
3458  </p>  </p>
3459  <p></p>  <p>
3460                            </p>
3461  <blockquote class="text">  <blockquote class="text">
3462  <p>LinuxSampler will answer by returning the current number of sampler channels.  <p>LinuxSampler will answer by returning the current number of sampler channels.
3463  </p>  </p>
3464  </blockquote>  </blockquote><p>
3465                        
3466    </p>
3467  <p>Example:  <p>Example:
3468  </p>  </p>
3469  <p></p>  <p>
3470                            </p>
3471  <blockquote class="text">  <blockquote class="text">
3472  <p>C: "GET CHANNELS"  <p>C: "GET CHANNELS"
3473  </p>  </p>
3474  <p>S: "12"  <p>S: "12"
3475  </p>  </p>
3476  </blockquote>  </blockquote><p>
3477                        
3478  <a name="rfc.section.5.4.4"></a><h4><a name="LIST CHANNELS">5.4.4</a>&nbsp;Getting all created sampler channel list</h4>  </p>
3479    <a name="LIST CHANNELS"></a><br /><hr />
3480    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3481    <a name="rfc.section.6.4.4"></a><h3>6.4.4.&nbsp;
3482    Getting all created sampler channel list</h3>
3483    
3484  <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
3485                      current list of sampler channels, the front-end can send the                      current list of sampler channels, the front-end can send the
3486                      following command:                      following command:
3487  </p>  </p>
3488  <p></p>  <p>
3489                            </p>
3490  <blockquote class="text">  <blockquote class="text">
3491  <p>LIST CHANNELS  <p>LIST CHANNELS
3492  </p>  </p>
3493  </blockquote>  </blockquote><p>
3494                        
3495    </p>
3496  <p>Possible Answers:  <p>Possible Answers:
3497  </p>  </p>
3498  <p></p>  <p>
3499                            </p>
3500  <blockquote class="text">  <blockquote class="text">
3501  <p>LinuxSampler will answer by returning a comma separated list  <p>LinuxSampler will answer by returning a comma separated list
3502                              with all sampler channels numerical IDs.                              with all sampler channels numerical IDs.
3503  </p>  </p>
3504  </blockquote>  </blockquote><p>
3505                        
3506    </p>
3507  <p>Example:  <p>Example:
3508  </p>  </p>
3509  <p></p>  <p>
3510                            </p>
3511  <blockquote class="text">  <blockquote class="text">
3512  <p>C: "LIST CHANNELS"  <p>C: "LIST CHANNELS"
3513  </p>  </p>
3514  <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"
3515  </p>  </p>
3516  </blockquote>  </blockquote><p>
3517                        
3518  <a name="rfc.section.5.4.5"></a><h4><a name="ADD CHANNEL">5.4.5</a>&nbsp;Adding a new sampler channel</h4>  </p>
3519    <a name="ADD CHANNEL"></a><br /><hr />
3520    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3521    <a name="rfc.section.6.4.5"></a><h3>6.4.5.&nbsp;
3522    Adding a new sampler channel</h3>
3523    
3524  <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
3525                      channel list by sending the following command:                      channel list by sending the following command:
3526  </p>  </p>
3527  <p></p>  <p>
3528                            </p>
3529  <blockquote class="text">  <blockquote class="text">
3530  <p>ADD CHANNEL  <p>ADD CHANNEL
3531  </p>  </p>
3532  </blockquote>  </blockquote><p>
3533                        
3534    </p>
3535  <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
3536                      sampler channel will be appended to the end of the sampler channel                      sampler channel will be appended to the end of the sampler channel
3537                      list. The front-end should send the respective, related commands                      list. The front-end should send the respective, related commands
# Line 2896  Intellectual Property and Copyright Stat Line 3544  Intellectual Property and Copyright Stat
3544  </p>  </p>
3545  <p>Possible Answers:  <p>Possible Answers:
3546  </p>  </p>
3547  <p></p>  <p>
3548                            </p>
3549  <blockquote class="text">  <blockquote class="text">
3550  <p>"OK[&lt;sampler-channel&gt;]" -  <p>"OK[&lt;sampler-channel&gt;]" -
3551                                  </p>                                  </p>
# Line 2908  Intellectual Property and Copyright Stat Line 3557  Intellectual Property and Copyright Stat
3557                                      commands                                      commands
3558  </p>  </p>
3559  </blockquote>  </blockquote>
3560                                
3561    
3562  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3563                                  </p>                                  </p>
# Line 2917  Intellectual Property and Copyright Stat Line 3567  Intellectual Property and Copyright Stat
3567                                      warning code and warning message                                      warning code and warning message
3568  </p>  </p>
3569  </blockquote>  </blockquote>
3570                                
3571    
3572  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3573                                  </p>                                  </p>
# Line 2925  Intellectual Property and Copyright Stat Line 3576  Intellectual Property and Copyright Stat
3576                                      error message                                      error message
3577  </p>  </p>
3578  </blockquote>  </blockquote>
3579                                
3580    
3581  </blockquote>  </blockquote><p>
3582                        
3583    </p>
3584  <p>Example:  <p>Example:
3585  </p>  </p>
3586  <p></p>  <p>
3587                            </p>
3588  <blockquote class="text">  <blockquote class="text">
3589  <p>  <p>
3590  </p>  </p>
3591  </blockquote>  </blockquote><p>
3592                        
3593  <a name="rfc.section.5.4.6"></a><h4><a name="REMOVE CHANNEL">5.4.6</a>&nbsp;Removing a sampler channel</h4>  </p>
3594    <a name="REMOVE CHANNEL"></a><br /><hr />
3595    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3596    <a name="rfc.section.6.4.6"></a><h3>6.4.6.&nbsp;
3597    Removing a sampler channel</h3>
3598    
3599  <p>A sampler channel can be removed by sending the following command:  <p>A sampler channel can be removed by sending the following command:
3600  </p>  </p>
3601  <p></p>  <p>
3602                            </p>
3603  <blockquote class="text">  <blockquote class="text">
3604  <p>REMOVE CHANNEL &lt;sampler-channel&gt;  <p>REMOVE CHANNEL &lt;sampler-channel&gt;
3605  </p>  </p>
3606  </blockquote>  </blockquote><p>
3607                        
3608    </p>
3609  <p>Where &lt;sampler-channel&gt; should be replaced by the  <p>Where &lt;sampler-channel&gt; should be replaced by the
3610                      number of the sampler channel as given by the                      number of the sampler channel as given by the
3611                      <a class="info" href="#ADD CHANNEL">"ADD CHANNEL"<span>Adding a new sampler channel</span></a>                      <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a>
3612                      or <a class="info" href="#LIST CHANNELS">"LIST CHANNELS"<span>Getting all created sampler channel list</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>
3613                      command. The channel numbers of all subsequent sampler channels                      command. The channel numbers of all subsequent sampler channels
3614                      remain the same.                      remain the same.
3615  </p>  </p>
3616  <p>Possible Answers:  <p>Possible Answers:
3617  </p>  </p>
3618  <p></p>  <p>
3619                            </p>
3620  <blockquote class="text">  <blockquote class="text">
3621  <p>"OK" -  <p>"OK" -
3622                                  </p>                                  </p>
# Line 2963  Intellectual Property and Copyright Stat Line 3624  Intellectual Property and Copyright Stat
3624  <p>in case the given sampler channel could be removed  <p>in case the given sampler channel could be removed
3625  </p>  </p>
3626  </blockquote>  </blockquote>
3627                                
3628    
3629  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3630                                  </p>                                  </p>
# Line 2972  Intellectual Property and Copyright Stat Line 3634  Intellectual Property and Copyright Stat
3634                                      warning code and warning message                                      warning code and warning message
3635  </p>  </p>
3636  </blockquote>  </blockquote>
3637                                
3638    
3639  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3640                                  </p>                                  </p>
# Line 2980  Intellectual Property and Copyright Stat Line 3643  Intellectual Property and Copyright Stat
3643                                      error message                                      error message
3644  </p>  </p>
3645  </blockquote>  </blockquote>
3646                                
3647    
3648  </blockquote>  </blockquote><p>
3649                        
3650    </p>
3651  <p>Example:  <p>Example:
3652  </p>  </p>
3653  <p></p>  <p>
3654                            </p>
3655  <blockquote class="text">  <blockquote class="text">
3656  <p>  <p>
3657  </p>  </p>
3658  </blockquote>  </blockquote><p>
3659                        
3660  <a name="rfc.section.5.4.7"></a><h4><a name="GET AVAILABLE_ENGINES">5.4.7</a>&nbsp;Getting amount of available engines</h4>  </p>
3661    <a name="GET AVAILABLE_ENGINES"></a><br /><hr />
3662    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3663    <a name="rfc.section.6.4.7"></a><h3>6.4.7.&nbsp;
3664    Getting amount of available engines</h3>
3665    
3666  <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:
3667  </p>  </p>
3668  <p></p>  <p>
3669                            </p>
3670  <blockquote class="text">  <blockquote class="text">
3671  <p>GET AVAILABLE_ENGINES  <p>GET AVAILABLE_ENGINES
3672  </p>  </p>
3673  </blockquote>  </blockquote><p>
3674                        
3675    </p>
3676  <p>Possible Answers:  <p>Possible Answers:
3677  </p>  </p>
3678  <p></p>  <p>
3679                            </p>
3680  <blockquote class="text">  <blockquote class="text">
3681  <p>LinuxSampler will answer by sending the number of available engines.  <p>LinuxSampler will answer by sending the number of available engines.
3682  </p>  </p>
3683  </blockquote>  </blockquote><p>
3684                        
3685    </p>
3686  <p>Example:  <p>Example:
3687  </p>  </p>
3688  <p></p>  <p>
3689                            </p>
3690  <blockquote class="text">  <blockquote class="text">
3691  <p>C: "GET AVAILABLE_ENGINES"  <p>C: "GET AVAILABLE_ENGINES"
3692  </p>  </p>
3693  <p>S: "4"  <p>S: "4"
3694  </p>  </p>
3695  </blockquote>  </blockquote><p>
3696                        
3697  <a name="rfc.section.5.4.8"></a><h4><a name="LIST AVAILABLE_ENGINES">5.4.8</a>&nbsp;Getting all available engines</h4>  </p>
3698    <a name="LIST AVAILABLE_ENGINES"></a><br /><hr />
3699    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3700    <a name="rfc.section.6.4.8"></a><h3>6.4.8.&nbsp;
3701    Getting all available engines</h3>
3702    
3703  <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:
3704  </p>  </p>
3705  <p></p>  <p>
3706                            </p>
3707  <blockquote class="text">  <blockquote class="text">
3708  <p>LIST AVAILABLE_ENGINES  <p>LIST AVAILABLE_ENGINES
3709  </p>  </p>
3710  </blockquote>  </blockquote><p>
3711                        
3712    </p>
3713  <p>Possible Answers:  <p>Possible Answers:
3714  </p>  </p>
3715  <p></p>  <p>
3716                            </p>
3717  <blockquote class="text">  <blockquote class="text">
3718  <p>LinuxSampler will answer by sending a comma separated list  <p>LinuxSampler will answer by sending a comma separated list
3719                              of the engines' names encapsulated into apostrophes (').                              of the engines' names encapsulated into apostrophes (').
3720                              Engine names can consist of lower and upper cases,                              Engine names can consist of lower and upper cases,
3721                              digits and underlines ("_" character).                              digits and underlines ("_" character).
3722  </p>  </p>
3723  </blockquote>  </blockquote><p>
3724                        
3725    </p>
3726  <p>Example:  <p>Example:
3727  </p>  </p>
3728  <p></p>  <p>
3729                            </p>
3730  <blockquote class="text">  <blockquote class="text">
3731  <p>C: "LIST AVAILABLE_ENGINES"  <p>C: "LIST AVAILABLE_ENGINES"
3732  </p>  </p>
3733  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"
3734  </p>  </p>
3735  </blockquote>  </blockquote><p>
3736                        
3737  <a name="rfc.section.5.4.9"></a><h4><a name="GET ENGINE INFO">5.4.9</a>&nbsp;Getting information about an engine</h4>  </p>
3738    <a name="GET ENGINE INFO"></a><br /><hr />
3739    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3740    <a name="rfc.section.6.4.9"></a><h3>6.4.9.&nbsp;
3741    Getting information about an engine</h3>
3742    
3743  <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
3744                      sending the following command:                      sending the following command:
3745  </p>  </p>
3746  <p></p>  <p>
3747                            </p>
3748  <blockquote class="text">  <blockquote class="text">
3749  <p>GET ENGINE INFO &lt;engine-name&gt;  <p>GET ENGINE INFO &lt;engine-name&gt;
3750  </p>  </p>
3751  </blockquote>  </blockquote><p>
3752                        
3753    </p>
3754  <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
3755                      <a class="info" href="#LIST AVAILABLE_ENGINES">"LIST AVAILABLE_ENGINES"<span>Getting all available engines</span></a> command.                      <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a> command.
3756  </p>  </p>
3757  <p>Possible Answers:  <p>Possible Answers:
3758  </p>  </p>
3759  <p></p>  <p>
3760                            </p>
3761  <blockquote class="text">  <blockquote class="text">
3762  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3763                              Each answer line begins with the information category name                              Each answer line begins with the information category name
# Line 3074  Intellectual Property and Copyright Stat Line 3765  Intellectual Property and Copyright Stat
3765                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
3766                              the following categories are defined:                              the following categories are defined:
3767  </p>  </p>
3768  <p></p>  <p>
3769                                    </p>
3770  <blockquote class="text">  <blockquote class="text">
3771  <p>DESCRIPTION -  <p>DESCRIPTION -
3772                                          </p>                                          </p>
# Line 3082  Intellectual Property and Copyright Stat Line 3774  Intellectual Property and Copyright Stat
3774  <p>arbitrary description text about the engine  <p>arbitrary description text about the engine
3775  </p>  </p>
3776  </blockquote>  </blockquote>
3777                                        
3778    
3779  <p>VERSION -  <p>VERSION -
3780                                          </p>                                          </p>
# Line 3089  Intellectual Property and Copyright Stat Line 3782  Intellectual Property and Copyright Stat
3782  <p>arbitrary character string regarding the engine's version  <p>arbitrary character string regarding the engine's version
3783  </p>  </p>
3784  </blockquote>  </blockquote>
3785                                        
3786    
3787  </blockquote>  </blockquote>
3788                                
3789    
3790  </blockquote>  </blockquote><p>
3791                        
3792    </p>
3793  <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.
3794  </p>  </p>
3795  <p>Example:  <p>Example:
3796  </p>  </p>
3797  <p></p>  <p>
3798                            </p>
3799  <blockquote class="text">  <blockquote class="text">
3800  <p>C: "GET ENGINE INFO JoesCustomEngine"  <p>C: "GET ENGINE INFO JoesCustomEngine"
3801  </p>  </p>
# Line 3108  Intellectual Property and Copyright Stat Line 3805  Intellectual Property and Copyright Stat
3805  </p>  </p>
3806  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3807  </p>  </p>
3808  </blockquote>  </blockquote><p>
3809                        
3810  <a name="rfc.section.5.4.10"></a><h4><a name="GET CHANNEL INFO">5.4.10</a>&nbsp;Getting sampler channel information</h4>  </p>
3811    <a name="GET CHANNEL INFO"></a><br /><hr />
3812    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3813    <a name="rfc.section.6.4.10"></a><h3>6.4.10.&nbsp;
3814    Getting sampler channel information</h3>
3815    
3816  <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
3817                      by sending the following command:                      by sending the following command:
3818  </p>  </p>
3819  <p></p>  <p>
3820                            </p>
3821  <blockquote class="text">  <blockquote class="text">
3822  <p>GET CHANNEL INFO &lt;sampler-channel&gt;  <p>GET CHANNEL INFO &lt;sampler-channel&gt;
3823  </p>  </p>
3824  </blockquote>  </blockquote><p>
3825                        
3826  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
3827    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
3828                        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>
3829                        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.
3830  </p>  </p>
3831  <p>Possible Answers:  <p>Possible Answers:
3832  </p>  </p>
3833  <p></p>  <p>
3834                            </p>
3835  <blockquote class="text">  <blockquote class="text">
3836  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3837                              Each answer line begins with the settings category name                              Each answer line begins with the settings category name
# Line 3133  Intellectual Property and Copyright Stat Line 3839  Intellectual Property and Copyright Stat
3839                              the info character string to that setting category. At the                              the info character string to that setting category. At the
3840                              moment the following categories are defined:                              moment the following categories are defined:
3841  </p>  </p>
3842  <p></p>  <p>
3843                                    </p>
3844  <blockquote class="text">  <blockquote class="text">
3845  <p>ENGINE_NAME -  <p>ENGINE_NAME -
3846                                          </p>                                          </p>
3847  <blockquote class="text">  <blockquote class="text">
3848  <p>name of the engine that is deployed on the sampler  <p>name of the engine that is associated with the sampler
3849                                              channel, "NONE" if there's no engine deployed yet for                                              channel, "NONE" if there's no engine associated yet for
3850                                              this sampler channel                                              this sampler channel
3851  </p>  </p>
3852  </blockquote>  </blockquote>
3853                                        
3854    
3855  <p>AUDIO_OUTPUT_DEVICE -  <p>AUDIO_OUTPUT_DEVICE -
3856                                          </p>                                          </p>
# Line 3153  Intellectual Property and Copyright Stat Line 3861  Intellectual Property and Copyright Stat
3861                                              connected to this sampler channel                                              connected to this sampler channel
3862  </p>  </p>
3863  </blockquote>  </blockquote>
3864                                        
3865    
3866  <p>AUDIO_OUTPUT_CHANNELS -  <p>AUDIO_OUTPUT_CHANNELS -
3867                                          </p>                                          </p>
# Line 3161  Intellectual Property and Copyright Stat Line 3870  Intellectual Property and Copyright Stat
3870                                              (dependent to used sampler engine and loaded instrument)                                              (dependent to used sampler engine and loaded instrument)
3871  </p>  </p>
3872  </blockquote>  </blockquote>
3873                                        
3874    
3875  <p>AUDIO_OUTPUT_ROUTING -  <p>AUDIO_OUTPUT_ROUTING -
3876                                          </p>                                          </p>
# Line 3174  Intellectual Property and Copyright Stat Line 3884  Intellectual Property and Copyright Stat
3884                                              output device                                              output device
3885  </p>  </p>
3886  </blockquote>  </blockquote>
3887                                        
3888    
3889  <p>INSTRUMENT_FILE -  <p>INSTRUMENT_FILE -
3890                                          </p>                                          </p>
# Line 3183  Intellectual Property and Copyright Stat Line 3894  Intellectual Property and Copyright Stat
3894                                              channel                                              channel
3895  </p>  </p>
3896  </blockquote>  </blockquote>
3897                                        
3898    
3899  <p>INSTRUMENT_NR -  <p>INSTRUMENT_NR -
3900                                          </p>                                          </p>
# Line 3190  Intellectual Property and Copyright Stat Line 3902  Intellectual Property and Copyright Stat
3902  <p>the instrument index number of the loaded instrument  <p>the instrument index number of the loaded instrument
3903  </p>  </p>
3904  </blockquote>  </blockquote>
3905                                        
3906    
3907  <p>INSTRUMENT_NAME -  <p>INSTRUMENT_NAME -
3908                                          </p>                                          </p>
# Line 3197  Intellectual Property and Copyright Stat Line 3910  Intellectual Property and Copyright Stat
3910  <p>the instrument name of the loaded instrument  <p>the instrument name of the loaded instrument
3911  </p>  </p>
3912  </blockquote>  </blockquote>
3913                                        
3914    
3915  <p>INSTRUMENT_STATUS -  <p>INSTRUMENT_STATUS -
3916                                          </p>                                          </p>
# Line 3206  Intellectual Property and Copyright Stat Line 3920  Intellectual Property and Copyright Stat
3920                                              loaded.                                              loaded.
3921  </p>  </p>
3922  </blockquote>  </blockquote>
3923                                        
3924    
3925  <p>MIDI_INPUT_DEVICE -  <p>MIDI_INPUT_DEVICE -
3926                                          </p>                                          </p>
# Line 3216  Intellectual Property and Copyright Stat Line 3931  Intellectual Property and Copyright Stat
3931                                              connected to this sampler channel                                              connected to this sampler channel
3932  </p>  </p>
3933  </blockquote>  </blockquote>
3934                                        
3935    
3936  <p>MIDI_INPUT_PORT -  <p>MIDI_INPUT_PORT -
3937                                          </p>                                          </p>
# Line 3223  Intellectual Property and Copyright Stat Line 3939  Intellectual Property and Copyright Stat
3939  <p>port number of the MIDI input device  <p>port number of the MIDI input device
3940  </p>  </p>
3941  </blockquote>  </blockquote>
3942                                        
3943    
3944  <p>MIDI_INPUT_CHANNEL -  <p>MIDI_INPUT_CHANNEL -
3945                                          </p>                                          </p>
# Line 3231  Intellectual Property and Copyright Stat Line 3948  Intellectual Property and Copyright Stat
3948                                              should listen to or "ALL" to listen on all MIDI channels                                              should listen to or "ALL" to listen on all MIDI channels
3949  </p>  </p>
3950  </blockquote>  </blockquote>
3951                                        
3952    
3953  <p>VOLUME -  <p>VOLUME -
3954                                          </p>                                          </p>
# Line 3240  Intellectual Property and Copyright Stat Line 3958  Intellectual Property and Copyright Stat
3958                                              1.0 means amplification)                                              1.0 means amplification)
3959  </p>  </p>
3960  </blockquote>  </blockquote>
3961                                        
3962    
3963    <p>MUTE -
3964                                            </p>
3965    <blockquote class="text">
3966    <p>Determines whether the channel is muted, "true" if the
3967                                                channel is muted, "false" if the channel is not muted, and
3968                                                "MUTED_BY_SOLO" if the channel is muted because of the
3969                                                presence of a solo channel and will be unmuted when
3970                                                there are no solo channels left
3971    </p>
3972  </blockquote>  </blockquote>
3973                                        
3974    
3975    <p>SOLO -
3976                                            </p>
3977    <blockquote class="text">
3978    <p>Determines whether this is a solo channel, "true" if
3979                                                the channel is a solo channel; "false" otherwise
3980    </p>
3981    </blockquote>
3982                                        
3983    
3984    <p>MIDI_INSTRUMENT_MAP -
3985                                            </p>
3986    <blockquote class="text">
3987    <p>Determines to which MIDI instrument map this sampler
3988                                                channel is assigned to. Read chapter
3989                                                <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>
3990                                                for a list of possible values.
3991    </p>
3992    </blockquote>
3993                                        
3994    
3995  </blockquote>  </blockquote>
3996                                
3997    
3998    </blockquote><p>
3999                        
4000    </p>
4001  <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.
4002  </p>  </p>
4003  <p>Example:  <p>Example:
4004  </p>  </p>
4005  <p></p>  <p>
4006                            </p>
4007  <blockquote class="text">  <blockquote class="text">
4008  <p>C: "GET CHANNEL INFO 34"  <p>C: "GET CHANNEL INFO 34"
4009  </p>  </p>
# Line 3277  Intellectual Property and Copyright Stat Line 4031  Intellectual Property and Copyright Stat
4031  </p>  </p>
4032  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"
4033  </p>  </p>
4034    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
4035    </p>
4036    <p>&nbsp;&nbsp;&nbsp;"MUTE: false"
4037    </p>
4038    <p>&nbsp;&nbsp;&nbsp;"SOLO: false"
4039    </p>
4040    <p>&nbsp;&nbsp;&nbsp;"MIDI_INSTRUMENT_MAP: NONE"
4041    </p>
4042  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
4043  </p>  </p>
4044  </blockquote>  </blockquote><p>
4045                        
4046  <a name="rfc.section.5.4.11"></a><h4><a name="GET CHANNEL VOICE_COUNT">5.4.11</a>&nbsp;Current number of active voices</h4>  </p>
4047    <a name="GET CHANNEL VOICE_COUNT"></a><br /><hr />
4048    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4049    <a name="rfc.section.6.4.11"></a><h3>6.4.11.&nbsp;
4050    Current number of active voices</h3>
4051    
4052  <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
4053                      sampler channel by sending the following command:                      sampler channel by sending the following command:
4054  </p>  </p>
4055  <p></p>  <p>
4056                            </p>
4057  <blockquote class="text">  <blockquote class="text">
4058  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;
4059  </p>  </p>
4060  </blockquote>  </blockquote><p>
4061                        
4062  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
4063    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
4064                        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>
4065                        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.
4066  </p>  </p>
4067  <p>Possible Answers:  <p>Possible Answers:
4068  </p>  </p>
4069  <p></p>  <p>
4070                            </p>
4071  <blockquote class="text">  <blockquote class="text">
4072  <p>LinuxSampler will answer by returning the number of active  <p>LinuxSampler will answer by returning the number of active
4073                              voices on that channel.                              voices on that channel.
4074  </p>  </p>
4075  </blockquote>  </blockquote><p>
4076                        
4077    </p>
4078  <p>Example:  <p>Example:
4079  </p>  </p>
4080  <p></p>  <p>
4081                            </p>
4082  <blockquote class="text">  <blockquote class="text">
4083  <p>  <p>
4084  </p>  </p>
4085  </blockquote>  </blockquote><p>
4086                        
4087  <a name="rfc.section.5.4.12"></a><h4><a name="GET CHANNEL STREAM_COUNT">5.4.12</a>&nbsp;Current number of active disk streams</h4>  </p>
4088    <a name="GET CHANNEL STREAM_COUNT"></a><br /><hr />
4089    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4090    <a name="rfc.section.6.4.12"></a><h3>6.4.12.&nbsp;
4091    Current number of active disk streams</h3>
4092    
4093  <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
4094                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
4095  </p>  </p>
4096  <p></p>  <p>
4097                            </p>
4098  <blockquote class="text">  <blockquote class="text">
4099  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;
4100  </p>  </p>
4101  </blockquote>  </blockquote><p>
4102                        
4103  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
4104    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
4105                        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>
4106                        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.
4107  </p>  </p>
4108  <p>Possible Answers:  <p>Possible Answers:
4109  </p>  </p>
4110  <p></p>  <p>
4111                            </p>
4112  <blockquote class="text">  <blockquote class="text">
4113  <p>LinuxSampler will answer by returning the number of active  <p>LinuxSampler will answer by returning the number of active
4114                              disk streams on that channel in case the engine supports disk                              disk streams on that channel in case the engine supports disk
4115                              streaming, if the engine doesn't support disk streaming it will                              streaming, if the engine doesn't support disk streaming it will
4116                              return "NA" for not available.                              return "NA" for not available.
4117  </p>  </p>
4118  </blockquote>  </blockquote><p>
4119                        
4120    </p>
4121  <p>Example:  <p>Example:
4122  </p>  </p>
4123  <p></p>  <p>
4124                            </p>
4125  <blockquote class="text">  <blockquote class="text">
4126  <p>  <p>
4127  </p>  </p>
4128  </blockquote>  </blockquote><p>
4129                        
4130  <a name="rfc.section.5.4.13"></a><h4><a name="GET CHANNEL BUFFER_FILL">5.4.13</a>&nbsp;Current fill state of disk stream buffers</h4>  </p>
4131    <a name="GET CHANNEL BUFFER_FILL"></a><br /><hr />
4132    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4133    <a name="rfc.section.6.4.13"></a><h3>6.4.13.&nbsp;
4134    Current fill state of disk stream buffers</h3>
4135    
4136  <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
4137                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
4138  </p>  </p>
4139  <p></p>  <p>
4140                            </p>
4141  <blockquote class="text">  <blockquote class="text">
4142  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;
4143  </p>  </p>
4144  </blockquote>  </blockquote><p>
4145                        
4146    </p>
4147  <p>to get the fill state in bytes or  <p>to get the fill state in bytes or
4148  </p>  </p>
4149  <p></p>  <p>
4150                            </p>
4151  <blockquote class="text">  <blockquote class="text">
4152  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;
4153  </p>  </p>
4154  </blockquote>  </blockquote><p>
4155                        
4156    </p>
4157  <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
4158                      sampler channel number the front-end is interested in.                      sampler channel number the front-end is interested in
4159                        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>
4160                        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.
4161  </p>  </p>
4162  <p>Possible Answers:  <p>Possible Answers:
4163  </p>  </p>
4164  <p></p>  <p>
4165                            </p>
4166  <blockquote class="text">  <blockquote class="text">
4167  <p>LinuxSampler will either answer by returning a comma separated  <p>LinuxSampler will either answer by returning a comma separated
4168                              string with the fill state of all disk stream buffers on that                              string with the fill state of all disk stream buffers on that
# Line 3380  Intellectual Property and Copyright Stat Line 4175  Intellectual Property and Copyright Stat
4175                              the response are not in particular order, thus the front-end has                              the response are not in particular order, thus the front-end has
4176                              to sort them by itself if necessary.                              to sort them by itself if necessary.
4177  </p>  </p>
4178  </blockquote>  </blockquote><p>
4179                        
4180    </p>
4181  <p>Examples:  <p>Examples:
4182  </p>  </p>
4183  <p></p>  <p>
4184                            </p>
4185  <blockquote class="text">  <blockquote class="text">
4186  <p>C: "GET CHANNEL BUFFER_FILL BYTES 4"  <p>C: "GET CHANNEL BUFFER_FILL BYTES 4"
4187  </p>  </p>
4188  <p>S: "[115]420500,[116]510300,[75]110000,[120]230700"  <p>S: "[115]420500,[116]510300,[75]110000,[120]230700"
4189  </p>  </p>
4190  </blockquote>  </blockquote><p>
4191    
4192                            </p>
4193  <blockquote class="text">  <blockquote class="text">
4194  <p><p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"  <p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"
4195  </p>  </p>
4196  <p>S: "[115]90%,[116]98%,[75]40%,[120]62%"  <p>S: "[115]90%,[116]98%,[75]40%,[120]62%"
4197  </p>  </p>
4198  </blockquote>  </blockquote><p>
4199    
4200                            </p>
4201  <blockquote class="text">  <blockquote class="text">
4202  <p><p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"  <p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"
4203  </p>  </p>
4204  <p>S: ""  <p>S: ""
4205  </p>  </p>
4206  </blockquote>  </blockquote><p>
4207                        
4208  <a name="rfc.section.5.4.14"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_DEVICE">5.4.14</a>&nbsp;Setting audio output device</h4>  </p>
4209    <a name="SET CHANNEL AUDIO_OUTPUT_DEVICE"></a><br /><hr />
4210    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4211    <a name="rfc.section.6.4.14"></a><h3>6.4.14.&nbsp;
4212    Setting audio output device</h3>
4213    
4214  <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
4215                      channel by sending the following command:                      channel by sending the following command:
4216  </p>  </p>
4217  <p></p>  <p>
4218                            </p>
4219  <blockquote class="text">  <blockquote class="text">
4220  <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;
4221  </p>  </p>
4222  </blockquote>  </blockquote><p>
4223                        
4224  <p>Where &lt;audio-device-id&gt; is the numerical ID of the audio output  </p>
4225                      device and &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4226                      number.                      number as returned by the <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a>
4227                        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
4228                        &lt;audio-device-id&gt; is the numerical ID of the audio output device as given by the
4229                        <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>
4230                        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>
4231                        command.
4232  </p>  </p>
4233  <p>Possible Answers:  <p>Possible Answers:
4234  </p>  </p>
4235  <p></p>  <p>
4236                            </p>
4237  <blockquote class="text">  <blockquote class="text">
4238  <p>"OK" -  <p>"OK" -
4239                                  </p>                                  </p>
# Line 3429  Intellectual Property and Copyright Stat Line 4241  Intellectual Property and Copyright Stat
4241  <p>on success  <p>on success
4242  </p>  </p>
4243  </blockquote>  </blockquote>
4244                                
4245    
4246  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4247                                  </p>                                  </p>
# Line 3438  Intellectual Property and Copyright Stat Line 4251  Intellectual Property and Copyright Stat
4251                                      warning message                                      warning message
4252  </p>  </p>
4253  </blockquote>  </blockquote>
4254                                
4255    
4256  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4257                                  </p>                                  </p>
# Line 3445  Intellectual Property and Copyright Stat Line 4259  Intellectual Property and Copyright Stat
4259  <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
4260  </p>  </p>
4261  </blockquote>  </blockquote>
4262                                
4263    
4264  </blockquote>  </blockquote><p>
4265                        
4266    </p>
4267  <p>Examples:  <p>Examples:
4268  </p>  </p>
4269  <p></p>  <p>
4270                            </p>
4271  <blockquote class="text">  <blockquote class="text">
4272  <p>  <p>
4273  </p>  </p>
4274  </blockquote>  </blockquote><p>
4275                        
4276  <a name="rfc.section.5.4.15"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_TYP">5.4.15</a>&nbsp;Setting audio output type</h4>  </p>
4277    <a name="SET CHANNEL AUDIO_OUTPUT_TYPE"></a><br /><hr />
4278    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4279    <a name="rfc.section.6.4.15"></a><h3>6.4.15.&nbsp;
4280    Setting audio output type</h3>
4281    
4282  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4283  </p>  </p>
4284  <p>The front-end can alter the audio output type on a specific sampler  <p>The front-end can alter the audio output type on a specific sampler
4285                      channel by sending the following command:                      channel by sending the following command:
4286  </p>  </p>
4287  <p></p>  <p>
4288                            </p>
4289  <blockquote class="text">  <blockquote class="text">
4290  <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;
4291  </p>  </p>
4292  </blockquote>  </blockquote><p>
4293                        
4294    </p>
4295  <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
4296                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
4297  </p>  </p>
4298  <p>Possible Answers:  <p>Possible Answers:
4299  </p>  </p>
4300  <p></p>  <p>
4301                            </p>
4302  <blockquote class="text">  <blockquote class="text">
4303  <p>"OK" -  <p>"OK" -
4304                                  </p>                                  </p>
# Line 3482  Intellectual Property and Copyright Stat Line 4306  Intellectual Property and Copyright Stat
4306  <p>on success  <p>on success
4307  </p>  </p>
4308  </blockquote>  </blockquote>
4309                                
4310    
4311  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4312                                  </p>                                  </p>
# Line 3491  Intellectual Property and Copyright Stat Line 4316  Intellectual Property and Copyright Stat
4316                                      warning message                                      warning message
4317  </p>  </p>
4318  </blockquote>  </blockquote>
4319                                
4320    
4321  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4322                                  </p>                                  </p>
# Line 3498  Intellectual Property and Copyright Stat Line 4324  Intellectual Property and Copyright Stat
4324  <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
4325  </p>  </p>
4326  </blockquote>  </blockquote>
4327                                
4328    
4329  </blockquote>  </blockquote><p>
4330                        
4331    </p>
4332  <p>Examples:  <p>Examples:
4333  </p>  </p>
4334  <p></p>  <p>
4335                            </p>
4336  <blockquote class="text">  <blockquote class="text">
4337  <p>  <p>
4338  </p>  </p>
4339  </blockquote>  </blockquote><p>
4340                        
4341  <a name="rfc.section.5.4.16"></a><h4><a name="SET CHANNEL AUDIO_OUTPUT_CHANNEL">5.4.16</a>&nbsp;Setting audio output channel</h4>  </p>
4342    <a name="SET CHANNEL AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
4343    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4344    <a name="rfc.section.6.4.16"></a><h3>6.4.16.&nbsp;
4345    Setting audio output channel</h3>
4346    
4347  <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
4348                      sampler channel by sending the following command:                      sampler channel by sending the following command:
4349  </p>  </p>
4350  <p></p>  <p>
4351                            </p>
4352  <blockquote class="text">  <blockquote class="text">
4353  <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;
4354  </p>  </p>
4355  </blockquote>  </blockquote><p>
4356                        
4357  <p>Where &lt;sampler-chan&gt; is the sampler channel number, &lt;audio-out&gt; is the  </p>
4358    <p>Where &lt;sampler-chan&gt; is the sampler channel number
4359                        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>
4360                        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
4361                      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
4362                      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
4363                      output device where &lt;audio-out&gt; should be routed to.                      output device where &lt;audio-out&gt; should be routed to.
4364  </p>  </p>
4365  <p>Possible Answers:  <p>Possible Answers:
4366  </p>  </p>
4367  <p></p>  <p>
4368                            </p>
4369  <blockquote class="text">  <blockquote class="text">
4370  <p>"OK" -  <p>"OK" -
4371                                  </p>                                  </p>
# Line 3535  Intellectual Property and Copyright Stat Line 4373  Intellectual Property and Copyright Stat
4373  <p>on success  <p>on success
4374  </p>  </p>
4375  </blockquote>  </blockquote>
4376                                
4377    
4378  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4379                                  </p>                                  </p>
# Line 3544  Intellectual Property and Copyright Stat Line 4383  Intellectual Property and Copyright Stat
4383                                      warning message                                      warning message
4384  </p>  </p>
4385  </blockquote>  </blockquote>
4386                                
4387    
4388  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4389                                  </p>                                  </p>
# Line 3551  Intellectual Property and Copyright Stat Line 4391  Intellectual Property and Copyright Stat
4391  <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
4392  </p>  </p>
4393  </blockquote>  </blockquote>
4394                                
4395    
4396  </blockquote>  </blockquote><p>
4397                        
4398    </p>
4399  <p>Examples:  <p>Examples:
4400  </p>  </p>
4401  <p></p>  <p>
4402                            </p>
4403  <blockquote class="text">  <blockquote class="text">
4404  <p>  <p>
4405  </p>  </p>
4406  </blockquote>  </blockquote><p>
4407                        
4408  <a name="rfc.section.5.4.17"></a><h4><a name="SET CHANNEL MIDI_INPUT_DEVICE">5.4.17</a>&nbsp;Setting MIDI input device</h4>  </p>
4409    <a name="SET CHANNEL MIDI_INPUT_DEVICE"></a><br /><hr />
4410    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4411    <a name="rfc.section.6.4.17"></a><h3>6.4.17.&nbsp;
4412    Setting MIDI input device</h3>
4413    
4414  <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
4415                      channel by sending the following command:                      channel by sending the following command:
4416  </p>  </p>
4417  <p></p>  <p>
4418                            </p>
4419  <blockquote class="text">  <blockquote class="text">
4420  <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;
4421  </p>  </p>
4422  </blockquote>  </blockquote><p>
4423                        
4424  <p>Where &lt;sampler-channel&gt; is the sampler channel number and &lt;midi-device-id&gt; is the  </p>
4425                      the numerical ID of the MIDI input device.  <p>Where &lt;sampler-channel&gt; is the sampler channel number
4426                        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>
4427                        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
4428                        and &lt;midi-device-id&gt; is  the numerical ID of the MIDI input device as returned by the
4429                        <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>
4430                        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.
4431  </p>  </p>
4432  <p>Possible Answers:  <p>Possible Answers:
4433  </p>  </p>
4434  <p></p>  <p>
4435                            </p>
4436  <blockquote class="text">  <blockquote class="text">
4437  <p>"OK" -  <p>"OK" -
4438                                  </p>                                  </p>
# Line 3586  Intellectual Property and Copyright Stat Line 4440  Intellectual Property and Copyright Stat
4440  <p>on success  <p>on success
4441  </p>  </p>
4442  </blockquote>  </blockquote>
4443                                
4444    
4445  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4446                                  </p>                                  </p>
# Line 3595  Intellectual Property and Copyright Stat Line 4450  Intellectual Property and Copyright Stat
4450                                      warning message                                      warning message
4451  </p>  </p>
4452  </blockquote>  </blockquote>
4453                                
4454    
4455  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4456                                  </p>                                  </p>
# Line 3602  Intellectual Property and Copyright Stat Line 4458  Intellectual Property and Copyright Stat
4458  <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
4459  </p>  </p>
4460  </blockquote>  </blockquote>
4461                                
4462    
4463  </blockquote>  </blockquote><p>
4464                        
4465    </p>
4466  <p>Examples:  <p>Examples:
4467  </p>  </p>
4468  <p></p>  <p>
4469                            </p>
4470  <blockquote class="text">  <blockquote class="text">
4471  <p>  <p>
4472  </p>  </p>
4473  </blockquote>  </blockquote><p>
4474                        
4475  <a name="rfc.section.5.4.18"></a><h4><a name="SET CHANNEL MIDI_INPUT_TYPE">5.4.18</a>&nbsp;Setting MIDI input type</h4>  </p>
4476    <a name="SET CHANNEL MIDI_INPUT_TYPE"></a><br /><hr />
4477    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4478    <a name="rfc.section.6.4.18"></a><h3>6.4.18.&nbsp;
4479    Setting MIDI input type</h3>
4480    
4481  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4482  </p>  </p>
4483  <p>The front-end can alter the MIDI input type on a specific sampler  <p>The front-end can alter the MIDI input type on a specific sampler
4484                      channel by sending the following command:                      channel by sending the following command:
4485  </p>  </p>
4486  <p></p>  <p>
4487                            </p>
4488  <blockquote class="text">  <blockquote class="text">
4489  <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;
4490  </p>  </p>
4491  </blockquote>  </blockquote><p>
4492                        
4493    </p>
4494  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and
4495                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
4496  </p>  </p>
4497  <p>Possible Answers:  <p>Possible Answers:
4498  </p>  </p>
4499  <p></p>  <p>
4500                            </p>
4501  <blockquote class="text">  <blockquote class="text">
4502  <p>"OK" -  <p>"OK" -
4503                                  </p>                                  </p>
# Line 3639  Intellectual Property and Copyright Stat Line 4505  Intellectual Property and Copyright Stat
4505  <p>on success  <p>on success
4506  </p>  </p>
4507  </blockquote>  </blockquote>
4508                                
4509    
4510  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4511                                  </p>                                  </p>
# Line 3648  Intellectual Property and Copyright Stat Line 4515  Intellectual Property and Copyright Stat
4515                                      warning message                                      warning message
4516  </p>  </p>
4517  </blockquote>  </blockquote>
4518                                
4519    
4520  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4521                                  </p>                                  </p>
# Line 3655  Intellectual Property and Copyright Stat Line 4523  Intellectual Property and Copyright Stat
4523  <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
4524  </p>  </p>
4525  </blockquote>  </blockquote>
4526                                
4527    
4528  </blockquote>  </blockquote><p>
4529                        
4530    </p>
4531  <p>Examples:  <p>Examples:
4532  </p>  </p>
4533  <p></p>  <p>
4534                            </p>
4535  <blockquote class="text">  <blockquote class="text">
4536  <p>  <p>
4537  </p>  </p>
4538  </blockquote>  </blockquote><p>
4539                        
4540  <a name="rfc.section.5.4.19"></a><h4><a name="SET CHANNEL MIDI_INPUT_PORT">5.4.19</a>&nbsp;Setting MIDI input port</h4>  </p>
4541    <a name="SET CHANNEL MIDI_INPUT_PORT"></a><br /><hr />
4542    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4543    <a name="rfc.section.6.4.19"></a><h3>6.4.19.&nbsp;
4544    Setting MIDI input port</h3>
4545    
4546  <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
4547                      channel by sending the following command:                      channel by sending the following command:
4548  </p>  </p>
4549  <p></p>  <p>
4550                            </p>
4551  <blockquote class="text">  <blockquote class="text">
4552  <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;
4553  </p>  </p>
4554  </blockquote>  </blockquote><p>
4555                        
4556    </p>
4557  <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
4558                      MIDI input device connected to the sampler channel given by                      MIDI input device connected to the sampler channel given by
4559                      &lt;sampler-channel&gt;.                      &lt;sampler-channel&gt;.
4560  </p>  </p>
4561  <p>Possible Answers:  <p>Possible Answers:
4562  </p>  </p>
4563  <p></p>  <p>
4564                            </p>
4565  <blockquote class="text">  <blockquote class="text">
4566  <p>"OK" -  <p>"OK" -
4567                                  </p>                                  </p>
# Line 3691  Intellectual Property and Copyright Stat Line 4569  Intellectual Property and Copyright Stat
4569  <p>on success  <p>on success
4570  </p>  </p>
4571  </blockquote>  </blockquote>
4572                                
4573    
4574  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4575                                  </p>                                  </p>
# Line 3700  Intellectual Property and Copyright Stat Line 4579  Intellectual Property and Copyright Stat
4579                                      warning message                                      warning message
4580  </p>  </p>
4581  </blockquote>  </blockquote>
4582                                
4583    
4584  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4585                                  </p>                                  </p>
# Line 3707  Intellectual Property and Copyright Stat Line 4587  Intellectual Property and Copyright Stat
4587  <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
4588  </p>  </p>
4589  </blockquote>  </blockquote>
4590                                
4591    
4592  </blockquote>  </blockquote><p>
4593                        
4594    </p>
4595  <p>Examples:  <p>Examples:
4596  </p>  </p>
4597  <p></p>  <p>
4598                            </p>
4599  <blockquote class="text">  <blockquote class="text">
4600  <p>  <p>
4601  </p>  </p>
4602  </blockquote>  </blockquote><p>
4603                        
4604  <a name="rfc.section.5.4.20"></a><h4><a name="SET CHANNEL MIDI_INPUT_CHANNEL">5.4.20</a>&nbsp;Setting MIDI input channel</h4>  </p>
4605    <a name="SET CHANNEL MIDI_INPUT_CHANNEL"></a><br /><hr />
4606    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4607    <a name="rfc.section.6.4.20"></a><h3>6.4.20.&nbsp;
4608    Setting MIDI input channel</h3>
4609    
4610  <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
4611                      listen to by sending the following command:                      listen to by sending the following command:
4612  </p>  </p>
4613  <p></p>  <p>
4614                            </p>
4615  <blockquote class="text">  <blockquote class="text">
4616  <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;
4617  </p>  </p>
4618  </blockquote>  </blockquote><p>
4619                        
4620    </p>
4621  <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
4622                      &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
4623                      channels.                      channels.
4624  </p>  </p>
4625  <p>Possible Answers:  <p>Possible Answers:
4626  </p>  </p>
4627  <p></p>  <p>
4628                            </p>
4629  <blockquote class="text">  <blockquote class="text">
4630  <p>"OK" -  <p>"OK" -
4631                                  </p>                                  </p>
# Line 3743  Intellectual Property and Copyright Stat Line 4633  Intellectual Property and Copyright Stat
4633  <p>on success  <p>on success
4634  </p>  </p>
4635  </blockquote>  </blockquote>
4636                                
4637    
4638  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4639                                  </p>                                  </p>
# Line 3752  Intellectual Property and Copyright Stat Line 4643  Intellectual Property and Copyright Stat
4643                                      warning message                                      warning message
4644  </p>  </p>
4645  </blockquote>  </blockquote>
4646                                
4647    
4648  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4649                                  </p>                                  </p>
# Line 3759  Intellectual Property and Copyright Stat Line 4651  Intellectual Property and Copyright Stat
4651  <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
4652  </p>  </p>
4653  </blockquote>  </blockquote>
4654                                
4655    
4656  </blockquote>  </blockquote><p>
4657                        
4658    </p>
4659  <p>Examples:  <p>Examples:
4660  </p>  </p>
4661  <p></p>  <p>
4662                            </p>
4663  <blockquote class="text">  <blockquote class="text">
4664  <p>  <p>
4665  </p>  </p>
4666  </blockquote>  </blockquote><p>
4667                        
4668  <a name="rfc.section.5.4.21"></a><h4><a name="SET CHANNEL VOLUME">5.4.21</a>&nbsp;Setting channel volume</h4>  </p>
4669    <a name="SET CHANNEL VOLUME"></a><br /><hr />
4670    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4671    <a name="rfc.section.6.4.21"></a><h3>6.4.21.&nbsp;
4672    Setting channel volume</h3>
4673    
4674  <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
4675                      the following command:                      the following command:
4676  </p>  </p>
4677  <p></p>  <p>
4678                            </p>
4679  <blockquote class="text">  <blockquote class="text">
4680  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;
4681  </p>  </p>
4682  </blockquote>  </blockquote><p>
4683                        
4684    </p>
4685  <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
4686                      smaller than 1.0 means attenuation, whereas a value greater than                      smaller than 1.0 means attenuation, whereas a value greater than
4687                      1.0 means amplification) and &lt;sampler-channel&gt; defines the sampler                      1.0 means amplification) and &lt;sampler-channel&gt; defines the sampler
# Line 3788  Intellectual Property and Copyright Stat Line 4689  Intellectual Property and Copyright Stat
4689  </p>  </p>
4690  <p>Possible Answers:  <p>Possible Answers:
4691  </p>  </p>
4692  <p></p>  <p>
4693                            </p>
4694  <blockquote class="text">  <blockquote class="text">
4695  <p>"OK" -  <p>"OK" -
4696                                  </p>                                  </p>
# Line 3796  Intellectual Property and Copyright Stat Line 4698  Intellectual Property and Copyright Stat
4698  <p>on success  <p>on success
4699  </p>  </p>
4700  </blockquote>  </blockquote>
4701                                
4702    
4703  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4704                                  </p>                                  </p>
# Line 3805  Intellectual Property and Copyright Stat Line 4708  Intellectual Property and Copyright Stat
4708                                      warning message                                      warning message
4709  </p>  </p>
4710  </blockquote>  </blockquote>
4711                                
4712    
4713  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4714                                  </p>                                  </p>
# Line 3812  Intellectual Property and Copyright Stat Line 4716  Intellectual Property and Copyright Stat
4716  <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
4717  </p>  </p>
4718  </blockquote>  </blockquote>
4719                                
4720    
4721    </blockquote><p>
4722                        
4723    </p>
4724    <p>Examples:
4725    </p>
4726    <p>
4727                            </p>
4728    <blockquote class="text">
4729    <p>
4730    </p>
4731    </blockquote><p>
4732                        
4733    </p>
4734    <a name="SET CHANNEL MUTE"></a><br /><hr />
4735    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4736    <a name="rfc.section.6.4.22"></a><h3>6.4.22.&nbsp;
4737    Muting a sampler channel</h3>
4738    
4739    <p>The front-end can mute/unmute a specific sampler
4740                        channel by sending the following command:
4741    </p>
4742    <p>
4743                            </p>
4744    <blockquote class="text">
4745    <p>SET CHANNEL MUTE &lt;sampler-channel&gt; &lt;mute&gt;
4746    </p>
4747    </blockquote><p>
4748                        
4749    </p>
4750    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4751                        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>
4752                        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
4753                        &lt;mute&gt; should be replaced either by "1" to mute the channel or "0"
4754                        to unmute the channel.
4755    </p>
4756    <p>Possible Answers:
4757    </p>
4758    <p>
4759                            </p>
4760    <blockquote class="text">
4761    <p>"OK" -
4762                                    </p>
4763    <blockquote class="text">
4764    <p>on success
4765    </p>
4766    </blockquote>
4767                                
4768    
4769    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4770                                    </p>
4771    <blockquote class="text">
4772    <p>if the channel was muted/unmuted, but there are noteworthy
4773                                        issue(s) related, providing an appropriate warning code and
4774                                        warning message
4775    </p>
4776    </blockquote>
4777                                
4778    
4779    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4780                                    </p>
4781    <blockquote class="text">
4782    <p>in case it failed, providing an appropriate error code and error message
4783    </p>
4784  </blockquote>  </blockquote>
4785                                
4786    
4787    </blockquote><p>
4788                        
4789    </p>
4790  <p>Examples:  <p>Examples:
4791  </p>  </p>
4792  <p></p>  <p>
4793                            </p>
4794  <blockquote class="text">  <blockquote class="text">
4795  <p>  <p>
4796  </p>  </p>
4797    </blockquote><p>
4798                        
4799    </p>
4800    <a name="SET CHANNEL SOLO"></a><br /><hr />
4801    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4802    <a name="rfc.section.6.4.23"></a><h3>6.4.23.&nbsp;
4803    Soloing a sampler channel</h3>
4804    
4805    <p>The front-end can solo/unsolo a specific sampler channel
4806                        by sending the following command:
4807    </p>
4808    <p>
4809                            </p>
4810    <blockquote class="text">
4811    <p>SET CHANNEL SOLO &lt;sampler-channel&gt; &lt;solo&gt;
4812    </p>
4813    </blockquote><p>
4814                        
4815    </p>
4816    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4817                        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>
4818                        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
4819                        &lt;solo&gt; should be replaced either by "1" to solo the channel or "0"
4820                        to unsolo the channel.
4821    </p>
4822    <p>Possible Answers:
4823    </p>
4824    <p>
4825                            </p>
4826    <blockquote class="text">
4827    <p>"OK" -
4828                                    </p>
4829    <blockquote class="text">
4830    <p>on success
4831    </p>
4832  </blockquote>  </blockquote>
4833                                
4834    
4835  <a name="rfc.section.5.4.22"></a><h4><a name="RESET CHANNEL">5.4.22</a>&nbsp;Resetting a sampler channel</h4>  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4836                                    </p>
4837    <blockquote class="text">
4838    <p>if the channel was soloed/unsoloed, but there are noteworthy
4839                                        issue(s) related, providing an appropriate warning code and
4840                                        warning message
4841    </p>
4842    </blockquote>
4843                                
4844    
4845  <p>The front-end can reset a particular sampler channel by sending the following command:  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4846                                    </p>
4847    <blockquote class="text">
4848    <p>in case it failed, providing an appropriate error code and error message
4849    </p>
4850    </blockquote>
4851                                
4852    
4853    </blockquote><p>
4854                        
4855  </p>  </p>
4856  <p></p>  <p>Examples:
4857    </p>
4858    <p>
4859                            </p>
4860  <blockquote class="text">  <blockquote class="text">
4861  <p>RESET CHANNEL &lt;sampler-channel&gt;  <p>
4862    </p>
4863    </blockquote><p>
4864                        
4865    </p>
4866    <a name="SET CHANNEL MIDI_INSTRUMENT_MAP"></a><br /><hr />
4867    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4868    <a name="rfc.section.6.4.24"></a><h3>6.4.24.&nbsp;
4869    Assigning a MIDI instrument map to a sampler channel</h3>
4870    
4871    <p>The front-end can assign a MIDI instrument map to a specific sampler channel
4872                        by sending the following command:
4873    </p>
4874    <p>
4875                            </p>
4876    <blockquote class="text">
4877    <p>SET CHANNEL MIDI_INSTRUMENT_MAP &lt;sampler-channel&gt; &lt;map&gt;
4878    </p>
4879    </blockquote><p>
4880                        
4881    </p>
4882    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4883                        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>
4884                        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
4885                        &lt;map&gt; can have the following possibilites:
4886    </p>
4887    <p>
4888                            </p>
4889    <blockquote class="text">
4890    <p>"NONE" -
4891                                    </p>
4892    <blockquote class="text">
4893    <p>This is the default setting. In this case
4894                                        the sampler channel is not assigned any MIDI
4895                                        instrument map and thus will ignore all MIDI
4896                                        program change messages.
4897    </p>
4898    </blockquote>
4899                                
4900    
4901    <p>"DEFAULT" -
4902                                    </p>
4903    <blockquote class="text">
4904    <p>The sampler channel will always use the
4905                                        default MIDI instrument map to handle MIDI
4906                                        program change messages.
4907    </p>
4908    </blockquote>
4909                                
4910    
4911    <p>numeric ID -
4912                                    </p>
4913    <blockquote class="text">
4914    <p>You can assign a specific MIDI instrument map
4915                                        by replacing &lt;map&gt; with the respective numeric
4916                                        ID of the MIDI instrument map as returned by the
4917                                        <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>
4918                                        command. Once that map will be deleted, the sampler
4919                                        channel would fall back to "NONE".
4920    </p>
4921    </blockquote>
4922                                
4923    
4924    </blockquote><p>
4925                        
4926    </p>
4927    <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>
4928                        for details regarding MIDI instrument mapping.
4929    </p>
4930    <p>Possible Answers:
4931    </p>
4932    <p>
4933                            </p>
4934    <blockquote class="text">
4935    <p>"OK" -
4936                                    </p>
4937    <blockquote class="text">
4938    <p>on success
4939    </p>
4940    </blockquote>
4941                                
4942    
4943    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4944                                    </p>
4945    <blockquote class="text">
4946    <p>in case it failed, providing an appropriate error code and error message
4947    </p>
4948    </blockquote>
4949                                
4950    
4951    </blockquote><p>
4952                        
4953    </p>
4954    <p>Examples:
4955    </p>
4956    <p>
4957                            </p>
4958    <blockquote class="text">
4959    <p>
4960    </p>
4961    </blockquote><p>
4962                        
4963    </p>
4964    <a name="CREATE FX_SEND"></a><br /><hr />
4965    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4966    <a name="rfc.section.6.4.25"></a><h3>6.4.25.&nbsp;
4967    Adding an effect send to a sampler channel</h3>
4968    
4969    <p>The front-end can create an additional effect send on a specific sampler channel
4970                        by sending the following command:
4971    </p>
4972    <p>
4973                            </p>
4974    <blockquote class="text">
4975    <p>CREATE FX_SEND &lt;sampler-channel&gt; &lt;midi-ctrl&gt; [&lt;name&gt;]
4976    </p>
4977    </blockquote><p>
4978                        
4979    </p>
4980    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4981                        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>
4982                        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
4983                        sampler channel on which the effect send should be created on, &lt;midi-ctrl&gt;
4984                        is a number between 0..127 defining the MIDI controller which can alter the
4985                        effect send level and &lt;name&gt; is an optional argument defining a name
4986                        for the effect send entity. The name does not have to be unique.
4987    </p>
4988    <p>By default, that is as initial routing, the effect send's audio channels
4989                        are automatically routed to the last audio channels of the sampler channel's
4990                        audio output device, that way you can i.e. first increase the amount of audio
4991                        channels on the audio output device for having dedicated effect send output
4992                        channels and when "CREATE FX_SEND" is called, those channels will automatically
4993                        be picked. You can alter the destination channels however with
4994                        <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>.
4995                        
4996    </p>
4997    <p>Note: Create effect sends on a sampler channel only when needed, because having effect
4998                        sends on a sampler channel will decrease runtime performance, because for implementing channel
4999                        effect sends, separate (sampler channel local) audio buffers are needed to render and mix
5000                        the voices and route the audio signal afterwards to the master outputs and effect send
5001                        outputs (along with their respective effect send levels). A sampler channel without effect
5002                        sends however can mix its voices directly into the audio output devices's audio buffers
5003                        and is thus faster.
5004                        
5005    </p>
5006    <p>Possible Answers:
5007    </p>
5008    <p>
5009                            </p>
5010    <blockquote class="text">
5011    <p>"OK[&lt;fx-send-id&gt;]" -
5012                                    </p>
5013    <blockquote class="text">
5014    <p>in case a new effect send could be added to the
5015                                        sampler channel, where &lt;fx-send-id&gt; reflects the
5016                                        unique ID of the newly created effect send entity
5017    </p>
5018    </blockquote>
5019                                
5020    
5021    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5022                                    </p>
5023    <blockquote class="text">
5024    <p>when a new effect send could not be added, i.e.
5025                                        due to invalid parameters
5026    </p>
5027    </blockquote>
5028                                
5029    
5030    </blockquote><p>
5031                        
5032    </p>
5033    <p>Examples:
5034    </p>
5035    <p>
5036                            </p>
5037    <blockquote class="text">
5038    <p>C: "CREATE FX_SEND 0 91 'Reverb Send'"
5039    </p>
5040    <p>S: "OK[0]"
5041    </p>
5042    </blockquote><p>
5043                        
5044    </p>
5045    <p>
5046                            </p>
5047    <blockquote class="text">
5048    <p>C: "CREATE FX_SEND 0 93"
5049    </p>
5050    <p>S: "OK[1]"
5051    </p>
5052    </blockquote><p>
5053                        
5054    </p>
5055    <a name="DESTROY FX_SEND"></a><br /><hr />
5056    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5057    <a name="rfc.section.6.4.26"></a><h3>6.4.26.&nbsp;
5058    Removing an effect send from a sampler channel</h3>
5059    
5060    <p>The front-end can remove an existing effect send on a specific sampler channel
5061                        by sending the following command:
5062    </p>
5063    <p>
5064                            </p>
5065    <blockquote class="text">
5066    <p>DESTROY FX_SEND &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5067    </p>
5068    </blockquote><p>
5069                        
5070    </p>
5071    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5072                        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>
5073                        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
5074                        sampler channel from which the effect send should be removed from and
5075                        &lt;fx-send-id&gt; is the respective effect send number as returned by the
5076                        <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>
5077                        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.
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>  </p>
5089  </blockquote>  </blockquote>
5090                                
5091    
5092    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5093                                    </p>
5094    <blockquote class="text">
5095    <p>in case it failed, providing an appropriate error code and
5096                                        error message
5097    </p>
5098    </blockquote>
5099                                
5100    
5101    </blockquote><p>
5102                        
5103    </p>
5104    <p>Example:
5105    </p>
5106    <p>
5107                            </p>
5108    <blockquote class="text">
5109    <p>C: "DESTROY FX_SEND 0 0"
5110    </p>
5111    <p>S: "OK"
5112    </p>
5113    </blockquote><p>
5114                        
5115    </p>
5116    <a name="GET FX_SENDS"></a><br /><hr />
5117    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5118    <a name="rfc.section.6.4.27"></a><h3>6.4.27.&nbsp;
5119    Getting amount of effect sends on a sampler channel</h3>
5120    
5121    <p>The front-end can ask for the amount of effect sends on a specific sampler channel
5122                        by sending the following command:
5123    </p>
5124    <p>
5125                            </p>
5126    <blockquote class="text">
5127    <p>GET FX_SENDS &lt;sampler-channel&gt;
5128    </p>
5129    </blockquote><p>
5130                        
5131    </p>
5132    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5133                        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>
5134                        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.
5135    </p>
5136    <p>Possible Answers:
5137    </p>
5138    <p>
5139                            </p>
5140    <blockquote class="text">
5141    <p>The sampler will answer by returning the number of effect
5142                                sends on the given sampler channel.
5143    </p>
5144    </blockquote><p>
5145                        
5146    </p>
5147    <p>Example:
5148    </p>
5149    <p>
5150                            </p>
5151    <blockquote class="text">
5152    <p>C: "GET FX_SENDS 0"
5153    </p>
5154    <p>S: "2"
5155    </p>
5156    </blockquote><p>
5157                        
5158    </p>
5159    <a name="LIST FX_SENDS"></a><br /><hr />
5160    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5161    <a name="rfc.section.6.4.28"></a><h3>6.4.28.&nbsp;
5162    Listing all effect sends on a sampler channel</h3>
5163    
5164    <p>The front-end can ask for a list of effect sends on a specific sampler channel
5165                        by sending the following command:
5166    </p>
5167    <p>
5168                            </p>
5169    <blockquote class="text">
5170    <p>LIST FX_SENDS &lt;sampler-channel&gt;
5171    </p>
5172    </blockquote><p>
5173                        
5174    </p>
5175    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5176                        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>
5177                        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.
5178    </p>
5179    <p>Possible Answers:
5180    </p>
5181    <p>
5182                            </p>
5183    <blockquote class="text">
5184    <p>The sampler will answer by returning a comma separated list
5185                                with all effect sends' numerical IDs on the given sampler
5186                                channel.
5187    </p>
5188    </blockquote><p>
5189                        
5190    </p>
5191    <p>Examples:
5192    </p>
5193    <p>
5194                            </p>
5195    <blockquote class="text">
5196    <p>C: "LIST FX_SENDS 0"
5197    </p>
5198    <p>S: "0,1"
5199    </p>
5200    </blockquote><p>
5201                        
5202    </p>
5203    <p>
5204                            </p>
5205    <blockquote class="text">
5206    <p>C: "LIST FX_SENDS 1"
5207    </p>
5208    <p>S: ""
5209    </p>
5210    </blockquote><p>
5211                        
5212    </p>
5213    <a name="GET FX_SEND INFO"></a><br /><hr />
5214    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5215    <a name="rfc.section.6.4.29"></a><h3>6.4.29.&nbsp;
5216    Getting effect send information</h3>
5217    
5218    <p>The front-end can ask for the current settings of an effect send entity
5219                        by sending the following command:
5220    </p>
5221    <p>
5222                            </p>
5223    <blockquote class="text">
5224    <p>GET FX_SEND INFO &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5225    </p>
5226    </blockquote><p>
5227                        
5228    </p>
5229    <p>Where &lt;sampler-channel&gt; is the sampler channel number
5230                        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>
5231                        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
5232                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5233                        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>
5234                        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.
5235                      
5236    </p>
5237    <p>Possible Answers:
5238    </p>
5239    <p>
5240                            </p>
5241    <blockquote class="text">
5242    <p>The sampler will answer by sending a &lt;CRLF&gt; separated list.
5243                                Each answer line begins with the settings category name
5244                                followed by a colon and then a space character &lt;SP&gt; and finally
5245                                the info character string to that setting category. At the
5246                                moment the following categories are defined:
5247    </p>
5248    <p>
5249                                    </p>
5250    <blockquote class="text">
5251    <p>NAME -
5252                                            </p>
5253    <blockquote class="text">
5254    <p>name of the effect send entity
5255    </p>
5256    </blockquote>
5257                                        
5258    
5259    <p>AUDIO_OUTPUT_ROUTING -
5260                                            </p>
5261    <blockquote class="text">
5262    <p>comma separated list which reflects to which audio
5263                                                channel of the selected audio output device each
5264                                                effect send output channel is routed to, e.g. "0,3" would
5265                                                mean the effect send's output channel 0 is routed to channel
5266                                                0 of the audio output device and the effect send's output
5267                                                channel 1 is routed to the channel 3 of the audio
5268                                                output device (see
5269                                                <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>
5270                                                for details)
5271    </p>
5272    </blockquote>
5273                                        
5274    
5275    </blockquote>
5276                                
5277    
5278    </blockquote><p>
5279                        
5280    </p>
5281    <p>The mentioned fields above don't have to be in particular order.
5282    </p>
5283    <p>Example:
5284    </p>
5285    <p>
5286                            </p>
5287    <blockquote class="text">
5288    <p>C: "GET FX_SEND INFO 0 0"
5289    </p>
5290    <p>S: "NAME: Reverb Send"
5291    </p>
5292    <p>&nbsp;&nbsp;&nbsp;"AUDIO_OUTPUT_ROUTING: 2,3"
5293    </p>
5294    <p>&nbsp;&nbsp;&nbsp;"."
5295    </p>
5296    </blockquote><p>
5297                        
5298    </p>
5299    <a name="SET FX_SEND AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
5300    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5301    <a name="rfc.section.6.4.30"></a><h3>6.4.30.&nbsp;
5302    Altering effect send's audio routing</h3>
5303    
5304    <p>The front-end can alter the destination of an effect send's audio channel on a specific
5305                        sampler channel by sending the following command:
5306    </p>
5307    <p>
5308                            </p>
5309    <blockquote class="text">
5310    <p>SET FX_SEND AUDIO_OUTPUT_CHANNEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;audio-src&gt; &lt;audio-dst&gt;
5311    </p>
5312    </blockquote><p>
5313                        
5314    </p>
5315    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5316                        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>
5317                        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,
5318                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5319                        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>
5320                        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,
5321                        &lt;audio-src&gt; is the numerical ID of the effect send's audio channel
5322                        which should be rerouted and &lt;audio-dst&gt; is the numerical ID of
5323                        the audio channel of the selected audio output device where &lt;audio-src&gt;
5324                        should be routed to.
5325    </p>
5326    <p>Note that effect sends can only route audio to the same audio output
5327                        device as assigned to the effect send's sampler channel. Also note that an
5328                        effect send entity does always have exactly as much audio channels as its
5329                        sampler channel. So if the sampler channel is stereo, the effect send does
5330                        have two audio channels as well. Also keep in mind that the amount of audio
5331                        channels on a sampler channel might be dependant not only to the deployed
5332                        sampler engine on the sampler channel, but also dependant to the instrument
5333                        currently loaded. However you can (effectively) turn an i.e. stereo effect
5334                        send into a mono one by simply altering its audio routing appropriately.
5335    </p>
5336    <p>Possible Answers:
5337    </p>
5338    <p>
5339                            </p>
5340    <blockquote class="text">
5341    <p>"OK" -
5342                                    </p>
5343    <blockquote class="text">
5344    <p>on success
5345    </p>
5346    </blockquote>
5347                                
5348    
5349    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5350                                    </p>
5351    <blockquote class="text">
5352    <p>if audio output channel was set, but there are noteworthy
5353                                        issue(s) related, providing an appropriate warning code and
5354                                        warning message
5355    </p>
5356    </blockquote>
5357                                
5358    
5359    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5360                                    </p>
5361    <blockquote class="text">
5362    <p>in case it failed, providing an appropriate error code and error message
5363    </p>
5364    </blockquote>
5365                                
5366    
5367    </blockquote><p>
5368                        
5369    </p>
5370    <p>Example:
5371    </p>
5372    <p>
5373                            </p>
5374    <blockquote class="text">
5375    <p>C: "SET FX_SEND AUDIO_OUTPUT_CHANNEL 0 0 0 2"
5376    </p>
5377    <p>S: "OK"
5378    </p>
5379    </blockquote><p>
5380                        
5381    </p>
5382    <a name="RESET CHANNEL"></a><br /><hr />
5383    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5384    <a name="rfc.section.6.4.31"></a><h3>6.4.31.&nbsp;
5385    Resetting a sampler channel</h3>
5386    
5387    <p>The front-end can reset a particular sampler channel by sending the following command:
5388    </p>
5389    <p>
5390                            </p>
5391    <blockquote class="text">
5392    <p>RESET CHANNEL &lt;sampler-channel&gt;
5393    </p>
5394    </blockquote><p>
5395                        
5396    </p>
5397  <p>  <p>
5398                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.
5399                      This will cause the engine on that sampler channel, its voices and                      This will cause the engine on that sampler channel, its voices and
# Line 3841  Intellectual Property and Copyright Stat Line 5402  Intellectual Property and Copyright Stat
5402  </p>  </p>
5403  <p>Possible Answers:  <p>Possible Answers:
5404  </p>  </p>
5405  <p></p>  <p>
5406                            </p>
5407  <blockquote class="text">  <blockquote class="text">
5408  <p>"OK" -  <p>"OK" -
5409                                  </p>                                  </p>
# Line 3849  Intellectual Property and Copyright Stat Line 5411  Intellectual Property and Copyright Stat
5411  <p>on success  <p>on success
5412  </p>  </p>
5413  </blockquote>  </blockquote>
5414                                
5415    
5416  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5417                                  </p>                                  </p>
# Line 3858  Intellectual Property and Copyright Stat Line 5421  Intellectual Property and Copyright Stat
5421                                      message                                      message
5422  </p>  </p>
5423  </blockquote>  </blockquote>
5424                                
5425    
5426  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5427                                  </p>                                  </p>
# Line 3866  Intellectual Property and Copyright Stat Line 5430  Intellectual Property and Copyright Stat
5430                                      error message                                      error message
5431  </p>  </p>
5432  </blockquote>  </blockquote>
5433                                
5434    
5435  </blockquote>  </blockquote><p>
5436                        
5437    </p>
5438  <p>Examples:  <p>Examples:
5439  </p>  </p>
5440  <p></p>  <p>
5441                            </p>
5442  <blockquote class="text">  <blockquote class="text">
5443  <p>  <p>
5444  </p>  </p>
5445  </blockquote>  </blockquote><p>
5446                        
5447  <a name="rfc.section.5.5"></a><h4><a name="anchor13">5.5</a>&nbsp;Controlling connection</h4>  </p>
5448    <a name="anchor12"></a><br /><hr />
5449    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5450    <a name="rfc.section.6.5"></a><h3>6.5.&nbsp;
5451    Controlling connection</h3>
5452    
5453  <p>The following commands are used to control the connection to LinuxSampler.  <p>The following commands are used to control the connection to LinuxSampler.
5454  </p>  </p>
5455  <a name="rfc.section.5.5.1"></a><h4><a name="SUBSCRIBE">5.5.1</a>&nbsp;Register front-end for receiving event messages</h4>  <a name="SUBSCRIBE"></a><br /><hr />
5456    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5457    <a name="rfc.section.6.5.1"></a><h3>6.5.1.&nbsp;
5458    Register front-end for receiving event messages</h3>
5459    
5460  <p>The front-end can register itself to the LinuxSampler application to  <p>The front-end can register itself to the LinuxSampler application to
5461                      be informed about noteworthy events by sending this command:                      be informed about noteworthy events by sending this command:
5462  </p>  </p>
5463  <p></p>  <p>
5464                            </p>
5465  <blockquote class="text">  <blockquote class="text">
5466  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
5467  </p>  </p>
5468  </blockquote>  </blockquote><p>
5469                        
5470    </p>
5471  <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
5472                      client wants to subscribe to.                      client wants to subscribe to.
5473  </p>  </p>
5474  <p>Possible Answers:  <p>Possible Answers:
5475  </p>  </p>
5476  <p></p>  <p>
5477                            </p>
5478  <blockquote class="text">  <blockquote class="text">
5479  <p>"OK" -  <p>"OK" -
5480                                  </p>                                  </p>
# Line 3905  Intellectual Property and Copyright Stat Line 5482  Intellectual Property and Copyright Stat
5482  <p>on success  <p>on success
5483  </p>  </p>
5484  </blockquote>  </blockquote>
5485                                
5486    
5487  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5488                                  </p>                                  </p>
# Line 3914  Intellectual Property and Copyright Stat Line 5492  Intellectual Property and Copyright Stat
5492                                      warning message                                      warning message
5493  </p>  </p>
5494  </blockquote>  </blockquote>
5495                                
5496    
5497  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5498                                  </p>                                  </p>
# Line 3922  Intellectual Property and Copyright Stat Line 5501  Intellectual Property and Copyright Stat
5501                                      error message                                      error message
5502  </p>  </p>
5503  </blockquote>  </blockquote>
5504                                
5505    
5506  </blockquote>  </blockquote><p>
5507                        
5508    </p>
5509  <p>Examples:  <p>Examples:
5510  </p>  </p>
5511  <p></p>  <p>
5512                            </p>
5513  <blockquote class="text">  <blockquote class="text">
5514  <p>  <p>
5515  </p>  </p>
5516  </blockquote>  </blockquote><p>
5517                        
5518  <a name="rfc.section.5.5.2"></a><h4><a name="UNSUBSCRIBE">5.5.2</a>&nbsp;Unregister front-end for not receiving event messages</h4>  </p>
5519    <a name="UNSUBSCRIBE"></a><br /><hr />
5520    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5521    <a name="rfc.section.6.5.2"></a><h3>6.5.2.&nbsp;
5522    Unregister front-end for not receiving event messages</h3>
5523    
5524  <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
5525                      messages anymore by sending the following command:                      messages anymore by sending the following command:
5526  </p>  </p>
5527  <p></p>  <p>
5528                            </p>
5529  <blockquote class="text">  <blockquote class="text">
5530  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
5531  </p>  </p>
5532  </blockquote>  </blockquote><p>
5533                        
5534    </p>
5535  <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
5536                      client doesn't want to receive anymore.                      client doesn't want to receive anymore.
5537  </p>  </p>
5538  <p>Possible Answers:  <p>Possible Answers:
5539  </p>  </p>
5540  <p></p>  <p>
5541                            </p>
5542  <blockquote class="text">  <blockquote class="text">
5543  <p>"OK" -  <p>"OK" -
5544                                  </p>                                  </p>
# Line 3957  Intellectual Property and Copyright Stat Line 5546  Intellectual Property and Copyright Stat
5546  <p>on success  <p>on success
5547  </p>  </p>
5548  </blockquote>  </blockquote>
5549                                
5550    
5551  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5552                                  </p>                                  </p>
# Line 3966  Intellectual Property and Copyright Stat Line 5556  Intellectual Property and Copyright Stat
5556                                      warning message                                      warning message
5557  </p>  </p>
5558  </blockquote>  </blockquote>
5559                                
5560    
5561  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5562                                  </p>                                  </p>
# Line 3974  Intellectual Property and Copyright Stat Line 5565  Intellectual Property and Copyright Stat
5565                                      error message                                      error message
5566  </p>  </p>
5567  </blockquote>  </blockquote>
5568                                
5569    
5570  </blockquote>  </blockquote><p>
5571                        
5572    </p>
5573  <p>Examples:  <p>Examples:
5574  </p>  </p>
5575  <p></p>  <p>
5576                            </p>
5577  <blockquote class="text">  <blockquote class="text">
5578  <p>  <p>
5579  </p>  </p>
5580  </blockquote>  </blockquote><p>
5581                        
5582  <a name="rfc.section.5.5.3"></a><h4><a name="SET ECHO">5.5.3</a>&nbsp;Enable or disable echo of commands</h4>  </p>
5583    <a name="SET ECHO"></a><br /><hr />
5584    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5585    <a name="rfc.section.6.5.3"></a><h3>6.5.3.&nbsp;
5586    Enable or disable echo of commands</h3>
5587    
5588  <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:
5589  </p>  </p>
5590  <p></p>  <p>
5591                            </p>
5592  <blockquote class="text">  <blockquote class="text">
5593  <p>SET ECHO &lt;value&gt;  <p>SET ECHO &lt;value&gt;
5594  </p>  </p>
5595  </blockquote>  </blockquote><p>
5596                        
5597    </p>
5598  <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
5599                      or "0" to disable echo mode. When echo mode is enabled, all                      or "0" to disable echo mode. When echo mode is enabled, all
5600                      commands send to LinuxSampler will be immediately send back and                      commands send to LinuxSampler will be immediately send back and
# Line 4005  Intellectual Property and Copyright Stat Line 5605  Intellectual Property and Copyright Stat
5605  </p>  </p>
5606  <p>Possible Answers:  <p>Possible Answers:
5607  </p>  </p>
5608  <p></p>  <p>
5609                            </p>
5610  <blockquote class="text">  <blockquote class="text">
5611  <p>"OK" -  <p>"OK" -
5612                                  </p>                                  </p>
# Line 4013  Intellectual Property and Copyright Stat Line 5614  Intellectual Property and Copyright Stat
5614  <p>usually  <p>usually
5615  </p>  </p>
5616  </blockquote>  </blockquote>
5617                                
5618    
5619  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5620                                  </p>                                  </p>
# Line 4020  Intellectual Property and Copyright Stat Line 5622  Intellectual Property and Copyright Stat
5622  <p>on syntax error, e.g. non boolean value  <p>on syntax error, e.g. non boolean value
5623  </p>  </p>
5624  </blockquote>  </blockquote>
5625                                
5626    
5627  </blockquote>  </blockquote><p>
5628                        
5629    </p>
5630  <p>Examples:  <p>Examples:
5631  </p>  </p>
5632  <p></p>  <p>
5633                            </p>
5634  <blockquote class="text">  <blockquote class="text">
5635  <p>  <p>
5636  </p>  </p>
5637  </blockquote>  </blockquote><p>
5638                        
5639  <a name="rfc.section.5.5.4"></a><h4><a name="QUIT">5.5.4</a>&nbsp;Close client connection</h4>  </p>
5640    <a name="QUIT"></a><br /><hr />
5641    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5642    <a name="rfc.section.6.5.4"></a><h3>6.5.4.&nbsp;
5643    Close client connection</h3>
5644    
5645  <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:
5646  </p>  </p>
5647  <p></p>  <p>
5648                            </p>
5649  <blockquote class="text">  <blockquote class="text">
5650  <p>QUIT  <p>QUIT
5651  </p>  </p>
5652  </blockquote>  </blockquote><p>
5653                        
5654    </p>
5655  <p>This is probably more interesting for manual telnet connections to  <p>This is probably more interesting for manual telnet connections to
5656                      LinuxSampler than really useful for a front-end implementation.                      LinuxSampler than really useful for a front-end implementation.
5657  </p>  </p>
5658  <a name="rfc.section.5.6"></a><h4><a name="anchor14">5.6</a>&nbsp;Global commands</h4>  <a name="anchor13"></a><br /><hr />
5659    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5660    <a name="rfc.section.6.6"></a><h3>6.6.&nbsp;
5661    Global commands</h3>
5662    
5663  <p>The following commands have global impact on the sampler.  <p>The following commands have global impact on the sampler.
5664  </p>  </p>
5665  <a name="rfc.section.5.6.1"></a><h4><a name="RESET">5.6.1</a>&nbsp;Reset sampler</h4>  <a name="GET TOTAL_VOICE_COUNT"></a><br /><hr />
5666    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5667    <a name="rfc.section.6.6.1"></a><h3>6.6.1.&nbsp;
5668    Current number of active voices</h3>
5669    
5670    <p>The front-end can ask for the current number of active voices on
5671                        the sampler by sending the following command:
5672    </p>
5673    <p>
5674                            </p>
5675    <blockquote class="text">
5676    <p>GET TOTAL_VOICE_COUNT
5677    </p>
5678    </blockquote><p>
5679                        
5680    </p>
5681    <p>Possible Answers:
5682    </p>
5683    <p>
5684                            </p>
5685    <blockquote class="text">
5686    <p>LinuxSampler will answer by returning the number of all active
5687                                voices on the sampler.
5688    </p>
5689    </blockquote><p>
5690                        
5691    </p>
5692    <a name="GET TOTAL_VOICE_COUNT_MAX"></a><br /><hr />
5693    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5694    <a name="rfc.section.6.6.2"></a><h3>6.6.2.&nbsp;
5695    Maximum amount of active voices</h3>
5696    
5697    <p>The front-end can ask for the maximum number of active voices
5698                        by sending the following command:
5699    </p>
5700    <p>
5701                            </p>
5702    <blockquote class="text">
5703    <p>GET TOTAL_VOICE_COUNT_MAX
5704    </p>
5705    </blockquote><p>
5706                        
5707    </p>
5708    <p>Possible Answers:
5709    </p>
5710    <p>
5711                            </p>
5712    <blockquote class="text">
5713    <p>LinuxSampler will answer by returning the maximum number
5714                                of active voices.
5715    </p>
5716    </blockquote><p>
5717                        
5718    </p>
5719    <a name="RESET"></a><br /><hr />
5720    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5721    <a name="rfc.section.6.6.3"></a><h3>6.6.3.&nbsp;
5722    Reset sampler</h3>
5723    
5724  <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:
5725  </p>  </p>
5726  <p></p>  <p>
5727                            </p>
5728  <blockquote class="text">  <blockquote class="text">
5729  <p>RESET  <p>RESET
5730  </p>  </p>
5731    </blockquote><p>
5732                        
5733    </p>
5734    <p>Possible Answers:
5735    </p>
5736    <p>
5737                            </p>
5738    <blockquote class="text">
5739    <p>"OK" -
5740                                    </p>
5741    <blockquote class="text">
5742    <p>always
5743    </p>
5744  </blockquote>  </blockquote>
5745                                
5746    
5747    </blockquote><p>
5748                        
5749    </p>
5750    <p>Examples:
5751    </p>
5752    <p>
5753                            </p>
5754    <blockquote class="text">
5755    <p>
5756    </p>
5757    </blockquote><p>
5758                        
5759    </p>
5760    <a name="GET SERVER INFO"></a><br /><hr />
5761    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5762    <a name="rfc.section.6.6.4"></a><h3>6.6.4.&nbsp;
5763    General sampler informations</h3>
5764    
5765    <p>The client can ask for general informations about the LinuxSampler
5766                           instance by sending the following command:
5767    </p>
5768    <p>
5769                            </p>
5770    <blockquote class="text">
5771    <p>GET SERVER INFO
5772    </p>
5773    </blockquote><p>
5774                        
5775    </p>
5776  <p>Possible Answers:  <p>Possible Answers:
5777  </p>  </p>
5778  <p></p>  <p>
5779                            </p>
5780    <blockquote class="text">
5781    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
5782                                   Each answer line begins with the information category name
5783                                   followed by a colon and then a space character &lt;SP&gt; and finally
5784                                   the info character string to that information category. At the
5785                                   moment the following categories are defined:
5786                                
5787    </p>
5788    <p>
5789                                    </p>
5790    <blockquote class="text">
5791    <p>DESCRIPTION -
5792                                            </p>
5793    <blockquote class="text">
5794    <p>arbitrary textual description about the sampler
5795    </p>
5796    </blockquote>
5797                                        
5798    
5799    <p>VERSION -
5800                                            </p>
5801    <blockquote class="text">
5802    <p>version of the sampler
5803    </p>
5804    </blockquote>
5805                                        
5806    
5807    <p>PROTOCOL_VERSION -
5808                                            </p>
5809    <blockquote class="text">
5810    <p>version of the LSCP specification the sampler
5811                                                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)
5812    </p>
5813    </blockquote>
5814                                        
5815    
5816    </blockquote>
5817                                
5818    
5819    </blockquote><p>
5820                        
5821    </p>
5822    <p>The mentioned fields above don't have to be in particular order.
5823                        Other fields might be added in future.
5824    </p>
5825    <a name="MIDI Instrument Mapping"></a><br /><hr />
5826    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5827    <a name="rfc.section.6.7"></a><h3>6.7.&nbsp;
5828    MIDI Instrument Mapping</h3>
5829    
5830    <p>The MIDI protocol provides a way to switch between instruments
5831                    by sending so called MIDI bank select and MIDI program change
5832                    messages which are essentially just numbers. The following commands
5833                    allow to actually map arbitrary MIDI bank select / program change
5834                    numbers with real instruments.
5835    </p>
5836    <p>The sampler allows to manage an arbitrary amount of MIDI
5837                    instrument maps which define which instrument to load on
5838                    which MIDI program change message.
5839    </p>
5840    <p>By default, that is when the sampler is launched, there is no
5841                    map, thus the sampler will simply ignore all program change
5842                    messages. The front-end has to explicitly create at least one
5843                    map, add entries to the map and tell the respective sampler
5844                    channel(s) which MIDI instrument map to use, so the sampler
5845                    knows how to react on a given program change message on the
5846                    respective sampler channel, that is by switching to the
5847                    respectively defined engine type and loading the respective
5848                    instrument. See command
5849                    <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>
5850                    for how to assign a MIDI instrument map to a sampler channel.
5851    </p>
5852    <p>Also note per MIDI specification a bank select message does not
5853                    cause to switch to another instrument. Instead when receiving a
5854                    bank select message the bank value will be stored and a subsequent
5855                    program change message (which may occur at any time) will finally
5856                    cause the sampler to switch to the respective instrument as
5857                    reflected by the current MIDI instrument map.
5858    </p>
5859    <a name="ADD MIDI_INSTRUMENT MAP"></a><br /><hr />
5860    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5861    <a name="rfc.section.6.7.1"></a><h3>6.7.1.&nbsp;
5862    Create a new MIDI instrument map</h3>
5863    
5864    <p>The front-end can add a new MIDI instrument map by sending
5865                        the following command:
5866    </p>
5867    <p>
5868                            </p>
5869    <blockquote class="text">
5870    <p>ADD MIDI_INSTRUMENT_MAP [&lt;name&gt;]
5871    </p>
5872    </blockquote><p>
5873                        
5874    </p>
5875    <p>Where &lt;name&gt; is an optional argument allowing to
5876                        assign a custom name to the new map. MIDI instrument Map
5877                        names do not have to be unique.
5878    </p>
5879    <p>Possible Answers:
5880    </p>
5881    <p>
5882                            </p>
5883    <blockquote class="text">
5884    <p>"OK[&lt;map&gt;]" -
5885                                    </p>
5886    <blockquote class="text">
5887    <p>in case a new MIDI instrument map could
5888                                        be added, where &lt;map&gt; reflects the
5889                                        unique ID of the newly created MIDI
5890                                        instrument map
5891    </p>
5892    </blockquote>
5893                                
5894    
5895    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5896                                    </p>
5897    <blockquote class="text">
5898    <p>when a new map could not be created, which
5899                                        might never occur in practice
5900    </p>
5901    </blockquote>
5902                                
5903    
5904    </blockquote><p>
5905                        
5906    </p>
5907    <p>Examples:
5908    </p>
5909    <p>
5910                            </p>
5911    <blockquote class="text">
5912    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Map'"
5913    </p>
5914    <p>S: "OK[0]"
5915    </p>
5916    </blockquote><p>
5917                        
5918    </p>
5919    <p>
5920                            </p>
5921    <blockquote class="text">
5922    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Drumkit'"
5923    </p>
5924    <p>S: "OK[1]"
5925    </p>
5926    </blockquote><p>
5927                        
5928    </p>
5929    <p>
5930                            </p>
5931    <blockquote class="text">
5932    <p>C: "ADD MIDI_INSTRUMENT_MAP"
5933    </p>
5934    <p>S: "OK[5]"
5935    </p>
5936    </blockquote><p>
5937                        
5938    </p>
5939    <a name="REMOVE MIDI_INSTRUMENT_MAP"></a><br /><hr />
5940    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5941    <a name="rfc.section.6.7.2"></a><h3>6.7.2.&nbsp;
5942    Delete one particular or all MIDI instrument maps</h3>
5943    
5944    <p>The front-end can delete a particular MIDI instrument map
5945                        by sending the following command:
5946    </p>
5947    <p>
5948                            </p>
5949    <blockquote class="text">
5950    <p>REMOVE MIDI_INSTRUMENT_MAP &lt;map&gt;
5951    </p>
5952    </blockquote><p>
5953                        
5954    </p>
5955    <p>Where &lt;map&gt; reflects the unique ID of the map to delete
5956                        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>
5957                        command.
5958    </p>
5959    <p>The front-end can delete all MIDI instrument maps by
5960                        sending the following command:
5961    </p>
5962    <p>
5963                            </p>
5964    <blockquote class="text">
5965    <p>REMOVE MIDI_INSTRUMENT_MAP ALL
5966    </p>
5967    </blockquote><p>
5968                        
5969    </p>
5970    <p>Possible Answers:
5971    </p>
5972    <p>
5973                            </p>
5974  <blockquote class="text">  <blockquote class="text">
5975  <p>"OK" -  <p>"OK" -
5976                                  </p>                                  </p>
5977  <blockquote class="text">  <blockquote class="text">
5978  <p>always  <p>in case the map(s) could be deleted
5979    </p>
5980    </blockquote>
5981                                
5982    
5983    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5984                                    </p>
5985    <blockquote class="text">
5986    <p>when the given map does not exist
5987    </p>
5988    </blockquote>
5989                                
5990    
5991    </blockquote><p>
5992                        
5993    </p>
5994    <p>Examples:
5995    </p>
5996    <p>
5997                            </p>
5998    <blockquote class="text">
5999    <p>C: "REMOVE MIDI_INSTRUMENT_MAP 0"
6000    </p>
6001    <p>S: "OK"
6002    </p>
6003    </blockquote><p>
6004                        
6005    </p>
6006    <p>
6007                            </p>
6008    <blockquote class="text">
6009    <p>C: "REMOVE MIDI_INSTRUMENT_MAP ALL"
6010    </p>
6011    <p>S: "OK"
6012    </p>
6013    </blockquote><p>
6014                        
6015    </p>
6016    <a name="GET MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6017    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6018    <a name="rfc.section.6.7.3"></a><h3>6.7.3.&nbsp;
6019    Get amount of existing MIDI instrument maps</h3>
6020    
6021    <p>The front-end can retrieve the current amount of MIDI
6022                        instrument maps by sending the following command:
6023    </p>
6024    <p>
6025                            </p>
6026    <blockquote class="text">
6027    <p>GET MIDI_INSTRUMENT_MAPS
6028    </p>
6029    </blockquote><p>
6030                        
6031    </p>
6032    <p>Possible Answers:
6033    </p>
6034    <p>
6035                            </p>
6036    <blockquote class="text">
6037    <p>The sampler will answer by returning the current
6038                                number of MIDI instrument maps.
6039    </p>
6040    </blockquote><p>
6041                        
6042    </p>
6043    <p>Example:
6044    </p>
6045    <p>
6046                            </p>
6047    <blockquote class="text">
6048    <p>C: "GET MIDI_INSTRUMENT_MAPS"
6049    </p>
6050    <p>S: "2"
6051    </p>
6052    </blockquote><p>
6053                        
6054    </p>
6055    <a name="LIST MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6056    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6057    <a name="rfc.section.6.7.4"></a><h3>6.7.4.&nbsp;
6058    Getting all created MIDI instrument maps</h3>
6059    
6060    <p>The number of MIDI instrument maps can change on runtime. To get the
6061                        current list of MIDI instrument maps, the front-end can send the
6062                        following command:
6063    </p>
6064    <p>
6065                            </p>
6066    <blockquote class="text">
6067    <p>LIST MIDI_INSTRUMENT_MAPS
6068    </p>
6069    </blockquote><p>
6070                        
6071    </p>
6072    <p>Possible Answers:
6073    </p>
6074    <p>
6075                            </p>
6076    <blockquote class="text">
6077    <p>The sampler will answer by returning a comma separated list
6078                                with all MIDI instrument maps' numerical IDs.
6079    </p>
6080    </blockquote><p>
6081                        
6082    </p>
6083    <p>Example:
6084    </p>
6085    <p>
6086                            </p>
6087    <blockquote class="text">
6088    <p>C: "LIST MIDI_INSTRUMENT_MAPS"
6089    </p>
6090    <p>S: "0,1,5,12"
6091    </p>
6092    </blockquote><p>
6093                        
6094    </p>
6095    <a name="GET MIDI_INSTRUMENT_MAP INFO"></a><br /><hr />
6096    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6097    <a name="rfc.section.6.7.5"></a><h3>6.7.5.&nbsp;
6098    Getting MIDI instrument map information</h3>
6099    
6100    <p>The front-end can ask for the current settings of a MIDI
6101                        instrument map by sending the following command:
6102    </p>
6103    <p>
6104                            </p>
6105    <blockquote class="text">
6106    <p>GET MIDI_INSTRUMENT_MAP INFO &lt;map&gt;
6107    </p>
6108    </blockquote><p>
6109                        
6110    </p>
6111    <p>Where &lt;map&gt; is the numerical ID of the map the
6112                        front-end is interested in as returned by the
6113                        <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>
6114                        command.
6115    </p>
6116    <p>Possible Answers:
6117    </p>
6118    <p>
6119                            </p>
6120    <blockquote class="text">
6121    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
6122                                Each answer line begins with the settings category name
6123                                followed by a colon and then a space character &lt;SP&gt; and finally
6124                                the info character string to that setting category. At the
6125                                moment the following categories are defined:
6126    </p>
6127    <p>
6128                                    </p>
6129    <blockquote class="text">
6130    <p>NAME -
6131                                            </p>
6132    <blockquote class="text">
6133    <p>custom name of the given map,
6134                                                which does not have to be unique
6135    </p>
6136    </blockquote>
6137                                        
6138    
6139    </blockquote>
6140                                
6141    
6142    </blockquote><p>
6143                        
6144    </p>
6145    <p>The mentioned fields above don't have to be in particular order.
6146    </p>
6147    <p>Example:
6148    </p>
6149    <p>
6150                            </p>
6151    <blockquote class="text">
6152    <p>C: "GET MIDI_INSTRUMENT_MAP INFO 0"
6153    </p>
6154    <p>S: "NAME: Standard Map"
6155    </p>
6156    <p>&nbsp;&nbsp;&nbsp;"."
6157    </p>
6158    </blockquote><p>
6159                        
6160    </p>
6161    <a name="SET MIDI_INSTRUMENT_MAP NAME"></a><br /><hr />
6162    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6163    <a name="rfc.section.6.7.6"></a><h3>6.7.6.&nbsp;
6164    Renaming a MIDI instrument map</h3>
6165    
6166    <p>The front-end can alter the custom name of a MIDI
6167                        instrument map by sending the following command:
6168    </p>
6169    <p>
6170                            </p>
6171    <blockquote class="text">
6172    <p>SET MIDI_INSTRUMENT_MAP NAME &lt;map&gt; &lt;name&gt;
6173    </p>
6174    </blockquote><p>
6175                        
6176    </p>
6177    <p>Where &lt;map&gt; is the numerical ID of the map and
6178                        &lt;name&gt; the new custom name of the map, which does not
6179                        have to be unique.
6180    </p>
6181    <p>Possible Answers:
6182    </p>
6183    <p>
6184                            </p>
6185    <blockquote class="text">
6186    <p>"OK" -
6187                                    </p>
6188    <blockquote class="text">
6189    <p>on success
6190    </p>
6191    </blockquote>
6192                                
6193    
6194    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6195                                    </p>
6196    <blockquote class="text">
6197    <p>in case the given map does not exist
6198    </p>
6199    </blockquote>
6200                                
6201    
6202    </blockquote><p>
6203                        
6204    </p>
6205    <p>Example:
6206    </p>
6207    <p>
6208                            </p>
6209    <blockquote class="text">
6210    <p>C: "SET MIDI_INSTRUMENT_MAP NAME 0 'Foo instruments'"
6211    </p>
6212    <p>S: "OK"
6213    </p>
6214    </blockquote><p>
6215                        
6216    </p>
6217    <a name="MAP MIDI_INSTRUMENT"></a><br /><hr />
6218    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6219    <a name="rfc.section.6.7.7"></a><h3>6.7.7.&nbsp;
6220    Create or replace a MIDI instrument map entry</h3>
6221    
6222    <p>The front-end can create a new or replace an existing entry
6223                        in a sampler's MIDI instrument map by sending the following
6224                        command:
6225    </p>
6226    <p>
6227                            </p>
6228    <blockquote class="text">
6229    <p>MAP MIDI_INSTRUMENT &lt;map&gt;
6230                                &lt;midi_bank&gt; &lt;midi_prog&gt; &lt;engine_name&gt;
6231                                &lt;filename&gt; &lt;instrument_index&gt; &lt;volume_value&gt;
6232                                [&lt;instr_load_mode&gt;] [&lt;name&gt;]
6233    </p>
6234    </blockquote><p>
6235                        
6236    </p>
6237    <p>Where &lt;map&gt; is the numeric ID of the map to alter,
6238                        &lt;midi_bank&gt; is an integer value between
6239                        0..16383 reflecting the MIDI bank select index,
6240                        &lt;midi_prog&gt; an
6241                        integer value between 0..127 reflecting the MIDI program change
6242                        index, &lt;engine_name&gt; a sampler engine name as returned by
6243                        the <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a>
6244                        command (not encapsulated into apostrophes), &lt;filename&gt; the name
6245                        of the instrument's file to be deployed (encapsulated into apostrophes),
6246                        &lt;instrument_index&gt; the index (integer value) of the instrument
6247                        within the given file, &lt;volume_value&gt; reflects the master
6248                        volume of the instrument as optionally dotted number (where a
6249                        value < 1.0 means attenuation and a value > 1.0 means
6250                        amplification). This parameter easily allows to adjust the
6251                        volume of all intruments within a custom instrument map
6252                        without having to adjust their instrument files. The
6253                        OPTIONAL &lt;instr_load_mode&gt; argument defines the life
6254                        time of the instrument, that is when the instrument should
6255                        be loaded, when freed and has exactly the following
6256                        possibilities:
6257    </p>
6258    <p>
6259                            </p>
6260    <blockquote class="text">
6261    <p>"ON_DEMAND" -
6262                                    </p>
6263    <blockquote class="text">
6264    <p>The instrument will be loaded when needed,
6265                                        that is when demanded by at least one sampler
6266                                        channel. It will immediately be freed from memory
6267                                        when not needed by any sampler channel anymore.
6268    </p>
6269    </blockquote>
6270                                
6271    
6272    <p>"ON_DEMAND_HOLD" -
6273                                    </p>
6274    <blockquote class="text">
6275    <p>The instrument will be loaded when needed,
6276                                        that is when demanded by at least one sampler
6277                                        channel. It will be kept in memory even when
6278                                        not needed by any sampler channel anymore.
6279                                        Instruments with this mode are only freed
6280                                        when the sampler is reset or all mapping
6281                                        entries with this mode (and respective
6282                                        instrument) are explicitly changed to
6283                                        "ON_DEMAND" and no sampler channel is using
6284                                        the instrument anymore.
6285    </p>
6286    </blockquote>
6287                                
6288    
6289    <p>"PERSISTENT" -
6290                                    </p>
6291    <blockquote class="text">
6292    <p>The instrument will immediately be loaded
6293                                        into memory in the background when this mapping
6294                                        command is sent and the instrument is kept all
6295                                        the time. Instruments with this mode are
6296                                        only freed when the sampler is reset or all
6297                                        mapping entries with this mode (and
6298                                        respective instrument) are explicitly
6299                                        changed to "ON_DEMAND" and no sampler
6300                                        channel is using the instrument anymore.
6301    </p>
6302    </blockquote>
6303                                
6304    
6305    <p>not supplied -
6306                                    </p>
6307    <blockquote class="text">
6308    <p>In case there is no &lt;instr_load_mode&gt;
6309                                        argument given, it will be up to the
6310                                        InstrumentManager to decide which mode to use.
6311                                        Usually it will use "ON_DEMAND" if an entry
6312                                        for the given instrument does not exist in
6313                                        the InstrumentManager's list yet, otherwise
6314                                        if an entry already exists, it will simply
6315                                        stick with the mode currently reflected by
6316                                        the already existing entry, that is it will
6317                                        not change the mode.
6318  </p>  </p>
6319  </blockquote>  </blockquote>
6320                                
6321    
6322    </blockquote><p>
6323                        
6324    </p>
6325    <p>
6326                        The &lt;instr_load_mode&gt; argument thus allows to define an
6327                        appropriate strategy (low memory consumption vs. fast
6328                        instrument switching) for each instrument individually. Note, the
6329                        following restrictions apply to this argument: "ON_DEMAND_HOLD" and
6330                        "PERSISTENT" have to be supported by the respective sampler engine
6331                        (which is technically the case when the engine provides an
6332                        InstrumentManager for its format). If this is not the case the
6333                        argument will automatically fall back to the default value
6334                        "ON_DEMAND". Also the load mode of one instrument may
6335                        automatically change the laod mode of other instrument(s), i.e.
6336                        because the instruments are part of the same file and the
6337                        engine does not allow a way to manage load modes for them
6338                        individually. Due to this, in case the frontend shows the
6339                        load modes of entries, the frontend should retrieve the actual
6340                        mode by i.e. sending
6341                        <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>
6342                        command(s). Finally the OPTIONAL &lt;name&gt; argument allows to
6343                        set a custom name (encapsulated into apostrophes) for the mapping
6344                        entry, useful for frontends for displaying an appropriate name for
6345                        mapped instruments (using
6346                        <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>).
6347                        
6348    </p>
6349    <p>
6350                        The "MAP MIDI_INSTRUMENT" command
6351                        will immediately return, thus it will not block when an
6352                        instrument is to be loaded due to a "PERSISTENT" type
6353                        entry as instruments are loaded in the background. As a
6354                        consequence this command may not necessarily return an error
6355                        i.e. when the given instrument file does not exist or may
6356                        turn out to be corrupt.
6357                        
6358    </p>
6359    <p>Possible Answers:
6360    </p>
6361    <p>
6362                            </p>
6363    <blockquote class="text">
6364    <p>"OK" -
6365                                    </p>
6366    <blockquote class="text">
6367    <p>usually
6368    </p>
6369  </blockquote>  </blockquote>
6370                                
6371    
6372    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6373                                    </p>
6374    <blockquote class="text">
6375    <p>when the given map or engine does not exist or a value
6376                                        is out of range
6377    </p>
6378    </blockquote>
6379                                
6380    
6381    </blockquote><p>
6382                        
6383    </p>
6384  <p>Examples:  <p>Examples:
6385  </p>  </p>
6386  <p></p>  <p>
6387                            </p>
6388  <blockquote class="text">  <blockquote class="text">
6389    <p>C: "MAP MIDI_INSTRUMENT 0 3 0 gig '/usr/share/Steinway D.gig' 0 0.8 PERSISTENT"
6390    </p>
6391    <p>S: "OK"
6392    </p>
6393    </blockquote><p>
6394                        
6395    </p>
6396  <p>  <p>
6397                            </p>
6398    <blockquote class="text">
6399    <p>C: "MAP MIDI_INSTRUMENT 0 4 50 gig '/home/john/foostrings.gig' 7 1.0"
6400    </p>
6401    <p>S: "OK"
6402    </p>
6403    </blockquote><p>
6404                        
6405    </p>
6406    <p>
6407                            </p>
6408    <blockquote class="text">
6409    <p>C: "MAP MIDI_INSTRUMENT 0 0 0 gig '/usr/share/piano.gig' 0 1.0 'Normal Piano'"
6410    </p>
6411    <p>S: "OK"
6412    </p>
6413    <p>C: "MAP MIDI_INSTRUMENT 0 1 0 gig '/usr/share/piano.gig' 0 0.25 'Silent Piano'"
6414    </p>
6415    <p>S: "OK"
6416    </p>
6417    </blockquote><p>
6418                        
6419    </p>
6420    <p>
6421                            </p>
6422    <blockquote class="text">
6423    <p>C: "MAP MIDI_INSTRUMENT 1 8 120 gig '/home/joe/foodrums.gig' 0 1.0 PERSISTENT 'Foo Drumkit'"
6424    </p>
6425    <p>S: "OK"
6426    </p>
6427    </blockquote><p>
6428                        
6429    </p>
6430    <a name="GET MIDI_INSTRUMENTS"></a><br /><hr />
6431    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6432    <a name="rfc.section.6.7.8"></a><h3>6.7.8.&nbsp;
6433    Getting ammount of MIDI instrument map entries</h3>
6434    
6435    <p>The front-end can query the amount of currently existing
6436                        entries in a MIDI instrument map by sending the following
6437                        command:
6438    </p>
6439    <p>
6440                            </p>
6441    <blockquote class="text">
6442    <p>GET MIDI_INSTRUMENTS &lt;map&gt;
6443    </p>
6444    </blockquote><p>
6445                        
6446    </p>
6447    <p>The front-end can query the amount of currently existing
6448                        entries in all MIDI instrument maps by sending the following
6449                        command:
6450    </p>
6451    <p>
6452                            </p>
6453    <blockquote class="text">
6454    <p>GET MIDI_INSTRUMENTS ALL
6455    </p>
6456    </blockquote><p>
6457                        
6458    </p>
6459    <p>Possible Answers:
6460    </p>
6461    <p>
6462                            </p>
6463    <blockquote class="text">
6464    <p>The sampler will answer by sending the current number of
6465                                entries in the MIDI instrument map(s).
6466    </p>
6467    </blockquote><p>
6468                        
6469    </p>
6470    <p>Example:
6471    </p>
6472    <p>
6473                            </p>
6474    <blockquote class="text">
6475    <p>C: "GET MIDI_INSTRUMENTS 0"
6476    </p>
6477    <p>S: "234"
6478    </p>
6479    </blockquote><p>
6480                        
6481    </p>
6482    <p>
6483                            </p>
6484    <blockquote class="text">
6485    <p>C: "GET MIDI_INSTRUMENTS ALL"
6486    </p>
6487    <p>S: "954"
6488    </p>
6489    </blockquote><p>
6490                        
6491    </p>
6492    <a name="LIST MIDI_INSTRUMENTS"></a><br /><hr />
6493    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6494    <a name="rfc.section.6.7.9"></a><h3>6.7.9.&nbsp;
6495    Getting indeces of all entries of a MIDI instrument map</h3>
6496    
6497    <p>The front-end can query a list of all currently existing
6498                        entries in a certain MIDI instrument map by sending the following
6499                        command:
6500    </p>
6501    <p>
6502                            </p>
6503    <blockquote class="text">
6504    <p>LIST MIDI_INSTRUMENTS &lt;map&gt;
6505    </p>
6506    </blockquote><p>
6507                        
6508    </p>
6509    <p>Where &lt;map&gt; is the numeric ID of the MIDI instrument map.
6510    </p>
6511    <p>The front-end can query a list of all currently existing
6512                        entries of all MIDI instrument maps by sending the following
6513                        command:
6514    </p>
6515    <p>
6516                            </p>
6517    <blockquote class="text">
6518    <p>LIST MIDI_INSTRUMENTS ALL
6519    </p>
6520    </blockquote><p>
6521                        
6522    </p>
6523    <p>Possible Answers:
6524    </p>
6525    <p>
6526                            </p>
6527    <blockquote class="text">
6528    <p>The sampler will answer by sending a comma separated
6529                                list of map ID - MIDI bank - MIDI program triples, where
6530                                each triple is encapsulated into curly braces. The
6531                                list is returned in one single line. Each triple
6532                                just reflects the key of the respective map entry,
6533                                thus subsequent
6534                                <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>
6535                                command(s) are necessary to retrieve detailed informations
6536                                about each entry.
6537    </p>
6538    </blockquote><p>
6539                        
6540    </p>
6541    <p>Example:
6542    </p>
6543    <p>
6544                            </p>
6545    <blockquote class="text">
6546    <p>C: "LIST MIDI_INSTRUMENTS 0"
6547    </p>
6548    <p>S: "{0,0,0},{0,0,1},{0,0,3},{0,1,4},{1,127,127}"
6549    </p>
6550    </blockquote><p>
6551                        
6552    </p>
6553    <a name="UNMAP MIDI_INSTRUMENT"></a><br /><hr />
6554    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6555    <a name="rfc.section.6.7.10"></a><h3>6.7.10.&nbsp;
6556    Remove an entry from the MIDI instrument map</h3>
6557    
6558    <p>The front-end can delete an entry from a MIDI instrument
6559                        map by sending the following command:
6560    </p>
6561    <p>
6562                            </p>
6563    <blockquote class="text">
6564    <p>UNMAP MIDI_INSTRUMENT &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
6565    </p>
6566    </blockquote><p>
6567                        
6568    </p>
6569    <p>
6570                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
6571                        &lt;midi_bank&gt; is an integer value between 0..16383
6572                        reflecting the MIDI bank value and
6573                        &lt;midi_prog&gt; an integer value between
6574                        0..127 reflecting the MIDI program value of the map's entrie's key
6575                        index triple.
6576                        
6577    </p>
6578    <p>Possible Answers:
6579    </p>
6580    <p>
6581                            </p>
6582    <blockquote class="text">
6583    <p>"OK" -
6584                                    </p>
6585    <blockquote class="text">
6586    <p>usually
6587    </p>
6588    </blockquote>
6589                                
6590    
6591    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6592                                    </p>
6593    <blockquote class="text">
6594    <p>when index out of bounds
6595  </p>  </p>
6596  </blockquote>  </blockquote>
6597                                
6598    
6599    </blockquote><p>
6600                        
6601    </p>
6602    <p>Example:
6603    </p>
6604    <p>
6605                            </p>
6606    <blockquote class="text">
6607    <p>C: "UNMAP MIDI_INSTRUMENT 0 2 127"
6608    </p>
6609    <p>S: "OK"
6610    </p>
6611    </blockquote><p>
6612                        
6613    </p>
6614    <a name="GET MIDI_INSTRUMENT INFO"></a><br /><hr />
6615    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6616    <a name="rfc.section.6.7.11"></a><h3>6.7.11.&nbsp;
6617    Get current settings of MIDI instrument map entry</h3>
6618    
6619    <p>The front-end can retrieve the current settings of a certain
6620                        instrument map entry by sending the following command:
6621    </p>
6622    <p>
6623                            </p>
6624    <blockquote class="text">
6625    <p>GET MIDI_INSTRUMENT INFO &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
6626    </p>
6627    </blockquote><p>
6628                        
6629    </p>
6630    <p>
6631                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
6632                        &lt;midi_bank&gt; is an integer value between 0..16383
6633                        reflecting the MIDI bank value, &lt;midi_bank&gt;
6634                        and &lt;midi_prog&gt; an integer value between
6635                        0..127 reflecting the MIDI program value of the map's entrie's key
6636                        index triple.
6637                        
6638    </p>
6639    <p>Possible Answers:
6640    </p>
6641    <p>
6642                            </p>
6643    <blockquote class="text">
6644    <p>LinuxSampler will answer by sending a &lt;CRLF&gt;
6645                                separated list. Each answer line begins with the
6646                                information category name followed by a colon and then
6647                                a space character &lt;SP&gt; and finally the info
6648                                character string to that info category. At the moment
6649                                the following categories are defined:
6650    </p>
6651    <p>"NAME" -
6652                                    </p>
6653    <blockquote class="text">
6654    <p>Name for this MIDI instrument map entry (if defined).
6655                                        This name shall be used by frontends for displaying a
6656                                        name for this mapped instrument. It can be set and
6657                                        changed with the
6658                                        <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>
6659                                        command and does not have to be unique.
6660    </p>
6661    </blockquote>
6662                                
6663    
6664    <p>"ENGINE_NAME" -
6665                                    </p>
6666    <blockquote class="text">
6667    <p>Name of the engine to be deployed for this
6668                                        instrument.
6669    </p>
6670    </blockquote>
6671                                
6672    
6673    <p>"INSTRUMENT_FILE" -
6674                                    </p>
6675    <blockquote class="text">
6676    <p>File name of the instrument.
6677    </p>
6678    </blockquote>
6679                                
6680    
6681    <p>"INSTRUMENT_NR" -
6682                                    </p>
6683    <blockquote class="text">
6684    <p>Index of the instrument within the file.
6685    </p>
6686    </blockquote>
6687                                
6688    
6689    <p>"INSTRUMENT_NAME" -
6690                                    </p>
6691    <blockquote class="text">
6692    <p>Name of the loaded instrument as reflected by its file.
6693                                        In contrast to the "NAME" field, the "INSTRUMENT_NAME" field
6694                                        cannot be changed.
6695    </p>
6696    </blockquote>
6697                                
6698    
6699    <p>"LOAD_MODE" -
6700                                    </p>
6701    <blockquote class="text">
6702    <p>Life time of instrument
6703                                        (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).
6704    </p>
6705    </blockquote>
6706                                
6707    
6708    <p>"VOLUME" -
6709                                    </p>
6710    <blockquote class="text">
6711    <p>master volume of the instrument as optionally
6712                                        dotted number (where a value < 1.0 means attenuation
6713                                        and a value > 1.0 means amplification)
6714    </p>
6715    </blockquote>
6716                                
6717    
6718    <p>The mentioned fields above don't have to be in particular order.
6719    </p>
6720    </blockquote><p>
6721                        
6722    </p>
6723    <p>Example:
6724    </p>
6725    <p>
6726                            </p>
6727    <blockquote class="text">
6728    <p>C: "GET MIDI_INSTRUMENT INFO 1 45 120"
6729    </p>
6730    <p>S: "NAME: Drums for Foo Song"
6731    </p>
6732    <p>&nbsp;&nbsp;&nbsp;"ENGINE_NAME: GigEngine"
6733    </p>
6734    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_FILE: /usr/share/joesdrumkit.gig"
6735    </p>
6736    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NR: 0"
6737    </p>
6738    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NAME: Joe's Drumkit"
6739    </p>
6740    <p>&nbsp;&nbsp;&nbsp;"LOAD_MODE: PERSISTENT"
6741    </p>
6742    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
6743    </p>
6744    <p>&nbsp;&nbsp;&nbsp;"."
6745    </p>
6746    </blockquote><p>
6747                        
6748    </p>
6749    <a name="CLEAR MIDI_INSTRUMENTS"></a><br /><hr />
6750    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6751    <a name="rfc.section.6.7.12"></a><h3>6.7.12.&nbsp;
6752    Clear MIDI instrument map</h3>
6753    
6754    <p>The front-end can clear a whole MIDI instrument map, that
6755                        is delete all its entries by sending the following command:
6756    </p>
6757    <p>
6758                            </p>
6759    <blockquote class="text">
6760    <p>CLEAR MIDI_INSTRUMENTS &lt;map&gt;
6761    </p>
6762    </blockquote><p>
6763                        
6764    </p>
6765    <p>Where &lt;map&gt; is the numeric ID of the map to clear.
6766    </p>
6767    <p>The front-end can clear all MIDI instrument maps, that
6768                        is delete all entries of all maps by sending the following
6769                        command:
6770    </p>
6771    <p>
6772                            </p>
6773    <blockquote class="text">
6774    <p>CLEAR MIDI_INSTRUMENTS ALL
6775    </p>
6776    </blockquote><p>
6777                        
6778    </p>
6779    <p>The command "CLEAR MIDI_INSTRUMENTS ALL" does not delete the
6780                        maps, only their entries, thus the map's settings like
6781                        custom name will be preservevd.
6782    </p>
6783    <p>Possible Answers:
6784    </p>
6785    <p>
6786                            </p>
6787    <blockquote class="text">
6788    <p>"OK" -
6789                                    </p>
6790    <blockquote class="text">
6791    <p>always
6792    </p>
6793    </blockquote>
6794                                
6795    
6796    </blockquote><p>
6797                        
6798    </p>
6799    <p>Examples:
6800    </p>
6801    <p>
6802                           </p>
6803    <blockquote class="text">
6804    <p>C: "CLEAR MIDI_INSTRUMENTS 0"
6805    </p>
6806    <p>S: "OK"
6807    </p>
6808    </blockquote><p>
6809                        
6810    </p>
6811    <p>
6812                           </p>
6813    <blockquote class="text">
6814    <p>C: "CLEAR MIDI_INSTRUMENTS ALL"
6815    </p>
6816    <p>S: "OK"
6817    </p>
6818    </blockquote><p>
6819                        
6820    </p>
6821  <a name="command_syntax"></a><br /><hr />  <a name="command_syntax"></a><br /><hr />
6822  <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>
6823  <a name="rfc.section.6"></a><h3>6.&nbsp;Command Syntax</h3>  <a name="rfc.section.7"></a><h3>7.&nbsp;
6824    Command Syntax</h3>
6825    
6826    <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>
6827                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>)
6828                where applicable.
6829                
6830    </p>
6831    <p>input =
6832            </p>
6833    <blockquote class="text">
6834    <p>line LF
6835                    
6836    </p>
6837    <p>/ line CR LF
6838                    
6839    </p>
6840    </blockquote><p>
6841    
6842    </p>
6843    <p>line =
6844            </p>
6845    <blockquote class="text">
6846    <p>/* epsilon (empty line ignored) */
6847                    
6848    </p>
6849    <p>/ comment
6850                    
6851    </p>
6852    <p>/ command
6853                    
6854    </p>
6855    <p>/ error
6856                    
6857    </p>
6858    </blockquote><p>
6859    
6860    </p>
6861    <p>comment =
6862            </p>
6863    <blockquote class="text">
6864    <p>'#'
6865                    
6866    </p>
6867    <p>/ comment '#'
6868                    
6869    </p>
6870    <p>/ comment SP
6871                    
6872    </p>
6873    <p>/ comment number
6874                    
6875    </p>
6876    <p>/ comment string
6877                    
6878    </p>
6879    </blockquote><p>
6880    
6881    </p>
6882    <p>command =
6883            </p>
6884    <blockquote class="text">
6885    <p>ADD SP add_instruction
6886                    
6887    </p>
6888    <p>/ MAP SP map_instruction
6889                    
6890    </p>
6891    <p>/ UNMAP SP unmap_instruction
6892                    
6893    </p>
6894    <p>/ GET SP get_instruction
6895                    
6896    </p>
6897    <p>/ CREATE SP create_instruction
6898                    
6899    </p>
6900    <p>/ DESTROY SP destroy_instruction
6901                    
6902    </p>
6903    <p>/ LIST SP list_instruction
6904                    
6905    </p>
6906    <p>/ LOAD SP load_instruction
6907                    
6908    </p>
6909    <p>/ REMOVE SP remove_instruction
6910                    
6911    </p>
6912    <p>/ SET SP set_instruction
6913                    
6914    </p>
6915    <p>/ SUBSCRIBE SP subscribe_event
6916                    
6917    </p>
6918    <p>/ UNSUBSCRIBE SP unsubscribe_event
6919                    
6920    </p>
6921    <p>/ SELECT SP text
6922                    
6923    </p>
6924    <p>/ RESET SP reset_instruction
6925                    
6926    </p>
6927    <p>/ CLEAR SP clear_instruction
6928                    
6929    </p>
6930    <p>/ RESET
6931                    
6932    </p>
6933    <p>/ QUIT
6934                    
6935    </p>
6936    </blockquote><p>
6937    
6938    </p>
6939    <p>add_instruction =
6940            </p>
6941    <blockquote class="text">
6942    <p>CHANNEL
6943                    
6944    </p>
6945    <p>/ MIDI_INSTRUMENT_MAP
6946                    
6947    </p>
6948    <p>/ MIDI_INSTRUMENT_MAP SP map_name
6949                    
6950    </p>
6951    </blockquote><p>
6952    
6953    </p>
6954    <p>subscribe_event =
6955            </p>
6956    <blockquote class="text">
6957    <p>AUDIO_OUTPUT_DEVICE_COUNT
6958                    
6959    </p>
6960    <p>/ AUDIO_OUTPUT_DEVICE_INFO
6961                    
6962    </p>
6963    <p>/ MIDI_INPUT_DEVICE_COUNT
6964                    
6965    </p>
6966    <p>/ MIDI_INPUT_DEVICE_INFO
6967                    
6968    </p>
6969    <p>/ CHANNEL_COUNT
6970                    
6971    </p>
6972    <p>/ VOICE_COUNT
6973                    
6974    </p>
6975    <p>/ STREAM_COUNT
6976                    
6977    </p>
6978    <p>/ BUFFER_FILL
6979                    
6980    </p>
6981    <p>/ CHANNEL_INFO
6982                    
6983    </p>
6984    <p>/ MIDI_INSTRUMENT_MAP_COUNT
6985                    
6986    </p>
6987    <p>/ MIDI_INSTRUMENT_MAP_INFO
6988                    
6989    </p>
6990    <p>/ MIDI_INSTRUMENT_COUNT
6991                    
6992    </p>
6993    <p>/ MIDI_INSTRUMENT_INFO
6994                    
6995    </p>
6996    <p>/ MISCELLANEOUS
6997                    
6998    </p>
6999    <p>/ TOTAL_VOICE_COUNT
7000                    
7001    </p>
7002    </blockquote><p>
7003    
7004    </p>
7005    <p>unsubscribe_event =
7006            </p>
7007    <blockquote class="text">
7008    <p>AUDIO_OUTPUT_DEVICE_COUNT
7009                    
7010    </p>
7011    <p>/ AUDIO_OUTPUT_DEVICE_INFO
7012                    
7013    </p>
7014    <p>/ MIDI_INPUT_DEVICE_COUNT
7015                    
7016    </p>
7017    <p>/ MIDI_INPUT_DEVICE_INFO
7018                    
7019    </p>
7020    <p>/ CHANNEL_COUNT
7021                    
7022    </p>
7023    <p>/ VOICE_COUNT
7024                    
7025    </p>
7026    <p>/ STREAM_COUNT
7027                    
7028    </p>
7029    <p>/ BUFFER_FILL
7030                    
7031    </p>
7032    <p>/ CHANNEL_INFO
7033                    
7034    </p>
7035    <p>/ MIDI_INSTRUMENT_MAP_COUNT
7036                    
7037    </p>
7038    <p>/ MIDI_INSTRUMENT_MAP_INFO
7039                    
7040    </p>
7041    <p>/ MIDI_INSTRUMENT_COUNT
7042                    
7043    </p>
7044    <p>/ MIDI_INSTRUMENT_INFO
7045                    
7046    </p>
7047    <p>/ MISCELLANEOUS
7048                    
7049    </p>
7050    <p>/ TOTAL_VOICE_COUNT
7051                    
7052    </p>
7053    </blockquote><p>
7054    
7055    </p>
7056    <p>map_instruction =
7057            </p>
7058    <blockquote class="text">
7059    <p>MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value
7060                    
7061    </p>
7062    <p>/ MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode
7063                    
7064    </p>
7065    <p>/ MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP entry_name
7066                    
7067    </p>
7068    <p>/ MIDI_INSTRUMENT SP 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
7069                    
7070    </p>
7071    </blockquote><p>
7072    
7073    </p>
7074    <p>unmap_instruction =
7075            </p>
7076    <blockquote class="text">
7077    <p>MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog
7078                    
7079    </p>
7080    </blockquote><p>
7081    
7082    </p>
7083    <p>remove_instruction =
7084            </p>
7085    <blockquote class="text">
7086    <p>CHANNEL SP sampler_channel
7087                    
7088    </p>
7089    <p>/ MIDI_INSTRUMENT_MAP SP midi_map
7090                    
7091    </p>
7092    <p>/ MIDI_INSTRUMENT_MAP SP ALL
7093                    
7094    </p>
7095    </blockquote><p>
7096    
7097    </p>
7098    <p>get_instruction =
7099            </p>
7100    <blockquote class="text">
7101    <p>AVAILABLE_ENGINES
7102                    
7103    </p>
7104    <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
7105                    
7106    </p>
7107    <p>/ MIDI_INPUT_DRIVER SP INFO SP string
7108                    
7109    </p>
7110    <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string
7111                    
7112    </p>
7113    <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
7114                    
7115    </p>
7116    <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
7117                    
7118    </p>
7119    <p>/ AUDIO_OUTPUT_DRIVER SP INFO SP string
7120                    
7121    </p>
7122    <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string
7123                    
7124    </p>
7125    <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
7126                    
7127    </p>
7128    <p>/ AUDIO_OUTPUT_DEVICES
7129                    
7130    </p>
7131    <p>/ MIDI_INPUT_DEVICES
7132                    
7133    </p>
7134    <p>/ AUDIO_OUTPUT_DEVICE SP INFO SP number
7135                    
7136    </p>
7137    <p>/ MIDI_INPUT_DEVICE SP INFO SP number
7138                    
7139    </p>
7140    <p>/ MIDI_INPUT_PORT SP INFO SP number SP number
7141                    
7142    </p>
7143    <p>/ MIDI_INPUT_PORT_PARAMETER SP INFO SP number SP number SP string
7144                    
7145    </p>
7146    <p>/ AUDIO_OUTPUT_CHANNEL SP INFO SP number SP number
7147                    
7148    </p>
7149    <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP INFO SP number SP number SP string
7150                    
7151    </p>
7152    <p>/ CHANNELS
7153                    
7154    </p>
7155    <p>/ CHANNEL SP INFO SP sampler_channel
7156                    
7157    </p>
7158    <p>/ CHANNEL SP BUFFER_FILL SP buffer_size_type SP sampler_channel
7159                    
7160    </p>
7161    <p>/ CHANNEL SP STREAM_COUNT SP sampler_channel
7162                    
7163    </p>
7164    <p>/ CHANNEL SP VOICE_COUNT SP sampler_channel
7165                    
7166    </p>
7167    <p>/ ENGINE SP INFO SP engine_name
7168                    
7169    </p>
7170    <p>/ SERVER SP INFO
7171                    
7172    </p>
7173    <p>/ TOTAL_VOICE_COUNT
7174                    
7175    </p>
7176    <p>/ TOTAL_VOICE_COUNT_MAX
7177                    
7178    </p>
7179    <p>/ MIDI_INSTRUMENTS SP midi_map
7180                    
7181    </p>
7182    <p>/ MIDI_INSTRUMENTS SP ALL
7183                    
7184    </p>
7185    <p>/ MIDI_INSTRUMENT SP INFO SP midi_map SP midi_bank SP midi_prog
7186                    
7187    </p>
7188    <p>/ MIDI_INSTRUMENT_MAPS
7189                    
7190    </p>
7191    <p>/ MIDI_INSTRUMENT_MAP SP INFO SP midi_map
7192                    
7193    </p>
7194    <p>/ FX_SENDS SP sampler_channel
7195                    
7196    </p>
7197    <p>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id
7198                    
7199    </p>
7200    </blockquote><p>
7201    
7202    </p>
7203    <p>set_instruction =
7204            </p>
7205    <blockquote class="text">
7206    <p>AUDIO_OUTPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
7207                    
7208    </p>
7209    <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP number SP number SP string '=' param_val_list
7210                    
7211    </p>
7212    <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
7213                    
7214    </p>
7215    <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' param_val_list
7216                    
7217    </p>
7218    <p>/ CHANNEL SP set_chan_instruction
7219                    
7220    </p>
7221    <p>/ MIDI_INSTRUMENT_MAP SP NAME SP midi_map SP map_name
7222                    
7223    </p>
7224    <p>/ FX_SEND SP AUDIO_OUTPUT_CHANNEL SP sampler_channel SP fx_send_id SP audio_channel_index SP audio_channel_index
7225                    
7226    </p>
7227    <p>/ ECHO SP boolean
7228                    
7229    </p>
7230    </blockquote><p>
7231    
7232    </p>
7233    <p>create_instruction =
7234            </p>
7235    <blockquote class="text">
7236    <p>AUDIO_OUTPUT_DEVICE SP string SP key_val_list
7237                    
7238    </p>
7239    <p>/ AUDIO_OUTPUT_DEVICE SP string
7240                    
7241    </p>
7242    <p>/ MIDI_INPUT_DEVICE SP string SP key_val_list
7243                    
7244    </p>
7245    <p>/ MIDI_INPUT_DEVICE SP string
7246                    
7247    </p>
7248    <p>/ FX_SEND SP sampler_channel SP midi_ctrl
7249                    
7250    </p>
7251    <p>/ FX_SEND SP sampler_channel SP midi_ctrl SP fx_send_name
7252                    
7253    </p>
7254    </blockquote><p>
7255    
7256    </p>
7257    <p>reset_instruction =
7258            </p>
7259    <blockquote class="text">
7260    <p>CHANNEL SP sampler_channel
7261                    
7262    </p>
7263    </blockquote><p>
7264    
7265    </p>
7266    <p>clear_instruction =
7267            </p>
7268    <blockquote class="text">
7269    <p>MIDI_INSTRUMENTS SP midi_map
7270                    
7271    </p>
7272    <p>/ MIDI_INSTRUMENTS SP ALL
7273                    
7274    </p>
7275    </blockquote><p>
7276    
7277    </p>
7278    <p>destroy_instruction =
7279            </p>
7280    <blockquote class="text">
7281    <p>AUDIO_OUTPUT_DEVICE SP number
7282                    
7283    </p>
7284    <p>/ MIDI_INPUT_DEVICE SP number
7285                    
7286    </p>
7287    <p>/ FX_SEND SP sampler_channel SP fx_send_id
7288                    
7289    </p>
7290    </blockquote><p>
7291    
7292    </p>
7293    <p>load_instruction =
7294            </p>
7295    <blockquote class="text">
7296    <p>INSTRUMENT SP load_instr_args
7297                    
7298    </p>
7299    <p>/ ENGINE SP load_engine_args
7300                    
7301    </p>
7302    </blockquote><p>
7303    
7304    </p>
7305    <p>set_chan_instruction =
7306            </p>
7307    <blockquote class="text">
7308    <p>AUDIO_OUTPUT_DEVICE SP sampler_channel SP device_index
7309                    
7310    </p>
7311    <p>/ AUDIO_OUTPUT_CHANNEL SP sampler_channel SP audio_channel_index SP audio_channel_index
7312                    
7313    </p>
7314    <p>/ AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type_name
7315                    
7316    </p>
7317    <p>/ MIDI_INPUT SP sampler_channel SP device_index SP midi_input_port_index SP midi_input_channel_index
7318                    
7319    </p>
7320    <p>/ MIDI_INPUT_DEVICE SP sampler_channel SP device_index
7321                    
7322    </p>
7323    <p>/ MIDI_INPUT_PORT SP sampler_channel SP midi_input_port_index
7324                    
7325    </p>
7326    <p>/ MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel_index
7327                    
7328    </p>
7329    <p>/ MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type_name
7330                    
7331    </p>
7332    <p>/ VOLUME SP sampler_channel SP volume_value
7333                    
7334    </p>
7335    <p>/ MUTE SP sampler_channel SP boolean
7336                    
7337    </p>
7338    <p>/ SOLO SP sampler_channel SP boolean
7339                    
7340    </p>
7341    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP midi_map
7342                    
7343    </p>
7344    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP NONE
7345                    
7346    </p>
7347    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP DEFAULT
7348                    
7349    </p>
7350    </blockquote><p>
7351    
7352    </p>
7353    <p>key_val_list =
7354            </p>
7355    <blockquote class="text">
7356    <p>string '=' param_val_list
7357                    
7358    </p>
7359    <p>/ key_val_list SP string '=' param_val_list
7360                    
7361    </p>
7362    </blockquote><p>
7363    
7364    </p>
7365    <p>buffer_size_type =
7366            </p>
7367    <blockquote class="text">
7368    <p>BYTES
7369                    
7370    </p>
7371    <p>/ PERCENTAGE
7372                    
7373    </p>
7374    </blockquote><p>
7375    
7376    </p>
7377    <p>list_instruction =
7378            </p>
7379    <blockquote class="text">
7380    <p>AUDIO_OUTPUT_DEVICES
7381                    
7382    </p>
7383    <p>/ MIDI_INPUT_DEVICES
7384                    
7385    </p>
7386    <p>/ CHANNELS
7387                    
7388    </p>
7389    <p>/ AVAILABLE_ENGINES
7390                    
7391    </p>
7392    <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
7393                    
7394    </p>
7395    <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
7396                    
7397    </p>
7398    <p>/ MIDI_INSTRUMENTS SP midi_map
7399                    
7400    </p>
7401    <p>/ MIDI_INSTRUMENTS SP ALL
7402                    
7403    </p>
7404    <p>/ MIDI_INSTRUMENT_MAPS
7405                    
7406    </p>
7407    <p>/ FX_SENDS SP sampler_channel
7408                    
7409    </p>
7410    </blockquote><p>
7411    
7412    </p>
7413    <p>load_instr_args =
7414            </p>
7415    <blockquote class="text">
7416    <p>filename SP instrument_index SP sampler_channel
7417                    
7418    </p>
7419    <p>/ NON_MODAL SP filename SP instrument_index SP sampler_channel
7420                    
7421    </p>
7422    </blockquote><p>
7423    
7424    </p>
7425    <p>load_engine_args =
7426            </p>
7427    <blockquote class="text">
7428    <p>engine_name SP sampler_channel
7429                    
7430    </p>
7431    </blockquote><p>
7432    
7433    </p>
7434    <p>instr_load_mode =
7435            </p>
7436    <blockquote class="text">
7437    <p>ON_DEMAND
7438                    
7439    </p>
7440    <p>/ ON_DEMAND_HOLD
7441                    
7442    </p>
7443    <p>/ PERSISTENT
7444                    
7445    </p>
7446    </blockquote><p>
7447    
7448    </p>
7449    <p>device_index =
7450            </p>
7451    <blockquote class="text">
7452    <p>number
7453                    
7454    </p>
7455    </blockquote><p>
7456    
7457    </p>
7458    <p>audio_channel_index =
7459            </p>
7460    <blockquote class="text">
7461    <p>number
7462                    
7463    </p>
7464    </blockquote><p>
7465    
7466    </p>
7467    <p>audio_output_type_name =
7468            </p>
7469    <blockquote class="text">
7470    <p>string
7471                    
7472    </p>
7473    </blockquote><p>
7474    
7475    </p>
7476    <p>midi_input_port_index =
7477            </p>
7478    <blockquote class="text">
7479    <p>number
7480                    
7481    </p>
7482    </blockquote><p>
7483    
7484    </p>
7485    <p>midi_input_channel_index =
7486            </p>
7487    <blockquote class="text">
7488    <p>number
7489                    
7490    </p>
7491    <p>/ ALL
7492                    
7493    </p>
7494    </blockquote><p>
7495    
7496    </p>
7497    <p>midi_input_type_name =
7498            </p>
7499    <blockquote class="text">
7500    <p>string
7501                    
7502    </p>
7503    </blockquote><p>
7504    
7505    </p>
7506    <p>midi_map =
7507            </p>
7508    <blockquote class="text">
7509    <p>number
7510                    
7511    </p>
7512    </blockquote><p>
7513    
7514    </p>
7515    <p>midi_bank =
7516            </p>
7517    <blockquote class="text">
7518    <p>number
7519                    
7520    </p>
7521    </blockquote><p>
7522    
7523    </p>
7524    <p>midi_prog =
7525            </p>
7526    <blockquote class="text">
7527    <p>number
7528                    
7529    </p>
7530    </blockquote><p>
7531    
7532    </p>
7533    <p>midi_ctrl =
7534            </p>
7535    <blockquote class="text">
7536    <p>number
7537                    
7538    </p>
7539    </blockquote><p>
7540    
7541    </p>
7542    <p>volume_value =
7543            </p>
7544    <blockquote class="text">
7545    <p>dotnum
7546                    
7547    </p>
7548    <p>/ number
7549                    
7550    </p>
7551    </blockquote><p>
7552    
7553    </p>
7554    <p>sampler_channel =
7555            </p>
7556    <blockquote class="text">
7557    <p>number
7558                    
7559    </p>
7560    </blockquote><p>
7561    
7562    </p>
7563    <p>instrument_index =
7564            </p>
7565    <blockquote class="text">
7566    <p>number
7567                    
7568    </p>
7569    </blockquote><p>
7570    
7571    </p>
7572    <p>fx_send_id =
7573            </p>
7574    <blockquote class="text">
7575    <p>number
7576                    
7577    </p>
7578    </blockquote><p>
7579    
7580    </p>
7581    <p>engine_name =
7582            </p>
7583    <blockquote class="text">
7584    <p>string
7585                    
7586    </p>
7587    </blockquote><p>
7588    
7589    </p>
7590    <p>filename =
7591            </p>
7592    <blockquote class="text">
7593    <p>stringval
7594                    
7595    </p>
7596    </blockquote><p>
7597    
7598    </p>
7599    <p>map_name =
7600            </p>
7601    <blockquote class="text">
7602    <p>stringval
7603                    
7604    </p>
7605    </blockquote><p>
7606    
7607    </p>
7608    <p>entry_name =
7609            </p>
7610    <blockquote class="text">
7611    <p>stringval
7612                    
7613    </p>
7614    </blockquote><p>
7615    
7616    </p>
7617    <p>fx_send_name =
7618            </p>
7619    <blockquote class="text">
7620    <p>stringval
7621                    
7622    </p>
7623    </blockquote><p>
7624    
7625    </p>
7626    <p>param_val_list =
7627            </p>
7628    <blockquote class="text">
7629    <p>param_val
7630                    
7631    </p>
7632    <p>/ param_val_list','param_val
7633                    
7634    </p>
7635    </blockquote><p>
7636    
7637    </p>
7638    <p>param_val =
7639            </p>
7640    <blockquote class="text">
7641    <p>string
7642                    
7643    </p>
7644    <p>/ stringval
7645                    
7646    </p>
7647    <p>/ number
7648                    
7649    </p>
7650    <p>/ dotnum
7651                    
7652    </p>
7653    </blockquote><p>
7654    
 <p>TODO: will soon automatically included from src/network/lscp.y,  
             meanwhile have a look at that file to get the exact definition of  
             the command syntax.  
7655  </p>  </p>
7656  <a name="events"></a><br /><hr />  <a name="events"></a><br /><hr />
7657  <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>
7658  <a name="rfc.section.7"></a><h3>7.&nbsp;Events</h3>  <a name="rfc.section.8"></a><h3>8.&nbsp;
7659    Events</h3>
7660    
7661  <p>This chapter will describe all currently defined events supported by LinuxSampler.  <p>This chapter will describe all currently defined events supported by LinuxSampler.
7662  </p>  </p>
7663  <a name="rfc.section.7.1"></a><h4><a name="SUBSCRIBE CHANNEL">7.1</a>&nbsp;Number of sampler channels changed</h4>  <a name="SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT"></a><br /><hr />
7664    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7665    <a name="rfc.section.8.1"></a><h3>8.1.&nbsp;
7666    Number of audio output devices changed</h3>
7667    
7668    <p>Client may want to be notified when the total number of audio output devices on the
7669                    back-end changes by issuing the following command:
7670    </p>
7671    <p>
7672                        </p>
7673    <blockquote class="text">
7674    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT
7675    </p>
7676    </blockquote><p>
7677                    
7678    </p>
7679    <p>Server will start sending the following notification messages:
7680    </p>
7681    <p>
7682                        </p>
7683    <blockquote class="text">
7684    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_COUNT:&lt;devices&gt;"
7685    </p>
7686    </blockquote><p>
7687                    
7688    </p>
7689    <p>where &lt;devices&gt; will be replaced by the new number
7690                    of audio output devices.
7691    </p>
7692    <a name="SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO"></a><br /><hr />
7693    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7694    <a name="rfc.section.8.2"></a><h3>8.2.&nbsp;
7695    Audio output device's settings changed</h3>
7696    
7697    <p>Client may want to be notified when changes were made to audio output devices on the
7698                    back-end by issuing the following command:
7699    </p>
7700    <p>
7701                        </p>
7702    <blockquote class="text">
7703    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO
7704    </p>
7705    </blockquote><p>
7706                    
7707    </p>
7708    <p>Server will start sending the following notification messages:
7709    </p>
7710    <p>
7711                        </p>
7712    <blockquote class="text">
7713    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_INFO:&lt;device-id&gt;"
7714    </p>
7715    </blockquote><p>
7716                    
7717    </p>
7718    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the audio output device,
7719                    which settings has been changed. The front-end will have to send
7720                    the respective command to actually get the audio output device info. Because these messages
7721                    will be triggered by LSCP commands issued by other clients rather than real
7722                    time events happening on the server, it is believed that an empty notification
7723                    message is sufficient here.
7724    </p>
7725    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_COUNT"></a><br /><hr />
7726    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7727    <a name="rfc.section.8.3"></a><h3>8.3.&nbsp;
7728    Number of MIDI input devices changed</h3>
7729    
7730    <p>Client may want to be notified when the total number of MIDI input devices on the
7731                    back-end changes by issuing the following command:
7732    </p>
7733    <p>
7734                        </p>
7735    <blockquote class="text">
7736    <p>SUBSCRIBE MIDI_INPUT_DEVICE_COUNT
7737    </p>
7738    </blockquote><p>
7739                    
7740    </p>
7741    <p>Server will start sending the following notification messages:
7742    </p>
7743    <p>
7744                        </p>
7745    <blockquote class="text">
7746    <p>"NOTIFY:MIDI_INPUT_DEVICE_COUNT:&lt;devices&gt;"
7747    </p>
7748    </blockquote><p>
7749                    
7750    </p>
7751    <p>where &lt;devices&gt; will be replaced by the new number
7752                    of MIDI input devices.
7753    </p>
7754    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_INFO"></a><br /><hr />
7755    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7756    <a name="rfc.section.8.4"></a><h3>8.4.&nbsp;
7757    MIDI input device's settings changed</h3>
7758    
7759    <p>Client may want to be notified when changes were made to MIDI input devices on the
7760                    back-end by issuing the following command:
7761    </p>
7762    <p>
7763                        </p>
7764    <blockquote class="text">
7765    <p>SUBSCRIBE MIDI_INPUT_DEVICE_INFO
7766    </p>
7767    </blockquote><p>
7768                    
7769    </p>
7770    <p>Server will start sending the following notification messages:
7771    </p>
7772    <p>
7773                        </p>
7774    <blockquote class="text">
7775    <p>"NOTIFY:MIDI_INPUT_DEVICE_INFO:&lt;device-id&gt;"
7776    </p>
7777    </blockquote><p>
7778                    
7779    </p>
7780    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the MIDI input device,
7781                    which settings has been changed. The front-end will have to send
7782                    the respective command to actually get the MIDI input device info. Because these messages
7783                    will be triggered by LSCP commands issued by other clients rather than real
7784                    time events happening on the server, it is believed that an empty notification
7785                    message is sufficient here.
7786    </p>
7787    <a name="SUBSCRIBE CHANNEL_COUNT"></a><br /><hr />
7788    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7789    <a name="rfc.section.8.5"></a><h3>8.5.&nbsp;
7790    Number of sampler channels changed</h3>
7791    
7792  <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
7793                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
7794  </p>  </p>
7795  <p></p>  <p>
7796                        </p>
7797  <blockquote class="text">  <blockquote class="text">
7798  <p>SUBSCRIBE CHANNEL_COUNT  <p>SUBSCRIBE CHANNEL_COUNT
7799  </p>  </p>
7800  </blockquote>  </blockquote><p>
7801                    
7802    </p>
7803  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
7804  </p>  </p>
7805  <p></p>  <p>
7806                        </p>
7807  <blockquote class="text">  <blockquote class="text">
7808  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"
7809  </p>  </p>
7810  </blockquote>  </blockquote><p>
7811                    
7812    </p>
7813  <p>where &lt;channels&gt; will be replaced by the new number  <p>where &lt;channels&gt; will be replaced by the new number
7814                  of sampler channels.                  of sampler channels.
7815  </p>  </p>
7816  <a name="rfc.section.7.2"></a><h4><a name="SUBSCRIBE VOICE_COUNT">7.2</a>&nbsp;Number of active voices changed</h4>  <a name="SUBSCRIBE VOICE_COUNT"></a><br /><hr />
7817    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7818    <a name="rfc.section.8.6"></a><h3>8.6.&nbsp;
7819    Number of active voices changed</h3>
7820    
7821  <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
7822                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
7823  </p>  </p>
7824  <p></p>  <p>
7825                        </p>
7826  <blockquote class="text">  <blockquote class="text">
7827  <p>SUBSCRIBE VOICE_COUNT  <p>SUBSCRIBE VOICE_COUNT
7828  </p>  </p>
7829  </blockquote>  </blockquote><p>
7830                    
7831    </p>
7832  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
7833  </p>  </p>
7834  <p></p>  <p>
7835                        </p>
7836  <blockquote class="text">  <blockquote class="text">
7837  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;
7838  </p>  </p>
7839  </blockquote>  </blockquote><p>
7840                    
7841    </p>
7842  <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
7843                  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
7844                  active voices on that channel.                  active voices on that channel.
7845  </p>  </p>
7846  <a name="rfc.section.7.3"></a><h4><a name="SUBSCRIBE STREAM_COUNT">7.3</a>&nbsp;Number of active disk streams changed</h4>  <a name="SUBSCRIBE STREAM_COUNT"></a><br /><hr />
7847    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7848    <a name="rfc.section.8.7"></a><h3>8.7.&nbsp;
7849    Number of active disk streams changed</h3>
7850    
7851  <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
7852                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT
7853  </p>  </p>
7854  <p></p>  <p>
7855                        </p>
7856  <blockquote class="text">  <blockquote class="text">
7857  <p>SUBSCRIBE STREAM_COUNT  <p>SUBSCRIBE STREAM_COUNT
7858  </p>  </p>
7859  </blockquote>  </blockquote><p>
7860                    
7861    </p>
7862  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
7863  </p>  </p>
7864  <p></p>  <p>
7865                        </p>
7866  <blockquote class="text">  <blockquote class="text">
7867  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"
7868  </p>  </p>
7869  </blockquote>  </blockquote><p>
7870                    
7871    </p>
7872  <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
7873                  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
7874                  active disk streams on that channel.                  active disk streams on that channel.
7875  </p>  </p>
7876  <a name="rfc.section.7.4"></a><h4><a name="SUBSCRIBE BUFFER_FILL">7.4</a>&nbsp;Disk stream buffer fill state changed</h4>  <a name="SUBSCRIBE BUFFER_FILL"></a><br /><hr />
7877    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7878    <a name="rfc.section.8.8"></a><h3>8.8.&nbsp;
7879    Disk stream buffer fill state changed</h3>
7880    
7881  <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
7882                  on the back-end changes by issuing the following command:                  on the back-end changes by issuing the following command:
7883  </p>  </p>
7884  <p></p>  <p>
7885                        </p>
7886  <blockquote class="text">  <blockquote class="text">
7887  <p>SUBSCRIBE BUFFER_FILL  <p>SUBSCRIBE BUFFER_FILL
7888  </p>  </p>
7889  </blockquote>  </blockquote><p>
7890                    
7891    </p>
7892  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
7893  </p>  </p>
7894  <p></p>  <p>
7895                        </p>
7896  <blockquote class="text">  <blockquote class="text">
7897  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"
7898  </p>  </p>
7899  </blockquote>  </blockquote><p>
7900                    
7901    </p>
7902  <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
7903                  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
7904                  buffer fill data for this channel as described in <a class="info" href="#GET CHANNEL BUFFER_FILL">Section 5.4.13<span>Current fill state of disk stream buffers</span></a>                  buffer fill data for this channel as described in <a class='info' href='#GET CHANNEL BUFFER_FILL'>Section&nbsp;6.4.13<span> (</span><span class='info'>Current fill state of disk stream buffers</span><span>)</span></a>
7905                  as if the <a class="info" href="#GET CHANNEL BUFFER_FILL">"GET CHANNEL BUFFER_FILL PERCENTAGE"<span>Current fill state of disk stream buffers</span></a> command was issued on this channel.                  as if the <a class='info' href='#GET CHANNEL BUFFER_FILL'>"GET CHANNEL BUFFER_FILL PERCENTAGE"<span> (</span><span class='info'>Current fill state of disk stream buffers</span><span>)</span></a> command was issued on this channel.
7906  </p>  </p>
7907  <a name="rfc.section.7.5"></a><h4><a name="SUBSCRIBE INFO">7.5</a>&nbsp;Channel information changed</h4>  <a name="SUBSCRIBE CHANNEL_INFO"></a><br /><hr />
7908    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7909    <a name="rfc.section.8.9"></a><h3>8.9.&nbsp;
7910    Channel information changed</h3>
7911    
7912  <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
7913                  back-end by issuing the following command:                  back-end by issuing the following command:
7914  </p>  </p>
7915  <p></p>  <p>
7916                        </p>
7917  <blockquote class="text">  <blockquote class="text">
7918  <p>SUBSCRIBE CHANNEL_INFO  <p>SUBSCRIBE CHANNEL_INFO
7919  </p>  </p>
7920  </blockquote>  </blockquote><p>
7921                    
7922    </p>
7923  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
7924  </p>  </p>
7925  <p></p>  <p>
7926                        </p>
7927  <blockquote class="text">  <blockquote class="text">
7928  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"
7929  </p>  </p>
7930  </blockquote>  </blockquote><p>
7931                    
7932    </p>
7933  <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
7934                  channel info change occurred. The front-end will have to send                  channel info change occurred. The front-end will have to send
7935                  the respective command to actually get the channel info. Because these messages                  the respective command to actually get the channel info. Because these messages
# Line 4211  Intellectual Property and Copyright Stat Line 7937  Intellectual Property and Copyright Stat
7937                  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
7938                  message is sufficient here.                  message is sufficient here.
7939  </p>  </p>
7940  <a name="rfc.section.7.6"></a><h4><a name="SUBSCRIBE MISCELLANEOUS">7.6</a>&nbsp;Miscellaneous and debugging events</h4>  <a name="SUBSCRIBE TOTAL_VOICE_COUNT"></a><br /><hr />
7941    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7942    <a name="rfc.section.8.10"></a><h3>8.10.&nbsp;
7943    Total number of active voices changed</h3>
7944    
7945    <p>Client may want to be notified when the total number of voices on the
7946                    back-end changes by issuing the following command:
7947    </p>
7948    <p>
7949                        </p>
7950    <blockquote class="text">
7951    <p>SUBSCRIBE TOTAL_VOICE_COUNT
7952    </p>
7953    </blockquote><p>
7954                    
7955    </p>
7956    <p>Server will start sending the following notification messages:
7957    </p>
7958    <p>
7959                        </p>
7960    <blockquote class="text">
7961    <p>"NOTIFY:TOTAL_VOICE_COUNT:&lt;voices&gt;
7962    </p>
7963    </blockquote><p>
7964                    
7965    </p>
7966    <p>where &lt;voices&gt; will be replaced by the new number of
7967                    all currently active voices.
7968    </p>
7969    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT"></a><br /><hr />
7970    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7971    <a name="rfc.section.8.11"></a><h3>8.11.&nbsp;
7972    Number of MIDI instrument maps changed</h3>
7973    
7974    <p>Client may want to be notified when the number of MIDI instrument maps on the
7975                    back-end changes by issuing the following command:
7976    </p>
7977    <p>
7978                        </p>
7979    <blockquote class="text">
7980    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT
7981    </p>
7982    </blockquote><p>
7983                    
7984    </p>
7985    <p>Server will start sending the following notification messages:
7986    </p>
7987    <p>
7988                        </p>
7989    <blockquote class="text">
7990    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_COUNT:&lt;maps&gt;"
7991    </p>
7992    </blockquote><p>
7993                    
7994    </p>
7995    <p>where &lt;maps&gt; will be replaced by the new number
7996                    of MIDI instrument maps.
7997    </p>
7998    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO"></a><br /><hr />
7999    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8000    <a name="rfc.section.8.12"></a><h3>8.12.&nbsp;
8001    MIDI instrument map information changed</h3>
8002    
8003    <p>Client may want to be notified when changes were made to MIDI instrument maps on the
8004                    back-end by issuing the following command:
8005    </p>
8006    <p>
8007                        </p>
8008    <blockquote class="text">
8009    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO
8010    </p>
8011    </blockquote><p>
8012                    
8013    </p>
8014    <p>Server will start sending the following notification messages:
8015    </p>
8016    <p>
8017                        </p>
8018    <blockquote class="text">
8019    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_INFO:&lt;map-id&gt;"
8020    </p>
8021    </blockquote><p>
8022                    
8023    </p>
8024    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
8025                    for which information changes occurred. The front-end will have to send
8026                    the respective command to actually get the MIDI instrument map info. Because these messages
8027                    will be triggered by LSCP commands issued by other clients rather than real
8028                    time events happening on the server, it is believed that an empty notification
8029                    message is sufficient here.
8030    </p>
8031    <a name="SUBSCRIBE MIDI_INSTRUMENT_COUNT"></a><br /><hr />
8032    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8033    <a name="rfc.section.8.13"></a><h3>8.13.&nbsp;
8034    Number of MIDI instruments changed</h3>
8035    
8036    <p>Client may want to be notified when the number of MIDI instrument maps on the
8037                    back-end changes by issuing the following command:
8038    </p>
8039    <p>
8040                        </p>
8041    <blockquote class="text">
8042    <p>SUBSCRIBE MIDI_INSTRUMENT_COUNT
8043    </p>
8044    </blockquote><p>
8045                    
8046    </p>
8047    <p>Server will start sending the following notification messages:
8048    </p>
8049    <p>
8050                        </p>
8051    <blockquote class="text">
8052    <p>"NOTIFY:MIDI_INSTRUMENT_COUNT:&lt;map-id&gt; &lt;instruments&gt;"
8053    </p>
8054    </blockquote><p>
8055                    
8056    </p>
8057    <p>where &lt;map-id&gt; is the numerical ID of the MIDI instrument map, in which
8058                    the nuber of instruments has changed and &lt;instruments&gt; will be replaced by
8059                    the new number of MIDI instruments in the specified map.
8060    </p>
8061    <a name="SUBSCRIBE MIDI_INSTRUMENT_INFO"></a><br /><hr />
8062    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8063    <a name="rfc.section.8.14"></a><h3>8.14.&nbsp;
8064    MIDI instrument information changed</h3>
8065    
8066    <p>Client may want to be notified when changes were made to MIDI instruments on the
8067                    back-end by issuing the following command:
8068    </p>
8069    <p>
8070                        </p>
8071    <blockquote class="text">
8072    <p>SUBSCRIBE MIDI_INSTRUMENT_INFO
8073    </p>
8074    </blockquote><p>
8075                    
8076    </p>
8077    <p>Server will start sending the following notification messages:
8078    </p>
8079    <p>
8080                        </p>
8081    <blockquote class="text">
8082    <p>"NOTIFY:MIDI_INSTRUMENT_INFO:&lt;map-id&gt; &lt;bank&gt; &lt;program&gt;"
8083    </p>
8084    </blockquote><p>
8085                    
8086    </p>
8087    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
8088                    in which a MIDI instrument is changed. &lt;bank&gt; and &lt;program&gt; specifies
8089                    the location of the changed MIDI instrument in the map. The front-end will have to send
8090                    the respective command to actually get the MIDI instrument info. Because these messages
8091                    will be triggered by LSCP commands issued by other clients rather than real
8092                    time events happening on the server, it is believed that an empty notification
8093                    message is sufficient here.
8094    </p>
8095    <a name="SUBSCRIBE MISCELLANEOUS"></a><br /><hr />
8096    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8097    <a name="rfc.section.8.15"></a><h3>8.15.&nbsp;
8098    Miscellaneous and debugging events</h3>
8099    
8100  <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
8101                  the server by issuing the following command:                  the server by issuing the following command:
8102  </p>  </p>
8103  <p></p>  <p>
8104                        </p>
8105  <blockquote class="text">  <blockquote class="text">
8106  <p>SUBSCRIBE MISCELLANEOUS  <p>SUBSCRIBE MISCELLANEOUS
8107  </p>  </p>
8108  </blockquote>  </blockquote><p>
8109                    
8110    </p>
8111  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
8112  </p>  </p>
8113  <p></p>  <p>
8114                        </p>
8115  <blockquote class="text">  <blockquote class="text">
8116  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"
8117  </p>  </p>
8118  </blockquote>  </blockquote><p>
8119                    
8120    </p>
8121  <p>where &lt;string&gt; will be replaced by whatever data server  <p>where &lt;string&gt; will be replaced by whatever data server
8122                  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
8123                  user AS IS to facilitate debugging.                  user AS IS to facilitate debugging.
8124  </p>  </p>
8125  <a name="anchor15"></a><br /><hr />  <a name="anchor14"></a><br /><hr />
8126  <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>
8127  <a name="rfc.section.8"></a><h3>8.&nbsp;Security Considerations</h3>  <a name="rfc.section.9"></a><h3>9.&nbsp;
8128    Security Considerations</h3>
8129    
8130  <p>As there is so far no method of authentication and authorization  <p>As there is so far no method of authentication and authorization
8131              defined and so not required for a client applications to succeed to              defined and so not required for a client applications to succeed to
8132              connect, running LinuxSampler might be a security risk for the host              connect, running LinuxSampler might be a security risk for the host
8133              system the LinuxSampler instance is running on.              system the LinuxSampler instance is running on.
8134  </p>  </p>
8135  <a name="anchor16"></a><br /><hr />  <a name="anchor15"></a><br /><hr />
8136  <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>
8137  <a name="rfc.section.9"></a><h3>9.&nbsp;Acknowledgments</h3>  <a name="rfc.section.10"></a><h3>10.&nbsp;
8138    Acknowledgments</h3>
8139    
8140  <p>This document has benefited greatly from the comments of the  <p>This document has benefited greatly from the comments of the
8141              following people, discussed on the LinuxSampler developer's mailing              following people, discussed on the LinuxSampler developer's mailing
8142              list:              list:
8143  </p>  </p>
8144  <p></p>  <p>
8145                    </p>
8146  <blockquote class="text">  <blockquote class="text">
8147  <p>Rui Nuno Capela  <p>Rui Nuno Capela
8148  </p>  </p>
# Line 4261  Intellectual Property and Copyright Stat Line 8152  Intellectual Property and Copyright Stat
8152  </p>  </p>
8153  <p>Grigor Iliev  <p>Grigor Iliev
8154  </p>  </p>
8155  </blockquote>  </blockquote><p>
8156                
8157    </p>
8158  <a name="rfc.references1"></a><br /><hr />  <a name="rfc.references1"></a><br /><hr />
8159  <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>
8160  <h3>10&nbsp;References</h3>  <h3>11.&nbsp;References</h3>
8161  <table width="99%" border="0">  <table width="99%" border="0">
8162  <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>
8163  <td class="author-text"><a href="mailto:sob@harvard.edu">Bradner, S.</a>, "<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">Key words for use in RFCs to Indicate Requirement Levels</a>", BCP 14, RFC 2119, March 1997 (<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">TXT</a>, <a href="http://xml.resource.org/public/rfc/html/rfc2119.html">HTML</a>, <a href="http://xml.resource.org/public/rfc/xml/rfc2119.xml">XML</a>).</td></tr>  <td class="author-text">Bradner, S., &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">Key words for use in RFCs to Indicate Requirement Levels</a>,&rdquo; RFC&nbsp;2119, 1997.</td></tr>
8164    <tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td>
8165    <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>
8166    <tr><td class="author-text" valign="top"><a name="RFC793">[RFC793]</a></td>
8167    <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>
8168  </table>  </table>
8169    
8170  <a name="rfc.authors"></a><br /><hr />  <a name="rfc.authors"></a><br /><hr />
8171  <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>
8172  <h3>Author's Address</h3>  <h3>Author's Address</h3>
8173  <table width="99%" border="0" cellpadding="0" cellspacing="0">  <table width="99%" border="0" cellpadding="0" cellspacing="0">
8174  <tr><td class="author-text">&nbsp;</td>  <tr><td class="author-text">&nbsp;</td>
# Line 4286  Schoenebeck</td></tr> Line 8182  Schoenebeck</td></tr>
8182  <td class="author-text">74081 Heilbronn</td></tr>  <td class="author-text">74081 Heilbronn</td></tr>
8183  <tr><td class="author-text">&nbsp;</td>  <tr><td class="author-text">&nbsp;</td>
8184  <td class="author-text">Germany</td></tr>  <td class="author-text">Germany</td></tr>
8185  <tr><td class="author" align="right">EMail:&nbsp;</td>  <tr><td class="author" align="right">Email:&nbsp;</td>
8186  <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>
8187  </table>  </table>
8188  <a name="rfc.copyright"></a><br /><hr />  <a name="rfc.copyright"></a><br /><hr />
8189  <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>
8190  <h3>Intellectual Property Statement</h3>  <h3>Full Copyright Statement</h3>
8191  <p class='copyright'>  <p class='copyright'>
8192  The IETF takes no position regarding the validity or scope of  Copyright &copy; The Internet Society (2006).</p>
 any intellectual property or other rights that might be claimed  
 to  pertain to the implementation or use of the technology  
 described in this document or the extent to which any license  
 under such rights might or might not be available; neither does  
 it represent that it has made any effort to identify any such  
 rights. Information on the IETF's procedures with respect to  
 rights in standards-track and standards-related documentation  
 can be found in BCP-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>  
8193  <p class='copyright'>  <p class='copyright'>
8194  The IETF invites any interested party to bring to its  This document is subject to the rights,
8195  attention any copyrights, patents or patent applications, or  licenses and restrictions contained in BCP&nbsp;78,
8196  other proprietary rights which may cover technology that may be  and except as set forth therein,
8197  required to practice this standard. Please address the  the authors retain all their rights.</p>
 information to the IETF Executive Director.</p>  
 <h3>Full Copyright Statement</h3>  
8198  <p class='copyright'>  <p class='copyright'>
8199  Copyright (C) The Internet Society (2005). All Rights Reserved.</p>  This document and the information contained herein are provided
8200    on an &ldquo;AS IS&rdquo; basis and THE CONTRIBUTOR,
8201    THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY),
8202    THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM
8203    ALL WARRANTIES,
8204    EXPRESS OR IMPLIED,
8205    INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
8206    INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
8207    WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.</p>
8208    <h3>Intellectual Property</h3>
8209  <p class='copyright'>  <p class='copyright'>
8210  This document and translations of it may be copied and furnished to  The IETF takes no position regarding the validity or scope of any
8211  others, and derivative works that comment on or otherwise explain it  Intellectual Property Rights or other rights that might be claimed
8212  or assist in its implementation may be prepared, copied, published and  to pertain to the implementation or use of the technology
8213  distributed, in whole or in part, without restriction of any kind,  described in this document or the extent to which any license
8214  provided that the above copyright notice and this paragraph are  under such rights might or might not be available; nor does it
8215  included on all such copies and derivative works. However, this  represent that it has made any independent effort to identify any
8216  document itself may not be modified in any way, such as by removing  such rights.
8217  the copyright notice or references to the Internet Society or other  Information on the procedures with respect to
8218  Internet organizations, except as needed for the purpose of  rights in RFC documents can be found in BCP&nbsp;78 and BCP&nbsp;79.</p>
 developing Internet standards in which case the procedures for  
 copyrights defined in the Internet Standards process must be  
 followed, or as required to translate it into languages other than  
 English.</p>  
8219  <p class='copyright'>  <p class='copyright'>
8220  The limited permissions granted above are perpetual and will not be  Copies of IPR disclosures made to the IETF Secretariat and any
8221  revoked by the Internet Society or its successors or assignees.</p>  assurances of licenses to be made available,
8222    or the result of an attempt made to obtain a general license or
8223    permission for the use of such proprietary rights by implementers or
8224    users of this specification can be obtained from the IETF on-line IPR
8225    repository at <a href='http://www.ietf.org/ipr'>http://www.ietf.org/ipr</a>.</p>
8226  <p class='copyright'>  <p class='copyright'>
8227  This document and the information contained herein is provided on an  The IETF invites any interested party to bring to its attention
8228  &quot;AS IS&quot; basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING  any copyrights,
8229  TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING  patents or patent applications,
8230  BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION  or other
8231  HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF  proprietary rights that may cover technology that may be required
8232  MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.</p>  to implement this standard.
8233    Please address the information to the IETF at <a href='mailto:ietf-ipr@ietf.org'>ietf-ipr@ietf.org</a>.</p>
8234  <h3>Acknowledgment</h3>  <h3>Acknowledgment</h3>
8235  <p class='copyright'>  <p class='copyright'>
8236  Funding for the RFC Editor function is currently provided by the  Funding for the RFC Editor function is provided by
8237  Internet Society.</p>  the IETF Administrative Support Activity (IASA).</p>
8238  </body></html>  </body></html>

Legend:
Removed from v.561  
changed lines
  Added in v.1002

  ViewVC Help
Powered by ViewVC