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

Annotation of /web/trunk/www.linuxsampler.org/faq.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 618 - (hide annotations) (download) (as text)
Wed Jun 8 21:12:59 2005 UTC (18 years, 10 months ago) by schoenebeck
File MIME type: text/html
File size: 12548 byte(s)
added instruction how to disable hand-crafted asm

1 senoner 542 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2     <html>
3     <head>
4     <link rel="stylesheet" type="text/css" href="index.css">
5     <title>The Linux Sampler Project</title>
6    
7     <meta http-equiv="content-type"
8     content="text/html; charset=ISO-8859-1">
9    
10     <script language="javascript" type="text/javascript">
11     <!--
12     var dir = "gfx/";
13    
14     if(document.images) {
15    
16     newsover = new Image();
17     newsover.src = dir + "mnewshover.png";
18    
19     newsout = new Image();
20     newsout.src = dir + "mnews.png";
21    
22     aboutover = new Image();
23     aboutover.src = dir + "mabouthover.png";
24    
25     aboutout = new Image();
26     aboutout.src = dir + "mabout.png";
27    
28     featuresover = new Image();
29     featuresover.src = dir + "mfeatureshover.png";
30    
31     featuresout = new Image();
32     featuresout.src = dir + "mfeatures.png";
33    
34     screenshotsover = new Image();
35     screenshotsover.src = dir + "mscreenshotshover.png";
36    
37     screenshotsout = new Image();
38     screenshotsout.src = dir + "mscreenshots.png";
39    
40     demosover = new Image();
41     demosover.src = dir + "mdemoshover.png";
42    
43     demosout = new Image();
44     demosout.src = dir + "mdemos.png";
45    
46     downloadsover = new Image();
47     downloadsover.src = dir + "mdownloadshover.png";
48    
49     downloadsout = new Image();
50     downloadsout.src = dir + "mdownloads.png";
51    
52     developersover = new Image();
53     developersover.src = dir + "mdevelopershover.png";
54    
55     developersout = new Image();
56     developersout.src = dir + "mdevelopers.png";
57    
58     instrumentsover = new Image();
59     instrumentsover.src = dir + "minstrumentshover.png";
60    
61     instrumentsout = new Image();
62     instrumentsout.src = dir + "minstruments.png";
63    
64     linksover = new Image();
65     linksover.src = dir + "mlinkshover.png";
66    
67     linksout = new Image();
68     linksout.src = dir + "mlinks.png";
69    
70     documentationover = new Image();
71     documentationover.src = dir + "mdocumentationhover.png";
72    
73     documentationout = new Image();
74     documentationout.src = dir + "mdocumentation.png";
75    
76     creditsover = new Image();
77     creditsover.src = dir + "mcreditshover.png";
78    
79     creditsout = new Image();
80     creditsout.src = dir + "mcredits.png";
81    
82     faqover = new Image();
83     faqover.src = dir + "mfaqhover.png";
84    
85     faqout = new Image();
86     faqout.src = dir + "mfaq.png";
87    
88     bugsover = new Image();
89     bugsover.src = dir + "mbugshover.png";
90    
91     bugsout = new Image();
92     bugsout.src = dir + "mbugs.png";
93     }
94     -->
95     </script>
96    
97     </head>
98    
99     <body>
100    
101     <div id="mainwindow"><img name="LinuxSampler" src="gfx/lsbackground.jpg" alt="LinuxSampler">
102    
103     <h1><span class="hidden">The LinuxSampler Project</span></h1>
104    
105     <table border=0 cellspacing=0 cellpadding=0><tr><th colspan=2 align=left>
106     <img name="h1blank" src="gfx/h1blank.png" alt="blank"><span class="hidden">about</span></th></tr>
107     <tr><td valign=top>
108     <a id="news" href="index.php" onmouseover="javascript:if(document.images)document.news.src = newsover.src" onmouseout="javascript:if(document.images)document.news.src = newsout.src"><img name="news" src="gfx/mnews.png" alt="news"></a>
109     <a id="about" href="about.html" onmouseover="javascript:if(document.images)document.about.src = aboutover.src" onmouseout="javascript:if(document.images)document.about.src = aboutout.src"><img name="about" src="gfx/mabout.png" alt="about"></a>
110     <a id="features" href="features.html" onmouseover="javascript:if(document.images)document.features.src = featuresover.src" onmouseout="javascript:if(document.images)document.features.src = featuresout.src"><img name="features" src="gfx/mfeatures.png" alt="features"></a>
111     <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>
112     <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>
113     <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>
114     <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>
115     <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>
116     <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>
117     <a id="bugs" href="http://bugs.linuxsampler.org" onmouseover="javascript:if(document.images)document.bugs.src = bugsover.src" onmouseout="javascript:if(document.images)document.bugs.src = bugsout.src"><img name="bugs" src="gfx/mbugs.png" alt="bugs"></a>
118     <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>
119     <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>
120     <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>
121     </td><td valign=top width="100%">
122     <div id="contents">
123    
124     <h2>FAQ</h2>
125     <p class="default">
126     Here is a collection of frequently asked questions. Please read them before asking on
127     the mailing list.
128     </p>
129    
130     <h3>linuxsampler? qsampler? libgig? liblscp? hu?</h3>
131     <p class="default">
132     There are currently four subprojects in the LinuxSampler project; linuxsampler,
133     qsampler, libgig and liblscp. linuxsampler is the core of the sampler, it includes the
134     sampler engines and audio and MIDI drivers. linuxsampler itself is decoupled from any
135     user interface. It offers a network server (LSCP server) to allow to be controlled by
136 schoenebeck 585 an arbitrary user frontend from an arbitrary place over a network connection or
137 senoner 542 locally from the same machine as well.
138     qsampler is the first GUI frontend written for linuxsampler, it is written with the Qt
139     GUI library and thus can be compiled for various architectures and operating systems
140     without modifications on the source code.
141     libgig is a C++ library written for loading Gigasampler files and DLS Level 1 and 2
142     files. libgig is used by linuxsampler to load Gigasampler files and it <b>can</b> be
143     used by qsampler to retrieve additional informations about Gigasampler files. liblscp
144     is a C library written as a wrapper around the LSCP network protocol, thus to control
145     linuxsampler. It was originally designed to be used on both sides, that is on server /
146     backend side (linuxsampler) and on client / frontend side (e.g. qsampler). But it's now
147     only used on client side by qsampler at the moment.
148     </p>
149    
150     <h3>What do I need to compile and install?</h3>
151     <p class="default">
152 schoenebeck 585 You should compile and install at least libgig and linuxsampler. As a beginner you should
153     definitely as well compile and install liblscp and qsampler. qsampler is a
154 senoner 542 convenient GUI frontend for linuxsampler. qsampler depends on liblscp, so you have to
155 schoenebeck 585 compile and install liblscp before starting to build qsampler. The recommended order to
156     compile and install is:
157     <ol class="default">
158     <li>libgig</li>
159     <li>linuxsampler</li>
160     <li>liblscp</li>
161     <li>qsampler</li>
162     </ol>
163 senoner 542 </p>
164    
165 schoenebeck 616 <h3>Compilation of LinuxSampler aborts with ... </h3>
166     <p class="default">
167     "<code>can't find a register in class `GENERAL_REGS' while reloading `asm'</code>"<br>
168 schoenebeck 618 This is caused by the inline assembly code for SIMD optimization. You currently have to compile LinuxSampler with -O2 or -O3 to avoid this problem. Usually this done by default, if not try:
169 schoenebeck 616 </p>
170 schoenebeck 618 <table class="default" border="0" cellpadding="1" cellspacing="5">
171     <tr>
172     <td><pre class="code">1
173     2</pre>
174     </td>
175     <td width="100%">
176     <pre class="code">CXXFLAGS="-O3" ./configure
177     make</pre>
178     </td>
179     </tr>
180     </table>
181     <p class="default">
182     Alternatively you could also disable all hand-crafted assembly optimization code by:
183     </p>
184     <table class="default" border="0" cellpadding="1" cellspacing="5">
185     <tr>
186     <td><pre class="code">1
187     2</pre>
188     </td>
189     <td width="100%">
190     <pre class="code">./configure --disable-asm
191     make</pre>
192     </td>
193     </tr>
194     </table>
195     <p class="default">
196     but the latter is definitely not recommended!
197     </p>
198 schoenebeck 616
199 senoner 542 <h3>How do I checkout from CVS?</h3>
200     <p class="default">
201     The procedure of checking out the newest version from CVS is described on the
202     <a href="downloads.html">Downloads</a> site.
203     </p>
204    
205     <h3>How do I compile from CVS?</h3>
206     <p class="default">
207     The procedure for compiling from CVS is the same for all subprojects, that is no matter
208 schoenebeck 585 if you are compiling linuxsampler, qsampler, libgig or liblscp from CVS, you need to
209 senoner 542 have the autotools (automake, autoconf and libtool) installed and compile it that way:
210     </p>
211     <table class="default" border="0" cellpadding="1" cellspacing="5">
212     <tr>
213     <td><pre class="code">1
214     2
215     3</pre>
216     </td>
217     <td width="100%">
218     <pre class="code">make -f Makefile.cvs
219     ./configure
220     make</pre>
221     </td>
222     </tr>
223     </table>
224    
225     <h3>Can I use linuxsampler without a GUI as well?</h3>
226     <p class="default">
227     Yes, but unfortunately there is no console based frontend frontend for linuxsampler (yet).
228     You have to write LSCP scripts and send it to the running linuxsampler application.
229     You can send a LSCP script to linuxsampler on the console with the following command:
230     </p>
231     <table class="default" border="0" cellpadding="1" cellspacing="5">
232     <tr>
233     <td><pre class="code">1</pre>
234     </td>
235     <td width="100%">
236     <pre class="code">cat yourscript.lscp | netcat -t localhost 8888</pre>
237     </td>
238     </tr>
239     </table>
240     <p class="default">
241     Of course you can also replace localhost by the IP address of the machine where
242     linuxsampler is running. Alternatively you can also make a telnet connection (port 8888)
243     to linuxsampler's LSCP server and type commands manually.
244     </p>
245    
246    
247     <h3>Are there example LSCP script files somewhere?</h3>
248     <p class="default">
249     Yes, have a look on the <a href="documentation.html">Documentation</a> site for some
250     common LSCP script examples. For details about LSCP read the
251     <a href="api/draft-linuxsampler-protocol.html">LSCP reference</a>. Be welcome to ask
252     questions for details about LSCP on the mailing list.
253     </p>
254    
255     <a name="dropouts"></a>
256     <h3>I get dropouts (click sounds, noise), what can I do about it?</h3>
257     <p class="default">
258     In order to achieve good results under Linux you need to have a
259     <a href="http://www.linuxdj.com/audio/lad/resourceslatency.php3">patched kernel</a>.
260     There are different patches available depending on what version (2.4.x or 2.6.x) of kernel you use.
261     The <a href="http://jackit.sourceforge.net/docs/faq.php">JACK FAQ site</a> is also a good resource
262     how to configure a realtime stable kernel. But note; LinuxSampler currently has not support for
263     libcap yet, that means if you are still using a 2.4.x Linux kernel you most probably have to run
264     LinuxSampler with root priviliges (support for libcap is planned though). As a rule of thumb: if
265     you don't get warnings like "cannot mlockall() memory" you are safe to run it as ordinary user as well.
266     </p>
267    
268     </div>
269     </td></tr></table>
270    
271     </div>
272    
273     </body>
274     </html>

  ViewVC Help
Powered by ViewVC