Kokkini Zita: The Audio Software Of Fons Adriaensen
Looking at the software listed at Kokkini Zita it's easy to see where developer Fons Adriaensen's interests lie. He has written one of the best organ synthesizers for Linux, he has contributed to the LADSPA collection of processing plugins, and he has provided Linux sound researchers with some excellent tools for measuring and representing audio signals. He is also involved in improving Linux support for the Ambisonics technology of encoding and decoding multichannel audio.
Fons is a rather prolific developer, so I'll limit my reviews here to only the applications I've employed here at Studio Dave. Alas, I haven't yet got into using his Ambisonics utilities, but perhaps one of my readers will add a comment on that software.
In ancient Greek mythology Aeolus was the god of the winds. Aeolus is thus a perfect name for Fons's flagship organ synthesizer. Indeed, to many listeners Aeolus is the best-sounding organ synthesizer available for any platform. A bold statement, to be sure, but in this writer's opinion Aeolus definitely lives up to and even surpasses its hype.
Aeolus is a bona fide synthesized organ, i.e. it does not use sampled audio for its sound-creation engine. Aeolus works with combinations of stops and manuals in a manner similar to a real organ to control the the frequencies and amplitudes of the pipes. One of Fons's main intentions was to design a virtual organ that an organist would feel comfortable playing, and anyone who has used a real church organ will likely feel right at home with Aeolus and its sound.
The following list from the Aeolus Web page summarizes the organ's main features :
- Stops for three manuals and one pedal-set
- Five intonation temperaments
- Variable (master) tuning
- MIDI control
- Stereo, surround, or Ambisonics output
- Flexible audio controls (including a large church reverb)
Figure 1 displays Aeolus at work with the seq24 MIDI sequencer.
Preset sounds are available for Aeolus, but frankly I find it a simple matter to make my own settings. The program's interface is easy to navigate and use, so I usually just experiment with stops and other settings until I find the sound I want.
And what kind of sound comes from Aeolus ? Well, check out Matthias Nagorni playing a Bach Trio Sonata and Bert Visser playing a Prelude by Cesar Franck for two good examples of Aeolus's convincing timbre and excellent audio quality. More examples can be found on the Aeolus home page.
Jconv is a simple utility for adding high-quality reverberation to an audio stream. The program utilizes an audio signal processing method called convolution to enhance a recording with the reverberant characteristics of a real or virtual space. A convolution reverb unit such as jconv makes its magic with short soundfiles called impulse response (IR) files, which are simply recordings of the reverberation effect in a particular building or other reverberant space. An IR recording is made typically by recording a loud sharp sound from a firecracker, a balloon pop, or a shot from a starting gun. The initial sound is then removed from the recording, leaving only the characteristic reverberation of the original space. Convolution "folds" the IR into your audio file or stream to create the illusion that your music was recorded in, say, the Taj Mahal or the basilica of Santa Lucia.
The program is currently a bit awkward to use. First the user must prepare a configuration script such as this example :
# Where jconv will find its IR file: /cd /home/dlphilp/soundfiles/ir-wav/Yamaha_SPX990/ # in out partition maxsize # ----------------------------------------------- /convolver/new 1 2 512 120000 # in out gain delay offset length chan file # ------------------------------------------------------------------------------------- /impulse/read 1 1 0.2 0 0 0 1 Concert_Hall.wav /impulse/read 1 2 0.2 0 0 0 2 Concert_Hall.wav
In this example I've employed an IR created from a Yamaha SPX 990 reverb unit. Many such IR files are available on the Web, giving the user access to the reverb characteristics of dedicated processors such as the Yamaha, Roland, or Lexicon units.
The configuration script is then fed to the jconv binary in this manner :
Jconv is a JACK-based program, so as soon as it starts it will appear as a client in the JACK graph. Figure 2 shows off how I've been using jconv recently in my work with the LinuxSampler software. In that screenshot I've dedicated two channels to an instrument's FX Send in the JSampler Fantasia GUI. Those channels are routed to jconv, and the output from the convolver is then sent to the system audio input. The processed audio is finally sent on to my speakers, perhaps mixed with the unprocessed stream, perhaps not.
Documentation is sparse. The demonstration scripts in the demo_config directory will get you started, and hundreds of IR files are available from various sites on the Web. See this articles Resources for a list of some notable collections of high-quality responses.
Jconv works beautifully with every IR file I've thrown into it. Alas, there are no realtime controls, nor is there a handy graphic interface (yet). Fons has promised that his upcoming Aella will provide the long-awaited GUI, but I really can't complain much about jconv as it is now. The scripts are trivial to write, the processor itself is simple to use, and the sound is first-rate. Can you tell that I like this program ?
I don't qualify as an experienced user of software such as JAAA, the JACK and ALSA Audio Analyzer, but I used hardware oscilloscopes back in my ham radio days and I still find it interesting to consider the significance of displays like the screenshot in Figure 3. However, to the truly knowledgable user such displays are no mere eye-candy - they are informative guides to crafting optimal sonic environments, and tools like the JAAA have become indispensable for professional audio engineer.
Figure 3 demonstrates a trivial use for the software. The output of AlsaPlayer is routed to the system audio inputs and to the JAAA input ports. In this arrangement I can listen to the music and watch its realtime frequency display for audio hot spots or other interesting content.
Many of the programs at Kokkini Zita are included in the software repositories for media-optimized Linux distributions. If your distro has somehow sadly failed to provide pre-built packages you can still build the software yourself. The process isn't difficult, you can find the source code and full instructions for compiling on the Kokkini Zita site.
As promised, here are some links to sites offering free IR files.
Happy convoluting !
When Ivica Ico Bukvic asked Fons what "kokkini zita" signifies he received this reply :
It's indeed Greek and means 'red zita', where zita is the name in modern Greek for the character traditionally known as 'zeta'. So I'll be using a red zeta as a logo.
There some word play involved as well. Zita is also a girl's name, and there exists a Flemish comic series in which a character called 'rode Zita' (red Zita) appears. She's the red-haired and voluptuous girlfriend of the hero - a sort of Robin Hood-like character whose gang of outcasts is constantly pestering the French soldiers that occupied Flanders 200 years ago.
By any name, Kokkini Zita is dedicated to high-quality music and DSP software for Linux. Vast thanks, Fons, for your superb contributions to the cause of Linux sound and music software development. I'm eager to see and hear what you come up with next.
Similis sum folio de quo ludunt venti.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- Google's SwiftShader Released
- SUSE LLC's SUSE Manager
- My +1 Sword of Productivity
- Managing Linux Using Puppet
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Non-Linux FOSS: Caffeine!
- Interview with Patrick Volkerding
- SuperTuxKart 0.9.2 Released
- Parsing an RSS News Feed with a Bash Script
- Doing for User Space What We Did for Kernel Space
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide