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

Contents of /web/trunk/www.linuxsampler.org/about.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2033 - (show annotations) (download) (as text)
Sun Nov 22 10:03:14 2009 UTC (14 years, 4 months ago) by persson
File MIME type: text/html
File size: 19293 byte(s)
* table layout fixes, trying to get rid of unnecessary scrollbars
* increased font size again

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4
5 <link rel="stylesheet" type="text/css" href="index.css">
6 <title>The Linux Sampler Project</title>
7
8 <meta http-equiv="content-type"
9 content="text/html; charset=ISO-8859-1">
10
11 <script language="javascript" type="text/javascript">
12 <!--
13 var dir = "gfx/";
14
15 if(document.images) {
16
17 newsover = new Image();
18 newsover.src = dir + "mnewshover.png";
19
20 newsout = new Image();
21 newsout.src = dir + "mnews.png";
22
23 aboutover = new Image();
24 aboutover.src = dir + "mabouthover.png";
25
26 aboutout = new Image();
27 aboutout.src = dir + "mabout.png";
28
29 featuresover = new Image();
30 featuresover.src = dir + "mfeatureshover.png";
31
32 featuresout = new Image();
33 featuresout.src = dir + "mfeatures.png";
34
35 screenshotsover = new Image();
36 screenshotsover.src = dir + "mscreenshotshover.png";
37
38 screenshotsout = new Image();
39 screenshotsout.src = dir + "mscreenshots.png";
40
41 demosover = new Image();
42 demosover.src = dir + "mdemoshover.png";
43
44 demosout = new Image();
45 demosout.src = dir + "mdemos.png";
46
47 downloadsover = new Image();
48 downloadsover.src = dir + "mdownloadshover.png";
49
50 downloadsout = new Image();
51 downloadsout.src = dir + "mdownloads.png";
52
53 donationsover = new Image();
54 donationsover.src = dir + "mdonationshover.png";
55
56 donationsout = new Image();
57 donationsout.src = dir + "mdonations.png";
58
59 supportover = new Image();
60 supportover.src = dir + "msupporthover.png";
61 supportout = new Image();
62 supportout.src = dir + "msupport.png";
63
64 developersover = new Image();
65 developersover.src = dir + "mdevelopershover.png";
66
67 developersout = new Image();
68 developersout.src = dir + "mdevelopers.png";
69
70 instrumentsover = new Image();
71 instrumentsover.src = dir + "minstrumentshover.png";
72
73 instrumentsout = new Image();
74 instrumentsout.src = dir + "minstruments.png";
75
76 linksover = new Image();
77 linksover.src = dir + "mlinkshover.png";
78
79 linksout = new Image();
80 linksout.src = dir + "mlinks.png";
81
82 documentationover = new Image();
83 documentationover.src = dir + "mdocumentationhover.png";
84
85 documentationout = new Image();
86 documentationout.src = dir + "mdocumentation.png";
87
88 creditsover = new Image();
89 creditsover.src = dir + "mcreditshover.png";
90
91 creditsout = new Image();
92 creditsout.src = dir + "mcredits.png";
93
94 faqover = new Image();
95 faqover.src = dir + "mfaqhover.png";
96
97 faqout = new Image();
98 faqout.src = dir + "mfaq.png";
99
100 bugsover = new Image();
101 bugsover.src = dir + "mbugshover.png";
102
103 bugsout = new Image();
104 bugsout.src = dir + "mbugs.png";
105 }
106 -->
107 </script>
108
109 </head>
110
111 <body>
112
113 <div id="mainwindow"><div class="lsbackground"><img name="LinuxSampler" src="gfx/lsbackground.jpg" alt="LinuxSampler"></div>
114
115 <h1><span class="hidden">The LinuxSampler Project</span></h1>
116
117 <table border=0 cellspacing=0 cellpadding=0><tr><th colspan=2 align=left>
118 <img name="h1about" src="gfx/h1about.png" alt="About"><span class="hidden">about</span></th></tr>
119 <tr><td valign=top>
120 <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>
121 <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>
122 <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>
123 <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>
124 <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>
125 <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>
126 <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>
127 <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>
128 <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>
129 <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>
130 <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>
131 <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>
132 <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>
133 <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>
134 <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>
135
136 <div class="boxed">
137 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
138 <input type="hidden" name="cmd" value="_s-xclick">
139 <input type="hidden" name="hosted_button_id" value="6746056">
140 <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!">
141 <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
142 </form>
143 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
144 <input type="hidden" name="cmd" value="_s-xclick">
145 <input type="hidden" name="hosted_button_id" value="6746149">
146 <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!">
147 <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
148 </form>
149 <a href="donations.html">Why donate?</a>
150 </div>
151 <p>
152 <div class="">
153 <center>
154 <script type="text/javascript"><!--
155 google_ad_client = "pub-3408196773880325";
156 /* 120x600, created 8/3/09 */
157 google_ad_slot = "2910827959";
158 google_ad_width = 120;
159 google_ad_height = 600;
160 //-->
161 </script>
162 <script type="text/javascript"
163 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
164 </script>
165 </center>
166 </div>
167
168
169 </td><td valign=top width="100%">
170 <div id="contents">
171
172 <h2>The Project</h2>
173 <p class="default">
174 The LinuxSampler project was founded with the
175 goal to produce a free, streaming capable open source pure
176 software audio sampler with professional grade features,
177 comparable to both hardware and commercial Windows/Mac software
178 samplers and to introduce new features not yet available by any
179 other sampler in the world.
180 </p>
181
182 <h2>The Engine</h2>
183 <p class="default">
184 <u><b>LinuxSampler</b></u> was designed very modular, especially
185 (and in contrast to other samplers) it was decoupled from any user
186 interface. LinuxSampler itself usually runs as own process in the
187 background of the computer and usually does not show up anything on
188 the screen, or at most it can be launched to show status
189 informations and debug messages in a console window:<br>
190 <br>
191 <a href="screenshots/ls_0_5_1_console.png">
192 <img src="screenshots/ls_0_5_1_console_preview.png">
193 </a><br>
194 <br>
195 That means LinuxSampler itself is the "engine" of the sampler, it
196 is the software component which performs all the heavy and time
197 critical computational tasks of handling MIDI events, calculating
198 the audio data and sending the final audio data to your sound
199 card(s). We call LinuxSampler the <i>sampler backend</i>.
200 </p>
201
202 <h2>The Face(s)</h2>
203 <p class="default">
204 Obviously you need some way to control the sampler. That's where a
205 2nd application comes into game, which we call a
206 <i>sampler frontend</i> application. A frontend is (usually) a
207 graphical application, visible on the screen, providing the user
208 a set of e.g. menus, buttons, sliders, dials, etc. to allow the
209 user to control the sampler in a convenient way. It merely sends
210 the user requests to the sampler engine (LinuxSampler) and in turn
211 shows the engine's status informations on the screen. A frontend
212 does not perform any signal processing tasks, so you can see it as
213 a "face" of the sampler.<br>
214 <br>
215 For luxury we already provide you two different frontends / "faces"
216 for LinuxSampler:
217 </p>
218 <ul>
219 <li>
220 <u><b>QSampler</b></u> is a light-weight frontend written in
221 C++, using straightforward native graphical controls of the
222 underlying operating system. That way the appearance of
223 QSampler on the screen is very fast and it only consumes very
224 little resources. Due to its utilization of the operating
225 system's common GUI controls, it looks slightly different on
226 every operating system (also dependent of the user's selected
227 theme on his OS):<br>
228 <br>
229 <a href="screenshots/qs_0_2_1_win.jpg">
230 <img src="screenshots/qs_0_2_1_win_preview.jpg">
231 </a>&nbsp;
232 <a href="screenshots/qs_0_2_1_ubuntu.png">
233 <img src="screenshots/qs_0_2_1_ubuntu_preview.png">
234 </a><br>
235 <br>
236 Note however, QSampler does not fully support all features of
237 the sampler engine (LinuxSampler) yet. Most notably the
238 engine's instruments database feature is not yet covered by
239 QSampler. But if you don't need that particular feature,
240 you're certainly fine with QSampler as well.<br>
241 <br>
242 </li>
243
244 <li>
245 <u><b>JSampler</b></u> is a full-fledged frontend for
246 LinuxSampler, written in Java and currently comes in two
247 flavors: <b>JSampler "Classic"</b> offers straightforward GUI
248 controls whereas <b>JSampler "Fantasia"</b> provides a modern
249 skin based user interface:<br>
250 <br>
251 <a href="screenshots/fantasia.png"><img src="screenshots/fantasia-preview.png"></a>
252 <br>
253 JSampler supports all features currently available in the
254 sampler engine (LinuxSampler). Also note that even though
255 JSampler is written in Java and slightly more hungry
256 regarding resources (compared to QSampler), this usually
257 does not have any impact on the audio rendering performance
258 of the sampler, since the engine runs completely independently
259 and with much higher CPU priority than the frontend(s).<br>
260 </li>
261 </ul>
262 <p class="default">
263 It's completely up to you which frontend to use. You could even use
264 both parallel at the same time for the same sampler engine
265 instance, really! ;-) You're concerned that your sampler frontend
266 might waste precious resources of your computer? No problem, just
267 setup the sampler session for your needs and then quit the
268 frontend application. The sampler engine doesn't care! It continues
269 to do its job. You need to change something? Start the frontend
270 again (or another frontend) and you see what you expect to see: the
271 current setup and state of the running sampler engine.
272 </p>
273
274 <h2>The Format</h2>
275 <p class="default">
276 It is planned to support all common sampler formats in
277 LinuxSampler, but at the moment we chose to concentrate on the
278 Gigasampler format, because when we started this project, the
279 Gigasampler format was (in our opinion) the most popular
280 and "best" sampler format in regards of quality and power,
281 especially for the synthesis of natural instruments like pianos,
282 brass and bowed instruments. But we already made good advance in
283 implementing this format, so we are optimistic to start with
284 adding other formats soon. Beside that we also planned to
285 design our own, sophisticated sampler format to introduce a more
286 powerful and more flexible sampler format compared to
287 any sampler format currently available in the world. Be encouraged
288 to share your ideas about such a new format with us!
289 </p>
290
291 <h2>The Editor</h2>
292 <p class="default">
293 <u><b>gigedit</b></u> allows you to edit and create instruments
294 for the Gigasampler format, which can be used with LinuxSampler
295 as well as with Tascam's Gigastudio. Following our line of
296 modularity we also made the instrument editors independent
297 applications. Because let's face it: every sampler format is
298 different, so in our opinion it is better to honor the specific
299 features of one format with its own instrument editor application
300 instead of trying to fiddle everything into one single bloated
301 application. So gigedit is our first editor, dedicated to the .gig
302 format:<br>
303 <br>
304 <a href="screenshots/gigedit_0_0_3.png"><img src="screenshots/gigedit_0_0_3_preview.jpg"></a>
305 <br>
306 You can use gigedit as stand-alone application or in conjunction
307 with LinuxSampler. For the latter case gigedit installs a plugin
308 into the sampler engine, so the engine (and with it the frontends)
309 knows that gigedit actually exists and can handle the .gig format.
310 So even though we decoupled the sampler's components into
311 independent applications, they all work seamlessly together.
312 <a href="http://download.linuxsampler.org/doc/gigedit/quickstart/gigedit_quickstart.html#live_editing">
313 Just press the "Edit" button
314 </a> on a channel strip of a frontend and
315 gigedit will automatically popup on the screen and you're
316 immediately ready to edit your selected instrument, making all your
317 modifications audible in realtime. Even when editing huge
318 instruments of 1GB or more, tweak the instrument with gigedit and
319 immediately hear it while playing on the keyboard at the same time.
320 And the good thing: even with new sampler formats we're going to
321 add soon (and with it new editors), you don't have to remember
322 which instrument you loaded uses which format. Simply click on
323 "Edit" in a frontend and the sampler engine will choose the right
324 instrument editor application for the respective instrument for
325 you.
326 </p>
327
328 <h2>The Technical Interface</h2>
329 <p class="default">
330 As the components of the sampler are independent applications,
331 there must be a way to let the applications communicate with each
332 other. For this LinuxSampler provides a native C++
333 <a href="http://en.wikipedia.org/wiki/Application_programming_interface">API</a>
334 as well as a network interface using an ASCII based protocol which
335 we call "<a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html" title="LinuxSampler Control Protocol">LSCP</a>"
336 for controlling the sampler engine and managing sampler sessions.
337 Our frontends support that network interface, which also allows to
338 control the sampler engine with the GUI frontend(s) remotely from
339 another computer, probably even running a completely different
340 Operating System. And compared to other remote control solutions,
341 the frontend won't feel sluggish, as the frontend is running on
342 your local machine.<br>
343 <br>
344 You can also configure your computer to automatically start the
345 sampler engine and loading your prefered sampler session without
346 any frontend, simply by using a <i>LSCP session file</i>. How do
347 you get such a "LSCP session file"? Both frontends write LSCP
348 session files for you when you request them to save your current
349 sampler session. And as those LSCP session files are ordinary
350 human readable text files, you can adjust them with any text
351 editor if you want.
352 </p>
353
354 <h2>The Compatibility</h2>
355 <p class="default">
356 LinuxSampler is available for the most popular operating
357 systems and already supports a variety of audio and MIDI driver
358 systems on each OS. It does not require any special dedicated
359 device drivers from the sound card manufacturers, so you can
360 also use it with cheap consumer cards. Due to its clean design
361 the sampler can be ported to other operating systems and
362 extended for further driver systems with a minimum of effort.
363 So we're prepared for the future!
364 </p>
365
366 <h2>The Community</h2>
367 <p class="default">
368 You need a helping hand? You certainly get the answers on your
369 personal questions on our
370 <a href="http://bb.linuxsampler.org/">web forum</a>.<br>
371 <br>
372 All applications are under active development. However we all work
373 on this project for fun in our spare time. There are still so many
374 things to do and our hands are limited. So don't hesitate on
375 participating to the project! You don't necessarily need to be a
376 skilled programmer to help the project. Testing the applications,
377 <a href="http://bugs.linuxsampler.org.">reporting bugs</a>, writing
378 documentation, providing artwork, themes for frontends, etc. helps
379 us and all users a lot! Simply subscribe to our
380 <a href="http://lists.sourceforge.net/lists/listinfo/linuxsampler-devel">
381 developers mailing list
382 </a> and we'll of course take you by the hand in case you want to
383 participate with active source code development. Don't be afraid!
384 You have your own ideas and concepts for making the sampler better?
385 Great, share them with us!<br>
386 <br>
387 </p>
388
389 </div>
390 </td></tr></table>
391
392 </div>
393
394 </body>
395 </html>

  ViewVC Help
Powered by ViewVC