/[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 1241 by schoenebeck, Sat Jun 16 16:15:03 2007 UTC revision 2657 by schoenebeck, Thu Jun 19 15:04:15 2014 UTC
# Line 49  Line 49 
49                  downloadsout = new Image();                  downloadsout = new Image();
50                  downloadsout.src = dir + "mdownloads.png";                  downloadsout.src = dir + "mdownloads.png";
51    
52                    donationsover = new Image();
53                    donationsover.src = dir + "mdonationshover.png";
54    
55                    donationsout = new Image();
56                    donationsout.src = dir + "mdonations.png";
57    
58                    supportover = new Image();
59                    supportover.src = dir + "msupporthover.png";
60                    supportout = new Image();
61                    supportout.src = dir + "msupport.png";
62    
63                  developersover = new Image();                  developersover = new Image();
64                  developersover.src = dir + "mdevelopershover.png";                  developersover.src = dir + "mdevelopershover.png";
65    
# Line 98  Line 109 
109    
110  <body>  <body>
111    
112          <div id="mainwindow"><img name="LinuxSampler" src="gfx/lsbackground.jpg" alt="LinuxSampler">          <div id="mainwindow"><div class="lsbackground"><img name="LinuxSampler" src="gfx/lsbackground.jpg" alt="LinuxSampler"></div>
113    
114                  <h1><span class="hidden">The LinuxSampler Project</span></h1>                  <h1><span class="hidden">The LinuxSampler Project</span></h1>
115    
# Line 111  Line 122 
122                          <a id="screenshots" href="screenshots.html" onmouseover="javascript:if(document.images)document.screenshots.src = screenshotsover.src" onmouseout="javascript:if(document.images)document.screenshots.src = screenshotsout.src"><img name="screenshots" src="gfx/mscreenshots.png" alt="screenshots"></a>                          <a id="screenshots" href="screenshots.html" onmouseover="javascript:if(document.images)document.screenshots.src = screenshotsover.src" onmouseout="javascript:if(document.images)document.screenshots.src = screenshotsout.src"><img name="screenshots" src="gfx/mscreenshots.png" alt="screenshots"></a>
123                          <a id="demos" href="demos.html" onmouseover="javascript:if(document.images)document.demos.src = demosover.src" onmouseout="javascript:if(document.images)document.demos.src = demosout.src"><img name="demos" src="gfx/mdemos.png" alt="demos"></a>                          <a id="demos" href="demos.html" onmouseover="javascript:if(document.images)document.demos.src = demosover.src" onmouseout="javascript:if(document.images)document.demos.src = demosout.src"><img name="demos" src="gfx/mdemos.png" alt="demos"></a>
124                          <a id="downloads" href="downloads.html" onmouseover="javascript:if(document.images)document.downloads.src = downloadsover.src" onmouseout="javascript:if(document.images)document.downloads.src = downloadsout.src"><img name="downloads" src="gfx/mdownloads.png" alt="download"></a>                          <a id="downloads" href="downloads.html" onmouseover="javascript:if(document.images)document.downloads.src = downloadsover.src" onmouseout="javascript:if(document.images)document.downloads.src = downloadsout.src"><img name="downloads" src="gfx/mdownloads.png" alt="download"></a>
125                            <a id="donations" href="donations.html" onmouseover="javascript:if(document.images)document.donations.src = donationsover.src" onmouseout="javascript:if(document.images)document.donations.src = donationsout.src"><img name="donations" src="gfx/mdonations.png" alt="donations"></a>
126                            <a id="support" href="support.html" onmouseover="javascript:if(document.images)document.support.src = supportover.src" onmouseout="javascript:if(document.images)document.support.src = supportout.src"><img name="support" src="gfx/msupport.png" alt="support"></a>
127                          <a id="developers" href="developers.html" onmouseover="javascript:if(document.images)document.developers.src = developersover.src" onmouseout="javascript:if(document.images)document.developers.src = developersout.src"><img name="developers" src="gfx/mdevelopers.png" alt="developers"></a>                          <a id="developers" href="developers.html" onmouseover="javascript:if(document.images)document.developers.src = developersover.src" onmouseout="javascript:if(document.images)document.developers.src = developersout.src"><img name="developers" src="gfx/mdevelopers.png" alt="developers"></a>
128                          <a id="faq" href="faq.html" onmouseover="javascript:if(document.images)document.faq.src = faqover.src" onmouseout="javascript:if(document.images)document.faq.src = faqout.src"><img name="faq" src="gfx/mfaq.png" alt="faq"></a>                          <a id="faq" href="faq.html" onmouseover="javascript:if(document.images)document.faq.src = faqover.src" onmouseout="javascript:if(document.images)document.faq.src = faqout.src"><img name="faq" src="gfx/mfaq.png" alt="faq"></a>
129                          <a id="documentation" href="documentation.html" onmouseover="javascript:if(document.images)document.documentation.src = documentationover.src" onmouseout="javascript:if(document.images)document.documentation.src = documentationout.src"><img name="documentation" src="gfx/mdocumentation.png" alt="documentation"></a>                          <a id="documentation" href="documentation.html" onmouseover="javascript:if(document.images)document.documentation.src = documentationover.src" onmouseout="javascript:if(document.images)document.documentation.src = documentationout.src"><img name="documentation" src="gfx/mdocumentation.png" alt="documentation"></a>
# Line 118  Line 131 
131                          <a id="instruments" href="instruments.html" onmouseover="javascript:if(document.images)document.instruments.src = instrumentsover.src" onmouseout="javascript:if(document.images)document.instruments.src = instrumentsout.src"><img name="instruments" src="gfx/minstruments.png" alt="instruments"></a>                          <a id="instruments" href="instruments.html" onmouseover="javascript:if(document.images)document.instruments.src = instrumentsover.src" onmouseout="javascript:if(document.images)document.instruments.src = instrumentsout.src"><img name="instruments" src="gfx/minstruments.png" alt="instruments"></a>
132                          <a id="links" href="links.html" onmouseover="javascript:if(document.images)document.links.src = linksover.src" onmouseout="javascript:if(document.images)document.links.src = linksout.src"><img name="links" src="gfx/mlinks.png" alt="links"></a>                          <a id="links" href="links.html" onmouseover="javascript:if(document.images)document.links.src = linksover.src" onmouseout="javascript:if(document.images)document.links.src = linksout.src"><img name="links" src="gfx/mlinks.png" alt="links"></a>
133                          <a id="credits" href="credits.html" onmouseover="javascript:if(document.images)document.credits.src = creditsover.src" onmouseout="javascript:if(document.images)document.credits.src = creditsout.src"><img name="credits" src="gfx/mcredits.png" alt="credits"></a>                          <a id="credits" href="credits.html" onmouseover="javascript:if(document.images)document.credits.src = creditsover.src" onmouseout="javascript:if(document.images)document.credits.src = creditsout.src"><img name="credits" src="gfx/mcredits.png" alt="credits"></a>
134    
135    <div class="boxed">
136    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
137    <input type="hidden" name="cmd" value="_s-xclick">
138    <input type="hidden" name="hosted_button_id" value="6746056">
139    <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
140    <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
141    </form>
142    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
143    <input type="hidden" name="cmd" value="_s-xclick">
144    <input type="hidden" name="hosted_button_id" value="6746149">
145    <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
146    <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
147    </form>
148    <table><tr>
149    <td><a href="http://en.wikipedia.org/wiki/Bitcoin"><img src="gfx/logos/bitcoin32.png" alt="Bitcoins"></a></td>
150    <td>Or donate Bitcoins at:</td>
151    </tr></table>
152    <pre class="btcaddr">1Q9CK7xUhMNWryqYTZLbUTXbrjpYYtwvng</pre>
153    <hr>
154    <a href="donations.html">Why donate?</a>
155    </div>
156    <p>
157    <div class="">
158    <center>
159    <script type="text/javascript"><!--
160    google_ad_client = "pub-3408196773880325";
161    /* 120x600, created 8/3/09 */
162    google_ad_slot = "2910827959";
163    google_ad_width = 120;
164    google_ad_height = 600;
165    //-->
166    </script>
167    <script type="text/javascript"
168    src="//pagead2.googlesyndication.com/pagead/show_ads.js">
169    </script>
170    </center>
171    </div>
172    
173    
174                          </td><td valign=top width="100%">                          </td><td valign=top width="100%">
175                          <div id="contents">                          <div id="contents">
176    
177                          <h2>Documentation</h2>                          <h2>Documentation</h2>
178                          <p class="default">                          <p class="default">
179                          This is still quite under construction. Be welcome to help us with writing some documentation!              A lot of the documentation here is currently out-dated. Be invited
180                to help us with updating the documentation!
181                          </p>                          </p>
182    
183                            <a name="sfz"></a>
184                            <a name="sfz2"></a>
185                            <h2>SFZ(2) format specification and implementation status</h2>
186                            <p class="default">
187                            We are currently in the works of a SFZ(2) format based sampler engine,
188                            as additional powerful sampler engine for LinuxSampler. As there is
189                            currently no official document defining the so called <i>SFZ version 2</i>
190                            format, we created our own <a href="https://docs.google.com/Doc?docid=0AVrDa5LNWylnZGZ6ejk4eHRfNDVjbmsyd3Zmag">SFZ2 reference document</a>,
191                            reflecting the format and the progress of implementation in LinuxSampler's
192                            Subversion developers version. This reference document is currently maintained by
193                            <a href="developers.html#Dahnielson">Anders Dahnielson</a>.
194                            </p>
195    
196                            <a name="windows"></a>
197                            <a name="osx"></a>
198                            <a name="debian"></a>
199                            <h2>Howtos</h2>
200                            <p class="default">
201                            To ease new users the first contact with the Linuxsampler applications,
202                            we have written the following short Howtos:
203                            </p>
204          <table class="decorated">
205            <thead>
206              <tr>
207                <td class="decorated_header">Name</td>
208                <td class="decorated_header">Descripton</td>
209              </tr>
210            </thead>
211            <tbody>
212              <tr>
213                <td class="decorated"><a href="windows.html">Windows HOWTO</a></td>
214                <td class="decorated">
215                  LinuxSampler quickstart guide for the MS Windows operating system.
216                </td>
217              </tr>
218              <tr>
219                <td class="decorated"><a href="osx.html">OS X HOWTO</a></td>
220                <td class="decorated">
221                  LinuxSampler quickstart guide for the Apple OS X operating system (<b>Note:</b> Completely out-dated!).
222                </td>
223              </tr>
224              <tr>
225                <td class="decorated"><a href="debian.html">Debian HOWTO</a></td>
226                <td class="decorated">
227                  Guide for how to build optimized Debian packages of LS &amp;
228                  friends for your specific machine.
229                </td>
230              </tr>
231              <tr>
232                <td class="decorated"><a href="http://de.musix-wiki.org/index.php?title=LinuxSampler">Debian HOWTO (German)</a></td>
233                <td class="decorated">
234                  Another guide for Debian on an external site, this one in German language.
235                </td>
236              </tr>
237              <tr>
238                <td class="decorated"><a href="msys.html">Windows Build HOWTO</a></td>
239                <td class="decorated">
240                  Guide for how to build libgig, linuxsampler and gigedit
241                  for Windows by using MSYS.
242                </td>
243              </tr>
244            </tbody>
245          </table>
246    
247                          <h2>gigedit</h2>                          <h2>gigedit</h2>
248                          <p class="default">                          <p class="default">
249                          This is our graphical instrument editor based on the Gtk toolkit.                          This is our graphical instrument editor based on the Gtk toolkit.
# Line 134  Line 252 
252                          for a short tutorial. Please notice that this quickstart document                          for a short tutorial. Please notice that this quickstart document
253                          is automatically generated from CVS and thus might reflect                          is automatically generated from CVS and thus might reflect
254                          features and behaviors only available in the very latest, bleeding                          features and behaviors only available in the very latest, bleeding
255                          edge development version of gigedit from CVS.                          edge development version of gigedit from CVS.<br>
256                <br>
257                <b>Note:</b> The gigedit documentation is currently completely out-dated!
258                            </p>
259    
260                            <h2><a  name="jsampler">JSampler</a></h2>
261                            <p class="default">
262                            JSampler is an opensource, platform-independent,
263                            GUI front-end for LinuxSampler, written entirely in Java.
264                            Read the <a href="jsampler/manual/html/jsampler.html">JSampler manual</a>
265                            for more information.<br>
266                            For information about using Fantasia with Miditzer in Puppy Linux VTPO
267                            read this <a href="http://organs.110mb.com/Fantasia.htm" target="_blank">HOWTO</a>.
268                            </p>
269    
270                            <h2>libgig</h2>
271                            <p class="default">
272                            libgig is a C++ library used to load and modify instrument files,
273                supporting the Gigasampler / GigaStudio file format, SoundFont file
274                format, KORG file format, AKAI disk image format and the DLS
275                (Downloadable Sounds) file format.<br>
276                <br>
277                            If you're a developer and might want to use libgig, here is its
278                            <a href="http://download.linuxsampler.org/doc/libgig/api/">API documentation</a>
279                            (automatically updated from SVN).
280                            </p>
281    
282                            <a name="lscp_spec"></a>
283                            <a name="lscp_specs"></a>
284                            <h2>liblscp</h2>
285                            <p class="default">
286                            liblscp is C library as convenient wrapper around the <i>LinuxSampler Control Protocol</i>.
287                            If you're a developer and might want to use liblscp, here is its
288                            <a href="http://download.linuxsampler.org/doc/liblscp/">API documentation</a>
289                            (automatically updated from SVN).
290                          </p>                          </p>
291    
292                          <h2>LSCP Reference</h2>                          <h2>LSCP Reference</h2>
293                          <p class="default">                          <p class="default">
294                          The following document defines the network protocol with which LinuxSampler can be controlled.                          The following documents define the <i>LinuxSampler Control Protocol</i>,
295                            a network protocol with which LinuxSampler can be controlled locally as well as remotely.
296                          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
297                          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
298                          ncurses based frontend, so be encouraged and let                          ncurses based frontend, so be encouraged and let
299                          <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
300                          LinuxSampler! This is the protocol specification of the old                          LinuxSampler!
301                          official release of LinuxSampler (0.3.3):                          </p>
302                          <br>  
303                          </p>        <table class="decorated">
304                          <center>          <thead>
305                          LinuxSampler Control Protocol v1.0            <tr>
306                          (<a href="http://www.linuxsampler.org/api/lscp-1.0.txt">ASCII</a>,              <td class="decorated_header">Protocol Name</td>
307                          <a href="http://www.linuxsampler.org/api/lscp-1.0.html">HTML</a>,              <td class="decorated_header">Document Types</td>
308                          <a href="http://www.linuxsampler.org/api/lscp-1.0.xml">XML</a>)              <td class="decorated_header">Release Date</td>
309                          </center>              <td class="decorated_header">Description</td>
310                          <p class="default">            </tr>
311                          This is the protocol specification of the latest          </thead>
312                          official release of LinuxSampler (0.4.0):          <tbody>
313                          <br>            <tr>
314                          </p>              <td class="decorated">LSCP&nbsp;draft</td>
315                          <center>              <td class="decorated">
316                          LinuxSampler Control Protocol v1.1                <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">TXT</a>,
317                          (<a href="http://www.linuxsampler.org/api/lscp-1.1.txt">ASCII</a>,                <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>,
318                          <a href="http://www.linuxsampler.org/api/lscp-1.1.html">HTML</a>,                <a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/linuxsampler/trunk/Documentation/lscp.xml">XML</a>
319                          <a href="http://www.linuxsampler.org/api/lscp-1.1.xml">XML</a>)              </td>
320                          </center>              <td class="decorated">unreleased</td>
321                          <p class="default">              <td class="decorated">
322                          The following is the very latest draft of the protocol (which                Very latest draft of the protocol (which usually reflects the
323                          usually reflects the latest development state from CVS or may                latest development state from SVN or may even not be implemented
324                          even not be implemented yet):                yet).
325                          <br>              </td>
326                          </p>            </tr>
327                          <center>            <tr>
328                          LinuxSampler Control Protocol Draft              <td class="decorated">LSCP&nbsp;1.6</td>
329                          (<a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">ASCII</a>,              <td class="decorated">
330                          <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>,                <a href="http://www.linuxsampler.org/api/lscp-1.6.txt">TXT</a>,
331                          <a href="http://cvs.linuxsampler.org/cgi-bin/viewcvs.cgi/*checkout*/linuxsampler/Documentation/lscp.xml?rev=HEAD&content-type=text/xml">XML</a>)                <a href="http://www.linuxsampler.org/api/lscp-1.6.html">HTML</a>,
332                          </center>                <a href="http://www.linuxsampler.org/api/lscp-1.6.xml">XML</a>
333                </td>
334                <td class="decorated">2014-01-10</td>
335                <td class="decorated">
336                  Protocol specification of a SVN LinuxSampler version (1.0.0.svn25 - svn r2500).
337                </td>
338              </tr>
339              <tr>
340                <td class="decorated">LSCP&nbsp;1.5</td>
341                <td class="decorated">
342                  <a href="http://www.linuxsampler.org/api/lscp-1.5.txt">TXT</a>,
343                  <a href="http://www.linuxsampler.org/api/lscp-1.5.html">HTML</a>,
344                  <a href="http://www.linuxsampler.org/api/lscp-1.5.xml">XML</a>
345                </td>
346                <td class="decorated">2011-06-24</td>
347                <td class="decorated">
348                  Protocol specification of a SVN LinuxSampler version (svn r2188).
349                </td>
350              </tr>
351              <tr>
352                <td class="decorated">LSCP&nbsp;1.4</td>
353                <td class="decorated">
354                  <a href="http://www.linuxsampler.org/api/lscp-1.4.txt">TXT</a>,
355                  <a href="http://www.linuxsampler.org/api/lscp-1.4.html">HTML</a>,
356                  <a href="http://www.linuxsampler.org/api/lscp-1.4.xml">XML</a>
357                </td>
358                <td class="decorated">2009-07-31</td>
359                <td class="decorated">
360                  Protocol specification of old official LinuxSampler release v1.0.0.
361                </td>
362              </tr>
363              <tr>
364                <td class="decorated">LSCP&nbsp;1.3</td>
365                <td class="decorated">
366                  <a href="http://www.linuxsampler.org/api/lscp-1.3.txt">TXT</a>,
367                  <a href="http://www.linuxsampler.org/api/lscp-1.3.html">HTML</a>,
368                  <a href="http://www.linuxsampler.org/api/lscp-1.3.xml">XML</a>
369                </td>
370                <td class="decorated">2007-12-06</td>
371                <td class="decorated">
372                  Protocol specification of ancient LinuxSampler release (0.5.1).
373                </td>
374              </tr>
375              <tr>
376                <td class="decorated">LSCP&nbsp;1.2</td>
377                <td class="decorated">
378                  <a href="http://www.linuxsampler.org/api/lscp-1.2.txt">TXT</a>,
379                  <a href="http://www.linuxsampler.org/api/lscp-1.2.html">HTML</a>,
380                  <a href="http://www.linuxsampler.org/api/lscp-1.2.xml">XML</a>
381                </td>
382                <td class="decorated">2007-10-15</td>
383                <td class="decorated">
384                  Protocol specification of ancient LinuxSampler release (0.5.0).
385                </td>
386              </tr>
387              <tr>
388                <td class="decorated">LSCP&nbsp;1.1</td>
389                <td class="decorated">
390                  <a href="http://www.linuxsampler.org/api/lscp-1.1.txt">TXT</a>,
391                  <a href="http://www.linuxsampler.org/api/lscp-1.1.html">HTML</a>,
392                  <a href="http://www.linuxsampler.org/api/lscp-1.1.xml">XML</a>
393                </td>
394                <td class="decorated">2006-11-25</td>
395                <td class="decorated">
396                  Protocol specification of ancient LinuxSampler release 0.4.0.
397                </td>
398              </tr>
399              <tr>
400                <td class="decorated">LSCP&nbsp;1.0</td>
401                <td class="decorated">
402                  <a href="http://www.linuxsampler.org/api/lscp-1.0.txt">TXT</a>,
403                  <a href="http://www.linuxsampler.org/api/lscp-1.0.html">HTML</a>,
404                  <a href="http://www.linuxsampler.org/api/lscp-1.0.xml">XML</a>
405                </td>
406                <td class="decorated">2005-07-17</td>
407                <td class="decorated">
408                  Protocol specification of ancient LinuxSampler release 0.3.3.
409                </td>
410              </tr>
411            </tbody>
412          </table>
413    
414                          <p class="default">                          <p class="default">
415                          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
416                          <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 426 
426                          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
427                          and send it to the running linuxsampler application with:                          and send it to the running linuxsampler application with:
428                          </p>                          </p>
429                          <table class="default" border="0" cellpadding="1" cellspacing="5">                          <pre class="code">cat yourscript.lscp | netcat localhost 8888</pre>
430                                  <tr>                          <p class="default">
431                                    <td><pre class="code">1</pre>                          Optionally you can also use a graphical frontend like QSampler one time to setup a working
432                                    </td>                          sampler session for your needs and save it. Because you have to know that the files saved
433                                    <td width="100%">                          by our frontends are actually pure LSCP scripts, thus you can i.e. use those files simply with
434                                      <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.
435                                    </td>                          </p>
                                 </tr>  
                         </table>  
436                          <p class="default">                          <p class="default">
437                          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,
438                          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
439                          on that sampler channel:                          on that sampler channel:
440                          </p>                          </p>
441                          <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  
442  SET ECHO 1  SET ECHO 1
443    
444  # load the ALSA audio driver  # load the ALSA audio driver
# Line 268  GET CHANNEL INFO 0 Line 467  GET CHANNEL INFO 0
467    
468  # quit connection  # quit connection
469  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
470                          <p class="default">                          <p class="default">
471                          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
472                          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
473                          something without having to manually connect it e.g. with qjackctl:                          something without having to manually connect it e.g. with qjackctl:
474                          </p>                          </p>
475                          <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  
476  SET ECHO 1  SET ECHO 1
477    
478  # load the JACK audio driver  # load the JACK audio driver
# Line 321  CREATE AUDIO_OUTPUT_DEVICE JACK Line 481  CREATE AUDIO_OUTPUT_DEVICE JACK
481  # connect to ALSA playback JACK client so we can hear something  # connect to ALSA playback JACK client so we can hear something
482  # (you can use 'GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 0 0 JACK_BINDINGS'  # (you can use 'GET AUDIO_OUTPUT_CHANNEL_PARAMETER INFO 0 0 JACK_BINDINGS'
483  #  to get all available JACK clients / ports)  #  to get all available JACK clients / ports)
484  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 0 JACK_BINDINGS='alsa_pcm:playback_1'  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 0 JACK_BINDINGS='system:playback_1'
485  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 1 JACK_BINDINGS='alsa_pcm:playback_2'  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 1 JACK_BINDINGS='system:playback_2'
486    # Note: above is for JACK2 (a.k.a. jackmp). If you are still using JACK1,
487    # you would need to use this instead:
488    # SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 0 JACK_BINDINGS='alsa_pcm:playback_1'
489    # SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 1 JACK_BINDINGS='alsa_pcm:playback_2'
490    
491  # load the ALSA MIDI driver  # load the ALSA MIDI driver
492  CREATE MIDI_INPUT_DEVICE ALSA  CREATE MIDI_INPUT_DEVICE ALSA
# Line 344  GET CHANNEL INFO 0 Line 508  GET CHANNEL INFO 0
508    
509  # quit connection  # quit connection
510  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
511                          <p class="default">                          <p class="default">
512                          The next example is a bit more complex.                          The next example is a bit more complex.
513                          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,
514                          handle routing of audio channels, it uses JACK again as audio                          handle routing of audio channels, it uses JACK again as audio
515                          output driver, but creates the JACK client with four output channels instead, it creates two                          output driver, but creates the JACK client with four output channels instead, it creates two
516                          sampler channels, loads two different instrument on those two sampler channels and alters                          sampler channels, loads two different instruments on those two sampler channels and alters
517                          the audio channel routing so that the two output channels of sampler channel 1 are routed to                          the audio channel routing so that the two output channels of sampler channel 1 are routed to
518                          the first two JACK output channels and the two output channels of sampler channel 2 are routed                          the first two JACK output channels and the two output channels of sampler channel 2 are routed
519                          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
520                          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.
521                          </p>                          </p>
522                          <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  
523  SET ECHO 1  SET ECHO 1
524    
525  # load audio and MIDI driver  # load audio and MIDI driver
# Line 454  SET CHANNEL AUDIO_OUTPUT_CHANNEL 1 1 3 Line 561  SET CHANNEL AUDIO_OUTPUT_CHANNEL 1 1 3
561    
562  # automatic connection between the four 4 ports of LS's Jack client and the  # automatic connection between the four 4 ports of LS's Jack client and the
563  # ALSA PCM JACK client (assuming your sound card has at least 4 outputs ;-)  # ALSA PCM JACK client (assuming your sound card has at least 4 outputs ;-)
564  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 0 JACK_BINDINGS='alsa_pcm:playback_1'  # (assumimg JACK2 a.k.a. jackmp here, if you are still using JACK1 then
565  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 1 JACK_BINDINGS='alsa_pcm:playback_2'  #  you have to replace "system" by "alsa_pcm" here)
566  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 2 JACK_BINDINGS='alsa_pcm:playback_3'  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 0 JACK_BINDINGS='system:playback_1'
567  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 3 JACK_BINDINGS='alsa_pcm:playback_4'  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 1 JACK_BINDINGS='system:playback_2'
568    SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 2 JACK_BINDINGS='system:playback_3'
569    SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 3 JACK_BINDINGS='system:playback_4'
570    
571  # not necessary, just to see our setup  # not necessary, just to see our setup
572  GET CHANNEL INFO 0  GET CHANNEL INFO 0
573  GET CHANNEL INFO 1</pre>  GET CHANNEL INFO 1</pre>
                                   </td>  
                                 </tr>  
                         </table>  
574                          <p class="default">                          <p class="default">
575                          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>.
576                          Be welcome to ask details on the mailing list.                          Be welcome to ask details on the mailing list.

Legend:
Removed from v.1241  
changed lines
  Added in v.2657

  ViewVC Help
Powered by ViewVC