10 |
<body> |
<body> |
11 |
<h2><center>LinuxSampler for Windows <img src="gfx/logos/windows.png"> HOWTO by Benno Senoner </center></h2> |
<h2><center>LinuxSampler for Windows <img src="gfx/logos/windows.png"> HOWTO by Benno Senoner </center></h2> |
12 |
<br> |
<br> |
13 |
<center>December 18th, 2007</center><br> |
<center>August 14, 2009</center><br> |
14 |
<div style="background-color: #F4F4FF; margin: 1em 3em 1em 3em; padding: 1em 1em 1em 2.2em;"> |
<div style="background-color: #F4F4FF; margin: 1em 3em 1em 3em; padding: 1em 1em 1em 2.2em;"> |
15 |
<a href="#intro">1. Introduction</a><br> |
<a href="#intro">1. Introduction</a><br> |
16 |
<a href="#requirements">2. Requirements</a><br> |
<a href="#requirements">2. Requirements</a><br> |
18 |
<a href="#install_w_inet"> 3.a with Internet Connection</a><br> |
<a href="#install_w_inet"> 3.a with Internet Connection</a><br> |
19 |
<a href="#install_wo_inet"> 3.b without Internet</a><br> |
<a href="#install_wo_inet"> 3.b without Internet</a><br> |
20 |
<a href="#using">4. Using the Applications</a><br> |
<a href="#using">4. Using the Applications</a><br> |
21 |
<a href="#setup_midi"> 4.1 Setting up MIDI Input</a><br> |
<a href="#using_vst"> 4.1  VST plugin Mode</a><br> |
22 |
<a href="#setup_audio"> 4.2 Setting up Audio Output</a><br> |
<a href="#using_standalone"> 4.2  Standalone Mode</a><br> |
23 |
|
<a href="#setup_midi"> 4.2.1 Setting up MIDI Input</a><br> |
24 |
|
<a href="#setup_audio"> 4.2.2 Setting up Audio Output</a><br> |
25 |
<a href="#load_samples"> 4.3 Loading Samples</a><br> |
<a href="#load_samples"> 4.3 Loading Samples</a><br> |
26 |
<a href="#save_session"> 4.4 Saving a Sampler Session</a><br> |
<a href="#save_session"> 4.4 Saving a Sampler Session</a><br> |
27 |
<a href="#sequencer_routing"> 4.5 Routing LinuxSampler Outs Into Sequencer</a><br> |
<a href="#sequencer_routing"> 4.5 Routing LinuxSampler Outs Into Sequencer</a><br> |
51 |
LinuxSampler, the most advanced free, open source sampler finally runs on |
LinuxSampler, the most advanced free, open source sampler finally runs on |
52 |
MS Windows too. More information will be added here soon, so check back frequently.<br> |
MS Windows too. More information will be added here soon, so check back frequently.<br> |
53 |
<br> |
<br> |
54 |
For now the sampler supports the Windows Multimedia Extensions System (MME) |
|
55 |
for MIDI input and ASIO for audio out. This means it currently runs only |
The sampler can work in standalone mode or as a VSTi plugin. |
56 |
as a standalone application. A VST interface will follow soon, along with |
In standalone mode it uses the Windows Multimedia Extensions System (MME) |
57 |
a network module to run multiple sampler slaves distributed on Windows or |
for MIDI input and ASIO for audio out. |
58 |
|
In VST mode it it can be loaded in any VST compatible sequencer. It uses intelligent |
59 |
|
resource sharing where a single LinuxSampler engine can serve multiple VST instance offering |
60 |
|
maximum performance and better memory utilization. |
61 |
|
The VST plugin provides user definable effect sends which can be MIDI controlled and routed |
62 |
|
to any LinuxSampler's VST audio out channels. That way you can use the sequencer's internal |
63 |
|
FXes or VST effects to ie. add reverb, chorus, delay and other kind of effects which are all |
64 |
|
MIDI controllable in real time. For example one can use a large General MIDI sample set and |
65 |
|
for faithful playback of GM MIDI files including effects. |
66 |
|
Planned additions are network module to run multiple sampler slaves distributed on Windows or |
67 |
Linux machines (Linux provides better performance) all controlled from a |
Linux machines (Linux provides better performance) all controlled from a |
68 |
Windows box i.e. running the VST sequencer.<br> |
Windows box i.e. running the VST sequencer.<br> |
69 |
<br> |
<br> |
74 |
over the network.<br> |
over the network.<br> |
75 |
<br> |
<br> |
76 |
The MS Windows version provides all the features of the Linux version |
The MS Windows version provides all the features of the Linux version |
77 |
(except of the instruments DB feature yet) since it is built from the |
since it is built from the same source code base. This means when new features will come out the |
|
same source code base. This means when new features will come out the |
|
78 |
Windows version will usually provide the same feature set as the Linux |
Windows version will usually provide the same feature set as the Linux |
79 |
version. This was made possible by the very modular design of both |
version. This was made possible by the very modular design of both |
80 |
low level, operating system functions and flexible audio / MIDI driver |
low level, operating system functions and flexible audio / MIDI driver |
82 |
<br> |
<br> |
83 |
The Windows version comes as a self extracting .exe file which will |
The Windows version comes as a self extracting .exe file which will |
84 |
install all the necessary modules to run both the server ( linuxsampler.exe ) |
install all the necessary modules to run both the server ( linuxsampler.exe ) |
85 |
and the GUI client. It installs 2 GUI clients: |
and the GUI client. In addition it installs the VST plugin ( LinuxSampler.dll ) |
86 |
|
in the default VST path (which usually is C:\Program Files\Steinberg\VstPlugins ). |
87 |
|
<br> |
88 |
|
LinuxSampler provides 2 GUI clients: |
89 |
<ul> |
<ul> |
90 |
<li>One is <b>QSampler</b>, a light-weight frontend based on the |
<li>One is <b>QSampler</b>, a light-weight frontend based on the |
91 |
cross-platform Qt4 GUI toolkit with native OS GUI widgets</li> |
cross-platform Qt4 GUI toolkit with native OS GUI widgets</li> |
101 |
<a name="requirements"></a> |
<a name="requirements"></a> |
102 |
<h3>2. Requirements</h3> |
<h3>2. Requirements</h3> |
103 |
<ul> |
<ul> |
104 |
<li>Intel Pentium4 or recent AMD processor (use |
<li>Modern Intel Pentium or recent AMD processor |
105 |
<a href="#old_cpu_workaround">this workaround for older processors</a>) |
<li>Windows 2000, ME, XP, Vista, Windows 7</li> |
|
<li>Windows 2000, ME, XP or Vista</li> |
|
|
<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> |
|
|
<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> |
|
106 |
<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> |
<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> |
107 |
<li>sound card with <a href="http://en.wikipedia.org/wiki/Audio_Stream_Input/Output">ASIO</a> driver</li> |
<li>sound card with <a href="http://en.wikipedia.org/wiki/Audio_Stream_Input/Output">ASIO</a> driver</li> |
108 |
</ul> |
</ul> |
128 |
First download the required components with a machine which has connection to |
First download the required components with a machine which has connection to |
129 |
the internet: |
the internet: |
130 |
<ul> |
<ul> |
|
<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> |
|
|
<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> |
|
131 |
<li><a href="http://www.java.com/getjava/">Java Runtime Environment 6</a></li> |
<li><a href="http://www.java.com/getjava/">Java Runtime Environment 6</a></li> |
132 |
<li>and of course the latest <a href="http://www.linuxsampler.org/downloads.html"> |
<li>and of course the latest <a href="http://www.linuxsampler.org/downloads.html"> |
133 |
LinuxSampler Windows installer</a></li> |
LinuxSampler Windows installer</a></li> |
135 |
Transfer the downloaded files to the computer where you want to install |
Transfer the downloaded files to the computer where you want to install |
136 |
LinuxSampler and install them in the following order: |
LinuxSampler and install them in the following order: |
137 |
<ol> |
<ol> |
138 |
<li>gtk-2.10.11-win32-1.exe</li> |
<li>the JAVA runtime environment</li> |
139 |
<li>gtkmm-win32-runtime-2.10.11-1.exe</li> |
<li>linuxsampler setup EXE file</li> |
|
<li>jre-6u2-windows-i586-p.exe</li> |
|
|
<li>linuxsampler_20071207_setup.exe</li> |
|
140 |
</ol> |
</ol> |
141 |
The order is important, since the components depend on each other and would |
The order is important, since the components depend on each other and would |
142 |
otherwise try to download the missing component from the internet. |
otherwise try to download the missing component from the internet. |
144 |
<a name="using"></a> |
<a name="using"></a> |
145 |
<h3>4. Using the Applications</h3> |
<h3>4. Using the Applications</h3> |
146 |
Now that we installed everything, let's get wet and start the applications: |
Now that we installed everything, let's get wet and start the applications: |
147 |
|
<a name="using_vst"></a> |
148 |
|
<h3>4.1 VST plugin Mode</h3> |
149 |
<ol> |
<ol> |
150 |
<li>First start the LinuxSampler backend: Click on <i>"Start" -> |
<li>Figure out where your default VST plugin path resides. The installer looks at the registry key Software\VST\VSTPluginsPath and if this key does not exist then it uses the default path C:\Program Files\Steinberg\VstPlugins. In this directory you should find a file LinuxSampler.dll which is the LinuxSampler VST plugin.</li> |
151 |
"LinuxSampler" -> "LinuxSampler 0.5.1 (backend)"</i>. A black console |
<li>Add the path to your sequencer's VST paths and rescan the plugin list (in some cases restarting the sequencer app is probably better). LinuxSampler should now appear in the list of your plugins.</li> |
152 |
|
<li>Load the LinuxSampler VST plugin into the sequencer. After a short delay the Fantasia LinuxSampler GUI should appear and you are ready to go. Please skip to the <a href="#load_samples">Loading Samples</a> section. |
153 |
|
</ol> |
154 |
|
<B>Important:</B> don't start the LinuxSampler standalone backend when using the VST plugin or don't set up MIDI and Audio ports in the GUI (The VST plugin does it automatically), otherwise it not work correctly. |
155 |
|
<a name="using_standalone"></a> |
156 |
|
<h3>4.2 Standalone Mode</h3> |
157 |
|
<ul style="list-style-type: none;"> |
158 |
|
<li>1. First start the LinuxSampler backend: Click on <i>"Start" -> |
159 |
|
"LinuxSampler" -> "LinuxSampler (backend)"</i>. A black console |
160 |
window should immediately popup. It does what you think it does: |
window should immediately popup. It does what you think it does: |
161 |
nothing ... yet ... because this is "just" the raw sampler, without a |
nothing ... yet ... because this is "just" the raw sampler, without a |
162 |
user interface.</li> |
user interface.</li> |
163 |
<li>Now start a "frontend" application to actually control the previously |
<li>2. Now start a "frontend" application to actually control the previously |
164 |
started sampler. For beginners and / or unpatient people, we recommend |
started sampler. For beginners and / or unpatient people, we recommend |
165 |
you to use JSampler: Click on <i>"Start" -> "LinuxSampler" -> |
you to use JSampler: Click on <i>"Start" -> "LinuxSampler" -> |
166 |
"JSampler 'Fantasia' 0.8a (frontend)"</i>. This usually takes about |
"JSampler 'Fantasia' (frontend)"</i>. This usually takes about |
167 |
20 seconds or so until the application finally appears on the |
20 seconds or so until the application finally appears on the |
168 |
screens.</li> |
screens.</li> |
169 |
</ol> |
<li> |
|
</div> |
|
|
|
|
170 |
<a name="setup_midi"></a> |
<a name="setup_midi"></a> |
171 |
<h3>4.1 Setting up MIDI Input</h3> |
<h3>4.2.1 Setting up MIDI Input</h3> |
172 |
Once the GUI opens, click on the left round button in the MIDI devices |
Once the GUI opens, click on the left round button in the MIDI devices |
173 |
tab. |
tab. |
174 |
At this point a window will open where you can create a new MIDI device. |
At this point a window will open where you can create a new MIDI device. |
188 |
This means LinuxSampler has no limitation in terms of number of MIDI |
This means LinuxSampler has no limitation in terms of number of MIDI |
189 |
ports. |
ports. |
190 |
Each MIDI device can be routed to arbitrary sampler channels. |
Each MIDI device can be routed to arbitrary sampler channels. |
191 |
|
</li> |
192 |
|
<li> |
193 |
<a name="setup_audio"></a> |
<a name="setup_audio"></a> |
194 |
<h3>4.2 Setting up Audio Output</h3> |
<h3>4.2.2 Setting up Audio Output</h3> |
195 |
LinuxSampler currently only supports the ASIO driver model for audio output |
LinuxSampler currently only supports the ASIO driver model for audio output |
196 |
on Windows. ASIO drivers ensure reliable low-latency operation and are |
on Windows. ASIO drivers ensure reliable low-latency operation and are |
197 |
virtually available for any soundcard (see <a href="#asio_tip"> |
virtually available for any soundcard (see <a href="#asio_tip"> |
215 |
</ul> |
</ul> |
216 |
Now Press "Create". The window will close and the Audio device will be |
Now Press "Create". The window will close and the Audio device will be |
217 |
created: "AUDIO DEVICE 0 (ASIO)" appears. |
created: "AUDIO DEVICE 0 (ASIO)" appears. |
218 |
|
</li> |
219 |
|
</ul> |
220 |
|
</div> |
221 |
|
|
222 |
<a name="load_samples"></a> |
<a name="load_samples"></a> |
223 |
<h3>4.3 Loading Samples</h3> |
<h3>4.3 Loading Samples</h3> |
256 |
|
|
257 |
<a name="save_session"></a> |
<a name="save_session"></a> |
258 |
<h3>4.4 Saving a Sampler Session</h3> |
<h3>4.4 Saving a Sampler Session</h3> |
259 |
|
When in VST plugin mode saving the current LinuxSampler session happens transparently. |
260 |
|
Just save the session in your sequencer and it will automatically save the current settings |
261 |
|
and loaded samples in LinuxSampler too. When you load the session in your VST sequencer |
262 |
|
LinuxSampler reloads all the settings and samples accordingly. |
263 |
|
<p> |
264 |
|
When running LinuxSampler in standalone mode you can load and save LSCP files |
265 |
|
from within the Fantasia GUI: |
266 |
|
<br> |
267 |
Click on the 3rd icon from the left on the row where you see the round |
Click on the 3rd icon from the left on the row where you see the round |
268 |
icon with the LinuxSampler "S"-shape logo. |
icon with the LinuxSampler "S"-shape logo. |
269 |
Now select the directory where you want to save the file to (extension |
Now select the directory where you want to save the file to (extension |
279 |
|
|
280 |
<a name="sequencer_routing"></a> |
<a name="sequencer_routing"></a> |
281 |
<h3>4.5 Routing LinuxSampler Outs Into Sequencer</h3> |
<h3>4.5 Routing LinuxSampler Outs Into Sequencer</h3> |
282 |
LinuxSampler currently lacks a VST interface so the only way to route LinuxSampler's outs into a sequencer |
When running LinuxSampler as a VST plugin it is fully integrated within the VST sequencer so for routing refer to the |
283 |
are either by using physical cables or internal routing via ASIO. Some audio cards offer this feature. |
documentation that comes with your sequencer. |
284 |
|
If you run LinuxSampler in standalone mode you can route the audio into your sequencer either |
285 |
|
by using physical cables or internal routing via ASIO. Some audio cards offer this feature. |
286 |
<br> |
<br> |
287 |
The <a href="http://www.reaper.fm">Reaper</A> sequencer allows ASIO routing by implementing a virtual |
The <a href="http://www.reaper.fm">Reaper</A> sequencer allows ASIO routing by implementing a virtual |
288 |
ASIO based driver independently from the soundcard type (ReaRoute). Basically in LinuxSampler you select the ReaRoute as ASIO output driver which |
ASIO based driver independently from the soundcard type (ReaRoute). Basically in LinuxSampler you select the ReaRoute as ASIO output driver which |
297 |
|
|
298 |
<a name="houston"></a> |
<a name="houston"></a> |
299 |
<h3>5. Installation Troubleshooting</h3> |
<h3>5. Installation Troubleshooting</h3> |
|
<ul> |
|
|
<li> |
|
|
<div style="background-color: #FFF2F2;"> |
|
|
<u>Problem:</u> The LinuxSampler backend application |
|
|
(<i>linuxsampler.exe</i>) fails to start with an error message that |
|
|
claims that a DLL file is missing (e.g. <i>libatkmm-1.6-1.dll</i>) |
|
|
</div> |
|
|
<div style="background-color: #F2FFF2;"> |
|
|
<u>Reason / Solution:</u> |
|
|
It could happen that due to previous installations of Gtk+ and gtkmm |
|
|
DLLs even after deinstallation leave some stale keys in the windows |
|
|
registry which could fool the installer into believing that the needed |
|
|
DLLs are already installed therefore skipping its installation which |
|
|
will cause the sampler not being able to start due to the missing |
|
|
DLLs. We recommend in this case to install gtk+ and gtkmm manually as |
|
|
described above in "<a href="#install_wo_inet">Installation without |
|
|
Internet</a>". Just install those mentioned Gtk+ and gtkmm versions |
|
|
and then LinuxSampler should work correctly. |
|
|
</div> |
|
|
</li> |
|
|
<li> |
|
|
<div style="background-color: #FFF2F2;"> |
|
|
<u>Problem:</u> The LinuxSampler backend application |
|
|
(<i>linuxsampler.exe</i>) fails to start with the error message |
|
|
"<i>The application failed to initialize properly (0xc000001d). Click |
|
|
on OK to terminate the application.</i>" |
|
|
</div> |
|
|
<div style="background-color: #F2FFF2;"> |
|
|
<u>Reason / Solution:</u><a name="old_cpu_workaround"></a> |
|
|
This first Windows release of LinuxSampler requires at least an Intel |
|
|
Pentium4 processor or a recent AMD processor. If you have an older |
|
|
processor and get the error message from above, you can use the |
|
|
following workaround for now: |
|
|
<ol> |
|
|
<li>Download and extract |
|
|
<a href="http://download.linuxsampler.org/dev/win32_probs/ls686_20071207.zip"> |
|
|
these replacement binaries. |
|
|
</a> |
|
|
</li> |
|
|
<li>Copy the 3 binaries manually in your LinuxSampler installation |
|
|
directory (default installation directory: |
|
|
"C:\Program Files\LinuxSampler"), that is overwrite the existing |
|
|
binaries in the LS installation directory with the 3 ones from the |
|
|
zip file. |
|
|
</li> |
|
|
</ol> |
|
|
Use this workaround only if you got the mentioned error message, |
|
|
because the replacement binaries will otherwise decrease runtime |
|
|
efficiency! This is of course just a temporary workaround. We'll |
|
|
address this issue with the next release of LinuxSampler (see also |
|
|
<a href="https://bugs.linuxsampler.org/cgi-bin/show_bug.cgi?id=67"> |
|
|
bug report #67</a>). |
|
|
</div> |
|
|
</li> |
|
|
</ul> |
|
300 |
|
|
301 |
<a name="docs"></a> |
<a name="docs"></a> |
302 |
<h3>6. Detailed Documentation</h3> |
<h3>6. Detailed Documentation</h3> |