1. Fluajho User Manual

We are happy you chose Fluajho. Fluajho is a sampler for sf2 soundfonts. This is a legacy file format for making MIDI signals audible through virtual instruments.

You can load one soundfont file per Fluajho instance. Each instance holds 16 of the soundfonts instruments that can be assigned to 16 MIDI channels.

"Fluajho" (with jh as in pleasure) means fluid in Esperanto. Behind the scenes the "Fluidsynth" software library is at work.

1.1. Purpose and target audience

There are many soundfont samplers for Linux, most of them based on fluidsynth. Fluajho was written for a clearly defined use case: Load an .sf2 in the Non Session Manager and save the soundfont in the session directory. This makes it possible to archive the session, for example as a backup or to share it.

2. Installation and Starting

Fluajho is exclusive for Linux. The best way to install Fluajho is to use your package manager. If it is not there, or only in an outdated version, please ask your Linux distribution to provide a recent version.

If available in the package repository, please continue reading directly at "Start Fluajho from Non Session Manager". If not, you can build Fluajho yourself.

  • First install the packages Python3, PyQt5, Nuitka and GCC.

  • And these audio packages: Jack Audio Connection Kit, QJackCtl (or something else to establish Jack connections), Non Session Manager

  • Build and Install:

    • Download the latest version from https://www.laborejo.org/downloads and extract it.

    • Cd into the new directory and use these commands:

    • ./configure

    • make

    • sudo make install

Start Fluajho from Non Session Manager (NSM)
  • Run non-session-manager

  • Press the New button, and enter a name for your piece of music.

  • Press the Add Client to Session button, enter fluajho here, in lower case.

  • Add Client again, this time jackpatch.

  • Add any compatible programs, e.g. synthesizers.

  • To save Fluajho, use the Save button in NSM.

3. How to use Fluajho

The following explains how to use Fluajho.

3.1. Quick Start

To get to know the most important functions and workflows, this video has been created.

Or as Youtube Mirror

3.2. Basic Principles

Fluajho loads exactly one .sf2 soundfont. A soundfont can contain several instruments, of which up to 16 can be used simultaneously.

Each of the instruments can be loaded into one MIDI channel. To do this, first select a bank in a channel (Bank 0 if in doubt) and then a program.

On the first launch a small standard soundfont is loaded, which is General Midi (GM) compatible.

Fluajho itself has no option to play notes. To control the sounds, you send MIDI data to our input port via JACK. The channel is a property of the midi signal and is already selected in the sequencer.

Each channel has two separate audio outputs in JACK: Left and Right.

Saving and loading your project is done by the Non Session Manager. There you will find a "Save" button.

4. Description of the graphical user interface and its functions

Use your browser’s search function to locate the individual letters like [B] and their explanation.

Screenshot with Captions

The [A] File menu contains only one command: "sf2 Soundfont load" (keyboard shortcut: Ctrl+O). Only one soundfont can be loaded at a time. If you want to use several different soundfonts at once, just start Fluajho several times.+It is also possible to load an .sf2 through drag & drop from your file manager into the Fluajho window.

[B] is the name of the currently loaded file.

The option [C] Ignore MIDI Bank and Program Messages only allows instrument changes via the graphical user interface. It ignores all messages coming in via the JACK Midi connection.+ This is sometimes necessary if you are dealing with midi hardware, like keyboards, which send bank and program changes at startup and break our settings. You can also activate this option as soon as you have set all instruments, because a program change unfortunately happens faster than one would think.

Channels are numbered [D] Channel N . MIDI supports exactly 16 channels, there is no adjustment possible. More channels of the same soundfont can be obtained by simply starting another Fluajho instance.

The current [E] Bank is always displayed as a number. You can choose them from the drop down list. Only the banks, which actually exist in the current sf2 are listed.

The current [F] Program is the instrument. It is displayed with its MIDI number and actual name. Only the programs present in the sf2 are displayed.+ However, the soundfonts are often wrong in that they display more instruments than they actually have. In this case you will hear a more or less random (existing) instrument instead.

There is no internal way to close Fluajho. If you use the function of your window manager like [X], Alt+F4 etc. the graphical user interface is only hidden.+ To really close Fluajho you can click on the STOP icon in the Non Session Manager. Here you can also restore visibility by clicking on the GUI button.+ The current visibility setting is saved. This is because you normally only spend a relatively short time loading a soundfont. Afterwards, the window would only get in the way.

5. Development

The further development of Fluajho will consist of improvements in the areas of stability and program performance. New functions are not categorically excluded, but are only possible after long-term observation of user behaviour.

5.1. Translations

Fluajho is very easy to translate with the help of the Qt-Toolchain, without any need for programming. The easiest way is to contact the developers and they will setup the new language.

However, here are the complete instructions for doing a translation completely on your own and integrating it into the program.

  • Open a terminal and navigate to the Fluajho directory

  • In the Fluajho directory: cd gui/translations

  • Edit the file config.pro with a text editor

    • Append the name of your language in the 2nd line, in the form XY.ts, where XY is the language code.

    • Make sure to leave a space between the individual languages entries.

  • Run pylupdate5 config.pro

    • The program has now generated a new .ts file in the translations subdirectory

  • Start Qt Linguist with linguist-qt5 (may be named differently) and open your newly generated file

  • Select your "Target Language" and use the program to create a translation

  • Send us the.ts file, such as by e-mail to info@laborejo.org (see below for more contact options)

You can also incorporate the translation into Fluajho for testing purposes. This requires rudimentary Python knowledge.

  • In the Qt Linguist "File" menu is a "Release" option. This creates a .qm file in the same directory as your .ts file.

  • Open the fluajho starter file in your text editor

    • Scroll down to the bottom to set the language.

    • To find out your language string (German, Esperanto etc.) remove the # hash from the existing line #print (language). Start NSM from a terminal, start Fluajho and the language string will be printed there (you have to search a bit)

    • In the file engine/constants.py is a dictionary supportedLanguages. Add your language. For example {"German": "de.qm", "Esperanto: "eo.qm"}

5.2. Bugs

If you find a bug in the program (or it runs too slow) please contact us in a way that suits you best.

How to contact us