/[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 1137 by iliev, Thu Mar 29 10:06:37 2007 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.32 (http://xml.resource.org/)">
7  <style type='text/css'>  <style type='text/css'><!--
8  <!--          body {
9      body {                  font-family: verdana, charcoal, helvetica, arial, sans-serif;
10          font-family: verdana, charcoal, helvetica, arial, sans-serif;                  font-size: small; color: #000; background-color: #FFF;
11          margin: 2em;                  margin: 2em;
12          font-size: small ; color: #000000 ; background-color: #ffffff ; }          }
13      .title { color: #990000; font-size: x-large ;          h1, h2, h3, h4, h5, h6 {
14          font-weight: bold; text-align: right;                  font-family: helvetica, monaco, "MS Sans Serif", arial, sans-serif;
15          font-family: helvetica, monaco, "MS Sans Serif", arial, sans-serif;                  font-weight: bold; font-style: normal;
16          background-color: transparent; }          }
17      .filename { color: #666666; font-size: 18px; line-height: 28px;          h1 { color: #900; background-color: transparent; text-align: right; }
18          font-weight: bold; text-align: right;          h3 { color: #333; background-color: transparent; }
19          font-family: helvetica, arial, sans-serif;  
20          background-color: transparent; }          td.RFCbug {
21      td.rfcbug { background-color: #000000 ; width: 30px ; height: 30px ;                  font-size: x-small; text-decoration: none;
22          text-align: justify; vertical-align: middle ; padding-top: 2px ; }                  width: 30px; height: 30px; padding-top: 2px;
23      td.rfcbug span.RFC { color: #666666; font-weight: bold; text-decoration: none;                  text-align: justify; vertical-align: middle;
24          background-color: #000000 ;                  background-color: #000;
25          font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;          }
26          font-size: x-small ; }          td.RFCbug span.RFC {
27      td.rfcbug span.hotText { color: #ffffff; font-weight: normal; text-decoration: none;                  font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;
28          text-align: center ;                  font-weight: bold; color: #666;
29          font-family: charcoal, monaco, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;          }
30          font-size: x-small ; background-color: #000000; }          td.RFCbug span.hotText {
31  /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */                  font-family: charcoal, monaco, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;
32      div#counter{margin-top: 100px}                  font-weight: normal; text-align: center; color: #FFF;
33            }
34      a.info{  
35          position:relative; /*this is the key*/          table.TOCbug { width: 30px; height: 15px; }
36          z-index:24;          td.TOCbug {
37          text-decoration:none}                  text-align: center; width: 30px; height: 15px;
38                    color: #FFF; background-color: #900;
39      a.info:hover{z-index:25; background-color:#990000 ; color: #ffffff ;}          }
40            td.TOCbug a {
41      a.info span{display: none}                  font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, sans-serif;
42                    font-weight: bold; font-size: x-small; text-decoration: none;
43      a.info:hover span{ /*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                    font-size: smaller;
71                    top: 2em; left: -5em; width: 15em;
72                    padding: 2px; border: 1px solid #333;
73                    color: #900; background-color: #EEE;
74                    text-align: left;
75            }
76    
77      pre { margin-left: 3em; color: #333333;  background-color: transparent;          a { font-weight: bold; }
78          font-family: "Courier New", Courier, monospace ; font-size: small ;          a:link    { color: #900; background-color: transparent; }
79            a:visited { color: #633; background-color: transparent; }
80            a:active  { color: #633; background-color: transparent; }
81    
82            p { margin-left: 2em; margin-right: 2em; }
83            p.copyright { font-size: x-small; }
84            p.toc { font-size: small; font-weight: bold; margin-left: 3em; }
85            table.toc { margin: 0 0 0 3em; padding: 0; border: 0; vertical-align: text-top; }
86            td.toc { font-size: small; font-weight: bold; vertical-align: text-top; }
87    
88            ol.text { margin-left: 2em; margin-right: 2em; }
89            ul.text { margin-left: 2em; margin-right: 2em; }
90            li      { margin-left: 3em; }
91    
92            /* RFC-2629 <spanx>s and <artwork>s. */
93            em     { font-style: italic; }
94            strong { font-weight: bold; }
95            dfn    { font-weight: bold; font-style: normal; }
96            cite   { font-weight: normal; font-style: normal; }
97            tt     { color: #036; }
98            tt, pre, pre dfn, pre em, pre cite, pre span {
99                    font-family: "Courier New", Courier, monospace; font-size: small;
100          }          }
101            pre {
102                    text-align: left; padding: 4px;
103                    color: #000; background-color: #CCC;
104            }
105            pre dfn  { color: #900; }
106            pre em   { color: #66F; background-color: #FFC; font-weight: normal; }
107            pre .key { color: #33C; font-weight: bold; }
108            pre .id  { color: #900; }
109            pre .str { color: #000; background-color: #CFF; }
110            pre .val { color: #066; }
111            pre .rep { color: #909; }
112            pre .oth { color: #000; background-color: #FCF; }
113            pre .err { background-color: #FCC; }
114    
115            /* RFC-2629 <texttable>s. */
116            table.all, table.full, table.headers, table.none {
117                    font-size: small; text-align: center; border-width: 2px;
118                    vertical-align: top; border-collapse: collapse;
119            }
120            table.all, table.full { border-style: solid; border-color: black; }
121            table.headers, table.none { border-style: none; }
122            th {
123                    font-weight: bold; border-color: black;
124                    border-width: 2px 2px 3px 2px;
125            }
126            table.all th, table.full th { border-style: solid; }
127            table.headers th { border-style: none none solid none; }
128            table.none th { border-style: none; }
129            table.all td {
130                    border-style: solid; border-color: #333;
131                    border-width: 1px 2px;
132            }
133            table.full td, table.headers td, table.none td { border-style: none; }
134    
135      h3 { color: #333333; font-size: medium ;          hr { height: 1px; }
136          font-family: helvetica, arial, sans-serif ;          hr.insert {
137          background-color: transparent; }                  width: 80%; border-style: none; border-width: 0;
138      h4 { font-size: small; font-family: helvetica, arial, sans-serif ; }                  color: #CCC; background-color: #CCC;
139            }
140      table.bug { width: 30px ; height: 15px ; }  --></style>
     td.bug { color: #ffffff ; background-color: #990000 ;  
         text-align: center ; width: 30px ; height: 15px ;  
          }  
     td.bug A.link2 { color: #ffffff ; font-weight: bold;  
         text-decoration: none;  
         font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, sans-serif;  
         font-size: x-small ; background-color: transparent }  
   
     td.header { color: #ffffff; font-size: x-small ;  
         font-family: arial, helvetica, sans-serif; vertical-align: top;  
         background-color: #666666 ; width: 33% ; }  
     td.author { font-weight: bold; margin-left: 4em; font-size: x-small ; }  
     td.author-text { font-size: x-small; }  
     table.data { vertical-align: top ; border-collapse: collapse ;  
         border-style: solid solid solid solid ;  
         border-color: black black black black ;  
         font-size: small ; text-align: center ; }  
     table.data th { font-weight: bold ;  
         border-style: solid solid solid solid ;  
         border-color: black black black black ; }  
     table.data td {  
         border-style: solid solid solid solid ;  
         border-color: #333333 #333333 #333333 #333333 ; }  
   
     hr { height: 1px }  
 -->  
 </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: September 30, 2007</td><td class="header">March 29, 2007</td></tr>
149  </table></td></tr></table>  </table></td></tr></table>
150  <div align="right"><span class="title"><br />LinuxSampler Control Protocol</span></div>  <h1><br />LinuxSampler Control Protocol<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 September 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 IETF Trust (2007).</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 NAME">6.4.30.</a>&nbsp;
332    Changing effect send's name<br />
333    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND AUDIO_OUTPUT_CHANNEL">6.4.31.</a>&nbsp;
334    Altering effect send's audio routing<br />
335    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND MIDI_CONTROLLER">6.4.32.</a>&nbsp;
336    Altering effect send's MIDI controller<br />
337    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND LEVEL">6.4.33.</a>&nbsp;
338    Altering effect send's send level<br />
339    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.34.</a>&nbsp;
340  Resetting a sampler channel<br />  Resetting a sampler channel<br />
341  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">5.5</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5.</a>&nbsp;
342  Controlling connection<br />  Controlling connection<br />
343  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">5.5.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE">6.5.1.</a>&nbsp;
344  Register front-end for receiving event messages<br />  Register front-end for receiving event messages<br />
345  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">5.5.2</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNSUBSCRIBE">6.5.2.</a>&nbsp;
346  Unregister front-end for not receiving event messages<br />  Unregister front-end for not receiving event messages<br />
347  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">5.5.3</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET ECHO">6.5.3.</a>&nbsp;
348  Enable or disable echo of commands<br />  Enable or disable echo of commands<br />
349  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">5.5.4</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#QUIT">6.5.4.</a>&nbsp;
350  Close client connection<br />  Close client connection<br />
351  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor14">5.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor13">6.6.</a>&nbsp;
352  Global commands<br />  Global commands<br />
353  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">5.6.1</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT">6.6.1.</a>&nbsp;
354    Current number of active voices<br />
355    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT_MAX">6.6.2.</a>&nbsp;
356    Maximum amount of active voices<br />
357    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.3.</a>&nbsp;
358  Reset sampler<br />  Reset sampler<br />
359  <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;
360    General sampler informations<br />
361    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET VOLUME">6.6.5.</a>&nbsp;
362    Getting global volume attenuation<br />
363    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET VOLUME">6.6.6.</a>&nbsp;
364    Setting global volume attenuation<br />
365    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#MIDI Instrument Mapping">6.7.</a>&nbsp;
366    MIDI Instrument Mapping<br />
367    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD MIDI_INSTRUMENT MAP">6.7.1.</a>&nbsp;
368    Create a new MIDI instrument map<br />
369    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE MIDI_INSTRUMENT_MAP">6.7.2.</a>&nbsp;
370    Delete one particular or all MIDI instrument maps<br />
371    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAPS">6.7.3.</a>&nbsp;
372    Get amount of existing MIDI instrument maps<br />
373    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENT_MAPS">6.7.4.</a>&nbsp;
374    Getting all created MIDI instrument maps<br />
375    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT_MAP INFO">6.7.5.</a>&nbsp;
376    Getting MIDI instrument map information<br />
377    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET MIDI_INSTRUMENT_MAP NAME">6.7.6.</a>&nbsp;
378    Renaming a MIDI instrument map<br />
379    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#MAP MIDI_INSTRUMENT">6.7.7.</a>&nbsp;
380    Create or replace a MIDI instrument map entry<br />
381    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENTS">6.7.8.</a>&nbsp;
382    Getting ammount of MIDI instrument map entries<br />
383    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST MIDI_INSTRUMENTS">6.7.9.</a>&nbsp;
384    Getting indeces of all entries of a MIDI instrument map<br />
385    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#UNMAP MIDI_INSTRUMENT">6.7.10.</a>&nbsp;
386    Remove an entry from the MIDI instrument map<br />
387    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET MIDI_INSTRUMENT INFO">6.7.11.</a>&nbsp;
388    Get current settings of MIDI instrument map entry<br />
389    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#CLEAR MIDI_INSTRUMENTS">6.7.12.</a>&nbsp;
390    Clear MIDI instrument map<br />
391    <a href="#command_syntax">7.</a>&nbsp;
392  Command Syntax<br />  Command Syntax<br />
393  <a href="#events">7.</a>&nbsp;  <a href="#events">8.</a>&nbsp;
394  Events<br />  Events<br />
395  &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;
396    Number of audio output devices changed<br />
397    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO">8.2.</a>&nbsp;
398    Audio output device's settings changed<br />
399    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_COUNT">8.3.</a>&nbsp;
400    Number of MIDI input devices changed<br />
401    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INPUT_DEVICE_INFO">8.4.</a>&nbsp;
402    MIDI input device's settings changed<br />
403    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_COUNT">8.5.</a>&nbsp;
404  Number of sampler channels changed<br />  Number of sampler channels changed<br />
405  &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;
406  Number of active voices changed<br />  Number of active voices changed<br />
407  &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;
408  Number of active disk streams changed<br />  Number of active disk streams changed<br />
409  &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;
410  Disk stream buffer fill state changed<br />  Disk stream buffer fill state changed<br />
411  &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;
412  Channel information changed<br />  Channel information changed<br />
413  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">7.6</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_COUNT">8.10.</a>&nbsp;
414    Number of effect sends changed<br />
415    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_INFO">8.11.</a>&nbsp;
416    Effect send information changed<br />
417    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_VOICE_COUNT">8.12.</a>&nbsp;
418    Total number of active voices changed<br />
419    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT">8.13.</a>&nbsp;
420    Number of MIDI instrument maps changed<br />
421    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO">8.14.</a>&nbsp;
422    MIDI instrument map information changed<br />
423    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_COUNT">8.15.</a>&nbsp;
424    Number of MIDI instruments changed<br />
425    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_INFO">8.16.</a>&nbsp;
426    MIDI instrument information changed<br />
427    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE GLOBAL_INFO">8.17.</a>&nbsp;
428    Global settings changed<br />
429    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.18.</a>&nbsp;
430  Miscellaneous and debugging events<br />  Miscellaneous and debugging events<br />
431  <a href="#anchor15">8.</a>&nbsp;  <a href="#anchor14">9.</a>&nbsp;
432  Security Considerations<br />  Security Considerations<br />
433  <a href="#anchor16">9.</a>&nbsp;  <a href="#anchor15">10.</a>&nbsp;
434  Acknowledgments<br />  Acknowledgments<br />
435  <a href="#rfc.references1">10.</a>&nbsp;  <a href="#rfc.references1">11.</a>&nbsp;
436  References<br />  References<br />
437  <a href="#rfc.authors">&#167;</a>&nbsp;  <a href="#rfc.authors">&#167;</a>&nbsp;
438  Author's Address<br />  Author's Address<br />
# Line 320  Intellectual Property and Copyright Stat Line 442  Intellectual Property and Copyright Stat
442  <br clear="all" />  <br clear="all" />
443    
444  <a name="anchor1"></a><br /><hr />  <a name="anchor1"></a><br /><hr />
445  <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>
446  <a name="rfc.section.1"></a><h3>1.&nbsp;Requirements notation</h3>  <a name="rfc.section.1"></a><h3>1.&nbsp;
447    Requirements notation</h3>
448    
449  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",  <p>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
450              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",              "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
451              and "OPTIONAL" in this document are to be interpreted as              and "OPTIONAL" in this document are to be interpreted as
452              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>.
453  </p>  </p>
454  <p>This protocol is always case-sensitive if not explicitly  <p>This protocol is always case-sensitive if not explicitly
455              claimed the opposite.              claimed the opposite.
# Line 338  Intellectual Property and Copyright Stat Line 461  Intellectual Property and Copyright Stat
461              character as defined in the ASCII standard), thus the following              character as defined in the ASCII standard), thus the following
462              example:              example:
463  </p>  </p>
464  <p></p>  <p>
465                    </p>
466  <blockquote class="text">  <blockquote class="text">
467  <p>C: "some line"  <p>C: "some line"
468  </p>  </p>
469  <p>&nbsp;&nbsp;&nbsp;"another line"  <p>&nbsp;&nbsp;&nbsp;"another line"
470  </p>  </p>
471  </blockquote>  </blockquote><p>
472                
473    </p>
474  <p>must actually be interpreted as client sending the following  <p>must actually be interpreted as client sending the following
475              message:              message:
476  </p>  </p>
477  <p></p>  <p>
478                    </p>
479  <blockquote class="text">  <blockquote class="text">
480  <p>"some line&lt;CR&gt;&lt;LF&gt;another  <p>"some line&lt;CR&gt;&lt;LF&gt;another
481                      line&lt;CR&gt;&lt;LF&gt;"                      line&lt;CR&gt;&lt;LF&gt;"
482  </p>  </p>
483  </blockquote>  </blockquote><p>
484                
485    </p>
486  <p>where &lt;CR&gt; symbolizes the carriage return character and  <p>where &lt;CR&gt; symbolizes the carriage return character and
487              &lt;LF&gt; the line feed character as defined in the ASCII              &lt;LF&gt; the line feed character as defined in the ASCII
488              standard.              standard.
# Line 363  Intellectual Property and Copyright Stat Line 490  Intellectual Property and Copyright Stat
490  <p>Due to technical reasons, messages can arbitrary be  <p>Due to technical reasons, messages can arbitrary be
491              fragmented, means the following example:              fragmented, means the following example:
492  </p>  </p>
493  <p></p>  <p>
494                    </p>
495  <blockquote class="text">  <blockquote class="text">
496  <p>S: "abcd"  <p>S: "abcd"
497  </p>  </p>
498  </blockquote>  </blockquote><p>
499                
500    </p>
501  <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
502              following sequence scenario:              following sequence scenario:
503  </p>  </p>
504  <p></p>  <p>
505                    </p>
506  <ul class="text">  <ul class="text">
507  <li>server sending message "a"  <li>server sending message "a"
508  </li>  </li>
# Line 388  Intellectual Property and Copyright Stat Line 518  Intellectual Property and Copyright Stat
518  <li>followed by server sending the message  <li>followed by server sending the message
519                      "&lt;LF&gt;"                      "&lt;LF&gt;"
520  </li>  </li>
521  </ul>  </ul><p>
522                
523    </p>
524  <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
525              return and line feed characters respectively.              return and line feed characters respectively.
526  </p>  </p>
527    <a name="LSCP versioning"></a><br /><hr />
528    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
529    <a name="rfc.section.2"></a><h3>2.&nbsp;
530    Versioning of this specification</h3>
531    
532    <p>LSCP will certainly be extended and enhanced by-and-by. Each official
533                release of the LSCP specification will be tagged with a unique version
534                tuple. The version tuple consists at least of a major and minor version
535                number like:
536                
537    </p>
538    <p>
539                    </p>
540    <blockquote class="text">
541    <p>"1.2"
542    </p>
543    </blockquote><p>
544                
545    </p>
546    <p>
547                In this example the major version number would be "1" and the minor
548                version number would be "2". Note that the version tuple might also
549                have more than two elements. The major version number defines a
550                group of backward compatible versions. That means a frontend is
551                compatible to the connected sampler if and only if the LSCP versions
552                to which each of the two parties complies to, match both of the
553                following rules:
554                
555    </p>
556    <p>Compatibility:
557    </p>
558    <p>
559                    </p>
560    <ol class="text">
561    <li>The frontend's LSCP major version and the sampler's LSCP
562                        major version are exactly equal.
563    </li>
564    <li>The frontend's LSCP minor version is less or equal than
565                        the sampler's LSCP minor version.
566    </li>
567    </ol><p>
568                
569    </p>
570    <p>
571                Compatibility can only be claimed if both rules are true.
572                The frontend can use the
573                <a class='info' href='#GET SERVER INFO'>"GET SERVER INFO"<span> (</span><span class='info'>General sampler informations</span><span>)</span></a> command to
574                get the version of the LSCP specification the sampler complies with.
575                
576    </p>
577  <a name="anchor2"></a><br /><hr />  <a name="anchor2"></a><br /><hr />
578  <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>
579  <a name="rfc.section.2"></a><h3>2.&nbsp;Introduction</h3>  <a name="rfc.section.3"></a><h3>3.&nbsp;
580    Introduction</h3>
581    
582  <p>LinuxSampler is a so called software sampler application  <p>LinuxSampler is a so called software sampler application
583              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 590  Intellectual Property and Copyright Stat
590              arbitrary MIDI input method and arbitrary MIDI channel (e.g.              arbitrary MIDI input method and arbitrary MIDI channel (e.g.
591              sampler channel 17 could be connected to an ALSA sequencer              sampler channel 17 could be connected to an ALSA sequencer
592              device 64:0 and listening to MIDI channel 1 there). Each sampler              device 64:0 and listening to MIDI channel 1 there). Each sampler
593              engine will be assigned an own instance of one of the available              channel will be associated with an instance of one of the available
594              sampler engines (e.g. GigEngine, DLSEngine). The audio output of              sampler engines (e.g. GigEngine, DLSEngine). The audio output of
595              each sampler channel can be routed to an arbitrary audio output              each sampler channel can be routed to an arbitrary audio output
596              method (ALSA / JACK) and an arbitrary audio output channel              method (ALSA / JACK) and an arbitrary audio output channel
597              there.              there.
598  </p>  </p>
599  <a name="anchor3"></a><br /><hr />  <a name="anchor3"></a><br /><hr />
600  <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>
601  <a name="rfc.section.3"></a><h3>3.&nbsp;Focus of this protocol</h3>  <a name="rfc.section.4"></a><h3>4.&nbsp;
602    Focus of this protocol</h3>
603    
604  <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
605              a running LinuxSampler instance and to retrieve information              a running LinuxSampler instance and to retrieve information
# Line 427  Intellectual Property and Copyright Stat Line 610  Intellectual Property and Copyright Stat
610              via MIDI System Exclusive Messages.              via MIDI System Exclusive Messages.
611  </p>  </p>
612  <a name="anchor4"></a><br /><hr />  <a name="anchor4"></a><br /><hr />
613  <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>
614  <a name="rfc.section.4"></a><h3>4.&nbsp;Communication Overview</h3>  <a name="rfc.section.5"></a><h3>5.&nbsp;
615    Communication Overview</h3>
616    
617  <p>There are two distinct methods of communication between a  <p>There are two distinct methods of communication between a
618              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 625  Intellectual Property and Copyright Stat
625              implemented in the front-end application. The two communication              implemented in the front-end application. The two communication
626              methods will be described next.              methods will be described next.
627  </p>  </p>
628  <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 />
629    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
630    <a name="rfc.section.5.1"></a><h3>5.1.&nbsp;
631    Request/response communication method</h3>
632    
633  <p>This simple communication method is based on TCP. The  <p>This simple communication method is based on
634                    <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
635                  front-end application establishes a TCP connection to the                  front-end application establishes a TCP connection to the
636                  LinuxSampler instance on a certain host system. Then the                  LinuxSampler instance on a certain host system. Then the
637                  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 671  Intellectual Property and Copyright Stat
671                  processed in the order they were received and result sets                  processed in the order they were received and result sets
672                  MUST be sent back in the same order.                  MUST be sent back in the same order.
673  </p>  </p>
674  <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 />
675    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
676    <a name="rfc.section.5.1.1"></a><h3>5.1.1.&nbsp;
677    Result format</h3>
678    
679  <p>Result set could be one of the following types:  <p>Result set could be one of the following types:
680  </p>  </p>
681  <p></p>  <p>
682                            </p>
683  <ol class="text">  <ol class="text">
684  <li>Normal  <li>Normal
685  </li>  </li>
# Line 495  Intellectual Property and Copyright Stat Line 687  Intellectual Property and Copyright Stat
687  </li>  </li>
688  <li>Error  <li>Error
689  </li>  </li>
690  </ol>  </ol><p>
691                        
692    </p>
693  <p>Warning and Error result sets MUST be single line and  <p>Warning and Error result sets MUST be single line and
694                      have the following format:                      have the following format:
695  </p>  </p>
696  <p></p>  <p>
697                            </p>
698  <ul class="text">  <ul class="text">
699  <li>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;"  <li>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;"
700  </li>  </li>
701  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"  <li>"ERR:&lt;error-code&gt;:&lt;error-message&gt;"
702  </li>  </li>
703  </ul>  </ul><p>
704                        
705    </p>
706  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are  <p>Where &lt;warning-code&gt; and &lt;error-code&gt; are
707                      numeric unique identifiers of the warning or error and                      numeric unique identifiers of the warning or error and
708                      &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 711  Intellectual Property and Copyright Stat
711  </p>  </p>
712  <p>Examples:  <p>Examples:
713  </p>  </p>
714  <p></p>  <p>
715                            </p>
716  <blockquote class="text">  <blockquote class="text">
717  <p>C: "LOAD INSTRUMENT '/home/me/Boesendorfer24bit.gig" 0 0  <p>C: "LOAD INSTRUMENT '/home/me/Boesendorfer24bit.gig" 0 0
718  </p>  </p>
719  <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."
720  </p>  </p>
721  </blockquote>  </blockquote><p>
722                        
723  <p></p>  </p>
724    <p>
725                            </p>
726  <blockquote class="text">  <blockquote class="text">
727  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA EAR"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA EAR"
728  </p>  </p>
729  <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'."
730  </p>  </p>
731  </blockquote>  </blockquote><p>
732                        
733  <p></p>  </p>
734    <p>
735                            </p>
736  <blockquote class="text">  <blockquote class="text">
737  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 123456"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 123456"
738  </p>  </p>
739  <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."
740  </p>  </p>
741  </blockquote>  </blockquote><p>
742                        
743    </p>
744  <p>Normal result sets could be:  <p>Normal result sets could be:
745  </p>  </p>
746  <p></p>  <p>
747                            </p>
748  <ol class="text">  <ol class="text">
749  <li>Empty  <li>Empty
750  </li>  </li>
# Line 550  Intellectual Property and Copyright Stat Line 752  Intellectual Property and Copyright Stat
752  </li>  </li>
753  <li>Multi-line  <li>Multi-line
754  </li>  </li>
755  </ol>  </ol><p>
756                        
757    </p>
758  <p> Empty result set is issued when the server only  <p> Empty result set is issued when the server only
759                      needed to acknowledge the fact that the request was                      needed to acknowledge the fact that the request was
760                      received and it was processed successfully and no                      received and it was processed successfully and no
761                      additional information is available. This result set has                      additional information is available. This result set has
762                      the following format:                      the following format:
763  </p>  </p>
764  <p></p>  <p>
765                            </p>
766  <blockquote class="text">  <blockquote class="text">
767  <p>"OK"  <p>"OK"
768  </p>  </p>
769  </blockquote>  </blockquote><p>
770                        
771    </p>
772  <p>Example:  <p>Example:
773  </p>  </p>
774  <p></p>  <p>
775                            </p>
776  <blockquote class="text">  <blockquote class="text">
777  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 CHANNELS=4"  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 CHANNELS=4"
778  </p>  </p>
779  <p>S: "OK"  <p>S: "OK"
780  </p>  </p>
781  </blockquote>  </blockquote><p>
782                        
783    </p>
784  <p>Single line result sets are command specific. One  <p>Single line result sets are command specific. One
785                      example of a single line result set is an empty line.                      example of a single line result set is an empty line.
786                      Multi-line result sets are command specific and may                      Multi-line result sets are command specific and may
787                      include one or more lines of information. They MUST                      include one or more lines of information. They MUST
788                      always end with the following line:                      always end with the following line:
789  </p>  </p>
790  <p></p>  <p>
791                            </p>
792  <blockquote class="text">  <blockquote class="text">
793  <p>"."  <p>"."
794  </p>  </p>
795  </blockquote>  </blockquote><p>
796                        
797    </p>
798  <p>Example:  <p>Example:
799  </p>  </p>
800  <p></p>  <p>
801                            </p>
802  <blockquote class="text">  <blockquote class="text">
803  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"
804  </p>  </p>
# Line 608  Intellectual Property and Copyright Stat Line 818  Intellectual Property and Copyright Stat
818  </p>  </p>
819  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
820  </p>  </p>
821  </blockquote>  </blockquote><p>
822                        
823    </p>
824  <p>In addition to above mentioned formats, warnings and  <p>In addition to above mentioned formats, warnings and
825                      empty result sets MAY be indexed. In this case, they                      empty result sets MAY be indexed. In this case, they
826                      have the following formats respectively:                      have the following formats respectively:
827  </p>  </p>
828  <p></p>  <p>
829                            </p>
830  <ul class="text">  <ul class="text">
831  <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;"
832  </li>  </li>
833  <li>"OK[&lt;index&gt;]"  <li>"OK[&lt;index&gt;]"
834  </li>  </li>
835  </ul>  </ul><p>
836                        
837    </p>
838  <p>where &lt;index&gt; is command specific and is used  <p>where &lt;index&gt; is command specific and is used
839                      to indicate channel number that the result set was                      to indicate channel number that the result set was
840                      related to or other integer value.                      related to or other integer value.
# Line 631  Intellectual Property and Copyright Stat Line 844  Intellectual Property and Copyright Stat
844  </p>  </p>
845  <p>Examples:  <p>Examples:
846  </p>  </p>
847  <p></p>  <p>
848                            </p>
849  <blockquote class="text">  <blockquote class="text">
850  <p>C: "ADD CHANNEL"  <p>C: "ADD CHANNEL"
851  </p>  </p>
852  <p>S: "OK[12]"  <p>S: "OK[12]"
853  </p>  </p>
854  </blockquote>  </blockquote><p>
855                        
856  <p></p>  </p>
857    <p>
858                            </p>
859  <blockquote class="text">  <blockquote class="text">
860  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA SAMPLERATE=96000"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA SAMPLERATE=96000"
861  </p>  </p>
862  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."  <p>S: "WRN[0]:32:Sample rate not supported, using 44100 instead."
863  </p>  </p>
864  </blockquote>  </blockquote><p>
865                        
866  <a name="rfc.section.4.2"></a><h4><a name="anchor7">4.2</a>&nbsp;Subscribe/notify communication method</h4>  </p>
867    <a name="anchor7"></a><br /><hr />
868    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
869    <a name="rfc.section.5.2"></a><h3>5.2.&nbsp;
870    Subscribe/notify communication method</h3>
871    
872  <p>This more sophisticated communication method is actually  <p>This more sophisticated communication method is actually
873                  only an extension of the simple request/response                  only an extension of the simple request/response
# Line 659  Intellectual Property and Copyright Stat Line 879  Intellectual Property and Copyright Stat
879                  as they happen on the server. The SUBSCRIBE command has the                  as they happen on the server. The SUBSCRIBE command has the
880                  following syntax:                  following syntax:
881  </p>  </p>
882  <p></p>  <p>
883                        </p>
884  <blockquote class="text">  <blockquote class="text">
885  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
886  </p>  </p>
887  </blockquote>  </blockquote><p>
888                    
889    </p>
890  <p>where &lt;event-id&gt; will be replaced by the respective  <p>where &lt;event-id&gt; will be replaced by the respective
891                  event that client wants to subscribe to. Upon receiving such                  event that client wants to subscribe to. Upon receiving such
892                  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 896  Intellectual Property and Copyright Stat
896                  time nature of their generation. Event messages have the                  time nature of their generation. Event messages have the
897                  following format:                  following format:
898  </p>  </p>
899  <p></p>  <p>
900                        </p>
901  <blockquote class="text">  <blockquote class="text">
902  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;  <p>NOTIFY:&lt;event-id&gt;:&lt;custom-event-data&gt;
903  </p>  </p>
904  </blockquote>  </blockquote><p>
905                    
906    </p>
907  <p>where &lt;event-id&gt; uniquely identifies the event that  <p>where &lt;event-id&gt; uniquely identifies the event that
908                  has occurred and &lt;custom-event-data&gt; is event                  has occurred and &lt;custom-event-data&gt; is event
909                  specific.                  specific.
# Line 687  Intellectual Property and Copyright Stat Line 911  Intellectual Property and Copyright Stat
911  <p>Several rules must be followed by the server when  <p>Several rules must be followed by the server when
912                  generating events:                  generating events:
913  </p>  </p>
914  <p></p>  <p>
915                        </p>
916  <ol class="text">  <ol class="text">
917  <li>Events MUST NOT be sent to any client who has not  <li>Events MUST NOT be sent to any client who has not
918                          issued an appropriate SUBSCRIBE command.                          issued an appropriate SUBSCRIBE command.
# Line 702  Intellectual Property and Copyright Stat Line 927  Intellectual Property and Copyright Stat
927                          middle of the event message as well as any other                          middle of the event message as well as any other
928                          response.                          response.
929  </li>  </li>
930  </ol>  </ol><p>
931                    
932    </p>
933  <p>If the client is not interested in a particular event  <p>If the client is not interested in a particular event
934                  anymore it MAY issue UNSUBSCRIBE command using the following                  anymore it MAY issue UNSUBSCRIBE command using the following
935                  syntax:                  syntax:
936  </p>  </p>
937  <p></p>  <p>
938                        </p>
939  <blockquote class="text">  <blockquote class="text">
940  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
941  </p>  </p>
942  </blockquote>  </blockquote><p>
943                    
944    </p>
945  <p>where &lt;event-id&gt; will be replace by the respective  <p>where &lt;event-id&gt; will be replace by the respective
946                  event that client is no longer interested in receiving. For                  event that client is no longer interested in receiving. For
947                  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>.
948  </p>  </p>
949  <p>Example: the fill states of disk stream buffers have  <p>Example: the fill states of disk stream buffers have
950                  changed on sampler channel 4 and the LinuxSampler instance                  changed on sampler channel 4 and the LinuxSampler instance
951                  will react by sending the following message to all clients                  will react by sending the following message to all clients
952                  who subscribed to this event:                  who subscribed to this event:
953  </p>  </p>
954  <p></p>  <p>
955                        </p>
956  <blockquote class="text">  <blockquote class="text">
957  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%  <p>NOTIFY:CHANNEL_BUFFER_FILL:4 [35]62%,[33]80%,[37]98%
958  </p>  </p>
959  </blockquote>  </blockquote><p>
960                    
961    </p>
962  <p>Which means there are currently three active streams on  <p>Which means there are currently three active streams on
963                  sampler channel 4, where the stream with ID "35" is filled                  sampler channel 4, where the stream with ID "35" is filled
964                  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 989  Intellectual Property and Copyright Stat
989                  If client reconnects it MUST resubscribe to all events that                  If client reconnects it MUST resubscribe to all events that
990                  it wants to receive.                  it wants to receive.
991  </p>  </p>
992  <a name="anchor8"></a><br /><hr />  <a name="control_commands"></a><br /><hr />
993  <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>
994  <a name="rfc.section.5"></a><h3>5.&nbsp;Description for control commands</h3>  <a name="rfc.section.6"></a><h3>6.&nbsp;
995    Description for control commands</h3>
996    
997  <p>This chapter will describe the available control commands  <p>This chapter will describe the available control commands
998              that can be sent on the TCP connection in detail. Some certain              that can be sent on the TCP connection in detail. Some certain
999              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>
1000              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
1001              multiple-line responses. In this case LinuxSampler signals the              multiple-line responses. In this case LinuxSampler signals the
1002              end of the response by a "." (single dot) line.              end of the response by a "." (single dot) line.
1003  </p>  </p>
1004  <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 />
1005    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1006    <a name="rfc.section.6.1"></a><h3>6.1.&nbsp;
1007    Ignored lines and comments</h3>
1008    
1009  <p>White lines, that is lines which only contain space and  <p>White lines, that is lines which only contain space and
1010                  tabulator characters, and lines that start with a "#"                  tabulator characters, and lines that start with a "#"
# Line 778  Intellectual Property and Copyright Stat Line 1012  Intellectual Property and Copyright Stat
1012                  group commands and to place comments in a LSCP script                  group commands and to place comments in a LSCP script
1013                  file.                  file.
1014  </p>  </p>
1015  <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 />
1016    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1017    <a name="rfc.section.6.2"></a><h3>6.2.&nbsp;
1018    Configuring audio drivers</h3>
1019    
1020  <p>Instances of drivers in LinuxSampler are called devices.  <p>Instances of drivers in LinuxSampler are called devices.
1021                  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 1048  Intellectual Property and Copyright Stat
1048                  what parameters drivers are offering, how to retrieve their                  what parameters drivers are offering, how to retrieve their
1049                  possible values, etc.                  possible values, etc.
1050  </p>  </p>
1051  <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 />
1052    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1053    <a name="rfc.section.6.2.1"></a><h3>6.2.1.&nbsp;
1054    Getting amount of available audio output drivers</h3>
1055    
1056  <p>Use the following command to get the number of  <p>Use the following command to get the number of
1057                      audio output drivers currently available for the                      audio output drivers currently available for the
1058                      LinuxSampler instance:                      LinuxSampler instance:
1059  </p>  </p>
1060  <p></p>  <p>
1061                            </p>
1062  <blockquote class="text">  <blockquote class="text">
1063  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>GET AVAILABLE_AUDIO_OUTPUT_DRIVERS
1064  </p>  </p>
1065  </blockquote>  </blockquote><p>
1066                        
1067    </p>
1068  <p>Possible Answers:  <p>Possible Answers:
1069  </p>  </p>
1070  <p></p>  <p>
1071                            </p>
1072  <blockquote class="text">  <blockquote class="text">
1073  <p>LinuxSampler will answer by sending the  <p>LinuxSampler will answer by sending the
1074                              number of audio output drivers.                              number of audio output drivers.
1075  </p>  </p>
1076  </blockquote>  </blockquote><p>
1077                        
1078    </p>
1079  <p>Example:  <p>Example:
1080  </p>  </p>
1081  <p></p>  <p>
1082                            </p>
1083  <blockquote class="text">  <blockquote class="text">
1084  <p>C: "GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"  <p>C: "GET AVAILABLE_AUDIO_OUTPUT_DRIVERS"
1085  </p>  </p>
1086  <p>S: "2"  <p>S: "2"
1087  </p>  </p>
1088  </blockquote>  </blockquote><p>
1089                        
1090  <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>
1091    <a name="LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"></a><br /><hr />
1092    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1093    <a name="rfc.section.6.2.2"></a><h3>6.2.2.&nbsp;
1094    Getting all available audio output drivers</h3>
1095    
1096  <p>Use the following command to list all audio output  <p>Use the following command to list all audio output
1097                      drivers currently available for the LinuxSampler                      drivers currently available for the LinuxSampler
1098                      instance:                      instance:
1099  </p>  </p>
1100  <p></p>  <p>
1101                            </p>
1102  <blockquote class="text">  <blockquote class="text">
1103  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS  <p>LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS
1104  </p>  </p>
1105  </blockquote>  </blockquote><p>
1106                        
1107    </p>
1108  <p>Possible Answers:  <p>Possible Answers:
1109  </p>  </p>
1110  <p></p>  <p>
1111                            </p>
1112  <blockquote class="text">  <blockquote class="text">
1113  <p>LinuxSampler will answer by sending comma  <p>LinuxSampler will answer by sending comma
1114                              separated character strings, each symbolizing an                              separated character strings, each symbolizing an
1115                              audio output driver.                              audio output driver.
1116  </p>  </p>
1117  </blockquote>  </blockquote><p>
1118                        
1119    </p>
1120  <p>Example:  <p>Example:
1121  </p>  </p>
1122  <p></p>  <p>
1123                            </p>
1124  <blockquote class="text">  <blockquote class="text">
1125  <p>C: "LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"  <p>C: "LIST AVAILABLE_AUDIO_OUTPUT_DRIVERS"
1126  </p>  </p>
1127  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
1128  </p>  </p>
1129  </blockquote>  </blockquote><p>
1130                        
1131  <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>
1132                  output driver</h4>  <a name="GET AUDIO_OUTPUT_DRIVER INFO"></a><br /><hr />
1133    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1134    <a name="rfc.section.6.2.3"></a><h3>6.2.3.&nbsp;
1135    Getting information about a specific audio
1136                    output driver</h3>
1137    
1138  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1139                      about a specific audio output driver:                      about a specific audio output driver:
1140  </p>  </p>
1141  <p></p>  <p>
1142                            </p>
1143  <blockquote class="text">  <blockquote class="text">
1144  <p>GET AUDIO_OUTPUT_DRIVER INFO  <p>GET AUDIO_OUTPUT_DRIVER INFO
1145                               &lt;audio-output-driver&gt;                               &lt;audio-output-driver&gt;
1146  </p>  </p>
1147  </blockquote>  </blockquote><p>
1148                        
1149    </p>
1150  <p>Where &lt;audio-output-driver&gt; is the name of the  <p>Where &lt;audio-output-driver&gt; is the name of the
1151                      audio output driver, returned by the                      audio output driver, returned by the
1152                      <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.
1153  </p>  </p>
1154  <p>Possible Answers:  <p>Possible Answers:
1155  </p>  </p>
1156  <p></p>  <p>
1157                            </p>
1158  <blockquote class="text">  <blockquote class="text">
1159  <p>LinuxSampler will answer by sending a  <p>LinuxSampler will answer by sending a
1160                              &lt;CRLF&gt; separated list. Each answer line                              &lt;CRLF&gt; separated list. Each answer line
# Line 904  Intellectual Property and Copyright Stat Line 1165  Intellectual Property and Copyright Stat
1165                              following information categories are                              following information categories are
1166                              defined:                              defined:
1167  </p>  </p>
1168  <p></p>  <p>
1169                                  </p>
1170  <blockquote class="text">  <blockquote class="text">
1171  <p>DESCRIPTION -  <p>DESCRIPTION -
1172                                      </p>                                      </p>
# Line 913  Intellectual Property and Copyright Stat Line 1175  Intellectual Property and Copyright Stat
1175                                        audio output driver                                        audio output driver
1176  </p>  </p>
1177  </blockquote>  </blockquote>
1178                                      
1179    
1180  <p>VERSION -  <p>VERSION -
1181                                      </p>                                      </p>
# Line 921  Intellectual Property and Copyright Stat Line 1184  Intellectual Property and Copyright Stat
1184                                        driver's version                                        driver's version
1185  </p>  </p>
1186  </blockquote>  </blockquote>
1187                                      
1188    
1189  <p>PARAMETERS -  <p>PARAMETERS -
1190                                      </p>                                      </p>
# Line 933  Intellectual Property and Copyright Stat Line 1197  Intellectual Property and Copyright Stat
1197                                        output drivers                                        output drivers
1198  </p>  </p>
1199  </blockquote>  </blockquote>
1200                                      
1201    
1202  </blockquote>  </blockquote>
1203                                
1204    
1205  <p>The mentioned fields above don't have to be  <p>The mentioned fields above don't have to be
1206                              in particular order.                              in particular order.
1207  </p>  </p>
1208  </blockquote>  </blockquote><p>
1209                        
1210    </p>
1211  <p>Example:  <p>Example:
1212  </p>  </p>
1213  <p></p>  <p>
1214                          </p>
1215  <blockquote class="text">  <blockquote class="text">
1216  <p>C: "GET AUDIO_OUTPUT_DRIVER INFO ALSA"  <p>C: "GET AUDIO_OUTPUT_DRIVER INFO ALSA"
1217  </p>  </p>
# Line 958  Intellectual Property and Copyright Stat Line 1226  Intellectual Property and Copyright Stat
1226  </p>  </p>
1227  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1228  </p>  </p>
1229  </blockquote>  </blockquote><p>
1230                        
1231  <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>
1232                  output driver parameter</h4>  <a name="GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
1233    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1234    <a name="rfc.section.6.2.4"></a><h3>6.2.4.&nbsp;
1235    Getting information about specific audio
1236                    output driver parameter</h3>
1237    
1238  <p>Use the following command to get detailed information  <p>Use the following command to get detailed information
1239                      about a  specific audio output driver parameter:                      about a  specific audio output driver parameter:
1240  </p>  </p>
1241  <p></p>  <p>
1242                            </p>
1243  <blockquote class="text">  <blockquote class="text">
1244  <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;]
1245  </p>  </p>
1246  </blockquote>  </blockquote><p>
1247                        
1248    </p>
1249  <p>Where &lt;audio&gt; is the name of the audio output  <p>Where &lt;audio&gt; is the name of the audio output
1250                      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,
1251                      &lt;prm&gt; a specific parameter name for which information should be                      &lt;prm&gt; a specific parameter name for which information should be
1252                      obtained (as returned by the                      obtained (as returned by the
1253                      <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
1254                      &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
1255                      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
1256                      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 1261  Intellectual Property and Copyright Stat
1261  </p>  </p>
1262  <p>Possible Answers:  <p>Possible Answers:
1263  </p>  </p>
1264  <p></p>  <p>
1265                            </p>
1266  <blockquote class="text">  <blockquote class="text">
1267  <p>LinuxSampler will answer by sending a  <p>LinuxSampler will answer by sending a
1268                              &lt;CRLF&gt; separated list.                              &lt;CRLF&gt; separated list.
# Line 1000  Intellectual Property and Copyright Stat Line 1275  Intellectual Property and Copyright Stat
1275                              which is only shown dependently to given driver parameter. At                              which is only shown dependently to given driver parameter. At
1276                              the moment the following information categories are defined:                              the moment the following information categories are defined:
1277  </p>  </p>
1278  </blockquote>  </blockquote><p>
1279                        
1280  <p></p>  </p>
1281    <p>
1282                            </p>
1283  <blockquote class="text">  <blockquote class="text">
1284  <p>TYPE -  <p>TYPE -
1285                                </p>                                </p>
# Line 1014  Intellectual Property and Copyright Stat Line 1291  Intellectual Property and Copyright Stat
1291                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1292  </p>  </p>
1293  </blockquote>  </blockquote>
1294                                
1295    
1296  <p>DESCRIPTION -  <p>DESCRIPTION -
1297                                </p>                                </p>
# Line 1022  Intellectual Property and Copyright Stat Line 1300  Intellectual Property and Copyright Stat
1300                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1301  </p>  </p>
1302  </blockquote>  </blockquote>
1303                                
1304    
1305  <p>MANDATORY -  <p>MANDATORY -
1306                                </p>                                </p>
1307  <blockquote class="text">  <blockquote class="text">
1308  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
1309                                  given when the device is to be created with the                                  given when the device is to be created with the
1310                                  <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>
1311                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1312  </p>  </p>
1313  </blockquote>  </blockquote>
1314                                
1315    
1316  <p>FIX -  <p>FIX -
1317                                </p>                                </p>
1318  <blockquote class="text">  <blockquote class="text">
1319  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
1320                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
1321                                  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>
1322                                  command (always returned, no matter which driver parameter)                                  command (always returned, no matter which driver parameter)
1323  </p>  </p>
1324  </blockquote>  </blockquote>
1325                                
1326    
1327  <p>MULTIPLICITY -  <p>MULTIPLICITY -
1328                                </p>                                </p>
# Line 1052  Intellectual Property and Copyright Stat Line 1333  Intellectual Property and Copyright Stat
1333                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
1334  </p>  </p>
1335  </blockquote>  </blockquote>
1336                                
1337    
1338  <p>DEPENDS -  <p>DEPENDS -
1339                                </p>                                </p>
# Line 1068  Intellectual Property and Copyright Stat Line 1350  Intellectual Property and Copyright Stat
1350                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1351  </p>  </p>
1352  </blockquote>  </blockquote>
1353                                
1354    
1355  <p>DEFAULT -  <p>DEFAULT -
1356                                </p>                                </p>
1357  <blockquote class="text">  <blockquote class="text">
1358  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
1359                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
1360                                  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,
1361                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
1362                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
1363                                  apostrophes (')                                  apostrophes (')
1364                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1365  </p>  </p>
1366  </blockquote>  </blockquote>
1367                                
1368    
1369  <p>RANGE_MIN -  <p>RANGE_MIN -
1370                                </p>                                </p>
# Line 1092  Intellectual Property and Copyright Stat Line 1376  Intellectual Property and Copyright Stat
1376                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1377  </p>  </p>
1378  </blockquote>  </blockquote>
1379                                
1380    
1381  <p>RANGE_MAX -  <p>RANGE_MAX -
1382                                </p>                                </p>
# Line 1103  Intellectual Property and Copyright Stat Line 1388  Intellectual Property and Copyright Stat
1388                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1389  </p>  </p>
1390  </blockquote>  </blockquote>
1391                                
1392    
1393  <p>POSSIBILITIES -  <p>POSSIBILITIES -
1394                                </p>                                </p>
# Line 1113  Intellectual Property and Copyright Stat Line 1399  Intellectual Property and Copyright Stat
1399                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
1400  </p>  </p>
1401  </blockquote>  </blockquote>
1402                                
1403    
1404  </blockquote>  </blockquote><p>
1405                        
1406    </p>
1407  <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.
1408  </p>  </p>
1409  <p>Examples:  <p>Examples:
1410  </p>  </p>
1411  <p></p>  <p>
1412                            </p>
1413  <blockquote class="text">  <blockquote class="text">
1414  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA CARD"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA CARD"
1415  </p>  </p>
# Line 1140  Intellectual Property and Copyright Stat Line 1429  Intellectual Property and Copyright Stat
1429  </p>  </p>
1430  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1431  </p>  </p>
1432  </blockquote>  </blockquote><p>
1433                        
1434  <p></p>  </p>
1435    <p>
1436                            </p>
1437  <blockquote class="text">  <blockquote class="text">
1438  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE"  <p>C: "GET AUDIO_OUTPUT_DRIVER_PARAMETER INFO ALSA SAMPLERATE"
1439  </p>  </p>
# Line 1162  Intellectual Property and Copyright Stat Line 1453  Intellectual Property and Copyright Stat
1453  </p>  </p>
1454  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1455  </p>  </p>
1456  </blockquote>  </blockquote><p>
1457                        
1458  <p></p>  </p>
1459    <p>
1460                            </p>
1461  <blockquote class="text">  <blockquote class="text">
1462  <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'"
1463  </p>  </p>
# Line 1188  Intellectual Property and Copyright Stat Line 1481  Intellectual Property and Copyright Stat
1481  </p>  </p>
1482  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1483  </p>  </p>
1484  </blockquote>  </blockquote><p>
1485                        
1486  <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>
1487    <a name="CREATE AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1488    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1489    <a name="rfc.section.6.2.5"></a><h3>6.2.5.&nbsp;
1490    Creating an audio output device</h3>
1491    
1492  <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:
1493  </p>  </p>
1494  <p></p>  <p>
1495                            </p>
1496  <blockquote class="text">  <blockquote class="text">
1497  <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;]
1498  </p>  </p>
1499  </blockquote>  </blockquote><p>
1500                        
1501    </p>
1502  <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
1503                      output system and &lt;param-list&gt; by an optional list of driver                      output system as returned by the
1504                        <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>
1505                        command and &lt;param-list&gt; by an optional list of driver
1506                      specific parameters in form of "key1=val1 key2=val2 ...", where                      specific parameters in form of "key1=val1 key2=val2 ...", where
1507                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
1508                      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 1511  Intellectual Property and Copyright Stat
1511  </p>  </p>
1512  <p>Possible Answers:  <p>Possible Answers:
1513  </p>  </p>
1514  <p></p>  <p>
1515                            </p>
1516  <blockquote class="text">  <blockquote class="text">
1517  <p>"OK[&lt;device-id&gt;]" -  <p>"OK[&lt;device-id&gt;]" -
1518                                  </p>                                  </p>
# Line 1219  Intellectual Property and Copyright Stat Line 1521  Intellectual Property and Copyright Stat
1521                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
1522  </p>  </p>
1523  </blockquote>  </blockquote>
1524                                
1525    
1526  <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;" -
1527                                  </p>                                  </p>
# Line 1231  Intellectual Property and Copyright Stat Line 1534  Intellectual Property and Copyright Stat
1534                                      warning message                                      warning message
1535  </p>  </p>
1536  </blockquote>  </blockquote>
1537                                
1538    
1539  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1540                                  </p>                                  </p>
# Line 1238  Intellectual Property and Copyright Stat Line 1542  Intellectual Property and Copyright Stat
1542  <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
1543  </p>  </p>
1544  </blockquote>  </blockquote>
1545                                
1546    
1547  </blockquote>  </blockquote><p>
1548                        
1549    </p>
1550  <p>Examples:  <p>Examples:
1551  </p>  </p>
1552  <p></p>  <p>
1553                            </p>
1554  <blockquote class="text">  <blockquote class="text">
1555  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA"
1556  </p>  </p>
1557  <p>S: "OK[0]"  <p>S: "OK[0]"
1558  </p>  </p>
1559  </blockquote>  </blockquote><p>
1560                        
1561  <p></p>  </p>
1562    <p>
1563                            </p>
1564  <blockquote class="text">  <blockquote class="text">
1565  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA CARD='2,0' SAMPLERATE=96000"  <p>C: "CREATE AUDIO_OUTPUT_DEVICE ALSA CARD='2,0' SAMPLERATE=96000"
1566  </p>  </p>
1567  <p>S: "OK[1]"  <p>S: "OK[1]"
1568  </p>  </p>
1569  </blockquote>  </blockquote><p>
1570                        
1571  <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>
1572    <a name="DESTROY AUDIO_OUTPUT_DEVICE"></a><br /><hr />
1573    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1574    <a name="rfc.section.6.2.6"></a><h3>6.2.6.&nbsp;
1575    Destroying an audio output device</h3>
1576    
1577  <p>Use the following command to destroy a created output device:  <p>Use the following command to destroy a created output device:
1578  </p>  </p>
1579  <p></p>  <p>
1580                            </p>
1581  <blockquote class="text">  <blockquote class="text">
1582  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;  <p>DESTROY AUDIO_OUTPUT_DEVICE &lt;device-id&gt;
1583  </p>  </p>
1584  </blockquote>  </blockquote><p>
1585                        
1586    </p>
1587  <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
1588                      audio output device as given by the                      audio output device as given by the
1589                      <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>
1590                      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>
1591                      command.                      command.
1592  </p>  </p>
1593  <p>Possible Answers:  <p>Possible Answers:
1594  </p>  </p>
1595  <p></p>  <p>
1596                            </p>
1597  <blockquote class="text">  <blockquote class="text">
1598  <p>"OK" -  <p>"OK" -
1599                                  </p>                                  </p>
# Line 1285  Intellectual Property and Copyright Stat Line 1601  Intellectual Property and Copyright Stat
1601  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
1602  </p>  </p>
1603  </blockquote>  </blockquote>
1604                                
1605    
1606  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1607                                  </p>                                  </p>
# Line 1296  Intellectual Property and Copyright Stat Line 1613  Intellectual Property and Copyright Stat
1613                                      warning code and warning message                                      warning code and warning message
1614  </p>  </p>
1615  </blockquote>  </blockquote>
1616                                
1617    
1618  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1619                                  </p>                                  </p>
# Line 1304  Intellectual Property and Copyright Stat Line 1622  Intellectual Property and Copyright Stat
1622                                      error message                                      error message
1623  </p>  </p>
1624  </blockquote>  </blockquote>
1625                                
1626    
1627  </blockquote>  </blockquote><p>
1628                        
1629    </p>
1630  <p>Example:  <p>Example:
1631  </p>  </p>
1632  <p></p>  <p>
1633                            </p>
1634  <blockquote class="text">  <blockquote class="text">
1635  <p>C: "DESTROY AUDIO_OUTPUT_DEVICE 0"  <p>C: "DESTROY AUDIO_OUTPUT_DEVICE 0"
1636  </p>  </p>
1637  <p>S: "OK"  <p>S: "OK"
1638  </p>  </p>
1639  </blockquote>  </blockquote><p>
1640                        
1641  <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>
1642    <a name="GET AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1643    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1644    <a name="rfc.section.6.2.7"></a><h3>6.2.7.&nbsp;
1645    Getting all created audio output device count</h3>
1646    
1647  <p>Use the following command to count all created audio output devices:  <p>Use the following command to count all created audio output devices:
1648  </p>  </p>
1649  <p></p>  <p>
1650                            </p>
1651  <blockquote class="text">  <blockquote class="text">
1652  <p>GET AUDIO_OUTPUT_DEVICES  <p>GET AUDIO_OUTPUT_DEVICES
1653  </p>  </p>
1654  </blockquote>  </blockquote><p>
1655                        
1656    </p>
1657  <p>Possible Answers:  <p>Possible Answers:
1658  </p>  </p>
1659  <p></p>  <p>
1660                            </p>
1661  <blockquote class="text">  <blockquote class="text">
1662  <p>LinuxSampler will answer by sending the current number of all  <p>LinuxSampler will answer by sending the current number of all
1663                              audio output devices.                              audio output devices.
1664  </p>  </p>
1665  </blockquote>  </blockquote><p>
1666                        
1667    </p>
1668  <p>Example:  <p>Example:
1669  </p>  </p>
1670  <p></p>  <p>
1671                            </p>
1672  <blockquote class="text">  <blockquote class="text">
1673  <p>C: "GET AUDIO_OUTPUT_DEVICES"  <p>C: "GET AUDIO_OUTPUT_DEVICES"
1674  </p>  </p>
1675  <p>S: "4"  <p>S: "4"
1676  </p>  </p>
1677  </blockquote>  </blockquote><p>
1678                        
1679  <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>
1680    <a name="LIST AUDIO_OUTPUT_DEVICES"></a><br /><hr />
1681    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1682    <a name="rfc.section.6.2.8"></a><h3>6.2.8.&nbsp;
1683    Getting all created audio output device list</h3>
1684    
1685  <p>Use the following command to list all created audio output devices:  <p>Use the following command to list all created audio output devices:
1686  </p>  </p>
1687  <p></p>  <p>
1688                            </p>
1689  <blockquote class="text">  <blockquote class="text">
1690  <p>LIST AUDIO_OUTPUT_DEVICES  <p>LIST AUDIO_OUTPUT_DEVICES
1691  </p>  </p>
1692  </blockquote>  </blockquote><p>
1693                        
1694    </p>
1695  <p>Possible Answers:  <p>Possible Answers:
1696  </p>  </p>
1697  <p></p>  <p>
1698                            </p>
1699  <blockquote class="text">  <blockquote class="text">
1700  <p>LinuxSampler will answer by sending a comma separated list with  <p>LinuxSampler will answer by sending a comma separated list with
1701                              the numerical IDs of all audio output devices.                              the numerical IDs of all audio output devices.
1702  </p>  </p>
1703  </blockquote>  </blockquote><p>
1704                        
1705    </p>
1706  <p>Example:  <p>Example:
1707  </p>  </p>
1708  <p></p>  <p>
1709                            </p>
1710  <blockquote class="text">  <blockquote class="text">
1711  <p>C: "LIST AUDIO_OUTPUT_DEVICES"  <p>C: "LIST AUDIO_OUTPUT_DEVICES"
1712  </p>  </p>
1713  <p>S: "0,1,4,5"  <p>S: "0,1,4,5"
1714  </p>  </p>
1715  </blockquote>  </blockquote><p>
1716                        
1717  <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>
1718    <a name="GET AUDIO_OUTPUT_DEVICE INFO"></a><br /><hr />
1719    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1720    <a name="rfc.section.6.2.9"></a><h3>6.2.9.&nbsp;
1721    Getting current settings of an audio output device</h3>
1722    
1723  <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:
1724  </p>  </p>
1725  <p></p>  <p>
1726                            </p>
1727  <blockquote class="text">  <blockquote class="text">
1728  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;  <p>GET AUDIO_OUTPUT_DEVICE INFO &lt;device-id&gt;
1729  </p>  </p>
1730  </blockquote>  </blockquote><p>
1731                        
1732    </p>
1733  <p>Where &lt;device-id&gt; should be replaced by numerical ID  <p>Where &lt;device-id&gt; should be replaced by numerical ID
1734                      of the audio output device as e.g. returned by the                      of the audio output device as e.g. returned by the
1735                      <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.
1736  </p>  </p>
1737  <p>Possible Answers:  <p>Possible Answers:
1738  </p>  </p>
# Line 1399  Intellectual Property and Copyright Stat Line 1744  Intellectual Property and Copyright Stat
1744                      encapsulated into apostrophes ('). At the moment the following                      encapsulated into apostrophes ('). At the moment the following
1745                      information categories are defined (independently of device):                      information categories are defined (independently of device):
1746  </p>  </p>
1747  <p></p>  <p>
1748                            </p>
1749  <blockquote class="text">  <blockquote class="text">
1750  <p>DRIVER -  <p>DRIVER -
1751                                  </p>                                  </p>
1752  <blockquote class="text">  <blockquote class="text">
1753  <p>identifier of the used audio output driver, as also  <p>identifier of the used audio output driver, as also
1754                                      returned by the                                      returned by the
1755                                      <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>
1756                                      command                                      command
1757  </p>  </p>
1758  </blockquote>  </blockquote>
1759                                
1760    
1761  <p>CHANNELS -  <p>CHANNELS -
1762                                  </p>                                  </p>
# Line 1418  Intellectual Property and Copyright Stat Line 1765  Intellectual Property and Copyright Stat
1765                                      offers                                      offers
1766  </p>  </p>
1767  </blockquote>  </blockquote>
1768                                
1769    
1770  <p>SAMPLERATE -  <p>SAMPLERATE -
1771                                  </p>                                  </p>
# Line 1425  Intellectual Property and Copyright Stat Line 1773  Intellectual Property and Copyright Stat
1773  <p>playback sample rate the device uses  <p>playback sample rate the device uses
1774  </p>  </p>
1775  </blockquote>  </blockquote>
1776                                
1777    
1778  <p>ACTIVE -  <p>ACTIVE -
1779                                  </p>                                  </p>
# Line 1435  Intellectual Property and Copyright Stat Line 1784  Intellectual Property and Copyright Stat
1784                                      any audio                                      any audio
1785  </p>  </p>
1786  </blockquote>  </blockquote>
1787                                
1788    
1789  </blockquote>  </blockquote><p>
1790                        
1791    </p>
1792  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1793                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1794                      returned by all audio output devices. Every audio output driver                      returned by all audio output devices. Every audio output driver
1795                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
1796                      <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>)
1797                      which are also returned by this command.                      which are also returned by this command.
1798  </p>  </p>
1799  <p>Example:  <p>Example:
1800  </p>  </p>
1801  <p></p>  <p>
1802                            </p>
1803  <blockquote class="text">  <blockquote class="text">
1804  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"  <p>C: "GET AUDIO_OUTPUT_DEVICE INFO 0"
1805  </p>  </p>
# Line 1467  Intellectual Property and Copyright Stat Line 1819  Intellectual Property and Copyright Stat
1819  </p>  </p>
1820  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1821  </p>  </p>
1822  </blockquote>  </blockquote><p>
1823                        
1824  <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>
1825    <a name="SET AUDIO_OUTPUT_DEVICE_PARAMETER"></a><br /><hr />
1826    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1827    <a name="rfc.section.6.2.10"></a><h3>6.2.10.&nbsp;
1828    Changing settings of audio output devices</h3>
1829    
1830  <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:
1831  </p>  </p>
1832  <p></p>  <p>
1833                            </p>
1834  <blockquote class="text">  <blockquote class="text">
1835  <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;
1836  </p>  </p>
1837  </blockquote>  </blockquote><p>
1838                        
1839    </p>
1840  <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
1841                      audio output device, &lt;key&gt; by the name of the parameter to change                      audio output device as given by the
1842                        <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>
1843                        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>
1844                        command, &lt;key&gt; by the name of the parameter to change
1845                      and &lt;value&gt; by the new value for this parameter.                      and &lt;value&gt; by the new value for this parameter.
1846  </p>  </p>
1847  <p>Possible Answers:  <p>Possible Answers:
1848  </p>  </p>
1849  <p></p>  <p>
1850                            </p>
1851  <blockquote class="text">  <blockquote class="text">
1852  <p>"OK" -  <p>"OK" -
1853                                  </p>                                  </p>
# Line 1493  Intellectual Property and Copyright Stat Line 1855  Intellectual Property and Copyright Stat
1855  <p>in case setting was successfully changed  <p>in case setting was successfully changed
1856  </p>  </p>
1857  </blockquote>  </blockquote>
1858                                
1859    
1860  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
1861                                  </p>                                  </p>
# Line 1502  Intellectual Property and Copyright Stat Line 1865  Intellectual Property and Copyright Stat
1865                                      warning code and warning message                                      warning code and warning message
1866  </p>  </p>
1867  </blockquote>  </blockquote>
1868                                
1869    
1870  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
1871                                  </p>                                  </p>
# Line 1510  Intellectual Property and Copyright Stat Line 1874  Intellectual Property and Copyright Stat
1874                                      error message                                      error message
1875  </p>  </p>
1876  </blockquote>  </blockquote>
1877                                
1878    
1879  </blockquote>  </blockquote><p>
1880                        
1881    </p>
1882  <p>Example:  <p>Example:
1883  </p>  </p>
1884  <p></p>  <p>
1885                            </p>
1886  <blockquote class="text">  <blockquote class="text">
1887  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 FRAGMENTSIZE=128"  <p>C: "SET AUDIO_OUTPUT_DEVICE_PARAMETER 0 FRAGMENTSIZE=128"
1888  </p>  </p>
1889  <p>S: "OK"  <p>S: "OK"
1890  </p>  </p>
1891  </blockquote>  </blockquote><p>
1892                        
1893  <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>
1894    <a name="GET AUDIO_OUTPUT_CHANNEL INFO"></a><br /><hr />
1895    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
1896    <a name="rfc.section.6.2.11"></a><h3>6.2.11.&nbsp;
1897    Getting information about an audio channel</h3>
1898    
1899  <p>Use the following command to get information about an audio channel:  <p>Use the following command to get information about an audio channel:
1900  </p>  </p>
1901  <p></p>  <p>
1902                            </p>
1903  <blockquote class="text">  <blockquote class="text">
1904  <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;
1905  </p>  </p>
1906  </blockquote>  </blockquote><p>
1907                        
1908  <p>Where &lt;device-id&gt; is the numerical ID of the audio output device  </p>
1909                      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
1910                        <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>
1911                        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>
1912                        command and &lt;audio-chan&gt; the audio channel number.
1913  </p>  </p>
1914  <p>Possible Answers:  <p>Possible Answers:
1915  </p>  </p>
1916  <p></p>  <p>
1917                            </p>
1918  <blockquote class="text">  <blockquote class="text">
1919  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
1920                              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 1922  Intellectual Property and Copyright Stat
1922                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
1923                              the following information categories are defined:                              the following information categories are defined:
1924  </p>  </p>
1925  <p></p>  <p>
1926                                    </p>
1927  <blockquote class="text">  <blockquote class="text">
1928  <p>NAME -  <p>NAME -
1929                                          </p>                                          </p>
# Line 1555  Intellectual Property and Copyright Stat Line 1932  Intellectual Property and Copyright Stat
1932                                              doesn't have to be unique (always returned by all audio channels)                                              doesn't have to be unique (always returned by all audio channels)
1933  </p>  </p>
1934  </blockquote>  </blockquote>
1935                                        
1936    
1937  <p>IS_MIX_CHANNEL -  <p>IS_MIX_CHANNEL -
1938                                          </p>                                          </p>
# Line 1567  Intellectual Property and Copyright Stat Line 1945  Intellectual Property and Copyright Stat
1945                                              (always returned by all audio channels)                                              (always returned by all audio channels)
1946  </p>  </p>
1947  </blockquote>  </blockquote>
1948                                        
1949    
1950  <p>MIX_CHANNEL_DESTINATION -  <p>MIX_CHANNEL_DESTINATION -
1951                                          </p>                                          </p>
# Line 1578  Intellectual Property and Copyright Stat Line 1957  Intellectual Property and Copyright Stat
1957                                              (only returned in case the audio channel is mix channel)                                              (only returned in case the audio channel is mix channel)
1958  </p>  </p>
1959  </blockquote>  </blockquote>
1960                                        
1961    
1962  </blockquote>  </blockquote>
1963                                
1964    
1965  </blockquote>  </blockquote><p>
1966                        
1967    </p>
1968  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
1969                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
1970                      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 1974  Intellectual Property and Copyright Stat
1974  </p>  </p>
1975  <p>Examples:  <p>Examples:
1976  </p>  </p>
1977  <p></p>  <p>
1978                            </p>
1979  <blockquote class="text">  <blockquote class="text">
1980  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 0"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 0"
1981  </p>  </p>
# Line 1602  Intellectual Property and Copyright Stat Line 1985  Intellectual Property and Copyright Stat
1985  </p>  </p>
1986  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
1987  </p>  </p>
1988  </blockquote>  </blockquote><p>
1989                        
1990  <p></p>  </p>
1991    <p>
1992                            </p>
1993  <blockquote class="text">  <blockquote class="text">
1994  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 1"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 1"
1995  </p>  </p>
# Line 1614  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 0 2"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 0 2"
2009  </p>  </p>
# Line 1628  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  <p></p>  </p>
2021    <p>
2022                            </p>
2023  <blockquote class="text">  <blockquote class="text">
2024  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 1 0"  <p>C: "GET AUDIO_OUTPUT_CHANNEL INFO 1 0"
2025  </p>  </p>
# Line 1642  Intellectual Property and Copyright Stat Line 2031  Intellectual Property and Copyright Stat
2031  </p>  </p>
2032  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2033  </p>  </p>
2034  </blockquote>  </blockquote><p>
2035                        
2036  <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>
2037    <a name="GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO"></a><br /><hr />
2038    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2039    <a name="rfc.section.6.2.12"></a><h3>6.2.12.&nbsp;
2040    Getting information about specific audio channel parameter</h3>
2041    
2042  <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:
2043  </p>  </p>
2044  <p></p>  <p>
2045                            </p>
2046  <blockquote class="text">  <blockquote class="text">
2047  <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;
2048  </p>  </p>
2049  </blockquote>  </blockquote><p>
2050                        
2051  <p>Where &lt;dev-id&gt; is the numerical ID of the audio output device as returned  </p>
2052                      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
2053                        <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>
2054                        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>
2055                      command, &lt;chan&gt; the audio channel number                      command, &lt;chan&gt; the audio channel number
2056                      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
2057                      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).
2058  </p>  </p>
2059  <p>Possible Answers:  <p>Possible Answers:
2060  </p>  </p>
2061  <p></p>  <p>
2062                            </p>
2063  <blockquote class="text">  <blockquote class="text">
2064  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2065                              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 2070  Intellectual Property and Copyright Stat
2070                              which is only shown dependently to the given audio channel. At                              which is only shown dependently to the given audio channel. At
2071                              the moment the following information categories are defined:                              the moment the following information categories are defined:
2072  </p>  </p>
2073  <p></p>  <p>
2074                                    </p>
2075  <blockquote class="text">  <blockquote class="text">
2076  <p>TYPE -  <p>TYPE -
2077                                          </p>                                          </p>
# Line 1684  Intellectual Property and Copyright Stat Line 2082  Intellectual Property and Copyright Stat
2082                                              (always returned)                                              (always returned)
2083  </p>  </p>
2084  </blockquote>  </blockquote>
2085                                        
2086    
2087  <p>DESCRIPTION -  <p>DESCRIPTION -
2088                                          </p>                                          </p>
# Line 1691  Intellectual Property and Copyright Stat Line 2090  Intellectual Property and Copyright Stat
2090  <p>arbitrary text describing the purpose of the parameter (always returned)  <p>arbitrary text describing the purpose of the parameter (always returned)
2091  </p>  </p>
2092  </blockquote>  </blockquote>
2093                                        
2094    
2095  <p>FIX -  <p>FIX -
2096                                          </p>                                          </p>
# Line 1700  Intellectual Property and Copyright Stat Line 2100  Intellectual Property and Copyright Stat
2100                                              (always returned)                                              (always returned)
2101  </p>  </p>
2102  </blockquote>  </blockquote>
2103                                        
2104    
2105  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2106                                          </p>                                          </p>
# Line 1710  Intellectual Property and Copyright Stat Line 2111  Intellectual Property and Copyright Stat
2111                                              (always returned)                                              (always returned)
2112  </p>  </p>
2113  </blockquote>  </blockquote>
2114                                        
2115    
2116  <p>RANGE_MIN -  <p>RANGE_MIN -
2117                                          </p>                                          </p>
# Line 1722  Intellectual Property and Copyright Stat Line 2124  Intellectual Property and Copyright Stat
2124                                              parameter)                                              parameter)
2125  </p>  </p>
2126  </blockquote>  </blockquote>
2127                                        
2128    
2129  <p>RANGE_MAX -  <p>RANGE_MAX -
2130                                          </p>                                          </p>
# Line 1734  Intellectual Property and Copyright Stat Line 2137  Intellectual Property and Copyright Stat
2137                                              parameter)                                              parameter)
2138  </p>  </p>
2139  </blockquote>  </blockquote>
2140                                        
2141    
2142  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2143                                          </p>                                          </p>
# Line 1745  Intellectual Property and Copyright Stat Line 2149  Intellectual Property and Copyright Stat
2149                                              parameter)                                              parameter)
2150  </p>  </p>
2151  </blockquote>  </blockquote>
2152                                        
2153    
2154  </blockquote>  </blockquote>
2155                                
2156    
2157  <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.
2158  </p>  </p>
2159  </blockquote>  </blockquote><p>
2160                        
2161    </p>
2162  <p>Example:  <p>Example:
2163  </p>  </p>
2164  <p></p>  <p>
2165                            </p>
2166  <blockquote class="text">  <blockquote class="text">
2167  <p>C: "GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 1 0 JACK_BINDINGS"  <p>C: "GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 1 0 JACK_BINDINGS"
2168  </p>  </p>
# Line 1770  Intellectual Property and Copyright Stat Line 2178  Intellectual Property and Copyright Stat
2178  </p>  </p>
2179  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2180  </p>  </p>
2181  </blockquote>  </blockquote><p>
2182                        
2183  <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>
2184    <a name="SET AUDIO_OUTPUT_CHANNEL_PARAMETER"></a><br /><hr />
2185    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2186    <a name="rfc.section.6.2.13"></a><h3>6.2.13.&nbsp;
2187    Changing settings of audio output channels</h3>
2188    
2189  <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:
2190  </p>  </p>
2191  <p></p>  <p>
2192                            </p>
2193  <blockquote class="text">  <blockquote class="text">
2194  <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;
2195  </p>  </p>
2196  </blockquote>  </blockquote><p>
2197                        
2198  <p>Where &lt;dev-id&gt; should be replaced by the numerical ID of the audio  </p>
2199                      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
2200                        <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>
2201                        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>
2202                        command, &lt;chn&gt; by the audio channel number, &lt;key&gt; by the name of the
2203                      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.
2204  </p>  </p>
2205  <p>Possible Answers:  <p>Possible Answers:
2206  </p>  </p>
2207  <p></p>  <p>
2208                            </p>
2209  <blockquote class="text">  <blockquote class="text">
2210  <p>"OK" -  <p>"OK" -
2211                                  </p>                                  </p>
# Line 1796  Intellectual Property and Copyright Stat Line 2213  Intellectual Property and Copyright Stat
2213  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2214  </p>  </p>
2215  </blockquote>  </blockquote>
2216                                
2217    
2218  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2219                                  </p>                                  </p>
# Line 1805  Intellectual Property and Copyright Stat Line 2223  Intellectual Property and Copyright Stat
2223                                     warning code and warning message                                     warning code and warning message
2224  </p>  </p>
2225  </blockquote>  </blockquote>
2226                                
2227    
2228  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2229                                  </p>                                  </p>
# Line 1813  Intellectual Property and Copyright Stat Line 2232  Intellectual Property and Copyright Stat
2232                                     error message                                     error message
2233  </p>  </p>
2234  </blockquote>  </blockquote>
2235                                
2236    
2237  </blockquote>  </blockquote><p>
2238                        
2239    </p>
2240  <p>Example:  <p>Example:
2241  </p>  </p>
2242  <p></p>  <p>
2243                            </p>
2244  <blockquote class="text">  <blockquote class="text">
2245  <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'"
2246  </p>  </p>
2247  <p>S: "OK"  <p>S: "OK"
2248  </p>  </p>
2249  </blockquote>  </blockquote><p>
2250                        
2251  <p></p>  </p>
2252    <p>
2253                            </p>
2254  <blockquote class="text">  <blockquote class="text">
2255  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 NAME='monitor left'"  <p>C: "SET AUDIO_OUTPUT_CHANNEL PARAMETER 0 0 NAME='monitor left'"
2256  </p>  </p>
2257  <p>S: "OK"  <p>S: "OK"
2258  </p>  </p>
2259  </blockquote>  </blockquote><p>
2260                        
2261  <a name="rfc.section.5.3"></a><h4><a name="anchor11">5.3</a>&nbsp;Configuring MIDI input drivers</h4>  </p>
2262    <a name="anchor10"></a><br /><hr />
2263    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2264    <a name="rfc.section.6.3"></a><h3>6.3.&nbsp;
2265    Configuring MIDI input drivers</h3>
2266    
2267  <p>Instances of drivers in LinuxSampler are called devices. You can use  <p>Instances of drivers in LinuxSampler are called devices. You can use
2268                  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 2290  Intellectual Property and Copyright Stat
2290                  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
2291                  possible values, etc.                  possible values, etc.
2292  </p>  </p>
2293  <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 />
2294    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2295    <a name="rfc.section.6.3.1"></a><h3>6.3.1.&nbsp;
2296    Getting amount of available MIDI input drivers</h3>
2297    
2298  <p>Use the following command to get the number of  <p>Use the following command to get the number of
2299                      MIDI input drivers currently available for the                      MIDI input drivers currently available for the
2300                      LinuxSampler instance:                      LinuxSampler instance:
2301  </p>  </p>
2302  <p></p>  <p>
2303                            </p>
2304  <blockquote class="text">  <blockquote class="text">
2305  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS  <p>GET AVAILABLE_MIDI_INPUT_DRIVERS
2306  </p>  </p>
2307  </blockquote>  </blockquote><p>
2308                        
2309    </p>
2310  <p>Possible Answers:  <p>Possible Answers:
2311  </p>  </p>
2312  <p></p>  <p>
2313                            </p>
2314  <blockquote class="text">  <blockquote class="text">
2315  <p>LinuxSampler will answer by sending the  <p>LinuxSampler will answer by sending the
2316                              number of available MIDI input drivers.                              number of available MIDI input drivers.
2317  </p>  </p>
2318  </blockquote>  </blockquote><p>
2319                        
2320    </p>
2321  <p>Example:  <p>Example:
2322  </p>  </p>
2323  <p></p>  <p>
2324                            </p>
2325  <blockquote class="text">  <blockquote class="text">
2326  <p>C: "GET AVAILABLE_MIDI_INPUT_DRIVERS"  <p>C: "GET AVAILABLE_MIDI_INPUT_DRIVERS"
2327  </p>  </p>
2328  <p>S: "2"  <p>S: "2"
2329  </p>  </p>
2330  </blockquote>  </blockquote><p>
2331                        
2332  <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>
2333    <a name="LIST AVAILABLE_MIDI_INPUT_DRIVERS"></a><br /><hr />
2334    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2335    <a name="rfc.section.6.3.2"></a><h3>6.3.2.&nbsp;
2336    Getting all available MIDI input drivers</h3>
2337    
2338  <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
2339                      for the LinuxSampler instance:                      for the LinuxSampler instance:
2340  </p>  </p>
2341  <p></p>  <p>
2342                            </p>
2343  <blockquote class="text">  <blockquote class="text">
2344  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS  <p>LIST AVAILABLE_MIDI_INPUT_DRIVERS
2345  </p>  </p>
2346  </blockquote>  </blockquote><p>
2347                        
2348    </p>
2349  <p>Possible Answers:  <p>Possible Answers:
2350  </p>  </p>
2351  <p></p>  <p>
2352                            </p>
2353  <blockquote class="text">  <blockquote class="text">
2354  <p>LinuxSampler will answer by sending comma separated character  <p>LinuxSampler will answer by sending comma separated character
2355                              strings, each symbolizing a MIDI input driver.                              strings, each symbolizing a MIDI input driver.
2356  </p>  </p>
2357  </blockquote>  </blockquote><p>
2358                        
2359    </p>
2360  <p>Example:  <p>Example:
2361  </p>  </p>
2362  <p></p>  <p>
2363                            </p>
2364  <blockquote class="text">  <blockquote class="text">
2365  <p>C: "LIST AVAILABLE_MIDI_INPUT_DRIVERS"  <p>C: "LIST AVAILABLE_MIDI_INPUT_DRIVERS"
2366  </p>  </p>
2367  <p>S: "ALSA,JACK"  <p>S: "ALSA,JACK"
2368  </p>  </p>
2369  </blockquote>  </blockquote><p>
2370                        
2371  <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>
2372    <a name="GET MIDI_INPUT_DRIVER INFO"></a><br /><hr />
2373    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2374    <a name="rfc.section.6.3.3"></a><h3>6.3.3.&nbsp;
2375    Getting information about a specific MIDI input driver</h3>
2376    
2377  <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:
2378  </p>  </p>
2379  <p></p>  <p>
2380                            </p>
2381  <blockquote class="text">  <blockquote class="text">
2382  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;  <p>GET MIDI_INPUT_DRIVER INFO &lt;midi-input-driver&gt;
2383  </p>  </p>
2384  </blockquote>  </blockquote><p>
2385                        
2386  <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver.  </p>
2387    <p>Where &lt;midi-input-driver&gt; is the name of the MIDI input driver as returned
2388                        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.
2389  </p>  </p>
2390  <p>Possible Answers:  <p>Possible Answers:
2391  </p>  </p>
2392  <p></p>  <p>
2393                            </p>
2394  <blockquote class="text">  <blockquote class="text">
2395  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2396                              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 2398  Intellectual Property and Copyright Stat
2398                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
2399                              the following information categories are defined:                              the following information categories are defined:
2400  </p>  </p>
2401  <p></p>  <p>
2402                                    </p>
2403  <blockquote class="text">  <blockquote class="text">
2404  <p>DESCRIPTION -  <p>DESCRIPTION -
2405                                          </p>                                          </p>
# Line 1953  Intellectual Property and Copyright Stat Line 2407  Intellectual Property and Copyright Stat
2407  <p>arbitrary description text about the MIDI input driver  <p>arbitrary description text about the MIDI input driver
2408  </p>  </p>
2409  </blockquote>  </blockquote>
2410                                        
2411    
2412  <p>VERSION -  <p>VERSION -
2413                                          </p>                                          </p>
# Line 1960  Intellectual Property and Copyright Stat Line 2415  Intellectual Property and Copyright Stat
2415  <p>arbitrary character string regarding the driver's version  <p>arbitrary character string regarding the driver's version
2416  </p>  </p>
2417  </blockquote>  </blockquote>
2418                                        
2419    
2420  <p>PARAMETERS -  <p>PARAMETERS -
2421                                          </p>                                          </p>
# Line 1967  Intellectual Property and Copyright Stat Line 2423  Intellectual Property and Copyright Stat
2423  <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
2424  </p>  </p>
2425  </blockquote>  </blockquote>
2426                                        
2427    
2428  </blockquote>  </blockquote>
2429                                
2430    
2431  <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.
2432  </p>  </p>
2433  </blockquote>  </blockquote><p>
2434                        
2435    </p>
2436  <p>Example:  <p>Example:
2437  </p>  </p>
2438  <p></p>  <p>
2439                            </p>
2440  <blockquote class="text">  <blockquote class="text">
2441  <p>C: "GET MIDI_INPUT_DRIVER INFO ALSA"  <p>C: "GET MIDI_INPUT_DRIVER INFO ALSA"
2442  </p>  </p>
# Line 1988  Intellectual Property and Copyright Stat Line 2448  Intellectual Property and Copyright Stat
2448  </p>  </p>
2449  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2450  </p>  </p>
2451  </blockquote>  </blockquote><p>
2452                        
2453  <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>
2454    <a name="GET MIDI_INPUT_DRIVER_PARAMETER INFO"></a><br /><hr />
2455    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2456    <a name="rfc.section.6.3.4"></a><h3>6.3.4.&nbsp;
2457    Getting information about specific MIDI input driver parameter</h3>
2458    
2459  <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:
2460  </p>  </p>
2461  <p></p>  <p>
2462                            </p>
2463  <blockquote class="text">  <blockquote class="text">
2464  <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;]
2465  </p>  </p>
2466  </blockquote>  </blockquote><p>
2467                        
2468    </p>
2469  <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
2470                      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
2471                      parameter name for which information should be obtained (as returned by the                      parameter name for which information should be obtained (as returned by the
2472                      <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
2473                      of parameters on which the sought parameter &lt;param&gt; depends on,                      of parameters on which the sought parameter &lt;param&gt; depends on,
2474                      &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 ...",
2475                      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 2488  Intellectual Property and Copyright Stat
2488                      which is only shown dependent to given driver parameter. At                      which is only shown dependent to given driver parameter. At
2489                      the moment the following information categories are defined:                      the moment the following information categories are defined:
2490  </p>  </p>
2491  <p></p>  <p>
2492                            </p>
2493  <blockquote class="text">  <blockquote class="text">
2494  <p>TYPE -  <p>TYPE -
2495                                </p>                                </p>
# Line 2033  Intellectual Property and Copyright Stat Line 2500  Intellectual Property and Copyright Stat
2500                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2501  </p>  </p>
2502  </blockquote>  </blockquote>
2503                                
2504    
2505  <p>DESCRIPTION -  <p>DESCRIPTION -
2506                                </p>                                </p>
# Line 2041  Intellectual Property and Copyright Stat Line 2509  Intellectual Property and Copyright Stat
2509                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2510  </p>  </p>
2511  </blockquote>  </blockquote>
2512                                
2513    
2514  <p>MANDATORY -  <p>MANDATORY -
2515                                </p>                                </p>
2516  <blockquote class="text">  <blockquote class="text">
2517  <p>either true or false, defines if this parameter must be  <p>either true or false, defines if this parameter must be
2518                                  given when the device is to be created with the                                  given when the device is to be created with the
2519                                  <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
2520                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2521  </p>  </p>
2522  </blockquote>  </blockquote>
2523                                
2524    
2525  <p>FIX -  <p>FIX -
2526                                </p>                                </p>
2527  <blockquote class="text">  <blockquote class="text">
2528  <p>either true or false, if false then this parameter can  <p>either true or false, if false then this parameter can
2529                                  be changed at any time, once the device is created by                                  be changed at any time, once the device is created by
2530                                  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
2531                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2532  </p>  </p>
2533  </blockquote>  </blockquote>
2534                                
2535    
2536  <p>MULTIPLICITY -  <p>MULTIPLICITY -
2537                                </p>                                </p>
# Line 2071  Intellectual Property and Copyright Stat Line 2542  Intellectual Property and Copyright Stat
2542                                  (always returned, no matter which driver parameter)                                  (always returned, no matter which driver parameter)
2543  </p>  </p>
2544  </blockquote>  </blockquote>
2545                                
2546    
2547  <p>DEPENDS -  <p>DEPENDS -
2548                                </p>                                </p>
# Line 2087  Intellectual Property and Copyright Stat Line 2559  Intellectual Property and Copyright Stat
2559                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2560  </p>  </p>
2561  </blockquote>  </blockquote>
2562                                
2563    
2564  <p>DEFAULT -  <p>DEFAULT -
2565                                </p>                                </p>
2566  <blockquote class="text">  <blockquote class="text">
2567  <p>reflects the default value for this parameter which is  <p>reflects the default value for this parameter which is
2568                                  used when the device is created and not explicitly                                  used when the device is created and not explicitly
2569                                  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,
2570                                  in case of MULTIPLCITY=true, this is a comma separated                                  in case of MULTIPLCITY=true, this is a comma separated
2571                                  list, that's why character strings are encapsulated into                                  list, that's why character strings are encapsulated into
2572                                  apostrophes (')                                  apostrophes (')
2573                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2574  </p>  </p>
2575  </blockquote>  </blockquote>
2576                                
2577    
2578  <p>RANGE_MIN -  <p>RANGE_MIN -
2579                                </p>                                </p>
# Line 2111  Intellectual Property and Copyright Stat Line 2585  Intellectual Property and Copyright Stat
2585                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2586  </p>  </p>
2587  </blockquote>  </blockquote>
2588                                
2589    
2590  <p>RANGE_MAX -  <p>RANGE_MAX -
2591                                </p>                                </p>
# Line 2122  Intellectual Property and Copyright Stat Line 2597  Intellectual Property and Copyright Stat
2597                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2598  </p>  </p>
2599  </blockquote>  </blockquote>
2600                                
2601    
2602  <p>POSSIBILITIES -  <p>POSSIBILITIES -
2603                                </p>                                </p>
# Line 2132  Intellectual Property and Copyright Stat Line 2608  Intellectual Property and Copyright Stat
2608                                  (optionally returned, dependent to driver parameter)                                  (optionally returned, dependent to driver parameter)
2609  </p>  </p>
2610  </blockquote>  </blockquote>
2611                                
2612    
2613  </blockquote>  </blockquote><p>
2614                        
2615    </p>
2616  <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.
2617  </p>  </p>
2618  <p>Example:  <p>Example:
2619  </p>  </p>
2620  <p></p>  <p>
2621                            </p>
2622  <blockquote class="text">  <blockquote class="text">
2623  <p>C: "GET MIDI_INPUT_DRIVER_PARAMETER INFO ALSA ACTIVE"  <p>C: "GET MIDI_INPUT_DRIVER_PARAMETER INFO ALSA ACTIVE"
2624  </p>  </p>
# Line 2157  Intellectual Property and Copyright Stat Line 2636  Intellectual Property and Copyright Stat
2636  </p>  </p>
2637  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2638  </p>  </p>
2639  </blockquote>  </blockquote><p>
2640                        
2641  <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>
2642    <a name="CREATE MIDI_INPUT_DEVICE"></a><br /><hr />
2643    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2644    <a name="rfc.section.6.3.5"></a><h3>6.3.5.&nbsp;
2645    Creating a MIDI input device</h3>
2646    
2647  <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:
2648  </p>  </p>
2649  <p></p>  <p>
2650                            </p>
2651  <blockquote class="text">  <blockquote class="text">
2652  <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;]
2653  </p>  </p>
2654  </blockquote>  </blockquote><p>
2655                        
2656  <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system and &lt;param-list&gt; by an  </p>
2657    <p>Where &lt;midi-input-driver&gt; should be replaced by the desired MIDI input system as returned
2658                        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
2659                      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
2660                      character string values should be encapsulated into apostrophes (').                      character string values should be encapsulated into apostrophes (').
2661                      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 2664  Intellectual Property and Copyright Stat
2664  </p>  </p>
2665  <p>Possible Answers:  <p>Possible Answers:
2666  </p>  </p>
2667  <p></p>  <p>
2668                            </p>
2669  <blockquote class="text">  <blockquote class="text">
2670  <p>"OK[&lt;device-id&gt;]" -  <p>"OK[&lt;device-id&gt;]" -
2671                                  </p>                                  </p>
# Line 2187  Intellectual Property and Copyright Stat Line 2674  Intellectual Property and Copyright Stat
2674                                      &lt;device-id&gt; is the numerical ID of the new device                                      &lt;device-id&gt; is the numerical ID of the new device
2675  </p>  </p>
2676  </blockquote>  </blockquote>
2677                                
2678    
2679  <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;" -
2680                                  </p>                                  </p>
# Line 2197  Intellectual Property and Copyright Stat Line 2685  Intellectual Property and Copyright Stat
2685                                      appropriate warning code and warning message                                      appropriate warning code and warning message
2686  </p>  </p>
2687  </blockquote>  </blockquote>
2688                                
2689    
2690  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2691                                  </p>                                  </p>
# Line 2204  Intellectual Property and Copyright Stat Line 2693  Intellectual Property and Copyright Stat
2693  <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
2694  </p>  </p>
2695  </blockquote>  </blockquote>
2696                                
2697    
2698  </blockquote>  </blockquote><p>
2699                        
2700    </p>
2701  <p>Example:  <p>Example:
2702  </p>  </p>
2703  <p></p>  <p>
2704                            </p>
2705  <blockquote class="text">  <blockquote class="text">
2706  <p>C: "CREATE MIDI_INPUT_DEVICE ALSA"  <p>C: "CREATE MIDI_INPUT_DEVICE ALSA"
2707  </p>  </p>
2708  <p>S: "OK[0]"  <p>S: "OK[0]"
2709  </p>  </p>
2710  </blockquote>  </blockquote><p>
2711                        
2712  <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>
2713    <a name="DESTROY MIDI_INPUT_DEVICE"></a><br /><hr />
2714    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2715    <a name="rfc.section.6.3.6"></a><h3>6.3.6.&nbsp;
2716    Destroying a MIDI input device</h3>
2717    
2718  <p>Use the following command to destroy a created MIDI input device:  <p>Use the following command to destroy a created MIDI input device:
2719  </p>  </p>
2720  <p></p>  <p>
2721                            </p>
2722  <blockquote class="text">  <blockquote class="text">
2723  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;  <p>DESTROY MIDI_INPUT_DEVICE &lt;device-id&gt;
2724  </p>  </p>
2725  </blockquote>  </blockquote><p>
2726                        
2727  <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID.  </p>
2728    <p>Where &lt;device-id&gt; should be replaced by the device's numerical ID as returned by the
2729                        <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>
2730                        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>
2731                        command.
2732  </p>  </p>
2733  <p>Possible Answers:  <p>Possible Answers:
2734  </p>  </p>
2735  <p></p>  <p>
2736                            </p>
2737  <blockquote class="text">  <blockquote class="text">
2738  <p>"OK" -  <p>"OK" -
2739                                  </p>                                  </p>
# Line 2239  Intellectual Property and Copyright Stat Line 2741  Intellectual Property and Copyright Stat
2741  <p>in case the device was successfully destroyed  <p>in case the device was successfully destroyed
2742  </p>  </p>
2743  </blockquote>  </blockquote>
2744                                
2745    
2746  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2747                                  </p>                                  </p>
# Line 2248  Intellectual Property and Copyright Stat Line 2751  Intellectual Property and Copyright Stat
2751                                      warning message                                      warning message
2752  </p>  </p>
2753  </blockquote>  </blockquote>
2754                                
2755    
2756  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
2757                                  </p>                                  </p>
# Line 2255  Intellectual Property and Copyright Stat Line 2759  Intellectual Property and Copyright Stat
2759  <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
2760  </p>  </p>
2761  </blockquote>  </blockquote>
2762                                
2763    
2764  </blockquote>  </blockquote><p>
2765                        
2766    </p>
2767  <p>Example:  <p>Example:
2768  </p>  </p>
2769  <p></p>  <p>
2770                            </p>
2771  <blockquote class="text">  <blockquote class="text">
2772  <p>C: "DESTROY MIDI_INPUT_DEVICE 0"  <p>C: "DESTROY MIDI_INPUT_DEVICE 0"
2773  </p>  </p>
2774  <p>S: "OK"  <p>S: "OK"
2775  </p>  </p>
2776  </blockquote>  </blockquote><p>
2777                        
2778  <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>
2779    <a name="GET MIDI_INPUT_DEVICES"></a><br /><hr />
2780    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2781    <a name="rfc.section.6.3.7"></a><h3>6.3.7.&nbsp;
2782    Getting all created MIDI input device count</h3>
2783    
2784  <p>Use the following command to count all created MIDI input devices:  <p>Use the following command to count all created MIDI input devices:
2785  </p>  </p>
2786  <p></p>  <p>
2787                            </p>
2788  <blockquote class="text">  <blockquote class="text">
2789  <p>GET MIDI_INPUT_DEVICES  <p>GET MIDI_INPUT_DEVICES
2790  </p>  </p>
2791  </blockquote>  </blockquote><p>
2792                        
2793    </p>
2794  <p>Possible Answers:  <p>Possible Answers:
2795  </p>  </p>
2796  <p></p>  <p>
2797                            </p>
2798  <blockquote class="text">  <blockquote class="text">
2799  <p>LinuxSampler will answer by sending the current number of all  <p>LinuxSampler will answer by sending the current number of all
2800                              MIDI input devices.                              MIDI input devices.
2801  </p>  </p>
2802  </blockquote>  </blockquote><p>
2803                        
2804    </p>
2805  <p>Example:  <p>Example:
2806  </p>  </p>
2807  <p></p>  <p>
2808                            </p>
2809  <blockquote class="text">  <blockquote class="text">
2810  <p>C: "GET MIDI_INPUT_DEVICES"  <p>C: "GET MIDI_INPUT_DEVICES"
2811  </p>  </p>
2812  <p>S: "3"  <p>S: "3"
2813  </p>  </p>
2814  </blockquote>  </blockquote><p>
2815                        
2816  <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>
2817    <a name="LIST MIDI_INPUT_DEVICES"></a><br /><hr />
2818    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2819    <a name="rfc.section.6.3.8"></a><h3>6.3.8.&nbsp;
2820    Getting all created MIDI input device list</h3>
2821    
2822  <p>Use the following command to list all created MIDI input devices:  <p>Use the following command to list all created MIDI input devices:
2823  </p>  </p>
2824  <p></p>  <p>
2825                            </p>
2826  <blockquote class="text">  <blockquote class="text">
2827  <p>LIST MIDI_INPUT_DEVICES  <p>LIST MIDI_INPUT_DEVICES
2828  </p>  </p>
2829  </blockquote>  </blockquote><p>
2830                        
2831    </p>
2832  <p>Possible Answers:  <p>Possible Answers:
2833  </p>  </p>
2834  <p></p>  <p>
2835                            </p>
2836  <blockquote class="text">  <blockquote class="text">
2837  <p>LinuxSampler will answer by sending a comma separated list  <p>LinuxSampler will answer by sending a comma separated list
2838                              with the numerical Ids of all created MIDI input devices.                              with the numerical Ids of all created MIDI input devices.
2839  </p>  </p>
2840  </blockquote>  </blockquote><p>
2841                        
2842    </p>
2843  <p>Examples:  <p>Examples:
2844  </p>  </p>
2845  <p></p>  <p>
2846                            </p>
2847  <blockquote class="text">  <blockquote class="text">
2848  <p>C: "LIST MIDI_INPUT_DEVICES"  <p>C: "LIST MIDI_INPUT_DEVICES"
2849  </p>  </p>
2850  <p>S: "0,1,2"  <p>S: "0,1,2"
2851  </p>  </p>
2852  </blockquote>  </blockquote><p>
2853                        
2854  <p></p>  </p>
2855    <p>
2856                            </p>
2857  <blockquote class="text">  <blockquote class="text">
2858  <p>C: "LIST MIDI_INPUT_DEVICES"  <p>C: "LIST MIDI_INPUT_DEVICES"
2859  </p>  </p>
2860  <p>S: "1,3"  <p>S: "1,3"
2861  </p>  </p>
2862  </blockquote>  </blockquote><p>
2863                        
2864  <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>
2865    <a name="GET MIDI_INPUT_DEVICE INFO"></a><br /><hr />
2866    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2867    <a name="rfc.section.6.3.9"></a><h3>6.3.9.&nbsp;
2868    Getting current settings of a MIDI input device</h3>
2869    
2870  <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:
2871  </p>  </p>
2872  <p></p>  <p>
2873                            </p>
2874  <blockquote class="text">  <blockquote class="text">
2875  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;  <p>GET MIDI_INPUT_DEVICE INFO &lt;device-id&gt;
2876  </p>  </p>
2877  </blockquote>  </blockquote><p>
2878                        
2879  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device.  </p>
2880    <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device as returned by the
2881                        <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>
2882                        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>
2883                        command.
2884  </p>  </p>
2885  <p>Possible Answers:  <p>Possible Answers:
2886  </p>  </p>
2887  <p></p>  <p>
2888                            </p>
2889  <blockquote class="text">  <blockquote class="text">
2890  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
2891                              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 2895  Intellectual Property and Copyright Stat
2895                              encapsulated into apostrophes ('). At the moment the following                              encapsulated into apostrophes ('). At the moment the following
2896                              information categories are defined (independent of driver):                              information categories are defined (independent of driver):
2897  </p>  </p>
2898  <p></p>  <p>
2899                                    </p>
2900  <blockquote class="text">  <blockquote class="text">
2901  <p>DRIVER -  <p>DRIVER -
2902                                          </p>                                          </p>
2903  <blockquote class="text">  <blockquote class="text">
2904  <p>identifier of the used MIDI input driver, as e.g.  <p>identifier of the used MIDI input driver, as e.g.
2905                                              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>
2906                                              command                                              command
2907  </p>  </p>
2908  </blockquote>  </blockquote>
2909                                        
2910    
2911  </blockquote>  </blockquote>
2912                                    
2913  <blockquote class="text">  <blockquote class="text">
2914  <p><p>ACTIVE -  <p>ACTIVE -
2915                                          </p>                                          </p>
2916  <blockquote class="text">  <blockquote class="text">
2917  <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 2920  Intellectual Property and Copyright Stat
2920                                              channels                                              channels
2921  </p>  </p>
2922  </blockquote>  </blockquote>
2923                                        
2924    
2925  </blockquote>  </blockquote>
2926                                
2927    
2928  </blockquote>  </blockquote><p>
2929                        
2930    </p>
2931  <p>The mentioned fields above don't have to be in particular  <p>The mentioned fields above don't have to be in particular
2932                      order. The fields above are only those fields which are                      order. The fields above are only those fields which are
2933                      returned by all MIDI input devices. Every MIDI input driver                      returned by all MIDI input devices. Every MIDI input driver
2934                      might have its own, additional driver specific parameters (see                      might have its own, additional driver specific parameters (see
2935                      <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
2936                      by this command.                      by this command.
2937  </p>  </p>
2938  <p>Example:  <p>Example:
2939  </p>  </p>
2940  <p></p>  <p>
2941                            </p>
2942  <blockquote class="text">  <blockquote class="text">
2943  <p>C: "GET MIDI_INPUT_DEVICE INFO 0"  <p>C: "GET MIDI_INPUT_DEVICE INFO 0"
2944  </p>  </p>
# Line 2404  Intellectual Property and Copyright Stat Line 2948  Intellectual Property and Copyright Stat
2948  </p>  </p>
2949  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
2950  </p>  </p>
2951  </blockquote>  </blockquote><p>
2952                        
2953  <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>
2954    <a name="SET MIDI_INPUT_DEVICE_PARAMETER"></a><br /><hr />
2955    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
2956    <a name="rfc.section.6.3.10"></a><h3>6.3.10.&nbsp;
2957    Changing settings of MIDI input devices</h3>
2958    
2959  <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:
2960  </p>  </p>
2961  <p></p>  <p>
2962                            </p>
2963  <blockquote class="text">  <blockquote class="text">
2964  <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;
2965  </p>  </p>
2966  </blockquote>  </blockquote><p>
2967                        
2968    </p>
2969  <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
2970                      MIDI input device, &lt;key&gt; by the name of the parameter to change and                      MIDI input device as returned by the
2971                        <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>
2972                        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>
2973                        command, &lt;key&gt; by the name of the parameter to change and
2974                      &lt;value&gt; by the new value for this parameter.                      &lt;value&gt; by the new value for this parameter.
2975  </p>  </p>
2976  <p>Possible Answers:  <p>Possible Answers:
2977  </p>  </p>
2978  <p></p>  <p>
2979                            </p>
2980  <blockquote class="text">  <blockquote class="text">
2981  <p>"OK" -  <p>"OK" -
2982                                  </p>                                  </p>
# Line 2430  Intellectual Property and Copyright Stat Line 2984  Intellectual Property and Copyright Stat
2984  <p>in case setting was successfully changed  <p>in case setting was successfully changed
2985  </p>  </p>
2986  </blockquote>  </blockquote>
2987                                
2988    
2989  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
2990                                  </p>                                  </p>
# Line 2439  Intellectual Property and Copyright Stat Line 2994  Intellectual Property and Copyright Stat
2994                                      warning code and warning message                                      warning code and warning message
2995  </p>  </p>
2996  </blockquote>  </blockquote>
2997                                
2998    
2999  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3000                                  </p>                                  </p>
# Line 2446  Intellectual Property and Copyright Stat Line 3002  Intellectual Property and Copyright Stat
3002  <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
3003  </p>  </p>
3004  </blockquote>  </blockquote>
3005                                
3006    
3007  </blockquote>  </blockquote><p>
3008                        
3009    </p>
3010  <p>Example:  <p>Example:
3011  </p>  </p>
3012  <p></p>  <p>
3013                            </p>
3014  <blockquote class="text">  <blockquote class="text">
3015  <p>C: "SET MIDI_INPUT_DEVICE_PARAMETER 0 ACTIVE=false"  <p>C: "SET MIDI_INPUT_DEVICE_PARAMETER 0 ACTIVE=false"
3016  </p>  </p>
3017  <p>S: "OK"  <p>S: "OK"
3018  </p>  </p>
3019  </blockquote>  </blockquote><p>
3020                        
3021  <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>
3022    <a name="GET MIDI_INPUT_PORT INFO"></a><br /><hr />
3023    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3024    <a name="rfc.section.6.3.11"></a><h3>6.3.11.&nbsp;
3025    Getting information about a MIDI port</h3>
3026    
3027  <p>Use the following command to get information about a MIDI port:  <p>Use the following command to get information about a MIDI port:
3028  </p>  </p>
3029  <p></p>  <p>
3030                            </p>
3031  <blockquote class="text">  <blockquote class="text">
3032  <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;
3033  </p>  </p>
3034  </blockquote>  </blockquote><p>
3035                        
3036  <p>Where &lt;device-id&gt; is the numerical ID of the MIDI input device  </p>
3037                      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
3038                        <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>
3039                        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>
3040                        command and &lt;midi-port&gt; the MIDI input port number.
3041  </p>  </p>
3042  <p>Possible Answers:  <p>Possible Answers:
3043  </p>  </p>
3044  <p></p>  <p>
3045                            </p>
3046  <blockquote class="text">  <blockquote class="text">
3047  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3048                              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 3056  Intellectual Property and Copyright Stat
3056  <p>arbitrary character string naming the port  <p>arbitrary character string naming the port
3057  </p>  </p>
3058  </blockquote>  </blockquote>
3059                                
3060    
3061  </blockquote>  </blockquote><p>
3062                        
3063    </p>
3064  <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
3065                      ports regardless of the MIDI driver and port. Every MIDI port                      ports regardless of the MIDI driver and port. Every MIDI port
3066                      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 3068  Intellectual Property and Copyright Stat
3068  </p>  </p>
3069  <p>Example:  <p>Example:
3070  </p>  </p>
3071  <p></p>  <p>
3072                            </p>
3073  <blockquote class="text">  <blockquote class="text">
3074  <p>C: "GET MIDI_INPUT_PORT INFO 0 0"  <p>C: "GET MIDI_INPUT_PORT INFO 0 0"
3075  </p>  </p>
# Line 2508  Intellectual Property and Copyright Stat Line 3079  Intellectual Property and Copyright Stat
3079  </p>  </p>
3080  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3081  </p>  </p>
3082  </blockquote>  </blockquote><p>
3083                        
3084  <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>
3085    <a name="GET MIDI_INPUT_PORT_PARAMETER INFO"></a><br /><hr />
3086    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3087    <a name="rfc.section.6.3.12"></a><h3>6.3.12.&nbsp;
3088    Getting information about specific MIDI port parameter</h3>
3089    
3090  <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:
3091  </p>  </p>
3092  <p></p>  <p>
3093                            </p>
3094  <blockquote class="text">  <blockquote class="text">
3095  <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;
3096  </p>  </p>
3097  </blockquote>  </blockquote><p>
3098                        
3099  <p>Where &lt;dev-id&gt; is the numerical ID of the MIDI input device as returned  </p>
3100                      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
3101                        <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>
3102                        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>
3103                        command, &lt;port&gt; the MIDI port number and
3104                      &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
3105                      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).
3106  </p>  </p>
3107  <p>Possible Answers:  <p>Possible Answers:
3108  </p>  </p>
3109  <p></p>  <p>
3110                            </p>
3111  <blockquote class="text">  <blockquote class="text">
3112  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3113                              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 3127  Intellectual Property and Copyright Stat
3127                                      (always returned)                                      (always returned)
3128  </p>  </p>
3129  </blockquote>  </blockquote>
3130                                
3131    
3132  <p>DESCRIPTION -  <p>DESCRIPTION -
3133                                  </p>                                  </p>
# Line 2555  Intellectual Property and Copyright Stat Line 3136  Intellectual Property and Copyright Stat
3136                                      (always returned)                                      (always returned)
3137  </p>  </p>
3138  </blockquote>  </blockquote>
3139                                
3140    
3141  <p>FIX -  <p>FIX -
3142                                  </p>                                  </p>
# Line 2564  Intellectual Property and Copyright Stat Line 3146  Intellectual Property and Copyright Stat
3146                                      (always returned)                                      (always returned)
3147  </p>  </p>
3148  </blockquote>  </blockquote>
3149                                
3150    
3151  <p>MULTIPLICITY -  <p>MULTIPLICITY -
3152                                  </p>                                  </p>
# Line 2574  Intellectual Property and Copyright Stat Line 3157  Intellectual Property and Copyright Stat
3157                                      (always returned)                                      (always returned)
3158  </p>  </p>
3159  </blockquote>  </blockquote>
3160                                
3161    
3162  <p>RANGE_MIN -  <p>RANGE_MIN -
3163                                  </p>                                  </p>
# Line 2586  Intellectual Property and Copyright Stat Line 3170  Intellectual Property and Copyright Stat
3170                                      parameter)                                      parameter)
3171  </p>  </p>
3172  </blockquote>  </blockquote>
3173                                
3174    
3175  <p>RANGE_MAX -  <p>RANGE_MAX -
3176                                  </p>                                  </p>
# Line 2598  Intellectual Property and Copyright Stat Line 3183  Intellectual Property and Copyright Stat
3183                                      parameter)                                      parameter)
3184  </p>  </p>
3185  </blockquote>  </blockquote>
3186                                
3187    
3188  <p>POSSIBILITIES -  <p>POSSIBILITIES -
3189                                  </p>                                  </p>
# Line 2609  Intellectual Property and Copyright Stat Line 3195  Intellectual Property and Copyright Stat
3195                                      parameter)                                      parameter)
3196  </p>  </p>
3197  </blockquote>  </blockquote>
3198                                
3199    
3200  </blockquote>  </blockquote><p>
3201                        
3202    </p>
3203  <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.
3204  </p>  </p>
3205  <p>Example:  <p>Example:
3206  </p>  </p>
3207  <p></p>  <p>
3208                            </p>
3209  <blockquote class="text">  <blockquote class="text">
3210  <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"
3211  </p>  </p>
# Line 2632  Intellectual Property and Copyright Stat Line 3221  Intellectual Property and Copyright Stat
3221  </p>  </p>
3222  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3223  </p>  </p>
3224  </blockquote>  </blockquote><p>
3225                        
3226  <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>
3227    <a name="SET MIDI_INPUT_PORT_PARAMETER"></a><br /><hr />
3228    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3229    <a name="rfc.section.6.3.13"></a><h3>6.3.13.&nbsp;
3230    Changing settings of MIDI input ports</h3>
3231    
3232  <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:
3233  </p>  </p>
3234  <p></p>  <p>
3235                            </p>
3236  <blockquote class="text">  <blockquote class="text">
3237  <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;
3238  </p>  </p>
3239  </blockquote>  </blockquote><p>
3240                        
3241    </p>
3242  <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
3243                      MIDI device, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of                      MIDI device as returned by the
3244                        <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>
3245                        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>
3246                        command, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of
3247                      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
3248                      parameter.                      parameter.
3249  </p>  </p>
3250  <p>Possible Answers:  <p>Possible Answers:
3251  </p>  </p>
3252  <p></p>  <p>
3253                            </p>
3254  <blockquote class="text">  <blockquote class="text">
3255  <p>"OK" -  <p>"OK" -
3256                                  </p>                                  </p>
# Line 2659  Intellectual Property and Copyright Stat Line 3258  Intellectual Property and Copyright Stat
3258  <p>in case setting was successfully changed  <p>in case setting was successfully changed
3259  </p>  </p>
3260  </blockquote>  </blockquote>
3261                                
3262    
3263  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3264                                  </p>                                  </p>
# Line 2668  Intellectual Property and Copyright Stat Line 3268  Intellectual Property and Copyright Stat
3268                                      warning code and warning message                                      warning code and warning message
3269  </p>  </p>
3270  </blockquote>  </blockquote>
3271                                
3272    
3273  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3274                                  </p>                                  </p>
# Line 2675  Intellectual Property and Copyright Stat Line 3276  Intellectual Property and Copyright Stat
3276  <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
3277  </p>  </p>
3278  </blockquote>  </blockquote>
3279                                
3280    
3281  </blockquote>  </blockquote><p>
3282                        
3283    </p>
3284  <p>Example:  <p>Example:
3285  </p>  </p>
3286  <p></p>  <p>
3287                            </p>
3288  <blockquote class="text">  <blockquote class="text">
3289  <p>  <p>
3290  </p>  </p>
3291  </blockquote>  </blockquote><p>
3292                        
 <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.  
3293  </p>  </p>
3294  <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 />
3295    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3296    <a name="rfc.section.6.4"></a><h3>6.4.&nbsp;
3297    Configuring sampler channels</h3>
3298    
3299    <p>The following commands describe how to add and remove sampler channels, associate a
3300                    sampler channel with a sampler engine, load instruments and connect sampler channels to
3301                    MIDI and audio devices.
3302    </p>
3303    <a name="LOAD INSTRUMENT"></a><br /><hr />
3304    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3305    <a name="rfc.section.6.4.1"></a><h3>6.4.1.&nbsp;
3306    Loading an instrument</h3>
3307    
3308  <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:
3309  </p>  </p>
3310  <p></p>  <p>
3311                            </p>
3312  <blockquote class="text">  <blockquote class="text">
3313  <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;
3314  </p>  </p>
3315  </blockquote>  </blockquote><p>
3316                        
3317    </p>
3318  <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
3319                      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
3320                      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 3325  Intellectual Property and Copyright Stat
3325                      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
3326                      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
3327                      returns immediately and a background process is launched to load the instrument                      returns immediately and a background process is launched to load the instrument
3328                      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>
3329                      command can be used to obtain loading                      command can be used to obtain loading
3330                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks                      progress from INSTRUMENT_STATUS field. LOAD command will perform sanity checks
3331                      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 3334  Intellectual Property and Copyright Stat
3334  </p>  </p>
3335  <p>Possible Answers:  <p>Possible Answers:
3336  </p>  </p>
3337  <p></p>  <p>
3338                            </p>
3339  <blockquote class="text">  <blockquote class="text">
3340  <p>"OK" -  <p>"OK" -
3341                                  </p>                                  </p>
# Line 2728  Intellectual Property and Copyright Stat Line 3343  Intellectual Property and Copyright Stat
3343  <p>in case the instrument was successfully loaded  <p>in case the instrument was successfully loaded
3344  </p>  </p>
3345  </blockquote>  </blockquote>
3346                                
3347    
3348  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3349                                  </p>                                  </p>
# Line 2739  Intellectual Property and Copyright Stat Line 3355  Intellectual Property and Copyright Stat
3355                                      warning message                                      warning message
3356  </p>  </p>
3357  </blockquote>  </blockquote>
3358                                
3359    
3360  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3361                                  </p>                                  </p>
# Line 2746  Intellectual Property and Copyright Stat Line 3363  Intellectual Property and Copyright Stat
3363  <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
3364  </p>  </p>
3365  </blockquote>  </blockquote>
3366                                
3367    
3368  </blockquote>  </blockquote><p>
3369                        
3370    </p>
3371  <p>Example:  <p>Example:
3372  </p>  </p>
3373  <p></p>  <p>
3374                            </p>
3375  <blockquote class="text">  <blockquote class="text">
3376  <p>  <p>
3377  </p>  </p>
3378  </blockquote>  </blockquote><p>
3379                        
3380  <a name="rfc.section.5.4.2"></a><h4><a name="LOAD ENGINE">5.4.2</a>&nbsp;Loading a sampler engine</h4>  </p>
3381    <a name="LOAD ENGINE"></a><br /><hr />
3382    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3383    <a name="rfc.section.6.4.2"></a><h3>6.4.2.&nbsp;
3384    Loading a sampler engine</h3>
3385    
3386  <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
3387                      channel by the following command:                      channel by the following command:
3388  </p>  </p>
3389  <p></p>  <p>
3390                            </p>
3391  <blockquote class="text">  <blockquote class="text">
3392  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;  <p>LOAD ENGINE &lt;engine-name&gt; &lt;sampler-channel&gt;
3393  </p>  </p>
3394  </blockquote>  </blockquote><p>
3395                        
3396    </p>
3397  <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
3398                      <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;
3399                      deployed engine should be assigned to. Even if the respective                      the sampler channel as returned by the
3400                      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
3401                      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
3402                        the engine type should be assigned to. This command should be issued
3403                        after adding a new sampler channel and before any other control
3404                        commands on the new sampler channel. It can also be used to change
3405                        the engine type of a sampler channel. This command has (currently) no
3406                        way to define or force if a new engine instance should be created and
3407                        assigned to the given sampler channel or if an already existing
3408                        instance of that engine type, shared with other sampler channels,
3409                        should be used.
3410  </p>  </p>
3411  <p>Possible Answers:  <p>Possible Answers:
3412  </p>  </p>
3413  <p></p>  <p>
3414                            </p>
3415  <blockquote class="text">  <blockquote class="text">
3416  <p>"OK" -  <p>"OK" -
3417                                  </p>                                  </p>
# Line 2784  Intellectual Property and Copyright Stat Line 3419  Intellectual Property and Copyright Stat
3419  <p>in case the engine was successfully deployed  <p>in case the engine was successfully deployed
3420  </p>  </p>
3421  </blockquote>  </blockquote>
3422                                
3423    
3424  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3425                                  </p>                                  </p>
# Line 2793  Intellectual Property and Copyright Stat Line 3429  Intellectual Property and Copyright Stat
3429                                      warning code and warning message                                      warning code and warning message
3430  </p>  </p>
3431  </blockquote>  </blockquote>
3432                                
3433    
3434  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3435                                  </p>                                  </p>
# Line 2801  Intellectual Property and Copyright Stat Line 3438  Intellectual Property and Copyright Stat
3438                                      error message                                      error message
3439  </p>  </p>
3440  </blockquote>  </blockquote>
3441                                
3442    
3443  </blockquote>  </blockquote><p>
3444                        
3445    </p>
3446  <p>Example:  <p>Example:
3447  </p>  </p>
3448  <p></p>  <p>
3449                            </p>
3450  <blockquote class="text">  <blockquote class="text">
3451  <p>  <p>
3452  </p>  </p>
3453  </blockquote>  </blockquote><p>
3454                        
3455  <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>
3456    <a name="GET CHANNELS"></a><br /><hr />
3457    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3458    <a name="rfc.section.6.4.3"></a><h3>6.4.3.&nbsp;
3459    Getting all created sampler channel count</h3>
3460    
3461  <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
3462                      current amount of sampler channels, the front-end can send the                      current amount of sampler channels, the front-end can send the
3463                      following command:                      following command:
3464  </p>  </p>
3465  <p></p>  <p>
3466                            </p>
3467  <blockquote class="text">  <blockquote class="text">
3468  <p>GET CHANNELS  <p>GET CHANNELS
3469  </p>  </p>
3470  </blockquote>  </blockquote><p>
3471                        
3472    </p>
3473  <p>Possible Answers:  <p>Possible Answers:
3474  </p>  </p>
3475  <p></p>  <p>
3476                            </p>
3477  <blockquote class="text">  <blockquote class="text">
3478  <p>LinuxSampler will answer by returning the current number of sampler channels.  <p>LinuxSampler will answer by returning the current number of sampler channels.
3479  </p>  </p>
3480  </blockquote>  </blockquote><p>
3481                        
3482    </p>
3483  <p>Example:  <p>Example:
3484  </p>  </p>
3485  <p></p>  <p>
3486                            </p>
3487  <blockquote class="text">  <blockquote class="text">
3488  <p>C: "GET CHANNELS"  <p>C: "GET CHANNELS"
3489  </p>  </p>
3490  <p>S: "12"  <p>S: "12"
3491  </p>  </p>
3492  </blockquote>  </blockquote><p>
3493                        
3494  <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>
3495    <a name="LIST CHANNELS"></a><br /><hr />
3496    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3497    <a name="rfc.section.6.4.4"></a><h3>6.4.4.&nbsp;
3498    Getting all created sampler channel list</h3>
3499    
3500  <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
3501                      current list of sampler channels, the front-end can send the                      current list of sampler channels, the front-end can send the
3502                      following command:                      following command:
3503  </p>  </p>
3504  <p></p>  <p>
3505                            </p>
3506  <blockquote class="text">  <blockquote class="text">
3507  <p>LIST CHANNELS  <p>LIST CHANNELS
3508  </p>  </p>
3509  </blockquote>  </blockquote><p>
3510                        
3511    </p>
3512  <p>Possible Answers:  <p>Possible Answers:
3513  </p>  </p>
3514  <p></p>  <p>
3515                            </p>
3516  <blockquote class="text">  <blockquote class="text">
3517  <p>LinuxSampler will answer by returning a comma separated list  <p>LinuxSampler will answer by returning a comma separated list
3518                              with all sampler channels numerical IDs.                              with all sampler channels numerical IDs.
3519  </p>  </p>
3520  </blockquote>  </blockquote><p>
3521                        
3522    </p>
3523  <p>Example:  <p>Example:
3524  </p>  </p>
3525  <p></p>  <p>
3526                            </p>
3527  <blockquote class="text">  <blockquote class="text">
3528  <p>C: "LIST CHANNELS"  <p>C: "LIST CHANNELS"
3529  </p>  </p>
3530  <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"
3531  </p>  </p>
3532  </blockquote>  </blockquote><p>
3533                        
3534  <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>
3535    <a name="ADD CHANNEL"></a><br /><hr />
3536    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3537    <a name="rfc.section.6.4.5"></a><h3>6.4.5.&nbsp;
3538    Adding a new sampler channel</h3>
3539    
3540  <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
3541                      channel list by sending the following command:                      channel list by sending the following command:
3542  </p>  </p>
3543  <p></p>  <p>
3544                            </p>
3545  <blockquote class="text">  <blockquote class="text">
3546  <p>ADD CHANNEL  <p>ADD CHANNEL
3547  </p>  </p>
3548  </blockquote>  </blockquote><p>
3549                        
3550    </p>
3551  <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
3552                      sampler channel will be appended to the end of the sampler channel                      sampler channel will be appended to the end of the sampler channel
3553                      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 3560  Intellectual Property and Copyright Stat
3560  </p>  </p>
3561  <p>Possible Answers:  <p>Possible Answers:
3562  </p>  </p>
3563  <p></p>  <p>
3564                            </p>
3565  <blockquote class="text">  <blockquote class="text">
3566  <p>"OK[&lt;sampler-channel&gt;]" -  <p>"OK[&lt;sampler-channel&gt;]" -
3567                                  </p>                                  </p>
# Line 2908  Intellectual Property and Copyright Stat Line 3573  Intellectual Property and Copyright Stat
3573                                      commands                                      commands
3574  </p>  </p>
3575  </blockquote>  </blockquote>
3576                                
3577    
3578  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3579                                  </p>                                  </p>
# Line 2917  Intellectual Property and Copyright Stat Line 3583  Intellectual Property and Copyright Stat
3583                                      warning code and warning message                                      warning code and warning message
3584  </p>  </p>
3585  </blockquote>  </blockquote>
3586                                
3587    
3588  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3589                                  </p>                                  </p>
# Line 2925  Intellectual Property and Copyright Stat Line 3592  Intellectual Property and Copyright Stat
3592                                      error message                                      error message
3593  </p>  </p>
3594  </blockquote>  </blockquote>
3595                                
3596    
3597  </blockquote>  </blockquote><p>
3598                        
3599    </p>
3600  <p>Example:  <p>Example:
3601  </p>  </p>
3602  <p></p>  <p>
3603                            </p>
3604  <blockquote class="text">  <blockquote class="text">
3605  <p>  <p>
3606  </p>  </p>
3607  </blockquote>  </blockquote><p>
3608                        
3609  <a name="rfc.section.5.4.6"></a><h4><a name="REMOVE CHANNEL">5.4.6</a>&nbsp;Removing a sampler channel</h4>  </p>
3610    <a name="REMOVE CHANNEL"></a><br /><hr />
3611    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3612    <a name="rfc.section.6.4.6"></a><h3>6.4.6.&nbsp;
3613    Removing a sampler channel</h3>
3614    
3615  <p>A sampler channel can be removed by sending the following command:  <p>A sampler channel can be removed by sending the following command:
3616  </p>  </p>
3617  <p></p>  <p>
3618                            </p>
3619  <blockquote class="text">  <blockquote class="text">
3620  <p>REMOVE CHANNEL &lt;sampler-channel&gt;  <p>REMOVE CHANNEL &lt;sampler-channel&gt;
3621  </p>  </p>
3622  </blockquote>  </blockquote><p>
3623                        
3624    </p>
3625  <p>Where &lt;sampler-channel&gt; should be replaced by the  <p>Where &lt;sampler-channel&gt; should be replaced by the
3626                      number of the sampler channel as given by the                      number of the sampler channel as given by the
3627                      <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>
3628                      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>
3629                      command. The channel numbers of all subsequent sampler channels                      command. The channel numbers of all subsequent sampler channels
3630                      remain the same.                      remain the same.
3631  </p>  </p>
3632  <p>Possible Answers:  <p>Possible Answers:
3633  </p>  </p>
3634  <p></p>  <p>
3635                            </p>
3636  <blockquote class="text">  <blockquote class="text">
3637  <p>"OK" -  <p>"OK" -
3638                                  </p>                                  </p>
# Line 2963  Intellectual Property and Copyright Stat Line 3640  Intellectual Property and Copyright Stat
3640  <p>in case the given sampler channel could be removed  <p>in case the given sampler channel could be removed
3641  </p>  </p>
3642  </blockquote>  </blockquote>
3643                                
3644    
3645  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3646                                  </p>                                  </p>
# Line 2972  Intellectual Property and Copyright Stat Line 3650  Intellectual Property and Copyright Stat
3650                                      warning code and warning message                                      warning code and warning message
3651  </p>  </p>
3652  </blockquote>  </blockquote>
3653                                
3654    
3655  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3656                                  </p>                                  </p>
# Line 2980  Intellectual Property and Copyright Stat Line 3659  Intellectual Property and Copyright Stat
3659                                      error message                                      error message
3660  </p>  </p>
3661  </blockquote>  </blockquote>
3662                                
3663    
3664  </blockquote>  </blockquote><p>
3665                        
3666    </p>
3667  <p>Example:  <p>Example:
3668  </p>  </p>
3669  <p></p>  <p>
3670                            </p>
3671  <blockquote class="text">  <blockquote class="text">
3672  <p>  <p>
3673  </p>  </p>
3674  </blockquote>  </blockquote><p>
3675                        
3676  <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>
3677    <a name="GET AVAILABLE_ENGINES"></a><br /><hr />
3678    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3679    <a name="rfc.section.6.4.7"></a><h3>6.4.7.&nbsp;
3680    Getting amount of available engines</h3>
3681    
3682  <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:
3683  </p>  </p>
3684  <p></p>  <p>
3685                            </p>
3686  <blockquote class="text">  <blockquote class="text">
3687  <p>GET AVAILABLE_ENGINES  <p>GET AVAILABLE_ENGINES
3688  </p>  </p>
3689  </blockquote>  </blockquote><p>
3690                        
3691    </p>
3692  <p>Possible Answers:  <p>Possible Answers:
3693  </p>  </p>
3694  <p></p>  <p>
3695                            </p>
3696  <blockquote class="text">  <blockquote class="text">
3697  <p>LinuxSampler will answer by sending the number of available engines.  <p>LinuxSampler will answer by sending the number of available engines.
3698  </p>  </p>
3699  </blockquote>  </blockquote><p>
3700                        
3701    </p>
3702  <p>Example:  <p>Example:
3703  </p>  </p>
3704  <p></p>  <p>
3705                            </p>
3706  <blockquote class="text">  <blockquote class="text">
3707  <p>C: "GET AVAILABLE_ENGINES"  <p>C: "GET AVAILABLE_ENGINES"
3708  </p>  </p>
3709  <p>S: "4"  <p>S: "4"
3710  </p>  </p>
3711  </blockquote>  </blockquote><p>
3712                        
3713  <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>
3714    <a name="LIST AVAILABLE_ENGINES"></a><br /><hr />
3715    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3716    <a name="rfc.section.6.4.8"></a><h3>6.4.8.&nbsp;
3717    Getting all available engines</h3>
3718    
3719  <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:
3720  </p>  </p>
3721  <p></p>  <p>
3722                            </p>
3723  <blockquote class="text">  <blockquote class="text">
3724  <p>LIST AVAILABLE_ENGINES  <p>LIST AVAILABLE_ENGINES
3725  </p>  </p>
3726  </blockquote>  </blockquote><p>
3727                        
3728    </p>
3729  <p>Possible Answers:  <p>Possible Answers:
3730  </p>  </p>
3731  <p></p>  <p>
3732                            </p>
3733  <blockquote class="text">  <blockquote class="text">
3734  <p>LinuxSampler will answer by sending a comma separated list  <p>LinuxSampler will answer by sending a comma separated list
3735                              of the engines' names encapsulated into apostrophes (').                              of the engines' names encapsulated into apostrophes (').
3736                              Engine names can consist of lower and upper cases,                              Engine names can consist of lower and upper cases,
3737                              digits and underlines ("_" character).                              digits and underlines ("_" character).
3738  </p>  </p>
3739  </blockquote>  </blockquote><p>
3740                        
3741    </p>
3742  <p>Example:  <p>Example:
3743  </p>  </p>
3744  <p></p>  <p>
3745                            </p>
3746  <blockquote class="text">  <blockquote class="text">
3747  <p>C: "LIST AVAILABLE_ENGINES"  <p>C: "LIST AVAILABLE_ENGINES"
3748  </p>  </p>
3749  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"  <p>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"
3750  </p>  </p>
3751  </blockquote>  </blockquote><p>
3752                        
3753  <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>
3754    <a name="GET ENGINE INFO"></a><br /><hr />
3755    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3756    <a name="rfc.section.6.4.9"></a><h3>6.4.9.&nbsp;
3757    Getting information about an engine</h3>
3758    
3759  <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
3760                      sending the following command:                      sending the following command:
3761  </p>  </p>
3762  <p></p>  <p>
3763                            </p>
3764  <blockquote class="text">  <blockquote class="text">
3765  <p>GET ENGINE INFO &lt;engine-name&gt;  <p>GET ENGINE INFO &lt;engine-name&gt;
3766  </p>  </p>
3767  </blockquote>  </blockquote><p>
3768                        
3769    </p>
3770  <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
3771                      <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.
3772  </p>  </p>
3773  <p>Possible Answers:  <p>Possible Answers:
3774  </p>  </p>
3775  <p></p>  <p>
3776                            </p>
3777  <blockquote class="text">  <blockquote class="text">
3778  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3779                              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 3781  Intellectual Property and Copyright Stat
3781                              the info character string to that info category. At the moment                              the info character string to that info category. At the moment
3782                              the following categories are defined:                              the following categories are defined:
3783  </p>  </p>
3784  <p></p>  <p>
3785                                    </p>
3786  <blockquote class="text">  <blockquote class="text">
3787  <p>DESCRIPTION -  <p>DESCRIPTION -
3788                                          </p>                                          </p>
# Line 3082  Intellectual Property and Copyright Stat Line 3790  Intellectual Property and Copyright Stat
3790  <p>arbitrary description text about the engine  <p>arbitrary description text about the engine
3791  </p>  </p>
3792  </blockquote>  </blockquote>
3793                                        
3794    
3795  <p>VERSION -  <p>VERSION -
3796                                          </p>                                          </p>
# Line 3089  Intellectual Property and Copyright Stat Line 3798  Intellectual Property and Copyright Stat
3798  <p>arbitrary character string regarding the engine's version  <p>arbitrary character string regarding the engine's version
3799  </p>  </p>
3800  </blockquote>  </blockquote>
3801                                        
3802    
3803  </blockquote>  </blockquote>
3804                                
3805    
3806  </blockquote>  </blockquote><p>
3807                        
3808    </p>
3809  <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.
3810  </p>  </p>
3811  <p>Example:  <p>Example:
3812  </p>  </p>
3813  <p></p>  <p>
3814                            </p>
3815  <blockquote class="text">  <blockquote class="text">
3816  <p>C: "GET ENGINE INFO JoesCustomEngine"  <p>C: "GET ENGINE INFO JoesCustomEngine"
3817  </p>  </p>
# Line 3108  Intellectual Property and Copyright Stat Line 3821  Intellectual Property and Copyright Stat
3821  </p>  </p>
3822  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
3823  </p>  </p>
3824  </blockquote>  </blockquote><p>
3825                        
3826  <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>
3827    <a name="GET CHANNEL INFO"></a><br /><hr />
3828    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
3829    <a name="rfc.section.6.4.10"></a><h3>6.4.10.&nbsp;
3830    Getting sampler channel information</h3>
3831    
3832  <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
3833                      by sending the following command:                      by sending the following command:
3834  </p>  </p>
3835  <p></p>  <p>
3836                            </p>
3837  <blockquote class="text">  <blockquote class="text">
3838  <p>GET CHANNEL INFO &lt;sampler-channel&gt;  <p>GET CHANNEL INFO &lt;sampler-channel&gt;
3839  </p>  </p>
3840  </blockquote>  </blockquote><p>
3841                        
3842  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
3843    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
3844                        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>
3845                        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.
3846  </p>  </p>
3847  <p>Possible Answers:  <p>Possible Answers:
3848  </p>  </p>
3849  <p></p>  <p>
3850                            </p>
3851  <blockquote class="text">  <blockquote class="text">
3852  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.  <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
3853                              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 3855  Intellectual Property and Copyright Stat
3855                              the info character string to that setting category. At the                              the info character string to that setting category. At the
3856                              moment the following categories are defined:                              moment the following categories are defined:
3857  </p>  </p>
3858  <p></p>  <p>
3859                                    </p>
3860  <blockquote class="text">  <blockquote class="text">
3861  <p>ENGINE_NAME -  <p>ENGINE_NAME -
3862                                          </p>                                          </p>
3863  <blockquote class="text">  <blockquote class="text">
3864  <p>name of the engine that is deployed on the sampler  <p>name of the engine that is associated with the sampler
3865                                              channel, "NONE" if there's no engine deployed yet for                                              channel, "NONE" if there's no engine associated yet for
3866                                              this sampler channel                                              this sampler channel
3867  </p>  </p>
3868  </blockquote>  </blockquote>
3869                                        
3870    
3871  <p>AUDIO_OUTPUT_DEVICE -  <p>AUDIO_OUTPUT_DEVICE -
3872                                          </p>                                          </p>
# Line 3153  Intellectual Property and Copyright Stat Line 3877  Intellectual Property and Copyright Stat
3877                                              connected to this sampler channel                                              connected to this sampler channel
3878  </p>  </p>
3879  </blockquote>  </blockquote>
3880                                        
3881    
3882  <p>AUDIO_OUTPUT_CHANNELS -  <p>AUDIO_OUTPUT_CHANNELS -
3883                                          </p>                                          </p>
# Line 3161  Intellectual Property and Copyright Stat Line 3886  Intellectual Property and Copyright Stat
3886                                              (dependent to used sampler engine and loaded instrument)                                              (dependent to used sampler engine and loaded instrument)
3887  </p>  </p>
3888  </blockquote>  </blockquote>
3889                                        
3890    
3891  <p>AUDIO_OUTPUT_ROUTING -  <p>AUDIO_OUTPUT_ROUTING -
3892                                          </p>                                          </p>
# Line 3174  Intellectual Property and Copyright Stat Line 3900  Intellectual Property and Copyright Stat
3900                                              output device                                              output device
3901  </p>  </p>
3902  </blockquote>  </blockquote>
3903                                        
3904    
3905  <p>INSTRUMENT_FILE -  <p>INSTRUMENT_FILE -
3906                                          </p>                                          </p>
# Line 3183  Intellectual Property and Copyright Stat Line 3910  Intellectual Property and Copyright Stat
3910                                              channel                                              channel
3911  </p>  </p>
3912  </blockquote>  </blockquote>
3913                                        
3914    
3915  <p>INSTRUMENT_NR -  <p>INSTRUMENT_NR -
3916                                          </p>                                          </p>
# Line 3190  Intellectual Property and Copyright Stat Line 3918  Intellectual Property and Copyright Stat
3918  <p>the instrument index number of the loaded instrument  <p>the instrument index number of the loaded instrument
3919  </p>  </p>
3920  </blockquote>  </blockquote>
3921                                        
3922    
3923  <p>INSTRUMENT_NAME -  <p>INSTRUMENT_NAME -
3924                                          </p>                                          </p>
# Line 3197  Intellectual Property and Copyright Stat Line 3926  Intellectual Property and Copyright Stat
3926  <p>the instrument name of the loaded instrument  <p>the instrument name of the loaded instrument
3927  </p>  </p>
3928  </blockquote>  </blockquote>
3929                                        
3930    
3931  <p>INSTRUMENT_STATUS -  <p>INSTRUMENT_STATUS -
3932                                          </p>                                          </p>
# Line 3206  Intellectual Property and Copyright Stat Line 3936  Intellectual Property and Copyright Stat
3936                                              loaded.                                              loaded.
3937  </p>  </p>
3938  </blockquote>  </blockquote>
3939                                        
3940    
3941  <p>MIDI_INPUT_DEVICE -  <p>MIDI_INPUT_DEVICE -
3942                                          </p>                                          </p>
# Line 3216  Intellectual Property and Copyright Stat Line 3947  Intellectual Property and Copyright Stat
3947                                              connected to this sampler channel                                              connected to this sampler channel
3948  </p>  </p>
3949  </blockquote>  </blockquote>
3950                                        
3951    
3952  <p>MIDI_INPUT_PORT -  <p>MIDI_INPUT_PORT -
3953                                          </p>                                          </p>
# Line 3223  Intellectual Property and Copyright Stat Line 3955  Intellectual Property and Copyright Stat
3955  <p>port number of the MIDI input device  <p>port number of the MIDI input device
3956  </p>  </p>
3957  </blockquote>  </blockquote>
3958                                        
3959    
3960  <p>MIDI_INPUT_CHANNEL -  <p>MIDI_INPUT_CHANNEL -
3961                                          </p>                                          </p>
# Line 3231  Intellectual Property and Copyright Stat Line 3964  Intellectual Property and Copyright Stat
3964                                              should listen to or "ALL" to listen on all MIDI channels                                              should listen to or "ALL" to listen on all MIDI channels
3965  </p>  </p>
3966  </blockquote>  </blockquote>
3967                                        
3968    
3969  <p>VOLUME -  <p>VOLUME -
3970                                          </p>                                          </p>
3971  <blockquote class="text">  <blockquote class="text">
3972  <p>optionally dotted number for the channel volume factor  <p>optionally dotted number for the channel volume factor
3973                                              (where a value < 1.0 means attenuation and a value >                                              (where a value &lt; 1.0 means attenuation and a value >
3974                                              1.0 means amplification)                                              1.0 means amplification)
3975  </p>  </p>
3976  </blockquote>  </blockquote>
3977                                        
3978    
3979    <p>MUTE -
3980                                            </p>
3981    <blockquote class="text">
3982    <p>Determines whether the channel is muted, "true" if the
3983                                                channel is muted, "false" if the channel is not muted, and
3984                                                "MUTED_BY_SOLO" if the channel is muted because of the
3985                                                presence of a solo channel and will be unmuted when
3986                                                there are no solo channels left
3987    </p>
3988    </blockquote>
3989                                        
3990    
3991    <p>SOLO -
3992                                            </p>
3993    <blockquote class="text">
3994    <p>Determines whether this is a solo channel, "true" if
3995                                                the channel is a solo channel; "false" otherwise
3996    </p>
3997    </blockquote>
3998                                        
3999    
4000    <p>MIDI_INSTRUMENT_MAP -
4001                                            </p>
4002    <blockquote class="text">
4003    <p>Determines to which MIDI instrument map this sampler
4004                                                channel is assigned to. Read chapter
4005                                                <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>
4006                                                for a list of possible values.
4007    </p>
4008  </blockquote>  </blockquote>
4009                                        
4010    
4011  </blockquote>  </blockquote>
4012                                
4013    
4014    </blockquote><p>
4015                        
4016    </p>
4017  <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.
4018  </p>  </p>
4019  <p>Example:  <p>Example:
4020  </p>  </p>
4021  <p></p>  <p>
4022                            </p>
4023  <blockquote class="text">  <blockquote class="text">
4024  <p>C: "GET CHANNEL INFO 34"  <p>C: "GET CHANNEL INFO 34"
4025  </p>  </p>
# Line 3277  Intellectual Property and Copyright Stat Line 4047  Intellectual Property and Copyright Stat
4047  </p>  </p>
4048  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"  <p>&nbsp;&nbsp;&nbsp;"MIDI_INPUT_CHANNEL: 5"
4049  </p>  </p>
4050    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
4051    </p>
4052    <p>&nbsp;&nbsp;&nbsp;"MUTE: false"
4053    </p>
4054    <p>&nbsp;&nbsp;&nbsp;"SOLO: false"
4055    </p>
4056    <p>&nbsp;&nbsp;&nbsp;"MIDI_INSTRUMENT_MAP: NONE"
4057    </p>
4058  <p>&nbsp;&nbsp;&nbsp;"."  <p>&nbsp;&nbsp;&nbsp;"."
4059  </p>  </p>
4060  </blockquote>  </blockquote><p>
4061                        
4062  <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>
4063    <a name="GET CHANNEL VOICE_COUNT"></a><br /><hr />
4064    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4065    <a name="rfc.section.6.4.11"></a><h3>6.4.11.&nbsp;
4066    Current number of active voices</h3>
4067    
4068  <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
4069                      sampler channel by sending the following command:                      sampler channel by sending the following command:
4070  </p>  </p>
4071  <p></p>  <p>
4072                            </p>
4073  <blockquote class="text">  <blockquote class="text">
4074  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL VOICE_COUNT &lt;sampler-channel&gt;
4075  </p>  </p>
4076  </blockquote>  </blockquote><p>
4077                        
4078  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
4079    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
4080                        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>
4081                        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.
4082  </p>  </p>
4083  <p>Possible Answers:  <p>Possible Answers:
4084  </p>  </p>
4085  <p></p>  <p>
4086                            </p>
4087  <blockquote class="text">  <blockquote class="text">
4088  <p>LinuxSampler will answer by returning the number of active  <p>LinuxSampler will answer by returning the number of active
4089                              voices on that channel.                              voices on that channel.
4090  </p>  </p>
4091  </blockquote>  </blockquote><p>
4092                        
4093    </p>
4094  <p>Example:  <p>Example:
4095  </p>  </p>
4096  <p></p>  <p>
4097                            </p>
4098  <blockquote class="text">  <blockquote class="text">
4099  <p>  <p>
4100  </p>  </p>
4101  </blockquote>  </blockquote><p>
4102                        
4103  <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>
4104    <a name="GET CHANNEL STREAM_COUNT"></a><br /><hr />
4105    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4106    <a name="rfc.section.6.4.12"></a><h3>6.4.12.&nbsp;
4107    Current number of active disk streams</h3>
4108    
4109  <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
4110                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
4111  </p>  </p>
4112  <p></p>  <p>
4113                            </p>
4114  <blockquote class="text">  <blockquote class="text">
4115  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;  <p>GET CHANNEL STREAM_COUNT &lt;sampler-channel&gt;
4116  </p>  </p>
4117  </blockquote>  </blockquote><p>
4118                        
4119  <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in.  </p>
4120    <p>Where &lt;sampler-channel&gt; is the sampler channel number the front-end is interested in
4121                        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>
4122                        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.
4123  </p>  </p>
4124  <p>Possible Answers:  <p>Possible Answers:
4125  </p>  </p>
4126  <p></p>  <p>
4127                            </p>
4128  <blockquote class="text">  <blockquote class="text">
4129  <p>LinuxSampler will answer by returning the number of active  <p>LinuxSampler will answer by returning the number of active
4130                              disk streams on that channel in case the engine supports disk                              disk streams on that channel in case the engine supports disk
4131                              streaming, if the engine doesn't support disk streaming it will                              streaming, if the engine doesn't support disk streaming it will
4132                              return "NA" for not available.                              return "NA" for not available.
4133  </p>  </p>
4134  </blockquote>  </blockquote><p>
4135                        
4136    </p>
4137  <p>Example:  <p>Example:
4138  </p>  </p>
4139  <p></p>  <p>
4140                            </p>
4141  <blockquote class="text">  <blockquote class="text">
4142  <p>  <p>
4143  </p>  </p>
4144  </blockquote>  </blockquote><p>
4145                        
4146  <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>
4147    <a name="GET CHANNEL BUFFER_FILL"></a><br /><hr />
4148    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4149    <a name="rfc.section.6.4.13"></a><h3>6.4.13.&nbsp;
4150    Current fill state of disk stream buffers</h3>
4151    
4152  <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
4153                      on a sampler channel by sending the following command:                      on a sampler channel by sending the following command:
4154  </p>  </p>
4155  <p></p>  <p>
4156                            </p>
4157  <blockquote class="text">  <blockquote class="text">
4158  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL BYTES &lt;sampler-channel&gt;
4159  </p>  </p>
4160  </blockquote>  </blockquote><p>
4161                        
4162    </p>
4163  <p>to get the fill state in bytes or  <p>to get the fill state in bytes or
4164  </p>  </p>
4165  <p></p>  <p>
4166                            </p>
4167  <blockquote class="text">  <blockquote class="text">
4168  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;  <p>GET CHANNEL BUFFER_FILL PERCENTAGE &lt;sampler-channel&gt;
4169  </p>  </p>
4170  </blockquote>  </blockquote><p>
4171                        
4172    </p>
4173  <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
4174                      sampler channel number the front-end is interested in.                      sampler channel number the front-end is interested in
4175                        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>
4176                        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.
4177  </p>  </p>
4178  <p>Possible Answers:  <p>Possible Answers:
4179  </p>  </p>
4180  <p></p>  <p>
4181                            </p>
4182  <blockquote class="text">  <blockquote class="text">
4183  <p>LinuxSampler will either answer by returning a comma separated  <p>LinuxSampler will either answer by returning a comma separated
4184                              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 4191  Intellectual Property and Copyright Stat
4191                              the response are not in particular order, thus the front-end has                              the response are not in particular order, thus the front-end has
4192                              to sort them by itself if necessary.                              to sort them by itself if necessary.
4193  </p>  </p>
4194  </blockquote>  </blockquote><p>
4195                        
4196    </p>
4197  <p>Examples:  <p>Examples:
4198  </p>  </p>
4199  <p></p>  <p>
4200                            </p>
4201  <blockquote class="text">  <blockquote class="text">
4202  <p>C: "GET CHANNEL BUFFER_FILL BYTES 4"  <p>C: "GET CHANNEL BUFFER_FILL BYTES 4"
4203  </p>  </p>
4204  <p>S: "[115]420500,[116]510300,[75]110000,[120]230700"  <p>S: "[115]420500,[116]510300,[75]110000,[120]230700"
4205  </p>  </p>
4206  </blockquote>  </blockquote><p>
4207    
4208                            </p>
4209  <blockquote class="text">  <blockquote class="text">
4210  <p><p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"  <p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"
4211  </p>  </p>
4212  <p>S: "[115]90%,[116]98%,[75]40%,[120]62%"  <p>S: "[115]90%,[116]98%,[75]40%,[120]62%"
4213  </p>  </p>
4214  </blockquote>  </blockquote><p>
4215    
4216                            </p>
4217  <blockquote class="text">  <blockquote class="text">
4218  <p><p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"  <p>C: "GET CHANNEL BUFFER_FILL PERCENTAGE 4"
4219  </p>  </p>
4220  <p>S: ""  <p>S: ""
4221  </p>  </p>
4222  </blockquote>  </blockquote><p>
4223                        
4224  <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>
4225    <a name="SET CHANNEL AUDIO_OUTPUT_DEVICE"></a><br /><hr />
4226    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4227    <a name="rfc.section.6.4.14"></a><h3>6.4.14.&nbsp;
4228    Setting audio output device</h3>
4229    
4230  <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
4231                      channel by sending the following command:                      channel by sending the following command:
4232  </p>  </p>
4233  <p></p>  <p>
4234                            </p>
4235  <blockquote class="text">  <blockquote class="text">
4236  <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;
4237  </p>  </p>
4238  </blockquote>  </blockquote><p>
4239                        
4240  <p>Where &lt;audio-device-id&gt; is the numerical ID of the audio output  </p>
4241                      device and &lt;sampler-channel&gt; is the respective sampler channel  <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4242                      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>
4243                        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
4244                        &lt;audio-device-id&gt; is the numerical ID of the audio output device as given by the
4245                        <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>
4246                        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>
4247                        command.
4248  </p>  </p>
4249  <p>Possible Answers:  <p>Possible Answers:
4250  </p>  </p>
4251  <p></p>  <p>
4252                            </p>
4253  <blockquote class="text">  <blockquote class="text">
4254  <p>"OK" -  <p>"OK" -
4255                                  </p>                                  </p>
# Line 3429  Intellectual Property and Copyright Stat Line 4257  Intellectual Property and Copyright Stat
4257  <p>on success  <p>on success
4258  </p>  </p>
4259  </blockquote>  </blockquote>
4260                                
4261    
4262  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4263                                  </p>                                  </p>
# Line 3438  Intellectual Property and Copyright Stat Line 4267  Intellectual Property and Copyright Stat
4267                                      warning message                                      warning message
4268  </p>  </p>
4269  </blockquote>  </blockquote>
4270                                
4271    
4272  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4273                                  </p>                                  </p>
# Line 3445  Intellectual Property and Copyright Stat Line 4275  Intellectual Property and Copyright Stat
4275  <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
4276  </p>  </p>
4277  </blockquote>  </blockquote>
4278                                
4279    
4280  </blockquote>  </blockquote><p>
4281                        
4282    </p>
4283  <p>Examples:  <p>Examples:
4284  </p>  </p>
4285  <p></p>  <p>
4286                            </p>
4287  <blockquote class="text">  <blockquote class="text">
4288  <p>  <p>
4289  </p>  </p>
4290  </blockquote>  </blockquote><p>
4291                        
4292  <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>
4293    <a name="SET CHANNEL AUDIO_OUTPUT_TYPE"></a><br /><hr />
4294    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4295    <a name="rfc.section.6.4.15"></a><h3>6.4.15.&nbsp;
4296    Setting audio output type</h3>
4297    
4298  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4299  </p>  </p>
4300  <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
4301                      channel by sending the following command:                      channel by sending the following command:
4302  </p>  </p>
4303  <p></p>  <p>
4304                            </p>
4305  <blockquote class="text">  <blockquote class="text">
4306  <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;
4307  </p>  </p>
4308  </blockquote>  </blockquote><p>
4309                        
4310    </p>
4311  <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
4312                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
4313  </p>  </p>
4314  <p>Possible Answers:  <p>Possible Answers:
4315  </p>  </p>
4316  <p></p>  <p>
4317                            </p>
4318  <blockquote class="text">  <blockquote class="text">
4319  <p>"OK" -  <p>"OK" -
4320                                  </p>                                  </p>
# Line 3482  Intellectual Property and Copyright Stat Line 4322  Intellectual Property and Copyright Stat
4322  <p>on success  <p>on success
4323  </p>  </p>
4324  </blockquote>  </blockquote>
4325                                
4326    
4327  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4328                                  </p>                                  </p>
# Line 3491  Intellectual Property and Copyright Stat Line 4332  Intellectual Property and Copyright Stat
4332                                      warning message                                      warning message
4333  </p>  </p>
4334  </blockquote>  </blockquote>
4335                                
4336    
4337  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4338                                  </p>                                  </p>
# Line 3498  Intellectual Property and Copyright Stat Line 4340  Intellectual Property and Copyright Stat
4340  <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
4341  </p>  </p>
4342  </blockquote>  </blockquote>
4343                                
4344    
4345  </blockquote>  </blockquote><p>
4346                        
4347    </p>
4348  <p>Examples:  <p>Examples:
4349  </p>  </p>
4350  <p></p>  <p>
4351                            </p>
4352  <blockquote class="text">  <blockquote class="text">
4353  <p>  <p>
4354  </p>  </p>
4355  </blockquote>  </blockquote><p>
4356                        
4357  <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>
4358    <a name="SET CHANNEL AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
4359    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4360    <a name="rfc.section.6.4.16"></a><h3>6.4.16.&nbsp;
4361    Setting audio output channel</h3>
4362    
4363  <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
4364                      sampler channel by sending the following command:                      sampler channel by sending the following command:
4365  </p>  </p>
4366  <p></p>  <p>
4367                            </p>
4368  <blockquote class="text">  <blockquote class="text">
4369  <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;
4370  </p>  </p>
4371  </blockquote>  </blockquote><p>
4372                        
4373  <p>Where &lt;sampler-chan&gt; is the sampler channel number, &lt;audio-out&gt; is the  </p>
4374    <p>Where &lt;sampler-chan&gt; is the sampler channel number
4375                        as returned by the <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a>
4376                        or <a class='info' href='#LIST CHANNELS'>"LIST CHANNELS"<span> (</span><span class='info'>Getting all created sampler channel list</span><span>)</span></a> command, &lt;audio-out&gt; is the
4377                      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
4378                      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
4379                      output device where &lt;audio-out&gt; should be routed to.                      output device where &lt;audio-out&gt; should be routed to.
4380  </p>  </p>
4381  <p>Possible Answers:  <p>Possible Answers:
4382  </p>  </p>
4383  <p></p>  <p>
4384                            </p>
4385  <blockquote class="text">  <blockquote class="text">
4386  <p>"OK" -  <p>"OK" -
4387                                  </p>                                  </p>
# Line 3535  Intellectual Property and Copyright Stat Line 4389  Intellectual Property and Copyright Stat
4389  <p>on success  <p>on success
4390  </p>  </p>
4391  </blockquote>  </blockquote>
4392                                
4393    
4394  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4395                                  </p>                                  </p>
# Line 3544  Intellectual Property and Copyright Stat Line 4399  Intellectual Property and Copyright Stat
4399                                      warning message                                      warning message
4400  </p>  </p>
4401  </blockquote>  </blockquote>
4402                                
4403    
4404  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4405                                  </p>                                  </p>
# Line 3551  Intellectual Property and Copyright Stat Line 4407  Intellectual Property and Copyright Stat
4407  <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
4408  </p>  </p>
4409  </blockquote>  </blockquote>
4410                                
4411    
4412  </blockquote>  </blockquote><p>
4413                        
4414    </p>
4415  <p>Examples:  <p>Examples:
4416  </p>  </p>
4417  <p></p>  <p>
4418                            </p>
4419  <blockquote class="text">  <blockquote class="text">
4420  <p>  <p>
4421  </p>  </p>
4422  </blockquote>  </blockquote><p>
4423                        
4424  <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>
4425    <a name="SET CHANNEL MIDI_INPUT_DEVICE"></a><br /><hr />
4426    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4427    <a name="rfc.section.6.4.17"></a><h3>6.4.17.&nbsp;
4428    Setting MIDI input device</h3>
4429    
4430  <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
4431                      channel by sending the following command:                      channel by sending the following command:
4432  </p>  </p>
4433  <p></p>  <p>
4434                            </p>
4435  <blockquote class="text">  <blockquote class="text">
4436  <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;
4437  </p>  </p>
4438  </blockquote>  </blockquote><p>
4439                        
4440  <p>Where &lt;sampler-channel&gt; is the sampler channel number and &lt;midi-device-id&gt; is the  </p>
4441                      the numerical ID of the MIDI input device.  <p>Where &lt;sampler-channel&gt; is the sampler channel number
4442                        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>
4443                        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
4444                        and &lt;midi-device-id&gt; is  the numerical ID of the MIDI input device as returned by the
4445                        <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>
4446                        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.
4447  </p>  </p>
4448  <p>Possible Answers:  <p>Possible Answers:
4449  </p>  </p>
4450  <p></p>  <p>
4451                            </p>
4452  <blockquote class="text">  <blockquote class="text">
4453  <p>"OK" -  <p>"OK" -
4454                                  </p>                                  </p>
# Line 3586  Intellectual Property and Copyright Stat Line 4456  Intellectual Property and Copyright Stat
4456  <p>on success  <p>on success
4457  </p>  </p>
4458  </blockquote>  </blockquote>
4459                                
4460    
4461  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4462                                  </p>                                  </p>
# Line 3595  Intellectual Property and Copyright Stat Line 4466  Intellectual Property and Copyright Stat
4466                                      warning message                                      warning message
4467  </p>  </p>
4468  </blockquote>  </blockquote>
4469                                
4470    
4471  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4472                                  </p>                                  </p>
# Line 3602  Intellectual Property and Copyright Stat Line 4474  Intellectual Property and Copyright Stat
4474  <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
4475  </p>  </p>
4476  </blockquote>  </blockquote>
4477                                
4478    
4479  </blockquote>  </blockquote><p>
4480                        
4481    </p>
4482  <p>Examples:  <p>Examples:
4483  </p>  </p>
4484  <p></p>  <p>
4485                            </p>
4486  <blockquote class="text">  <blockquote class="text">
4487  <p>  <p>
4488  </p>  </p>
4489  </blockquote>  </blockquote><p>
4490                        
4491  <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>
4492    <a name="SET CHANNEL MIDI_INPUT_TYPE"></a><br /><hr />
4493    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4494    <a name="rfc.section.6.4.18"></a><h3>6.4.18.&nbsp;
4495    Setting MIDI input type</h3>
4496    
4497  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!  <p>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!
4498  </p>  </p>
4499  <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
4500                      channel by sending the following command:                      channel by sending the following command:
4501  </p>  </p>
4502  <p></p>  <p>
4503                            </p>
4504  <blockquote class="text">  <blockquote class="text">
4505  <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;
4506  </p>  </p>
4507  </blockquote>  </blockquote><p>
4508                        
4509    </p>
4510  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and  <p>Where &lt;midi-input-type&gt; is currently only "ALSA" and
4511                      &lt;sampler-channel&gt; is the respective sampler channel number.                      &lt;sampler-channel&gt; is the respective sampler channel number.
4512  </p>  </p>
4513  <p>Possible Answers:  <p>Possible Answers:
4514  </p>  </p>
4515  <p></p>  <p>
4516                            </p>
4517  <blockquote class="text">  <blockquote class="text">
4518  <p>"OK" -  <p>"OK" -
4519                                  </p>                                  </p>
# Line 3639  Intellectual Property and Copyright Stat Line 4521  Intellectual Property and Copyright Stat
4521  <p>on success  <p>on success
4522  </p>  </p>
4523  </blockquote>  </blockquote>
4524                                
4525    
4526  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4527                                  </p>                                  </p>
# Line 3648  Intellectual Property and Copyright Stat Line 4531  Intellectual Property and Copyright Stat
4531                                      warning message                                      warning message
4532  </p>  </p>
4533  </blockquote>  </blockquote>
4534                                
4535    
4536  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4537                                  </p>                                  </p>
# Line 3655  Intellectual Property and Copyright Stat Line 4539  Intellectual Property and Copyright Stat
4539  <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
4540  </p>  </p>
4541  </blockquote>  </blockquote>
4542                                
4543    
4544  </blockquote>  </blockquote><p>
4545                        
4546    </p>
4547  <p>Examples:  <p>Examples:
4548  </p>  </p>
4549  <p></p>  <p>
4550                            </p>
4551  <blockquote class="text">  <blockquote class="text">
4552  <p>  <p>
4553  </p>  </p>
4554  </blockquote>  </blockquote><p>
4555                        
4556  <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>
4557    <a name="SET CHANNEL MIDI_INPUT_PORT"></a><br /><hr />
4558    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4559    <a name="rfc.section.6.4.19"></a><h3>6.4.19.&nbsp;
4560    Setting MIDI input port</h3>
4561    
4562  <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
4563                      channel by sending the following command:                      channel by sending the following command:
4564  </p>  </p>
4565  <p></p>  <p>
4566                            </p>
4567  <blockquote class="text">  <blockquote class="text">
4568  <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;
4569  </p>  </p>
4570  </blockquote>  </blockquote><p>
4571                        
4572    </p>
4573  <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
4574                      MIDI input device connected to the sampler channel given by                      MIDI input device connected to the sampler channel given by
4575                      &lt;sampler-channel&gt;.                      &lt;sampler-channel&gt;.
4576  </p>  </p>
4577  <p>Possible Answers:  <p>Possible Answers:
4578  </p>  </p>
4579  <p></p>  <p>
4580                            </p>
4581  <blockquote class="text">  <blockquote class="text">
4582  <p>"OK" -  <p>"OK" -
4583                                  </p>                                  </p>
# Line 3691  Intellectual Property and Copyright Stat Line 4585  Intellectual Property and Copyright Stat
4585  <p>on success  <p>on success
4586  </p>  </p>
4587  </blockquote>  </blockquote>
4588                                
4589    
4590  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4591                                  </p>                                  </p>
# Line 3700  Intellectual Property and Copyright Stat Line 4595  Intellectual Property and Copyright Stat
4595                                      warning message                                      warning message
4596  </p>  </p>
4597  </blockquote>  </blockquote>
4598                                
4599    
4600  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4601                                  </p>                                  </p>
# Line 3707  Intellectual Property and Copyright Stat Line 4603  Intellectual Property and Copyright Stat
4603  <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
4604  </p>  </p>
4605  </blockquote>  </blockquote>
4606                                
4607    
4608  </blockquote>  </blockquote><p>
4609                        
4610    </p>
4611  <p>Examples:  <p>Examples:
4612  </p>  </p>
4613  <p></p>  <p>
4614                            </p>
4615  <blockquote class="text">  <blockquote class="text">
4616  <p>  <p>
4617  </p>  </p>
4618  </blockquote>  </blockquote><p>
4619                        
4620  <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>
4621    <a name="SET CHANNEL MIDI_INPUT_CHANNEL"></a><br /><hr />
4622    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4623    <a name="rfc.section.6.4.20"></a><h3>6.4.20.&nbsp;
4624    Setting MIDI input channel</h3>
4625    
4626  <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
4627                      listen to by sending the following command:                      listen to by sending the following command:
4628  </p>  </p>
4629  <p></p>  <p>
4630                            </p>
4631  <blockquote class="text">  <blockquote class="text">
4632  <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;
4633  </p>  </p>
4634  </blockquote>  </blockquote><p>
4635                        
4636    </p>
4637  <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
4638                      &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
4639                      channels.                      channels.
4640  </p>  </p>
4641  <p>Possible Answers:  <p>Possible Answers:
4642  </p>  </p>
4643  <p></p>  <p>
4644                            </p>
4645  <blockquote class="text">  <blockquote class="text">
4646  <p>"OK" -  <p>"OK" -
4647                                  </p>                                  </p>
# Line 3743  Intellectual Property and Copyright Stat Line 4649  Intellectual Property and Copyright Stat
4649  <p>on success  <p>on success
4650  </p>  </p>
4651  </blockquote>  </blockquote>
4652                                
4653    
4654  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4655                                  </p>                                  </p>
# Line 3752  Intellectual Property and Copyright Stat Line 4659  Intellectual Property and Copyright Stat
4659                                      warning message                                      warning message
4660  </p>  </p>
4661  </blockquote>  </blockquote>
4662                                
4663    
4664  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4665                                  </p>                                  </p>
# Line 3759  Intellectual Property and Copyright Stat Line 4667  Intellectual Property and Copyright Stat
4667  <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
4668  </p>  </p>
4669  </blockquote>  </blockquote>
4670                                
4671    
4672  </blockquote>  </blockquote><p>
4673                        
4674    </p>
4675  <p>Examples:  <p>Examples:
4676  </p>  </p>
4677  <p></p>  <p>
4678                            </p>
4679  <blockquote class="text">  <blockquote class="text">
4680  <p>  <p>
4681  </p>  </p>
4682  </blockquote>  </blockquote><p>
4683                        
4684  <a name="rfc.section.5.4.21"></a><h4><a name="SET CHANNEL VOLUME">5.4.21</a>&nbsp;Setting channel volume</h4>  </p>
4685    <a name="SET CHANNEL VOLUME"></a><br /><hr />
4686    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4687    <a name="rfc.section.6.4.21"></a><h3>6.4.21.&nbsp;
4688    Setting channel volume</h3>
4689    
4690  <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
4691                      the following command:                      the following command:
4692  </p>  </p>
4693  <p></p>  <p>
4694                            </p>
4695  <blockquote class="text">  <blockquote class="text">
4696  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;  <p>SET CHANNEL VOLUME &lt;sampler-channel&gt; &lt;volume&gt;
4697  </p>  </p>
4698  </blockquote>  </blockquote><p>
4699                        
4700    </p>
4701  <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
4702                      smaller than 1.0 means attenuation, whereas a value greater than                      smaller than 1.0 means attenuation, whereas a value greater than
4703                      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 4705  Intellectual Property and Copyright Stat
4705  </p>  </p>
4706  <p>Possible Answers:  <p>Possible Answers:
4707  </p>  </p>
4708  <p></p>  <p>
4709                            </p>
4710  <blockquote class="text">  <blockquote class="text">
4711  <p>"OK" -  <p>"OK" -
4712                                  </p>                                  </p>
# Line 3796  Intellectual Property and Copyright Stat Line 4714  Intellectual Property and Copyright Stat
4714  <p>on success  <p>on success
4715  </p>  </p>
4716  </blockquote>  </blockquote>
4717                                
4718    
4719  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4720                                  </p>                                  </p>
# Line 3805  Intellectual Property and Copyright Stat Line 4724  Intellectual Property and Copyright Stat
4724                                      warning message                                      warning message
4725  </p>  </p>
4726  </blockquote>  </blockquote>
4727                                
4728    
4729  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4730                                  </p>                                  </p>
# Line 3812  Intellectual Property and Copyright Stat Line 4732  Intellectual Property and Copyright Stat
4732  <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
4733  </p>  </p>
4734  </blockquote>  </blockquote>
4735                                
4736    
4737    </blockquote><p>
4738                        
4739    </p>
4740    <p>Examples:
4741    </p>
4742    <p>
4743                            </p>
4744    <blockquote class="text">
4745    <p>
4746    </p>
4747    </blockquote><p>
4748                        
4749    </p>
4750    <a name="SET CHANNEL MUTE"></a><br /><hr />
4751    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4752    <a name="rfc.section.6.4.22"></a><h3>6.4.22.&nbsp;
4753    Muting a sampler channel</h3>
4754    
4755    <p>The front-end can mute/unmute a specific sampler
4756                        channel by sending the following command:
4757    </p>
4758    <p>
4759                            </p>
4760    <blockquote class="text">
4761    <p>SET CHANNEL MUTE &lt;sampler-channel&gt; &lt;mute&gt;
4762    </p>
4763    </blockquote><p>
4764                        
4765    </p>
4766    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4767                        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>
4768                        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
4769                        &lt;mute&gt; should be replaced either by "1" to mute the channel or "0"
4770                        to unmute the channel.
4771    </p>
4772    <p>Possible Answers:
4773    </p>
4774    <p>
4775                            </p>
4776    <blockquote class="text">
4777    <p>"OK" -
4778                                    </p>
4779    <blockquote class="text">
4780    <p>on success
4781    </p>
4782  </blockquote>  </blockquote>
4783                                
4784    
4785    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
4786                                    </p>
4787    <blockquote class="text">
4788    <p>if the channel was muted/unmuted, but there are noteworthy
4789                                        issue(s) related, providing an appropriate warning code and
4790                                        warning message
4791    </p>
4792    </blockquote>
4793                                
4794    
4795    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4796                                    </p>
4797    <blockquote class="text">
4798    <p>in case it failed, providing an appropriate error code and error message
4799    </p>
4800    </blockquote>
4801                                
4802    
4803    </blockquote><p>
4804                        
4805    </p>
4806  <p>Examples:  <p>Examples:
4807  </p>  </p>
4808  <p></p>  <p>
4809                            </p>
4810  <blockquote class="text">  <blockquote class="text">
4811  <p>  <p>
4812  </p>  </p>
4813    </blockquote><p>
4814                        
4815    </p>
4816    <a name="SET CHANNEL SOLO"></a><br /><hr />
4817    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4818    <a name="rfc.section.6.4.23"></a><h3>6.4.23.&nbsp;
4819    Soloing a sampler channel</h3>
4820    
4821    <p>The front-end can solo/unsolo a specific sampler channel
4822                        by sending the following command:
4823    </p>
4824    <p>
4825                            </p>
4826    <blockquote class="text">
4827    <p>SET CHANNEL SOLO &lt;sampler-channel&gt; &lt;solo&gt;
4828    </p>
4829    </blockquote><p>
4830                        
4831    </p>
4832    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4833                        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>
4834                        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
4835                        &lt;solo&gt; should be replaced either by "1" to solo the channel or "0"
4836                        to unsolo the channel.
4837    </p>
4838    <p>Possible Answers:
4839    </p>
4840    <p>
4841                            </p>
4842    <blockquote class="text">
4843    <p>"OK" -
4844                                    </p>
4845    <blockquote class="text">
4846    <p>on success
4847    </p>
4848  </blockquote>  </blockquote>
4849                                
4850    
4851  <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;" -
4852                                    </p>
4853    <blockquote class="text">
4854    <p>if the channel was soloed/unsoloed, but there are noteworthy
4855                                        issue(s) related, providing an appropriate warning code and
4856                                        warning message
4857    </p>
4858    </blockquote>
4859                                
4860    
4861  <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;" -
4862                                    </p>
4863    <blockquote class="text">
4864    <p>in case it failed, providing an appropriate error code and error message
4865    </p>
4866    </blockquote>
4867                                
4868    
4869    </blockquote><p>
4870                        
4871  </p>  </p>
4872  <p></p>  <p>Examples:
4873    </p>
4874    <p>
4875                            </p>
4876  <blockquote class="text">  <blockquote class="text">
4877  <p>RESET CHANNEL &lt;sampler-channel&gt;  <p>
4878    </p>
4879    </blockquote><p>
4880                        
4881    </p>
4882    <a name="SET CHANNEL MIDI_INSTRUMENT_MAP"></a><br /><hr />
4883    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4884    <a name="rfc.section.6.4.24"></a><h3>6.4.24.&nbsp;
4885    Assigning a MIDI instrument map to a sampler channel</h3>
4886    
4887    <p>The front-end can assign a MIDI instrument map to a specific sampler channel
4888                        by sending the following command:
4889    </p>
4890    <p>
4891                            </p>
4892    <blockquote class="text">
4893    <p>SET CHANNEL MIDI_INSTRUMENT_MAP &lt;sampler-channel&gt; &lt;map&gt;
4894    </p>
4895    </blockquote><p>
4896                        
4897    </p>
4898    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4899                        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>
4900                        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
4901                        &lt;map&gt; can have the following possibilites:
4902    </p>
4903    <p>
4904                            </p>
4905    <blockquote class="text">
4906    <p>"NONE" -
4907                                    </p>
4908    <blockquote class="text">
4909    <p>This is the default setting. In this case
4910                                        the sampler channel is not assigned any MIDI
4911                                        instrument map and thus will ignore all MIDI
4912                                        program change messages.
4913    </p>
4914    </blockquote>
4915                                
4916    
4917    <p>"DEFAULT" -
4918                                    </p>
4919    <blockquote class="text">
4920    <p>The sampler channel will always use the
4921                                        default MIDI instrument map to handle MIDI
4922                                        program change messages.
4923    </p>
4924    </blockquote>
4925                                
4926    
4927    <p>numeric ID -
4928                                    </p>
4929    <blockquote class="text">
4930    <p>You can assign a specific MIDI instrument map
4931                                        by replacing &lt;map&gt; with the respective numeric
4932                                        ID of the MIDI instrument map as returned by the
4933                                        <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>
4934                                        command. Once that map will be deleted, the sampler
4935                                        channel would fall back to "NONE".
4936    </p>
4937    </blockquote>
4938                                
4939    
4940    </blockquote><p>
4941                        
4942    </p>
4943    <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>
4944                        for details regarding MIDI instrument mapping.
4945    </p>
4946    <p>Possible Answers:
4947    </p>
4948    <p>
4949                            </p>
4950    <blockquote class="text">
4951    <p>"OK" -
4952                                    </p>
4953    <blockquote class="text">
4954    <p>on success
4955    </p>
4956    </blockquote>
4957                                
4958    
4959    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
4960                                    </p>
4961    <blockquote class="text">
4962    <p>in case it failed, providing an appropriate error code and error message
4963    </p>
4964    </blockquote>
4965                                
4966    
4967    </blockquote><p>
4968                        
4969    </p>
4970    <p>Examples:
4971    </p>
4972    <p>
4973                            </p>
4974    <blockquote class="text">
4975    <p>
4976    </p>
4977    </blockquote><p>
4978                        
4979    </p>
4980    <a name="CREATE FX_SEND"></a><br /><hr />
4981    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
4982    <a name="rfc.section.6.4.25"></a><h3>6.4.25.&nbsp;
4983    Adding an effect send to a sampler channel</h3>
4984    
4985    <p>The front-end can create an additional effect send on a specific sampler channel
4986                        by sending the following command:
4987    </p>
4988    <p>
4989                            </p>
4990    <blockquote class="text">
4991    <p>CREATE FX_SEND &lt;sampler-channel&gt; &lt;midi-ctrl&gt; [&lt;name&gt;]
4992    </p>
4993    </blockquote><p>
4994                        
4995    </p>
4996    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
4997                        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>
4998                        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
4999                        sampler channel on which the effect send should be created on, &lt;midi-ctrl&gt;
5000                        is a number between 0..127 defining the MIDI controller which can alter the
5001                        effect send level and &lt;name&gt; is an optional argument defining a name
5002                        for the effect send entity. The name does not have to be unique.
5003    </p>
5004    <p>By default, that is as initial routing, the effect send's audio channels
5005                        are automatically routed to the last audio channels of the sampler channel's
5006                        audio output device, that way you can i.e. first increase the amount of audio
5007                        channels on the audio output device for having dedicated effect send output
5008                        channels and when "CREATE FX_SEND" is called, those channels will automatically
5009                        be picked. You can alter the destination channels however with
5010                        <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>.
5011                        
5012    </p>
5013    <p>Note: Create effect sends on a sampler channel only when needed, because having effect
5014                        sends on a sampler channel will decrease runtime performance, because for implementing channel
5015                        effect sends, separate (sampler channel local) audio buffers are needed to render and mix
5016                        the voices and route the audio signal afterwards to the master outputs and effect send
5017                        outputs (along with their respective effect send levels). A sampler channel without effect
5018                        sends however can mix its voices directly into the audio output devices's audio buffers
5019                        and is thus faster.
5020                        
5021    </p>
5022    <p>Possible Answers:
5023    </p>
5024    <p>
5025                            </p>
5026    <blockquote class="text">
5027    <p>"OK[&lt;fx-send-id&gt;]" -
5028                                    </p>
5029    <blockquote class="text">
5030    <p>in case a new effect send could be added to the
5031                                        sampler channel, where &lt;fx-send-id&gt; reflects the
5032                                        unique ID of the newly created effect send entity
5033  </p>  </p>
5034  </blockquote>  </blockquote>
5035                                
5036    
5037    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5038                                    </p>
5039    <blockquote class="text">
5040    <p>when a new effect send could not be added, i.e.
5041                                        due to invalid parameters
5042    </p>
5043    </blockquote>
5044                                
5045    
5046    </blockquote><p>
5047                        
5048    </p>
5049    <p>Examples:
5050    </p>
5051    <p>
5052                            </p>
5053    <blockquote class="text">
5054    <p>C: "CREATE FX_SEND 0 91 'Reverb Send'"
5055    </p>
5056    <p>S: "OK[0]"
5057    </p>
5058    </blockquote><p>
5059                        
5060    </p>
5061    <p>
5062                            </p>
5063    <blockquote class="text">
5064    <p>C: "CREATE FX_SEND 0 93"
5065    </p>
5066    <p>S: "OK[1]"
5067    </p>
5068    </blockquote><p>
5069                        
5070    </p>
5071    <a name="DESTROY FX_SEND"></a><br /><hr />
5072    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5073    <a name="rfc.section.6.4.26"></a><h3>6.4.26.&nbsp;
5074    Removing an effect send from a sampler channel</h3>
5075    
5076    <p>The front-end can remove an existing effect send on a specific sampler channel
5077                        by sending the following command:
5078    </p>
5079    <p>
5080                            </p>
5081    <blockquote class="text">
5082    <p>DESTROY FX_SEND &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5083    </p>
5084    </blockquote><p>
5085                        
5086    </p>
5087    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5088                        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>
5089                        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
5090                        sampler channel from which the effect send should be removed from and
5091                        &lt;fx-send-id&gt; is the respective effect send number as returned by the
5092                        <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>
5093                        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.
5094    </p>
5095    <p>Possible Answers:
5096    </p>
5097    <p>
5098                            </p>
5099    <blockquote class="text">
5100    <p>"OK" -
5101                                    </p>
5102    <blockquote class="text">
5103    <p>on success
5104    </p>
5105    </blockquote>
5106                                
5107    
5108    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5109                                    </p>
5110    <blockquote class="text">
5111    <p>in case it failed, providing an appropriate error code and
5112                                        error message
5113    </p>
5114    </blockquote>
5115                                
5116    
5117    </blockquote><p>
5118                        
5119    </p>
5120    <p>Example:
5121    </p>
5122    <p>
5123                            </p>
5124    <blockquote class="text">
5125    <p>C: "DESTROY FX_SEND 0 0"
5126    </p>
5127    <p>S: "OK"
5128    </p>
5129    </blockquote><p>
5130                        
5131    </p>
5132    <a name="GET FX_SENDS"></a><br /><hr />
5133    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5134    <a name="rfc.section.6.4.27"></a><h3>6.4.27.&nbsp;
5135    Getting amount of effect sends on a sampler channel</h3>
5136    
5137    <p>The front-end can ask for the amount of effect sends on a specific sampler channel
5138                        by sending the following command:
5139    </p>
5140    <p>
5141                            </p>
5142    <blockquote class="text">
5143    <p>GET FX_SENDS &lt;sampler-channel&gt;
5144    </p>
5145    </blockquote><p>
5146                        
5147    </p>
5148    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5149                        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>
5150                        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.
5151    </p>
5152    <p>Possible Answers:
5153    </p>
5154    <p>
5155                            </p>
5156    <blockquote class="text">
5157    <p>The sampler will answer by returning the number of effect
5158                                sends on the given sampler channel.
5159    </p>
5160    </blockquote><p>
5161                        
5162    </p>
5163    <p>Example:
5164    </p>
5165    <p>
5166                            </p>
5167    <blockquote class="text">
5168    <p>C: "GET FX_SENDS 0"
5169    </p>
5170    <p>S: "2"
5171    </p>
5172    </blockquote><p>
5173                        
5174    </p>
5175    <a name="LIST FX_SENDS"></a><br /><hr />
5176    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5177    <a name="rfc.section.6.4.28"></a><h3>6.4.28.&nbsp;
5178    Listing all effect sends on a sampler channel</h3>
5179    
5180    <p>The front-end can ask for a list of effect sends on a specific sampler channel
5181                        by sending the following command:
5182    </p>
5183    <p>
5184                            </p>
5185    <blockquote class="text">
5186    <p>LIST FX_SENDS &lt;sampler-channel&gt;
5187    </p>
5188    </blockquote><p>
5189                        
5190    </p>
5191    <p>Where &lt;sampler-channel&gt; is the respective sampler channel
5192                        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>
5193                        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.
5194    </p>
5195    <p>Possible Answers:
5196    </p>
5197    <p>
5198                            </p>
5199    <blockquote class="text">
5200    <p>The sampler will answer by returning a comma separated list
5201                                with all effect sends' numerical IDs on the given sampler
5202                                channel.
5203    </p>
5204    </blockquote><p>
5205                        
5206    </p>
5207    <p>Examples:
5208    </p>
5209    <p>
5210                            </p>
5211    <blockquote class="text">
5212    <p>C: "LIST FX_SENDS 0"
5213    </p>
5214    <p>S: "0,1"
5215    </p>
5216    </blockquote><p>
5217                        
5218    </p>
5219    <p>
5220                            </p>
5221    <blockquote class="text">
5222    <p>C: "LIST FX_SENDS 1"
5223    </p>
5224    <p>S: ""
5225    </p>
5226    </blockquote><p>
5227                        
5228    </p>
5229    <a name="GET FX_SEND INFO"></a><br /><hr />
5230    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5231    <a name="rfc.section.6.4.29"></a><h3>6.4.29.&nbsp;
5232    Getting effect send information</h3>
5233    
5234    <p>The front-end can ask for the current settings of an effect send entity
5235                        by sending the following command:
5236    </p>
5237    <p>
5238                            </p>
5239    <blockquote class="text">
5240    <p>GET FX_SEND INFO &lt;sampler-channel&gt; &lt;fx-send-id&gt;
5241    </p>
5242    </blockquote><p>
5243                        
5244    </p>
5245    <p>Where &lt;sampler-channel&gt; is the sampler channel number
5246                        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>
5247                        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
5248                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5249                        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>
5250                        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.
5251                      
5252    </p>
5253    <p>Possible Answers:
5254    </p>
5255    <p>
5256                            </p>
5257    <blockquote class="text">
5258    <p>The sampler will answer by sending a &lt;CRLF&gt; separated list.
5259                                Each answer line begins with the settings category name
5260                                followed by a colon and then a space character &lt;SP&gt; and finally
5261                                the info character string to that setting category. At the
5262                                moment the following categories are defined:
5263    </p>
5264    <p>
5265                                    </p>
5266    <blockquote class="text">
5267    <p>NAME -
5268                                            </p>
5269    <blockquote class="text">
5270    <p>name of the effect send entity
5271    </p>
5272    </blockquote>
5273                                        
5274    
5275    <p>MIDI_CONTROLLER -
5276                                            </p>
5277    <blockquote class="text">
5278    <p>a value between 0 and 127 reflecting the MIDI controller
5279                                                which is able to modify the effect send's send level
5280    </p>
5281    </blockquote>
5282                                        
5283    
5284    <p>LEVEL -
5285                                            </p>
5286    <blockquote class="text">
5287    <p>optionally dotted number reflecting the effect send's
5288                                                current send level (where a value &lt; 1.0 means attenuation
5289                                                and a value > 1.0 means amplification)
5290    </p>
5291    </blockquote>
5292                                        
5293    
5294    <p>AUDIO_OUTPUT_ROUTING -
5295                                            </p>
5296    <blockquote class="text">
5297    <p>comma separated list which reflects to which audio
5298                                                channel of the selected audio output device each
5299                                                effect send output channel is routed to, e.g. "0,3" would
5300                                                mean the effect send's output channel 0 is routed to channel
5301                                                0 of the audio output device and the effect send's output
5302                                                channel 1 is routed to the channel 3 of the audio
5303                                                output device (see
5304                                                <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>
5305                                                for details)
5306    </p>
5307    </blockquote>
5308                                        
5309    
5310    </blockquote>
5311                                
5312    
5313    </blockquote><p>
5314                        
5315    </p>
5316    <p>The mentioned fields above don't have to be in particular order.
5317    </p>
5318    <p>Example:
5319    </p>
5320    <p>
5321                            </p>
5322    <blockquote class="text">
5323    <p>C: "GET FX_SEND INFO 0 0"
5324    </p>
5325    <p>S: "NAME: Reverb Send"
5326    </p>
5327    <p>&nbsp;&nbsp;&nbsp;"MIDI_CONTROLLER: 91"
5328    </p>
5329    <p>&nbsp;&nbsp;&nbsp;"LEVEL: 0.3"
5330    </p>
5331    <p>&nbsp;&nbsp;&nbsp;"AUDIO_OUTPUT_ROUTING: 2,3"
5332    </p>
5333    <p>&nbsp;&nbsp;&nbsp;"."
5334    </p>
5335    </blockquote><p>
5336                        
5337    </p>
5338    <a name="SET FX_SEND NAME"></a><br /><hr />
5339    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5340    <a name="rfc.section.6.4.30"></a><h3>6.4.30.&nbsp;
5341    Changing effect send's name</h3>
5342    
5343    <p>The front-end can alter the current name of an effect
5344                        send entity by sending the following command:
5345    </p>
5346    <p>
5347                            </p>
5348    <blockquote class="text">
5349    <p>SET FX_SEND NAME &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;name&gt;
5350    </p>
5351    </blockquote><p>
5352                        
5353    </p>
5354    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5355                        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>
5356                        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,
5357                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5358                        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>
5359                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command and
5360                        &lt;name&gt; is the new name of the effect send entity, which
5361                        does not have to be unique.
5362    </p>
5363    <p>Possible Answers:
5364    </p>
5365    <p>
5366                            </p>
5367    <blockquote class="text">
5368    <p>"OK" -
5369                                    </p>
5370    <blockquote class="text">
5371    <p>on success
5372    </p>
5373    </blockquote>
5374                                
5375    
5376    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5377                                    </p>
5378    <blockquote class="text">
5379    <p>in case it failed, providing an appropriate error code and error message
5380    </p>
5381    </blockquote>
5382                                
5383    
5384    </blockquote><p>
5385                        
5386    </p>
5387    <p>Example:
5388    </p>
5389    <p>
5390                            </p>
5391    <blockquote class="text">
5392    <p>C: "SET FX_SEND NAME 0 0 'Fx Send 1'"
5393    </p>
5394    <p>S: "OK"
5395    </p>
5396    </blockquote><p>
5397                        
5398    </p>
5399    <a name="SET FX_SEND AUDIO_OUTPUT_CHANNEL"></a><br /><hr />
5400    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5401    <a name="rfc.section.6.4.31"></a><h3>6.4.31.&nbsp;
5402    Altering effect send's audio routing</h3>
5403    
5404    <p>The front-end can alter the destination of an effect send's audio channel on a specific
5405                        sampler channel by sending the following command:
5406    </p>
5407    <p>
5408                            </p>
5409    <blockquote class="text">
5410    <p>SET FX_SEND AUDIO_OUTPUT_CHANNEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;audio-src&gt; &lt;audio-dst&gt;
5411    </p>
5412    </blockquote><p>
5413                        
5414    </p>
5415    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5416                        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>
5417                        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,
5418                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5419                        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>
5420                        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,
5421                        &lt;audio-src&gt; is the numerical ID of the effect send's audio channel
5422                        which should be rerouted and &lt;audio-dst&gt; is the numerical ID of
5423                        the audio channel of the selected audio output device where &lt;audio-src&gt;
5424                        should be routed to.
5425    </p>
5426    <p>Note that effect sends can only route audio to the same audio output
5427                        device as assigned to the effect send's sampler channel. Also note that an
5428                        effect send entity does always have exactly as much audio channels as its
5429                        sampler channel. So if the sampler channel is stereo, the effect send does
5430                        have two audio channels as well. Also keep in mind that the amount of audio
5431                        channels on a sampler channel might be dependant not only to the deployed
5432                        sampler engine on the sampler channel, but also dependant to the instrument
5433                        currently loaded. However you can (effectively) turn an i.e. stereo effect
5434                        send into a mono one by simply altering its audio routing appropriately.
5435    </p>
5436    <p>Possible Answers:
5437    </p>
5438    <p>
5439                            </p>
5440    <blockquote class="text">
5441    <p>"OK" -
5442                                    </p>
5443    <blockquote class="text">
5444    <p>on success
5445    </p>
5446    </blockquote>
5447                                
5448    
5449    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5450                                    </p>
5451    <blockquote class="text">
5452    <p>if audio output channel was set, but there are noteworthy
5453                                        issue(s) related, providing an appropriate warning code and
5454                                        warning message
5455    </p>
5456    </blockquote>
5457                                
5458    
5459    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5460                                    </p>
5461    <blockquote class="text">
5462    <p>in case it failed, providing an appropriate error code and error message
5463    </p>
5464    </blockquote>
5465                                
5466    
5467    </blockquote><p>
5468                        
5469    </p>
5470    <p>Example:
5471    </p>
5472    <p>
5473                            </p>
5474    <blockquote class="text">
5475    <p>C: "SET FX_SEND AUDIO_OUTPUT_CHANNEL 0 0 0 2"
5476    </p>
5477    <p>S: "OK"
5478    </p>
5479    </blockquote><p>
5480                        
5481    </p>
5482    <a name="SET FX_SEND MIDI_CONTROLLER"></a><br /><hr />
5483    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5484    <a name="rfc.section.6.4.32"></a><h3>6.4.32.&nbsp;
5485    Altering effect send's MIDI controller</h3>
5486    
5487    <p>The front-end can alter the MIDI controller of an effect
5488                        send entity by sending the following command:
5489    </p>
5490    <p>
5491                            </p>
5492    <blockquote class="text">
5493    <p>SET FX_SEND MIDI_CONTROLLER &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;midi-ctrl&gt;
5494    </p>
5495    </blockquote><p>
5496                        
5497    </p>
5498    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5499                        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>
5500                        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,
5501                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5502                        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>
5503                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command and
5504                        &lt;midi-ctrl&gt; reflects the MIDI controller which shall be
5505                        able to modify the effect send's send level.
5506    </p>
5507    <p>Possible Answers:
5508    </p>
5509    <p>
5510                            </p>
5511    <blockquote class="text">
5512    <p>"OK" -
5513                                    </p>
5514    <blockquote class="text">
5515    <p>on success
5516    </p>
5517    </blockquote>
5518                                
5519    
5520    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5521                                    </p>
5522    <blockquote class="text">
5523    <p>if MIDI controller was set, but there are noteworthy
5524                                        issue(s) related, providing an appropriate warning code and
5525                                        warning message
5526    </p>
5527    </blockquote>
5528                                
5529    
5530    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5531                                    </p>
5532    <blockquote class="text">
5533    <p>in case it failed, providing an appropriate error code and error message
5534    </p>
5535    </blockquote>
5536                                
5537    
5538    </blockquote><p>
5539                        
5540    </p>
5541    <p>Example:
5542    </p>
5543    <p>
5544                            </p>
5545    <blockquote class="text">
5546    <p>C: "SET FX_SEND MIDI_CONTROLLER 0 0 91"
5547    </p>
5548    <p>S: "OK"
5549    </p>
5550    </blockquote><p>
5551                        
5552    </p>
5553    <a name="SET FX_SEND LEVEL"></a><br /><hr />
5554    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5555    <a name="rfc.section.6.4.33"></a><h3>6.4.33.&nbsp;
5556    Altering effect send's send level</h3>
5557    
5558    <p>The front-end can alter the current send level of an effect
5559                        send entity by sending the following command:
5560    </p>
5561    <p>
5562                            </p>
5563    <blockquote class="text">
5564    <p>SET FX_SEND LEVEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;volume&gt;
5565    </p>
5566    </blockquote><p>
5567                        
5568    </p>
5569    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5570                        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>
5571                        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,
5572                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
5573                        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>
5574                        or <a class='info' href='#LIST FX_SENDS'>"LIST FX_SENDS"<span> (</span><span class='info'>Listing all effect sends on a sampler channel</span><span>)</span></a> command and
5575                        &lt;volume&gt; is an optionally dotted positive number (a value
5576                        smaller than 1.0 means attenuation, whereas a value greater than
5577                        1.0 means amplification) reflecting the new send level.
5578    </p>
5579    <p>Possible Answers:
5580    </p>
5581    <p>
5582                            </p>
5583    <blockquote class="text">
5584    <p>"OK" -
5585                                    </p>
5586    <blockquote class="text">
5587    <p>on success
5588    </p>
5589    </blockquote>
5590                                
5591    
5592    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5593                                    </p>
5594    <blockquote class="text">
5595    <p>if new send level was set, but there are noteworthy
5596                                        issue(s) related, providing an appropriate warning code and
5597                                        warning message
5598    </p>
5599    </blockquote>
5600                                
5601    
5602    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5603                                    </p>
5604    <blockquote class="text">
5605    <p>in case it failed, providing an appropriate error code and error message
5606    </p>
5607    </blockquote>
5608                                
5609    
5610    </blockquote><p>
5611                        
5612    </p>
5613    <p>Example:
5614    </p>
5615    <p>
5616                            </p>
5617    <blockquote class="text">
5618    <p>C: "SET FX_SEND LEVEL 0 0 0.15"
5619    </p>
5620    <p>S: "OK"
5621    </p>
5622    </blockquote><p>
5623                        
5624    </p>
5625    <a name="RESET CHANNEL"></a><br /><hr />
5626    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5627    <a name="rfc.section.6.4.34"></a><h3>6.4.34.&nbsp;
5628    Resetting a sampler channel</h3>
5629    
5630    <p>The front-end can reset a particular sampler channel by sending the following command:
5631    </p>
5632    <p>
5633                            </p>
5634    <blockquote class="text">
5635    <p>RESET CHANNEL &lt;sampler-channel&gt;
5636    </p>
5637    </blockquote><p>
5638                        
5639    </p>
5640  <p>  <p>
5641                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.                      Where &lt;sampler-channel&gt; defines the sampler channel to be reset.
5642                      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 5645  Intellectual Property and Copyright Stat
5645  </p>  </p>
5646  <p>Possible Answers:  <p>Possible Answers:
5647  </p>  </p>
5648  <p></p>  <p>
5649                            </p>
5650  <blockquote class="text">  <blockquote class="text">
5651  <p>"OK" -  <p>"OK" -
5652                                  </p>                                  </p>
# Line 3849  Intellectual Property and Copyright Stat Line 5654  Intellectual Property and Copyright Stat
5654  <p>on success  <p>on success
5655  </p>  </p>
5656  </blockquote>  </blockquote>
5657                                
5658    
5659  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5660                                  </p>                                  </p>
# Line 3858  Intellectual Property and Copyright Stat Line 5664  Intellectual Property and Copyright Stat
5664                                      message                                      message
5665  </p>  </p>
5666  </blockquote>  </blockquote>
5667                                
5668    
5669  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5670                                  </p>                                  </p>
# Line 3866  Intellectual Property and Copyright Stat Line 5673  Intellectual Property and Copyright Stat
5673                                      error message                                      error message
5674  </p>  </p>
5675  </blockquote>  </blockquote>
5676                                
5677    
5678  </blockquote>  </blockquote><p>
5679                        
5680    </p>
5681  <p>Examples:  <p>Examples:
5682  </p>  </p>
5683  <p></p>  <p>
5684                            </p>
5685  <blockquote class="text">  <blockquote class="text">
5686  <p>  <p>
5687  </p>  </p>
5688  </blockquote>  </blockquote><p>
5689                        
5690  <a name="rfc.section.5.5"></a><h4><a name="anchor13">5.5</a>&nbsp;Controlling connection</h4>  </p>
5691    <a name="anchor12"></a><br /><hr />
5692    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5693    <a name="rfc.section.6.5"></a><h3>6.5.&nbsp;
5694    Controlling connection</h3>
5695    
5696  <p>The following commands are used to control the connection to LinuxSampler.  <p>The following commands are used to control the connection to LinuxSampler.
5697  </p>  </p>
5698  <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 />
5699    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5700    <a name="rfc.section.6.5.1"></a><h3>6.5.1.&nbsp;
5701    Register front-end for receiving event messages</h3>
5702    
5703  <p>The front-end can register itself to the LinuxSampler application to  <p>The front-end can register itself to the LinuxSampler application to
5704                      be informed about noteworthy events by sending this command:                      be informed about noteworthy events by sending this command:
5705  </p>  </p>
5706  <p></p>  <p>
5707                            </p>
5708  <blockquote class="text">  <blockquote class="text">
5709  <p>SUBSCRIBE &lt;event-id&gt;  <p>SUBSCRIBE &lt;event-id&gt;
5710  </p>  </p>
5711  </blockquote>  </blockquote><p>
5712                        
5713    </p>
5714  <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
5715                      client wants to subscribe to.                      client wants to subscribe to.
5716  </p>  </p>
5717  <p>Possible Answers:  <p>Possible Answers:
5718  </p>  </p>
5719  <p></p>  <p>
5720                            </p>
5721  <blockquote class="text">  <blockquote class="text">
5722  <p>"OK" -  <p>"OK" -
5723                                  </p>                                  </p>
# Line 3905  Intellectual Property and Copyright Stat Line 5725  Intellectual Property and Copyright Stat
5725  <p>on success  <p>on success
5726  </p>  </p>
5727  </blockquote>  </blockquote>
5728                                
5729    
5730  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5731                                  </p>                                  </p>
# Line 3914  Intellectual Property and Copyright Stat Line 5735  Intellectual Property and Copyright Stat
5735                                      warning message                                      warning message
5736  </p>  </p>
5737  </blockquote>  </blockquote>
5738                                
5739    
5740  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5741                                  </p>                                  </p>
# Line 3922  Intellectual Property and Copyright Stat Line 5744  Intellectual Property and Copyright Stat
5744                                      error message                                      error message
5745  </p>  </p>
5746  </blockquote>  </blockquote>
5747                                
5748    
5749  </blockquote>  </blockquote><p>
5750                        
5751    </p>
5752  <p>Examples:  <p>Examples:
5753  </p>  </p>
5754  <p></p>  <p>
5755                            </p>
5756  <blockquote class="text">  <blockquote class="text">
5757  <p>  <p>
5758  </p>  </p>
5759  </blockquote>  </blockquote><p>
5760                        
5761  <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>
5762    <a name="UNSUBSCRIBE"></a><br /><hr />
5763    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5764    <a name="rfc.section.6.5.2"></a><h3>6.5.2.&nbsp;
5765    Unregister front-end for not receiving event messages</h3>
5766    
5767  <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
5768                      messages anymore by sending the following command:                      messages anymore by sending the following command:
5769  </p>  </p>
5770  <p></p>  <p>
5771                            </p>
5772  <blockquote class="text">  <blockquote class="text">
5773  <p>UNSUBSCRIBE &lt;event-id&gt;  <p>UNSUBSCRIBE &lt;event-id&gt;
5774  </p>  </p>
5775  </blockquote>  </blockquote><p>
5776                        
5777    </p>
5778  <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
5779                      client doesn't want to receive anymore.                      client doesn't want to receive anymore.
5780  </p>  </p>
5781  <p>Possible Answers:  <p>Possible Answers:
5782  </p>  </p>
5783  <p></p>  <p>
5784                            </p>
5785  <blockquote class="text">  <blockquote class="text">
5786  <p>"OK" -  <p>"OK" -
5787                                  </p>                                  </p>
# Line 3957  Intellectual Property and Copyright Stat Line 5789  Intellectual Property and Copyright Stat
5789  <p>on success  <p>on success
5790  </p>  </p>
5791  </blockquote>  </blockquote>
5792                                
5793    
5794  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -  <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
5795                                  </p>                                  </p>
# Line 3966  Intellectual Property and Copyright Stat Line 5799  Intellectual Property and Copyright Stat
5799                                      warning message                                      warning message
5800  </p>  </p>
5801  </blockquote>  </blockquote>
5802                                
5803    
5804  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5805                                  </p>                                  </p>
# Line 3974  Intellectual Property and Copyright Stat Line 5808  Intellectual Property and Copyright Stat
5808                                      error message                                      error message
5809  </p>  </p>
5810  </blockquote>  </blockquote>
5811                                
5812    
5813  </blockquote>  </blockquote><p>
5814                        
5815    </p>
5816  <p>Examples:  <p>Examples:
5817  </p>  </p>
5818  <p></p>  <p>
5819                            </p>
5820  <blockquote class="text">  <blockquote class="text">
5821  <p>  <p>
5822  </p>  </p>
5823  </blockquote>  </blockquote><p>
5824                        
5825  <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>
5826    <a name="SET ECHO"></a><br /><hr />
5827    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5828    <a name="rfc.section.6.5.3"></a><h3>6.5.3.&nbsp;
5829    Enable or disable echo of commands</h3>
5830    
5831  <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:
5832  </p>  </p>
5833  <p></p>  <p>
5834                            </p>
5835  <blockquote class="text">  <blockquote class="text">
5836  <p>SET ECHO &lt;value&gt;  <p>SET ECHO &lt;value&gt;
5837  </p>  </p>
5838  </blockquote>  </blockquote><p>
5839                        
5840    </p>
5841  <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
5842                      or "0" to disable echo mode. When echo mode is enabled, all                      or "0" to disable echo mode. When echo mode is enabled, all
5843                      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 5848  Intellectual Property and Copyright Stat
5848  </p>  </p>
5849  <p>Possible Answers:  <p>Possible Answers:
5850  </p>  </p>
5851  <p></p>  <p>
5852                            </p>
5853  <blockquote class="text">  <blockquote class="text">
5854  <p>"OK" -  <p>"OK" -
5855                                  </p>                                  </p>
# Line 4013  Intellectual Property and Copyright Stat Line 5857  Intellectual Property and Copyright Stat
5857  <p>usually  <p>usually
5858  </p>  </p>
5859  </blockquote>  </blockquote>
5860                                
5861    
5862  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -  <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5863                                  </p>                                  </p>
# Line 4020  Intellectual Property and Copyright Stat Line 5865  Intellectual Property and Copyright Stat
5865  <p>on syntax error, e.g. non boolean value  <p>on syntax error, e.g. non boolean value
5866  </p>  </p>
5867  </blockquote>  </blockquote>
5868                                
5869    
5870  </blockquote>  </blockquote><p>
5871                        
5872    </p>
5873  <p>Examples:  <p>Examples:
5874  </p>  </p>
5875  <p></p>  <p>
5876                            </p>
5877  <blockquote class="text">  <blockquote class="text">
5878  <p>  <p>
5879  </p>  </p>
5880  </blockquote>  </blockquote><p>
5881                        
5882  <a name="rfc.section.5.5.4"></a><h4><a name="QUIT">5.5.4</a>&nbsp;Close client connection</h4>  </p>
5883    <a name="QUIT"></a><br /><hr />
5884    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5885    <a name="rfc.section.6.5.4"></a><h3>6.5.4.&nbsp;
5886    Close client connection</h3>
5887    
5888  <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:
5889  </p>  </p>
5890  <p></p>  <p>
5891                            </p>
5892  <blockquote class="text">  <blockquote class="text">
5893  <p>QUIT  <p>QUIT
5894  </p>  </p>
5895  </blockquote>  </blockquote><p>
5896                        
5897    </p>
5898  <p>This is probably more interesting for manual telnet connections to  <p>This is probably more interesting for manual telnet connections to
5899                      LinuxSampler than really useful for a front-end implementation.                      LinuxSampler than really useful for a front-end implementation.
5900  </p>  </p>
5901  <a name="rfc.section.5.6"></a><h4><a name="anchor14">5.6</a>&nbsp;Global commands</h4>  <a name="anchor13"></a><br /><hr />
5902    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5903    <a name="rfc.section.6.6"></a><h3>6.6.&nbsp;
5904    Global commands</h3>
5905    
5906  <p>The following commands have global impact on the sampler.  <p>The following commands have global impact on the sampler.
5907  </p>  </p>
5908  <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 />
5909    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5910    <a name="rfc.section.6.6.1"></a><h3>6.6.1.&nbsp;
5911    Current number of active voices</h3>
5912    
5913    <p>The front-end can ask for the current number of active voices on
5914                        the sampler by sending the following command:
5915    </p>
5916    <p>
5917                            </p>
5918    <blockquote class="text">
5919    <p>GET TOTAL_VOICE_COUNT
5920    </p>
5921    </blockquote><p>
5922                        
5923    </p>
5924    <p>Possible Answers:
5925    </p>
5926    <p>
5927                            </p>
5928    <blockquote class="text">
5929    <p>LinuxSampler will answer by returning the number of all active
5930                                voices on the sampler.
5931    </p>
5932    </blockquote><p>
5933                        
5934    </p>
5935    <a name="GET TOTAL_VOICE_COUNT_MAX"></a><br /><hr />
5936    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5937    <a name="rfc.section.6.6.2"></a><h3>6.6.2.&nbsp;
5938    Maximum amount of active voices</h3>
5939    
5940    <p>The front-end can ask for the maximum number of active voices
5941                        by sending the following command:
5942    </p>
5943    <p>
5944                            </p>
5945    <blockquote class="text">
5946    <p>GET TOTAL_VOICE_COUNT_MAX
5947    </p>
5948    </blockquote><p>
5949                        
5950    </p>
5951    <p>Possible Answers:
5952    </p>
5953    <p>
5954                            </p>
5955    <blockquote class="text">
5956    <p>LinuxSampler will answer by returning the maximum number
5957                                of active voices.
5958    </p>
5959    </blockquote><p>
5960                        
5961    </p>
5962    <a name="RESET"></a><br /><hr />
5963    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5964    <a name="rfc.section.6.6.3"></a><h3>6.6.3.&nbsp;
5965    Reset sampler</h3>
5966    
5967  <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:
5968  </p>  </p>
5969  <p></p>  <p>
5970                            </p>
5971  <blockquote class="text">  <blockquote class="text">
5972  <p>RESET  <p>RESET
5973  </p>  </p>
5974    </blockquote><p>
5975                        
5976    </p>
5977    <p>Possible Answers:
5978    </p>
5979    <p>
5980                            </p>
5981    <blockquote class="text">
5982    <p>"OK" -
5983                                    </p>
5984    <blockquote class="text">
5985    <p>always
5986    </p>
5987  </blockquote>  </blockquote>
5988                                
5989    
5990    </blockquote><p>
5991                        
5992    </p>
5993    <p>Examples:
5994    </p>
5995    <p>
5996                            </p>
5997    <blockquote class="text">
5998    <p>
5999    </p>
6000    </blockquote><p>
6001                        
6002    </p>
6003    <a name="GET SERVER INFO"></a><br /><hr />
6004    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6005    <a name="rfc.section.6.6.4"></a><h3>6.6.4.&nbsp;
6006    General sampler informations</h3>
6007    
6008    <p>The client can ask for general informations about the LinuxSampler
6009                           instance by sending the following command:
6010    </p>
6011    <p>
6012                            </p>
6013    <blockquote class="text">
6014    <p>GET SERVER INFO
6015    </p>
6016    </blockquote><p>
6017                        
6018    </p>
6019  <p>Possible Answers:  <p>Possible Answers:
6020  </p>  </p>
6021  <p></p>  <p>
6022                            </p>
6023    <blockquote class="text">
6024    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
6025                                   Each answer line begins with the information category name
6026                                   followed by a colon and then a space character &lt;SP&gt; and finally
6027                                   the info character string to that information category. At the
6028                                   moment the following categories are defined:
6029                                
6030    </p>
6031    <p>
6032                                    </p>
6033    <blockquote class="text">
6034    <p>DESCRIPTION -
6035                                            </p>
6036    <blockquote class="text">
6037    <p>arbitrary textual description about the sampler
6038    </p>
6039    </blockquote>
6040                                        
6041    
6042    <p>VERSION -
6043                                            </p>
6044    <blockquote class="text">
6045    <p>version of the sampler
6046    </p>
6047    </blockquote>
6048                                        
6049    
6050    <p>PROTOCOL_VERSION -
6051                                            </p>
6052    <blockquote class="text">
6053    <p>version of the LSCP specification the sampler
6054                                                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)
6055    </p>
6056    </blockquote>
6057                                        
6058    
6059    </blockquote>
6060                                
6061    
6062    </blockquote><p>
6063                        
6064    </p>
6065    <p>The mentioned fields above don't have to be in particular order.
6066                        Other fields might be added in future.
6067    </p>
6068    <a name="GET VOLUME"></a><br /><hr />
6069    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6070    <a name="rfc.section.6.6.5"></a><h3>6.6.5.&nbsp;
6071    Getting global volume attenuation</h3>
6072    
6073    <p>The client can ask for the current global sampler-wide volume
6074                        attenuation by sending the following command:
6075    </p>
6076    <p>
6077                            </p>
6078    <blockquote class="text">
6079    <p>GET VOLUME
6080    </p>
6081    </blockquote><p>
6082                        
6083    </p>
6084    <p>Possible Answers:
6085    </p>
6086    <p>
6087                            </p>
6088    <blockquote class="text">
6089    <p>The sampler will always answer by returning the optional
6090                                dotted floating point coefficient, reflecting the current
6091                                global volume attenuation.
6092                                
6093    </p>
6094    </blockquote><p>
6095                        
6096    </p>
6097    <p>Note: it is up to the respective sampler engine whether to obey
6098                        that global volume parameter or not, but in general all engines SHOULD
6099                        use this parameter.
6100    </p>
6101    <a name="SET VOLUME"></a><br /><hr />
6102    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6103    <a name="rfc.section.6.6.6"></a><h3>6.6.6.&nbsp;
6104    Setting global volume attenuation</h3>
6105    
6106    <p>The client can alter the current global sampler-wide volume
6107                        attenuation by sending the following command:
6108    </p>
6109    <p>
6110                            </p>
6111    <blockquote class="text">
6112    <p>SET VOLUME &lt;volume&gt;
6113    </p>
6114    </blockquote><p>
6115                        
6116    </p>
6117    <p>Where &lt;volume&gt; should be replaced by the optional dotted
6118                       floating point value, reflecting the new global volume parameter.
6119                       This value might usually be in the range between 0.0 and 1.0, that
6120                       is for attenuating the overall volume.
6121    </p>
6122    <p>Possible Answers:
6123    </p>
6124    <p>
6125                            </p>
6126  <blockquote class="text">  <blockquote class="text">
6127  <p>"OK" -  <p>"OK" -
6128                                  </p>                                  </p>
6129  <blockquote class="text">  <blockquote class="text">
6130  <p>always  <p>on success
6131  </p>  </p>
6132  </blockquote>  </blockquote>
6133                                
6134    
6135    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6136                                    </p>
6137    <blockquote class="text">
6138    <p>if the global volume was set, but there are noteworthy
6139                                        issue(s) related, providing an appropriate warning code and
6140                                        warning message
6141    </p>
6142  </blockquote>  </blockquote>
6143                                
6144    
6145    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6146                                    </p>
6147    <blockquote class="text">
6148    <p>in case it failed, providing an appropriate error code and error message
6149    </p>
6150    </blockquote>
6151                                
6152    
6153    </blockquote><p>
6154                        
6155    </p>
6156    <a name="MIDI Instrument Mapping"></a><br /><hr />
6157    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6158    <a name="rfc.section.6.7"></a><h3>6.7.&nbsp;
6159    MIDI Instrument Mapping</h3>
6160    
6161    <p>The MIDI protocol provides a way to switch between instruments
6162                    by sending so called MIDI bank select and MIDI program change
6163                    messages which are essentially just numbers. The following commands
6164                    allow to actually map arbitrary MIDI bank select / program change
6165                    numbers with real instruments.
6166    </p>
6167    <p>The sampler allows to manage an arbitrary amount of MIDI
6168                    instrument maps which define which instrument to load on
6169                    which MIDI program change message.
6170    </p>
6171    <p>By default, that is when the sampler is launched, there is no
6172                    map, thus the sampler will simply ignore all program change
6173                    messages. The front-end has to explicitly create at least one
6174                    map, add entries to the map and tell the respective sampler
6175                    channel(s) which MIDI instrument map to use, so the sampler
6176                    knows how to react on a given program change message on the
6177                    respective sampler channel, that is by switching to the
6178                    respectively defined engine type and loading the respective
6179                    instrument. See command
6180                    <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>
6181                    for how to assign a MIDI instrument map to a sampler channel.
6182    </p>
6183    <p>Also note per MIDI specification a bank select message does not
6184                    cause to switch to another instrument. Instead when receiving a
6185                    bank select message the bank value will be stored and a subsequent
6186                    program change message (which may occur at any time) will finally
6187                    cause the sampler to switch to the respective instrument as
6188                    reflected by the current MIDI instrument map.
6189    </p>
6190    <a name="ADD MIDI_INSTRUMENT MAP"></a><br /><hr />
6191    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6192    <a name="rfc.section.6.7.1"></a><h3>6.7.1.&nbsp;
6193    Create a new MIDI instrument map</h3>
6194    
6195    <p>The front-end can add a new MIDI instrument map by sending
6196                        the following command:
6197    </p>
6198    <p>
6199                            </p>
6200    <blockquote class="text">
6201    <p>ADD MIDI_INSTRUMENT_MAP [&lt;name&gt;]
6202    </p>
6203    </blockquote><p>
6204                        
6205    </p>
6206    <p>Where &lt;name&gt; is an optional argument allowing to
6207                        assign a custom name to the new map. MIDI instrument Map
6208                        names do not have to be unique.
6209    </p>
6210    <p>Possible Answers:
6211    </p>
6212    <p>
6213                            </p>
6214    <blockquote class="text">
6215    <p>"OK[&lt;map&gt;]" -
6216                                    </p>
6217    <blockquote class="text">
6218    <p>in case a new MIDI instrument map could
6219                                        be added, where &lt;map&gt; reflects the
6220                                        unique ID of the newly created MIDI
6221                                        instrument map
6222    </p>
6223    </blockquote>
6224                                
6225    
6226    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6227                                    </p>
6228    <blockquote class="text">
6229    <p>when a new map could not be created, which
6230                                        might never occur in practice
6231    </p>
6232    </blockquote>
6233                                
6234    
6235    </blockquote><p>
6236                        
6237    </p>
6238  <p>Examples:  <p>Examples:
6239  </p>  </p>
6240  <p></p>  <p>
6241                            </p>
6242    <blockquote class="text">
6243    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Map'"
6244    </p>
6245    <p>S: "OK[0]"
6246    </p>
6247    </blockquote><p>
6248                        
6249    </p>
6250    <p>
6251                            </p>
6252    <blockquote class="text">
6253    <p>C: "ADD MIDI_INSTRUMENT_MAP 'Standard Drumkit'"
6254    </p>
6255    <p>S: "OK[1]"
6256    </p>
6257    </blockquote><p>
6258                        
6259    </p>
6260    <p>
6261                            </p>
6262    <blockquote class="text">
6263    <p>C: "ADD MIDI_INSTRUMENT_MAP"
6264    </p>
6265    <p>S: "OK[5]"
6266    </p>
6267    </blockquote><p>
6268                        
6269    </p>
6270    <a name="REMOVE MIDI_INSTRUMENT_MAP"></a><br /><hr />
6271    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6272    <a name="rfc.section.6.7.2"></a><h3>6.7.2.&nbsp;
6273    Delete one particular or all MIDI instrument maps</h3>
6274    
6275    <p>The front-end can delete a particular MIDI instrument map
6276                        by sending the following command:
6277    </p>
6278    <p>
6279                            </p>
6280    <blockquote class="text">
6281    <p>REMOVE MIDI_INSTRUMENT_MAP &lt;map&gt;
6282    </p>
6283    </blockquote><p>
6284                        
6285    </p>
6286    <p>Where &lt;map&gt; reflects the unique ID of the map to delete
6287                        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>
6288                        command.
6289    </p>
6290    <p>The front-end can delete all MIDI instrument maps by
6291                        sending the following command:
6292    </p>
6293    <p>
6294                            </p>
6295    <blockquote class="text">
6296    <p>REMOVE MIDI_INSTRUMENT_MAP ALL
6297    </p>
6298    </blockquote><p>
6299                        
6300    </p>
6301    <p>Possible Answers:
6302    </p>
6303    <p>
6304                            </p>
6305    <blockquote class="text">
6306    <p>"OK" -
6307                                    </p>
6308    <blockquote class="text">
6309    <p>in case the map(s) could be deleted
6310    </p>
6311    </blockquote>
6312                                
6313    
6314    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6315                                    </p>
6316    <blockquote class="text">
6317    <p>when the given map does not exist
6318    </p>
6319    </blockquote>
6320                                
6321    
6322    </blockquote><p>
6323                        
6324    </p>
6325    <p>Examples:
6326    </p>
6327    <p>
6328                            </p>
6329    <blockquote class="text">
6330    <p>C: "REMOVE MIDI_INSTRUMENT_MAP 0"
6331    </p>
6332    <p>S: "OK"
6333    </p>
6334    </blockquote><p>
6335                        
6336    </p>
6337    <p>
6338                            </p>
6339    <blockquote class="text">
6340    <p>C: "REMOVE MIDI_INSTRUMENT_MAP ALL"
6341    </p>
6342    <p>S: "OK"
6343    </p>
6344    </blockquote><p>
6345                        
6346    </p>
6347    <a name="GET MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6348    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6349    <a name="rfc.section.6.7.3"></a><h3>6.7.3.&nbsp;
6350    Get amount of existing MIDI instrument maps</h3>
6351    
6352    <p>The front-end can retrieve the current amount of MIDI
6353                        instrument maps by sending the following command:
6354    </p>
6355    <p>
6356                            </p>
6357    <blockquote class="text">
6358    <p>GET MIDI_INSTRUMENT_MAPS
6359    </p>
6360    </blockquote><p>
6361                        
6362    </p>
6363    <p>Possible Answers:
6364    </p>
6365    <p>
6366                            </p>
6367    <blockquote class="text">
6368    <p>The sampler will answer by returning the current
6369                                number of MIDI instrument maps.
6370    </p>
6371    </blockquote><p>
6372                        
6373    </p>
6374    <p>Example:
6375    </p>
6376    <p>
6377                            </p>
6378    <blockquote class="text">
6379    <p>C: "GET MIDI_INSTRUMENT_MAPS"
6380    </p>
6381    <p>S: "2"
6382    </p>
6383    </blockquote><p>
6384                        
6385    </p>
6386    <a name="LIST MIDI_INSTRUMENT_MAPS"></a><br /><hr />
6387    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6388    <a name="rfc.section.6.7.4"></a><h3>6.7.4.&nbsp;
6389    Getting all created MIDI instrument maps</h3>
6390    
6391    <p>The number of MIDI instrument maps can change on runtime. To get the
6392                        current list of MIDI instrument maps, the front-end can send the
6393                        following command:
6394    </p>
6395    <p>
6396                            </p>
6397    <blockquote class="text">
6398    <p>LIST MIDI_INSTRUMENT_MAPS
6399    </p>
6400    </blockquote><p>
6401                        
6402    </p>
6403    <p>Possible Answers:
6404    </p>
6405    <p>
6406                            </p>
6407    <blockquote class="text">
6408    <p>The sampler will answer by returning a comma separated list
6409                                with all MIDI instrument maps' numerical IDs.
6410    </p>
6411    </blockquote><p>
6412                        
6413    </p>
6414    <p>Example:
6415    </p>
6416    <p>
6417                            </p>
6418    <blockquote class="text">
6419    <p>C: "LIST MIDI_INSTRUMENT_MAPS"
6420    </p>
6421    <p>S: "0,1,5,12"
6422    </p>
6423    </blockquote><p>
6424                        
6425    </p>
6426    <a name="GET MIDI_INSTRUMENT_MAP INFO"></a><br /><hr />
6427    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6428    <a name="rfc.section.6.7.5"></a><h3>6.7.5.&nbsp;
6429    Getting MIDI instrument map information</h3>
6430    
6431    <p>The front-end can ask for the current settings of a MIDI
6432                        instrument map by sending the following command:
6433    </p>
6434    <p>
6435                            </p>
6436    <blockquote class="text">
6437    <p>GET MIDI_INSTRUMENT_MAP INFO &lt;map&gt;
6438    </p>
6439    </blockquote><p>
6440                        
6441    </p>
6442    <p>Where &lt;map&gt; is the numerical ID of the map the
6443                        front-end is interested in as returned by the
6444                        <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>
6445                        command.
6446    </p>
6447    <p>Possible Answers:
6448    </p>
6449    <p>
6450                            </p>
6451    <blockquote class="text">
6452    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
6453                                Each answer line begins with the settings category name
6454                                followed by a colon and then a space character &lt;SP&gt; and finally
6455                                the info character string to that setting category. At the
6456                                moment the following categories are defined:
6457    </p>
6458    <p>
6459                                    </p>
6460    <blockquote class="text">
6461    <p>NAME -
6462                                            </p>
6463    <blockquote class="text">
6464    <p>custom name of the given map,
6465                                                which does not have to be unique
6466    </p>
6467    </blockquote>
6468                                        
6469    
6470    <p>DEFAULT -
6471                                            </p>
6472    <blockquote class="text">
6473    <p>either true or false,
6474                                                defines whether this map is the default map
6475    </p>
6476    </blockquote>
6477                                        
6478    
6479    </blockquote>
6480                                
6481    
6482    </blockquote><p>
6483                        
6484    </p>
6485    <p>The mentioned fields above don't have to be in particular order.
6486    </p>
6487    <p>Example:
6488    </p>
6489    <p>
6490                            </p>
6491    <blockquote class="text">
6492    <p>C: "GET MIDI_INSTRUMENT_MAP INFO 0"
6493    </p>
6494    <p>S: "NAME: Standard Map"
6495    </p>
6496    <p>&nbsp;&nbsp;&nbsp;"DEFAULT: true"
6497    </p>
6498    <p>&nbsp;&nbsp;&nbsp;"."
6499    </p>
6500    </blockquote><p>
6501                        
6502    </p>
6503    <a name="SET MIDI_INSTRUMENT_MAP NAME"></a><br /><hr />
6504    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6505    <a name="rfc.section.6.7.6"></a><h3>6.7.6.&nbsp;
6506    Renaming a MIDI instrument map</h3>
6507    
6508    <p>The front-end can alter the custom name of a MIDI
6509                        instrument map by sending the following command:
6510    </p>
6511    <p>
6512                            </p>
6513    <blockquote class="text">
6514    <p>SET MIDI_INSTRUMENT_MAP NAME &lt;map&gt; &lt;name&gt;
6515    </p>
6516    </blockquote><p>
6517                        
6518    </p>
6519    <p>Where &lt;map&gt; is the numerical ID of the map and
6520                        &lt;name&gt; the new custom name of the map, which does not
6521                        have to be unique.
6522    </p>
6523    <p>Possible Answers:
6524    </p>
6525    <p>
6526                            </p>
6527    <blockquote class="text">
6528    <p>"OK" -
6529                                    </p>
6530    <blockquote class="text">
6531    <p>on success
6532    </p>
6533    </blockquote>
6534                                
6535    
6536    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6537                                    </p>
6538    <blockquote class="text">
6539    <p>in case the given map does not exist
6540    </p>
6541    </blockquote>
6542                                
6543    
6544    </blockquote><p>
6545                        
6546    </p>
6547    <p>Example:
6548    </p>
6549    <p>
6550                            </p>
6551    <blockquote class="text">
6552    <p>C: "SET MIDI_INSTRUMENT_MAP NAME 0 'Foo instruments'"
6553    </p>
6554    <p>S: "OK"
6555    </p>
6556    </blockquote><p>
6557                        
6558    </p>
6559    <a name="MAP MIDI_INSTRUMENT"></a><br /><hr />
6560    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6561    <a name="rfc.section.6.7.7"></a><h3>6.7.7.&nbsp;
6562    Create or replace a MIDI instrument map entry</h3>
6563    
6564    <p>The front-end can create a new or replace an existing entry
6565                        in a sampler's MIDI instrument map by sending the following
6566                        command:
6567    </p>
6568    <p>
6569                            </p>
6570    <blockquote class="text">
6571    <p>MAP MIDI_INSTRUMENT [NON_MODAL] &lt;map&gt;
6572                                &lt;midi_bank&gt; &lt;midi_prog&gt; &lt;engine_name&gt;
6573                                &lt;filename&gt; &lt;instrument_index&gt; &lt;volume_value&gt;
6574                                [&lt;instr_load_mode&gt;] [&lt;name&gt;]
6575    </p>
6576    </blockquote><p>
6577                        
6578    </p>
6579    <p>Where &lt;map&gt; is the numeric ID of the map to alter,
6580                        &lt;midi_bank&gt; is an integer value between
6581                        0..16383 reflecting the MIDI bank select index,
6582                        &lt;midi_prog&gt; an
6583                        integer value between 0..127 reflecting the MIDI program change
6584                        index, &lt;engine_name&gt; a sampler engine name as returned by
6585                        the <a class='info' href='#LIST AVAILABLE_ENGINES'>"LIST AVAILABLE_ENGINES"<span> (</span><span class='info'>Getting all available engines</span><span>)</span></a>
6586                        command (not encapsulated into apostrophes), &lt;filename&gt; the name
6587                        of the instrument's file to be deployed (encapsulated into apostrophes),
6588                        &lt;instrument_index&gt; the index (integer value) of the instrument
6589                        within the given file, &lt;volume_value&gt; reflects the master
6590                        volume of the instrument as optionally dotted number (where a
6591                        value &lt; 1.0 means attenuation and a value > 1.0 means
6592                        amplification). This parameter easily allows to adjust the
6593                        volume of all intruments within a custom instrument map
6594                        without having to adjust their instrument files. The
6595                        OPTIONAL &lt;instr_load_mode&gt; argument defines the life
6596                        time of the instrument, that is when the instrument should
6597                        be loaded, when freed and has exactly the following
6598                        possibilities:
6599    </p>
6600    <p>
6601                            </p>
6602    <blockquote class="text">
6603    <p>"ON_DEMAND" -
6604                                    </p>
6605    <blockquote class="text">
6606    <p>The instrument will be loaded when needed,
6607                                        that is when demanded by at least one sampler
6608                                        channel. It will immediately be freed from memory
6609                                        when not needed by any sampler channel anymore.
6610    </p>
6611    </blockquote>
6612                                
6613    
6614    <p>"ON_DEMAND_HOLD" -
6615                                    </p>
6616    <blockquote class="text">
6617    <p>The instrument will be loaded when needed,
6618                                        that is when demanded by at least one sampler
6619                                        channel. It will be kept in memory even when
6620                                        not needed by any sampler channel anymore.
6621                                        Instruments with this mode are only freed
6622                                        when the sampler is reset or all mapping
6623                                        entries with this mode (and respective
6624                                        instrument) are explicitly changed to
6625                                        "ON_DEMAND" and no sampler channel is using
6626                                        the instrument anymore.
6627    </p>
6628    </blockquote>
6629                                
6630    
6631    <p>"PERSISTENT" -
6632                                    </p>
6633    <blockquote class="text">
6634    <p>The instrument will immediately be loaded
6635                                        into memory when this mapping
6636                                        command is sent and the instrument is kept all
6637                                        the time. Instruments with this mode are
6638                                        only freed when the sampler is reset or all
6639                                        mapping entries with this mode (and
6640                                        respective instrument) are explicitly
6641                                        changed to "ON_DEMAND" and no sampler
6642                                        channel is using the instrument anymore.
6643    </p>
6644    </blockquote>
6645                                
6646    
6647    <p>not supplied -
6648                                    </p>
6649    <blockquote class="text">
6650    <p>In case there is no &lt;instr_load_mode&gt;
6651                                        argument given, it will be up to the
6652                                        InstrumentManager to decide which mode to use.
6653                                        Usually it will use "ON_DEMAND" if an entry
6654                                        for the given instrument does not exist in
6655                                        the InstrumentManager's list yet, otherwise
6656                                        if an entry already exists, it will simply
6657                                        stick with the mode currently reflected by
6658                                        the already existing entry, that is it will
6659                                        not change the mode.
6660    </p>
6661    </blockquote>
6662                                
6663    
6664    </blockquote><p>
6665                        
6666    </p>
6667    <p>
6668                        The &lt;instr_load_mode&gt; argument thus allows to define an
6669                        appropriate strategy (low memory consumption vs. fast
6670                        instrument switching) for each instrument individually. Note, the
6671                        following restrictions apply to this argument: "ON_DEMAND_HOLD" and
6672                        "PERSISTENT" have to be supported by the respective sampler engine
6673                        (which is technically the case when the engine provides an
6674                        InstrumentManager for its format). If this is not the case the
6675                        argument will automatically fall back to the default value
6676                        "ON_DEMAND". Also the load mode of one instrument may
6677                        automatically change the laod mode of other instrument(s), i.e.
6678                        because the instruments are part of the same file and the
6679                        engine does not allow a way to manage load modes for them
6680                        individually. Due to this, in case the frontend shows the
6681                        load modes of entries, the frontend should retrieve the actual
6682                        mode by i.e. sending
6683                        <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>
6684                        command(s). Finally the OPTIONAL &lt;name&gt; argument allows to
6685                        set a custom name (encapsulated into apostrophes) for the mapping
6686                        entry, useful for frontends for displaying an appropriate name for
6687                        mapped instruments (using
6688                        <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>).
6689                        
6690    </p>
6691    <p>
6692                        By default, "MAP MIDI_INSTRUMENT" commands block until the mapping is
6693                        completely established in the sampler. The OPTIONAL "NON_MODAL" argument
6694                        however causes the respective "MAP MIDI_INSTRUMENT" command to return
6695                        immediately, that is to let the sampler establish the mapping in the
6696                        background. So this argument might be especially useful for mappings with
6697                        a "PERSISTENT" type, because these have to load the respective instruments
6698                        immediately and might thus block for a very long time. It is recommended
6699                        however to use the OPTIONAL "NON_MODAL" argument only if really necessary,
6700                        because it has the following drawbacks: as "NON_MODAL" instructions return
6701                        immediately, they may not necessarily return an error i.e. when the given
6702                        instrument file turns out to be corrupt, beside that subsequent commands
6703                        in a LSCP instruction sequence might fail, because mandatory mappings are
6704                        not yet completed.
6705                        
6706    </p>
6707    <p>Possible Answers:
6708    </p>
6709    <p>
6710                            </p>
6711    <blockquote class="text">
6712    <p>"OK" -
6713                                    </p>
6714    <blockquote class="text">
6715    <p>usually
6716    </p>
6717    </blockquote>
6718                                
6719    
6720    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6721                                    </p>
6722    <blockquote class="text">
6723    <p>when the given map or engine does not exist or a value
6724                                        is out of range
6725    </p>
6726    </blockquote>
6727                                
6728    
6729    </blockquote><p>
6730                        
6731    </p>
6732    <p>Examples:
6733    </p>
6734    <p>
6735                            </p>
6736    <blockquote class="text">
6737    <p>C: "MAP MIDI_INSTRUMENT 0 3 0 gig '/usr/share/Steinway D.gig' 0 0.8 PERSISTENT"
6738    </p>
6739    <p>S: "OK"
6740    </p>
6741    </blockquote><p>
6742                        
6743    </p>
6744    <p>
6745                            </p>
6746    <blockquote class="text">
6747    <p>C: "MAP MIDI_INSTRUMENT 0 4 50 gig '/home/john/foostrings.gig' 7 1.0"
6748    </p>
6749    <p>S: "OK"
6750    </p>
6751    </blockquote><p>
6752                        
6753    </p>
6754    <p>
6755                            </p>
6756    <blockquote class="text">
6757    <p>C: "MAP MIDI_INSTRUMENT 0 0 0 gig '/usr/share/piano.gig' 0 1.0 'Normal Piano'"
6758    </p>
6759    <p>S: "OK"
6760    </p>
6761    <p>C: "MAP MIDI_INSTRUMENT 0 1 0 gig '/usr/share/piano.gig' 0 0.25 'Silent Piano'"
6762    </p>
6763    <p>S: "OK"
6764    </p>
6765    </blockquote><p>
6766                        
6767    </p>
6768    <p>
6769                            </p>
6770    <blockquote class="text">
6771    <p>C: "MAP MIDI_INSTRUMENT NON_MODAL 1 8 120 gig '/home/joe/foodrums.gig' 0 1.0 PERSISTENT 'Foo Drumkit'"
6772    </p>
6773    <p>S: "OK"
6774    </p>
6775    </blockquote><p>
6776                        
6777    </p>
6778    <a name="GET MIDI_INSTRUMENTS"></a><br /><hr />
6779    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6780    <a name="rfc.section.6.7.8"></a><h3>6.7.8.&nbsp;
6781    Getting ammount of MIDI instrument map entries</h3>
6782    
6783    <p>The front-end can query the amount of currently existing
6784                        entries in a MIDI instrument map by sending the following
6785                        command:
6786    </p>
6787    <p>
6788                            </p>
6789    <blockquote class="text">
6790    <p>GET MIDI_INSTRUMENTS &lt;map&gt;
6791    </p>
6792    </blockquote><p>
6793                        
6794    </p>
6795    <p>The front-end can query the amount of currently existing
6796                        entries in all MIDI instrument maps by sending the following
6797                        command:
6798    </p>
6799    <p>
6800                            </p>
6801    <blockquote class="text">
6802    <p>GET MIDI_INSTRUMENTS ALL
6803    </p>
6804    </blockquote><p>
6805                        
6806    </p>
6807    <p>Possible Answers:
6808    </p>
6809    <p>
6810                            </p>
6811    <blockquote class="text">
6812    <p>The sampler will answer by sending the current number of
6813                                entries in the MIDI instrument map(s).
6814    </p>
6815    </blockquote><p>
6816                        
6817    </p>
6818    <p>Example:
6819    </p>
6820    <p>
6821                            </p>
6822    <blockquote class="text">
6823    <p>C: "GET MIDI_INSTRUMENTS 0"
6824    </p>
6825    <p>S: "234"
6826    </p>
6827    </blockquote><p>
6828                        
6829    </p>
6830    <p>
6831                            </p>
6832    <blockquote class="text">
6833    <p>C: "GET MIDI_INSTRUMENTS ALL"
6834    </p>
6835    <p>S: "954"
6836    </p>
6837    </blockquote><p>
6838                        
6839    </p>
6840    <a name="LIST MIDI_INSTRUMENTS"></a><br /><hr />
6841    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6842    <a name="rfc.section.6.7.9"></a><h3>6.7.9.&nbsp;
6843    Getting indeces of all entries of a MIDI instrument map</h3>
6844    
6845    <p>The front-end can query a list of all currently existing
6846                        entries in a certain MIDI instrument map by sending the following
6847                        command:
6848    </p>
6849    <p>
6850                            </p>
6851    <blockquote class="text">
6852    <p>LIST MIDI_INSTRUMENTS &lt;map&gt;
6853    </p>
6854    </blockquote><p>
6855                        
6856    </p>
6857    <p>Where &lt;map&gt; is the numeric ID of the MIDI instrument map.
6858    </p>
6859    <p>The front-end can query a list of all currently existing
6860                        entries of all MIDI instrument maps by sending the following
6861                        command:
6862    </p>
6863    <p>
6864                            </p>
6865    <blockquote class="text">
6866    <p>LIST MIDI_INSTRUMENTS ALL
6867    </p>
6868    </blockquote><p>
6869                        
6870    </p>
6871    <p>Possible Answers:
6872    </p>
6873    <p>
6874                            </p>
6875    <blockquote class="text">
6876    <p>The sampler will answer by sending a comma separated
6877                                list of map ID - MIDI bank - MIDI program triples, where
6878                                each triple is encapsulated into curly braces. The
6879                                list is returned in one single line. Each triple
6880                                just reflects the key of the respective map entry,
6881                                thus subsequent
6882                                <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>
6883                                command(s) are necessary to retrieve detailed informations
6884                                about each entry.
6885    </p>
6886    </blockquote><p>
6887                        
6888    </p>
6889    <p>Example:
6890    </p>
6891    <p>
6892                            </p>
6893    <blockquote class="text">
6894    <p>C: "LIST MIDI_INSTRUMENTS 0"
6895    </p>
6896    <p>S: "{0,0,0},{0,0,1},{0,0,3},{0,1,4},{1,127,127}"
6897    </p>
6898    </blockquote><p>
6899                        
6900    </p>
6901    <a name="UNMAP MIDI_INSTRUMENT"></a><br /><hr />
6902    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6903    <a name="rfc.section.6.7.10"></a><h3>6.7.10.&nbsp;
6904    Remove an entry from the MIDI instrument map</h3>
6905    
6906    <p>The front-end can delete an entry from a MIDI instrument
6907                        map by sending the following command:
6908    </p>
6909    <p>
6910                            </p>
6911    <blockquote class="text">
6912    <p>UNMAP MIDI_INSTRUMENT &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
6913    </p>
6914    </blockquote><p>
6915                        
6916    </p>
6917    <p>
6918                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
6919                        &lt;midi_bank&gt; is an integer value between 0..16383
6920                        reflecting the MIDI bank value and
6921                        &lt;midi_prog&gt; an integer value between
6922                        0..127 reflecting the MIDI program value of the map's entrie's key
6923                        index triple.
6924                        
6925    </p>
6926    <p>Possible Answers:
6927    </p>
6928    <p>
6929                            </p>
6930    <blockquote class="text">
6931    <p>"OK" -
6932                                    </p>
6933    <blockquote class="text">
6934    <p>usually
6935    </p>
6936    </blockquote>
6937                                
6938    
6939    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6940                                    </p>
6941    <blockquote class="text">
6942    <p>when index out of bounds
6943    </p>
6944    </blockquote>
6945                                
6946    
6947    </blockquote><p>
6948                        
6949    </p>
6950    <p>Example:
6951    </p>
6952    <p>
6953                            </p>
6954    <blockquote class="text">
6955    <p>C: "UNMAP MIDI_INSTRUMENT 0 2 127"
6956    </p>
6957    <p>S: "OK"
6958    </p>
6959    </blockquote><p>
6960                        
6961    </p>
6962    <a name="GET MIDI_INSTRUMENT INFO"></a><br /><hr />
6963    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6964    <a name="rfc.section.6.7.11"></a><h3>6.7.11.&nbsp;
6965    Get current settings of MIDI instrument map entry</h3>
6966    
6967    <p>The front-end can retrieve the current settings of a certain
6968                        instrument map entry by sending the following command:
6969    </p>
6970    <p>
6971                            </p>
6972    <blockquote class="text">
6973    <p>GET MIDI_INSTRUMENT INFO &lt;map&gt; &lt;midi_bank&gt; &lt;midi_prog&gt;
6974    </p>
6975    </blockquote><p>
6976                        
6977    </p>
6978    <p>
6979                        Where &lt;map&gt; is the numeric ID of the MIDI instrument map,
6980                        &lt;midi_bank&gt; is an integer value between 0..16383
6981                        reflecting the MIDI bank value, &lt;midi_bank&gt;
6982                        and &lt;midi_prog&gt; an integer value between
6983                        0..127 reflecting the MIDI program value of the map's entrie's key
6984                        index triple.
6985                        
6986    </p>
6987    <p>Possible Answers:
6988    </p>
6989    <p>
6990                            </p>
6991    <blockquote class="text">
6992    <p>LinuxSampler will answer by sending a &lt;CRLF&gt;
6993                                separated list. Each answer line begins with the
6994                                information category name followed by a colon and then
6995                                a space character &lt;SP&gt; and finally the info
6996                                character string to that info category. At the moment
6997                                the following categories are defined:
6998    </p>
6999    <p>"NAME" -
7000                                    </p>
7001    <blockquote class="text">
7002    <p>Name for this MIDI instrument map entry (if defined).
7003                                        This name shall be used by frontends for displaying a
7004                                        name for this mapped instrument. It can be set and
7005                                        changed with the
7006                                        <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>
7007                                        command and does not have to be unique.
7008    </p>
7009    </blockquote>
7010                                
7011    
7012    <p>"ENGINE_NAME" -
7013                                    </p>
7014    <blockquote class="text">
7015    <p>Name of the engine to be deployed for this
7016                                        instrument.
7017    </p>
7018    </blockquote>
7019                                
7020    
7021    <p>"INSTRUMENT_FILE" -
7022                                    </p>
7023    <blockquote class="text">
7024    <p>File name of the instrument.
7025    </p>
7026    </blockquote>
7027                                
7028    
7029    <p>"INSTRUMENT_NR" -
7030                                    </p>
7031    <blockquote class="text">
7032    <p>Index of the instrument within the file.
7033    </p>
7034    </blockquote>
7035                                
7036    
7037    <p>"INSTRUMENT_NAME" -
7038                                    </p>
7039    <blockquote class="text">
7040    <p>Name of the loaded instrument as reflected by its file.
7041                                        In contrast to the "NAME" field, the "INSTRUMENT_NAME" field
7042                                        cannot be changed.
7043    </p>
7044    </blockquote>
7045                                
7046    
7047    <p>"LOAD_MODE" -
7048                                    </p>
7049    <blockquote class="text">
7050    <p>Life time of instrument
7051                                        (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).
7052    </p>
7053    </blockquote>
7054                                
7055    
7056    <p>"VOLUME" -
7057                                    </p>
7058    <blockquote class="text">
7059    <p>master volume of the instrument as optionally
7060                                        dotted number (where a value &lt; 1.0 means attenuation
7061                                        and a value > 1.0 means amplification)
7062    </p>
7063    </blockquote>
7064                                
7065    
7066    <p>The mentioned fields above don't have to be in particular order.
7067    </p>
7068    </blockquote><p>
7069                        
7070    </p>
7071    <p>Example:
7072    </p>
7073    <p>
7074                            </p>
7075    <blockquote class="text">
7076    <p>C: "GET MIDI_INSTRUMENT INFO 1 45 120"
7077    </p>
7078    <p>S: "NAME: Drums for Foo Song"
7079    </p>
7080    <p>&nbsp;&nbsp;&nbsp;"ENGINE_NAME: GigEngine"
7081    </p>
7082    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_FILE: /usr/share/joesdrumkit.gig"
7083    </p>
7084    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NR: 0"
7085    </p>
7086    <p>&nbsp;&nbsp;&nbsp;"INSTRUMENT_NAME: Joe's Drumkit"
7087    </p>
7088    <p>&nbsp;&nbsp;&nbsp;"LOAD_MODE: PERSISTENT"
7089    </p>
7090    <p>&nbsp;&nbsp;&nbsp;"VOLUME: 1.0"
7091    </p>
7092    <p>&nbsp;&nbsp;&nbsp;"."
7093    </p>
7094    </blockquote><p>
7095                        
7096    </p>
7097    <a name="CLEAR MIDI_INSTRUMENTS"></a><br /><hr />
7098    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
7099    <a name="rfc.section.6.7.12"></a><h3>6.7.12.&nbsp;
7100    Clear MIDI instrument map</h3>
7101    
7102    <p>The front-end can clear a whole MIDI instrument map, that
7103                        is delete all its entries by sending the following command:
7104    </p>
7105    <p>
7106                            </p>
7107  <blockquote class="text">  <blockquote class="text">
7108    <p>CLEAR MIDI_INSTRUMENTS &lt;map&gt;
7109    </p>
7110    </blockquote><p>
7111                        
7112    </p>
7113    <p>Where &lt;map&gt; is the numeric ID of the map to clear.
7114    </p>
7115    <p>The front-end can clear all MIDI instrument maps, that
7116                        is delete all entries of all maps by sending the following
7117                        command:
7118    </p>
7119  <p>  <p>
7120                            </p>
7121    <blockquote class="text">
7122    <p>CLEAR MIDI_INSTRUMENTS ALL
7123    </p>
7124    </blockquote><p>
7125                        
7126    </p>
7127    <p>The command "CLEAR MIDI_INSTRUMENTS ALL" does not delete the
7128                        maps, only their entries, thus the map's settings like
7129                        custom name will be preservevd.
7130    </p>
7131    <p>Possible Answers:
7132    </p>
7133    <p>
7134                            </p>
7135    <blockquote class="text">
7136    <p>"OK" -
7137                                    </p>
7138    <blockquote class="text">
7139    <p>always
7140  </p>  </p>
7141  </blockquote>  </blockquote>
7142                                
7143    
7144    </blockquote><p>
7145                        
7146    </p>
7147    <p>Examples:
7148    </p>
7149    <p>
7150                           </p>
7151    <blockquote class="text">
7152    <p>C: "CLEAR MIDI_INSTRUMENTS 0"
7153    </p>
7154    <p>S: "OK"
7155    </p>
7156    </blockquote><p>
7157                        
7158    </p>
7159    <p>
7160                           </p>
7161    <blockquote class="text">
7162    <p>C: "CLEAR MIDI_INSTRUMENTS ALL"
7163    </p>
7164    <p>S: "OK"
7165    </p>
7166    </blockquote><p>
7167                        
7168    </p>
7169  <a name="command_syntax"></a><br /><hr />  <a name="command_syntax"></a><br /><hr />
7170  <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>
7171  <a name="rfc.section.6"></a><h3>6.&nbsp;Command Syntax</h3>  <a name="rfc.section.7"></a><h3>7.&nbsp;
7172    Command Syntax</h3>
7173    
7174    <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>
7175                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>)
7176                where applicable.
7177                
7178    </p>
7179    <p>input =
7180            </p>
7181    <blockquote class="text">
7182    <p>line LF
7183                    
7184    </p>
7185    <p>/ line CR LF
7186                    
7187    </p>
7188    </blockquote><p>
7189    
7190    </p>
7191    <p>line =
7192            </p>
7193    <blockquote class="text">
7194    <p>/* epsilon (empty line ignored) */
7195                    
7196    </p>
7197    <p>/ comment
7198                    
7199    </p>
7200    <p>/ command
7201                    
7202    </p>
7203    <p>/ error
7204                    
7205    </p>
7206    </blockquote><p>
7207    
7208    </p>
7209    <p>comment =
7210            </p>
7211    <blockquote class="text">
7212    <p>'#'
7213                    
7214    </p>
7215    <p>/ comment '#'
7216                    
7217    </p>
7218    <p>/ comment SP
7219                    
7220    </p>
7221    <p>/ comment number
7222                    
7223    </p>
7224    <p>/ comment string
7225                    
7226    </p>
7227    </blockquote><p>
7228    
7229    </p>
7230    <p>command =
7231            </p>
7232    <blockquote class="text">
7233    <p>ADD SP add_instruction
7234                    
7235    </p>
7236    <p>/ MAP SP map_instruction
7237                    
7238    </p>
7239    <p>/ UNMAP SP unmap_instruction
7240                    
7241    </p>
7242    <p>/ GET SP get_instruction
7243                    
7244    </p>
7245    <p>/ CREATE SP create_instruction
7246                    
7247    </p>
7248    <p>/ DESTROY SP destroy_instruction
7249                    
7250    </p>
7251    <p>/ LIST SP list_instruction
7252                    
7253    </p>
7254    <p>/ LOAD SP load_instruction
7255                    
7256    </p>
7257    <p>/ REMOVE SP remove_instruction
7258                    
7259    </p>
7260    <p>/ SET SP set_instruction
7261                    
7262    </p>
7263    <p>/ SUBSCRIBE SP subscribe_event
7264                    
7265    </p>
7266    <p>/ UNSUBSCRIBE SP unsubscribe_event
7267                    
7268    </p>
7269    <p>/ SELECT SP text
7270                    
7271    </p>
7272    <p>/ RESET SP reset_instruction
7273                    
7274    </p>
7275    <p>/ CLEAR SP clear_instruction
7276                    
7277    </p>
7278    <p>/ RESET
7279                    
7280    </p>
7281    <p>/ QUIT
7282                    
7283    </p>
7284    </blockquote><p>
7285    
7286    </p>
7287    <p>add_instruction =
7288            </p>
7289    <blockquote class="text">
7290    <p>CHANNEL
7291                    
7292    </p>
7293    <p>/ MIDI_INSTRUMENT_MAP
7294                    
7295    </p>
7296    <p>/ MIDI_INSTRUMENT_MAP SP map_name
7297                    
7298    </p>
7299    </blockquote><p>
7300    
7301    </p>
7302    <p>subscribe_event =
7303            </p>
7304    <blockquote class="text">
7305    <p>AUDIO_OUTPUT_DEVICE_COUNT
7306                    
7307    </p>
7308    <p>/ AUDIO_OUTPUT_DEVICE_INFO
7309                    
7310    </p>
7311    <p>/ MIDI_INPUT_DEVICE_COUNT
7312                    
7313    </p>
7314    <p>/ MIDI_INPUT_DEVICE_INFO
7315                    
7316    </p>
7317    <p>/ CHANNEL_COUNT
7318                    
7319    </p>
7320    <p>/ VOICE_COUNT
7321                    
7322    </p>
7323    <p>/ STREAM_COUNT
7324                    
7325    </p>
7326    <p>/ BUFFER_FILL
7327                    
7328    </p>
7329    <p>/ CHANNEL_INFO
7330                    
7331    </p>
7332    <p>/ FX_SEND_COUNT
7333                    
7334    </p>
7335    <p>/ FX_SEND_INFO
7336                    
7337    </p>
7338    <p>/ MIDI_INSTRUMENT_MAP_COUNT
7339                    
7340    </p>
7341    <p>/ MIDI_INSTRUMENT_MAP_INFO
7342                    
7343    </p>
7344    <p>/ MIDI_INSTRUMENT_COUNT
7345                    
7346    </p>
7347    <p>/ MIDI_INSTRUMENT_INFO
7348                    
7349    </p>
7350    <p>/ MISCELLANEOUS
7351                    
7352    </p>
7353    <p>/ TOTAL_VOICE_COUNT
7354                    
7355    </p>
7356    <p>/ GLOBAL_INFO
7357                    
7358    </p>
7359    </blockquote><p>
7360    
7361    </p>
7362    <p>unsubscribe_event =
7363            </p>
7364    <blockquote class="text">
7365    <p>AUDIO_OUTPUT_DEVICE_COUNT
7366                    
7367    </p>
7368    <p>/ AUDIO_OUTPUT_DEVICE_INFO
7369                    
7370    </p>
7371    <p>/ MIDI_INPUT_DEVICE_COUNT
7372                    
7373    </p>
7374    <p>/ MIDI_INPUT_DEVICE_INFO
7375                    
7376    </p>
7377    <p>/ CHANNEL_COUNT
7378                    
7379    </p>
7380    <p>/ VOICE_COUNT
7381                    
7382    </p>
7383    <p>/ STREAM_COUNT
7384                    
7385    </p>
7386    <p>/ BUFFER_FILL
7387                    
7388    </p>
7389    <p>/ CHANNEL_INFO
7390                    
7391    </p>
7392    <p>/ FX_SEND_COUNT
7393                    
7394    </p>
7395    <p>/ FX_SEND_INFO
7396                    
7397    </p>
7398    <p>/ MIDI_INSTRUMENT_MAP_COUNT
7399                    
7400    </p>
7401    <p>/ MIDI_INSTRUMENT_MAP_INFO
7402                    
7403    </p>
7404    <p>/ MIDI_INSTRUMENT_COUNT
7405                    
7406    </p>
7407    <p>/ MIDI_INSTRUMENT_INFO
7408                    
7409    </p>
7410    <p>/ MISCELLANEOUS
7411                    
7412    </p>
7413    <p>/ TOTAL_VOICE_COUNT
7414                    
7415    </p>
7416    <p>/ GLOBAL_INFO
7417                    
7418    </p>
7419    </blockquote><p>
7420    
7421    </p>
7422    <p>map_instruction =
7423            </p>
7424    <blockquote class="text">
7425    <p>MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value
7426                    
7427    </p>
7428    <p>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode
7429                    
7430    </p>
7431    <p>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP entry_name
7432                    
7433    </p>
7434    <p>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode SP entry_name
7435                    
7436    </p>
7437    </blockquote><p>
7438    
7439    </p>
7440    <p>unmap_instruction =
7441            </p>
7442    <blockquote class="text">
7443    <p>MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog
7444                    
7445    </p>
7446    </blockquote><p>
7447    
7448    </p>
7449    <p>remove_instruction =
7450            </p>
7451    <blockquote class="text">
7452    <p>CHANNEL SP sampler_channel
7453                    
7454    </p>
7455    <p>/ MIDI_INSTRUMENT_MAP SP midi_map
7456                    
7457    </p>
7458    <p>/ MIDI_INSTRUMENT_MAP SP ALL
7459                    
7460    </p>
7461    </blockquote><p>
7462    
7463    </p>
7464    <p>get_instruction =
7465            </p>
7466    <blockquote class="text">
7467    <p>AVAILABLE_ENGINES
7468                    
7469    </p>
7470    <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
7471                    
7472    </p>
7473    <p>/ MIDI_INPUT_DRIVER SP INFO SP string
7474                    
7475    </p>
7476    <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string
7477                    
7478    </p>
7479    <p>/ MIDI_INPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
7480                    
7481    </p>
7482    <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
7483                    
7484    </p>
7485    <p>/ AUDIO_OUTPUT_DRIVER SP INFO SP string
7486                    
7487    </p>
7488    <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string
7489                    
7490    </p>
7491    <p>/ AUDIO_OUTPUT_DRIVER_PARAMETER SP INFO SP string SP string SP key_val_list
7492                    
7493    </p>
7494    <p>/ AUDIO_OUTPUT_DEVICES
7495                    
7496    </p>
7497    <p>/ MIDI_INPUT_DEVICES
7498                    
7499    </p>
7500    <p>/ AUDIO_OUTPUT_DEVICE SP INFO SP number
7501                    
7502    </p>
7503    <p>/ MIDI_INPUT_DEVICE SP INFO SP number
7504                    
7505    </p>
7506    <p>/ MIDI_INPUT_PORT SP INFO SP number SP number
7507                    
7508    </p>
7509    <p>/ MIDI_INPUT_PORT_PARAMETER SP INFO SP number SP number SP string
7510                    
7511    </p>
7512    <p>/ AUDIO_OUTPUT_CHANNEL SP INFO SP number SP number
7513                    
7514    </p>
7515    <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP INFO SP number SP number SP string
7516                    
7517    </p>
7518    <p>/ CHANNELS
7519                    
7520    </p>
7521    <p>/ CHANNEL SP INFO SP sampler_channel
7522                    
7523    </p>
7524    <p>/ CHANNEL SP BUFFER_FILL SP buffer_size_type SP sampler_channel
7525                    
7526    </p>
7527    <p>/ CHANNEL SP STREAM_COUNT SP sampler_channel
7528                    
7529    </p>
7530    <p>/ CHANNEL SP VOICE_COUNT SP sampler_channel
7531                    
7532    </p>
7533    <p>/ ENGINE SP INFO SP engine_name
7534                    
7535    </p>
7536    <p>/ SERVER SP INFO
7537                    
7538    </p>
7539    <p>/ TOTAL_VOICE_COUNT
7540                    
7541    </p>
7542    <p>/ TOTAL_VOICE_COUNT_MAX
7543                    
7544    </p>
7545    <p>/ MIDI_INSTRUMENTS SP midi_map
7546                    
7547    </p>
7548    <p>/ MIDI_INSTRUMENTS SP ALL
7549                    
7550    </p>
7551    <p>/ MIDI_INSTRUMENT SP INFO SP midi_map SP midi_bank SP midi_prog
7552                    
7553    </p>
7554    <p>/ MIDI_INSTRUMENT_MAPS
7555                    
7556    </p>
7557    <p>/ MIDI_INSTRUMENT_MAP SP INFO SP midi_map
7558                    
7559    </p>
7560    <p>/ FX_SENDS SP sampler_channel
7561                    
7562    </p>
7563    <p>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id
7564                    
7565    </p>
7566    <p>/ VOLUME
7567                    
7568    </p>
7569    </blockquote><p>
7570    
7571    </p>
7572    <p>set_instruction =
7573            </p>
7574    <blockquote class="text">
7575    <p>AUDIO_OUTPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
7576                    
7577    </p>
7578    <p>/ AUDIO_OUTPUT_CHANNEL_PARAMETER SP number SP number SP string '=' param_val_list
7579                    
7580    </p>
7581    <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
7582                    
7583    </p>
7584    <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' param_val_list
7585                    
7586    </p>
7587    <p>/ CHANNEL SP set_chan_instruction
7588                    
7589    </p>
7590    <p>/ MIDI_INSTRUMENT_MAP SP NAME SP midi_map SP map_name
7591                    
7592    </p>
7593    <p>/ FX_SEND SP NAME SP sampler_channel SP fx_send_id SP fx_send_name
7594                    
7595    </p>
7596    <p>/ FX_SEND SP AUDIO_OUTPUT_CHANNEL SP sampler_channel SP fx_send_id SP audio_channel_index SP audio_channel_index
7597                    
7598    </p>
7599    <p>/ FX_SEND SP MIDI_CONTROLLER SP sampler_channel SP fx_send_id SP midi_ctrl
7600                    
7601    </p>
7602    <p>/ FX_SEND SP LEVEL SP sampler_channel SP fx_send_id SP volume_value
7603                    
7604    </p>
7605    <p>/ ECHO SP boolean
7606                    
7607    </p>
7608    <p>/ VOLUME SP volume_value
7609                    
7610    </p>
7611    </blockquote><p>
7612    
7613    </p>
7614    <p>create_instruction =
7615            </p>
7616    <blockquote class="text">
7617    <p>AUDIO_OUTPUT_DEVICE SP string SP key_val_list
7618                    
7619    </p>
7620    <p>/ AUDIO_OUTPUT_DEVICE SP string
7621                    
7622    </p>
7623    <p>/ MIDI_INPUT_DEVICE SP string SP key_val_list
7624                    
7625    </p>
7626    <p>/ MIDI_INPUT_DEVICE SP string
7627                    
7628    </p>
7629    <p>/ FX_SEND SP sampler_channel SP midi_ctrl
7630                    
7631    </p>
7632    <p>/ FX_SEND SP sampler_channel SP midi_ctrl SP fx_send_name
7633                    
7634    </p>
7635    </blockquote><p>
7636    
7637    </p>
7638    <p>reset_instruction =
7639            </p>
7640    <blockquote class="text">
7641    <p>CHANNEL SP sampler_channel
7642                    
7643    </p>
7644    </blockquote><p>
7645    
7646    </p>
7647    <p>clear_instruction =
7648            </p>
7649    <blockquote class="text">
7650    <p>MIDI_INSTRUMENTS SP midi_map
7651                    
7652    </p>
7653    <p>/ MIDI_INSTRUMENTS SP ALL
7654                    
7655    </p>
7656    </blockquote><p>
7657    
7658    </p>
7659    <p>destroy_instruction =
7660            </p>
7661    <blockquote class="text">
7662    <p>AUDIO_OUTPUT_DEVICE SP number
7663                    
7664    </p>
7665    <p>/ MIDI_INPUT_DEVICE SP number
7666                    
7667    </p>
7668    <p>/ FX_SEND SP sampler_channel SP fx_send_id
7669                    
7670    </p>
7671    </blockquote><p>
7672    
7673    </p>
7674    <p>load_instruction =
7675            </p>
7676    <blockquote class="text">
7677    <p>INSTRUMENT SP load_instr_args
7678                    
7679    </p>
7680    <p>/ ENGINE SP load_engine_args
7681                    
7682    </p>
7683    </blockquote><p>
7684    
7685    </p>
7686    <p>set_chan_instruction =
7687            </p>
7688    <blockquote class="text">
7689    <p>AUDIO_OUTPUT_DEVICE SP sampler_channel SP device_index
7690                    
7691    </p>
7692    <p>/ AUDIO_OUTPUT_CHANNEL SP sampler_channel SP audio_channel_index SP audio_channel_index
7693                    
7694    </p>
7695    <p>/ AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type_name
7696                    
7697    </p>
7698    <p>/ MIDI_INPUT SP sampler_channel SP device_index SP midi_input_port_index SP midi_input_channel_index
7699                    
7700    </p>
7701    <p>/ MIDI_INPUT_DEVICE SP sampler_channel SP device_index
7702                    
7703    </p>
7704    <p>/ MIDI_INPUT_PORT SP sampler_channel SP midi_input_port_index
7705                    
7706    </p>
7707    <p>/ MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel_index
7708                    
7709    </p>
7710    <p>/ MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type_name
7711                    
7712    </p>
7713    <p>/ VOLUME SP sampler_channel SP volume_value
7714                    
7715    </p>
7716    <p>/ MUTE SP sampler_channel SP boolean
7717                    
7718    </p>
7719    <p>/ SOLO SP sampler_channel SP boolean
7720                    
7721    </p>
7722    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP midi_map
7723                    
7724    </p>
7725    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP NONE
7726                    
7727    </p>
7728    <p>/ MIDI_INSTRUMENT_MAP SP sampler_channel SP DEFAULT
7729                    
7730    </p>
7731    </blockquote><p>
7732    
7733    </p>
7734    <p>modal_arg =
7735            </p>
7736    <blockquote class="text">
7737    <p>/* epsilon (empty argument) */
7738                    
7739    </p>
7740    <p>/ NON_MODAL SP
7741                    
7742    </p>
7743    </blockquote><p>
7744    
7745    </p>
7746    <p>key_val_list =
7747            </p>
7748    <blockquote class="text">
7749    <p>string '=' param_val_list
7750                    
7751    </p>
7752    <p>/ key_val_list SP string '=' param_val_list
7753                    
7754    </p>
7755    </blockquote><p>
7756    
7757    </p>
7758    <p>buffer_size_type =
7759            </p>
7760    <blockquote class="text">
7761    <p>BYTES
7762                    
7763    </p>
7764    <p>/ PERCENTAGE
7765                    
7766    </p>
7767    </blockquote><p>
7768    
7769    </p>
7770    <p>list_instruction =
7771            </p>
7772    <blockquote class="text">
7773    <p>AUDIO_OUTPUT_DEVICES
7774                    
7775    </p>
7776    <p>/ MIDI_INPUT_DEVICES
7777                    
7778    </p>
7779    <p>/ CHANNELS
7780                    
7781    </p>
7782    <p>/ AVAILABLE_ENGINES
7783                    
7784    </p>
7785    <p>/ AVAILABLE_MIDI_INPUT_DRIVERS
7786                    
7787    </p>
7788    <p>/ AVAILABLE_AUDIO_OUTPUT_DRIVERS
7789                    
7790    </p>
7791    <p>/ MIDI_INSTRUMENTS SP midi_map
7792                    
7793    </p>
7794    <p>/ MIDI_INSTRUMENTS SP ALL
7795                    
7796    </p>
7797    <p>/ MIDI_INSTRUMENT_MAPS
7798                    
7799    </p>
7800    <p>/ FX_SENDS SP sampler_channel
7801                    
7802    </p>
7803    </blockquote><p>
7804    
7805    </p>
7806    <p>load_instr_args =
7807            </p>
7808    <blockquote class="text">
7809    <p>filename SP instrument_index SP sampler_channel
7810                    
7811    </p>
7812    <p>/ NON_MODAL SP filename SP instrument_index SP sampler_channel
7813                    
7814    </p>
7815    </blockquote><p>
7816    
7817    </p>
7818    <p>load_engine_args =
7819            </p>
7820    <blockquote class="text">
7821    <p>engine_name SP sampler_channel
7822                    
7823    </p>
7824    </blockquote><p>
7825    
7826    </p>
7827    <p>instr_load_mode =
7828            </p>
7829    <blockquote class="text">
7830    <p>ON_DEMAND
7831                    
7832    </p>
7833    <p>/ ON_DEMAND_HOLD
7834                    
7835    </p>
7836    <p>/ PERSISTENT
7837                    
7838    </p>
7839    </blockquote><p>
7840    
7841    </p>
7842    <p>device_index =
7843            </p>
7844    <blockquote class="text">
7845    <p>number
7846                    
7847    </p>
7848    </blockquote><p>
7849    
7850    </p>
7851    <p>audio_channel_index =
7852            </p>
7853    <blockquote class="text">
7854    <p>number
7855                    
7856    </p>
7857    </blockquote><p>
7858    
7859    </p>
7860    <p>audio_output_type_name =
7861            </p>
7862    <blockquote class="text">
7863    <p>string
7864                    
7865    </p>
7866    </blockquote><p>
7867    
7868    </p>
7869    <p>midi_input_port_index =
7870            </p>
7871    <blockquote class="text">
7872    <p>number
7873                    
7874    </p>
7875    </blockquote><p>
7876    
7877    </p>
7878    <p>midi_input_channel_index =
7879            </p>
7880    <blockquote class="text">
7881    <p>number
7882                    
7883    </p>
7884    <p>/ ALL
7885                    
7886    </p>
7887    </blockquote><p>
7888    
7889    </p>
7890    <p>midi_input_type_name =
7891            </p>
7892    <blockquote class="text">
7893    <p>string
7894                    
7895    </p>
7896    </blockquote><p>
7897    
7898    </p>
7899    <p>midi_map =
7900            </p>
7901    <blockquote class="text">
7902    <p>number
7903                    
7904    </p>
7905    </blockquote><p>
7906    
7907    </p>
7908    <p>midi_bank =
7909            </p>
7910    <blockquote class="text">
7911    <p>number
7912                    
7913    </p>
7914    </blockquote><p>
7915    
7916    </p>
7917    <p>midi_prog =
7918            </p>
7919    <blockquote class="text">
7920    <p>number
7921                    
7922    </p>
7923    </blockquote><p>
7924    
7925    </p>
7926    <p>midi_ctrl =
7927            </p>
7928    <blockquote class="text">
7929    <p>number
7930                    
7931    </p>
7932    </blockquote><p>
7933    
7934    </p>
7935    <p>volume_value =
7936            </p>
7937    <blockquote class="text">
7938    <p>dotnum
7939                    
7940    </p>
7941    <p>/ number
7942                    
7943    </p>
7944    </blockquote><p>
7945    
7946    </p>
7947    <p>sampler_channel =
7948            </p>
7949    <blockquote class="text">
7950    <p>number
7951                    
7952    </p>
7953    </blockquote><p>
7954    
7955    </p>
7956    <p>instrument_index =
7957            </p>
7958    <blockquote class="text">
7959    <p>number
7960                    
7961    </p>
7962    </blockquote><p>
7963    
7964    </p>
7965    <p>fx_send_id =
7966            </p>
7967    <blockquote class="text">
7968    <p>number
7969                    
7970    </p>
7971    </blockquote><p>
7972    
7973    </p>
7974    <p>engine_name =
7975            </p>
7976    <blockquote class="text">
7977    <p>string
7978                    
7979    </p>
7980    </blockquote><p>
7981    
7982    </p>
7983    <p>filename =
7984            </p>
7985    <blockquote class="text">
7986    <p>stringval
7987                    
7988    </p>
7989    </blockquote><p>
7990    
7991    </p>
7992    <p>map_name =
7993            </p>
7994    <blockquote class="text">
7995    <p>stringval
7996                    
7997    </p>
7998    </blockquote><p>
7999    
8000    </p>
8001    <p>entry_name =
8002            </p>
8003    <blockquote class="text">
8004    <p>stringval
8005                    
8006    </p>
8007    </blockquote><p>
8008    
8009    </p>
8010    <p>fx_send_name =
8011            </p>
8012    <blockquote class="text">
8013    <p>stringval
8014                    
8015    </p>
8016    </blockquote><p>
8017    
8018    </p>
8019    <p>param_val_list =
8020            </p>
8021    <blockquote class="text">
8022    <p>param_val
8023                    
8024    </p>
8025    <p>/ param_val_list','param_val
8026                    
8027    </p>
8028    </blockquote><p>
8029    
8030    </p>
8031    <p>param_val =
8032            </p>
8033    <blockquote class="text">
8034    <p>string
8035                    
8036    </p>
8037    <p>/ stringval
8038                    
8039    </p>
8040    <p>/ number
8041                    
8042    </p>
8043    <p>/ dotnum
8044                    
8045    </p>
8046    </blockquote><p>
8047    
 <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.  
8048  </p>  </p>
8049  <a name="events"></a><br /><hr />  <a name="events"></a><br /><hr />
8050  <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>
8051  <a name="rfc.section.7"></a><h3>7.&nbsp;Events</h3>  <a name="rfc.section.8"></a><h3>8.&nbsp;
8052    Events</h3>
8053    
8054  <p>This chapter will describe all currently defined events supported by LinuxSampler.  <p>This chapter will describe all currently defined events supported by LinuxSampler.
8055  </p>  </p>
8056  <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 />
8057    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8058    <a name="rfc.section.8.1"></a><h3>8.1.&nbsp;
8059    Number of audio output devices changed</h3>
8060    
8061    <p>Client may want to be notified when the total number of audio output devices on the
8062                    back-end changes by issuing the following command:
8063    </p>
8064    <p>
8065                        </p>
8066    <blockquote class="text">
8067    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT
8068    </p>
8069    </blockquote><p>
8070                    
8071    </p>
8072    <p>Server will start sending the following notification messages:
8073    </p>
8074    <p>
8075                        </p>
8076    <blockquote class="text">
8077    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_COUNT:&lt;devices&gt;"
8078    </p>
8079    </blockquote><p>
8080                    
8081    </p>
8082    <p>where &lt;devices&gt; will be replaced by the new number
8083                    of audio output devices.
8084    </p>
8085    <a name="SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO"></a><br /><hr />
8086    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8087    <a name="rfc.section.8.2"></a><h3>8.2.&nbsp;
8088    Audio output device's settings changed</h3>
8089    
8090    <p>Client may want to be notified when changes were made to audio output devices on the
8091                    back-end by issuing the following command:
8092    </p>
8093    <p>
8094                        </p>
8095    <blockquote class="text">
8096    <p>SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO
8097    </p>
8098    </blockquote><p>
8099                    
8100    </p>
8101    <p>Server will start sending the following notification messages:
8102    </p>
8103    <p>
8104                        </p>
8105    <blockquote class="text">
8106    <p>"NOTIFY:AUDIO_OUTPUT_DEVICE_INFO:&lt;device-id&gt;"
8107    </p>
8108    </blockquote><p>
8109                    
8110    </p>
8111    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the audio output device,
8112                    which settings has been changed. The front-end will have to send
8113                    the respective command to actually get the audio output device info. Because these messages
8114                    will be triggered by LSCP commands issued by other clients rather than real
8115                    time events happening on the server, it is believed that an empty notification
8116                    message is sufficient here.
8117    </p>
8118    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_COUNT"></a><br /><hr />
8119    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8120    <a name="rfc.section.8.3"></a><h3>8.3.&nbsp;
8121    Number of MIDI input devices changed</h3>
8122    
8123    <p>Client may want to be notified when the total number of MIDI input devices on the
8124                    back-end changes by issuing the following command:
8125    </p>
8126    <p>
8127                        </p>
8128    <blockquote class="text">
8129    <p>SUBSCRIBE MIDI_INPUT_DEVICE_COUNT
8130    </p>
8131    </blockquote><p>
8132                    
8133    </p>
8134    <p>Server will start sending the following notification messages:
8135    </p>
8136    <p>
8137                        </p>
8138    <blockquote class="text">
8139    <p>"NOTIFY:MIDI_INPUT_DEVICE_COUNT:&lt;devices&gt;"
8140    </p>
8141    </blockquote><p>
8142                    
8143    </p>
8144    <p>where &lt;devices&gt; will be replaced by the new number
8145                    of MIDI input devices.
8146    </p>
8147    <a name="SUBSCRIBE MIDI_INPUT_DEVICE_INFO"></a><br /><hr />
8148    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8149    <a name="rfc.section.8.4"></a><h3>8.4.&nbsp;
8150    MIDI input device's settings changed</h3>
8151    
8152    <p>Client may want to be notified when changes were made to MIDI input devices on the
8153                    back-end by issuing the following command:
8154    </p>
8155    <p>
8156                        </p>
8157    <blockquote class="text">
8158    <p>SUBSCRIBE MIDI_INPUT_DEVICE_INFO
8159    </p>
8160    </blockquote><p>
8161                    
8162    </p>
8163    <p>Server will start sending the following notification messages:
8164    </p>
8165    <p>
8166                        </p>
8167    <blockquote class="text">
8168    <p>"NOTIFY:MIDI_INPUT_DEVICE_INFO:&lt;device-id&gt;"
8169    </p>
8170    </blockquote><p>
8171                    
8172    </p>
8173    <p>where &lt;device-id&gt; will be replaced by the numerical ID of the MIDI input device,
8174                    which settings has been changed. The front-end will have to send
8175                    the respective command to actually get the MIDI input device info. Because these messages
8176                    will be triggered by LSCP commands issued by other clients rather than real
8177                    time events happening on the server, it is believed that an empty notification
8178                    message is sufficient here.
8179    </p>
8180    <a name="SUBSCRIBE CHANNEL_COUNT"></a><br /><hr />
8181    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8182    <a name="rfc.section.8.5"></a><h3>8.5.&nbsp;
8183    Number of sampler channels changed</h3>
8184    
8185  <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
8186                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
8187  </p>  </p>
8188  <p></p>  <p>
8189                        </p>
8190  <blockquote class="text">  <blockquote class="text">
8191  <p>SUBSCRIBE CHANNEL_COUNT  <p>SUBSCRIBE CHANNEL_COUNT
8192  </p>  </p>
8193  </blockquote>  </blockquote><p>
8194                    
8195    </p>
8196  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
8197  </p>  </p>
8198  <p></p>  <p>
8199                        </p>
8200  <blockquote class="text">  <blockquote class="text">
8201  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"  <p>"NOTIFY:CHANNEL_COUNT:&lt;channels&gt;"
8202  </p>  </p>
8203  </blockquote>  </blockquote><p>
8204                    
8205    </p>
8206  <p>where &lt;channels&gt; will be replaced by the new number  <p>where &lt;channels&gt; will be replaced by the new number
8207                  of sampler channels.                  of sampler channels.
8208  </p>  </p>
8209  <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 />
8210    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8211    <a name="rfc.section.8.6"></a><h3>8.6.&nbsp;
8212    Number of active voices changed</h3>
8213    
8214  <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
8215                  back-end changes by issuing the following command:                  back-end changes by issuing the following command:
8216  </p>  </p>
8217  <p></p>  <p>
8218                        </p>
8219  <blockquote class="text">  <blockquote class="text">
8220  <p>SUBSCRIBE VOICE_COUNT  <p>SUBSCRIBE VOICE_COUNT
8221  </p>  </p>
8222  </blockquote>  </blockquote><p>
8223                    
8224    </p>
8225  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
8226  </p>  </p>
8227  <p></p>  <p>
8228                        </p>
8229  <blockquote class="text">  <blockquote class="text">
8230  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;  <p>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;"
8231    </p>
8232    </blockquote><p>
8233                    
8234  </p>  </p>
 </blockquote>  
   
8235  <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
8236                  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
8237                  active voices on that channel.                  active voices on that channel.
8238  </p>  </p>
8239  <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 />
8240    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8241    <a name="rfc.section.8.7"></a><h3>8.7.&nbsp;
8242    Number of active disk streams changed</h3>
8243    
8244  <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
8245                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT                  changes by issuing the following command: SUBSCRIBE STREAM_COUNT
8246  </p>  </p>
8247  <p></p>  <p>
8248                        </p>
8249  <blockquote class="text">  <blockquote class="text">
8250  <p>SUBSCRIBE STREAM_COUNT  <p>SUBSCRIBE STREAM_COUNT
8251  </p>  </p>
8252  </blockquote>  </blockquote><p>
8253                    
8254    </p>
8255  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
8256  </p>  </p>
8257  <p></p>  <p>
8258                        </p>
8259  <blockquote class="text">  <blockquote class="text">
8260  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"  <p>"NOTIFY:STREAM_COUNT:&lt;sampler-channel&gt; &lt;streams&gt;"
8261  </p>  </p>
8262  </blockquote>  </blockquote><p>
8263                    
8264    </p>
8265  <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
8266                  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
8267                  active disk streams on that channel.                  active disk streams on that channel.
8268  </p>  </p>
8269  <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 />
8270    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8271    <a name="rfc.section.8.8"></a><h3>8.8.&nbsp;
8272    Disk stream buffer fill state changed</h3>
8273    
8274  <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
8275                  on the back-end changes by issuing the following command:                  on the back-end changes by issuing the following command:
8276  </p>  </p>
8277  <p></p>  <p>
8278                        </p>
8279  <blockquote class="text">  <blockquote class="text">
8280  <p>SUBSCRIBE BUFFER_FILL  <p>SUBSCRIBE BUFFER_FILL
8281  </p>  </p>
8282  </blockquote>  </blockquote><p>
8283                    
8284    </p>
8285  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
8286  </p>  </p>
8287  <p></p>  <p>
8288                        </p>
8289  <blockquote class="text">  <blockquote class="text">
8290  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"  <p>"NOTIFY:BUFFER_FILL:&lt;sampler-channel&gt; &lt;fill-data&gt;"
8291  </p>  </p>
8292  </blockquote>  </blockquote><p>
8293                    
8294    </p>
8295  <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
8296                  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
8297                  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>
8298                  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.
8299  </p>  </p>
8300  <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 />
8301    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8302    <a name="rfc.section.8.9"></a><h3>8.9.&nbsp;
8303    Channel information changed</h3>
8304    
8305  <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
8306                  back-end by issuing the following command:                  back-end by issuing the following command:
8307  </p>  </p>
8308  <p></p>  <p>
8309                        </p>
8310  <blockquote class="text">  <blockquote class="text">
8311  <p>SUBSCRIBE CHANNEL_INFO  <p>SUBSCRIBE CHANNEL_INFO
8312  </p>  </p>
8313  </blockquote>  </blockquote><p>
8314                    
8315    </p>
8316  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
8317  </p>  </p>
8318  <p></p>  <p>
8319                        </p>
8320  <blockquote class="text">  <blockquote class="text">
8321  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"  <p>"NOTIFY:CHANNEL_INFO:&lt;sampler-channel&gt;"
8322  </p>  </p>
8323  </blockquote>  </blockquote><p>
8324                    
8325    </p>
8326  <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
8327                  channel info change occurred. The front-end will have to send                  channel info change occurred. The front-end will have to send
8328                  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 8330  Intellectual Property and Copyright Stat
8330                  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
8331                  message is sufficient here.                  message is sufficient here.
8332  </p>  </p>
8333  <a name="rfc.section.7.6"></a><h4><a name="SUBSCRIBE MISCELLANEOUS">7.6</a>&nbsp;Miscellaneous and debugging events</h4>  <a name="SUBSCRIBE FX_SEND_COUNT"></a><br /><hr />
8334    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8335    <a name="rfc.section.8.10"></a><h3>8.10.&nbsp;
8336    Number of effect sends changed</h3>
8337    
8338    <p>Client may want to be notified when the number of effect sends on
8339                    a particular sampler channel is changed by issuing the following command:
8340    </p>
8341    <p>
8342                        </p>
8343    <blockquote class="text">
8344    <p>SUBSCRIBE FX_SEND_COUNT
8345    </p>
8346    </blockquote><p>
8347                    
8348    </p>
8349    <p>Server will start sending the following notification messages:
8350    </p>
8351    <p>
8352                        </p>
8353    <blockquote class="text">
8354    <p>"NOTIFY:FX_SEND_COUNT:&lt;channel-id&gt; &lt;fx-sends&gt;"
8355    </p>
8356    </blockquote><p>
8357                    
8358    </p>
8359    <p>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
8360                    channel, on which the effect sends number is changed and &lt;fx-sends&gt; will
8361                    be replaced by the new number of effect sends on that channel.
8362    </p>
8363    <a name="SUBSCRIBE FX_SEND_INFO"></a><br /><hr />
8364    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8365    <a name="rfc.section.8.11"></a><h3>8.11.&nbsp;
8366    Effect send information changed</h3>
8367    
8368    <p>Client may want to be notified when changes were made to effect sends on a
8369                    a particular sampler channel by issuing the following command:
8370    </p>
8371    <p>
8372                        </p>
8373    <blockquote class="text">
8374    <p>SUBSCRIBE FX_SEND_INFO
8375    </p>
8376    </blockquote><p>
8377                    
8378    </p>
8379    <p>Server will start sending the following notification messages:
8380    </p>
8381    <p>
8382                        </p>
8383    <blockquote class="text">
8384    <p>"NOTIFY:FX_SEND_INFO:&lt;channel-id&gt; &lt;fx-send-id&gt;"
8385    </p>
8386    </blockquote><p>
8387                    
8388    </p>
8389    <p>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
8390                    channel, on which an effect send entity is changed and &lt;fx-send-id&gt; will
8391                    be replaced by the numerical ID of the changed effect send.
8392    </p>
8393    <a name="SUBSCRIBE TOTAL_VOICE_COUNT"></a><br /><hr />
8394    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8395    <a name="rfc.section.8.12"></a><h3>8.12.&nbsp;
8396    Total number of active voices changed</h3>
8397    
8398    <p>Client may want to be notified when the total number of voices on the
8399                    back-end changes by issuing the following command:
8400    </p>
8401    <p>
8402                        </p>
8403    <blockquote class="text">
8404    <p>SUBSCRIBE TOTAL_VOICE_COUNT
8405    </p>
8406    </blockquote><p>
8407                    
8408    </p>
8409    <p>Server will start sending the following notification messages:
8410    </p>
8411    <p>
8412                        </p>
8413    <blockquote class="text">
8414    <p>"NOTIFY:TOTAL_VOICE_COUNT:&lt;voices&gt;"
8415    </p>
8416    </blockquote><p>
8417                    
8418    </p>
8419    <p>where &lt;voices&gt; will be replaced by the new number of
8420                    all currently active voices.
8421    </p>
8422    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT"></a><br /><hr />
8423    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8424    <a name="rfc.section.8.13"></a><h3>8.13.&nbsp;
8425    Number of MIDI instrument maps changed</h3>
8426    
8427    <p>Client may want to be notified when the number of MIDI instrument maps on the
8428                    back-end changes by issuing the following command:
8429    </p>
8430    <p>
8431                        </p>
8432    <blockquote class="text">
8433    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT
8434    </p>
8435    </blockquote><p>
8436                    
8437    </p>
8438    <p>Server will start sending the following notification messages:
8439    </p>
8440    <p>
8441                        </p>
8442    <blockquote class="text">
8443    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_COUNT:&lt;maps&gt;"
8444    </p>
8445    </blockquote><p>
8446                    
8447    </p>
8448    <p>where &lt;maps&gt; will be replaced by the new number
8449                    of MIDI instrument maps.
8450    </p>
8451    <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO"></a><br /><hr />
8452    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8453    <a name="rfc.section.8.14"></a><h3>8.14.&nbsp;
8454    MIDI instrument map information changed</h3>
8455    
8456    <p>Client may want to be notified when changes were made to MIDI instrument maps on the
8457                    back-end by issuing the following command:
8458    </p>
8459    <p>
8460                        </p>
8461    <blockquote class="text">
8462    <p>SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO
8463    </p>
8464    </blockquote><p>
8465                    
8466    </p>
8467    <p>Server will start sending the following notification messages:
8468    </p>
8469    <p>
8470                        </p>
8471    <blockquote class="text">
8472    <p>"NOTIFY:MIDI_INSTRUMENT_MAP_INFO:&lt;map-id&gt;"
8473    </p>
8474    </blockquote><p>
8475                    
8476    </p>
8477    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
8478                    for which information changes occurred. The front-end will have to send
8479                    the respective command to actually get the MIDI instrument map info. Because these messages
8480                    will be triggered by LSCP commands issued by other clients rather than real
8481                    time events happening on the server, it is believed that an empty notification
8482                    message is sufficient here.
8483    </p>
8484    <a name="SUBSCRIBE MIDI_INSTRUMENT_COUNT"></a><br /><hr />
8485    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8486    <a name="rfc.section.8.15"></a><h3>8.15.&nbsp;
8487    Number of MIDI instruments changed</h3>
8488    
8489    <p>Client may want to be notified when the number of MIDI instrument maps on the
8490                    back-end changes by issuing the following command:
8491    </p>
8492    <p>
8493                        </p>
8494    <blockquote class="text">
8495    <p>SUBSCRIBE MIDI_INSTRUMENT_COUNT
8496    </p>
8497    </blockquote><p>
8498                    
8499    </p>
8500    <p>Server will start sending the following notification messages:
8501    </p>
8502    <p>
8503                        </p>
8504    <blockquote class="text">
8505    <p>"NOTIFY:MIDI_INSTRUMENT_COUNT:&lt;map-id&gt; &lt;instruments&gt;"
8506    </p>
8507    </blockquote><p>
8508                    
8509    </p>
8510    <p>where &lt;map-id&gt; is the numerical ID of the MIDI instrument map, in which
8511                    the nuber of instruments has changed and &lt;instruments&gt; will be replaced by
8512                    the new number of MIDI instruments in the specified map.
8513    </p>
8514    <a name="SUBSCRIBE MIDI_INSTRUMENT_INFO"></a><br /><hr />
8515    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8516    <a name="rfc.section.8.16"></a><h3>8.16.&nbsp;
8517    MIDI instrument information changed</h3>
8518    
8519    <p>Client may want to be notified when changes were made to MIDI instruments on the
8520                    back-end by issuing the following command:
8521    </p>
8522    <p>
8523                        </p>
8524    <blockquote class="text">
8525    <p>SUBSCRIBE MIDI_INSTRUMENT_INFO
8526    </p>
8527    </blockquote><p>
8528                    
8529    </p>
8530    <p>Server will start sending the following notification messages:
8531    </p>
8532    <p>
8533                        </p>
8534    <blockquote class="text">
8535    <p>"NOTIFY:MIDI_INSTRUMENT_INFO:&lt;map-id&gt; &lt;bank&gt; &lt;program&gt;"
8536    </p>
8537    </blockquote><p>
8538                    
8539    </p>
8540    <p>where &lt;map-id&gt; will be replaced by the numerical ID of the MIDI instrument map,
8541                    in which a MIDI instrument is changed. &lt;bank&gt; and &lt;program&gt; specifies
8542                    the location of the changed MIDI instrument in the map. The front-end will have to send
8543                    the respective command to actually get the MIDI instrument info. Because these messages
8544                    will be triggered by LSCP commands issued by other clients rather than real
8545                    time events happening on the server, it is believed that an empty notification
8546                    message is sufficient here.
8547    </p>
8548    <a name="SUBSCRIBE GLOBAL_INFO"></a><br /><hr />
8549    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8550    <a name="rfc.section.8.17"></a><h3>8.17.&nbsp;
8551    Global settings changed</h3>
8552    
8553    <p>Client may want to be notified when changes to the global settings
8554                    of the sampler were made by issuing the following command:
8555    </p>
8556    <p>
8557                        </p>
8558    <blockquote class="text">
8559    <p>SUBSCRIBE GLOBAL_INFO
8560    </p>
8561    </blockquote><p>
8562                    
8563    </p>
8564    <p>Server will start sending the following types of notification messages:
8565    </p>
8566    <p>
8567                        </p>
8568    <blockquote class="text">
8569    <p>"NOTIFY:GLOBAL_INFO:VOLUME &lt;volume&gt;" - Notifies that the
8570                            golbal volume of the sampler is changed, where &lt;volume&gt; will be
8571                            replaced by the optional dotted floating point value, reflecting the
8572                            new global volume parameter.
8573    </p>
8574    </blockquote><p>
8575                    
8576    </p>
8577    <a name="SUBSCRIBE MISCELLANEOUS"></a><br /><hr />
8578    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
8579    <a name="rfc.section.8.18"></a><h3>8.18.&nbsp;
8580    Miscellaneous and debugging events</h3>
8581    
8582  <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
8583                  the server by issuing the following command:                  the server by issuing the following command:
8584  </p>  </p>
8585  <p></p>  <p>
8586                        </p>
8587  <blockquote class="text">  <blockquote class="text">
8588  <p>SUBSCRIBE MISCELLANEOUS  <p>SUBSCRIBE MISCELLANEOUS
8589  </p>  </p>
8590  </blockquote>  </blockquote><p>
8591                    
8592    </p>
8593  <p>Server will start sending the following notification messages:  <p>Server will start sending the following notification messages:
8594  </p>  </p>
8595  <p></p>  <p>
8596                        </p>
8597  <blockquote class="text">  <blockquote class="text">
8598  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"  <p>"NOTIFY:MISCELLANEOUS:&lt;string&gt;"
8599  </p>  </p>
8600  </blockquote>  </blockquote><p>
8601                    
8602    </p>
8603  <p>where &lt;string&gt; will be replaced by whatever data server  <p>where &lt;string&gt; will be replaced by whatever data server
8604                  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
8605                  user AS IS to facilitate debugging.                  user AS IS to facilitate debugging.
8606  </p>  </p>
8607  <a name="anchor15"></a><br /><hr />  <a name="anchor14"></a><br /><hr />
8608  <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>
8609  <a name="rfc.section.8"></a><h3>8.&nbsp;Security Considerations</h3>  <a name="rfc.section.9"></a><h3>9.&nbsp;
8610    Security Considerations</h3>
8611    
8612  <p>As there is so far no method of authentication and authorization  <p>As there is so far no method of authentication and authorization
8613              defined and so not required for a client applications to succeed to              defined and so not required for a client applications to succeed to
8614              connect, running LinuxSampler might be a security risk for the host              connect, running LinuxSampler might be a security risk for the host
8615              system the LinuxSampler instance is running on.              system the LinuxSampler instance is running on.
8616  </p>  </p>
8617  <a name="anchor16"></a><br /><hr />  <a name="anchor15"></a><br /><hr />
8618  <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>
8619  <a name="rfc.section.9"></a><h3>9.&nbsp;Acknowledgments</h3>  <a name="rfc.section.10"></a><h3>10.&nbsp;
8620    Acknowledgments</h3>
8621    
8622  <p>This document has benefited greatly from the comments of the  <p>This document has benefited greatly from the comments of the
8623              following people, discussed on the LinuxSampler developer's mailing              following people, discussed on the LinuxSampler developer's mailing
8624              list:              list:
8625  </p>  </p>
8626  <p></p>  <p>
8627                    </p>
8628  <blockquote class="text">  <blockquote class="text">
8629  <p>Rui Nuno Capela  <p>Rui Nuno Capela
8630  </p>  </p>
# Line 4261  Intellectual Property and Copyright Stat Line 8634  Intellectual Property and Copyright Stat
8634  </p>  </p>
8635  <p>Grigor Iliev  <p>Grigor Iliev
8636  </p>  </p>
8637  </blockquote>  </blockquote><p>
8638                
8639    </p>
8640  <a name="rfc.references1"></a><br /><hr />  <a name="rfc.references1"></a><br /><hr />
8641  <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>
8642  <h3>10&nbsp;References</h3>  <h3>11.&nbsp;References</h3>
8643  <table width="99%" border="0">  <table width="99%" border="0">
8644  <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>
8645  <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>
8646    <tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td>
8647    <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>
8648    <tr><td class="author-text" valign="top"><a name="RFC793">[RFC793]</a></td>
8649    <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>
8650  </table>  </table>
8651    
8652  <a name="rfc.authors"></a><br /><hr />  <a name="rfc.authors"></a><br /><hr />
8653  <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>
8654  <h3>Author's Address</h3>  <h3>Author's Address</h3>
8655  <table width="99%" border="0" cellpadding="0" cellspacing="0">  <table width="99%" border="0" cellpadding="0" cellspacing="0">
8656  <tr><td class="author-text">&nbsp;</td>  <tr><td class="author-text">&nbsp;</td>
# Line 4286  Schoenebeck</td></tr> Line 8664  Schoenebeck</td></tr>
8664  <td class="author-text">74081 Heilbronn</td></tr>  <td class="author-text">74081 Heilbronn</td></tr>
8665  <tr><td class="author-text">&nbsp;</td>  <tr><td class="author-text">&nbsp;</td>
8666  <td class="author-text">Germany</td></tr>  <td class="author-text">Germany</td></tr>
8667  <tr><td class="author" align="right">EMail:&nbsp;</td>  <tr><td class="author" align="right">Email:&nbsp;</td>
8668  <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>
8669  </table>  </table>
8670  <a name="rfc.copyright"></a><br /><hr />  <a name="rfc.copyright"></a><br /><hr />
8671  <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>
8672  <h3>Intellectual Property Statement</h3>  <h3>Full Copyright Statement</h3>
8673  <p class='copyright'>  <p class='copyright'>
8674  The IETF takes no position regarding the validity or scope of  Copyright &copy; The IETF Trust (2007).</p>
 any intellectual property or other rights that might be claimed  
 to  pertain to the implementation or use of the technology  
 described in this document or the extent to which any license  
 under such rights might or might not be available; neither does  
 it represent that it has made any effort to identify any such  
 rights. Information on the IETF's procedures with respect to  
 rights in standards-track and standards-related documentation  
 can be found in BCP-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>  
8675  <p class='copyright'>  <p class='copyright'>
8676  The IETF invites any interested party to bring to its  This document is subject to the rights,
8677  attention any copyrights, patents or patent applications, or  licenses and restrictions contained in BCP&nbsp;78,
8678  other proprietary rights which may cover technology that may be  and except as set forth therein,
8679  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>  
8680  <p class='copyright'>  <p class='copyright'>
8681  Copyright (C) The Internet Society (2005). All Rights Reserved.</p>  This document and the information contained herein are provided
8682    on an &ldquo;AS IS&rdquo; basis and THE CONTRIBUTOR,
8683    THE ORGANIZATION HE/SHE REPRESENTS
8684    OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST
8685    AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES,
8686    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT
8687    THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY
8688    IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
8689    PURPOSE.</p>
8690    <h3>Intellectual Property</h3>
8691  <p class='copyright'>  <p class='copyright'>
8692  This document and translations of it may be copied and furnished to  The IETF takes no position regarding the validity or scope of any
8693  others, and derivative works that comment on or otherwise explain it  Intellectual Property Rights or other rights that might be claimed
8694  or assist in its implementation may be prepared, copied, published and  to pertain to the implementation or use of the technology
8695  distributed, in whole or in part, without restriction of any kind,  described in this document or the extent to which any license
8696  provided that the above copyright notice and this paragraph are  under such rights might or might not be available; nor does it
8697  included on all such copies and derivative works. However, this  represent that it has made any independent effort to identify any
8698  document itself may not be modified in any way, such as by removing  such rights.
8699  the copyright notice or references to the Internet Society or other  Information on the procedures with respect to
8700  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>  
8701  <p class='copyright'>  <p class='copyright'>
8702  The limited permissions granted above are perpetual and will not be  Copies of IPR disclosures made to the IETF Secretariat and any
8703  revoked by the Internet Society or its successors or assignees.</p>  assurances of licenses to be made available,
8704    or the result of an attempt made to obtain a general license or
8705    permission for the use of such proprietary rights by implementers or
8706    users of this specification can be obtained from the IETF on-line IPR
8707    repository at <a href='http://www.ietf.org/ipr'>http://www.ietf.org/ipr</a>.</p>
8708  <p class='copyright'>  <p class='copyright'>
8709  This document and the information contained herein is provided on an  The IETF invites any interested party to bring to its attention
8710  &quot;AS IS&quot; basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING  any copyrights,
8711  TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING  patents or patent applications,
8712  BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION  or other
8713  HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF  proprietary rights that may cover technology that may be required
8714  MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.</p>  to implement this standard.
8715    Please address the information to the IETF at <a href='mailto:ietf-ipr@ietf.org'>ietf-ipr@ietf.org</a>.</p>
8716  <h3>Acknowledgment</h3>  <h3>Acknowledgment</h3>
8717  <p class='copyright'>  <p class='copyright'>
8718  Funding for the RFC Editor function is currently provided by the  Funding for the RFC Editor function is provided by
8719  Internet Society.</p>  the IETF Administrative Support Activity (IASA).</p>
8720  </body></html>  </body></html>

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

  ViewVC Help
Powered by ViewVC