/[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 1624 - (show annotations) (download) (as text)
Fri Jan 4 23:29:42 2008 UTC (16 years, 2 months ago) by schoenebeck
File MIME type: text/html
File size: 16825 byte(s)
* Extension and minor fixes of About site

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

  ViewVC Help
Powered by ViewVC