/[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 542 by senoner, Sun May 15 15:31:45 2005 UTC revision 3506 by schoenebeck, Mon Mar 11 16:01:38 2019 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!                          We are currently in a transition phase.
180                            Most of the documentation on this page is actually old and out-dated.
181                            We are currently moving (more recent) documentation to the separate site
182                            <a href="http://doc.linuxsampler.org">doc.linuxsampler.org</a>:<br>
183                            <br>
184                            <a href="http://doc.linuxsampler.org">
185                    <img src="gfx/doc_site_shot.png" style="width:520px;" />
186                </a>
187                            <br>
188                            Be invited to help us with <a href="http://doc.linuxsampler.org/Writing_Docs/">writing documentation</a>!
189                            <p class="default">
190                            </p>
191    
192                            <a name="sfz"></a>
193                            <a name="sfz2"></a>
194                            <h2>SFZ(2) format specification and implementation status</h2>
195                            <p class="default">
196                            We are currently in the works of a SFZ(2) format based sampler engine,
197                            as additional powerful sampler engine for LinuxSampler. As there is
198                            currently no official document defining the so called <i>SFZ version 2</i>
199                            format, we created our own <a href="https://docs.google.com/Doc?docid=0AVrDa5LNWylnZGZ6ejk4eHRfNDVjbmsyd3Zmag">SFZ2 reference document</a>,
200                            reflecting the format and the progress of implementation in LinuxSampler's
201                            Subversion developers version. This reference document is currently maintained by
202                            <a href="developers.html#Dahnielson">Anders Dahnielson</a>.
203                            </p>
204    
205                            <a name="windows"></a>
206                            <a name="osx"></a>
207                            <a name="debian"></a>
208                            <h2>Howtos</h2>
209                            <p class="default">
210                            To ease new users the first contact with the Linuxsampler applications,
211                            we have written the following short Howtos:
212                          </p>                          </p>
213          <table class="decorated">
214            <thead>
215              <tr>
216                <td class="decorated_header">Name</td>
217                <td class="decorated_header">Descripton</td>
218              </tr>
219            </thead>
220            <tbody>
221              <tr>
222                <td class="decorated"><a href="windows.html">Windows HOWTO</a></td>
223                <td class="decorated">
224                  LinuxSampler quickstart guide for the MS Windows operating system.
225                </td>
226              </tr>
227              <tr>
228                <td class="decorated"><a href="osx.html">OS X HOWTO</a></td>
229                <td class="decorated">
230                  LinuxSampler quickstart guide for the Apple OS X operating system (<b>Note:</b> Completely out-dated!).
231                </td>
232              </tr>
233              <tr>
234                <td class="decorated"><a href="debian.html">Debian HOWTO</a></td>
235                <td class="decorated">
236                  Guide for how to build optimized Debian packages of LS &amp;
237                  friends for your specific machine.
238                </td>
239              </tr>
240              <tr>
241                <td class="decorated"><a href="http://de.musix-wiki.org/index.php?title=LinuxSampler">Debian HOWTO (German)</a></td>
242                <td class="decorated">
243                  Another guide for Debian on an external site, this one in German language.
244                </td>
245              </tr>
246              <tr>
247                <td class="decorated"><a href="msys.html">Windows Build HOWTO</a></td>
248                <td class="decorated">
249                  Guide for how to build libgig, linuxsampler and gigedit
250                  for Windows by using MSYS.
251                </td>
252              </tr>
253            </tbody>
254          </table>
255    
256                            <h2>gigedit</h2>
257                            <p class="default">
258                            This is our graphical instrument editor based on the Gtk toolkit.
259                            It can be used stand-alone or in conjunction with LinuxSampler.
260                            Read the <a href="http://download.linuxsampler.org/doc/gigedit/quickstart/gigedit_quickstart.html">Gigedit Quickstart</a>
261                            for a short tutorial. Please notice that this quickstart document
262                            is automatically generated from CVS and thus might reflect
263                            features and behaviors only available in the very latest, bleeding
264                            edge development version of gigedit from CVS.<br>
265                <br>
266                <b>Note:</b> The gigedit documentation is currently completely out-dated!
267                            </p>
268    
269                            <h2><a  name="jsampler">JSampler</a></h2>
270                            <p class="default">
271                            JSampler is an opensource, platform-independent,
272                            GUI front-end for LinuxSampler, written entirely in Java.
273                            Read the <a href="jsampler/manual/html/jsampler.html">JSampler manual</a>
274                            for more information.<br>
275                            For information about using Fantasia with Miditzer in Puppy Linux VTPO
276                            read this <a href="http://organs.110mb.com/Fantasia.htm" target="_blank">HOWTO</a>.
277                            </p>
278    
279                            <h2>libgig</h2>
280                            <p class="default">
281                            libgig is a C++ library used to load and modify instrument files,
282                supporting the Gigasampler / GigaStudio file format, SoundFont file
283                format, KORG file format, AKAI disk image format and the DLS
284                (Downloadable Sounds) file format.<br>
285                <br>
286                            If you're a developer and might want to use libgig, here is its
287                            <a href="http://download.linuxsampler.org/doc/libgig/api/">API documentation</a>
288                            (automatically updated from SVN).
289                            </p>
290    
291                            <a name="lscp_spec"></a>
292                            <a name="lscp_specs"></a>
293                            <h2>liblscp</h2>
294                            <p class="default">
295                            liblscp is C library as convenient wrapper around the <i>LinuxSampler Control Protocol</i>.
296                            If you're a developer and might want to use liblscp, here is its
297                            <a href="http://download.linuxsampler.org/doc/liblscp/">API documentation</a>
298                            (automatically updated from SVN).
299                            </p>
300    
301                          <h2>LSCP Reference</h2>                          <h2>LSCP Reference</h2>
302                          <p class="default">                          <p class="default">
303                          The following document defines the network protocol with which LinuxSampler can be controlled.                          The following documents define the <i>LinuxSampler Control Protocol</i>,
304                            a network protocol with which LinuxSampler can be controlled locally as well as remotely.
305                          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
306                          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
307                          ncurses based frontend, so be encouraged and let                          ncurses based frontend, so be encouraged and let
308                          <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
309                          LinuxSampler! This is the latest draft of the protocol:                          LinuxSampler!
                         <br>  
310                          </p>                          </p>
311                          <center>  
312                              LinuxSampler Control Protocol Draft (<a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">ASCII</a>,        <table class="decorated">
313                                                                      <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>)          <thead>
314                          </center>            <tr>
315                <td class="decorated_header">Protocol Name</td>
316                <td class="decorated_header">Document Types</td>
317                <td class="decorated_header">Release Date</td>
318                <td class="decorated_header">Description</td>
319              </tr>
320            </thead>
321            <tbody>
322              <tr>
323                <td class="decorated">LSCP&nbsp;draft</td>
324                <td class="decorated">
325                  <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.txt">TXT</a>,
326                  <a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html">HTML</a>,
327                  <a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/linuxsampler/trunk/Documentation/lscp.xml?content-type=text%2Fplain">XML</a>
328                </td>
329                <td class="decorated">unreleased</td>
330                <td class="decorated">
331                  Very latest draft of the protocol (which usually reflects the
332                  latest development state from SVN or may even not be implemented
333                  yet).
334                </td>
335              </tr>
336              <tr>
337                <td class="decorated">LSCP&nbsp;1.7</td>
338                <td class="decorated">
339                  <a href="http://www.linuxsampler.org/api/lscp-1.7.txt">TXT</a>,
340                  <a href="http://www.linuxsampler.org/api/lscp-1.7.html">HTML</a>,
341                  <a href="http://www.linuxsampler.org/api/lscp-1.7.pdf">PDF</a>,
342                  <a href="http://www.linuxsampler.org/api/lscp-1.7.xml">XML</a>
343                </td>
344                <td class="decorated">2015-07-15</td>
345                <td class="decorated">
346                  Protocol specification of latest LinuxSampler release (v2.0.0).
347                </td>
348              </tr>
349              <tr>
350                <td class="decorated">LSCP&nbsp;1.6</td>
351                <td class="decorated">
352                  <a href="http://www.linuxsampler.org/api/lscp-1.6.txt">TXT</a>,
353                  <a href="http://www.linuxsampler.org/api/lscp-1.6.html">HTML</a>,
354                  <a href="http://www.linuxsampler.org/api/lscp-1.6.xml">XML</a>
355                </td>
356                <td class="decorated">2014-01-10</td>
357                <td class="decorated">
358                  Protocol specification of a SVN LinuxSampler version (1.0.0.svn25 - svn r2500).
359                </td>
360              </tr>
361              <tr>
362                <td class="decorated">LSCP&nbsp;1.5</td>
363                <td class="decorated">
364                  <a href="http://www.linuxsampler.org/api/lscp-1.5.txt">TXT</a>,
365                  <a href="http://www.linuxsampler.org/api/lscp-1.5.html">HTML</a>,
366                  <a href="http://www.linuxsampler.org/api/lscp-1.5.xml">XML</a>
367                </td>
368                <td class="decorated">2011-06-24</td>
369                <td class="decorated">
370                  Protocol specification of a SVN LinuxSampler version (svn r2188).
371                </td>
372              </tr>
373              <tr>
374                <td class="decorated">LSCP&nbsp;1.4</td>
375                <td class="decorated">
376                  <a href="http://www.linuxsampler.org/api/lscp-1.4.txt">TXT</a>,
377                  <a href="http://www.linuxsampler.org/api/lscp-1.4.html">HTML</a>,
378                  <a href="http://www.linuxsampler.org/api/lscp-1.4.xml">XML</a>
379                </td>
380                <td class="decorated">2009-07-31</td>
381                <td class="decorated">
382                  Protocol specification of old official LinuxSampler release v1.0.0.
383                </td>
384              </tr>
385              <tr>
386                <td class="decorated">LSCP&nbsp;1.3</td>
387                <td class="decorated">
388                  <a href="http://www.linuxsampler.org/api/lscp-1.3.txt">TXT</a>,
389                  <a href="http://www.linuxsampler.org/api/lscp-1.3.html">HTML</a>,
390                  <a href="http://www.linuxsampler.org/api/lscp-1.3.xml">XML</a>
391                </td>
392                <td class="decorated">2007-12-06</td>
393                <td class="decorated">
394                  Protocol specification of ancient LinuxSampler release (0.5.1).
395                </td>
396              </tr>
397              <tr>
398                <td class="decorated">LSCP&nbsp;1.2</td>
399                <td class="decorated">
400                  <a href="http://www.linuxsampler.org/api/lscp-1.2.txt">TXT</a>,
401                  <a href="http://www.linuxsampler.org/api/lscp-1.2.html">HTML</a>,
402                  <a href="http://www.linuxsampler.org/api/lscp-1.2.xml">XML</a>
403                </td>
404                <td class="decorated">2007-10-15</td>
405                <td class="decorated">
406                  Protocol specification of ancient LinuxSampler release (0.5.0).
407                </td>
408              </tr>
409              <tr>
410                <td class="decorated">LSCP&nbsp;1.1</td>
411                <td class="decorated">
412                  <a href="http://www.linuxsampler.org/api/lscp-1.1.txt">TXT</a>,
413                  <a href="http://www.linuxsampler.org/api/lscp-1.1.html">HTML</a>,
414                  <a href="http://www.linuxsampler.org/api/lscp-1.1.xml">XML</a>
415                </td>
416                <td class="decorated">2006-11-25</td>
417                <td class="decorated">
418                  Protocol specification of ancient LinuxSampler release 0.4.0.
419                </td>
420              </tr>
421              <tr>
422                <td class="decorated">LSCP&nbsp;1.0</td>
423                <td class="decorated">
424                  <a href="http://www.linuxsampler.org/api/lscp-1.0.txt">TXT</a>,
425                  <a href="http://www.linuxsampler.org/api/lscp-1.0.html">HTML</a>,
426                  <a href="http://www.linuxsampler.org/api/lscp-1.0.xml">XML</a>
427                </td>
428                <td class="decorated">2005-07-17</td>
429                <td class="decorated">
430                  Protocol specification of ancient LinuxSampler release 0.3.3.
431                </td>
432              </tr>
433            </tbody>
434          </table>
435    
436                          <p class="default">                          <p class="default">
437                          The protocol will be extended from time to time. Have a look at the                          The protocol will be extended from time to time. You may look at the
438                          <a href="features.html#LSCP">features</a> site to see which control commands are already implemented and which are not.                          <a href="features.html#LSCP">features</a> site to see which control
439                            commands are already implemented and which are not.
440                          </p>                          </p>
441    
442    
# Line 156  Line 448 
448                          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
449                          and send it to the running linuxsampler application with:                          and send it to the running linuxsampler application with:
450                          </p>                          </p>
451                          <table class="default" border="0" cellpadding="1" cellspacing="5">                          <pre class="code">cat yourscript.lscp | netcat localhost 8888</pre>
452                                  <tr>                          <p class="default">
453                                    <td><pre class="code">1</pre>                          Optionally you can also use a graphical frontend like QSampler one time to setup a working
454                                    </td>                          sampler session for your needs and save it. Because you have to know that the files saved
455                                    <td width="100%">                          by our frontends are actually pure LSCP scripts, thus you can i.e. use those files simply with
456                                      <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.
457                                    </td>                          </p>
                                 </tr>  
                         </table>  
458                          <p class="default">                          <p class="default">
459                          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,
460                          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
461                          on that sampler channel:                          on that sampler channel:
462                          </p>                          </p>
463                          <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  
464  SET ECHO 1  SET ECHO 1
465    
466  # load the ALSA audio driver  # load the ALSA audio driver
# Line 232  GET CHANNEL INFO 0 Line 489  GET CHANNEL INFO 0
489    
490  # quit connection  # quit connection
491  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
492                          <p class="default">                          <p class="default">
493                          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
494                          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
495                          something without having to manually connect it e.g. with qjackctl:                          something without having to manually connect it e.g. with qjackctl:
496                          </p>                          </p>
497                          <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  
498  SET ECHO 1  SET ECHO 1
499    
500  # load the JACK audio driver  # load the JACK audio driver
# Line 285  CREATE AUDIO_OUTPUT_DEVICE JACK Line 503  CREATE AUDIO_OUTPUT_DEVICE JACK
503  # connect to ALSA playback JACK client so we can hear something  # connect to ALSA playback JACK client so we can hear something
504  # (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'
505  #  to get all available JACK clients / ports)  #  to get all available JACK clients / ports)
506  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'
507  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'
508    # Note: above is for JACK2 (a.k.a. jackmp). If you are still using JACK1,
509    # you would need to use this instead:
510    # SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 0 JACK_BINDINGS='alsa_pcm:playback_1'
511    # SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 1 JACK_BINDINGS='alsa_pcm:playback_2'
512    
513  # load the ALSA MIDI driver  # load the ALSA MIDI driver
514  CREATE MIDI_INPUT_DEVICE ALSA  CREATE MIDI_INPUT_DEVICE ALSA
# Line 308  GET CHANNEL INFO 0 Line 530  GET CHANNEL INFO 0
530    
531  # quit connection  # quit connection
532  QUIT</pre>  QUIT</pre>
                                   </td>  
                                 </tr>  
                         </table>  
533                          <p class="default">                          <p class="default">
534                          The next example is a bit more complex.                          The next example is a bit more complex.
535                          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,
536                          handle routing of audio channels, it uses JACK again as audio                          handle routing of audio channels, it uses JACK again as audio
537                          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
538                          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
539                          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
540                          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
541                          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
542                          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.
543                          </p>                          </p>
544                          <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  
545  SET ECHO 1  SET ECHO 1
546    
547  # load audio and MIDI driver  # load audio and MIDI driver
# Line 418  SET CHANNEL AUDIO_OUTPUT_CHANNEL 1 1 3 Line 583  SET CHANNEL AUDIO_OUTPUT_CHANNEL 1 1 3
583    
584  # 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
585  # 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 ;-)
586  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
587  SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 1 JACK_BINDINGS='alsa_pcm:playback_2'  #  you have to replace "system" by "alsa_pcm" here)
588  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'
589  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'
590    SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 2 JACK_BINDINGS='system:playback_3'
591    SET AUDIO_OUTPUT_CHANNEL_PARAMETER 0 3 JACK_BINDINGS='system:playback_4'
592    
593  # not necessary, just to see our setup  # not necessary, just to see our setup
594  GET CHANNEL INFO 0  GET CHANNEL INFO 0
595  GET CHANNEL INFO 1</pre>  GET CHANNEL INFO 1</pre>
                                   </td>  
                                 </tr>  
                         </table>  
596                          <p class="default">                          <p class="default">
597                          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>.
598                          Be welcome to ask details on the mailing list.                          Be welcome to ask details on the mailing list.

Legend:
Removed from v.542  
changed lines
  Added in v.3506

  ViewVC Help
Powered by ViewVC