/[svn]/web/trunk/www.linuxsampler.org/documentation.html
ViewVC logotype

Diff of /web/trunk/www.linuxsampler.org/documentation.html

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

revision 1279 by schoenebeck, Sat Jun 16 16:26:32 2007 UTC revision 1280 by schoenebeck, Fri Aug 10 14:05:51 2007 UTC
# Line 139  Line 139 
139    
140                          <h2>LSCP Reference</h2>                          <h2>LSCP Reference</h2>
141                          <p class="default">                          <p class="default">
142                          The following document defines the network protocol with which LinuxSampler can be controlled.                          The following documents define the <i>LinuxSampler Control Protocol</i>,
143                            a network protocol with which LinuxSampler can be controlled locally as well as remotely.
144                          As this is a simple ASCII based protocol it's possible to write a frontend for LinuxSampler in                          As this is a simple ASCII based protocol it's possible to write a frontend for LinuxSampler in
145                          any programming language and GUI library. There's still a big demand especially for a Gtk and                          any programming language and GUI library. There's still a big demand especially for a Gtk and
146                          ncurses based frontend, so be encouraged and let                          ncurses based frontend, so be encouraged and let
147                          <a href="http://www.linuxsampler.org/developers.html">us</a> know if you wrote a frontend for                          <a href="http://www.linuxsampler.org/developers.html">us</a> know if you wrote a frontend for
148                          LinuxSampler! This is the protocol specification of the old                          LinuxSampler!
                         official release of LinuxSampler (0.3.3):  
                         <br>  
149                          </p>                          </p>
150                          <center>  
151                          LinuxSampler Control Protocol v1.0        <table class="decorated">
152                          (<a href="http://www.linuxsampler.org/api/lscp-1.0.txt">ASCII</a>,          <thead>
153                          <a href="http://www.linuxsampler.org/api/lscp-1.0.html">HTML</a>,            <tr>
154                          <a href="http://www.linuxsampler.org/api/lscp-1.0.xml">XML</a>)              <td class="decorated_header">Protocol Name</td>
155                          </center>              <td class="decorated_header">Document Types</td>
156                          <p class="default">              <td class="decorated_header">Description</td>
157                          This is the protocol specification of the latest            </tr>
158                          official release of LinuxSampler (0.4.0):          </thead>
159                          <br>          <tbody>
160                          </p>            <tr>
161                          <center>              <td class="decorated">LSCP&nbsp;1.0</td>
162                          LinuxSampler Control Protocol v1.1              <td class="decorated">
163                          (<a href="http://www.linuxsampler.org/api/lscp-1.1.txt">ASCII</a>,                <a href="http://www.linuxsampler.org/api/lscp-1.0.txt">ASCII</a>,
164                          <a href="http://www.linuxsampler.org/api/lscp-1.1.html">HTML</a>,                <a href="http://www.linuxsampler.org/api/lscp-1.0.html">HTML</a>,
165                          <a href="http://www.linuxsampler.org/api/lscp-1.1.xml">XML</a>)                <a href="http://www.linuxsampler.org/api/lscp-1.0.xml">XML</a>
166                          </center>              </td>
167                          <p class="default">              <td class="decorated">
168                          The following is the very latest draft of the protocol (which                Protocol specification of the old official release of LinuxSampler (0.3.3).
169                          usually reflects the latest development state from CVS or may              </td>
170                          even not be implemented yet):            </tr>
171                          <br>            <tr>
172                          </p>              <td class="decorated">LSCP&nbsp;1.1</td>
173                          <center>              <td class="decorated">
174                          LinuxSampler Control Protocol Draft                <a href="http://www.linuxsampler.org/api/lscp-1.1.txt">ASCII</a>,
175                          (<a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">ASCII</a>,                <a href="http://www.linuxsampler.org/api/lscp-1.1.html">HTML</a>,
176                          <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>,                <a href="http://www.linuxsampler.org/api/lscp-1.1.xml">XML</a>
177                          <a href="http://cvs.linuxsampler.org/cgi-bin/viewcvs.cgi/*checkout*/linuxsampler/Documentation/lscp.xml?rev=HEAD&content-type=text/xml">XML</a>)              </td>
178                          </center>              <td class="decorated">
179                  Protocol specification of the latest official release of LinuxSampler (0.4.0).
180                </td>
181              </tr>
182              <tr>
183                <td class="decorated">LSCP&nbsp;draft</td>
184                <td class="decorated">
185                  <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">ASCII</a>,
186                  <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>,
187                  <a href="http://cvs.linuxsampler.org/cgi-bin/viewcvs.cgi/*checkout*/linuxsampler/Documentation/lscp.xml?rev=HEAD&content-type=text/xml">XML</a>
188                </td>
189                <td class="decorated">
190                  Very latest draft of the protocol (which usually reflects the
191                  latest development state from CVS or may even not be implemented
192                  yet).
193                </td>
194              </tr>
195            </tbody>
196          </table>
197    
198                          <p class="default">                          <p class="default">
199                          The protocol will be extended from time to time. You may look at the                          The protocol will be extended from time to time. You may look at the
200                          <a href="features.html#LSCP">features</a> site to see which control                          <a href="features.html#LSCP">features</a> site to see which control
# Line 192  Line 210 
210                          examples to give you a good starting point for writing your own ones. Adjust it to your needs                          examples to give you a good starting point for writing your own ones. Adjust it to your needs
211                          and send it to the running linuxsampler application with:                          and send it to the running linuxsampler application with:
212                          </p>                          </p>
213                          <table class="default" border="0" cellpadding="1" cellspacing="5">                          <pre class="code">cat yourscript.lscp | netcat localhost 8888</pre>
                                 <tr>  
                                   <td><pre class="code">1</pre>  
                                   </td>  
                                   <td width="100%">  
                                     <pre class="code">cat yourscript.lscp | netcat localhost 8888</pre>  
                                   </td>  
                                 </tr>  
                         </table>  
214                          <p class="default">                          <p class="default">
215                          Optionally you can also use a graphical frontend like QSampler one time to setup a working                          Optionally you can also use a graphical frontend like QSampler one time to setup a working
216                          sampler session for your needs and save it. Because you have to know that the files saved                          sampler session for your needs and save it. Because you have to know that the files saved
# Line 212  Line 222 
222                          it creates only one sampler channel using the Gigasampler engine and loads a Piano instrument                          it creates only one sampler channel using the Gigasampler engine and loads a Piano instrument
223                          on that sampler channel:                          on that sampler channel:
224                          </p>                          </p>
225                          <table class="default" border="0" cellpadding="1" cellspacing="5">                          <pre class="code">#enable echo mode
                                 <tr>  
                                   <td><pre class="code">1  
 2  
 3  
 4  
 5  
 6  
 7  
 8  
 9  
 10  
 11  
 12  
 13  
 14  
 15  
 16  
 17  
 18  
 19  
 20  
 21  
 22  
 23  
 24  
 25  
 26  
 27  
 28  
 29</pre>  
                                   </td>  
                                   <td width="100%">  
                                     <pre class="code">#enable echo mode  
226  SET ECHO 1  SET ECHO 1
227    
228  # load the ALSA audio driver  # load the ALSA audio driver
# Line 274  GET CHANNEL INFO 0 Line 251  GET CHANNEL INFO 0
251    
252  # quit connection  # quit connection
253  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
254                          <p class="default">                          <p class="default">
255                          The next example uses JACK as audio output driver instead and automatically connects the two                          The next example uses JACK as audio output driver instead and automatically connects the two
256                          output channels of LS's JACK client to the first two ALSA PCM channels, so you can hear                          output channels of LS's JACK client to the first two ALSA PCM channels, so you can hear
257                          something without having to manually connect it e.g. with qjackctl:                          something without having to manually connect it e.g. with qjackctl:
258                          </p>                          </p>
259                          <table class="default" border="0" cellpadding="1" cellspacing="5">                          <pre class="code">#enable echo mode
                                 <tr>  
                                   <td><pre class="code">1  
 2  
 3  
 4  
 5  
 6  
 7  
 8  
 9  
 10  
 11  
 12  
 13  
 14  
 15  
 16  
 17  
 18  
 19  
 20  
 21  
 22  
 23  
 24  
 25  
 26  
 27  
 28  
 29  
 30  
 31  
 32</pre>  
                                   </td>  
                                   <td width="100%">  
                                     <pre class="code">#enable echo mode  
260  SET ECHO 1  SET ECHO 1
261    
262  # load the JACK audio driver  # load the JACK audio driver
# Line 350  GET CHANNEL INFO 0 Line 288  GET CHANNEL INFO 0
288    
289  # quit connection  # quit connection
290  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
291                          <p class="default">                          <p class="default">
292                          The next example is a bit more complex.                          The next example is a bit more complex.
293                          It shows how to setup a more realistic sampler session, handle routing of MIDI input channels,                          It shows how to setup a more realistic sampler session, handle routing of MIDI input channels,
# Line 364  QUIT</pre> Line 299  QUIT</pre>
299                          the second pair of the JACK client's output channels. That way you could e.g. record the output                          the second pair of the JACK client's output channels. That way you could e.g. record the output
300                          of those two sampler channels independently or apply independent LADSPA effects on it.                          of those two sampler channels independently or apply independent LADSPA effects on it.
301                          </p>                          </p>
302                          <table class="default" border="0" cellpadding="1" cellspacing="5">                          <pre class="code"># enable echo mode
                                 <tr>  
                                   <td><pre class="code">1  
 2  
 3  
 4  
 5  
 6  
 7  
 8  
 9  
 10  
 11  
 12  
 13  
 14  
 15  
 16  
 17  
 18  
 19  
 20  
 21  
 22  
 23  
 24  
 25  
 26  
 27  
 28  
 29  
 30  
 31  
 32  
 33  
 34  
 35  
 36  
 37  
 38  
 39  
 40  
 41  
 42  
 43  
 44  
 45  
 46  
 47  
 48  
 49  
 50</pre>  
                                   </td>  
                                   <td width="100%">  
                                     <pre class="code"># enable echo mode  
303  SET ECHO 1  SET ECHO 1
304    
305  # load audio and MIDI driver  # load audio and MIDI driver
# Line 468  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 3 J Line 349  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 3 J
349  # not necessary, just to see our setup  # not necessary, just to see our setup
350  GET CHANNEL INFO 0  GET CHANNEL INFO 0
351  GET CHANNEL INFO 1</pre>  GET CHANNEL INFO 1</pre>
                                   </td>  
                                 </tr>  
                         </table>  
352                          <p class="default">                          <p class="default">
353                          For a detailed description about LSCP read the <a href="api/draft-linuxsampler-protocol.html">LSCP reference</a>.                          For a detailed description about LSCP read the <a href="api/draft-linuxsampler-protocol.html">LSCP reference</a>.
354                          Be welcome to ask details on the mailing list.                          Be welcome to ask details on the mailing list.

Legend:
Removed from v.1279  
changed lines
  Added in v.1280

  ViewVC Help
Powered by ViewVC