/[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 3923 - (show annotations) (download) (as text)
Mon Jun 14 11:26:48 2021 UTC (2 years, 10 months ago) by schoenebeck
File MIME type: text/html
File size: 24449 byte(s)
* Dump all Google Ads from the website (i.e. reverts SVN r1973).

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 <table><tr>
150 <td><a href="http://en.wikipedia.org/wiki/Bitcoin"><img src="gfx/logos/bitcoin32.png" alt="Bitcoins"></a></td>
151 <td>Or donate Bitcoins at:</td>
152 </tr></table>
153 <pre class="btcaddr">1Q9CK7xUhMNWryqYTZLbUTXbrjpYYtwvng</pre>
154 <hr>
155 <a href="donations.html">Why donate?</a>
156 </div>
157
158
159 </td><td valign=top width="100%">
160 <div id="contents">
161
162 <h2>The Project</h2>
163 <p class="default">
164 The LinuxSampler project was founded in 2002 with the
165 goal to produce a free, streaming capable open source pure
166 software audio sampler with high stability, efficiency and very
167 low latency, providing professional grade features,
168 comparable to both hardware and commercial Windows/Mac software
169 samplers and to introduce new features not yet available by any
170 other sampler in the world.
171 </p>
172
173 <h2>The Engine</h2>
174 <p class="default">
175 <u><b>LinuxSampler</b></u> was designed very modular, especially
176 (and in contrast to other samplers) it was decoupled from any user
177 interface. LinuxSampler itself usually runs as own process in the
178 background of the computer and usually does not show up anything on
179 the screen, or at most it can be launched to show status
180 informations and debug messages in a console window:<br>
181 <br>
182 <a href="screenshots/ls_0_5_1_console.png">
183 <img src="screenshots/ls_0_5_1_console_preview.png">
184 </a><br>
185 <br>
186 That means LinuxSampler itself is the "engine" of the sampler, it
187 is the software component which performs all the heavy and time
188 critical computational tasks of handling MIDI events, calculating
189 the audio data and sending the final audio data to your sound
190 card(s). We call LinuxSampler the <i>sampler backend</i>.
191 </p>
192
193 <h2>The Face(s)</h2>
194 <p class="default">
195 Obviously you need some way to control the sampler. That's where a
196 2nd application comes into game, which we call a
197 <i>sampler frontend</i> application. A frontend is (usually) a
198 graphical application, visible on the screen, providing the user
199 a set of e.g. menus, buttons, sliders, dials, etc. to allow the
200 user to control the sampler in a convenient way. It merely sends
201 the user requests to the sampler engine (LinuxSampler) and in turn
202 shows the engine's status informations on the screen. A frontend
203 does not perform any signal processing tasks, so you can see it as
204 a "face" of the sampler.<br>
205 <br>
206 For luxury we already provide you two different frontends / "faces"
207 for LinuxSampler:
208 </p>
209 <ul>
210 <li>
211 <u><b>QSampler</b></u> is a light-weight frontend written in
212 C++, using straightforward native graphical controls of the
213 underlying operating system. That way the appearance of
214 QSampler on the screen is very fast and it only consumes very
215 little resources. Due to its utilization of the operating
216 system's common GUI controls, it looks slightly different on
217 every operating system (also dependent of the user's selected
218 theme on his OS):<br>
219 <br>
220 <a href="screenshots/qs_0_2_1_win.jpg">
221 <img src="screenshots/qs_0_2_1_win_preview.jpg">
222 </a>&nbsp;
223 <a href="screenshots/qs_0_2_1_ubuntu.png">
224 <img src="screenshots/qs_0_2_1_ubuntu_preview.png">
225 </a><br>
226 <br>
227 Note however, QSampler does not fully support all features of
228 the sampler engine (LinuxSampler) yet. Most notably the
229 engine's instruments database feature is not yet covered by
230 QSampler. But if you don't need that particular feature,
231 you're certainly fine with QSampler as well.<br>
232 <br>
233 </li>
234
235 <li>
236 <u><b>JSampler</b></u> is a full-fledged frontend for
237 LinuxSampler, written in Java and currently comes in two
238 flavors: <b>JSampler "Classic"</b> offers straightforward GUI
239 controls whereas <b>JSampler "Fantasia"</b> provides a modern
240 skin based user interface:<br>
241 <br>
242 <a href="screenshots/fantasia.png"><img src="screenshots/fantasia-preview.png"></a>
243 <br>
244 JSampler supports all features currently available in the
245 sampler engine (LinuxSampler). Also note that even though
246 JSampler is written in Java and slightly more hungry
247 regarding resources (compared to QSampler), this usually
248 does not have any impact on the audio rendering performance
249 of the sampler, since the engine runs completely independently
250 and with much higher CPU priority than the frontend(s).<br>
251 </li>
252 </ul>
253 <p class="default">
254 It's completely up to you which frontend to use. You could even use
255 both parallel at the same time for the same sampler engine
256 instance, really! ;-) You're concerned that your sampler frontend
257 might waste precious resources of your computer? No problem, just
258 setup the sampler session for your needs and then quit the
259 frontend application. The sampler engine doesn't care! It continues
260 to do its job. You need to change something? Start the frontend
261 again (or another frontend) and you see what you expect to see: the
262 current setup and state of the running sampler engine.
263 </p>
264
265 <h2>Sampler Formats</h2>
266 <p class="default">
267 Virtual instruments (i.e. pianos, drums, orchestra ensembles) based
268 on sampler software are created and distributed as files, which
269 essentially contain recorded audio samples plus so called
270 <i>articulation informations</i>. The latter are a very important
271 factor to make audio samples assemble a realistic sound of i.e.
272 natural instruments. The are defining when and how exactly
273 the individual audio samples shall be played back and modified by
274 the sampler. So a <i>sampler format</i> is made up of two things:
275 </p>
276 <ol class="default">
277 <li>
278 <b>File format:</b> which defines how audio samples and
279 articulation informations are stored in files exactly.
280 </li>
281 <li><b>Synthesis model:</b> which defines what the sampler sampler
282 can do with audio samples, and how the sampler should interpret
283 the articulation informations stored in files.
284 </i>
285 </ol>
286 <p class="default">
287 It is planned to support all common sampler formats in
288 LinuxSampler. At the moment the sampler supports the following
289 three:
290 </p>
291 <ol class="default">
292 <li>
293 <b>GigaStudio/GigaSampler Format:</b>
294 First format ever supported by LinuxSampler and hence probably
295 the most mature option in LinuxSampler right now. When we
296 started to develop LinuxSampler back in 2002, we chose to
297 concentrate on this commercial sampler format first, because at
298 that point it was (in our opinion) the most popular and "best"
299 sampler format in regards of quality and features, especially
300 for the synthesis of natural instruments like pianos, brass and
301 bowed instruments. Some of the best sounding orchestra
302 libraries were made in this format at that time.<br>
303 <br>
304 In contrast to all those commercial samplers
305 out there who claim to support the GigaStudio/GigaSampler format,
306 we invested many years and a lot of effort to reassemble the original
307 sound of this format as exactly as possible, as it was with the
308 original GigaStudio PC software. Other samplers usually provide
309 only raw sample playback for this format and - if at all - only
310 limited support for its articulations and synthesis model.
311 LinuxSampler however is providing i.e. envelopes and filters
312 with very precise characteristics and accuracy of the original
313 ones used in the original GigaStudio software. We even
314 reassembled the "warty" parts of the format, that is strange
315 aspects of the format. All this just to fulfill one goal:
316 playing back your huge collection of high class .gig instruments with
317 LinuxSampler exactly as they sounded like with GigaStudio!
318 And as of to date there is probably no other sampler out there
319 which does that job better.
320 <br><br>
321 </li>
322 <li>
323 <b>SoundFont Format:</b>
324 Being a very popular sampler format, supported by numerous
325 hardware devices and sampler software products for many years,
326 we also added support for the SoundFont format. However, since
327 this format is fairly old and limited we did not spend as much
328 effort on it than on the other formats. So there is currently
329 not full support for all aspects of this format yet. Be invited
330 to help us on finishing support for this format!
331 <br><br>
332 </li>
333 <li>
334 <b>SFZ Format:</b> Not to be interchanged with the
335 <i>SoundFont</i> format! Even though their names suggest them to
336 be similar, and also being initiated by the same company, the SFZ
337 format does not have much in common with the SoundFont format!
338 The SFZ format is a quite new one, an open format that is also
339 used as basis in many commercial sampler products. It has the
340 potential to become a broad standard format among sampler
341 products. It is extensible for custom features, provides
342 articulation information in human-readable text form and samples
343 are usually stored as separate files along to the articulation
344 files. The latter also allows a variety of audio formats to be
345 used and gives sound designers and their customers various
346 advantages to work with.
347 <br><br>
348 Due to its high potential we recently spent a lot of time in
349 supporting this format in LinuxSampler. A lot of this format is
350 <a href="/sfz/">already supported</a> (v1 and v2) in
351 LinuxSampler, also extensions of commercial samplers, and we
352 continue to evolve support for this format.
353 </li>
354 </ol>
355 <p class="default">
356 Along to these formats, we have been thinking about creating our
357 own, new sampler format from scratch, for providing new sampler
358 features currently not available in any sampler yet. However when
359 we started adding support for SFZ, we realized such features should
360 rather be implemented as extension to the SFZ format.
361 </p>
362
363 <h2>Instrument Editors</h2>
364 <p class="default">
365 For creating new virtual instruments and for adjusting your
366 existing ones, you may want to use an instrument editor.
367 LinuxSampler was designed decoupled from instrument editors, but
368 provides extensive support for cooperation with instrument editor
369 applications. Especially for the aspect of being able to edit an
370 instrument while playing it in the sampler, and for making all
371 changes audible immediately and without reloading the sounds into
372 sampler.<br>
373 <br>
374 Currently we implemented the following instrument editor
375 application:<br>
376 <br>
377 <u><b>gigedit</b></u> allows you to edit and create instruments
378 for the GigaStudio/Gigasampler format, which can be used with LinuxSampler
379 as well as with Tascam's original Gigastudio software. Following our line of
380 modularity we also made this instrument editor an independent
381 application. Because let's face it: every sampler format is
382 different, so in our opinion it is better to honor the specific
383 features of one format with its own instrument editor application
384 instead of trying to fiddle everything into one single bloated
385 application. So gigedit is our first editor, dedicated to the .gig
386 format:<br>
387 <br>
388 <a href="screenshots/gigedit_0_0_3.png"><img src="screenshots/gigedit_0_0_3_preview.jpg"></a>
389 <br>
390 You can use gigedit as stand-alone application or in conjunction
391 with LinuxSampler. For the latter case gigedit installs a plugin
392 into the sampler engine, so the engine (and with it the frontends)
393 knows that gigedit actually exists and can handle the .gig format.
394 So even though we decoupled the sampler's components into
395 independent applications, they all work seamlessly together.
396 <a href="http://download.linuxsampler.org/doc/gigedit/quickstart/gigedit_quickstart.html#live_editing">
397 Just press the "Edit" button
398 </a> on a channel strip of a frontend and
399 gigedit will automatically popup on the screen and you're
400 immediately ready to edit your selected instrument, making all your
401 modifications audible in realtime. Even when editing huge
402 instruments of 1GB or more, tweak the instrument with gigedit and
403 immediately hear it while playing on the keyboard at the same time.
404 And the good thing: even with new sampler formats we're going to
405 add soon (and with it new editors), you don't have to remember
406 which instrument you loaded uses which format. Simply click on
407 "Edit" in a frontend and the sampler engine will choose the right
408 instrument editor application for the respective instrument for
409 you.
410 </p>
411
412 <h2>Technical Interfaces</h2>
413 <p class="default">
414 As the components of the sampler are independent applications,
415 there must be a way to let the applications communicate with each
416 other. For this LinuxSampler provides a native C++
417 <a href="http://en.wikipedia.org/wiki/Application_programming_interface">API</a>
418 as well as a network interface using an ASCII based protocol which
419 we call "<a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html" title="LinuxSampler Control Protocol">LSCP</a>"
420 for controlling the sampler engine and managing sampler sessions.
421 Our frontends support that network interface, which also allows to
422 control the sampler engine with the GUI frontend(s) remotely from
423 another computer, probably even running a completely different
424 Operating System. And compared to other remote control solutions,
425 the frontend won't feel sluggish, as the frontend is running on
426 your local machine.<br>
427 <br>
428 You can also configure your computer to automatically start the
429 sampler engine and loading your prefered sampler session without
430 any frontend, simply by using a <i>LSCP session file</i>. How do
431 you get such a "LSCP session file"? Both frontends write LSCP
432 session files for you when you request them to save your current
433 sampler session. And as those LSCP session files are ordinary
434 human readable text files, you can adjust them with any text
435 editor if you want.
436 </p>
437
438 <h2>Compatibility &amp; Cross Platform</h2>
439 <p class="default">
440 LinuxSampler is available for the most popular operating
441 systems and already supports a variety of audio and MIDI driver
442 systems on each OS. It does not require any special dedicated
443 device drivers from the sound card manufacturers, so you can
444 also use it with cheap consumer cards. Due to its clean design
445 the sampler can be ported to other operating systems and
446 extended for further driver systems with a minimum of effort.
447 So we're prepared for the future!
448 </p>
449
450 <h2>Sequencer &amp; DAW Plugin Support</h2>
451 <p class="default">
452 The sampler can be run stand alone as well as host plugin in popular
453 sequencer or digital audio workstations like Cubase, Logic, Ardour,
454 QTractor, Reaper and many more. At the moment the sampler supports
455 the host plugin formats VSTi (v2), AudiUnit (AU), DSSI and LV2.<br>
456 <br>
457 You can also load effect plugins into the sampler, for them being
458 used on parts or as master effects. Currently only the LADSPA plugin
459 format is supported for sampler internal effects.
460 </p>
461
462 <h2>Community</h2>
463 <p class="default">
464 You need a helping hand? You certainly get the answers on your
465 personal questions on our
466 <a href="http://bb.linuxsampler.org/">web forum</a>.<br>
467 <br>
468 All applications are under active development. However we all work
469 on this project for fun in our spare time. There are still so many
470 things to do and our hands are limited. So don't hesitate on
471 participating to the project! You don't necessarily need to be a
472 skilled programmer to help the project. Testing the applications,
473 <a href="http://bugs.linuxsampler.org.">reporting bugs</a>, writing
474 documentation, providing artwork, themes for frontends, etc. helps
475 us and all users a lot! Simply subscribe to our
476 <a href="http://lists.sourceforge.net/lists/listinfo/linuxsampler-devel">
477 developers mailing list
478 </a> and we'll of course take you by the hand in case you want to
479 participate with active source code development. Don't be afraid!
480 You have your own ideas and concepts for making the sampler better?
481 Great, share them with us!<br>
482 <br>
483 <br>
484 </p>
485
486 </div>
487 </td></tr></table>
488
489 </div>
490
491 </body>
492 </html>

  ViewVC Help
Powered by ViewVC