/[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 1251 by schoenebeck, Fri Jun 22 14:24:57 2007 UTC revision 1801 by schoenebeck, Sun Dec 7 01:31:29 2008 UTC
# Line 1  Line 1 
1  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2  <html lang="en"><head><title>LinuxSampler Control Protocol (draft)</title>  <html lang="en"><head><title>LinuxSampler Control Protocol</title>
3  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4  <meta name="description" content="LinuxSampler Control Protocol (draft)">  <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.32 (http://xml.resource.org/)">  <meta name="generator" content="xml2rfc v1.33 (http://xml.resource.org/)">
7  <style type='text/css'><!--  <style type='text/css'><!--
8          body {          body {
9                  font-family: verdana, charcoal, helvetica, arial, sans-serif;                  font-family: verdana, charcoal, helvetica, arial, sans-serif;
# Line 145  Line 145 
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">Intended status: Standards Track</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">Expires: December 24, 2007</td><td class="header">June 22, 2007</td></tr>  <tr><td class="header">Expires: June 9, 2009</td><td class="header">December 6, 2008</td></tr>
149  </table></td></tr></table>  </table></td></tr></table>
150  <h1><br />LinuxSampler Control Protocol (draft)<br />LSCP 1.2cvs</h1>  <h1><br />LinuxSampler Control Protocol<br />LSCP 1.4</h1>
151    
152  <h3>Status of this Memo</h3>  <h3>Status of this Memo</h3>
153  <p>  <p>
# Line 173  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 December 24, 2007.</p>  This Internet-Draft will expire on June 9, 2009.</p>
   
 <h3>Copyright Notice</h3>  
 <p>  
 Copyright &copy; The IETF Trust (2007).</p>  
177    
178  <h3>Abstract</h3>  <h3>Abstract</h3>
179    
# Line 336  Altering effect send's audio routing<br Line 332  Altering effect send's audio routing<br
332  Altering effect send's MIDI controller<br />  Altering effect send's MIDI controller<br />
333  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND LEVEL">6.4.33.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET FX_SEND LEVEL">6.4.33.</a>&nbsp;
334  Altering effect send's send level<br />  Altering effect send's send level<br />
335  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.34.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SEND CHANNEL MIDI_DATA">6.4.34.</a>&nbsp;
336    Sending MIDI messages to sampler channel<br />
337    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET CHANNEL">6.4.35.</a>&nbsp;
338  Resetting a sampler channel<br />  Resetting a sampler channel<br />
339  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor12">6.5.</a>&nbsp;
340  Controlling connection<br />  Controlling connection<br />
# Line 354  Global commands<br /> Line 352  Global commands<br />
352  Current number of active voices<br />  Current number of active voices<br />
353  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT_MAX">6.6.2.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_VOICE_COUNT_MAX">6.6.2.</a>&nbsp;
354  Maximum amount of active voices<br />  Maximum amount of active voices<br />
355  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.3.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET TOTAL_STREAM_COUNT">6.6.3.</a>&nbsp;
356    Current number of active disk streams<br />
357    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#RESET">6.6.4.</a>&nbsp;
358  Reset sampler<br />  Reset sampler<br />
359  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET SERVER INFO">6.6.4.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET SERVER INFO">6.6.5.</a>&nbsp;
360  General sampler informations<br />  General sampler informations<br />
361  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET VOLUME">6.6.5.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET VOLUME">6.6.6.</a>&nbsp;
362  Getting global volume attenuation<br />  Getting global volume attenuation<br />
363  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET VOLUME">6.6.6.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET VOLUME">6.6.7.</a>&nbsp;
364  Setting global volume attenuation<br />  Setting global volume attenuation<br />
365    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET VOICES">6.6.8.</a>&nbsp;
366    Getting global voice limit<br />
367    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET VOICES">6.6.9.</a>&nbsp;
368    Setting global voice limit<br />
369    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET STREAMS">6.6.10.</a>&nbsp;
370    Getting global disk stream limit<br />
371    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET STREAMS">6.6.11.</a>&nbsp;
372    Setting global disk stream limit<br />
373  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#MIDI Instrument Mapping">6.7.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#MIDI Instrument Mapping">6.7.</a>&nbsp;
374  MIDI Instrument Mapping<br />  MIDI Instrument Mapping<br />
375  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD MIDI_INSTRUMENT MAP">6.7.1.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ADD MIDI_INSTRUMENT_MAP">6.7.1.</a>&nbsp;
376  Create a new MIDI instrument map<br />  Create a new MIDI instrument map<br />
377  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE MIDI_INSTRUMENT_MAP">6.7.2.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#REMOVE MIDI_INSTRUMENT_MAP">6.7.2.</a>&nbsp;
378  Delete one particular or all MIDI instrument maps<br />  Delete one particular or all MIDI instrument maps<br />
# Line 432  Changing the description of instrument<b Line 440  Changing the description of instrument<b
440  Finding instruments<br />  Finding instruments<br />
441  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENTS_JOB INFO">6.8.21.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET DB_INSTRUMENTS_JOB INFO">6.8.21.</a>&nbsp;
442  Getting job status information<br />  Getting job status information<br />
443    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FORMAT INSTRUMENTS_DB">6.8.22.</a>&nbsp;
444    Formatting the instruments database<br />
445    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#FIND LOST DB_INSTRUMENT_FILES">6.8.23.</a>&nbsp;
446    Checking for lost instrument files<br />
447    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#SET DB_INSTRUMENT FILE_PATH">6.8.24.</a>&nbsp;
448    Replacing an instrument file<br />
449    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#editing_instruments">6.9.</a>&nbsp;
450    Editing Instruments<br />
451    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#EDIT INSTRUMENT">6.9.1.</a>&nbsp;
452    Opening an appropriate instrument editor application<br />
453    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#file_management">6.10.</a>&nbsp;
454    Managing Files<br />
455    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FILE INSTRUMENTS">6.10.1.</a>&nbsp;
456    Retrieving amount of instruments of a file<br />
457    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#LIST FILE INSTRUMENTS">6.10.2.</a>&nbsp;
458    Retrieving all instruments of a file<br />
459    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#GET FILE INSTRUMENT INFO">6.10.3.</a>&nbsp;
460    Retrieving informations about one instrument in a file<br />
461  <a href="#command_syntax">7.</a>&nbsp;  <a href="#command_syntax">7.</a>&nbsp;
462  Command Syntax<br />  Command Syntax<br />
463  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#character_set">7.1.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#character_set">7.1.</a>&nbsp;
# Line 448  Number of MIDI input devices changed<br Line 474  Number of MIDI input devices changed<br
474  MIDI input device's settings changed<br />  MIDI input device's settings changed<br />
475  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_COUNT">8.5.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_COUNT">8.5.</a>&nbsp;
476  Number of sampler channels changed<br />  Number of sampler channels changed<br />
477  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.6.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_MIDI">8.6.</a>&nbsp;
478    MIDI data on a sampler channel arrived<br />
479    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DEVICE_MIDI">8.7.</a>&nbsp;
480    MIDI data on a MIDI input device arrived<br />
481    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE VOICE_COUNT">8.8.</a>&nbsp;
482  Number of active voices changed<br />  Number of active voices changed<br />
483  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.7.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE STREAM_COUNT">8.9.</a>&nbsp;
484  Number of active disk streams changed<br />  Number of active disk streams changed<br />
485  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.8.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE BUFFER_FILL">8.10.</a>&nbsp;
486  Disk stream buffer fill state changed<br />  Disk stream buffer fill state changed<br />
487  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_INFO">8.9.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE CHANNEL_INFO">8.11.</a>&nbsp;
488  Channel information changed<br />  Channel information changed<br />
489  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_COUNT">8.10.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_COUNT">8.12.</a>&nbsp;
490  Number of effect sends changed<br />  Number of effect sends changed<br />
491  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_INFO">8.11.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE FX_SEND_INFO">8.13.</a>&nbsp;
492  Effect send information changed<br />  Effect send information changed<br />
493  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_VOICE_COUNT">8.12.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_VOICE_COUNT">8.14.</a>&nbsp;
494  Total number of active voices changed<br />  Total number of active voices changed<br />
495  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT">8.13.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE TOTAL_STREAM_COUNT">8.15.</a>&nbsp;
496    Total number of active disk streams changed<br />
497    &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT">8.16.</a>&nbsp;
498  Number of MIDI instrument maps changed<br />  Number of MIDI instrument maps changed<br />
499  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO">8.14.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO">8.17.</a>&nbsp;
500  MIDI instrument map information changed<br />  MIDI instrument map information changed<br />
501  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_COUNT">8.15.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_COUNT">8.18.</a>&nbsp;
502  Number of MIDI instruments changed<br />  Number of MIDI instruments changed<br />
503  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_INFO">8.16.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MIDI_INSTRUMENT_INFO">8.19.</a>&nbsp;
504  MIDI instrument information changed<br />  MIDI instrument information changed<br />
505  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE GLOBAL_INFO">8.17.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE GLOBAL_INFO">8.20.</a>&nbsp;
506  Global settings changed<br />  Global settings changed<br />
507  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT">8.18.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT">8.21.</a>&nbsp;
508  Number of database instrument directories changed<br />  Number of database instrument directories changed<br />
509  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO">8.19.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO">8.22.</a>&nbsp;
510  Database instrument directory information changed<br />  Database instrument directory information changed<br />
511  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_COUNT">8.20.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_COUNT">8.23.</a>&nbsp;
512  Number of database instruments changed<br />  Number of database instruments changed<br />
513  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_INFO">8.21.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENT_INFO">8.24.</a>&nbsp;
514  Database instrument information changed<br />  Database instrument information changed<br />
515  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENTS_JOB_INFO">8.22.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE DB_INSTRUMENTS_JOB_INFO">8.25.</a>&nbsp;
516  Database job status information changed<br />  Database job status information changed<br />
517  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.23.</a>&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;<a href="#SUBSCRIBE MISCELLANEOUS">8.26.</a>&nbsp;
518  Miscellaneous and debugging events<br />  Miscellaneous and debugging events<br />
519  <a href="#anchor14">9.</a>&nbsp;  <a href="#anchor14">9.</a>&nbsp;
520  Security Considerations<br />  Security Considerations<br />
# Line 3301  Changing settings of MIDI input ports</h Line 3333  Changing settings of MIDI input ports</h
3333                      or <a class='info' href='#LIST MIDI_INPUT_DEVICES'>"LIST MIDI_INPUT_DEVICES"<span> (</span><span class='info'>Getting all created MIDI input device list</span><span>)</span></a>                      or <a class='info' href='#LIST MIDI_INPUT_DEVICES'>"LIST MIDI_INPUT_DEVICES"<span> (</span><span class='info'>Getting all created MIDI input device list</span><span>)</span></a>
3334                      command, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of                      command, &lt;port&gt; by the MIDI port number, &lt;key&gt; by the name of
3335                      the parameter to change and &lt;value&gt; by the new value for this                      the parameter to change and &lt;value&gt; by the new value for this
3336                      parameter.                      parameter (encapsulated into apostrophes) or NONE (not encapsulated into apostrophes)
3337                        for specifying no value for parameters allowing a list of values.
3338  </p>  </p>
3339  <p>Possible Answers:  <p>Possible Answers:
3340  </p>  </p>
# Line 3342  Changing settings of MIDI input ports</h Line 3375  Changing settings of MIDI input ports</h
3375  <p>  <p>
3376                          </p>                          </p>
3377  <blockquote class="text">  <blockquote class="text">
3378    <p>C: "SET MIDI_INPUT_PORT_PARAMETER 0 0 ALSA_SEQ_BINDINGS='20:0'"
3379    </p>
3380    <p>S: "OK"
3381    </p>
3382    </blockquote><p>
3383                        
3384    </p>
3385  <p>  <p>
3386                            </p>
3387    <blockquote class="text">
3388    <p>C: "SET MIDI_INPUT_PORT_PARAMETER 0 0 ALSA_SEQ_BINDINGS=NONE"
3389    </p>
3390    <p>S: "OK"
3391  </p>  </p>
3392  </blockquote><p>  </blockquote><p>
3393                                            
# Line 3430  Loading an instrument</h3> Line 3475  Loading an instrument</h3>
3475  </blockquote><p>  </blockquote><p>
3476                                            
3477  </p>  </p>
3478  <p>Example:  <p>Example (Unix):
3479  </p>  </p>
3480  <p>  <p>
3481                          </p>                          </p>
3482  <blockquote class="text">  <blockquote class="text">
3483    <p>C: LOAD INSTRUMENT '/home/joe/gigs/cello.gig' 0 0
3484    </p>
3485    <p>S: OK
3486    </p>
3487    </blockquote><p>
3488                        
3489    </p>
3490    <p>Example (Windows):
3491    </p>
3492  <p>  <p>
3493                            </p>
3494    <blockquote class="text">
3495    <p>C: LOAD INSTRUMENT 'D:/MySounds/cello.gig' 0 0
3496    </p>
3497    <p>S: OK
3498  </p>  </p>
3499  </blockquote><p>  </blockquote><p>
3500                                            
# Line 3850  Getting information about an engine</h3> Line 3909  Getting information about an engine</h3>
3909                                          </p>                                          </p>
3910  <blockquote class="text">  <blockquote class="text">
3911  <p>arbitrary description text about the engine  <p>arbitrary description text about the engine
3912                                                (note that the character string may contain
3913                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
3914  </p>  </p>
3915  </blockquote>  </blockquote>
3916                                                                            
# Line 3969  Getting sampler channel information</h3> Line 4030  Getting sampler channel information</h3>
4030  <blockquote class="text">  <blockquote class="text">
4031  <p>the file name of the loaded instrument, "NONE" if  <p>the file name of the loaded instrument, "NONE" if
4032                                              there's no instrument yet loaded for this sampler                                              there's no instrument yet loaded for this sampler
4033                                              channel                                              channel (note: since LSCP 1.2 this path may contain
4034                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
4035  </p>  </p>
4036  </blockquote>  </blockquote>
4037                                                                            
# Line 3986  Getting sampler channel information</h3> Line 4048  Getting sampler channel information</h3>
4048                                          </p>                                          </p>
4049  <blockquote class="text">  <blockquote class="text">
4050  <p>the instrument name of the loaded instrument  <p>the instrument name of the loaded instrument
4051                                                (note: since LSCP 1.2 this character string may contain
4052                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
4053  </p>  </p>
4054  </blockquote>  </blockquote>
4055                                                                            
# Line 5061  Adding an effect send to a sampler chann Line 5125  Adding an effect send to a sampler chann
5125                      sampler channel on which the effect send should be created on, &lt;midi-ctrl&gt;                      sampler channel on which the effect send should be created on, &lt;midi-ctrl&gt;
5126                      is a number between 0..127 defining the MIDI controller which can alter the                      is a number between 0..127 defining the MIDI controller which can alter the
5127                      effect send level and &lt;name&gt; is an optional argument defining a name                      effect send level and &lt;name&gt; is an optional argument defining a name
5128                      for the effect send entity. The name does not have to be unique.                      for the effect send entity. The name does not have to be unique, but MUST be
5129                        encapsulated into apostrophes and supports escape sequences as described in chapter
5130                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>".
5131  </p>  </p>
5132  <p>By default, that is as initial routing, the effect send's audio channels  <p>By default, that is as initial routing, the effect send's audio channels
5133                      are automatically routed to the last audio channels of the sampler channel's                      are automatically routed to the last audio channels of the sampler channel's
# Line 5330  Getting effect send information</h3> Line 5396  Getting effect send information</h3>
5396                                          </p>                                          </p>
5397  <blockquote class="text">  <blockquote class="text">
5398  <p>name of the effect send entity  <p>name of the effect send entity
5399                                                (note that this character string may contain
5400                                                 <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
5401  </p>  </p>
5402  </blockquote>  </blockquote>
5403                                                                            
# Line 5420  Changing effect send's name</h3> Line 5488  Changing effect send's name</h3>
5488                      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>                      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>
5489                      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                      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
5490                      &lt;name&gt; is the new name of the effect send entity, which                      &lt;name&gt; is the new name of the effect send entity, which
5491                      does not have to be unique.                      does not have to be unique (name MUST be encapsulated into apostrophes
5492                        and supports escape sequences as described in chapter
5493                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
5494                        
5495  </p>  </p>
5496  <p>Possible Answers:  <p>Possible Answers:
5497  </p>  </p>
# Line 5684  Altering effect send's send level</h3> Line 5755  Altering effect send's send level</h3>
5755  </blockquote><p>  </blockquote><p>
5756                                            
5757  </p>  </p>
5758  <a name="RESET CHANNEL"></a><br /><hr />  <a name="SEND CHANNEL MIDI_DATA"></a><br /><hr />
5759  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
5760  <a name="rfc.section.6.4.34"></a><h3>6.4.34.&nbsp;  <a name="rfc.section.6.4.34"></a><h3>6.4.34.&nbsp;
5761    Sending MIDI messages to sampler channel</h3>
5762    
5763    <p>The front-end can send MIDI events to specific sampler channel
5764                        by sending the following command:
5765    </p>
5766    <p>
5767                            </p>
5768    <blockquote class="text">
5769    <p>SEND CHANNEL MIDI_DATA &lt;midi-msg&gt; &lt;sampler-chan&gt; &lt;arg1&gt; &lt;arg2&gt;
5770    </p>
5771    </blockquote><p>
5772                        
5773    </p>
5774    <p>Where &lt;sampler-chan&gt; is the sampler channel number
5775                        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>
5776                        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,
5777                        &lt;arg1&gt; and &lt;arg2&gt; arguments depend on the &lt;midi-msg&gt; argument, which
5778                        specifies the MIDI message type. Currently, the following MIDI messages are supported:
5779    </p>
5780    <p>
5781                            </p>
5782    <blockquote class="text">
5783    <p>"NOTE_ON" -
5784                                    </p>
5785    <blockquote class="text">
5786    <p>For turning on MIDI notes, where &lt;arg1&gt;
5787                                        specifies the key number and &lt;arg2&gt; the velocity
5788                                        as described in the MIDI specification.
5789    </p>
5790    </blockquote>
5791                                
5792    
5793    <p>"NOTE_OFF" -
5794                                    </p>
5795    <blockquote class="text">
5796    <p>For turning a currently playing MIDI note off, where &lt;arg1&gt;
5797                                        specifies the key number and &lt;arg2&gt; the velocity
5798                                        as described in the MIDI specification.
5799    </p>
5800    </blockquote>
5801                                
5802    
5803    </blockquote><p>
5804                        
5805    </p>
5806    <p>CAUTION: This command is provided for implementations of virtual MIDI keyboards
5807                        and no realtime guarantee whatsoever will be made!
5808    </p>
5809    <p>Possible Answers:
5810    </p>
5811    <p>
5812                            </p>
5813    <blockquote class="text">
5814    <p>"OK" -
5815                                    </p>
5816    <blockquote class="text">
5817    <p>on success
5818    </p>
5819    </blockquote>
5820                                
5821    
5822    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
5823                                    </p>
5824    <blockquote class="text">
5825    <p>in case it failed, providing an appropriate error code and error message
5826    </p>
5827    </blockquote>
5828                                
5829    
5830    </blockquote><p>
5831                        
5832    </p>
5833    <p>Example:
5834    </p>
5835    <p>
5836                            </p>
5837    <blockquote class="text">
5838    <p>C: "SEND CHANNEL MIDI_DATA NOTE_ON 0 56 112"
5839    </p>
5840    <p>S: "OK"
5841    </p>
5842    </blockquote><p>
5843                        
5844    </p>
5845    <a name="RESET CHANNEL"></a><br /><hr />
5846    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
5847    <a name="rfc.section.6.4.35"></a><h3>6.4.35.&nbsp;
5848  Resetting a sampler channel</h3>  Resetting a sampler channel</h3>
5849    
5850  <p>The front-end can reset a particular sampler channel by sending the following command:  <p>The front-end can reset a particular sampler channel by sending the following command:
# Line 6021  Maximum amount of active voices</h3> Line 6179  Maximum amount of active voices</h3>
6179  </blockquote><p>  </blockquote><p>
6180                                            
6181  </p>  </p>
6182  <a name="RESET"></a><br /><hr />  <a name="GET TOTAL_STREAM_COUNT"></a><br /><hr />
6183  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
6184  <a name="rfc.section.6.6.3"></a><h3>6.6.3.&nbsp;  <a name="rfc.section.6.6.3"></a><h3>6.6.3.&nbsp;
6185    Current number of active disk streams</h3>
6186    
6187    <p>The front-end can ask for the current number of active disk streams on
6188                        the sampler by sending the following command:
6189    </p>
6190    <p>
6191                            </p>
6192    <blockquote class="text">
6193    <p>GET TOTAL_STREAM_COUNT
6194    </p>
6195    </blockquote><p>
6196                        
6197    </p>
6198    <p>Possible Answers:
6199    </p>
6200    <p>
6201                            </p>
6202    <blockquote class="text">
6203    <p>LinuxSampler will answer by returning the number of all active
6204                                disk streams on the sampler.
6205    </p>
6206    </blockquote><p>
6207                        
6208    </p>
6209    <a name="RESET"></a><br /><hr />
6210    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6211    <a name="rfc.section.6.6.4"></a><h3>6.6.4.&nbsp;
6212  Reset sampler</h3>  Reset sampler</h3>
6213    
6214  <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:
# Line 6064  Reset sampler</h3> Line 6249  Reset sampler</h3>
6249  </p>  </p>
6250  <a name="GET SERVER INFO"></a><br /><hr />  <a name="GET SERVER INFO"></a><br /><hr />
6251  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
6252  <a name="rfc.section.6.6.4"></a><h3>6.6.4.&nbsp;  <a name="rfc.section.6.6.5"></a><h3>6.6.5.&nbsp;
6253  General sampler informations</h3>  General sampler informations</h3>
6254    
6255  <p>The client can ask for general informations about the LinuxSampler  <p>The client can ask for general informations about the LinuxSampler
# Line 6097  General sampler informations</h3> Line 6282  General sampler informations</h3>
6282                                          </p>                                          </p>
6283  <blockquote class="text">  <blockquote class="text">
6284  <p>arbitrary textual description about the sampler  <p>arbitrary textual description about the sampler
6285                                                (note that the character string may contain
6286                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
6287  </p>  </p>
6288  </blockquote>  </blockquote>
6289                                                                            
# Line 6138  General sampler informations</h3> Line 6325  General sampler informations</h3>
6325  </p>  </p>
6326  <a name="GET VOLUME"></a><br /><hr />  <a name="GET VOLUME"></a><br /><hr />
6327  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
6328  <a name="rfc.section.6.6.5"></a><h3>6.6.5.&nbsp;  <a name="rfc.section.6.6.6"></a><h3>6.6.6.&nbsp;
6329  Getting global volume attenuation</h3>  Getting global volume attenuation</h3>
6330    
6331  <p>The client can ask for the current global sampler-wide volume  <p>The client can ask for the current global sampler-wide volume
# Line 6171  Getting global volume attenuation</h3> Line 6358  Getting global volume attenuation</h3>
6358  </p>  </p>
6359  <a name="SET VOLUME"></a><br /><hr />  <a name="SET VOLUME"></a><br /><hr />
6360  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
6361  <a name="rfc.section.6.6.6"></a><h3>6.6.6.&nbsp;  <a name="rfc.section.6.6.7"></a><h3>6.6.7.&nbsp;
6362  Setting global volume attenuation</h3>  Setting global volume attenuation</h3>
6363    
6364  <p>The client can alter the current global sampler-wide volume  <p>The client can alter the current global sampler-wide volume
# Line 6224  Setting global volume attenuation</h3> Line 6411  Setting global volume attenuation</h3>
6411  </blockquote><p>  </blockquote><p>
6412                                            
6413  </p>  </p>
6414    <a name="GET VOICES"></a><br /><hr />
6415    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6416    <a name="rfc.section.6.6.8"></a><h3>6.6.8.&nbsp;
6417    Getting global voice limit</h3>
6418    
6419    <p>The client can ask for the current global sampler-wide limit
6420                           for maximum voices by sending the following command:
6421    </p>
6422    <p>
6423                            </p>
6424    <blockquote class="text">
6425    <p>GET VOICES
6426    </p>
6427    </blockquote><p>
6428                        
6429    </p>
6430    <p>Possible Answers:
6431    </p>
6432    <p>
6433                            </p>
6434    <blockquote class="text">
6435    <p>LinuxSampler will answer by returning the number for
6436                                   the current limit of maximum voices.
6437    </p>
6438    </blockquote><p>
6439                        
6440    </p>
6441    <p>The voice limit setting defines how many voices should maximum
6442                           be processed by the sampler at the same time. If the user
6443                           triggers new notes which would exceed that voice limit, the
6444                           sampler engine will react by stealing old voices for those
6445                           newly triggered notes. Note that the amount of voices triggered
6446                           by a new note can be larger than one and is dependent to the
6447                           respective instrument and probably further criterias.
6448    </p>
6449    <a name="SET VOICES"></a><br /><hr />
6450    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6451    <a name="rfc.section.6.6.9"></a><h3>6.6.9.&nbsp;
6452    Setting global voice limit</h3>
6453    
6454    <p>The client can alter the current global sampler-wide limit
6455                        for maximum voices by sending the following command:
6456    </p>
6457    <p>
6458                            </p>
6459    <blockquote class="text">
6460    <p>SET VOICES &lt;max-voices&gt;
6461    </p>
6462    </blockquote><p>
6463                        
6464    </p>
6465    <p>Where &lt;max-voices&gt; should be replaced by the integer
6466                       value, reflecting the new global amount limit of maximum voices.
6467                       This value has to be larger than 0.
6468    </p>
6469    <p>Possible Answers:
6470    </p>
6471    <p>
6472                            </p>
6473    <blockquote class="text">
6474    <p>"OK" -
6475                                    </p>
6476    <blockquote class="text">
6477    <p>on success
6478    </p>
6479    </blockquote>
6480                                
6481    
6482    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6483                                    </p>
6484    <blockquote class="text">
6485    <p>if the voice limit was set, but there are noteworthy
6486                                        issue(s) related, providing an appropriate warning code and
6487                                        warning message
6488    </p>
6489    </blockquote>
6490                                
6491    
6492    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6493                                    </p>
6494    <blockquote class="text">
6495    <p>in case it failed, providing an appropriate error code and error message
6496    </p>
6497    </blockquote>
6498                                
6499    
6500    </blockquote><p>
6501                        
6502    </p>
6503    <p>Note: the given value will be passed to all sampler engine instances.
6504                           The total amount of maximum voices on the running system might thus
6505                           be as big as the given value multiplied by the current amount of engine
6506                           instances.
6507    </p>
6508    <p>Caution: when adjusting the voice limit, you SHOULD also
6509                            adjust the disk stream limit respectively and vice versa.
6510    </p>
6511    <a name="GET STREAMS"></a><br /><hr />
6512    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6513    <a name="rfc.section.6.6.10"></a><h3>6.6.10.&nbsp;
6514    Getting global disk stream limit</h3>
6515    
6516    <p>The client can ask for the current global sampler-wide limit
6517                           for maximum disk streams by sending the following command:
6518    </p>
6519    <p>
6520                            </p>
6521    <blockquote class="text">
6522    <p>GET STREAMS
6523    </p>
6524    </blockquote><p>
6525                        
6526    </p>
6527    <p>Possible Answers:
6528    </p>
6529    <p>
6530                            </p>
6531    <blockquote class="text">
6532    <p>LinuxSampler will answer by returning the number for
6533                                   the current limit of maximum disk streams.
6534    </p>
6535    </blockquote><p>
6536                        
6537    </p>
6538    <p>The disk stream limit setting defines how many disk streams should
6539                           maximum be processed by a sampler engine at the same time. The
6540                           higher this value, the more memory (RAM) will be occupied, since
6541                           every disk streams allocates a certain buffer size for being able
6542                           to perform its streaming operations.
6543    </p>
6544    <a name="SET STREAMS"></a><br /><hr />
6545    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
6546    <a name="rfc.section.6.6.11"></a><h3>6.6.11.&nbsp;
6547    Setting global disk stream limit</h3>
6548    
6549    <p>The client can alter the current global sampler-wide limit
6550                        for maximum disk streams by sending the following command:
6551    </p>
6552    <p>
6553                            </p>
6554    <blockquote class="text">
6555    <p>SET STREAMS &lt;max-streams&gt;
6556    </p>
6557    </blockquote><p>
6558                        
6559    </p>
6560    <p>Where &lt;max-streams&gt; should be replaced by the integer
6561                       value, reflecting the new global amount limit of maximum disk streams.
6562                       This value has to be positive.
6563    </p>
6564    <p>Possible Answers:
6565    </p>
6566    <p>
6567                            </p>
6568    <blockquote class="text">
6569    <p>"OK" -
6570                                    </p>
6571    <blockquote class="text">
6572    <p>on success
6573    </p>
6574    </blockquote>
6575                                
6576    
6577    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
6578                                    </p>
6579    <blockquote class="text">
6580    <p>if the disk stream limit was set, but there are noteworthy
6581                                        issue(s) related, providing an appropriate warning code and
6582                                        warning message
6583    </p>
6584    </blockquote>
6585                                
6586    
6587    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
6588                                    </p>
6589    <blockquote class="text">
6590    <p>in case it failed, providing an appropriate error code and error message
6591    </p>
6592    </blockquote>
6593                                
6594    
6595    </blockquote><p>
6596                        
6597    </p>
6598    <p>Note: the given value will be passed to all sampler engine instances.
6599                           The total amount of maximum disk streams on the running system might
6600                           thus be as big as the given value multiplied by the current amount of
6601                           engine instances.
6602    </p>
6603    <p>Caution: when adjusting the disk stream limit, you SHOULD also
6604                            adjust the voice limit respectively and vice versa.
6605    </p>
6606  <a name="MIDI Instrument Mapping"></a><br /><hr />  <a name="MIDI Instrument Mapping"></a><br /><hr />
6607  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
6608  <a name="rfc.section.6.7"></a><h3>6.7.&nbsp;  <a name="rfc.section.6.7"></a><h3>6.7.&nbsp;
# Line 6258  MIDI Instrument Mapping</h3> Line 6637  MIDI Instrument Mapping</h3>
6637                  cause the sampler to switch to the respective instrument as                  cause the sampler to switch to the respective instrument as
6638                  reflected by the current MIDI instrument map.                  reflected by the current MIDI instrument map.
6639  </p>  </p>
6640  <a name="ADD MIDI_INSTRUMENT MAP"></a><br /><hr />  <a name="ADD MIDI_INSTRUMENT_MAP"></a><br /><hr />
6641  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
6642  <a name="rfc.section.6.7.1"></a><h3>6.7.1.&nbsp;  <a name="rfc.section.6.7.1"></a><h3>6.7.1.&nbsp;
6643  Create a new MIDI instrument map</h3>  Create a new MIDI instrument map</h3>
# Line 6276  Create a new MIDI instrument map</h3> Line 6655  Create a new MIDI instrument map</h3>
6655  </p>  </p>
6656  <p>Where &lt;name&gt; is an optional argument allowing to  <p>Where &lt;name&gt; is an optional argument allowing to
6657                      assign a custom name to the new map. MIDI instrument Map                      assign a custom name to the new map. MIDI instrument Map
6658                      names do not have to be unique.                      names do not have to be unique, but MUST be encapsulated
6659                        into apostrophes and support escape sequences as described
6660                        in chapter "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>".
6661                        
6662  </p>  </p>
6663  <p>Possible Answers:  <p>Possible Answers:
6664  </p>  </p>
# Line 6534  Getting MIDI instrument map information< Line 6916  Getting MIDI instrument map information<
6916  <blockquote class="text">  <blockquote class="text">
6917  <p>custom name of the given map,  <p>custom name of the given map,
6918                                              which does not have to be unique                                              which does not have to be unique
6919                                                (note that this character string may contain
6920                                                 <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
6921  </p>  </p>
6922  </blockquote>  </blockquote>
6923                                                                            
# Line 6589  Renaming a MIDI instrument map</h3> Line 6973  Renaming a MIDI instrument map</h3>
6973  </p>  </p>
6974  <p>Where &lt;map&gt; is the numerical ID of the map and  <p>Where &lt;map&gt; is the numerical ID of the map and
6975                      &lt;name&gt; the new custom name of the map, which does not                      &lt;name&gt; the new custom name of the map, which does not
6976                      have to be unique.                      have to be unique (name MUST be encapsulated into apostrophes
6977                        and supports escape sequences as described in chapter
6978                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
6979                        
6980  </p>  </p>
6981  <p>Possible Answers:  <p>Possible Answers:
6982  </p>  </p>
# Line 6754  Create or replace a MIDI instrument map Line 7141  Create or replace a MIDI instrument map
7141                      load modes of entries, the frontend should retrieve the actual                      load modes of entries, the frontend should retrieve the actual
7142                      mode by i.e. sending                      mode by i.e. sending
7143                      <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>                      <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>
7144                      command(s). Finally the OPTIONAL &lt;name&gt; argument allows to                      command(s). Finally the OPTIONAL &lt;name&gt; argument allows to set a custom name
7145                      set a custom name (encapsulated into apostrophes) for the mapping                      (encapsulated into apostrophes, supporting escape sequences as described in chapter
7146                      entry, useful for frontends for displaying an appropriate name for                      "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>") for the
7147                        mapping entry, useful for frontends for displaying an appropriate name for
7148                      mapped instruments (using                      mapped instruments (using
7149                      <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>).                      <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>).
7150                                            
# Line 7078  Get current settings of MIDI instrument Line 7466  Get current settings of MIDI instrument
7466                                      changed with the                                      changed with the
7467                                      <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>                                      <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>
7468                                      command and does not have to be unique.                                      command and does not have to be unique.
7469                                        (note that this character string may contain
7470                                        <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>)
7471  </p>  </p>
7472  </blockquote>  </blockquote>
7473                                                            
# Line 7094  Get current settings of MIDI instrument Line 7484  Get current settings of MIDI instrument
7484  <p>"INSTRUMENT_FILE" -  <p>"INSTRUMENT_FILE" -
7485                                  </p>                                  </p>
7486  <blockquote class="text">  <blockquote class="text">
7487  <p>File name of the instrument.  <p>File name of the instrument
7488                                        (note that this path may contain
7489                                        <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>).
7490  </p>  </p>
7491  </blockquote>  </blockquote>
7492                                                            
# Line 7112  Get current settings of MIDI instrument Line 7504  Get current settings of MIDI instrument
7504  <blockquote class="text">  <blockquote class="text">
7505  <p>Name of the loaded instrument as reflected by its file.  <p>Name of the loaded instrument as reflected by its file.
7506                                      In contrast to the "NAME" field, the "INSTRUMENT_NAME" field                                      In contrast to the "NAME" field, the "INSTRUMENT_NAME" field
7507                                      cannot be changed.                                      cannot be changed (note that this character string may contain
7508                                        <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>).
7509  </p>  </p>
7510  </blockquote>  </blockquote>
7511                                                            
# Line 7247  Managing Instruments Database</h3> Line 7640  Managing Instruments Database</h3>
7640  <p>The following commands describe how to use and manage  <p>The following commands describe how to use and manage
7641                  the instruments database.                  the instruments database.
7642  </p>  </p>
7643    <p>Notice:
7644    </p>
7645    <p>
7646                            </p>
7647    <blockquote class="text">
7648    <p>All command arguments representing a path or
7649                                instrument/directory name support escape sequences as described in chapter
7650                                "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>".
7651                                
7652    </p>
7653    <p>All occurrences of a forward slash in instrument and directory
7654                                   names are escaped with its hex (\x2f) or octal (\057) escape sequence.
7655                                
7656    </p>
7657    </blockquote><p>
7658                        
7659    </p>
7660  <a name="ADD DB_INSTRUMENT_DIRECTORY"></a><br /><hr />  <a name="ADD DB_INSTRUMENT_DIRECTORY"></a><br /><hr />
7661  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
7662  <a name="rfc.section.6.8.1"></a><h3>6.8.1.&nbsp;  <a name="rfc.section.6.8.1"></a><h3>6.8.1.&nbsp;
# Line 7512  Getting instrument directory information Line 7922  Getting instrument directory information
7922  <p>DESCRIPTION -  <p>DESCRIPTION -
7923                                          </p>                                          </p>
7924  <blockquote class="text">  <blockquote class="text">
7925  <p>A brief description of the directory content  <p>A brief description of the directory content.
7926                                                Note that the character string may contain
7927                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
7928  </p>  </p>
7929  </blockquote>  </blockquote>
7930                                                                            
# Line 7757  Changing the description of directory</h Line 8169  Changing the description of directory</h
8169                                            
8170  </p>  </p>
8171  <p>Where &lt;dir&gt; is the absolute path name of the directory and  <p>Where &lt;dir&gt; is the absolute path name of the directory and
8172                      &lt;desc&gt; is the new description for the directory.                      &lt;desc&gt; is the new description for the directory
8173                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
8174                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8175  </p>  </p>
8176  <p>Possible Answers:  <p>Possible Answers:
8177  </p>  </p>
# Line 7824  Finding directories</h3> Line 8238  Finding directories</h3>
8238                            </p>                            </p>
8239  <blockquote class="text">  <blockquote class="text">
8240  <p>Restricts the search to directories, which names  <p>Restricts the search to directories, which names
8241                                satisfy the supplied search string.                                satisfy the supplied search string (encapsulated into apostrophes,
8242                                  supporting escape sequences as described in chapter
8243                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8244  </p>  </p>
8245  </blockquote><p>  </blockquote><p>
8246                                                
# Line 7867  Finding directories</h3> Line 8283  Finding directories</h3>
8283                            </p>                            </p>
8284  <blockquote class="text">  <blockquote class="text">
8285  <p>Restricts the search to directories with description  <p>Restricts the search to directories with description
8286                                that satisfies the supplied search string.                                that satisfies the supplied search string
8287                                  (encapsulated into apostrophes, supporting escape
8288                                  sequences as described in chapter
8289                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
8290  </p>  </p>
8291  </blockquote><p>  </blockquote><p>
8292                                                
# Line 7930  Adding instruments to the instruments da Line 8349  Adding instruments to the instruments da
8349  <p>  <p>
8350                          </p>                          </p>
8351  <blockquote class="text">  <blockquote class="text">
8352  <p>ADD DB_INSTRUMENTS [NON_MODAL] [&lt;mode&gt;] &lt;db_dir&gt; &lt;file_path&gt; [&lt;instr_index&gt;]  <p>ADD DB_INSTRUMENTS [NON_MODAL] [&lt;mode&gt;[ FILE_AS_DIR]] &lt;db_dir&gt; &lt;file_path&gt; [&lt;instr_index&gt;]
8353  </p>  </p>
8354  </blockquote><p>  </blockquote><p>
8355                                            
# Line 7988  Adding instruments to the instruments da Line 8407  Adding instruments to the instruments da
8407  </blockquote><p>  </blockquote><p>
8408                                            
8409  </p>  </p>
8410    <p> If FILE_AS_DIR argument is supplied, all instruments in an instrument
8411                     file will be added to a separate directory in the instruments database, which
8412                     name will be the name of the instrument file with the file extension stripped off.
8413                    
8414    </p>
8415  <p>The difference between regular and NON_MODAL versions of the command  <p>The difference between regular and NON_MODAL versions of the command
8416                      is that the regular command returns when the scanning is finished                      is that the regular command returns when the scanning is finished
8417                      while NON_MODAL version returns immediately and a background process is launched.                      while NON_MODAL version returns immediately and a background process is launched.
# Line 8248  Getting instrument information</h3> Line 8672  Getting instrument information</h3>
8672                                          </p>                                          </p>
8673  <blockquote class="text">  <blockquote class="text">
8674  <p>File name of the instrument.  <p>File name of the instrument.
8675                                                Note that the character string may contain
8676                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8677  </p>  </p>
8678  </blockquote>  </blockquote>
8679                                                                            
# Line 8307  Getting instrument information</h3> Line 8733  Getting instrument information</h3>
8733  <p>DESCRIPTION -  <p>DESCRIPTION -
8734                                          </p>                                          </p>
8735  <blockquote class="text">  <blockquote class="text">
8736  <p>A brief description of the instrument  <p>A brief description of the instrument.
8737                                                Note that the character string may contain
8738                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8739  </p>  </p>
8740  </blockquote>  </blockquote>
8741                                                                            
# Line 8324  Getting instrument information</h3> Line 8752  Getting instrument information</h3>
8752  <p>PRODUCT -  <p>PRODUCT -
8753                                          </p>                                          </p>
8754  <blockquote class="text">  <blockquote class="text">
8755  <p>The product title of the instrument  <p>The product title of the instrument.
8756                                                Note that the character string may contain
8757                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8758  </p>  </p>
8759  </blockquote>  </blockquote>
8760                                                                            
# Line 8332  Getting instrument information</h3> Line 8762  Getting instrument information</h3>
8762  <p>ARTISTS -  <p>ARTISTS -
8763                                          </p>                                          </p>
8764  <blockquote class="text">  <blockquote class="text">
8765  <p>Lists the artist names  <p>Lists the artist names.
8766                                                Note that the character string may contain
8767                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8768  </p>  </p>
8769  </blockquote>  </blockquote>
8770                                                                            
# Line 8342  Getting instrument information</h3> Line 8774  Getting instrument information</h3>
8774  <blockquote class="text">  <blockquote class="text">
8775  <p>Provides a list of keywords that refer to the instrument.  <p>Provides a list of keywords that refer to the instrument.
8776                                              Keywords are separated with semicolon and blank.                                              Keywords are separated with semicolon and blank.
8777                                                Note that the character string may contain
8778                                                <a class='info' href='#character_set'>escape sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>.
8779  </p>  </p>
8780  </blockquote>  </blockquote>
8781                                                                            
# Line 8582  Changing the description of instrument</ Line 9016  Changing the description of instrument</
9016                                            
9017  </p>  </p>
9018  <p>Where &lt;instr&gt; is the absolute path name of the instrument and  <p>Where &lt;instr&gt; is the absolute path name of the instrument and
9019                      &lt;desc&gt; is the new description for the instrument.                      &lt;desc&gt; is the new description for the instrument
9020                        (encapsulated into apostrophes, supporting escape sequences as described in chapter
9021                        "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9022  </p>  </p>
9023  <p>Possible Answers:  <p>Possible Answers:
9024  </p>  </p>
# Line 8649  Finding instruments</h3> Line 9085  Finding instruments</h3>
9085                            </p>                            </p>
9086  <blockquote class="text">  <blockquote class="text">
9087  <p>Restricts the search to instruments, which names  <p>Restricts the search to instruments, which names
9088                                satisfy the supplied search string.                                satisfy the supplied search string (encapsulated into apostrophes,
9089                                  supporting escape sequences as described in chapter
9090                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9091  </p>  </p>
9092  </blockquote><p>  </blockquote><p>
9093                                                
# Line 8707  Finding instruments</h3> Line 9145  Finding instruments</h3>
9145                            </p>                            </p>
9146  <blockquote class="text">  <blockquote class="text">
9147  <p>Restricts the search to instruments with description  <p>Restricts the search to instruments with description
9148                                that satisfies the supplied search string.                                that satisfies the supplied search string (encapsulated into apostrophes,
9149                                  supporting escape sequences as described in chapter
9150                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9151  </p>  </p>
9152  </blockquote><p>  </blockquote><p>
9153                                                
# Line 8718  Finding instruments</h3> Line 9158  Finding instruments</h3>
9158                            </p>                            </p>
9159  <blockquote class="text">  <blockquote class="text">
9160  <p>Restricts the search to instruments with product info  <p>Restricts the search to instruments with product info
9161                                that satisfies the supplied search string.                                that satisfies the supplied search string (encapsulated into apostrophes,
9162                                  supporting escape sequences as described in chapter
9163                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9164  </p>  </p>
9165  </blockquote><p>  </blockquote><p>
9166                                                
# Line 8729  Finding instruments</h3> Line 9171  Finding instruments</h3>
9171                            </p>                            </p>
9172  <blockquote class="text">  <blockquote class="text">
9173  <p>Restricts the search to instruments with artists info  <p>Restricts the search to instruments with artists info
9174                                that satisfies the supplied search string.                                that satisfies the supplied search string (encapsulated into apostrophes,
9175                                  supporting escape sequences as described in chapter
9176                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9177  </p>  </p>
9178  </blockquote><p>  </blockquote><p>
9179                                                
# Line 8740  Finding instruments</h3> Line 9184  Finding instruments</h3>
9184                            </p>                            </p>
9185  <blockquote class="text">  <blockquote class="text">
9186  <p>Restricts the search to instruments with keyword list  <p>Restricts the search to instruments with keyword list
9187                                that satisfies the supplied search string.                                that satisfies the supplied search string (encapsulated into apostrophes,
9188                                  supporting escape sequences as described in chapter
9189                                  "<a class='info' href='#character_set'>Character Set and Escape Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9190  </p>  </p>
9191  </blockquote><p>  </blockquote><p>
9192                                                
# Line 8910  Getting job status information</h3> Line 9356  Getting job status information</h3>
9356  </blockquote><p>  </blockquote><p>
9357                                            
9358  </p>  </p>
9359    <a name="FORMAT INSTRUMENTS_DB"></a><br /><hr />
9360    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9361    <a name="rfc.section.6.8.22"></a><h3>6.8.22.&nbsp;
9362    Formatting the instruments database</h3>
9363    
9364    <p>The front-end can remove all instruments and directories and re-create
9365                        the instruments database structure (e.g., in case of a database corruption)
9366                        by sending the following command:
9367    </p>
9368    <p>
9369                            </p>
9370    <blockquote class="text">
9371    <p>FORMAT INSTRUMENTS_DB
9372    </p>
9373    </blockquote><p>
9374                        
9375    </p>
9376    <p>Possible Answers:
9377    </p>
9378    <p>
9379                            </p>
9380    <blockquote class="text">
9381    <p>"OK" -
9382                                    </p>
9383    <blockquote class="text">
9384    <p>on success
9385    </p>
9386    </blockquote>
9387                                
9388    
9389    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9390                                    </p>
9391    <blockquote class="text">
9392    <p>If the formatting of the instruments database
9393                                        failed.
9394    </p>
9395    </blockquote>
9396                                
9397    
9398    </blockquote><p>
9399                        
9400    </p>
9401    <a name="FIND LOST DB_INSTRUMENT_FILES"></a><br /><hr />
9402    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9403    <a name="rfc.section.6.8.23"></a><h3>6.8.23.&nbsp;
9404    Checking for lost instrument files</h3>
9405    
9406    <p>The front-end can retrieve the list of all instrument files in the instruments database
9407                        that don't exist in the filesystem by sending the following command:
9408    </p>
9409    <p>
9410                            </p>
9411    <blockquote class="text">
9412    <p>FIND LOST DB_INSTRUMENT_FILES
9413    </p>
9414    </blockquote><p>
9415                        
9416    </p>
9417    <p>Possible Answers:
9418    </p>
9419    <p>
9420                            </p>
9421    <blockquote class="text">
9422    <p>A comma separated list with the absolute path names
9423                                (encapsulated into apostrophes) of all lost instrument files.
9424    </p>
9425    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9426                                    </p>
9427    <blockquote class="text">
9428    <p>in case it failed, providing an appropriate error code and error message.
9429    </p>
9430    </blockquote>
9431                                
9432    
9433    </blockquote><p>
9434                        
9435    </p>
9436    <p>Example:
9437    </p>
9438    <p>
9439                            </p>
9440    <blockquote class="text">
9441    <p>C: "FIND LOST DB_INSTRUMENT_FILES"
9442    </p>
9443    <p>S: "'/gigs/Bosendorfer 290.gig','/gigs/Steinway D.gig','/gigs/Free Piano.gig'"
9444    </p>
9445    </blockquote><p>
9446                        
9447    </p>
9448    <a name="SET DB_INSTRUMENT FILE_PATH"></a><br /><hr />
9449    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9450    <a name="rfc.section.6.8.24"></a><h3>6.8.24.&nbsp;
9451    Replacing an instrument file</h3>
9452    
9453    <p>The front-end can substitute all occurrences of an instrument file
9454                        in the instruments database with a new one by sending the following command:
9455    </p>
9456    <p>
9457                            </p>
9458    <blockquote class="text">
9459    <p>SET DB_INSTRUMENT FILE_PATH &lt;old_path&gt; &lt;new_path&gt;
9460    </p>
9461    </blockquote><p>
9462                        
9463    </p>
9464    <p>Where &lt;old_path&gt; is the absolute path name of the instrument file
9465                        to substitute with &lt;new_path&gt;.
9466    </p>
9467    <p>Possible Answers:
9468    </p>
9469    <p>
9470                            </p>
9471    <blockquote class="text">
9472    <p>"OK" -
9473                                    </p>
9474    <blockquote class="text">
9475    <p>on success
9476    </p>
9477    </blockquote>
9478                                
9479    
9480    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9481                                    </p>
9482    <blockquote class="text">
9483    <p>in case it failed, providing an appropriate error code and error message.
9484    </p>
9485    </blockquote>
9486                                
9487    
9488    </blockquote><p>
9489                        
9490    </p>
9491    <p>Example:
9492    </p>
9493    <p>
9494                            </p>
9495    <blockquote class="text">
9496    <p>C: "SET DB_INSTRUMENT FILE_PATH '/gigs/Bosendorfer 290.gig' '/gigs/pianos/Bosendorfer 290.gig'"
9497    </p>
9498    <p>S: "OK"
9499    </p>
9500    </blockquote><p>
9501                        
9502    </p>
9503    <a name="editing_instruments"></a><br /><hr />
9504    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9505    <a name="rfc.section.6.9"></a><h3>6.9.&nbsp;
9506    Editing Instruments</h3>
9507    
9508    <p>The sampler allows to edit instruments while playing with the
9509                    sampler by spawning an external (3rd party) instrument editor
9510                    application for a given instrument. The 3rd party instrument
9511                    editor applications have to place a respective plugin DLL file
9512                    into the sampler's plugins directory. The sampler will
9513                    automatically try to load all plugin DLLs in that directory on
9514                    startup and only on startup!
9515    </p>
9516    <p>At the moment there is only one command for this feature set,
9517                    but this will most probably change in future.
9518    </p>
9519    <a name="EDIT INSTRUMENT"></a><br /><hr />
9520    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9521    <a name="rfc.section.6.9.1"></a><h3>6.9.1.&nbsp;
9522    Opening an appropriate instrument editor application</h3>
9523    
9524    <p>The front-end can request to open an appropriate instrument
9525                        editor application by sending the following command:
9526    </p>
9527    <p>
9528                            </p>
9529    <blockquote class="text">
9530    <p>EDIT CHANNEL INSTRUMENT &lt;sampler-channel&gt;
9531    </p>
9532    </blockquote><p>
9533                        
9534    </p>
9535    <p>Where &lt;sampler-channel&gt; should be replaced by the
9536                        number of the sampler channel as given by the
9537                        <a class='info' href='#ADD CHANNEL'>"ADD CHANNEL"<span> (</span><span class='info'>Adding a new sampler channel</span><span>)</span></a>
9538                        or <a class='info' href='#LIST CHANNELS'>"LIST CHANNELS"<span> (</span><span class='info'>Getting all created sampler channel list</span><span>)</span></a>
9539                        command.
9540    </p>
9541    <p>The sampler will try to ask all registered instrument
9542                        editors (or to be more specific: their sampler plugins)
9543                        whether they are capable to handle the instrument on the
9544                        given sampler channel. The sampler will simply use the first
9545                        instrument editor application which replied with a positive
9546                        answer and spawn that instrument editor application within
9547                        the sampler's process and provide that application access
9548                        to the instrument's data structures, so both applications
9549                        can share and access the same instruments data at the same
9550                        time, thus allowing to immediately hear changes with the
9551                        sampler made by the instrument editor.
9552    </p>
9553    <p>Note: consequently instrument editors are always spawned
9554                        locally on the same machine where the sampler is running
9555                        on!
9556    </p>
9557    <p>Possible Answers:
9558    </p>
9559    <p>
9560                            </p>
9561    <blockquote class="text">
9562    <p>"OK" -
9563                                    </p>
9564    <blockquote class="text">
9565    <p>when an appropriate instrument editor was
9566                                        launched
9567    </p>
9568    </blockquote>
9569                                
9570    
9571    <p>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
9572                                    </p>
9573    <blockquote class="text">
9574    <p>when an appropriate instrument editor was
9575                                        launched, but there are noteworthy issues
9576    </p>
9577    </blockquote>
9578                                
9579    
9580    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9581                                    </p>
9582    <blockquote class="text">
9583    <p>when an appropriate instrument editor
9584                                        could not be launched
9585    </p>
9586    </blockquote>
9587                                
9588    
9589    </blockquote><p>
9590                        
9591    </p>
9592    <p>Examples:
9593    </p>
9594    <p>
9595                            </p>
9596    <blockquote class="text">
9597    <p>C: "EDIT CHANNEL INSTRUMENT 0"
9598    </p>
9599    <p>S: "OK"
9600    </p>
9601    </blockquote><p>
9602                        
9603    </p>
9604    <a name="file_management"></a><br /><hr />
9605    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9606    <a name="rfc.section.6.10"></a><h3>6.10.&nbsp;
9607    Managing Files</h3>
9608    
9609    <p>You can query detailed informations about files located
9610                    at the same system where the sampler instance is running on.
9611                    Using this command set allows to retrieve file informations
9612                    even remotely from another machine.
9613    </p>
9614    <a name="GET FILE INSTRUMENTS"></a><br /><hr />
9615    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9616    <a name="rfc.section.6.10.1"></a><h3>6.10.1.&nbsp;
9617    Retrieving amount of instruments of a file</h3>
9618    
9619    <p>The front-end can retrieve the amount of instruments
9620                        within a given instrument file by sending the
9621                        following command:
9622    </p>
9623    <p>
9624                            </p>
9625    <blockquote class="text">
9626    <p>GET FILE INSTRUMENTS &lt;filename&gt;
9627    </p>
9628    </blockquote><p>
9629                        
9630    </p>
9631    <p>Where &lt;filename&gt; is the name of the instrument
9632                        file (encapsulated into apostrophes, supporting escape
9633                        sequences as described in chapter
9634                        "<a class='info' href='#character_set'>Character Set and Escape
9635                            Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9636    </p>
9637    <p>The sampler will try to ask all sampler engines,
9638                        whether they support the given file and ask the first
9639                        engine with a positive answer for the amount of
9640                        instruments.
9641    </p>
9642    <p>Possible Answers:
9643    </p>
9644    <p>
9645                            </p>
9646    <blockquote class="text">
9647    <p>On success, the sampler will answer by
9648                                   returning the amount of instruments.
9649                                
9650    </p>
9651    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9652                                    </p>
9653    <blockquote class="text">
9654    <p>if the file could not be handled
9655    </p>
9656    </blockquote>
9657                                
9658    
9659    </blockquote><p>
9660                        
9661    </p>
9662    <p>Examples:
9663    </p>
9664    <p>
9665                            </p>
9666    <blockquote class="text">
9667    <p>C: "GET FILE INSTRUMENTS 'D:/Sounds/Foo.gig'"
9668    </p>
9669    <p>S: "10"
9670    </p>
9671    </blockquote><p>
9672                        
9673    </p>
9674    <a name="LIST FILE INSTRUMENTS"></a><br /><hr />
9675    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9676    <a name="rfc.section.6.10.2"></a><h3>6.10.2.&nbsp;
9677    Retrieving all instruments of a file</h3>
9678    
9679    <p>The front-end can retrieve a list of all instruments
9680                        within a given instrument file by sending the
9681                        following command:
9682    </p>
9683    <p>
9684                            </p>
9685    <blockquote class="text">
9686    <p>LIST FILE INSTRUMENTS &lt;filename&gt;
9687    </p>
9688    </blockquote><p>
9689                        
9690    </p>
9691    <p>Where &lt;filename&gt; is the name of the instrument
9692                        file (encapsulated into apostrophes, supporting escape
9693                        sequences as described in chapter
9694                        "<a class='info' href='#character_set'>Character Set and Escape
9695                            Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>").
9696    </p>
9697    <p>The sampler will try to ask all sampler engines,
9698                        whether they support the given file and ask the first
9699                        engine with a positive answer for a list of IDs for the
9700                        instruments in the given file.
9701    </p>
9702    <p>Possible Answers:
9703    </p>
9704    <p>
9705                            </p>
9706    <blockquote class="text">
9707    <p>On success, the sampler will answer by
9708                                   returning a comma separated list of
9709                                   instrument IDs.
9710                                
9711    </p>
9712    <p>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
9713                                    </p>
9714    <blockquote class="text">
9715    <p>if the file could not be handled
9716    </p>
9717    </blockquote>
9718                                
9719    
9720    </blockquote><p>
9721                        
9722    </p>
9723    <p>Examples:
9724    </p>
9725    <p>
9726                            </p>
9727    <blockquote class="text">
9728    <p>C: "LIST FILE INSTRUMENTS 'D:/Sounds/Foo.gig'"
9729    </p>
9730    <p>S: "0,1,2,3,4,5,6,7,8,9"
9731    </p>
9732    </blockquote><p>
9733                        
9734    </p>
9735    <a name="GET FILE INSTRUMENT INFO"></a><br /><hr />
9736    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
9737    <a name="rfc.section.6.10.3"></a><h3>6.10.3.&nbsp;
9738    Retrieving informations about one instrument in a file</h3>
9739    
9740    <p>The front-end can retrieve detailed informations
9741                        about a specific instrument within a given instrument
9742                        file by sending the following command:
9743    </p>
9744    <p>
9745                            </p>
9746    <blockquote class="text">
9747    <p>GET FILE INSTRUMENT INFO &lt;filename&gt;
9748                                &lt;instr-id&gt;
9749    </p>
9750    </blockquote><p>
9751                        
9752    </p>
9753    <p>Where &lt;filename&gt; is the name of the instrument
9754                        file (encapsulated into apostrophes, supporting escape
9755                        sequences as described in chapter
9756                        "<a class='info' href='#character_set'>Character Set and Escape
9757                            Sequences<span> (</span><span class='info'>Character Set and Escape Sequences</span><span>)</span></a>") and &lt;instr-id&gt; is the numeric
9758                        instrument ID as returned by the
9759                        <a class='info' href='#LIST FILE INSTRUMENTS'>"LIST FILE INSTRUMENTS"<span> (</span><span class='info'>Retrieving all instruments of a file</span><span>)</span></a> command.
9760    </p>
9761    <p>The sampler will try to ask all sampler engines,
9762                        whether they support the given file and ask the first
9763                        engine with a positive answer for informations about the
9764                        specific instrument in the given file.
9765    </p>
9766    <p>Possible Answers:
9767    </p>
9768    <p>
9769                            </p>
9770    <blockquote class="text">
9771    <p>LinuxSampler will answer by sending a &lt;CRLF&gt; separated list.
9772                                Each answer line begins with the settings category name
9773                                followed by a colon and then a space character &lt;SP&gt; and finally
9774                                the info character string to that setting category. At the
9775                                moment the following categories are defined:
9776    </p>
9777    <p>
9778                                    </p>
9779    <blockquote class="text">
9780    <p>NAME -
9781                                            </p>
9782    <blockquote class="text">
9783    <p>name of the instrument as
9784                                                stored in the instrument file
9785    </p>
9786    </blockquote>
9787                                        
9788    
9789    <p>FORMAT_FAMILY -
9790                                            </p>
9791    <blockquote class="text">
9792    <p>name of the sampler format
9793                                                of the given instrument
9794    </p>
9795    </blockquote>
9796                                        
9797    
9798    <p>FORMAT_VERSION -
9799                                            </p>
9800    <blockquote class="text">
9801    <p>version of the sampler format
9802                                                the instrumen is stored as
9803    </p>
9804    </blockquote>
9805                                        
9806    
9807    <p>PRODUCT -
9808                                            </p>
9809    <blockquote class="text">
9810    <p>official product name of the
9811                                                instrument as stored in the file
9812                                                
9813    </p>
9814    </blockquote>
9815                                        
9816    
9817    <p>ARTISTS -
9818                                            </p>
9819    <blockquote class="text">
9820    <p>artists / sample library
9821                                                vendor of the instrument
9822    </p>
9823    </blockquote>
9824                                        
9825    
9826    <p>KEY_BINDINGS -
9827                                            </p>
9828    <blockquote class="text">
9829    <p>comma separated list of integer values representing
9830                                                   the instrument's key mapping in the range between 0 .. 127,
9831                                                   reflecting the analog meaning of the MIDI specification.
9832    </p>
9833    </blockquote>
9834                                        
9835    
9836    <p>KEYSWITCH_BINDINGS -
9837                                            </p>
9838    <blockquote class="text">
9839    <p>comma separated list of integer values representing
9840                                                   the instrument's keyswitch mapping in the range between 0 .. 127,
9841                                                   reflecting the analog meaning of the MIDI specification.
9842    </p>
9843    </blockquote>
9844                                        
9845    
9846    </blockquote>
9847                                
9848    
9849    </blockquote><p>
9850                        
9851    </p>
9852    <p>The mentioned fields above don't have to be in particular order.
9853    </p>
9854    <p>Example:
9855    </p>
9856    <p>
9857                            </p>
9858    <blockquote class="text">
9859    <p>C: "GET FILE INSTRUMENT INFO 'D:/Sounds/Foo.gig' 0"
9860    </p>
9861    <p>S: "NAME: Lunatic Loops"
9862    </p>
9863    <p>&nbsp;&nbsp;&nbsp;"FORMAT_FAMILY: GIG"
9864    </p>
9865    <p>&nbsp;&nbsp;&nbsp;"FORMAT_VERSION: 3"
9866    </p>
9867    <p>&nbsp;&nbsp;&nbsp;"PRODUCT: The Backbone Bongo Beats"
9868    </p>
9869    <p>&nbsp;&nbsp;&nbsp;"ARTISTS: Jimmy the Fish"
9870    </p>
9871    <p>&nbsp;&nbsp;&nbsp;"."
9872    </p>
9873    </blockquote><p>
9874                        
9875    </p>
9876  <a name="command_syntax"></a><br /><hr />  <a name="command_syntax"></a><br /><hr />
9877  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
9878  <a name="rfc.section.7"></a><h3>7.&nbsp;  <a name="rfc.section.7"></a><h3>7.&nbsp;
# Line 9028  Command Syntax</h3> Line 9991  Command Syntax</h3>
9991  <p>/ EDIT SP edit_instruction  <p>/ EDIT SP edit_instruction
9992                                    
9993  </p>  </p>
9994    <p>/ FORMAT SP format_instruction
9995                    
9996    </p>
9997    <p>/ SEND SP send_instruction
9998                    
9999    </p>
10000  <p>/ RESET  <p>/ RESET
10001                                    
10002  </p>  </p>
# Line 9043  Command Syntax</h3> Line 10012  Command Syntax</h3>
10012  <p>CHANNEL  <p>CHANNEL
10013                                    
10014  </p>  </p>
10015  <p>/ DB_INSTRUMENT_DIRECTORY SP pathname  <p>/ DB_INSTRUMENT_DIRECTORY SP db_path
10016                    
10017    </p>
10018    <p>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP db_path SP filename
10019                                    
10020  </p>  </p>
10021  <p>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP pathname SP pathname  <p>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP FILE_AS_DIR SP db_path SP filename
10022                                    
10023  </p>  </p>
10024  <p>/ DB_INSTRUMENTS SP scan_mode SP pathname SP pathname  <p>/ DB_INSTRUMENTS SP scan_mode SP db_path SP filename
10025                                    
10026  </p>  </p>
10027  <p>/ DB_INSTRUMENTS SP NON_MODAL SP pathname SP pathname  <p>/ DB_INSTRUMENTS SP scan_mode SP FILE_AS_DIR SP db_path SP filename
10028                                    
10029  </p>  </p>
10030  <p>/ DB_INSTRUMENTS SP NON_MODAL SP pathname SP pathname SP instrument_index  <p>/ DB_INSTRUMENTS SP NON_MODAL SP db_path SP filename
10031                                    
10032  </p>  </p>
10033  <p>/ DB_INSTRUMENTS SP pathname SP pathname  <p>/ DB_INSTRUMENTS SP NON_MODAL SP db_path SP filename SP instrument_index
10034                                    
10035  </p>  </p>
10036  <p>/ DB_INSTRUMENTS SP pathname SP pathname SP instrument_index  <p>/ DB_INSTRUMENTS SP db_path SP filename
10037                    
10038    </p>
10039    <p>/ DB_INSTRUMENTS SP db_path SP filename SP instrument_index
10040                                    
10041  </p>  </p>
10042  <p>/ MIDI_INSTRUMENT_MAP  <p>/ MIDI_INSTRUMENT_MAP
# Line 9091  Command Syntax</h3> Line 10066  Command Syntax</h3>
10066  <p>/ CHANNEL_COUNT  <p>/ CHANNEL_COUNT
10067                                    
10068  </p>  </p>
10069    <p>/ CHANNEL_MIDI
10070                    
10071    </p>
10072    <p>/ DEVICE_MIDI
10073                    
10074    </p>
10075  <p>/ VOICE_COUNT  <p>/ VOICE_COUNT
10076                                    
10077  </p>  </p>
# Line 9139  Command Syntax</h3> Line 10120  Command Syntax</h3>
10120  <p>/ MISCELLANEOUS  <p>/ MISCELLANEOUS
10121                                    
10122  </p>  </p>
10123    <p>/ TOTAL_STREAM_COUNT
10124                    
10125    </p>
10126  <p>/ TOTAL_VOICE_COUNT  <p>/ TOTAL_VOICE_COUNT
10127                                    
10128  </p>  </p>
# Line 9166  Command Syntax</h3> Line 10150  Command Syntax</h3>
10150  <p>/ CHANNEL_COUNT  <p>/ CHANNEL_COUNT
10151                                    
10152  </p>  </p>
10153    <p>/ CHANNEL_MIDI
10154                    
10155    </p>
10156    <p>/ DEVICE_MIDI
10157                    
10158    </p>
10159  <p>/ VOICE_COUNT  <p>/ VOICE_COUNT
10160                                    
10161  </p>  </p>
# Line 9214  Command Syntax</h3> Line 10204  Command Syntax</h3>
10204  <p>/ MISCELLANEOUS  <p>/ MISCELLANEOUS
10205                                    
10206  </p>  </p>
10207    <p>/ TOTAL_STREAM_COUNT
10208                    
10209    </p>
10210  <p>/ TOTAL_VOICE_COUNT  <p>/ TOTAL_VOICE_COUNT
10211                                    
10212  </p>  </p>
# Line 9262  Command Syntax</h3> Line 10255  Command Syntax</h3>
10255  <p>/ MIDI_INSTRUMENT_MAP SP ALL  <p>/ MIDI_INSTRUMENT_MAP SP ALL
10256                                    
10257  </p>  </p>
10258  <p>/ DB_INSTRUMENT_DIRECTORY SP FORCE SP pathname  <p>/ DB_INSTRUMENT_DIRECTORY SP FORCE SP db_path
10259                                    
10260  </p>  </p>
10261  <p>/ DB_INSTRUMENT_DIRECTORY SP pathname  <p>/ DB_INSTRUMENT_DIRECTORY SP db_path
10262                                    
10263  </p>  </p>
10264  <p>/ DB_INSTRUMENT SP pathname  <p>/ DB_INSTRUMENT SP db_path
10265                                    
10266  </p>  </p>
10267  </blockquote><p>  </blockquote><p>
# Line 9349  Command Syntax</h3> Line 10342  Command Syntax</h3>
10342  <p>/ SERVER SP INFO  <p>/ SERVER SP INFO
10343                                    
10344  </p>  </p>
10345    <p>/ TOTAL_STREAM_COUNT
10346                    
10347    </p>
10348  <p>/ TOTAL_VOICE_COUNT  <p>/ TOTAL_VOICE_COUNT
10349                                    
10350  </p>  </p>
# Line 9376  Command Syntax</h3> Line 10372  Command Syntax</h3>
10372  <p>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id  <p>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id
10373                                    
10374  </p>  </p>
10375  <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP pathname  <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP db_path
10376                                    
10377  </p>  </p>
10378  <p>/ DB_INSTRUMENT_DIRECTORIES SP pathname  <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path
10379                                    
10380  </p>  </p>
10381  <p>/ DB_INSTRUMENT_DIRECTORY SP INFO SP pathname  <p>/ DB_INSTRUMENT_DIRECTORY SP INFO SP db_path
10382                                    
10383  </p>  </p>
10384  <p>/ DB_INSTRUMENTS SP RECURSIVE SP pathname  <p>/ DB_INSTRUMENTS SP RECURSIVE SP db_path
10385                                    
10386  </p>  </p>
10387  <p>/ DB_INSTRUMENTS SP pathname  <p>/ DB_INSTRUMENTS SP db_path
10388                                    
10389  </p>  </p>
10390  <p>/ DB_INSTRUMENT SP INFO SP pathname  <p>/ DB_INSTRUMENT SP INFO SP db_path
10391                                    
10392  </p>  </p>
10393  <p>/ DB_INSTRUMENTS_JOB SP INFO SP number  <p>/ DB_INSTRUMENTS_JOB SP INFO SP number
# Line 9400  Command Syntax</h3> Line 10396  Command Syntax</h3>
10396  <p>/ VOLUME  <p>/ VOLUME
10397                                    
10398  </p>  </p>
10399    <p>/ VOICES
10400                    
10401    </p>
10402    <p>/ STREAMS
10403                    
10404    </p>
10405    <p>/ FILE SP INSTRUMENTS SP filename
10406                    
10407    </p>
10408    <p>/ FILE SP INSTRUMENT SP INFO SP filename SP instrument_index
10409                    
10410    </p>
10411  </blockquote><p>  </blockquote><p>
10412    
10413  </p>  </p>
# Line 9415  Command Syntax</h3> Line 10423  Command Syntax</h3>
10423  <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list  <p>/ MIDI_INPUT_DEVICE_PARAMETER SP number SP string '=' param_val_list
10424                                    
10425  </p>  </p>
10426    <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' NONE
10427                    
10428    </p>
10429  <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' param_val_list  <p>/ MIDI_INPUT_PORT_PARAMETER SP number SP number SP string '=' param_val_list
10430                                    
10431  </p>  </p>
# Line 9436  Command Syntax</h3> Line 10447  Command Syntax</h3>
10447  <p>/ FX_SEND SP LEVEL SP sampler_channel SP fx_send_id SP volume_value  <p>/ FX_SEND SP LEVEL SP sampler_channel SP fx_send_id SP volume_value
10448                                    
10449  </p>  </p>
10450  <p>/ DB_INSTRUMENT_DIRECTORY SP NAME SP pathname SP dirname  <p>/ DB_INSTRUMENT_DIRECTORY SP NAME SP db_path SP stringval_escaped
10451                    
10452    </p>
10453    <p>/ DB_INSTRUMENT_DIRECTORY SP DESCRIPTION SP db_path SP stringval_escaped
10454                                    
10455  </p>  </p>
10456  <p>/ DB_INSTRUMENT_DIRECTORY SP DESCRIPTION SP pathname SP stringval  <p>/ DB_INSTRUMENT SP NAME SP db_path SP stringval_escaped
10457                                    
10458  </p>  </p>
10459  <p>/ DB_INSTRUMENT SP NAME SP pathname SP dirname  <p>/ DB_INSTRUMENT SP DESCRIPTION SP db_path SP stringval_escaped
10460                                    
10461  </p>  </p>
10462  <p>/ DB_INSTRUMENT SP DESCRIPTION SP pathname SP stringval  <p>/ DB_INSTRUMENT SP FILE_PATH SP filename SP filename
10463                                    
10464  </p>  </p>
10465  <p>/ ECHO SP boolean  <p>/ ECHO SP boolean
# Line 9454  Command Syntax</h3> Line 10468  Command Syntax</h3>
10468  <p>/ VOLUME SP volume_value  <p>/ VOLUME SP volume_value
10469                                    
10470  </p>  </p>
10471    <p>/ VOICES SP number
10472                    
10473    </p>
10474    <p>/ STREAMS SP number
10475                    
10476    </p>
10477  </blockquote><p>  </blockquote><p>
10478    
10479  </p>  </p>
# Line 9505  Command Syntax</h3> Line 10525  Command Syntax</h3>
10525  <p>find_instruction =  <p>find_instruction =
10526          </p>          </p>
10527  <blockquote class="text">  <blockquote class="text">
10528  <p>DB_INSTRUMENTS SP NON_RECURSIVE SP pathname SP query_val_list  <p>DB_INSTRUMENTS SP NON_RECURSIVE SP db_path SP query_val_list
10529                    
10530    </p>
10531    <p>/ DB_INSTRUMENTS SP db_path SP query_val_list
10532                                    
10533  </p>  </p>
10534  <p>/ DB_INSTRUMENTS SP pathname SP query_val_list  <p>/ DB_INSTRUMENT_DIRECTORIES SP NON_RECURSIVE SP db_path SP query_val_list
10535                                    
10536  </p>  </p>
10537  <p>/ DB_INSTRUMENT_DIRECTORIES SP NON_RECURSIVE SP pathname SP query_val_list  <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path SP query_val_list
10538                                    
10539  </p>  </p>
10540  <p>/ DB_INSTRUMENT_DIRECTORIES SP pathname SP query_val_list  <p>/ LOST SP DB_INSTRUMENT_FILES
10541                                    
10542  </p>  </p>
10543  </blockquote><p>  </blockquote><p>
# Line 9523  Command Syntax</h3> Line 10546  Command Syntax</h3>
10546  <p>move_instruction =  <p>move_instruction =
10547          </p>          </p>
10548  <blockquote class="text">  <blockquote class="text">
10549  <p>DB_INSTRUMENT_DIRECTORY SP pathname SP pathname  <p>DB_INSTRUMENT_DIRECTORY SP db_path SP db_path
10550                                    
10551  </p>  </p>
10552  <p>/ DB_INSTRUMENT SP pathname SP pathname  <p>/ DB_INSTRUMENT SP db_path SP db_path
10553                                    
10554  </p>  </p>
10555  </blockquote><p>  </blockquote><p>
# Line 9535  Command Syntax</h3> Line 10558  Command Syntax</h3>
10558  <p>copy_instruction =  <p>copy_instruction =
10559          </p>          </p>
10560  <blockquote class="text">  <blockquote class="text">
10561  <p>DB_INSTRUMENT_DIRECTORY SP pathname SP pathname  <p>DB_INSTRUMENT_DIRECTORY SP db_path SP db_path
10562                                    
10563  </p>  </p>
10564  <p>/ DB_INSTRUMENT SP pathname SP pathname  <p>/ DB_INSTRUMENT SP db_path SP db_path
10565                                    
10566  </p>  </p>
10567  </blockquote><p>  </blockquote><p>
# Line 9622  Command Syntax</h3> Line 10645  Command Syntax</h3>
10645  <p>edit_instruction =  <p>edit_instruction =
10646          </p>          </p>
10647  <blockquote class="text">  <blockquote class="text">
10648  <p>INSTRUMENT SP sampler_channel  <p>CHANNEL SP INSTRUMENT SP sampler_channel
10649                    
10650    </p>
10651    </blockquote><p>
10652    
10653    </p>
10654    <p>format_instruction =
10655            </p>
10656    <blockquote class="text">
10657    <p>INSTRUMENTS_DB
10658                                    
10659  </p>  </p>
10660  </blockquote><p>  </blockquote><p>
# Line 9697  Command Syntax</h3> Line 10729  Command Syntax</h3>
10729  <p>/ FX_SENDS SP sampler_channel  <p>/ FX_SENDS SP sampler_channel
10730                                    
10731  </p>  </p>
10732  <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP pathname  <p>/ DB_INSTRUMENT_DIRECTORIES SP RECURSIVE SP db_path
10733                                    
10734  </p>  </p>
10735  <p>/ DB_INSTRUMENT_DIRECTORIES SP pathname  <p>/ DB_INSTRUMENT_DIRECTORIES SP db_path
10736                                    
10737  </p>  </p>
10738  <p>/ DB_INSTRUMENTS SP RECURSIVE SP pathname  <p>/ DB_INSTRUMENTS SP RECURSIVE SP db_path
10739                                    
10740  </p>  </p>
10741  <p>/ DB_INSTRUMENTS SP pathname  <p>/ DB_INSTRUMENTS SP db_path
10742                    
10743    </p>
10744    <p>/ FILE SP INSTRUMENTS SP filename
10745                    
10746    </p>
10747    </blockquote><p>
10748    
10749    </p>
10750    <p>send_instruction =
10751            </p>
10752    <blockquote class="text">
10753    <p>CHANNEL SP MIDI_DATA SP string SP sampler_channel SP number SP number
10754                                    
10755  </p>  </p>
10756  </blockquote><p>  </blockquote><p>
# Line 9889  Command Syntax</h3> Line 10933  Command Syntax</h3>
10933  </blockquote><p>  </blockquote><p>
10934    
10935  </p>  </p>
10936  <p>pathname =  <p>filename =
10937          </p>          </p>
10938  <blockquote class="text">  <blockquote class="text">
10939  <p>stringval  <p>path
10940                                    
10941  </p>  </p>
10942  </blockquote><p>  </blockquote><p>
10943    
10944  </p>  </p>
10945  <p>dirname =  <p>db_path =
10946          </p>          </p>
10947  <blockquote class="text">  <blockquote class="text">
10948  <p>stringval  <p>path
                   
 </p>  
 </blockquote><p>  
   
 </p>  
 <p>filename =  
         </p>  
 <blockquote class="text">  
 <p>stringval_escaped  
10949                                    
10950  </p>  </p>
10951  </blockquote><p>  </blockquote><p>
# Line 9919  Command Syntax</h3> Line 10954  Command Syntax</h3>
10954  <p>map_name =  <p>map_name =
10955          </p>          </p>
10956  <blockquote class="text">  <blockquote class="text">
10957  <p>stringval  <p>stringval_escaped
10958                                    
10959  </p>  </p>
10960  </blockquote><p>  </blockquote><p>
# Line 9928  Command Syntax</h3> Line 10963  Command Syntax</h3>
10963  <p>entry_name =  <p>entry_name =
10964          </p>          </p>
10965  <blockquote class="text">  <blockquote class="text">
10966  <p>stringval  <p>stringval_escaped
10967                                    
10968  </p>  </p>
10969  </blockquote><p>  </blockquote><p>
# Line 9937  Command Syntax</h3> Line 10972  Command Syntax</h3>
10972  <p>fx_send_name =  <p>fx_send_name =
10973          </p>          </p>
10974  <blockquote class="text">  <blockquote class="text">
10975  <p>stringval  <p>stringval_escaped
10976                                    
10977  </p>  </p>
10978  </blockquote><p>  </blockquote><p>
# Line 9988  Command Syntax</h3> Line 11023  Command Syntax</h3>
11023  <p>query_val =  <p>query_val =
11024          </p>          </p>
11025  <blockquote class="text">  <blockquote class="text">
11026  <p>string  <p>text_escaped
11027                                    
11028  </p>  </p>
11029  <p>/ stringval  <p>/ stringval_escaped
11030                                    
11031  </p>  </p>
11032  </blockquote><p>  </blockquote><p>
# Line 10069  Character Set and Escape Sequences</h3> Line 11104  Character Set and Escape Sequences</h3>
11104  <td align="left">two digit hex ASCII code of the character</td>  <td align="left">two digit hex ASCII code of the character</td>
11105  </tr>  </tr>
11106  </table>  </table>
11107    <br clear="all" />
11108    
11109  <p>Notice: due to the transition of certain parts of the  <p>Notice: due to the transition of certain parts of the
11110                  protocol which now support escape sequences, a slight backward                  protocol which now support escape sequences, a slight backward
# Line 10078  Character Set and Escape Sequences</h3> Line 11114  Character Set and Escape Sequences</h3>
11114                  MUST be escaped as well (that is as double backslash), whereas                  MUST be escaped as well (that is as double backslash), whereas
11115                  in the old versions a single backslash was sufficient.                  in the old versions a single backslash was sufficient.
11116  </p>  </p>
11117    <p>The following LSCP commands support escape sequences as part
11118                    of their filename / path based arguments and / or may contain
11119                    a filename / path with escape sequences in their response:
11120                    </p>
11121    <blockquote class="text">
11122    <p><a class='info' href='#LOAD INSTRUMENT'>"LOAD INSTRUMENT"<span> (</span><span class='info'>Loading an instrument</span><span>)</span></a>
11123    </p>
11124    <p><a class='info' href='#GET CHANNEL INFO'>"GET CHANNEL INFO"<span> (</span><span class='info'>Getting sampler channel information</span><span>)</span></a>
11125    </p>
11126    <p><a class='info' href='#MAP MIDI_INSTRUMENT'>"MAP MIDI_INSTRUMENT"<span> (</span><span class='info'>Create or replace a MIDI instrument map entry</span><span>)</span></a>
11127    </p>
11128    <p><a class='info' href='#GET MIDI_INSTRUMENT INFO'>"GET MIDI_INSTRUMENT INFO"<span> (</span><span class='info'>Get current settings of MIDI instrument map entry</span><span>)</span></a>
11129    </p>
11130    <p><a class='info' href='#ADD DB_INSTRUMENT_DIRECTORY'>"ADD DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Creating a new instrument directory</span><span>)</span></a>
11131    </p>
11132    <p><a class='info' href='#ADD DB_INSTRUMENTS'>"ADD DB_INSTRUMENTS"<span> (</span><span class='info'>Adding instruments to the instruments database</span><span>)</span></a>
11133    </p>
11134    <p><a class='info' href='#REMOVE DB_INSTRUMENT_DIRECTORY'>"REMOVE DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Deleting an instrument directory</span><span>)</span></a>
11135    </p>
11136    <p><a class='info' href='#REMOVE DB_INSTRUMENT'>"REMOVE DB_INSTRUMENT"<span> (</span><span class='info'>Removing an instrument</span><span>)</span></a>
11137    </p>
11138    <p><a class='info' href='#GET DB_INSTRUMENT_DIRECTORIES'>"GET DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Getting amount of instrument directories</span><span>)</span></a>
11139    </p>
11140    <p><a class='info' href='#LIST DB_INSTRUMENT_DIRECTORIES'>"LIST DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Listing all directories in specific directory</span><span>)</span></a>
11141    </p>
11142    <p><a class='info' href='#GET DB_INSTRUMENT_DIRECTORY INFO'>"GET DB_INSTRUMENT_DIRECTORY INFO"<span> (</span><span class='info'>Getting instrument directory information</span><span>)</span></a>
11143    </p>
11144    <p><a class='info' href='#GET DB_INSTRUMENTS'>"GET DB_INSTRUMENTS"<span> (</span><span class='info'>Getting amount of instruments</span><span>)</span></a>
11145    </p>
11146    <p><a class='info' href='#LIST DB_INSTRUMENTS'>"LIST DB_INSTRUMENTS"<span> (</span><span class='info'>Listing all instruments in specific directory</span><span>)</span></a>
11147    </p>
11148    <p><a class='info' href='#GET DB_INSTRUMENT INFO'>"GET DB_INSTRUMENT INFO"<span> (</span><span class='info'>Getting instrument information</span><span>)</span></a>
11149    </p>
11150    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY NAME'>"SET DB_INSTRUMENT_DIRECTORY NAME"<span> (</span><span class='info'>Renaming an instrument directory</span><span>)</span></a>
11151    </p>
11152    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY DESCRIPTION'>"SET DB_INSTRUMENT_DIRECTORY DESCRIPTION"<span> (</span><span class='info'>Changing the description of directory</span><span>)</span></a>
11153    </p>
11154    <p><a class='info' href='#SET DB_INSTRUMENT NAME'>"SET DB_INSTRUMENT NAME"<span> (</span><span class='info'>Renaming an instrument</span><span>)</span></a>
11155    </p>
11156    <p><a class='info' href='#SET DB_INSTRUMENT DESCRIPTION'>"SET DB_INSTRUMENT DESCRIPTION"<span> (</span><span class='info'>Changing the description of instrument</span><span>)</span></a>
11157    </p>
11158    <p><a class='info' href='#FIND DB_INSTRUMENTS'>"FIND DB_INSTRUMENTS"<span> (</span><span class='info'>Finding instruments</span><span>)</span></a>
11159    </p>
11160    <p><a class='info' href='#FIND DB_INSTRUMENT_DIRECTORIES'>"FIND DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Finding directories</span><span>)</span></a>
11161    </p>
11162    <p><a class='info' href='#MOVE DB_INSTRUMENT'>"MOVE DB_INSTRUMENT"<span> (</span><span class='info'>Moving an instrument</span><span>)</span></a>
11163    </p>
11164    <p><a class='info' href='#MOVE DB_INSTRUMENT_DIRECTORY'>"MOVE DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Moving an instrument directory</span><span>)</span></a>
11165    </p>
11166    <p><a class='info' href='#COPY DB_INSTRUMENT'>"COPY DB_INSTRUMENT"<span> (</span><span class='info'>Copying instruments</span><span>)</span></a>
11167    </p>
11168    <p><a class='info' href='#COPY DB_INSTRUMENT_DIRECTORY'>"COPY DB_INSTRUMENT_DIRECTORY"<span> (</span><span class='info'>Copying instrument directories</span><span>)</span></a>
11169    </p>
11170    <p><a class='info' href='#FIND LOST DB_INSTRUMENT_FILES'>"FIND LOST DB_INSTRUMENT_FILES"<span> (</span><span class='info'>Checking for lost instrument files</span><span>)</span></a>
11171    </p>
11172    <p><a class='info' href='#SET DB_INSTRUMENT FILE_PATH'>"SET DB_INSTRUMENT FILE_PATH"<span> (</span><span class='info'>Replacing an instrument file</span><span>)</span></a>
11173    </p>
11174    <p><a class='info' href='#GET FILE INSTRUMENTS'>"GET FILE INSTRUMENTS"<span> (</span><span class='info'>Retrieving amount of instruments of a file</span><span>)</span></a>
11175    </p>
11176    <p><a class='info' href='#LIST FILE INSTRUMENTS'>"LIST FILE INSTRUMENTS"<span> (</span><span class='info'>Retrieving all instruments of a file</span><span>)</span></a>
11177    </p>
11178    <p><a class='info' href='#GET FILE INSTRUMENT INFO'>"GET FILE INSTRUMENT INFO"<span> (</span><span class='info'>Retrieving informations about one instrument in a file</span><span>)</span></a>
11179    </p>
11180    </blockquote><p>
11181                    Note that the forward slash character ('/') has a special meaning in
11182                    filename / path based arguments: it acts as separator of the nodes in
11183                    the path, thus if a directory- or filename includes a forward slash
11184                    (not intended as path node separator), you MUST escape that slash
11185                    either with the respective hex escape sequence ("\x2f") or with the
11186                    respective octal escape sequence ("\057").
11187                    
11188    </p>
11189    <p>
11190                    Note for Windows: file path arguments in LSCP are expected
11191                    to use forward slashes as directory node separator similar
11192                    to Unix based operating systems. In contrast to Unix however
11193                    a Windows typical drive character is expected to be
11194                    prefixed to the path. That is an original Windows file path
11195                    like "D:\Sounds\My.gig" would become in LSCP:
11196                    "D:/Sounds/My.gig".
11197                    
11198    </p>
11199    <p>
11200                    The following LSCP commands even support escape sequences as
11201                    part of at least one of their text-based arguments (i.e. entity name,
11202                    description) and / or may contain escape sequences in at least one of
11203                    their text-based fields in their response:
11204                    </p>
11205    <blockquote class="text">
11206    <p><a class='info' href='#GET SERVER INFO'>"GET SERVER INFO"<span> (</span><span class='info'>General sampler informations</span><span>)</span></a>
11207    </p>
11208    <p><a class='info' href='#GET ENGINE INFO'>"GET ENGINE INFO"<span> (</span><span class='info'>Getting information about an engine</span><span>)</span></a>
11209    </p>
11210    <p><a class='info' href='#GET CHANNEL INFO'>"GET CHANNEL INFO"<span> (</span><span class='info'>Getting sampler channel information</span><span>)</span></a>
11211    </p>
11212    <p><a class='info' href='#CREATE FX_SEND'>"CREATE FX_SEND"<span> (</span><span class='info'>Adding an effect send to a sampler channel</span><span>)</span></a>
11213    </p>
11214    <p><a class='info' href='#GET FX_SEND INFO'>"GET FX_SEND INFO"<span> (</span><span class='info'>Getting effect send information</span><span>)</span></a>
11215    </p>
11216    <p><a class='info' href='#SET FX_SEND NAME'>"SET FX_SEND NAME"<span> (</span><span class='info'>Changing effect send's name</span><span>)</span></a>
11217    </p>
11218    <p><a class='info' href='#GET MIDI_INSTRUMENT INFO'>"GET MIDI_INSTRUMENT INFO"<span> (</span><span class='info'>Get current settings of MIDI instrument map entry</span><span>)</span></a>
11219    </p>
11220    <p><a class='info' href='#GET MIDI_INSTRUMENT_MAP INFO'>"GET MIDI_INSTRUMENT_MAP INFO"<span> (</span><span class='info'>Getting MIDI instrument map information</span><span>)</span></a>
11221    </p>
11222    <p><a class='info' href='#ADD MIDI_INSTRUMENT_MAP'>"ADD MIDI_INSTRUMENT_MAP"<span> (</span><span class='info'>Create a new MIDI instrument map</span><span>)</span></a>
11223    </p>
11224    <p><a class='info' href='#MAP MIDI_INSTRUMENT'>"MAP MIDI_INSTRUMENT"<span> (</span><span class='info'>Create or replace a MIDI instrument map entry</span><span>)</span></a>
11225    </p>
11226    <p><a class='info' href='#SET MIDI_INSTRUMENT_MAP NAME'>"SET MIDI_INSTRUMENT_MAP NAME"<span> (</span><span class='info'>Renaming a MIDI instrument map</span><span>)</span></a>
11227    </p>
11228    <p><a class='info' href='#GET DB_INSTRUMENT_DIRECTORY INFO'>"GET DB_INSTRUMENT_DIRECTORY INFO"<span> (</span><span class='info'>Getting instrument directory information</span><span>)</span></a>
11229    </p>
11230    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY NAME'>"SET DB_INSTRUMENT_DIRECTORY NAME"<span> (</span><span class='info'>Renaming an instrument directory</span><span>)</span></a>
11231    </p>
11232    <p><a class='info' href='#SET DB_INSTRUMENT_DIRECTORY DESCRIPTION'>"SET DB_INSTRUMENT_DIRECTORY DESCRIPTION"<span> (</span><span class='info'>Changing the description of directory</span><span>)</span></a>
11233    </p>
11234    <p><a class='info' href='#FIND DB_INSTRUMENT_DIRECTORIES'>"FIND DB_INSTRUMENT_DIRECTORIES"<span> (</span><span class='info'>Finding directories</span><span>)</span></a>
11235    </p>
11236    <p><a class='info' href='#GET DB_INSTRUMENT INFO'>"GET DB_INSTRUMENT INFO"<span> (</span><span class='info'>Getting instrument information</span><span>)</span></a>
11237    </p>
11238    <p><a class='info' href='#SET DB_INSTRUMENT NAME'>"SET DB_INSTRUMENT NAME"<span> (</span><span class='info'>Renaming an instrument</span><span>)</span></a>
11239    </p>
11240    <p><a class='info' href='#SET DB_INSTRUMENT DESCRIPTION'>"SET DB_INSTRUMENT DESCRIPTION"<span> (</span><span class='info'>Changing the description of instrument</span><span>)</span></a>
11241    </p>
11242    <p><a class='info' href='#FIND DB_INSTRUMENTS'>"FIND DB_INSTRUMENTS"<span> (</span><span class='info'>Finding instruments</span><span>)</span></a>
11243    </p>
11244    </blockquote><p>
11245                    Please note that these lists are manually maintained. If you
11246                    find a command that also supports escape sequences we forgot to
11247                    mention here, please report it!
11248                    
11249    </p>
11250  <a name="events"></a><br /><hr />  <a name="events"></a><br /><hr />
11251  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11252  <a name="rfc.section.8"></a><h3>8.&nbsp;  <a name="rfc.section.8"></a><h3>8.&nbsp;
# Line 10238  Number of sampler channels changed</h3> Line 11407  Number of sampler channels changed</h3>
11407  <p>where &lt;channels&gt; will be replaced by the new number  <p>where &lt;channels&gt; will be replaced by the new number
11408                  of sampler channels.                  of sampler channels.
11409  </p>  </p>
11410  <a name="SUBSCRIBE VOICE_COUNT"></a><br /><hr />  <a name="SUBSCRIBE CHANNEL_MIDI"></a><br /><hr />
11411  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11412  <a name="rfc.section.8.6"></a><h3>8.6.&nbsp;  <a name="rfc.section.8.6"></a><h3>8.6.&nbsp;
11413    MIDI data on a sampler channel arrived</h3>
11414    
11415    <p>Client may want to be notified when MIDI data arrive on sampler channels on
11416                    back-end side, by issuing the following command:
11417    </p>
11418    <p>
11419                        </p>
11420    <blockquote class="text">
11421    <p>SUBSCRIBE CHANNEL_MIDI
11422    </p>
11423    </blockquote><p>
11424                    
11425    </p>
11426    <p>Server will start sending one of the the following notification messages:
11427    </p>
11428    <p>
11429                        </p>
11430    <blockquote class="text">
11431    <p>"NOTIFY:CHANNEL_MIDI:&lt;channel-id&gt; NOTE_ON  &lt;note&gt; &lt;velocity&gt;"
11432    </p>
11433    <p>"NOTIFY:CHANNEL_MIDI:&lt;channel-id&gt; NOTE_OFF &lt;note&gt; &lt;velocity&gt;"
11434    </p>
11435    </blockquote><p>
11436                    
11437    </p>
11438    <p>where &lt;channel-id&gt; will be replaced by the ID of the sampler channel where the MIDI
11439                    data arrived. &lt;note&gt; and &lt;velocity&gt; are integer values in the range between
11440                    0 .. 127, reflecting the analog meaning of the MIDI specification.
11441                    
11442    </p>
11443    <p>CAUTION: no guarantee whatsoever will be made that MIDI events are actually all
11444                    delivered by this mechanism! With other words: events could be lost at any time!
11445                    This restriction was made to keep the RT-safeness of the backend's MIDI and audio
11446                    thread unaffected by this feature.
11447    </p>
11448    <a name="SUBSCRIBE DEVICE_MIDI"></a><br /><hr />
11449    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11450    <a name="rfc.section.8.7"></a><h3>8.7.&nbsp;
11451    MIDI data on a MIDI input device arrived</h3>
11452    
11453    <p>Client may want to be notified when MIDI data arrive on MIDI input devices by issuing the following command:
11454    </p>
11455    <p>
11456                                </p>
11457    <blockquote class="text">
11458    <p>SUBSCRIBE DEVICE_MIDI
11459    </p>
11460    </blockquote><p>
11461                        
11462    </p>
11463    <p>Server will start sending one of the the following notification messages:
11464    </p>
11465    <p>
11466                                </p>
11467    <blockquote class="text">
11468    <p>"NOTIFY:DEVICE_MIDI:&lt;device-id&gt; &lt;port-id&gt; NOTE_ON &lt;note&gt; &lt;velocity&gt;"
11469    </p>
11470    <p>"NOTIFY:DEVICE_MIDI:&lt;device-id&gt; &lt;port-id&gt; NOTE_OFF &lt;note&gt; &lt;velocity&gt;"
11471    </p>
11472    </blockquote><p>
11473                        
11474    </p>
11475    <p>where &lt;device-id&gt; &lt;port-id&gt; will be replaced
11476                           by the IDs of the respective MIDI input device and the device's MIDI port where the MIDI
11477                           data arrived. &lt;note&gt; and &lt;velocity&gt; are integer values in the range between
11478                           0 .. 127, reflecting the analog meaning of the MIDI specification.
11479                        
11480    </p>
11481    <p>CAUTION: no guarantee whatsoever will be made that MIDI events are actually all
11482                           delivered by this mechanism! With other words: events could be lost at any time!
11483                           This restriction was made to keep the RT-safeness of the backend's MIDI and audio
11484                           thread unaffected by this feature.
11485    </p>
11486    <a name="SUBSCRIBE VOICE_COUNT"></a><br /><hr />
11487    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11488    <a name="rfc.section.8.8"></a><h3>8.8.&nbsp;
11489  Number of active voices changed</h3>  Number of active voices changed</h3>
11490    
11491  <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
# Line 10270  Number of active voices changed</h3> Line 11515  Number of active voices changed</h3>
11515  </p>  </p>
11516  <a name="SUBSCRIBE STREAM_COUNT"></a><br /><hr />  <a name="SUBSCRIBE STREAM_COUNT"></a><br /><hr />
11517  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11518  <a name="rfc.section.8.7"></a><h3>8.7.&nbsp;  <a name="rfc.section.8.9"></a><h3>8.9.&nbsp;
11519  Number of active disk streams changed</h3>  Number of active disk streams changed</h3>
11520    
11521  <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
# Line 10300  Number of active disk streams changed</h Line 11545  Number of active disk streams changed</h
11545  </p>  </p>
11546  <a name="SUBSCRIBE BUFFER_FILL"></a><br /><hr />  <a name="SUBSCRIBE BUFFER_FILL"></a><br /><hr />
11547  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11548  <a name="rfc.section.8.8"></a><h3>8.8.&nbsp;  <a name="rfc.section.8.10"></a><h3>8.10.&nbsp;
11549  Disk stream buffer fill state changed</h3>  Disk stream buffer fill state changed</h3>
11550    
11551  <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
# Line 10331  Disk stream buffer fill state changed</h Line 11576  Disk stream buffer fill state changed</h
11576  </p>  </p>
11577  <a name="SUBSCRIBE CHANNEL_INFO"></a><br /><hr />  <a name="SUBSCRIBE CHANNEL_INFO"></a><br /><hr />
11578  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11579  <a name="rfc.section.8.9"></a><h3>8.9.&nbsp;  <a name="rfc.section.8.11"></a><h3>8.11.&nbsp;
11580  Channel information changed</h3>  Channel information changed</h3>
11581    
11582  <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
# Line 10364  Channel information changed</h3> Line 11609  Channel information changed</h3>
11609  </p>  </p>
11610  <a name="SUBSCRIBE FX_SEND_COUNT"></a><br /><hr />  <a name="SUBSCRIBE FX_SEND_COUNT"></a><br /><hr />
11611  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11612  <a name="rfc.section.8.10"></a><h3>8.10.&nbsp;  <a name="rfc.section.8.12"></a><h3>8.12.&nbsp;
11613  Number of effect sends changed</h3>  Number of effect sends changed</h3>
11614    
11615  <p>Client may want to be notified when the number of effect sends on  <p>Client may want to be notified when the number of effect sends on
# Line 10394  Number of effect sends changed</h3> Line 11639  Number of effect sends changed</h3>
11639  </p>  </p>
11640  <a name="SUBSCRIBE FX_SEND_INFO"></a><br /><hr />  <a name="SUBSCRIBE FX_SEND_INFO"></a><br /><hr />
11641  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11642  <a name="rfc.section.8.11"></a><h3>8.11.&nbsp;  <a name="rfc.section.8.13"></a><h3>8.13.&nbsp;
11643  Effect send information changed</h3>  Effect send information changed</h3>
11644    
11645  <p>Client may want to be notified when changes were made to effect sends on a  <p>Client may want to be notified when changes were made to effect sends on a
# Line 10424  Effect send information changed</h3> Line 11669  Effect send information changed</h3>
11669  </p>  </p>
11670  <a name="SUBSCRIBE TOTAL_VOICE_COUNT"></a><br /><hr />  <a name="SUBSCRIBE TOTAL_VOICE_COUNT"></a><br /><hr />
11671  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11672  <a name="rfc.section.8.12"></a><h3>8.12.&nbsp;  <a name="rfc.section.8.14"></a><h3>8.14.&nbsp;
11673  Total number of active voices changed</h3>  Total number of active voices changed</h3>
11674    
11675  <p>Client may want to be notified when the total number of voices on the  <p>Client may want to be notified when the total number of voices on the
# Line 10451  Total number of active voices changed</h Line 11696  Total number of active voices changed</h
11696  <p>where &lt;voices&gt; will be replaced by the new number of  <p>where &lt;voices&gt; will be replaced by the new number of
11697                  all currently active voices.                  all currently active voices.
11698  </p>  </p>
11699    <a name="SUBSCRIBE TOTAL_STREAM_COUNT"></a><br /><hr />
11700    <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&nbsp;TOC&nbsp;</a></td></tr></table>
11701    <a name="rfc.section.8.15"></a><h3>8.15.&nbsp;
11702    Total number of active disk streams changed</h3>
11703    
11704    <p>Client may want to be notified when the total number of disk streams on the
11705                    back-end changes by issuing the following command:
11706    </p>
11707    <p>
11708                        </p>
11709    <blockquote class="text">
11710    <p>SUBSCRIBE TOTAL_STREAM_COUNT
11711    </p>
11712    </blockquote><p>
11713                    
11714    </p>
11715    <p>Server will start sending the following notification messages:
11716    </p>
11717    <p>
11718                        </p>
11719    <blockquote class="text">
11720    <p>"NOTIFY:TOTAL_STREAM_COUNT:&lt;streams&gt;"
11721    </p>
11722    </blockquote><p>
11723                    
11724    </p>
11725    <p>where &lt;streams&gt; will be replaced by the new number of
11726                    all currently active disk streams.
11727    </p>
11728  <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT"></a><br /><hr />  <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT"></a><br /><hr />
11729  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11730  <a name="rfc.section.8.13"></a><h3>8.13.&nbsp;  <a name="rfc.section.8.16"></a><h3>8.16.&nbsp;
11731  Number of MIDI instrument maps changed</h3>  Number of MIDI instrument maps changed</h3>
11732    
11733  <p>Client may want to be notified when the number of MIDI instrument maps on the  <p>Client may want to be notified when the number of MIDI instrument maps on the
# Line 10482  Number of MIDI instrument maps changed</ Line 11756  Number of MIDI instrument maps changed</
11756  </p>  </p>
11757  <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO"></a><br /><hr />  <a name="SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO"></a><br /><hr />
11758  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11759  <a name="rfc.section.8.14"></a><h3>8.14.&nbsp;  <a name="rfc.section.8.17"></a><h3>8.17.&nbsp;
11760  MIDI instrument map information changed</h3>  MIDI instrument map information changed</h3>
11761    
11762  <p>Client may want to be notified when changes were made to MIDI instrument maps on the  <p>Client may want to be notified when changes were made to MIDI instrument maps on the
# Line 10515  MIDI instrument map information changed< Line 11789  MIDI instrument map information changed<
11789  </p>  </p>
11790  <a name="SUBSCRIBE MIDI_INSTRUMENT_COUNT"></a><br /><hr />  <a name="SUBSCRIBE MIDI_INSTRUMENT_COUNT"></a><br /><hr />
11791  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11792  <a name="rfc.section.8.15"></a><h3>8.15.&nbsp;  <a name="rfc.section.8.18"></a><h3>8.18.&nbsp;
11793  Number of MIDI instruments changed</h3>  Number of MIDI instruments changed</h3>
11794    
11795  <p>Client may want to be notified when the number of MIDI instrument maps on the  <p>Client may want to be notified when the number of MIDI instrument maps on the
# Line 10545  Number of MIDI instruments changed</h3> Line 11819  Number of MIDI instruments changed</h3>
11819  </p>  </p>
11820  <a name="SUBSCRIBE MIDI_INSTRUMENT_INFO"></a><br /><hr />  <a name="SUBSCRIBE MIDI_INSTRUMENT_INFO"></a><br /><hr />
11821  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11822  <a name="rfc.section.8.16"></a><h3>8.16.&nbsp;  <a name="rfc.section.8.19"></a><h3>8.19.&nbsp;
11823  MIDI instrument information changed</h3>  MIDI instrument information changed</h3>
11824    
11825  <p>Client may want to be notified when changes were made to MIDI instruments on the  <p>Client may want to be notified when changes were made to MIDI instruments on the
# Line 10579  MIDI instrument information changed</h3> Line 11853  MIDI instrument information changed</h3>
11853  </p>  </p>
11854  <a name="SUBSCRIBE GLOBAL_INFO"></a><br /><hr />  <a name="SUBSCRIBE GLOBAL_INFO"></a><br /><hr />
11855  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11856  <a name="rfc.section.8.17"></a><h3>8.17.&nbsp;  <a name="rfc.section.8.20"></a><h3>8.20.&nbsp;
11857  Global settings changed</h3>  Global settings changed</h3>
11858    
11859  <p>Client may want to be notified when changes to the global settings  <p>Client may want to be notified when changes to the global settings
# Line 10604  Global settings changed</h3> Line 11878  Global settings changed</h3>
11878                          new global volume parameter.                          new global volume parameter.
11879  </p>  </p>
11880  </blockquote><p>  </blockquote><p>
11881                        </p>
11882    <blockquote class="text">
11883    <p>"NOTIFY:GLOBAL_INFO:VOICES &lt;max-voices&gt;" - Notifies that the
11884                            golbal limit of the sampler for maximum voices is changed, where
11885                            &lt;max-voices&gt; will be an integer value, reflecting the
11886                            new global voice limit parameter.
11887    </p>
11888    </blockquote><p>
11889                        </p>
11890    <blockquote class="text">
11891    <p>"NOTIFY:GLOBAL_INFO:STREAMS &lt;max-streams&gt;" - Notifies that the
11892                            golbal limit of the sampler for maximum disk streams is changed, where
11893                            &lt;max-streams&gt; will be an integer value, reflecting the
11894                            new global disk streams limit parameter.
11895    </p>
11896    </blockquote><p>
11897                                    
11898  </p>  </p>
11899  <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT"></a><br /><hr />  <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_COUNT"></a><br /><hr />
11900  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11901  <a name="rfc.section.8.18"></a><h3>8.18.&nbsp;  <a name="rfc.section.8.21"></a><h3>8.21.&nbsp;
11902  Number of database instrument directories changed</h3>  Number of database instrument directories changed</h3>
11903    
11904  <p>Client may want to be notified when the number of instrument  <p>Client may want to be notified when the number of instrument
# Line 10642  Number of database instrument directorie Line 11932  Number of database instrument directorie
11932  </p>  </p>
11933  <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO"></a><br /><hr />  <a name="SUBSCRIBE DB_INSTRUMENT_DIRECTORY_INFO"></a><br /><hr />
11934  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11935  <a name="rfc.section.8.19"></a><h3>8.19.&nbsp;  <a name="rfc.section.8.22"></a><h3>8.22.&nbsp;
11936  Database instrument directory information changed</h3>  Database instrument directory information changed</h3>
11937    
11938  <p>Client may want to be notified when changes were made to directories  <p>Client may want to be notified when changes were made to directories
# Line 10687  Database instrument directory informatio Line 11977  Database instrument directory informatio
11977  </p>  </p>
11978  <a name="SUBSCRIBE DB_INSTRUMENT_COUNT"></a><br /><hr />  <a name="SUBSCRIBE DB_INSTRUMENT_COUNT"></a><br /><hr />
11979  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
11980  <a name="rfc.section.8.20"></a><h3>8.20.&nbsp;  <a name="rfc.section.8.23"></a><h3>8.23.&nbsp;
11981  Number of database instruments changed</h3>  Number of database instruments changed</h3>
11982    
11983  <p>Client may want to be notified when the number of instruments  <p>Client may want to be notified when the number of instruments
# Line 10721  Number of database instruments changed</ Line 12011  Number of database instruments changed</
12011  </p>  </p>
12012  <a name="SUBSCRIBE DB_INSTRUMENT_INFO"></a><br /><hr />  <a name="SUBSCRIBE DB_INSTRUMENT_INFO"></a><br /><hr />
12013  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
12014  <a name="rfc.section.8.21"></a><h3>8.21.&nbsp;  <a name="rfc.section.8.24"></a><h3>8.24.&nbsp;
12015  Database instrument information changed</h3>  Database instrument information changed</h3>
12016    
12017  <p>Client may want to be notified when changes were made to instruments  <p>Client may want to be notified when changes were made to instruments
# Line 10766  Database instrument information changed< Line 12056  Database instrument information changed<
12056  </p>  </p>
12057  <a name="SUBSCRIBE DB_INSTRUMENTS_JOB_INFO"></a><br /><hr />  <a name="SUBSCRIBE DB_INSTRUMENTS_JOB_INFO"></a><br /><hr />
12058  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
12059  <a name="rfc.section.8.22"></a><h3>8.22.&nbsp;  <a name="rfc.section.8.25"></a><h3>8.25.&nbsp;
12060  Database job status information changed</h3>  Database job status information changed</h3>
12061    
12062  <p>Client may want to be notified when the status of particular database  <p>Client may want to be notified when the status of particular database
# Line 10799  Database job status information changed< Line 12089  Database job status information changed<
12089  </p>  </p>
12090  <a name="SUBSCRIBE MISCELLANEOUS"></a><br /><hr />  <a name="SUBSCRIBE MISCELLANEOUS"></a><br /><hr />
12091  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
12092  <a name="rfc.section.8.23"></a><h3>8.23.&nbsp;  <a name="rfc.section.8.26"></a><h3>8.26.&nbsp;
12093  Miscellaneous and debugging events</h3>  Miscellaneous and debugging events</h3>
12094    
12095  <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
# Line 10865  Acknowledgments</h3> Line 12155  Acknowledgments</h3>
12155  <h3>11.&nbsp;References</h3>  <h3>11.&nbsp;References</h3>
12156  <table width="99%" border="0">  <table width="99%" border="0">
12157  <tr><td class="author-text" valign="top"><a name="RFC20">[RFC20]</a></td>  <tr><td class="author-text" valign="top"><a name="RFC20">[RFC20]</a></td>
12158  <td class="author-text">UCLA, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc20.txt">ASCII format for Network Interchange</a>,&rdquo; RFC&nbsp;20, 1969.</td></tr>  <td class="author-text">UCLA, &ldquo;<a href="http://tools.ietf.org/html/rfc20">ASCII format for Network Interchange</a>,&rdquo; RFC&nbsp;20, 1969.</td></tr>
12159  <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>
12160  <td class="author-text">Bradner, S., &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">Key words for use in RFCs to Indicate Requirement Levels</a>,&rdquo; RFC&nbsp;2119, 1997.</td></tr>  <td class="author-text">Bradner, S., &ldquo;<a href="http://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</a>,&rdquo; RFC&nbsp;2119, 1997.</td></tr>
12161  <tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td>  <tr><td class="author-text" valign="top"><a name="RFC2234">[RFC2234]</a></td>
12162  <td class="author-text">Crocker, D. and P. Overell, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc2234.txt">Augmented BNF for Syntax Specifications</a>,&rdquo; RFC&nbsp;2234, 1997.</td></tr>  <td class="author-text">Crocker, D. and P. Overell, &ldquo;<a href="http://tools.ietf.org/html/rfc2234">Augmented BNF for Syntax Specifications</a>,&rdquo; RFC&nbsp;2234, 1997.</td></tr>
12163  <tr><td class="author-text" valign="top"><a name="RFC793">[RFC793]</a></td>  <tr><td class="author-text" valign="top"><a name="RFC793">[RFC793]</a></td>
12164  <td class="author-text">Defense Advanced Research Projects Agency, &ldquo;<a href="ftp://ftp.isi.edu/in-notes/rfc793.txt">TRANSMISSION CONTROL PROTOCOL</a>,&rdquo; RFC&nbsp;793, 1981.</td></tr>  <td class="author-text">Defense Advanced Research Projects Agency, &ldquo;<a href="http://tools.ietf.org/html/rfc793">TRANSMISSION CONTROL PROTOCOL</a>,&rdquo; RFC&nbsp;793, 1981.</td></tr>
12165  </table>  </table>
12166    
12167  <a name="rfc.authors"></a><br /><hr />  <a name="rfc.authors"></a><br /><hr />
# Line 10896  Schoenebeck</td></tr> Line 12186  Schoenebeck</td></tr>
12186  <table summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><tr><td class="TOCbug"><a href="#toc">&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>
12187  <h3>Full Copyright Statement</h3>  <h3>Full Copyright Statement</h3>
12188  <p class='copyright'>  <p class='copyright'>
12189  Copyright &copy; The IETF Trust (2007).</p>  Copyright &copy; The IETF Trust (2008).</p>
12190  <p class='copyright'>  <p class='copyright'>
12191  This document is subject to the rights,  This document is subject to the rights,
12192  licenses and restrictions contained in BCP&nbsp;78,  licenses and restrictions contained in BCP&nbsp;78,
# Line 10938  or other Line 12228  or other
12228  proprietary rights that may cover technology that may be required  proprietary rights that may cover technology that may be required
12229  to implement this standard.  to implement this standard.
12230  Please address the information to the IETF at <a href='mailto:ietf-ipr@ietf.org'>ietf-ipr@ietf.org</a>.</p>  Please address the information to the IETF at <a href='mailto:ietf-ipr@ietf.org'>ietf-ipr@ietf.org</a>.</p>
 <h3>Acknowledgment</h3>  
 <p class='copyright'>  
 Funding for the RFC Editor function is provided by  
 the IETF Administrative Support Activity (IASA).</p>  
12231  </body></html>  </body></html>
12232    

Legend:
Removed from v.1251  
changed lines
  Added in v.1801

  ViewVC Help
Powered by ViewVC