flavioeverardo.com
Armin 1.0 First Songs PDF Print E-mail
Written by flavioeverardo   
Monday, 21 March 2011 15:37

In this article is shown the first Armin 1.0 result songs in WAV and MP3 format. There are 6 songs (5 MP3 and 1 WAV files) showing the first results provided by Armin 1.0. These songs contains several parts with trance/dance instruments like bass drums, snare drum, hi hats and a melodic line.

tranceSong1 (WAV format)                                       tranceSong2 (MP3)

fragments = 8                                                         fragments = 6
fundamental = g                                                     fundamental = a
mode = major                                                         mode = major
bpm = 132                                                              bpm = 135
length = 3:52                                                         length = 2:50

 

tranceSong3 (MP3)                                                  tranceSong4 (MP3)

fragments = 5                                                         fragments = 5
fundamental = f                                                      fundamental = e
mode = major                                                         mode = major
bpm = 135                                                              bpm = 134
length = 2:50                                                         length = 2:50

 

 

tranceSong5 (MP3)                                                  tranceSong6 (MP3)

fragments = 7                                                         fragments = 6
fundamental = c                                                      fundamental = c
mode = major                                                         mode = major
bpm = 133                                                              bpm = 133
length = 2:50                                                         length = 2:50


The last two songs (tranceSong5 and tranceSong6) were generated with the same melodic line. This is achieved by telling Armin that do not change the melodic line from one execution to another

Currently the work is pointing to the bass drum and snare fills for 8th and 16th bars, also we are developing a crash cymbal for every change or progression in the song and we are upgrading the musical synthesis in the snare drum and the pads in the melodic line.

 

 

Last Updated on Monday, 21 March 2011 16:03
 
Armin First Demos PDF Print E-mail
Written by flavioeverardo   
Tuesday, 01 March 2011 11:08

Here is Armin, an automatic trance music composition tool that uses Answer Sets Programming as engine and Csound for music synthesis.

This post will explain more about Armin, the progress, two demos of Armin’s composition, future work and more...

About Armin

Armin is a trance music composition algorithm which takes the composition rules represented in a declaratively way (ASP). These rules have the property to model a desired result within the genre and to explore future extended compositions. One feature that is sought is the ability to perform a "valid" musical composition inside the trance genre with its dependencies of the internal parts of a traditional song and percussion and its respective progression between the different sections.

Armin's objective for this first version is not to fully compose a piece of the trance music, but to serve as a "template" both melodic and percussive and other sounds and lately make some post production to this source. Additionally it seeks to explore different outcomes (each answer a set corresponds to a valid piece of music) that have openness within the music style and looking forward to propose variations in its composition completely valid. To generate a new piece of music just ask for a new model or answer set.

Armin can easily compose pieces over one minute long in a short period of time with 4 instruments, 3 from percussions (bass drum, snare and hi hats) and one melodic line (pads). The main function of Armin is the sounds generation which is divided in 3 main sections which are: the results interpretation, instruments generator and the parsers. The results interpretation identifies the parts that are going to be played among the song (intro, verse, chorus, break...).Each part calls the instruments generator which is an ASP file depending on the instrument selected by the rules and finally it calls the parsers to a Csound file. Once the Csound file is complete, is time to render to get the audio file. Additionally Armin provides a WAV to MP3 converter after the Csounds rendering.

Armin receives the name in honor to Armin van Buuren, who stands out as DJ, producer inside the trance genre, founder and owner of Armada Music record label.

 

Armin First Demos

Armin first demos were tested by composing pieces from over one minute and a half and over two minutes. Two of the best Armin productions are in the links below.

Demo1:

Duration: 1 minutes 56 seconds, built in 12 seconds.

Armin Demo 1

Demo2:

Duration: 2 minutes 25 seconds, built in 15 seconds.

Armin Demo 2

 

Currently we are working on the musical fills generated by ASP, and some new instruments like the crash and trance winds...

Enjoy!!

Last Updated on Saturday, 19 March 2011 14:18
 
How it sounds? PDF Print E-mail
Written by flavioeverardo   
Monday, 20 December 2010 23:06

Hello everyone in this article I'll show you how the trance beats were created from an answer set and how they sound... I've been talking in many other articles of automatic music composition and trance beats and more... but you may be thinking... When I'm going to hear something? Well... you don't have to wait anymore... Here is the secret...

In the last article I presented the Answer Set code of the Bass Drum... and here is the answer:

Answer: 1
playDrum(4,8) playDrum(8,8) playDrum(12,8) playDrum(0,8) playDrum(7,0) playDrum(6,0) playDrum(5,0) playDrum(11,6) playDrum(10,0) playDrum(9,0) playDrum(15,0) playDrum(14,4) playDrum(13,4) playDrum(3,4) playDrum(2,0) playDrum(1,6)
SATISFIABLE

This is just only one answer and you can read as: there are 16 "playDrums" the first parameter is the beat number and the second is the amplitude. As you can see the beats 0, 4, 8 and 12 have an amplitude value of 8 (mandatory beats in a 16 times measure). Then, the beats 1 and 11 have an amplitude of 6 (remember that the optional hits have amps between 4-6). The beats 3, 13 and 14 have an amplitude value of 4 and the others (2, 5, 6, 7, 9, 10 and 15) have an amplitude value of 0 which means that there will be no sound during those times.

So... I can guess that you may be concerned about the result and how does this sounds... well... you tell me... here is the audio

How does this works?

Here is an image of how the sound is finally produced... Every answer is taken as the input of the Drums Parser. This parser identifies every hit and its value, and generates a .csd file. Every Csound file generates an audio file. For this single run there were 20 independent fragments/songs of 16 times with the sound of a Bass Drum.

 

Also when I got this answer, I also asked for 19 more answers in a single run and I got interesting results... Here they are another fragments of this run...

audio 2

audio 3

audio 4

audio 5

Now imagine if we ask to this tool to join this pieces. Joined by certain rules which determine the order and the relevance of appearance during the time of a complete song...

mixdown1

mixdown2

Now imagine... whatever you like...

Last Updated on Saturday, 19 March 2011 13:24
 
Automatic Bass Drum Composer PDF Print E-mail
Written by flavioeverardo   
Monday, 13 December 2010 16:49

Hello there here is the driver for the automatic creation of trance beats... I use Answer Sets Programming to get "n" different answers...

the comments are written in bold and the explanation is given next to the // symbol

%%get the models for the bass drum... mandatory bassDrumHits 1,5,9,13
%%for a 16 notes length

//you can have 16 notes in a 4/4 measure and there are only 4 mandatory hits which are the beat 0, 4, 8 and 12. The others and optional

%%optional hits
bassDrumHits(1..3;5..7;9..11;13..15). 

%volume (amplitude) values from 4 to 6 or 0 for no hit

amplitude(0;4..6). //for the every optional hit an amplitude is given. The amp can be 0 (note off or no kick), 4, 5 or 6.

%%default bassDrum Amplitude = 8
bassDrumAmplitude(8). //for the mandatory hits an amplitude is given as a fact with the value of 8.

%%mandatory BD hits for trance music
mandatoryHit(0;4;8;12). //as I mentioned before the mandatory hits are 0, 4, 8 and 12

%% if is mandatory hit... get the amplitude and play it
playDrum(X,A) :- bassDrumAmplitude(A), mandatoryHit(X). //for every mandatory hit and the fact amplitude implies play Drum (hit, amp)

%% pick an amplitude and a non mandatory hit...
1{ playDrum(Y,X) : amplitude(X) }1 :- bassDrumHits(Y). //for every optional hit pick and amp and play it...

//hide some facts given in the answer set
#hide bassDrumHits(X).
#hide amplitude(X).
#hide bassDrumAmplitude(X).
#hide mandatoryHit(X).

 

----------------------------------------------------------------------------------------------------------------------------------------

there are many possible results or sets... for example one can be:

Answer: 1
playDrum(4,8) playDrum(8,8) playDrum(12,8) playDrum(0,8) playDrum(7,0) playDrum(6,0) playDrum(5,0) playDrum(11,0) playDrum(10,0) playDrum(9,0) playDrum(15,0) playDrum(14,0) playDrum(13,4) playDrum(3,0) playDrum(2,0) playDrum(1,0)
SATISFIABLE

This result tell us that the kick 0, 4, 8 and 12 are played with an amplitude of 8. The other play Drums with a cero in the second parameter means that they will be played but with an amplitude of cero, in other words there are not played in this answer set.

The kick number 13 will be played with an amplitude of 4. So the answer will be

0 1  2  3  4  5  6  7   8  9  10 11 12 13 14 15

x  -   -  -   x   -  -   -   x   -   -   -    x   x   -   -

If you don't like it, just ask for another model... Imagine how many possibilities are, if there are 12 notes that can be on or off?

Last Updated on Monday, 13 December 2010 16:50
 
Trance Session 4 PDF Print E-mail
Written by flavioeverardo   
Monday, 11 October 2010 22:06

Hello everyone here is a new Trance Session... Enjoy it...

to download it just give a rigth click and save the target as...

playlist:

Roger Shah & Sunlounger - Breaking Waves     
Mark Norman - Actual Events        
Markus Schulz - Do You Dream       
Julian Vincent - Here For Me          
Flavio Everardo - Touch And Sounds  
Sebastian Brandt - 450                     
Max Graham - Sun In The Winter   
Max Graham - nothing else matters
Blue Wave, Jorge Nava - Echoes From The Heart
Aly & Fila - How Long                 
Paul Webster - The Wolf

 

Trance Session

Last Updated on Monday, 25 October 2010 21:06
 
« StartPrev12NextEnd »

Page 1 of 2