Archive for the ‘Musical Instruments’ Category

LAC 2010 conference

Friday, April 30th, 2010
Audio Icon (openclipart.org, public domain)

Audio Icon (openclipart.org, public domain)

Though I’ll not attend, I’d like to advertise this year’s Linux Audio Conference, “the conference about Open Source Software for music and sound” which takes place from May 1-4 2010 in Utrecht, the Netherlands. Hopefully the programme wets your appetite.

Simple Sysexxer 0.3 released

Saturday, December 19th, 2009
Simple Sysexxer 0.3

Simple Sysexxer 0.3

I just uploaded Simple Sysexxer 0.3. See its dedicated page for details about download and usage.

The MIDI reception part has been rewritten to use the ALSA sequencer directly. Receiving (and sending) huge SysEx messages (greater than 256 bytes, ALSA’s buffer size) now should work reliably. At least it does with a Korg Z1 Synthesizer (168 531 bytes for the complete internal memory).

Hope you enjoy. Feedback is always welcome. Just drop me a line.

Synth Programming – “I believe in Fourier Synthesis”

Monday, December 7th, 2009
Sliced lemon (openclipart.org, public domain)

Sliced lemon (openclipart.org, public domain)

To better understand sound synthesis and synth waveforms it is very useful to learn more about Fourier synthesis, the reverse process of Fourier analysis. In the following sections, I’ll try to condense the necessary knowledge as much as possible. I hope this simplification does not produce mistakable results. Otherwise please drop me a line.
(more…)

Sorting Sound Files using Ruby

Wednesday, November 25th, 2009

ruby-2008.png

Consider you have 2,248 files in a directory, each containing one single sound program for your favourite Z1 synth. You need to load them into the synth individually, listen to them and to sort them in directories. Painful it would be.

Fortunately, all sounds are set to one of 18 predefined categories like guitar, synth hard, synth soft, piano, organ and the like. In the SysEx files, the category is coded into the 26. byte. So it was easy to sort the files into subdirectories using a couple of lines of Ruby code (sorry for the misformatting):



#! /usr/bin/ruby

require 'fileutils.rb'

def determineCategory( filename )
file = File.open( filename, "rb:binary" )
fileContents = file.read
category = fileContents[25] + 1
# puts filename, category
unless File.directory?(category.to_s)
Dir.mkdir( category.to_s )
end
FileUtils.mv( filename, category.to_s )
end

Dir.glob( '*.[Ss][Yy][Xx]' ) do |entry|
determineCategory entry
end

This language seems to be very powerful. Need to do more with it.

Sound Collection Tools for the Korg Z1 Synthesizer

Wednesday, November 25th, 2009
Korg Z1 Panel

Korg Z1 Panel

I’ve collected a lot of sounds for the Z1 from several web pages. All those sounds now need some sorting and rearrangement. After that, I’ll send them to the Z1, extract the best ones and refine them to my likings.

(more…)

ALSA Sequencer Interface for Simple Sysexxer

Monday, November 23rd, 2009
Simple Sysexxer Icon

Simple Sysexxer Icon

The last release of Simple Sysexxer used RtMidi for MIDI input. However, some weird things happend when I tried to receive data from my beloved Korg Z1 synth. Today I have rewritten the MIDI input thread using the ALSA sequencer API.

(more…)

Korg Z1 synth bricked – almost

Friday, November 20th, 2009
Korg Z1 synth

Korg Z1 synth

I wanted to try out some sounds for the Korg Z1 which are publicly available on webpages (such as the Z1 Yahoo group). To ease this process, I tried out several tools to rearrange the individual sounds across the various collections.
(more…)

Sounds from the Prophecy stuffed into the Z1

Tuesday, November 3rd, 2009
Electric Guitar (openclipart.org, public domain. Thanks, guys!)

Electric Guitar (openclipart.org, public domain. Thanks, guys!)

The Korg Prophecy was the monophonic predecessor of the Z1. Unfortunately, both instruments are not patch compatible, so you cannot load sounds designed for the Prophecy into the Z1.
(more…)

Synth Programming – Low Frequency Oscillators

Sunday, October 25th, 2009

Synth sounds would be too static (and thus boring) if there were no modulators like envelopes. To get even more spice into a sound, synth programmers use low frequency oscillators, in short LFOs.

(more…)

Electronic Concert @ ZKM Kubus

Sunday, October 25th, 2009

I’m just back from a concert at the ZKM Kubus. The first perfomer was Dieter Torkewitz who played a concert for piano, tape recorder and lights:

ZKM 20091024 - Dieter Torkewitz

ZKM 20091024 - Dieter Torkewitz

(more…)

Synth Programming – More Filtering

Tuesday, October 20th, 2009

While the lowpass filters are the most important in synthesizers, highpass, bandpass and bandreject (aka notch) filters are nice to use as well. Here are some examples. The horizontal red bars stand for the partial tones in a waveform. The gray area emphasizes the partials that are allowed to pass the filter. The light red bars show the partials being filtered out.

(more…)

Synth Programming – More Envelopes

Monday, October 19th, 2009

I’ve posted about ADSR envelopes earlier. You will find them in most synths. However, some synths provide further waveforms. As a monophonic solo synthesizer, the Minimoog provided no release portion. This results in a simpler ADS envelope:

ADS Envelope

ADS Envelope


(more…)

Two more synth videos: Klaus Schulze and Józef Skrzek

Monday, October 19th, 2009

Here’s a live video of the WDR, where Klaus Schluze is treating his various synths back in 1977.

And here’s one more remarkable video, where Józef Skrzek plays a pipe organ and a Minimoog simultaneously. It’s stunning what the Moog sounds like.

Synth Programming – ADSR-Envelopes

Friday, October 16th, 2009
ADSR-Envelope

ADSR-Envelope

One of the most essential modulators found in synthesizers are envelopes. Most synths at least provide two envelopes – one for the amplifier, one for the filter. Both allow to apply a contour to the sound, the first one to the volume, the latter one to the spectrum of partials.

The most basic type of an envelope is the ADSR envelope. The four characters stand for Attack time, Decay time, Sustain level and Release time. The above figure should give you a glue what this is all about. The envelope gets triggered as soon a key is pressed. After that, it raises to the maximum level, and falls down in the decay time until it reaches the sustain level. This level gets held until you release the key. After releasing the key, the envelope falls down to zero during release time.

For solo sounds, both the attack and release times usually are set to small values, so the musician only needs to adjust the decay time and sustain level to his likings. You can hear an ADSR envelope applied to a lowpass filter on the previous post.

Synth Programming – Filters

Friday, October 16th, 2009
Sieves, AD 1568 (wikimedia commons, public domain)

Sieves, AD 1568 (wikimedia commons, public domain)

I’ve posted about base synthesizer waveforms yesterday. The signal from the oszillator(s) most often gets used to feed a filter. Almost all synths at least provide a lowpass filter. Some synths provide a multimode filter, which may contain lowpass filters in different characteristics, a highpass filter, a bandpass filter, a notch filter and maybe a comb filter. Those filters are not static. Instead one can change the cutoff frequency of the filter, which effectively means that the range of filtered partials can be influenced.
(more…)

Synth Programming – Basic Synthesizer Waveforms

Friday, October 16th, 2009

Most synthesizers follow a similar approach. There’s one (most often two or three) oscillators which generate the base sound. This sound then passes a filter to filter out the unwanted harmonics. Finally, the sound gets out of the synth and is fed into an amplifier and the speakers.

Actually, it’s much more complex, but basically, that’s it. Most synthesizers provide at least the following four base waveforms:

A sinewave

A sinewave

A sinewave

A triangular waveform

A triangular waveform

A triangular waveform

A pulsewave

A pulsewave

A pulsewave

A sawtooth wave

A sawtooth wave

A sawtooth waveform

The sinewave is a waveform which contains no partial tones at all, thus being a “boring” waveform. It is more or less senseless to filter it, as there are no partials to filter out.

The triangle wave is very similar to the sine wave, providing a couple of partials only. You can filter it, but there will be no dramatic changes in the sound.

A square wave contains all odd partials, and the sawtooth contains all partial tones. The latter two can be filtered to achieve sound changes. Sine and triangle waves are mainly used to phatten the sound or to do some interesting modulations.

Square waves often can be modulated to change their pulse width while the sound is being played. I’ll post about it in a later issue.

Because the oscillators provide the base audio material, the synth manufacturers care a lot about the “right” waveforms. Thus the waveforms slightly differ from synth to synth. The above examples have been recorded using a Korg Z1 synthesizer, which gave me the “nicest” oscillator images. On other synths, like the Waldorf microQ, the waveforms have less sharp edges, resulting in a different sound base.

Oscillators can have much more features like additional waveforms, samples, sync, frequency and cross modulation or additive synthesis. But anyway, many sounds are just built using a sawtooth or a pulsewave. If you plan to learn how to program synths, remember what they sound like.

The Eigenharp, a new electronic instrument

Thursday, October 15th, 2009

Eigenlabs offers a completely new electronic instrument, the Eigenharp. For me as a synth addict, it looks like a very interesting instrument. Obviously I’m not talking about the price, but about the musical expressiveness and flexibility. The Wikipedia article still is a stub, but links to a further video.

Yes, I’d like to try it out immediately, but it seems it has not arrived at the german shores yet. Maybe the Pico is worth being an Xmas gift :) .

Update:

The inventor provides more detailed information in a video shared by Engadget.

Switching stops via MIDI in Aeolus 0.8.2

Monday, August 24th, 2009
Aeolus

Aeolus

In my youth, I used to play the pipe organ in the village where I grew up. Nowadays I have less time to play my instruments, and if I have, I’m most often playing synthesizers (or even guitars) instead of walking to a church and get access to a real pipe organ.

(more…)

Qtractor and instrument definition files

Monday, August 24th, 2009
Qtractor Main Window

Qtractor Main Window

After Simple Sysexxer is finally available for testing, I found some time to play with my instruments and Qtractor, an audio and MIDI sequencer.

(more…)

Simple Sysexxer 0.2 beta released

Friday, August 21st, 2009
Simple Sysexxer 0.2

Simple Sysexxer 0.2

I have just released Simple Sysexxer 0.2 beta. See its dedicated page on this blog for details about download and usage.

I need feedback how it works with various flavours of MIDI instruments. If you can share success stories, bug reports or even feature requests, please let me know.