1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
2 |
<html> |
3 |
<head> |
4 |
<meta content="text/html; charset=ISO-8859-1" |
5 |
http-equiv="content-type"> |
6 |
<title>LinuxSampler For Windows</title> |
7 |
<link rel="shortcut icon" href="http://download.linuxsampler.org/favicon.ico" type="image/x-icon"> |
8 |
<link rel="stylesheet" type="text/css" href="libgig/css/content.css" title="content" media="all"> |
9 |
</head> |
10 |
<body> |
11 |
<h2><center>LinuxSampler for Windows <img src="gfx/logos/windows.png"> HOWTO by Benno Senoner </center></h2> |
12 |
<br> |
13 |
<center>December 18th, 2007</center><br> |
14 |
<div style="background-color: #F4F4FF; margin: 1em 3em 1em 3em; padding: 1em 1em 1em 2.2em;"> |
15 |
<a href="#intro">1. Introduction</a><br> |
16 |
<a href="#requirements">2. Requirements</a><br> |
17 |
3. Installation ...<br> |
18 |
<a href="#install_w_inet"> 3.a with Internet Connection</a><br> |
19 |
<a href="#install_wo_inet"> 3.b without Internet</a><br> |
20 |
<a href="#using">4. Using the Applications</a><br> |
21 |
<a href="#setup_midi"> 4.1 Setting up MIDI Input</a><br> |
22 |
<a href="#setup_audio"> 4.2 Setting up Audio Output</a><br> |
23 |
<a href="#load_samples"> 4.3 Loading Samples</a><br> |
24 |
<a href="#save_session"> 4.4 Saving a Sampler Session</a><br> |
25 |
<a href="#sequencer_routing"> 4.5 Routing LinuxSampler Outs Into Sequencer</a><br> |
26 |
<a href="#houston">5. Installation Troubleshooting</a><br> |
27 |
<a href="#docs">6. Detailed Documentation</a><br> |
28 |
<a href="#bugs">7. Bugs, Problems and Feature Requests</a><br> |
29 |
<a href="#contact">8. Contact</a><br> |
30 |
</div> |
31 |
|
32 |
<a name="intro"></a> |
33 |
<h3>1. Introduction</h3> |
34 |
The LinuxSampler development team is happy to announce that |
35 |
LinuxSampler, the most advanced free, open source sampler finally runs on |
36 |
MS Windows too. More information will be added here soon, so check back frequently.<br> |
37 |
<br> |
38 |
For now the sampler supports the Windows Multimedia Extensions System (MME) |
39 |
for MIDI input and ASIO for audio out. This means it currently runs only |
40 |
as a standalone application. A VST interface will follow soon, along with |
41 |
a network module to run multiple sampler slaves distributed on Windows or |
42 |
Linux machines (Linux provides better performance) all controlled from a |
43 |
Windows box i.e. running the VST sequencer.<br> |
44 |
<br> |
45 |
LinuxSampler is implemented as a client/server application. This means |
46 |
the sampling engine (the server / backend) runs |
47 |
independently from the GUI (the client / frontend). Sampling engine and |
48 |
client can be run on the same box or on different machines too, connected |
49 |
over the network.<br> |
50 |
<br> |
51 |
The MS Windows version provides all the features of the Linux version |
52 |
(except of the instruments DB feature yet) since it is built from the |
53 |
same source code base. This means when new features will come out the |
54 |
Windows version will usually provide the same feature set as the Linux |
55 |
version. This was made possible by the very modular design of both |
56 |
low level, operating system functions and flexible audio / MIDI driver |
57 |
system.<br> |
58 |
<br> |
59 |
The Windows version comes as a self extracting .exe file which will |
60 |
install all the necessary modules to run both the server ( linuxsampler.exe ) |
61 |
and the GUI client. It installs 2 GUI clients: |
62 |
<ul> |
63 |
<li>One is <b>QSampler</b>, a light-weight frontend based on the |
64 |
cross-platform Qt4 GUI toolkit with native OS GUI widgets</li> |
65 |
<li>Another is <b>JSampler "Fantasia"</b>, a Java based GUI client called, |
66 |
providing a modern skin-based user interface</li> |
67 |
</ul> |
68 |
At the moment JSampler is more advanced than QSampler as it implements all |
69 |
the functionality present in the LinuxSampler engine. Due to the Java |
70 |
virtual machine however it occupies a bit more RAM than the |
71 |
QSsampler GUI (around 30MB or so) and takes a bit longer for startup, |
72 |
but on a 1GB+ RAM box the difference should be negligible. |
73 |
|
74 |
<a name="requirements"></a> |
75 |
<h3>2. Requirements</h3> |
76 |
<ul> |
77 |
<li>Intel Pentium4 or recent AMD processor (use |
78 |
<a href="#old_cpu_workaround">this workaround for older processors</a>) |
79 |
<li>Windows 2000, ME, XP or Vista</li> |
80 |
<li><a href="http://www.gtk.org/">GTK+</a> (<a href="http://downloads.sourceforge.net/gladewin32/gtk-2.10.11-win32-1.exe?modtime=1175123376&big_mirror=0">version 2.10.11</a>)</li> |
81 |
<li><a href="http://www.gtkmm.org/">gtkmm</a> (<a href="http://ftp.gnome.org/pub/gnome/binaries/win32/gtkmm/2.10/gtkmm-win32-runtime-2.10.11-1.exe">version 2.10.11</a>)</li> |
82 |
<li><a href="http://en.wikipedia.org/wiki/Java_(Sun)">Java Runtime Environment</a> (<a href="http://www.java.com/getjava/">version 6</a>)</a></li> |
83 |
<li>sound card with <a href="http://en.wikipedia.org/wiki/Audio_Stream_Input/Output">ASIO</a> driver</li> |
84 |
</ul> |
85 |
<a name="asio_tip"></a> |
86 |
<b>Tip:</b> For consumer audio cards which do not come with their own ASIO |
87 |
drivers you can install <a href="http://www.asio4all.com/">ASIO4ALL</a> to be |
88 |
able to use LinuxSampler with your soundcard. |
89 |
We recommend to use version 2.7, perhaps on Vista 2.8beta1 works better but |
90 |
we did not perform tests on Vista so we cannot tell it. Please let us know |
91 |
about your results so we can share them here! |
92 |
|
93 |
<a name="install_w_inet"></a> |
94 |
<h3>3.a Installation with Internet Connection</h3> |
95 |
Simply download the latest version of the LinuxSampler Windows installer |
96 |
from the <a href="http://www.linuxsampler.org/downloads.html">LinuxSampler |
97 |
Download Page</a>, execute the installer and follow the instructions. It will |
98 |
automatically detect if the required software components are already installed. |
99 |
If not, it will download them from the internet and install them on your |
100 |
computer. |
101 |
|
102 |
<a name="install_wo_inet"></a> |
103 |
<h3>3.b Installation without Internet</h3> |
104 |
First download the required components with a machine which has connection to |
105 |
the internet: |
106 |
<ul> |
107 |
<li><a href="http://downloads.sourceforge.net/gladewin32/gtk-2.10.11-win32-1.exe?modtime=1175123376&big_mirror=0">gtk+ 2.10.11</a></li> |
108 |
<li><a href="http://ftp.gnome.org/pub/gnome/binaries/win32/gtkmm/2.10/gtkmm-win32-runtime-2.10.11-1.exe">gtkmm 2.10.11</a></li> |
109 |
<li><a href="http://www.java.com/getjava/">Java Runtime Environment 6</a></li> |
110 |
<li>and of course the latest <a href="http://www.linuxsampler.org/downloads.html"> |
111 |
LinuxSampler Windows installer</a></li> |
112 |
</ul> |
113 |
Transfer the downloaded files to the computer where you want to install |
114 |
LinuxSampler and install them in the following order: |
115 |
<ol> |
116 |
<li>gtk-2.10.11-win32-1.exe</li> |
117 |
<li>gtkmm-win32-runtime-2.10.11-1.exe</li> |
118 |
<li>jre-6u2-windows-i586-p.exe</li> |
119 |
<li>linuxsampler_20071207_setup.exe</li> |
120 |
</ol> |
121 |
The order is important, since the components depend on each other and would |
122 |
otherwise try to download the missing component from the internet. |
123 |
|
124 |
<a name="using"></a> |
125 |
<h3>4. Using the Applications</h3> |
126 |
Now that we installed everything, let's get wet and start the applications: |
127 |
<ol> |
128 |
<li>First start the LinuxSampler backend: Click on <i>"Start" -> |
129 |
"LinuxSampler" -> "LinuxSampler 0.5.1 (backend)"</i>. A black console |
130 |
window should immediately popup. It does what you think it does: |
131 |
nothing ... yet ... because this is "just" the raw sampler, without a |
132 |
user interface.</li> |
133 |
<li>Now start a "frontend" application to actually control the previously |
134 |
started sampler. For beginners and / or unpatient people, we recommend |
135 |
you to use JSampler: Click on <i>"Start" -> "LinuxSampler" -> |
136 |
"JSampler 'Fantasia' 0.8a (frontend)"</i>. This usually takes about |
137 |
20 seconds or so until the application finally appears on the |
138 |
screens.</li> |
139 |
</ol> |
140 |
</div> |
141 |
|
142 |
<a name="setup_midi"></a> |
143 |
<h3>4.1 Setting up MIDI Input</h3> |
144 |
Once the GUI opens, click on the left round button in the MIDI devices |
145 |
tab. |
146 |
At this point a window will open where you can create a new MIDI device. |
147 |
Press Create. The window will close and the MIDI device will be created. |
148 |
(MIDI Device 0 MME). |
149 |
Now click on the right arrow which points downwards. |
150 |
You can see that a MIDI device with a single Port (Port 0) was created. |
151 |
Under Windows MME LinuxSampler always creates MIDI devices which are |
152 |
connected to a single MME port. |
153 |
To select the MIDI input port you must click on the field located on |
154 |
the left of PORT. |
155 |
A combobox pops-up where you can select the Windows MIDI port.<br> |
156 |
<br> |
157 |
You can create an arbitrary number of MIDI input devices by repeating |
158 |
the procedure above. |
159 |
Each MIDI input device is connected to a single Windows MME MIDI port. |
160 |
This means LinuxSampler has no limitation in terms of number of MIDI |
161 |
ports. |
162 |
Each MIDI device can be routed to arbitrary sampler channels. |
163 |
|
164 |
<a name="setup_audio"></a> |
165 |
<h3>4.2 Setting up Audio Output</h3> |
166 |
LinuxSampler currently only supports the ASIO driver model for audio output |
167 |
on Windows. ASIO drivers ensure reliable low-latency operation and are |
168 |
virtually available for any soundcard (see <a href="#asio_tip"> |
169 |
ASIO requirements tip</a>).<br> |
170 |
<br> |
171 |
Click on the left round button in the Audio Devices tab. |
172 |
At this point a window will open where you can create a new MIDI device. |
173 |
When creating the Audio device you can set several parameters: |
174 |
<ul> |
175 |
<li><b>CARD</b> : The name of the soundcard, in case you have multiple cards |
176 |
installed. It will show the default value (first card found).</li> |
177 |
<li><b>CHANNELS</b> : Number of audio output channels, can range from 1 to |
178 |
maximum number of channels your soundcard supports. We recommend to |
179 |
leave the default value which is the maximum number of channels your |
180 |
soundcard supports.</li> |
181 |
<li><b>FRAGMENTSIZE</b> : ASIO buffer size in samples. The card's default |
182 |
value is shown. If you experience clicks and pops during audio |
183 |
playback then initialize the audio output device with bigger values. |
184 |
(better if it's always a power of 2: e.g. 256, 512, 1024)</li> |
185 |
<li><b>SAMPLERATE</b> : Sets the samplerate. The default value is shown.<br> |
186 |
</ul> |
187 |
Now Press "Create". The window will close and the Audio device will be |
188 |
created: "AUDIO DEVICE 0 (ASIO)" appears. |
189 |
|
190 |
<a name="load_samples"></a> |
191 |
<h3>4.3 Loading Samples</h3> |
192 |
In the middle of the screen below the volume slider, you see the sampler |
193 |
channel strip pane. press on the round button located on the left. |
194 |
This will create a new sampler channel. Click on "Load Instrument". |
195 |
This opens a dialog which allows you to select an instrument to be |
196 |
loaded in the sampler channel |
197 |
|
198 |
(for information on how to use "orchestras" <a |
199 |
href="http://www.linuxsampler.org/jsampler/manual/html/jsampler.html#USING_ORCHESTRAS">click |
200 |
here</a>, but note: orchestras, a.k.a "instruments database" is not yet supported in this |
201 |
first Windows version of LinuxSampler, but will certainly be on the next Windows release). |
202 |
|
203 |
On the row "Select instrument from file" click on the orange icon |
204 |
located on the right side. This opens a file dialog which allows you to |
205 |
select a sample to be loaded |
206 |
(currently only the GIG format is supported). |
207 |
Select the sample to be loaded and then click on "Open". |
208 |
At this point the fields Instrument file shows the filename. |
209 |
You can click on the Instrument index and select the specific |
210 |
instrument contained in the instrument file. Now press "OK".<br> |
211 |
<br> |
212 |
While it loads you see: "Loading" .. "90%" .. "100%" <br> |
213 |
<br> |
214 |
Once loaded, you see the Instrument's name: i.e. "FreePiano"<br> |
215 |
<br> |
216 |
On the left side of the sampler channel click on the arrow below |
217 |
"Options". |
218 |
This pane permits to set MIDI input device, port and channel and oudio |
219 |
output channel. |
220 |
Notice that under Windows MME the Port value is always 0. |
221 |
So the only values you can change is "MIDI device" (normally 0 if you |
222 |
created only a single |
223 |
MIDI input device) and the MIDI channel (from 1 to 16). |
224 |
|
225 |
<a name="save_session"></a> |
226 |
<h3>4.4 Saving a Sampler Session</h3> |
227 |
Click on the 3rd icon from the left on the row where you see the round |
228 |
icon with the LinuxSampler "S"-shape logo. |
229 |
Now select the directory where you want to save the file to (extension |
230 |
.lscp = <i>Linux Sampler Control Protocol</i>). |
231 |
Enter the name and press save (add .lscp at end of file otherwise you |
232 |
will not see it in the file-open dialog later, when you want to load it again).<br> |
233 |
<br> |
234 |
Next time you can load a sampler session by clicking on the second icon |
235 |
from the left, then select a .lscp file in the file dialog and press "Open". |
236 |
This will automatically set up the MIDI devices and audio devices, |
237 |
create the sampler channels and load all the samples that were previously |
238 |
loaded by you in the saved sampler session. |
239 |
|
240 |
<a name="sequencer_routing"></a> |
241 |
<h3>4.5 Routing LinuxSampler Outs Into Sequencer</h3> |
242 |
LinuxSampler currently lacks a VST interface so the only way to route LinuxSampler's outs into a sequencer |
243 |
are either by using physical cables or internal routing via ASIO. Some audio cards offer this feature. |
244 |
<br> |
245 |
The <a href="http://www.reaper.fm">Reaper</A> sequencer allows ASIO routing by implementing a virtual |
246 |
ASIO based driver independently from the soundcard type (ReaRoute). Basically in LinuxSampler you select the ReaRoute as ASIO output driver which |
247 |
appear as input ports in Reaper. Coupled with the MIDI controllable FX sends in LinuxSampler you can use |
248 |
Reaper's FX egine to add reverb, chorus etc to LinuxSampler instruments, fully MIDI controllable, similar to |
249 |
other MIDI based modules. |
250 |
<br> |
251 |
Our forum user moonskin (thanks Graham!) has described the steps needed to perform in order to set up the routing. |
252 |
<a href="http://bb.linuxsampler.org/viewtopic.php?f=6&t=111&sid=d745353791f6cb1ef46946af4168aada&start=10#p944"> |
253 |
See here</a> |
254 |
|
255 |
|
256 |
<a name="houston"></a> |
257 |
<h3>5. Installation Troubleshooting</h3> |
258 |
<ul> |
259 |
<li> |
260 |
<div style="background-color: #FFF2F2;"> |
261 |
<u>Problem:</u> The LinuxSampler backend application |
262 |
(<i>linuxsampler.exe</i>) fails to start with an error message that |
263 |
claims that a DLL file is missing (e.g. <i>libatkmm-1.6-1.dll</i>) |
264 |
</div> |
265 |
<div style="background-color: #F2FFF2;"> |
266 |
<u>Reason / Solution:</u> |
267 |
It could happen that due to previous installations of Gtk+ and gtkmm |
268 |
DLLs even after deinstallation leave some stale keys in the windows |
269 |
registry which could fool the installer into believing that the needed |
270 |
DLLs are already installed therefore skipping its installation which |
271 |
will cause the sampler not being able to start due to the missing |
272 |
DLLs. We recommend in this case to install gtk+ and gtkmm manually as |
273 |
described above in "<a href="#install_wo_inet">Installation without |
274 |
Internet</a>". Just install those mentioned Gtk+ and gtkmm versions |
275 |
and then LinuxSampler should work correctly. |
276 |
</div> |
277 |
</li> |
278 |
<li> |
279 |
<div style="background-color: #FFF2F2;"> |
280 |
<u>Problem:</u> The LinuxSampler backend application |
281 |
(<i>linuxsampler.exe</i>) fails to start with the error message |
282 |
"<i>The application failed to initialize properly (0xc000001d). Click |
283 |
on OK to terminate the application.</i>" |
284 |
</div> |
285 |
<div style="background-color: #F2FFF2;"> |
286 |
<u>Reason / Solution:</u><a name="old_cpu_workaround"></a> |
287 |
This first Windows release of LinuxSampler requires at least an Intel |
288 |
Pentium4 processor or a recent AMD processor. If you have an older |
289 |
processor and get the error message from above, you can use the |
290 |
following workaround for now: |
291 |
<ol> |
292 |
<li>Download and extract |
293 |
<a href="http://download.linuxsampler.org/dev/win32_probs/ls686_20071207.zip"> |
294 |
these replacement binaries. |
295 |
</a> |
296 |
</li> |
297 |
<li>Copy the 3 binaries manually in your LinuxSampler installation |
298 |
directory (default installation directory: |
299 |
"C:\Program Files\LinuxSampler"), that is overwrite the existing |
300 |
binaries in the LS installation directory with the 3 ones from the |
301 |
zip file. |
302 |
</li> |
303 |
</ol> |
304 |
Use this workaround only if you got the mentioned error message, |
305 |
because the replacement binaries will otherwise decrease runtime |
306 |
efficiency! This is of course just a temporary workaround. We'll |
307 |
address this issue with the next release of LinuxSampler (see also |
308 |
<a href="https://bugs.linuxsampler.org/cgi-bin/show_bug.cgi?id=67"> |
309 |
bug report #67</a>). |
310 |
</div> |
311 |
</li> |
312 |
</ul> |
313 |
|
314 |
<a name="docs"></a> |
315 |
<h3>6. Detailed Documentation</h3> |
316 |
You find more detailed documentation about our software, i.e. about JSampler |
317 |
or gigedit on our official <a href="http://linuxsampler.org/documentation.html"> |
318 |
LinuxSampler documentation site</a>. |
319 |
|
320 |
<a name="bugs"></a> |
321 |
<h3>7. Bugs, Problems and Feature Requests</h3> |
322 |
Our Forum is a good place to ask for help:<br> |
323 |
<br> |
324 |
<a href="http://bb.linuxsampler.org">https://bb.linuxsampler.org</a><br> |
325 |
<br> |
326 |
We have a dedicated forum section for |
327 |
newbies and support.<br> |
328 |
<br> |
329 |
Since the Windows port of LinuxSampler is very young, there could be several |
330 |
bugs which we hope to root out soon. |
331 |
Please report them using our bug tracking system:<br> |
332 |
<br> |
333 |
<a href="http://bugs.linuxsampler.org/">http://bugs.linuxsampler.org/</a><br> |
334 |
<br> |
335 |
Some bugs and problems I discovered so far: |
336 |
<ul> |
337 |
<li>when adding a channel there noises could occur while playing on other |
338 |
channels</li> |
339 |
<li>if you overload the sampler (CPU overload or disk overload) it |
340 |
produces noises</li> |
341 |
<li>when editing an instrument using gigedit, after saving it, it could |
342 |
happen that LinuxSampler does not accept commands from the GUI anymore. |
343 |
if this happens close the GUI and the LinuxSampler console window and |
344 |
restart both.</li> |
345 |
</ul> |
346 |
|
347 |
<a name="contact"></a> |
348 |
<h3>8. Contact</h3> |
349 |
If you have questions or want to help us to improve the sampler, |
350 |
subscribe to the <a href="http://www.linuxsampler.org/developers.html"> |
351 |
LinuxSampler Developer's mailing list</a>. Alternatively, since I did most |
352 |
of of the Windows porting, you can write me (Benno) directly about Windows |
353 |
related issues. You can find my email address here:<br> |
354 |
<br> |
355 |
<a href="http://www.linuxsampler.org/developers.html">http://www.linuxsampler.org/developers.html</a> |
356 |
<br><br> |
357 |
That's it, enjoy!<br> |
358 |
<br> |
359 |
|
360 |
</body> |
361 |
</html> |