/[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 710 by schoenebeck, Thu Jul 21 09:47:15 2005 UTC revision 1572 by schoenebeck, Fri Dec 7 01:07:11 2007 UTC
# Line 126  Line 126 
126                          This is still quite under construction. Be welcome to help us with writing some documentation!                          This is still quite under construction. Be welcome to help us with writing some documentation!
127                          </p>                          </p>
128    
129                            <h2>gigedit</h2>
130                            <p class="default">
131                            This is our graphical instrument editor based on the Gtk toolkit.
132                            It can be used stand-alone or in conjunction with LinuxSampler.
133                            Read the <a href="http://download.linuxsampler.org/doc/gigedit/quickstart/gigedit_quickstart.html">Gigedit Quickstart</a>
134                            for a short tutorial. Please notice that this quickstart document
135                            is automatically generated from CVS and thus might reflect
136                            features and behaviors only available in the very latest, bleeding
137                            edge development version of gigedit from CVS.
138                            </p>
139    
140                            <h2>JSampler</h2>
141                            <p class="default">
142                            JSampler is an opensource, platform-independent,
143                            GUI front-end for LinuxSampler, written entirely in Java.
144                            Read the <a href="jsampler/manual/html/jsampler.html">JSampler manual</a>
145                            for more information.
146                            </p>
147    
148                            <h2>libgig</h2>
149                            <p class="default">
150                            libgig is a C++ library used to load and modify Gigasampler format files.
151                            If you're a developer and might want to use libgig, here is its
152                            <a href="http://download.linuxsampler.org/doc/libgig/api/">API documentation</a>
153                            (automatically daily updated from CVS).
154                            </p>
155    
156                            <h2>liblscp</h2>
157                            <p class="default">
158                            liblscp is C library as convenient wrapper around the <i>LinuxSampler Control Protocol</i>.
159                            If you're a developer and might want to use liblscp, here is its
160                            <a href="http://download.linuxsampler.org/doc/liblscp/">API documentation</a>
161                            (automatically daily updated from CVS).
162                            </p>
163    
164                          <h2>LSCP Reference</h2>                          <h2>LSCP Reference</h2>
165                          <p class="default">                          <p class="default">
166                          The following document defines the network protocol with which LinuxSampler can be controlled.                          The following documents define the <i>LinuxSampler Control Protocol</i>,
167                            a network protocol with which LinuxSampler can be controlled locally as well as remotely.
168                          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
169                          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
170                          ncurses based frontend, so be encouraged and let                          ncurses based frontend, so be encouraged and let
171                          <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
172                          LinuxSampler! This is the protocol specification of the latest                          LinuxSampler!
173                          official release of LinuxSampler (0.3.3):                          </p>
174                          <br>  
175                          </p>        <table class="decorated">
176                          <center>          <thead>
177                          LinuxSampler Control Protocol v1.0            <tr>
178                          (<a href="http://www.linuxsampler.org/api/lscp-1.0.txt">ASCII</a>,              <td class="decorated_header">Protocol Name</td>
179                          <a href="http://www.linuxsampler.org/api/lscp-1.0.html">HTML</a>,              <td class="decorated_header">Document Types</td>
180                          <a href="http://www.linuxsampler.org/api/lscp-1.0.xml">XML</a>)              <td class="decorated_header">Release Date</td>
181                          </center>              <td class="decorated_header">Description</td>
182                          <p class="default">            </tr>
183                          The following is the very latest draft of the protocol (which          </thead>
184                          usually reflects the latest development state from CVS or may          <tbody>
185                          even not be implemented yet):            <tr>
186                          <br>              <td class="decorated">LSCP&nbsp;draft</td>
187                          </p>              <td class="decorated">
188                          <center>                <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">TXT</a>,
189                          LinuxSampler Control Protocol Draft                <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>,
190                          (<a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">ASCII</a>,                <a href="http://cvs.linuxsampler.org/cgi-bin/viewcvs.cgi/*checkout*/linuxsampler/Documentation/lscp.xml?rev=HEAD&content-type=text/xml">XML</a>
191                          <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>,              </td>
192                          <a href="http://cvs.linuxsampler.org/cgi-bin/viewcvs.cgi/*checkout*/linuxsampler/Documentation/lscp.xml?rev=HEAD&content-type=text/xml">XML</a>)              <td class="decorated">unreleased</td>
193                          </center>              <td class="decorated">
194                  Very latest draft of the protocol (which usually reflects the
195                  latest development state from CVS or may even not be implemented
196                  yet).
197                </td>
198              </tr>
199              <tr>
200                <td class="decorated">LSCP&nbsp;1.3</td>
201                <td class="decorated">
202                  <a href="http://www.linuxsampler.org/api/lscp-1.3.txt">TXT</a>,
203                  <a href="http://www.linuxsampler.org/api/lscp-1.3.html">HTML</a>,
204                  <a href="http://www.linuxsampler.org/api/lscp-1.3.xml">XML</a>
205                </td>
206                <td class="decorated">2007-12-06</td>
207                <td class="decorated">
208                  Protocol specification of the latest official release of LinuxSampler (0.5.1).
209                </td>
210              </tr>
211              <tr>
212                <td class="decorated">LSCP&nbsp;1.2</td>
213                <td class="decorated">
214                  <a href="http://www.linuxsampler.org/api/lscp-1.2.txt">TXT</a>,
215                  <a href="http://www.linuxsampler.org/api/lscp-1.2.html">HTML</a>,
216                  <a href="http://www.linuxsampler.org/api/lscp-1.2.xml">XML</a>
217                </td>
218                <td class="decorated">2007-10-15</td>
219                <td class="decorated">
220                  Protocol specification of the previous official release of LinuxSampler (0.5.0).
221                </td>
222              </tr>
223              <tr>
224                <td class="decorated">LSCP&nbsp;1.1</td>
225                <td class="decorated">
226                  <a href="http://www.linuxsampler.org/api/lscp-1.1.txt">TXT</a>,
227                  <a href="http://www.linuxsampler.org/api/lscp-1.1.html">HTML</a>,
228                  <a href="http://www.linuxsampler.org/api/lscp-1.1.xml">XML</a>
229                </td>
230                <td class="decorated">2006-11-25</td>
231                <td class="decorated">
232                  Protocol specification old LinuxSampler release 0.4.0.
233                </td>
234              </tr>
235              <tr>
236                <td class="decorated">LSCP&nbsp;1.0</td>
237                <td class="decorated">
238                  <a href="http://www.linuxsampler.org/api/lscp-1.0.txt">TXT</a>,
239                  <a href="http://www.linuxsampler.org/api/lscp-1.0.html">HTML</a>,
240                  <a href="http://www.linuxsampler.org/api/lscp-1.0.xml">XML</a>
241                </td>
242                <td class="decorated">2005-07-17</td>
243                <td class="decorated">
244                  Protocol specification of ancient LinuxSampler release 0.3.3.
245                </td>
246              </tr>
247            </tbody>
248          </table>
249    
250                          <p class="default">                          <p class="default">
251                          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
252                          <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 172  Line 262 
262                          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
263                          and send it to the running linuxsampler application with:                          and send it to the running linuxsampler application with:
264                          </p>                          </p>
265                          <table class="default" border="0" cellpadding="1" cellspacing="5">                          <pre class="code">cat yourscript.lscp | netcat localhost 8888</pre>
266                                  <tr>                          <p class="default">
267                                    <td><pre class="code">1</pre>                          Optionally you can also use a graphical frontend like QSampler one time to setup a working
268                                    </td>                          sampler session for your needs and save it. Because you have to know that the files saved
269                                    <td width="100%">                          by our frontends are actually pure LSCP scripts, thus you can i.e. use those files simply with
270                                      <pre class="code">cat yourscript.lscp | netcat -t localhost 8888</pre>                          the mentioned netcat command from above to setup the sampler session without a frontend.
271                                    </td>                          </p>
                                 </tr>  
                         </table>  
272                          <p class="default">                          <p class="default">
273                          Here is a simple LSCP example which uses ALSA as MIDI input and as audio output driver as well,                          Here is a simple LSCP example which uses ALSA as MIDI input and as audio output driver as well,
274                          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
275                          on that sampler channel:                          on that sampler channel:
276                          </p>                          </p>
277                          <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  
278  SET ECHO 1  SET ECHO 1
279    
280  # load the ALSA audio driver  # load the ALSA audio driver
# Line 248  GET CHANNEL INFO 0 Line 303  GET CHANNEL INFO 0
303    
304  # quit connection  # quit connection
305  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
306                          <p class="default">                          <p class="default">
307                          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
308                          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
309                          something without having to manually connect it e.g. with qjackctl:                          something without having to manually connect it e.g. with qjackctl:
310                          </p>                          </p>
311                          <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  
312  SET ECHO 1  SET ECHO 1
313    
314  # load the JACK audio driver  # load the JACK audio driver
# Line 324  GET CHANNEL INFO 0 Line 340  GET CHANNEL INFO 0
340    
341  # quit connection  # quit connection
342  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
343                          <p class="default">                          <p class="default">
344                          The next example is a bit more complex.                          The next example is a bit more complex.
345                          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 338  QUIT</pre> Line 351  QUIT</pre>
351                          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
352                          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.
353                          </p>                          </p>
354                          <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  
355  SET ECHO 1  SET ECHO 1
356    
357  # load audio and MIDI driver  # load audio and MIDI driver
# Line 442  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 3 J Line 401  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 3 J
401  # not necessary, just to see our setup  # not necessary, just to see our setup
402  GET CHANNEL INFO 0  GET CHANNEL INFO 0
403  GET CHANNEL INFO 1</pre>  GET CHANNEL INFO 1</pre>
                                   </td>  
                                 </tr>  
                         </table>  
404                          <p class="default">                          <p class="default">
405                          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>.
406                          Be welcome to ask details on the mailing list.                          Be welcome to ask details on the mailing list.

Legend:
Removed from v.710  
changed lines
  Added in v.1572

  ViewVC Help
Powered by ViewVC