**This is an old revision of the document!**

Linux Sampler

The Linux Sampler is a stand-alone sampler as well as a DSSI, LV2, and Linux-native VST unit. It uses the GigaStudio sample format, traditionally used in many of the de facto soft sampler applications. It is in the process of integrating the SF2 and SFZ formats, recent formats that have grown in popularity for their comparative simplicity.

Strengths [Weaknesses]

Easy

ffmpeg2theora is straightforward and takes some of the guesswork out of media conversion

Install

Because of its modular nature, the compile options are many, but the download page of linuxsampler.org provides a good guide on how to proceed. The source code for Linux Sampler consists of a minimum of two components (libgig and linuxsampler) with an option of using up to seven components. To compile it as a stand-alone application as well as a DSSI and LV2 (two free formats that Qtractor supports) this is the order that the compilation must occur:

libgig
Linux Sampler
liblscp and/or jlscp
qsampler and/or JSampler 

Technically, all are available from SlackBuilds.org but if you need SF2 and SFZ support, then you will need to compile the latest version from the project's SVN code repository. Even though SlackBuilds.org may not offer the latest SVN versions, you can modify the SlackBuild and then use it to compile and package your own SVN build. For example:

The latest version of Linux Sampler requires the latest version of libgig, so first download the latest code for libgig from the linuxsampler.org SVN repository: 
 svn co
      https://svn.linuxsampler.org/svn/libgig/trunk
      \     
      
      libgig-$(svn info \
      
	https://svn.linuxsampler.org/svn/libgig/trunk
      | \
      
	grep Revision | cut -f2 -d" ")
      
    
    <WRAP tip>

For better tracking, you are creating a new version number for the applications you are building. It seems a logical choice to use the latest revision posted to the SVN repository.

    </WRAP>

If you use sbopkg or sport then you probably already have the libgig SlackBuild script in your SlackBuilds tree. Otherwise, download it from SlackBuilds.org The code, as downloaded, does not have a build configuration script. You can create one and then run the SlackBuild script, or you could modify the SlackBuild script to create one as a part of the build process. The latter choice is the “right” way to do it, since you could use and re-use such a dynamic script. It's possible to hack around doing the legwork by generating the necessary files manually, but if you do it the right way now, you'll probably never have to do it again for as long as you live, so here are the changes you should make to the SlackBuild file in order to build a script that lasts.

The VERSION line should be changed to 

<code>

	    VERSION="-SVN$(svn info \
	  
	  
	    https://svn.linuxsampler.org/svn/libgig/trunk
	    | \
	  
	  
	    grep Revision | cut -f2 -d' ')"
	  </code>

Comment out the line that untars the source tarball, since there is no source tarball, and add a line that copies the SVN source to the temporary directory and changes directory into it:

	  ### tar xvf
	  $CWD/$PRGNAM-$VERSION.tar.bz2
	
	
	  cp -r $CWD/$PRGNAM-$VERSION $TMP
	
	
	  cd $PRGNAM-$VERSION
	

Add a line before the configuration step in the script to create a configure and Makefile:

	    automake -c makefile
 Run the SlackBuild as usual. Once libgig has been installed, repeat this process for linuxsampler itself. 

As the download page of Linux Sampler says, Qsampler and JSampler, graphical frontends for Linux Sampler, are independent of linuxsampler itself. Therefore, if you build the backend (libgig+linuxsampler) then you can choose to download and install Qsampler and its dependencies, or a different frontend, like JSampler and its dependencies, or both, or neither.

JSampler

QSampler

http://slackermedia.info/book/synths-qsampler.html qsampler.jpg

See Also
krita
mypaint
inkscape
darktable
lightzone