/[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 1947 - (show annotations) (download) (as text)
Wed Jul 15 09:13:06 2009 UTC (14 years, 8 months ago) by schoenebeck
File MIME type: text/html
File size: 18908 byte(s)
* minor update of donations forms below the menu

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"><img name="LinuxSampler" src="gfx/lsbackground.jpg" alt="LinuxSampler">
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
152 </td><td valign=top width="100%">
153 <div id="contents">
154
155 <h2>The Project</h2>
156 <p class="default">
157 The LinuxSampler project was founded with the
158 goal to produce a free, streaming capable open source pure
159 software audio sampler with professional grade features,
160 comparable to both hardware and commercial Windows/Mac software
161 samplers and to introduce new features not yet available by any
162 other sampler in the world.
163 </p>
164
165 <h2>The Engine</h2>
166 <p class="default">
167 <u><b>LinuxSampler</b></u> was designed very modular, especially
168 (and in contrast to other samplers) it was decoupled from any user
169 interface. LinuxSampler itself usually runs as own process in the
170 background of the computer and usually does not show up anything on
171 the screen, or at most it can be launched to show status
172 informations and debug messages in a console window:<br>
173 <br>
174 <a href="screenshots/ls_0_5_1_console.png">
175 <img src="screenshots/ls_0_5_1_console_preview.png">
176 </a><br>
177 <br>
178 That means LinuxSampler itself is the "engine" of the sampler, it
179 is the software component which performs all the heavy and time
180 critical computational tasks of handling MIDI events, calculating
181 the audio data and sending the final audio data to your sound
182 card(s). We call LinuxSampler the <i>sampler backend</i>.
183 </p>
184
185 <h2>The Face(s)</h2>
186 <p class="default">
187 Obviously you need some way to control the sampler. That's where a
188 2nd application comes into game, which we call a
189 <i>sampler frontend</i> application. A frontend is (usually) a
190 graphical application, visible on the screen, providing the user
191 a set of e.g. menus, buttons, sliders, dials, etc. to allow the
192 user to control the sampler in a convenient way. It merely sends
193 the user requests to the sampler engine (LinuxSampler) and in turn
194 shows the engine's status informations on the screen. A frontend
195 does not perform any signal processing tasks, so you can see it as
196 a "face" of the sampler.<br>
197 <br>
198 For luxury we already provide you two different frontends / "faces"
199 for LinuxSampler:
200 </p>
201 <ul>
202 <li>
203 <u><b>QSampler</b></u> is a light-weight frontend written in
204 C++, using straightforward native graphical controls of the
205 underlying operating system. That way the appearance of
206 QSampler on the screen is very fast and it only consumes very
207 little resources. Due to its utilization of the operating
208 system's common GUI controls, it looks slightly different on
209 every operating system (also dependent of the user's selected
210 theme on his OS):<br>
211 <br>
212 <a href="screenshots/qs_0_2_1_win.jpg">
213 <img src="screenshots/qs_0_2_1_win_preview.jpg">
214 </a>&nbsp;
215 <a href="screenshots/qs_0_2_1_ubuntu.png">
216 <img src="screenshots/qs_0_2_1_ubuntu_preview.png">
217 </a><br>
218 <br>
219 Note however, QSampler does not fully support all features of
220 the sampler engine (LinuxSampler) yet. Most notably the
221 engine's instruments database feature is not yet covered by
222 QSampler. But if you don't need that particular feature,
223 you're certainly fine with QSampler as well.<br>
224 <br>
225 </li>
226
227 <li>
228 <u><b>JSampler</b></u> is a full-fledged frontend for
229 LinuxSampler, written in Java and currently comes in two
230 flavors: <b>JSampler "Classic"</b> offers straightforward GUI
231 controls whereas <b>JSampler "Fantasia"</b> provides a modern
232 skin based user interface:<br>
233 <br>
234 <a href="screenshots/fantasia.png"><img src="screenshots/fantasia-preview.png"></a>
235 <br>
236 JSampler supports all features currently available in the
237 sampler engine (LinuxSampler). Also note that even though
238 JSampler is written in Java and slightly more hungry
239 regarding resources (compared to QSampler), this usually
240 does not have any impact on the audio rendering performance
241 of the sampler, since the engine runs completely independently
242 and with much higher CPU priority than the frontend(s).<br>
243 </li>
244 </ul>
245 <p class="default">
246 It's completely up to you which frontend to use. You could even use
247 both parallel at the same time for the same sampler engine
248 instance, really! ;-) You're concerned that your sampler frontend
249 might waste precious resources of your computer? No problem, just
250 setup the sampler session for your needs and then quit the
251 frontend application. The sampler engine doesn't care! It continues
252 to do its job. You need to change something? Start the frontend
253 again (or another frontend) and you see what you expect to see: the
254 current setup and state of the running sampler engine.
255 </p>
256
257 <h2>The Format</h2>
258 <p class="default">
259 It is planned to support all common sampler formats in
260 LinuxSampler, but at the moment we chose to concentrate on the
261 Gigasampler format, because when we started this project, the
262 Gigasampler format was (in our opinion) the most popular
263 and "best" sampler format in regards of quality and power,
264 especially for the synthesis of natural instruments like pianos,
265 brass and bowed instruments. But we already made good advance in
266 implementing this format, so we are optimistic to start with
267 adding other formats soon. Beside that we also planned to
268 design our own, sophisticated sampler format to introduce a more
269 powerful and more flexible sampler format compared to
270 any sampler format currently available in the world. Be encouraged
271 to share your ideas about such a new format with us!
272 </p>
273
274 <h2>The Editor</h2>
275 <p class="default">
276 <u><b>gigedit</b></u> allows you to edit and create instruments
277 for the Gigasampler format, which can be used with LinuxSampler
278 as well as with Tascam's Gigastudio. Following our line of
279 modularity we also made the instrument editors independent
280 applications. Because let's face it: every sampler format is
281 different, so in our opinion it is better to honor the specific
282 features of one format with its own instrument editor application
283 instead of trying to fiddle everything into one single bloated
284 application. So gigedit is our first editor, dedicated to the .gig
285 format:<br>
286 <br>
287 <a href="screenshots/gigedit_0_0_3.png"><img src="screenshots/gigedit_0_0_3_preview.jpg"></a>
288 <br>
289 You can use gigedit as stand-alone application or in conjunction
290 with LinuxSampler. For the latter case gigedit installs a plugin
291 into the sampler engine, so the engine (and with it the frontends)
292 knows that gigedit actually exists and can handle the .gig format.
293 So even though we decoupled the sampler's components into
294 independent applications, they all work seamlessly together.
295 <a href="http://download.linuxsampler.org/doc/gigedit/quickstart/gigedit_quickstart.html#live_editing">
296 Just press the "Edit" button
297 </a> on a channel strip of a frontend and
298 gigedit will automatically popup on the screen and you're
299 immediately ready to edit your selected instrument, making all your
300 modifications audible in realtime. Even when editing huge
301 instruments of 1GB or more, tweak the instrument with gigedit and
302 immediately hear it while playing on the keyboard at the same time.
303 And the good thing: even with new sampler formats we're going to
304 add soon (and with it new editors), you don't have to remember
305 which instrument you loaded uses which format. Simply click on
306 "Edit" in a frontend and the sampler engine will choose the right
307 instrument editor application for the respective instrument for
308 you.
309 </p>
310
311 <h2>The Technical Interface</h2>
312 <p class="default">
313 As the components of the sampler are independent applications,
314 there must be a way to let the applications communicate with each
315 other. For this LinuxSampler provides a native C++
316 <a href="http://en.wikipedia.org/wiki/Application_programming_interface">API</a>
317 as well as a network interface using an ASCII based protocol which
318 we call "<a href="http://www.linuxsampler.org/api/draft-linuxsampler-protocol.html" title="LinuxSampler Control Protocol">LSCP</a>"
319 for controlling the sampler engine and managing sampler sessions.
320 Our frontends support that network interface, which also allows to
321 control the sampler engine with the GUI frontend(s) remotely from
322 another computer, probably even running a completely different
323 Operating System. And compared to other remote control solutions,
324 the frontend won't feel sluggish, as the frontend is running on
325 your local machine.<br>
326 <br>
327 You can also configure your computer to automatically start the
328 sampler engine and loading your prefered sampler session without
329 any frontend, simply by using a <i>LSCP session file</i>. How do
330 you get such a "LSCP session file"? Both frontends write LSCP
331 session files for you when you request them to save your current
332 sampler session. And as those LSCP session files are ordinary
333 human readable text files, you can adjust them with any text
334 editor if you want.
335 </p>
336
337 <h2>The Compatibility</h2>
338 <p class="default">
339 LinuxSampler is available for the most popular operating
340 systems and already supports a variety of audio and MIDI driver
341 systems on each OS. It does not require any special dedicated
342 device drivers from the sound card manufacturers, so you can
343 also use it with cheap consumer cards. Due to its clean design
344 the sampler can be ported to other operating systems and
345 extended for further driver systems with a minimum of effort.
346 So we're prepared for the future!
347 </p>
348
349 <h2>The Community</h2>
350 <p class="default">
351 You need a helping hand? You certainly get the answers on your
352 personal questions on our
353 <a href="http://bb.linuxsampler.org/">web forum</a>.<br>
354 <br>
355 All applications are under active development. However we all work
356 on this project for fun in our spare time. There are still so many
357 things to do and our hands are limited. So don't hesitate on
358 participating to the project! You don't necessarily need to be a
359 skilled programmer to help the project. Testing the applications,
360 <a href="http://bugs.linuxsampler.org.">reporting bugs</a>, writing
361 documentation, providing artwork, themes for frontends, etc. helps
362 us and all users a lot! Simply subscribe to our
363 <a href="http://lists.sourceforge.net/lists/listinfo/linuxsampler-devel">
364 developers mailing list
365 </a> and we'll of course take you by the hand in case you want to
366 participate with active source code development. Don't be afraid!
367 You have your own ideas and concepts for making the sampler better?
368 Great, share them with us!<br>
369 <br>
370 </p>
371
372 </div>
373 </td></tr></table>
374
375 </div>
376
377 </body>
378 </html>

  ViewVC Help
Powered by ViewVC