💾 Archived View for thrig.me › blog › 2024 › 03 › 22 › poem.gmi captured on 2024-08-18 at 18:14:29. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-05-10)

-=-=-=-=-=-=-

Ligeti - Poème symphonique (1962)

This is a controversial work; a planned broadcast was canceled, rejected by both the "petit-bourgeois" and "the seeming radicals", according to composer György Ligeti:

Radicalism and petit-bourgeois attitudes are not so far from one another; both wear the blinkers of the narrow-minded.

On the other hand, the work does consist of 100 metronomes set to random speeds and wound up as much as possible, and all started as simultaneously as possible. Also the Fluxus movement did feature anti-commercial and anti-art sensibilities. So getting canceled in favor of some more popular (and advertising friendly) football match is hardly unexpected. Don't rock the boat, nor turn those tables outside the temple! It's not good for business.

A modern adaptation is easy to arrange thanks to the productivity improvements offered by computers.

    ; György Ligeti - Poème symphonique (1962)
    ; adapted to MIDI woodblocks
    (require :asdf)
    (asdf:load-system :smolmidi)
    (block nil (setq *random-state* (make-random-state t)) (return))

    (defconstant +nmemb+ 100 "number of noise sources")

    (defun velonoise () (+ (random 4) (random 4) (random 4)))

    (defun make-track ()
      (let* ((track (smolmidi:new-track))
             (pitch (+ 48 (random 36)))
             (dtime (+ 64 (random 256)))
             (cost (/ 1 dtime))
             (energy (- 1 (/ (+ (random 1.0) (random 1.0)) 2)))
             (offset (random 256)))
        (smolmidi:patch-change track 0 115)
        (loop while (plusp energy) do
              (smolmidi:note-on  track offset pitch (+ 96 (velonoise)))
              (smolmidi:note-off track dtime  pitch 0)
              (decf energy cost)
              (setf offset 0))
        track))

    (defun make-tracks () (loop repeat +nmemb+ collect (make-track)))

    (smolmidi:write-midi-file "poem.midi" (make-tracks))

/music/poeme-symphonique.mp3

Experimentation

What happens if you make a rhythm crab canon (same rhythm mirrored about a central point) with a turtle drum soundfont?

drumc.lisp

drumc.midi

drumc.mp3

piano.midi

piano.mp3

Resources

gemini://ahearn.studio/polyphemus_in_four_moods/

Common LISP MIDI Library

Some smaller soundfonts (perhaps good for constrained systems) in addition to a metronome soundfont were found, but I ended up not using them. Maybe for something else?

http://www.mirbsd.org/~tg/soundfont/

http://www.timbrechbill.com/saxguru/Timidity.php