Nørgård Infinity Series

I got enamored with @_greathorned’s generative techniques post + associated article + SuperCollider algorithms and @zerbra’s Nørgård infinity series algorithm. So, what started out as me just experimenting with the algorithms resulted in an overblown library to create infinity series sequences.

I offer it here to anyone that might find it interesting to use or play with. Refresh the community tab within Maiden and look for nørgård to install on your Norns.

Enjoy.


Nørgård

A small library to generate Nørgård infinity sequences for Norns.

Thank you to Ezra Buchla for his lua Nørgård algorithm and Lawton Hall for his Nørgård SuperCollider algorithms.


Install

You can install this library and demos via Maiden. Be sure to refresh the Community lists, and look for nørgård.

Otherwise, if you’re a developer, pull down the library from Github and checkout the API.


Usage

Look at the demos to see how the library can be used. The library itself is lib/noergaard.lua just add that file to your scripts folder, wherever you chose (I prefer lib/). Then add the following to your script.

local noergaard = include("path/to/noergaard")

Demos

Along with the library are 3 demos showing how to use the library.

noergaard-simple

Generates Nørgård infinity series and played using the PolyPerc engine. There are no controls, it just starts and goes on… infinitely

screenshot of noergaard-simple

noergaard-sequencer

A fairly simple sequencer that plays infinity sequence — uses PolyPerc engine and also outputs Midi notes (to device 1).

screenshot of noergaard-sequencer

Page Controller Description Values
All E1 Change page
1 E2 BPM 20 - 300
1 E3 note length 1/256 - 4
2 E2 Midi root C-2 - C8
2 E3 Scale type (see norns/musicutil.lua for full list); 0 = scale determined naturally by algorithm 0 - 46
3 E2 Step 1 – 12
3 E3 Sequence length; 0 = maximum (or 480) 0 - 320
4 E2 Loop at length true (1) or false (0)
4 E3 Increment 1 - 8

noergaard-chords

Generate chords from infinity series intervals — uses PolyPerc engine and also outputs Midi notes (to device 1). Thanks to Devine Lu Linvega for the keyboard.

screenshot of noergaard-chords

Page Controller Description Values
All E1 Change page
1 E2 BPM 20 - 300
1 E3 note length 1/256 - 4
2 E2 Midi root C-2 - C8
2 E3 Chord type (see norns/musicutil.lua for full list); 0 = build chord from sequence notes using amount determined by Chord length 0 - 26
3 E2 Step 1 – 12
3 E3 Sequence length; 0 = maximum (or 480) 0 - 320
4 E2 Loop at length true (1) or false (0)
4 E3 Chord length; only applies when Chord type is set to Noergaard 2 - 9
28 Likes

very very very cool! I got a chance to play with this a bit this morning and really dig it! nice work and thanks for sharing!

1 Like