Archive for April, 2016

Reading and Transforming a MIDI File

Written by on April 27, 2016 in LISP, Music, Programming with 0 Comments
Reading and Transforming a MIDI File

Sometimes it can be interesting to take a MIDI file and transform the score it represents. For example, you can change the tempo, alter the instruments, or even modify the pitches and rhythm. To do something like this, it is helpful to build a convenient framework. In today’s post, I am outlining one approach that […]

Continue Reading

Motifs and Transformations

Written by on April 19, 2016 in LISP, Music, Programming with 0 Comments
Motifs and Transformations

One of the creative approaches to synthesizing music is to start with a short melodic motif and then apply various transformations on it. The motif is usually (but not necessarily) of 1 bar duration. What are some possible transformations? This depends on one’s creativity, but here is a simple list: 1) Identity transformation: Do nothing […]

Continue Reading

Rhythmically Odd Rhythms

Written by on April 12, 2016 in LISP, Music, Programming with 0 Comments
Rhythmically Odd Rhythms

In the excellent book The Geometry of Musical Rhythm – What Makes a ‘Good’ Rhythm Good? by Godfried T.Toussaint, there is an interesting discussion of Rhythmic Oddity in Chapter 15. A rhythm has this property if no two of its onsets divide the rhythmic cycle into two half-cycles, that is, two segments of equal duration. […]

Continue Reading

C++14: Return Type Deduction for Normal Functions

Written by on April 8, 2016 in C++, Programming with 0 Comments

In C++11, a function must specify its return type in one of the following two ways: int aFunction(int arg) {     return arg * 2; } (or) auto aFunction(int arg) -> int {     return arg * 2; } The first is the classic function definition syntax. The second form was introduced in […]

Continue Reading

Top