2013 21 July
Ladies and gentlemen: i give you the licog composer
Licog composer raises from the idea of the inherent math to most of the music on its most classical way of understanding it.
Music and repetition
Let's think first of any minimal techno, trance or breakbeat track: seeing a repetitive pattern is unavoidable. Music is mainly made of repetition; repetition generates the illusion of a constant flow: where we have a kickdrum constant repetition, we understand a rythm, as if it was a wheel rotating in constant speed. That is actually a human perceptive illusion. This kind of things makes us a more interesting specie.
Prelude and Fugue no 2 in C minor, on Soundcloud
Now, thinking about classical music, most of repetitions are the canvas to make variations: please notice in this Bach Fugue, how the first small pattern is repeated each time with a different tone at the beginning; generating this kind of rhyme; that imprints a certain feeling. So that is a sort of minimum mathematical algorythm, flavoured with the author's genius to generate a musical piece.
The program idea
You may find this program very similar to others. Truth is that it just started as an activity with no target; and is still faulty. I decided to show it up now, and soon i may upload also the code... it needs a 'bit' of clean up, and i first need to learn how to use GIT. (feel free to message me if you need it)
What we have here is a program to create musical patterns whose composition method is based on algorythms of a sort which i observed in lots of music. You build it up from objects called 'licogs' which are connected toegether to generate chains; the good thing is that some of them have different functions from just 'sounding'. They can alter the constant repetition, to generate variation of that repetition. If you want to understand it better, please download a copy. It's free.
Step 0: Open the program
when you open the program you should see something like this; but in a bigger window. The red circle in the center beats between long intervals to let you know that the program is running well.
Step 1: Scroll and move around
You can scroll the entire "space" by pressing your mouse right button and dragging it. That will give you a theorically infinite space to make compositions
Step 2: Create a LICOG
Now, you will not be able to do anything but scrolling and hearing, until you press the control key. You can download and use as espectator licog files; but you will also be able to edit the composition when you press it.
To create a Licog; simply click somewhere in the screen while you press the Control key
Step 3: Create a linked Licog
Licogs work mainly by linking. Now that you have a Licog in the screen, create another one, by control+clicking anywhere else in the screen. Every licog that you create will be automatically linked to the nearest licog that it finds.
You can "trigger" a Licog when you first select one (cliking it) and press space. you may not hear anything, but the Licogs will make a vibration animation.
Every link has a direction, as you can see in the little blob between licog and licog, that is not centered, indicating a direction. Please do create a few more licogs, and trigger each one, to see what happens.
Step 4: Making Licog's sound
Let's hope that this isn't the hardest part. All the licogs that you have seen in this tutorial, has been of the silent kind: 'Z'. If a licog is of the note kind; it will sound at the same time as it vibrates. This is a change you can make without pressing control, (i'm actually just realizing this now) but just right-clicking the licog. This makes a kind of zapping between the three major licog kinds:
This is the & licog: it triggers instantly every licog that is connected to it. Behind this licog, are the loop-modifying licogs of the wildest kind.
This is the silence licog. It will trigger it's connected licogs after one time.
This is the sounding licog. It sounds and also triggers it's connected licogs after one time.
Play with these a bit, and then try rotating the mouse wheel while a licog is selected. You may find some kinds of licogs annoying. That is to be solved then...
If your program is not sounding, press alt key. A menu will be shown. Select midi config option; which will ask you for midi input, and then for midi output. Try different midi outputs until it works. If you still can't, there are still possibilities; you may ask here or contact me personally.
Step 5: Moving licogs
You can move a licog by control+clicking it. If you keep the control key pressed, you will notice a grey square around the Licog. That means that you can drag it.
Please notice that with the control key, you can select many licogs one by one, and then drag all the selected ones.
Step 6: Loop link
You can link licogs in many ways. A very musical way to link licogs, is to make a closed loop; so when the trigger gets to the last one, it will start the sequence all over again. To link a licog to other one that was already there; control+click near the first licog, and drag into the second licog: the same way as when you creat licogs; but instad of releasing the mouse button in an empty place, you release it where it is a Licog.
Step 7: Area Select
Achieve this just clicking and dragging your mouse.