/[svn]/linuxsampler/trunk/Documentation/lscp.xml
ViewVC logotype

Diff of /linuxsampler/trunk/Documentation/lscp.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1027 by schoenebeck, Sun Jan 14 17:31:48 2007 UTC revision 1109 by iliev, Thu Mar 22 20:55:17 2007 UTC
# Line 34  Schoenebeck'> Line 34  Schoenebeck'>
34                  <email>schoenebeck at software minus engineering dot org</email>                  <email>schoenebeck at software minus engineering dot org</email>
35              </address>              </address>
36          </author>          </author>
37          <date month="January" year="2007"/>          <date month="March" year="2007"/>
38          <workgroup>LinuxSampler Developers</workgroup>          <workgroup>LinuxSampler Developers</workgroup>
39          <keyword>LSCP</keyword>          <keyword>LSCP</keyword>
40          <abstract>          <abstract>
# Line 4257  Schoenebeck'> Line 4257  Schoenebeck'>
4257                      command:</t>                      command:</t>
4258                      <t>                      <t>
4259                          <list>                          <list>
4260                              <t>MAP MIDI_INSTRUMENT &lt;map&gt;                              <t>MAP MIDI_INSTRUMENT [NON_MODAL] &lt;map&gt;
4261                              &lt;midi_bank&gt; &lt;midi_prog&gt; &lt;engine_name&gt;                              &lt;midi_bank&gt; &lt;midi_prog&gt; &lt;engine_name&gt;
4262                              &lt;filename&gt; &lt;instrument_index&gt; &lt;volume_value&gt;                              &lt;filename&gt; &lt;instrument_index&gt; &lt;volume_value&gt;
4263                              [&lt;instr_load_mode&gt;] [&lt;name&gt;]</t>                              [&lt;instr_load_mode&gt;] [&lt;name&gt;]</t>
# Line 4310  Schoenebeck'> Line 4310  Schoenebeck'>
4310                              <t>"PERSISTENT" -                              <t>"PERSISTENT" -
4311                                  <list>                                  <list>
4312                                      <t>The instrument will immediately be loaded                                      <t>The instrument will immediately be loaded
4313                                      into memory in the background when this mapping                                      into memory when this mapping
4314                                      command is sent and the instrument is kept all                                      command is sent and the instrument is kept all
4315                                      the time. Instruments with this mode are                                      the time. Instruments with this mode are
4316                                      only freed when the sampler is reset or all                                      only freed when the sampler is reset or all
# Line 4360  Schoenebeck'> Line 4360  Schoenebeck'>
4360                      <xref target="GET MIDI_INSTRUMENT INFO">"GET MIDI_INSTRUMENT INFO"</xref>).                      <xref target="GET MIDI_INSTRUMENT INFO">"GET MIDI_INSTRUMENT INFO"</xref>).
4361                      </t>                      </t>
4362                      <t>                      <t>
4363                      The "MAP MIDI_INSTRUMENT" command                      By default, "MAP MIDI_INSTRUMENT" commands block until the mapping is
4364                      will immediately return, thus it will not block when an                      completely established in the sampler. The OPTIONAL "NON_MODAL" argument
4365                      instrument is to be loaded due to a "PERSISTENT" type                      however causes the respective "MAP MIDI_INSTRUMENT" command to return
4366                      entry as instruments are loaded in the background. As a                      immediately, that is to let the sampler establish the mapping in the
4367                      consequence this command may not necessarily return an error                      background. So this argument might be especially useful for mappings with
4368                      i.e. when the given instrument file does not exist or may                      a "PERSISTENT" type, because these have to load the respective instruments
4369                      turn out to be corrupt.                      immediately and might thus block for a very long time. It is recommended
4370                        however to use the OPTIONAL "NON_MODAL" argument only if really necessary,
4371                        because it has the following drawbacks: as "NON_MODAL" instructions return
4372                        immediately, they may not necessarily return an error i.e. when the given
4373                        instrument file turns out to be corrupt, beside that subsequent commands
4374                        in a LSCP instruction sequence might fail, because mandatory mappings are
4375                        not yet completed.
4376                      </t>                      </t>
4377    
4378                      <t>Possible Answers:</t>                      <t>Possible Answers:</t>
# Line 4409  Schoenebeck'> Line 4415  Schoenebeck'>
4415                      </t>                      </t>
4416                      <t>                      <t>
4417                          <list>                          <list>
4418                              <t>C: "MAP MIDI_INSTRUMENT 1 8 120 gig '/home/joe/foodrums.gig' 0 1.0 PERSISTENT 'Foo Drumkit'"</t>                              <t>C: "MAP MIDI_INSTRUMENT NON_MODAL 1 8 120 gig '/home/joe/foodrums.gig' 0 1.0 PERSISTENT 'Foo Drumkit'"</t>
4419                              <t>S: "OK"</t>                              <t>S: "OK"</t>
4420                          </list>                          </list>
4421                      </t>                      </t>
# Line 4797  Schoenebeck'> Line 4803  Schoenebeck'>
4803                  </t>                  </t>
4804                  <t>/ CHANNEL_INFO                  <t>/ CHANNEL_INFO
4805                  </t>                  </t>
4806                    <t>/ FX_SEND_COUNT
4807                    </t>
4808                    <t>/ FX_SEND_INFO
4809                    </t>
4810                  <t>/ MIDI_INSTRUMENT_MAP_COUNT                  <t>/ MIDI_INSTRUMENT_MAP_COUNT
4811                  </t>                  </t>
4812                  <t>/ MIDI_INSTRUMENT_MAP_INFO                  <t>/ MIDI_INSTRUMENT_MAP_INFO
# Line 4809  Schoenebeck'> Line 4819  Schoenebeck'>
4819                  </t>                  </t>
4820                  <t>/ TOTAL_VOICE_COUNT                  <t>/ TOTAL_VOICE_COUNT
4821                  </t>                  </t>
4822                    <t>/ GLOBAL_INFO
4823                    </t>
4824          </list>          </list>
4825  </t>  </t>
4826  <t>unsubscribe_event =  <t>unsubscribe_event =
# Line 4831  Schoenebeck'> Line 4843  Schoenebeck'>
4843                  </t>                  </t>
4844                  <t>/ CHANNEL_INFO                  <t>/ CHANNEL_INFO
4845                  </t>                  </t>
4846                    <t>/ FX_SEND_COUNT
4847                    </t>
4848                    <t>/ FX_SEND_INFO
4849                    </t>
4850                  <t>/ MIDI_INSTRUMENT_MAP_COUNT                  <t>/ MIDI_INSTRUMENT_MAP_COUNT
4851                  </t>                  </t>
4852                  <t>/ MIDI_INSTRUMENT_MAP_INFO                  <t>/ MIDI_INSTRUMENT_MAP_INFO
# Line 4843  Schoenebeck'> Line 4859  Schoenebeck'>
4859                  </t>                  </t>
4860                  <t>/ TOTAL_VOICE_COUNT                  <t>/ TOTAL_VOICE_COUNT
4861                  </t>                  </t>
4862                    <t>/ GLOBAL_INFO
4863                    </t>
4864          </list>          </list>
4865  </t>  </t>
4866  <t>map_instruction =  <t>map_instruction =
4867          <list>          <list>
4868                  <t>MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value                  <t>MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value
4869                  </t>                  </t>
4870                  <t>/ MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode                  <t>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode
4871                  </t>                  </t>
4872                  <t>/ MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP entry_name                  <t>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP entry_name
4873                  </t>                  </t>
4874                  <t>/ MIDI_INSTRUMENT SP midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode SP entry_name                  <t>/ MIDI_INSTRUMENT SP modal_arg midi_map SP midi_bank SP midi_prog SP engine_name SP filename SP instrument_index SP volume_value SP instr_load_mode SP entry_name
4875                  </t>                  </t>
4876          </list>          </list>
4877  </t>  </t>
# Line 5051  Schoenebeck'> Line 5069  Schoenebeck'>
5069                  </t>                  </t>
5070          </list>          </list>
5071  </t>  </t>
5072    <t>modal_arg =
5073            <list>
5074                    <t>/* epsilon (empty argument) */
5075                    </t>
5076                    <t>/ NON_MODAL SP
5077                    </t>
5078            </list>
5079    </t>
5080  <t>key_val_list =  <t>key_val_list =
5081          <list>          <list>
5082                  <t>string '=' param_val_list                  <t>string '=' param_val_list
# Line 5369  Schoenebeck'> Line 5395  Schoenebeck'>
5395                  <t>Server will start sending the following notification messages:</t>                  <t>Server will start sending the following notification messages:</t>
5396                  <t>                  <t>
5397                      <list>                      <list>
5398                          <t>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;</t>                          <t>"NOTIFY:VOICE_COUNT:&lt;sampler-channel&gt; &lt;voices&gt;"</t>
5399                      </list>                      </list>
5400                  </t>                  </t>
5401                  <t>where &lt;sampler-channel&gt; will be replaced by the sampler channel the                  <t>where &lt;sampler-channel&gt; will be replaced by the sampler channel the
# Line 5439  Schoenebeck'> Line 5465  Schoenebeck'>
5465                  message is sufficient here.</t>                  message is sufficient here.</t>
5466              </section>              </section>
5467    
5468                <section title="Number of effect sends changed" anchor="SUBSCRIBE FX_SEND_COUNT">
5469                    <t>Client may want to be notified when the number of effect sends on
5470                    a particular sampler channel is changed by issuing the following command:</t>
5471                    <t>
5472                        <list>
5473                            <t>SUBSCRIBE FX_SEND_COUNT</t>
5474                        </list>
5475                    </t>
5476                    <t>Server will start sending the following notification messages:</t>
5477                    <t>
5478                        <list>
5479                            <t>"NOTIFY:FX_SEND_COUNT:&lt;channel-id&gt; &lt;fx-sends&gt;"</t>
5480                        </list>
5481                    </t>
5482                    <t>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
5483                    channel, on which the effect sends number is changed and &lt;fx-sends&gt; will
5484                    be replaced by the new number of effect sends on that channel.</t>
5485                </section>
5486    
5487                <section title="Effect send information changed" anchor="SUBSCRIBE FX_SEND_INFO">
5488                    <t>Client may want to be notified when changes were made to effect sends on a
5489                    a particular sampler channel by issuing the following command:</t>
5490                    <t>
5491                        <list>
5492                            <t>SUBSCRIBE FX_SEND_INFO</t>
5493                        </list>
5494                    </t>
5495                    <t>Server will start sending the following notification messages:</t>
5496                    <t>
5497                        <list>
5498                            <t>"NOTIFY:FX_SEND_INFO:&lt;channel-id&gt; &lt;fx-send-id&gt;"</t>
5499                        </list>
5500                    </t>
5501                    <t>where &lt;channel-id&gt; will be replaced by the numerical ID of the sampler
5502                    channel, on which an effect send entity is changed and &lt;fx-send-id&gt; will
5503                    be replaced by the numerical ID of the changed effect send.</t>
5504                </section>
5505    
5506              <section title="Total number of active voices changed" anchor="SUBSCRIBE TOTAL_VOICE_COUNT">              <section title="Total number of active voices changed" anchor="SUBSCRIBE TOTAL_VOICE_COUNT">
5507                  <t>Client may want to be notified when the total number of voices on the                  <t>Client may want to be notified when the total number of voices on the
5508                  back-end changes by issuing the following command:</t>                  back-end changes by issuing the following command:</t>
# Line 5450  Schoenebeck'> Line 5514  Schoenebeck'>
5514                  <t>Server will start sending the following notification messages:</t>                  <t>Server will start sending the following notification messages:</t>
5515                  <t>                  <t>
5516                      <list>                      <list>
5517                          <t>"NOTIFY:TOTAL_VOICE_COUNT:&lt;voices&gt;</t>                          <t>"NOTIFY:TOTAL_VOICE_COUNT:&lt;voices&gt;"</t>
5518                      </list>                      </list>
5519                  </t>                  </t>
5520                  <t>where &lt;voices&gt; will be replaced by the new number of                  <t>where &lt;voices&gt; will be replaced by the new number of
# Line 5539  Schoenebeck'> Line 5603  Schoenebeck'>
5603                  message is sufficient here.</t>                  message is sufficient here.</t>
5604              </section>              </section>
5605    
5606                <section title="Global settings changed" anchor="SUBSCRIBE GLOBAL_INFO">
5607                    <t>Client may want to be notified when changes to the global settings
5608                    of the sampler were made by issuing the following command:</t>
5609                    <t>
5610                        <list>
5611                            <t>SUBSCRIBE GLOBAL_INFO</t>
5612                        </list>
5613                    </t>
5614                    <t>Server will start sending the following types of notification messages:</t>
5615                    <t>
5616                        <list>
5617                            <t>"NOTIFY:GLOBAL_INFO:VOLUME &lt;volume&gt;" - Notifies that the
5618                            golbal volume of the sampler is changed, where &lt;volume&gt; will be
5619                            replaced by the optional dotted floating point value, reflecting the
5620                            new global volume parameter.</t>
5621                        </list>
5622                    </t>
5623                </section>
5624    
5625              <section title="Miscellaneous and debugging events" anchor="SUBSCRIBE MISCELLANEOUS">              <section title="Miscellaneous and debugging events" anchor="SUBSCRIBE MISCELLANEOUS">
5626                  <t>Client may want to be notified of miscellaneous and debugging events occurring at                  <t>Client may want to be notified of miscellaneous and debugging events occurring at
5627                  the server by issuing the following command:</t>                  the server by issuing the following command:</t>

Legend:
Removed from v.1027  
changed lines
  Added in v.1109

  ViewVC Help
Powered by ViewVC