> ## Content Index
> Fetch the complete content index at: https://wootangent.net/llms.txt
> Use this file to discover other available public pages before exploring further.

# everything you always wanted to know about linuxsampler
- URL: https://wootangent.net/everything-you-always-wanted-to-know-about-linuxsampler/
- Published: 2011-07-07T11:20:32.000Z
- Updated: 2026-10-24T08:22:14.000Z
- Author: Leigh Dyer
- Tags: Linux, Music, Tutorials, alsa, ardour 3, gigasampler, jack, linuxsampler, lv2, qtractor, sfz, #Migrated-1792830072870, #wp, #wp-post, #Import 2026-10-24 08:21

LinuxSampler is an odd beast -- it can be tricky to install, and confusing to configure, but it's undoubtedly the best tool for working with large sampled instruments under Linux. With its next release adding support for the increasingly popular SFZ format, and the fact that it's one of the few LV2 synth plugins ready for use with Ardour 3, I think it's about to get a lot more important.

Let's not get too far ahead of ourselves, though. What exactly is LinuxSampler, what's it useful for, and perhaps most importantly, how do we use it?

![LinuxSampler GUI](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-intro-2.png "linuxsampler-intro")

### LinuxSampler basics

LinuxSampler is a sample-based synth that lets you use very large sampled instruments. Rather than loading the entire instrument in to RAM, LinuxSampler loads just the start of each sample, and then reads the rest from disk as it's needed. Because of this, it can load instruments much larger than your system would be able to handle with other software, such as Hydrogen or Fluidsynth/Qsynth.

Realistic piano sounds are perhaps the classic use for LinuxSampler -- a good piano, like [the Salamander Grand Piano](https://wootangent.net/the-salamander-grand-piano-and-linuxsampler-cvs/), can reach 2GB or more in size -- but it works just as well for electric pianos, guitars, violins, trumpets, drum kits (a [personal favourite](https://wootangent.net/approximating-realism-drumming-with-linuxsampler/)), or any other instrument that calls for large samples, or a lot of samples, to provide a realistic result.

LinuxSampler can be run standalone -- it supports ALSA and JACK for both MIDI input and audio output, and can handle an arbitrary number of inputs and outputs mapped to different instruments. It can also run as a plugin; the LV2 plugin runs well under both Ardour 3 and Qtractor.

### File formats

The inspiration for LinuxSampler was a Windows app called Gigasampler, which was the first sampler to incorporate on-demand streaming of sample data. It's a standard feature in professional samplers today, and Gigasampler itself has been defunct for some time, but its legacy lives on in the ".gig" file format, which is also LinuxSampler's primary file format.

You can still find some great commercial sample libraries in .gig format, but it's definitely falling out of favour today. To address that, the development branch of LinuxSampler has added support for a new format called SFZ. It's a young format, but it's growing in popularity thanks to the availability of free SFZ plugins across all platforms. Also, because of its design (the SFZ file itself is a simple text file, separate from the actual sample data), you can download third-party SFZ mappings for some commercial instruments.

Even though .gig is fading away commercially, it's still useful for bundling your own sounds. The LinuxSampler project includes a .gig editor called "gigedit", which you can use to create your own instruments.

Hopefully you now have an idea of what LinuxSampler is and what it can do for you. Now all that remains is to learn how to install and configure it!

### The tricky bits -- installation and setup

If you've ever searched for LinuxSampler in your distribution's package list, you've probably hit your first snag -- it's nowhere to be found. LinuxSampler has a [slightly odd licence](http://linuxsampler.org/faq.html?ref=wootangent.net) that runs afoul of the package policies of most major distributions.

There are some packages available -- [Autostatic's PPA](https://launchpad.net/~autostatic/+archive/ppa?ref=wootangent.net) includes packages for Ubuntu Lucid, for example -- but I just build it myself from source. At a minimum, you need to install build the "libgig" and "linuxsampler" tarballs from the [LinuxSampler download page](http://linuxsampler.org/downloads.html?ref=wootangent.net). If you want to test the SFZ support, the download page has instructions for grabbing the development versions of "libgig" and "linuxsampler" from Subversion.

Once it's installed, you can run LinuxSampler from the command line:

linuxsampler  

You should soon see a "LinuxSampler initialization completed." message, and then not much else. This LinuxSampler backend handles all of the hard work -- accepting MIDI input, loading samples, and producing audio output -- but it needs to be told what to do. The best tool for that is the official LinuxSampler GUI, called Fantasia; you can download it from the LinuxSampler download page. It's a Java app, and it's distributed as a JAR file. Assuming you have Java installed, you can run it like this:

java -jar Fantasia-0.9.jar  

### Setting up an instrument

![LinuxSampler before configuration](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-nosetup-2.png "linuxsampler-nosetup")

The Fantasia GUI is large, but for now you can focus on two sections: the right-hand panel, where you create MIDI inputs and audio outputs, and the centre panel, where you load your instruments. Follow these steps to set up a working instrument:

1. In much the same way, click the power button within the "Audio Devices" section, select your preferred audio driver (ALSA or JACK), and hit "Create".
2. If you're planning to use an SFZ file, click on the "GIG engine" text within the instrument slot, and select "SFZ engine"
3. For .gig files, one file can contain multiple variations on the one instrument -- these appear in the "Instrument Index" drop-down box, so you can click in there and change the default selection if required
4. Click "OK" to close the dialog and load the instrument
5. Loading a large instrument may take 10-20 seconds, as LinuxSampler caches some of the sample data. Once it's loaded, parts of the keyboard within the GUI will turn white -- these are the notes within the instrument's range. At this point, you're ready to play! Connect LinuxSampler's audio outputs to your sound hardware (assuming you're using JACK), and then either click on the on-screen keyboard, or connect a MIDI keyboard and hit some keys on that.
6. Repeating those setup steps each time you wanted to use LinuxSampler would get old very quickly, but thankfully there's a way to save and restore all of your settings.
7. LinuxSampler has the ability to export all of your session details -- MIDI inputs, audio outputs, and instrument slots -- to a text file, which you can then restore quickly later. To export your configuration, select the Actions/Export/Sampler Configuration option, and select the file name to save the session to.
8. To reload a session from scratch, simply launch the "linuxsampler" backend, open the Fantasia GUI, and then use the Actions/Run Script option to read your session file. You'll also find any recently saved sessions under the Actions/Recent Scripts menu.
9. Being able to save and restore sessions becomes even more useful once you start using LinuxSampler for several instruments within the one project. You can add all of those instruments to the one LinuxSampler setup, and then save and restore them in one fell swoop.
10. To add a second instrument to your setup, just click the little power button below your existing instrument to create a new instrument slot, and then load your instrument. By default, LinuxSampler puts each instrument on to its own MIDI channel within the one MIDI input (channel 1 for the first instrument, channel 2 for the second, etc.), so you can address each instrument from your sequencer by setting the appropriate MIDI channel on each of your tracks.
11. If that doesn't suit, you can customise the entire MIDI and audio setup -- you can create multiple MIDI inputs routed to different instruments, and you can also create multiple audio outputs and route different instruments to each. To create new inputs or outputs, follow the same steps you used to create your initial input and output. Afterward, click the "OPTIONS" button on each instrument to reveal drop-down options for the instrument's MIDI input, MIDI channel, and audio output.
12. Being able to configure complete sets of instruments in LinuxSampler is one thing, but there's an even easier way to work with LinuxSampler within your DAW: the LV2 plugin.
13. If you're working in a host like Qtractor or Ardour 3, you can skip some of the complexity by using LinuxSampler as an LV2 plugin. You still use Fantasia to configure your instruments, but using the plugin simplifies input and output routing (since you don't have to do any!), and it also simplifies session management, since your host will automatically reload your instruments for you when you open your project.
14. If you built LinuxSampler from source, and you had the "lv2core" package installed, the LV2 plugin should have been built and installed automatically as part of your LinuxSampler installation. If you can't find the plugin within your host, go back to that build process and make sure it's building and installing the plugin.
15. When using the plugin, you don't need to start the "linuxsampler" backend -- just set up a MIDI track within your host, add the plugin, and then launch Fantasia. When it opens, you should see a MIDI input and audio output (both called "Plugin") already defined. You should also see an empty instrument slot -- just load your preferred instrument in to it, and you're ready to play.
16. If you load more than one instance of the plugin, each instance gets its own input, output, and instrument slot within Fantasia. Unfortunately it doesn't seem to give you any indication of which instrument slot maps to each plugin instance, but if you configure your plugins one-at-a-time, this usually isn't a problem.
17. LinuxSampler has further features to explore, such as its instrument database, and the "gigedit" tool, but your eyes are probably glazing over at this point! It's a powerful app, but hopefully this has given you a solid introduction. If you have any questions or tips, or links to LinuxSampler packages or quality SFZ or .gig sounds, be sure to leave a comment.

### Next steps

![LinuxSampler running as an LV2 plugin](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-plugin-2.png "linuxsampler-plugin")

### The LinuxSampler plugin

![LinuxSampler with multiple instruments](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-multioutput-2.png "linuxsampler-multioutput")

### Multi-instrument setups

### Saving settings

![LinuxSampler ready to go](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-setupcomplete-2.png "linuxsampler-setupcomplete")

Click "Load Instrument..." to open the instrument selection dialog. To load an instrument from a file, click on the lower "Browse" button, in the "Select instrument from file" section, and select your instrument file  

![](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-chooseinstrument-2.png "linuxsampler-chooseinstrument")

Click the power button within the middle section to create a new instrument slot:  

![](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-newinstrument-2.png "linuxsampler-newinstrument")

In the right panel, click the little power button within the "MIDI Devices" section. In the settings panel that appears, select your preferred MIDI driver (ALSA or JACK) from the drop-down list, and then hit "Create":  

![](https://storage.ghost.io/c/42/8f/428f222b-5293-47dc-a763-0d524d3db42e/content/images/2026/10/linuxsampler-midiinput-2.png "linuxsampler-midiinput")