/[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 1935 - (show annotations) (download) (as text)
Sun Jul 12 17:35:36 2009 UTC (14 years, 9 months ago) by schoenebeck
File MIME type: text/html
File size: 18421 byte(s)
* added donation / subscription paypal buttons

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

  ViewVC Help
Powered by ViewVC