How to create music with GNU/Linux

Emmanuel Saracco


How to create music with GNU/Linux



Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.

A copy of the license is available on the World Wide Web at


This howto is dedicated to all GNU/Linux users that refuse to use proprietary software to work with audio.

Many thanks to all Free developers and Free composers that help us day-by-day to make this possible.

Table of Contents
1. System settings and tuning
1.1. My Studio
1.2. File system
1.3. Linux Kernel
1.3.1. Realtime Preemption patch
1.3.2. Configuration
1.3.3. Installation
1.4. Obtaining Reatime privileges
1.4.1. Realtime LSM
1.4.2. Using set_rlimits
1.4.3. Using PAM
1.5. PCI latency
1.6. ALSA
2. Hardware
2.1. RME Hammerfall HDSP 9632
2.1.1. Firmware
2.1.2. Linux Kernel
2.1.3. HDSP utilities hdspconf hdspmixer
3. Building required audio software
3.1. Jack Audio Connection Kit
3.2. Qjackctl
3.3.1. LADSPA plugins
3.4. DSSI
3.5. Hydrogen
3.6. QSynth
3.7. SpiralSynthModular
3.8. ZynAddSubFX
3.9. Rosegarden
3.10. LMMS - Linux Multimedia Studio
3.11. Ardour
3.12. JAMin
3.13. Jack Timemachine
3.14. Rezound
3.15. Lame
4. Soundfonts
4.1. Getting soundfonts
4.2. Using soundfonts
4.2.1. With Soundblaster soundcard
4.2.2. With other soundcards Testing with DSSI plugins Testing with QSynth
5. Create music
5.1. Execute Jack at first
5.2. Playing with ZynAddSubFX
5.3. Playing with Hydrogen
5.4. Playing with Rosegarden
5.4.1. Rosegarden settings
5.4.2. Using soft synthetizers
5.4.3. Recording audio tracks
5.5. Playing with Ardour
5.6. Playing with JAMin
6. Capturing and encoding
6.1. Playing with Timemachine
6.2. Playing with Rezound
6.3. Share your work
A. Useful Audio Links
A.1. Mailing-lists
A.2. Web sites
A.3. Soundfonts
A.4. Sound effects
B. My work
List of Tables
1-1. My Studio
List of Figures
1-1. ALSA configuration
1-2. alsamixer
2-1. hdspconf main window
2-2. hdspmixer main window
4-1. Fluidsynth DSSI plugin graphic interface
4-2. QSynth graphic interface
5-1. Jack server main setup window
5-2. Jack server main window
5-3. ZynAddSubFX main window
5-4. Jack connection manager/ZynAddSubFX client
5-5. ZynAddSubFX virtual keyboard
5-6. ZynAddSubFX multitracks mixer
5-7. Hydrogen main window
5-8. Rosegarden General settings
5-9. Rosegarden synth plugins manager
5-10. Ardour main window
5-11. JAMin main window
6-1. Jack connection manager/Timemachine client
6-2. Timemachine
6-3. Rezound main window
6-4. Rezound Gain Control window
6-5. Rezound Curved Gain window
6-6. Rezound save window
List of Examples
6-1. Music genre's list for OGG and MP3 encoding