Personal tools
You are here: Home community PdWikiWiki PdBalkania


PD.Balkania began as a series of workshops on Linux-based, open-source/free software for multimedia. These workshops were given by Derek Holzer ( e.mail: on the invitation of the various art spaces listed below. The organizers hope that these workshops will be the beginning of a small community of Linux audio users, and that this page can be a place for them to meet and share information. The text of this page is easily editable from a link at the bottom, so if you have further comments, informations, questions and suggestions, feel free to add them.%%%


These workshops took place in: %%% Monteparadiso Hack Lab (Pula, Croatia) %%% Spirit Club (Rijeka, Croatia) %%% MAMA/Mi2 Media Lab (Zagreb, Croatia) %%% Pro.baMediacentar Sarajevo (Sarajevo, Bosnia+Herzegovina) %%% (Novi Sad, Serbia+Montenegro) %%% Kiberpipa (Ljubljana, Slovenia) (with Martin Pi: Machfeld, Vienna)%%%


The aim was to expose people to a variety of tools running under Linux to produce and edit sound, and to a smaller extent, video. Participants used several different Linux distributions, each with its own set of audio packages, during the workshop: %%%

'''Platforms'''%%% '''DeMuDi (Debian Multimedia Distribution)''': Demudi is a multimedia distribution of Linux developed and maintained by the AGNULA Project. It can be installed as a complete operating system from a set of downloadable CDROMs?, or it can be installed as a set of packages over a Woody Debian install. If installed properly, Demudi provides quite a few of the softwares described here to give the user a full-featured set of audio production tools.%%% %%% '''Unofficial Demudi''': A Knoppix branch of the Demudi project maintained by Guenter Geiger. This version does not require any permenant Linux installation, but runs "live" from the Knoppix CDROM. (note: the new version of this CDROM, available from this site, should fix the bug which prevented the existing harddrives of the computers from being accessible!)%%% %%% '''PlanetCCRMA''': A RedHat Linux set of audio and video packages, maintained by Fernando Pablo Lopez-Lezcano from Stanford University. Planet CCRMA is probably about the easiest way to get started in Linux audio because it is incredibly simple to install and maintain. It is installed either from downloadable CDROM or from a package repository over just about any version of Red Hat or Fedora. I chose Red Hat and PlanetCCRMA? as the starting point of these workshops for three reasons:%%% 1) Relative ease-of-use and ease-of-installation compaired with Debian/Demudi.%%% 2) The software is generally more up to date than Debian/Demudi.%%% 3) PlanetCCRMA? has fantastic and comprehensive documentation on both installation and the included software packages which I find seriously lacking in Demudi.%%%

For Demudi and PlanetCCRMA?, see the INSTALLATION section below for more details.%%%

'''Applications: Drivers, Connections + Effects'''%%% Each of the two Linux distributions, and some others as well, include many of the applications used during the workshops:%%% '''ALSA''' (Advanced Linux Sound Architecture): These are the drivers for your soundcard under Linux. The complete ALSA system should contain a driver specific for whatever device you are using. Please have a look at the PlanetCCRMA? ALSA configuration page for more hints.%%% '''alsamixer''': A terminal/console based simple mixer for your soundcard. Use the left/right arrows to switch channels, use the M key to mute/unmute, and use the up/down arrows to change volume. press ESC to quit and save settings. Generally, you will want to unmute only the Master and PCM channels, although you may need to use other channels for different kinds of soundcards or functions. You can type%%% ''/usr/sbin/alsactl store''%%% to save these settings permenantly, or they will be reset each time you restart your computer.%%% '''Jack Audio Connection Kit''': Jack, for short. Jack is a low-latency audio server which can be used to send realtime audio streams between different applications and to and from your soundcard. It resembles Rewire (for Cubase and Reason) because of the interapplication possibilties, and ASIO for Windoze because of the speed/low latency. %%% Many, but not all, Linux sound applications can use Jack. If they are compiled as Jack-aware, then they will connect to Jack either automatically, or by adding -jack to the startup command. Please note that non-Jack-aware applications will not be able to use the soundcard while Jack is running. %%% The basic startup command for Jack is:%%% ''jackd -d alsa -d hw''%%% which says that Jack should start using the software device (1st -d flag) ALSA and using the default hardware device (2nd -d flag). This could be changed if you use more than one soundcard (-d hw0, -d hw1, -d hw6, etc etc...). Other parameters can also be set from the command line. Type:%%% ''jackd --help''%%% to see them all.%%% '''qjackconnect'': A GUI application which shows you all available readable and writable Jack clients ports. "Readable" means something that produces sound (soundcard's line or mike inputs, softsynth, playback from a sample editor) while "writable" means anything that takes a sound input for processing or recording.%%% '''qjackctl''': More advanced, single-app control of Jack. This includes start/stop with all different options (including samplerate, frames per period and other important things if you are having trouble with your sound) as well as a jackconnect panel with all available applications and ports. You do not need to start Jack from command line if using qjackctl.%%% '''jack-rack''': An effects rack for Jack which uses LADSPA plugins. See below.%%% '''LADSPA''(Linux Audio Developers Simple Plugin API): Because they use a proprietary programming system created by Steinberg, VST plugins generally cannot be used under Linux (although you can look here to see more on this). LADSPA is the system of audio plugins most commonly used, and there are over 200 to choose from. LADSPA plugins come in realtime and non-realtime varieties. Realtime plugins can be used in realtime sound processing/recording applications like Jack-Rack, Ardour, Pure Data and others, while non-realtime plugins can be used in sample editors such as Audacity and others.

'''Applications: Sound Recorders, Editors + Multitrackers'''

'''Rezound''': A simple but effective sample recorder and editor. Users of Soundforge will be quite at home here. Rezound supports Jack, but does not currently support LADSPA plugins (this is due to change quite soon, however).%%% '''Audacity''': This application can be used as a multitrack recorder and sample editor. It supports LADSPA plugins, but does the versions included in PlanetCCRMA? and Demudi do not support Jack. (This could be changed by compiling the program yourself). Audacity is multiplatform, meaning it can be downloaded for Win, Mac and Linux.%%% '''Ardour''': If you are looking for a full-featured, professional-quality multitrack harddisk recorder, Ardour may just be the thing. It contains many of the features you would expect from Pro Tools or Cubase, and supports both LADSPA and Jack. However, for the newcomer it can be quite complex to use, and is still under development, so sometimes there are bugs. A good starter tutorial is here

'''Applications: Sequencers, Synths, Trackers and Drummachines'''

'''Freebirth''': A Roland 303/606 inspired, pattern-based step sequencer and synthesizer. Similar to commercial program Rebirth. Very experimental, and missing many features. Not MIDI or Jack-aware to my knowledge...%%% '''Hydrogen''': Fruity Loops-style pattern-editor and sequencer. Capable of loading sounds from your harddisk as well as ready-made drumkits, and is MIDI and Jack-aware, so you can record your output.%%% '''Rosegarden''': A full-featured MIDI note editor and sequencer, which also has some basic sample capabilties. Can be used in conjunction with any MIDI-aware synth or sampler in your system, such as Fluidsynth, Spiralsynthmodular or Alsa Modular Synth.%%% '''Muse''': Another MIDI note editor and sequencer. Can use Jack and can be used to control other MIDI apps on your machine.%%% '''Fluidsynth''': Command-line software sythesizer and sampler which can receive MIDI information, play MIDI files and read (among other things) AKAI soundfont format samples. Type:%%% ''fluidsynth --help''%%% for a list of options. %%% '''Alsa Modular Synthesizer (ams)''': Realtime modular synthesizer and LADSPA plugin host environment. Can be controlled via MIDI by Muse, Rosegarden or other apps/controllers (such as a MIDI keyboard). Supports Jack.%%% '''SpiralSynthModular''': Fairly easy-to-use modular synthesizer and host for LADSPA plugins. Each object you place in the signal chain has its own user interface, so you can build up a front-end to your synthesizer. Accepts MIDI inputs from applications or controllers.%%% '''Soundtracker''': Tracker program similar to Fast Tracker for DOS or Pro Tracker for Amiga. Relive the good old days...

'''Applications: Video'''

'''Cinelerra''' This is probably the highest quality, profession-standard video editing tool available for Linux, capable of many tasks useful to a digital-video editor such as de-interlacing, mixing, cutting, a powerful audio production toolkit for multichannel sound and "render-farm" style distributed rendering like professional studios use.%%% '''Jahshaka'''This program aims to be a user-friendly, real-time video processing tool. Currently, it is under a high level of development, and features tools for editing, animation and effects for video in an easy-to-use front-end.%%% '''PDP''' PDP, or Pure Data Packets, is a library for playing and manipulating video for the Pure Data system (see below). The end goal of the system is to provide a method of handling '''any''' kind of data as a packet, and therefore be able to change a moving image to a 3D texture to a sound and back to an image, for example. Combined with some of the effects processors from PiDiP, PDP provides an excellent set of VJ tools.%%%

'''Applications: Programming Environments'''

'''Pure Data''' Also called PD. This is basically an visual, object-oriented programming language. What that means is that you are programming in a visual environment, using sets of objects to build up functions. In simpler terms, PD is an application where you can build any kind of sound (and some visual) tool imaginable, whether it is an effect, a mixer, a sequencer, a webstreaming server, etc etc. It does this by using low-level objects to create high level functions. Because it is a language, and not an end-user application, it can be frustrating at first. It may seem like simple things take a long time to build, but as you become more fluent in the language, the things you make will become more and more complex. %%% PD can work with Jack or ALSA, can incorperate LADSPA plugins, can send and recieve information over a network, has objects for using MIDI, joysticks, USB webcams and all kinds of other external hardware, can stream MP3 and MPEG over the internet, and has various Graphical User Interface elements like sliders and buttons to make it easier to control once you have built something. Several other sets of external objects, including GEM, PDP and Gridflow, extend the capabilties of PD into the area of 3D and video. Besides the source code itself, there are packages for Linux, Mac and Win platforms, making it possible to both use and communicate between almost any operating system.%%% PD can be started with a large number of command line options, which deal with such diverse things as the audio driver (Jack, ALSA, ASIO, etc), the sampling rate, the blocksize (useful if you are getting audio dropouts), the audio and MIDI devices used, the paths to various libraries and if you want to open a certain file immediately when launching the program. Type:%%% ''pd --help''%%% for a complete list of startup options. Once you have a set of options you would like to use each time you start PD, you can put them in a file called ''.pdrc'' in your home directory, and PD will use these options every time unless you give it new options.%%%

'''Applications: Installation'''%%%

'''Using APT''': APT is a package management system shared by Red Hat/PlanetCCRMA?, Debian/Demudi and many other distributions. Knowing how to use a package manager is often the first step towards mastering any Linux distro, so time spent learning this before you start making sound and image is certainly not wasted!%%%

The basic syntax used is to first type (as root):%%% ''apt-get update''%%% which gets the most recent list of all packages available from whatever server you specify in your ''/etc/apt/sources.list'' file. %%% Then you would type:%%% ''apt-get install qjackctl''%%% (for example) to install the program qjackctl. %%% To find out what kind of programs are available, type:%%% ''apt-cache search mp3''%%% (for example) to see all available programs dealing with mp3.%%% The program Synaptic is an easy-to-use front end for Apt which can make the process much easier for the beginner.%%%

'''PlanetCCRMA?''': The PlanetCCRMA? site has excellent documentation on installing software. You can see how to download and configure APT (once you have a working Red Hat installation) here, and then you can see how to use it to install software here. %%%

'''Demudi/AGNULA''': Unlike PlanetCCRMA?, Demudi assumes a bit of Linux knowledge already before one installs. Installing Debian Woody, which is required before getting the Demudi packages, is a bit less intuitive than using Red Hat or Fedora (the new, community-developed version of Red Hat). Generally, the most common problems arise in configuring the X11 server, which provides the graphical user interface. If this happens, it often helpful to Google around for people who have the same graphics card as you have, and to see what settings they used.%%% After your Woody installation is set up, you use APT to install the packages in a similar way as with PlanetCCRMA?. For full details, please see the AGNULA site's installation page, or simply do the following:%%% Using your favourite text editor, become ''root'' and open the /etc/apt/sources.list file. Then add the following lines:%%% %%% deb woody main%%% %%% deb-src woody main%%% %%% After that, type apt-get update and you'll be able to use dselect or apt-get to search for and install the AGNULA/Demudi packages.%%% Start with %%% ''apt-cache search demudi''%%% to see which packages are available. ''demudi-system'' should provide a low-latency kernel and alsa-drivers, while ''demudi-all'' should provide the complete set of audio/video applications.%%%

'''IMPORTANT note''' for Debian users: trying to install Demudi packages over anything but a straight-up Woody version of Debian will lead to unresolvable package dependecy problems, requiring you to either uninstall large parts of your system or skip several important multimedia software packages! Be careful!%%%


'''Documentation: Pure Data'''%%% The best place to find help learning PD is in the documentation, which is kept in this location:%%% ''/usr/lib/pd/doc/5.reference''%%% Here you will find many tutorials and examples of simple patches for things you might like to build, such as an AM or FM synthesizer, ADSR envelope generator, soundfile looper, etc etc. These are the files should open when you right-click an object and look for help. Remember you can click on the HELP menu on the right side of the PD window.%%%

Other sources of information are the manual, which is included in HTML format with PD, the PD mailing list, the website, and the other websites listed here:%%%

'''Web Resources: Pure Data'''%%% '''''': the PD page at Institute for Electronic Music Graz, where you can download PD + GEM %%% '''PureDataBase''': A searchable archive of all the objects, abstractions and externals in PD %%% '''PD Mailing List''': I highly recommend subscribing if you plan to continue using PD. If you cannot find the answer to your question in the manual or in the examples of the documentation, this is the next place to ask. The list also is text-searchable to see if someone else has already asked about what you need to know. %%% '''''': another site where PD users meet and share information. %%% '''PDWebring''': PD user community websites. Many of these contain very useful tutorials, externals and objects. %%% '''Pure-Data Sourceforge''': follow the bleeding edge of PD and PD externals development here!%%% '''Theory and Techniques of Electronic Music by M.S.Puckette''': Understanding how digital audio and sound sythesis work is the first step to become a real sound hacker, and not just a sound program end-user. Miller Puckette, the creator of Pure Data, is in the process of writing a book which uses PD as a method for learning all about digital audio synthesis. The first several chapters are available from his site.%%%

'''Web Resources: Linux Multimedia'''%%% '''PlanetCCRMA''' : A RedHat Linux multimedia platform. This site contains excellent set-up tutorials. %%% '''DeMuDi''': Debian Multimedia Distribution.%%% '''Agnula''': homepage of Agnula project, which is responsible for Demudi and Remudi. %%% '''Turnkey''': A Mandrake Linux multimedia platform. This site contains a few set-up tutorials. %%% '''AudioSlack''': Slackware Linux audio packages.%%% '''''': Excellent reference page for just about every Linux audio application %%% '''Linux Audio Users Guide''': Great source of info for JACK and ALSA users. %%% '''ALSA, Jack + Ardour Guide''': complete instructions for setting up ALSA, Jack and Ardour from scratch (i.e. using source code). Somewhat more advanced, but very useful if you are having a hard time with the above-mentioned distributions working right "automatically", would like to fine-tune your audio workstation, or if you want to know exactly what is happening "under the hood".%%%

'''Web Resources: Live Bootable CDs?'''%%% These are live CDs? which load an operating system and software temporarily onto your machine by using the RAM and not the harddisk. They are great ways to experiment with Linux and explore the software, but aren't the best solution for a professional audio workstation. However, they are perfect for things like workshops, travelling and other quick-and-dirty applications :-)%%% '''Unofficial DeMuDi Live CD''': Knoppix version of Demudi, maintained by Guenter Geiger, and based on the Debian Multimedia Distribution.%%% '''Medialinux at OSL''': Knoppix multimedia live CD.%%% '''Dynebolic''': Free, live multimedia studio produced by Jaromil/Denis Rojo. This distribution is aimed particularly at newcomers to Linux, artists, teachers and media activists, and includes some of Jaromil's custom audio streaming software.%%% '''PD-Knoppix''': Knoppix live CD containing PD, PDP, various externals, ALSA and Jack. The whole thing fits on one of those cute little 3" CDRs?, so you can put it in your pocket!%%%

  • - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


You can type them here..%%%

..or here...%%%

or even here.%%%

%%% '''HVALA!'''%%%

Thanks to the various organizers + all the participants for the success of these workshops! In particular, Derek would like to thank Zlatan Filipovic + Seki (, Sarajevo), Branka Curcic + Zoran Pantelic (, Novi Sad), Marko Peljhan (Makrolab, Ljubljana), Martin Pi (Machfeld, Vienna), Dunja Kukovec and Luka Princic (Kiberpipa, Ljubljana) for their outstanding assistance. Rock on!%%%

Powered by IEM Powered by Plone Section 508 WCAG Valid XHTML Valid CSS Usable in any browser