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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1624 - (hide annotations) (download) (as text)
Fri Jan 4 23:29:42 2008 UTC (16 years, 3 months ago) by schoenebeck
File MIME type: text/html
File size: 16825 byte(s)
* Extension and minor fixes of About site

1 senoner 542 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2     <html>
3     <head>
4 senoner 702
5 senoner 542 <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 schoenebeck 1610 <h2>The Project</h2>
126 senoner 542 <p class="default">
127 schoenebeck 1613 The LinuxSampler project was founded with the
128 schoenebeck 1610 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 senoner 542 <br>
144 schoenebeck 1610 <a href="screenshots/ls_0_5_1_console.png">
145     <img src="screenshots/ls_0_5_1_console_preview.png">
146     </a><br>
147 senoner 542 <br>
148 schoenebeck 1610 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 senoner 542 <br>
168 schoenebeck 1610 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 schoenebeck 1612 <a href="screenshots/qs_0_2_1_ubuntu.png">
186 schoenebeck 1610 <img src="screenshots/qs_0_2_1_ubuntu_preview.png">
187     </a><br>
188     <br>
189 schoenebeck 1624 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 schoenebeck 1610 </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 schoenebeck 1624 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 schoenebeck 1610 </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 schoenebeck 1624 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 schoenebeck 1610 </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 schoenebeck 1404 <br>
257 schoenebeck 1610 <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 schoenebeck 1624 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 schoenebeck 1610 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 senoner 542 </p>
280    
281 schoenebeck 1610 <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 schoenebeck 1624 Our frontends support that network interface, which also allows to
291 schoenebeck 1610 control the sampler engine with the GUI frontend(s) remotely from
292     another computer, probably even running a completely different
293 schoenebeck 1624 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 schoenebeck 1610 </p>
306    
307 schoenebeck 1624 <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 schoenebeck 1610 <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 senoner 542 </div>
339     </td></tr></table>
340    
341     </div>
342    
343     </body>
344     </html>

  ViewVC Help
Powered by ViewVC