/[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 1001 by schoenebeck, Wed Dec 27 16:17:08 2006 UTC revision 1047 by schoenebeck, Mon Feb 19 19:38:04 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="December" year="2006"/>          <date month="February" year="2007"/>
38          <workgroup>LinuxSampler Developers</workgroup>          <workgroup>LinuxSampler Developers</workgroup>
39          <keyword>LSCP</keyword>          <keyword>LSCP</keyword>
40          <abstract>          <abstract>
# Line 2555  Schoenebeck'> Line 2555  Schoenebeck'>
2555                                      <t>VOLUME -                                      <t>VOLUME -
2556                                          <list>                                          <list>
2557                                              <t>optionally dotted number for the channel volume factor                                              <t>optionally dotted number for the channel volume factor
2558                                              (where a value < 1.0 means attenuation and a value >                                              (where a value &lt; 1.0 means attenuation and a value >
2559                                              1.0 means amplification)</t>                                              1.0 means amplification)</t>
2560                                          </list>                                          </list>
2561                                      </t>                                      </t>
# Line 3287  Schoenebeck'> Line 3287  Schoenebeck'>
3287                              <t>S: "OK[0]"</t>                              <t>S: "OK[0]"</t>
3288                          </list>                          </list>
3289                      </t>                      </t>
3290                      <t>                      <t>
3291                          <list>                          <list>
3292                              <t>C: "CREATE FX_SEND 0 93"</t>                              <t>C: "CREATE FX_SEND 0 93"</t>
3293                              <t>S: "OK[1]"</t>                              <t>S: "OK[1]"</t>
# Line 3434  Schoenebeck'> Line 3434  Schoenebeck'>
3434                                              <t>name of the effect send entity</t>                                              <t>name of the effect send entity</t>
3435                                          </list>                                          </list>
3436                                      </t>                                      </t>
3437                                        <t>MIDI_CONTROLLER -
3438                                            <list>
3439                                                <t>a value between 0 and 127 reflecting the MIDI controller
3440                                                which is able to modify the effect send's send level</t>
3441                                            </list>
3442                                        </t>
3443                                        <t>LEVEL -
3444                                            <list>
3445                                                <t>optionally dotted number reflecting the effect send's
3446                                                current send level (where a value &lt; 1.0 means attenuation
3447                                                and a value > 1.0 means amplification)</t>
3448                                            </list>
3449                                        </t>
3450                                      <t>AUDIO_OUTPUT_ROUTING -                                      <t>AUDIO_OUTPUT_ROUTING -
3451                                          <list>                                          <list>
3452                                              <t>comma separated list which reflects to which audio                                              <t>comma separated list which reflects to which audio
# Line 3458  Schoenebeck'> Line 3471  Schoenebeck'>
3471                          <list>                          <list>
3472                              <t>C: "GET FX_SEND INFO 0 0"</t>                              <t>C: "GET FX_SEND INFO 0 0"</t>
3473                              <t>S: "NAME: Reverb Send"</t>                              <t>S: "NAME: Reverb Send"</t>
3474                                <t>&nbsp;&nbsp;&nbsp;"MIDI_CONTROLLER: 91"</t>
3475                                <t>&nbsp;&nbsp;&nbsp;"LEVEL: 0.3"</t>
3476                              <t>&nbsp;&nbsp;&nbsp;"AUDIO_OUTPUT_ROUTING: 2,3"</t>                              <t>&nbsp;&nbsp;&nbsp;"AUDIO_OUTPUT_ROUTING: 2,3"</t>
3477                              <t>&nbsp;&nbsp;&nbsp;"."</t>                              <t>&nbsp;&nbsp;&nbsp;"."</t>
3478                          </list>                          </list>
# Line 3524  Schoenebeck'> Line 3539  Schoenebeck'>
3539                      </t>                      </t>
3540                  </section>                  </section>
3541    
3542                    <section title="Altering effect send's MIDI controller" anchor="SET FX_SEND MIDI_CONTROLLER">
3543                        <t>The front-end can alter the MIDI controller of an effect
3544                        send entity by sending the following command:</t>
3545                        <t>
3546                            <list>
3547                                <t>SET FX_SEND MIDI_CONTROLLER &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;midi-ctrl&gt;</t>
3548                            </list>
3549                        </t>
3550                        <t>Where &lt;sampler-chan&gt; is the sampler channel number
3551                        as returned by the <xref target="ADD CHANNEL">"ADD CHANNEL"</xref>
3552                        or <xref target="LIST CHANNELS">"LIST CHANNELS"</xref> command,
3553                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
3554                        as returned by the <xref target="CREATE FX_SEND">"CREATE FX_SEND"</xref>
3555                        or <xref target="LIST FX_SENDS">"LIST FX_SENDS"</xref> command and
3556                        &lt;midi-ctrl&gt; reflects the MIDI controller which shall be
3557                        able to modify the effect send's send level.</t>
3558    
3559                        <t>Possible Answers:</t>
3560                        <t>
3561                            <list>
3562                                <t>"OK" -
3563                                    <list>
3564                                        <t>on success</t>
3565                                    </list>
3566                                </t>
3567                                <t>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3568                                    <list>
3569                                        <t>if MIDI controller was set, but there are noteworthy
3570                                        issue(s) related, providing an appropriate warning code and
3571                                        warning message</t>
3572                                    </list>
3573                                </t>
3574                                <t>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3575                                    <list>
3576                                        <t>in case it failed, providing an appropriate error code and error message</t>
3577                                    </list>
3578                                </t>
3579                            </list>
3580                        </t>
3581                        <t>Example:</t>
3582                        <t>
3583                            <list>
3584                                <t>C: "SET FX_SEND MIDI_CONTROLLER 0 0 91"</t>
3585                                <t>S: "OK"</t>
3586                            </list>
3587                        </t>
3588                    </section>
3589    
3590                    <section title="Altering effect send's send level" anchor="SET FX_SEND LEVEL">
3591                        <t>The front-end can alter the current send level of an effect
3592                        send entity by sending the following command:</t>
3593                        <t>
3594                            <list>
3595                                <t>SET FX_SEND LEVEL &lt;sampler-chan&gt; &lt;fx-send-id&gt; &lt;volume&gt;</t>
3596                            </list>
3597                        </t>
3598                        <t>Where &lt;sampler-chan&gt; is the sampler channel number
3599                        as returned by the <xref target="ADD CHANNEL">"ADD CHANNEL"</xref>
3600                        or <xref target="LIST CHANNELS">"LIST CHANNELS"</xref> command,
3601                        &lt;fx-send-id&gt; reflects the numerical ID of the effect send entity
3602                        as returned by the <xref target="CREATE FX_SEND">"CREATE FX_SEND"</xref>
3603                        or <xref target="LIST FX_SENDS">"LIST FX_SENDS"</xref> command and
3604                        &lt;volume&gt; is an optionally dotted positive number (a value
3605                        smaller than 1.0 means attenuation, whereas a value greater than
3606                        1.0 means amplification) reflecting the new send level.</t>
3607    
3608                        <t>Possible Answers:</t>
3609                        <t>
3610                            <list>
3611                                <t>"OK" -
3612                                    <list>
3613                                        <t>on success</t>
3614                                    </list>
3615                                </t>
3616                                <t>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3617                                    <list>
3618                                        <t>if new send level was set, but there are noteworthy
3619                                        issue(s) related, providing an appropriate warning code and
3620                                        warning message</t>
3621                                    </list>
3622                                </t>
3623                                <t>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3624                                    <list>
3625                                        <t>in case it failed, providing an appropriate error code and error message</t>
3626                                    </list>
3627                                </t>
3628                            </list>
3629                        </t>
3630                        <t>Example:</t>
3631                        <t>
3632                            <list>
3633                                <t>C: "SET FX_SEND LEVEL 0 0 0.15"</t>
3634                                <t>S: "OK"</t>
3635                            </list>
3636                        </t>
3637                    </section>
3638    
3639                  <section title="Resetting a sampler channel" anchor="RESET CHANNEL">                  <section title="Resetting a sampler channel" anchor="RESET CHANNEL">
3640                      <t>The front-end can reset a particular sampler channel by sending the following command:</t>                      <t>The front-end can reset a particular sampler channel by sending the following command:</t>
# Line 3814  Schoenebeck'> Line 3925  Schoenebeck'>
3925                      <t>The mentioned fields above don't have to be in particular order.                      <t>The mentioned fields above don't have to be in particular order.
3926                      Other fields might be added in future.</t>                      Other fields might be added in future.</t>
3927                  </section>                  </section>
3928    
3929                    <section title="Getting global volume attenuation" anchor="GET VOLUME">
3930                        <t>The client can ask for the current global sampler-wide volume
3931                        attenuation by sending the following command:</t>
3932                        <t>
3933                            <list>
3934                                <t>GET VOLUME</t>
3935                            </list>
3936                        </t>
3937                        <t>Possible Answers:</t>
3938                        <t>
3939                            <list>
3940                                <t>The sampler will always answer by returning the optional
3941                                dotted floating point coefficient, reflecting the current
3942                                global volume attenuation.
3943                                </t>
3944                            </list>
3945                        </t>
3946                        <t>Note: it is up to the respective sampler engine whether to obey
3947                        that global volume parameter or not, but in general all engines SHOULD
3948                        use this parameter.</t>
3949                    </section>
3950    
3951                    <section title="Setting global volume attenuation" anchor="SET VOLUME">
3952                        <t>The client can alter the current global sampler-wide volume
3953                        attenuation by sending the following command:</t>
3954                        <t>
3955                            <list>
3956                                <t>SET VOLUME &lt;volume&gt;</t>
3957                            </list>
3958                        </t>
3959                       <t>Where &lt;volume&gt; should be replaced by the optional dotted
3960                       floating point value, reflecting the new global volume parameter.
3961                       This value might usually be in the range between 0.0 and 1.0, that
3962                       is for attenuating the overall volume.</t>
3963    
3964                        <t>Possible Answers:</t>
3965                        <t>
3966                            <list>
3967                                <t>"OK" -
3968                                    <list>
3969                                        <t>on success</t>
3970                                    </list>
3971                                </t>
3972                                <t>"WRN:&lt;warning-code&gt;:&lt;warning-message&gt;" -
3973                                    <list>
3974                                        <t>if the global volume was set, but there are noteworthy
3975                                        issue(s) related, providing an appropriate warning code and
3976                                        warning message</t>
3977                                    </list>
3978                                </t>
3979                                <t>"ERR:&lt;error-code&gt;:&lt;error-message&gt;" -
3980                                    <list>
3981                                        <t>in case it failed, providing an appropriate error code and error message</t>
3982                                    </list>
3983                                </t>
3984                            </list>
3985                        </t>
3986                    </section>
3987              </section>              </section>
3988    
3989    
# Line 4087  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 4105  Schoenebeck'> Line 4275  Schoenebeck'>
4275                      &lt;instrument_index&gt; the index (integer value) of the instrument                      &lt;instrument_index&gt; the index (integer value) of the instrument
4276                      within the given file, &lt;volume_value&gt; reflects the master                      within the given file, &lt;volume_value&gt; reflects the master
4277                      volume of the instrument as optionally dotted number (where a                      volume of the instrument as optionally dotted number (where a
4278                      value < 1.0 means attenuation and a value > 1.0 means                      value &lt; 1.0 means attenuation and a value > 1.0 means
4279                      amplification). This parameter easily allows to adjust the                      amplification). This parameter easily allows to adjust the
4280                      volume of all intruments within a custom instrument map                      volume of all intruments within a custom instrument map
4281                      without having to adjust their instrument files. The                      without having to adjust their instrument files. The
# Line 4140  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 4190  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 4239  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 4438  Schoenebeck'> Line 4614  Schoenebeck'>
4614                              <t>"VOLUME" -                              <t>"VOLUME" -
4615                                  <list>                                  <list>
4616                                      <t>master volume of the instrument as optionally                                      <t>master volume of the instrument as optionally
4617                                      dotted number (where a value < 1.0 means attenuation                                      dotted number (where a value &lt; 1.0 means attenuation
4618                                      and a value > 1.0 means amplification)</t>                                      and a value > 1.0 means amplification)</t>
4619                                  </list>                                  </list>
4620                              </t>                              </t>
# Line 4677  Schoenebeck'> Line 4853  Schoenebeck'>
4853  </t>  </t>
4854  <t>map_instruction =  <t>map_instruction =
4855          <list>          <list>
4856                  <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
4857                  </t>                  </t>
4858                  <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
4859                  </t>                  </t>
4860                  <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
4861                  </t>                  </t>
4862                  <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
4863                  </t>                  </t>
4864          </list>          </list>
4865  </t>  </t>
# Line 4771  Schoenebeck'> Line 4947  Schoenebeck'>
4947                  </t>                  </t>
4948                  <t>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id                  <t>/ FX_SEND SP INFO SP sampler_channel SP fx_send_id
4949                  </t>                  </t>
4950                    <t>/ VOLUME
4951                    </t>
4952          </list>          </list>
4953  </t>  </t>
4954  <t>set_instruction =  <t>set_instruction =
# Line 4789  Schoenebeck'> Line 4967  Schoenebeck'>
4967                  </t>                  </t>
4968                  <t>/ FX_SEND SP AUDIO_OUTPUT_CHANNEL SP sampler_channel SP fx_send_id SP audio_channel_index SP audio_channel_index                  <t>/ FX_SEND SP AUDIO_OUTPUT_CHANNEL SP sampler_channel SP fx_send_id SP audio_channel_index SP audio_channel_index
4969                  </t>                  </t>
4970                    <t>/ FX_SEND SP MIDI_CONTROLLER SP sampler_channel SP fx_send_id SP midi_ctrl
4971                    </t>
4972                    <t>/ FX_SEND SP LEVEL SP sampler_channel SP fx_send_id SP volume_value
4973                    </t>
4974                  <t>/ ECHO SP boolean                  <t>/ ECHO SP boolean
4975                  </t>                  </t>
4976                    <t>/ VOLUME SP volume_value
4977                    </t>
4978          </list>          </list>
4979  </t>  </t>
4980  <t>create_instruction =  <t>create_instruction =
# Line 4873  Schoenebeck'> Line 5057  Schoenebeck'>
5057                  </t>                  </t>
5058          </list>          </list>
5059  </t>  </t>
5060    <t>modal_arg =
5061            <list>
5062                    <t>/* epsilon (empty argument) */
5063                    </t>
5064                    <t>/ NON_MODAL SP
5065                    </t>
5066            </list>
5067    </t>
5068  <t>key_val_list =  <t>key_val_list =
5069          <list>          <list>
5070                  <t>string '=' param_val_list                  <t>string '=' param_val_list

Legend:
Removed from v.1001  
changed lines
  Added in v.1047

  ViewVC Help
Powered by ViewVC