96 kHz.org |
Advanced Audio Recording |
Generation of generic MIDI Data with a DSP This
page describes an approach to create sound
patterns from music rhythms described by mathematical equations. The
idea behind this is to easily define music for long term applications
like video games without describing every note in detail but getting
flexible and interesting music though without many repetitions. The
first project like this had been done with my DSP Platform.
The process starts with random selection of predefined sound and rhythm patterns know from trance and dance music in the first place which cover beginnings, middle phrases, soli and endings. For any track in the setup a different point of start is chosen. Modifiers are applied in order to put dynamics and emphasis to the tracks to support the musical meaning. Patters are selected with a randomly progressing counter defining the number of tone, part and time index.
Let equations do the work For instance Amplitude (n,t) = 1 + k * sin (
(w + n/U) * t * (1+ n/W)) defines a continuously changing amplitude
for all of the pattern tracks being dependent on the parameters W and
U. The qualifier PatternOn (p,n,t) = random() +
PatternOn (p,n,t-1) + PatternOn (p,n+1,t-1) + PatternOn (p,n-1,t-1)
defines if a pattern is set to "on" = playing or not according
to a random number, taking into account the former states of the adjacent
channels. This leads to a higher probability for tracks to be activated
in case there is low activity.
Adding dynamics to sound tracks With modification qualifiers m=f(t,p)
and p=f(t,m,k) the sound tracks are synthesized distinguishing between
solo tracks, accompaignment tracks, lead music and supporting tracks
for synths. Also bass drums and drums are handled this way. SoundTrack
(m,n,t,k) = Patterns (n,t) * Masks (m, k,t) will cut out MIDI notes
for any of the tracks according to the particular mask and pattern used.
By using special masks with repetitive windows, arpeggio notes can be created from dynamically created tracks, which were the result of a track bouncing of groups of channels.
Obtaining the finalized MIDI Finally the MIDI channels are created from the tracks:
Sound Demos of synthesized music Listen to a demo sound here : ARPDANCE
Similar Articles Read an article how to create MIDI with a DSP-System
|
© 2001 - Jürgen Schuhmacher |