Get in the Sea!

Get in the Sea!

Eight seafarers set sail to perform Terry Riley’s In C

Inspired by a recent thread about Terry Riley’s In C I thought it would be a fun exercise to write a norns script to play it.

I’ve probably made mistakes transcribing the music so let me know (or send a pull request) if you notice anything.

Requirements

norns
MIDI (optional)
mx.samples (optional)

Documentation

K2 - Start / Stop play
K3 - Go back to the start

It will output MIDI, crow (not tested) or audio using PolyPerc as the default engine but sounds really nice using mx.samples as the engine with different instruments for each player. There are params for the probability of repeating a phrase rather than moving on and to limit how far the players can get ahead of the furthest behind.

Download

47 Likes

Looking forward to giving this a go - Thank you for sharing!

1 Like

the song is wonderful and script is a great example of how to script music in norns!

could you talk about your phrase notation? e.g.:

--<midi note>:<num beats>
--!! = rest
--64 = e4
phrases = {
  {"64:1", "64:1", "64:1"},
  {"64:0.5", "65:0.5", "64:1"},
  {"!!:0.5", "64:0.5", "65:0.5", "64:0.5"},
  {"!!:0.5", "64:0.5", "65:0.5", "67:0.5"},
  {"64:0.5", "65:0.5", "67:0.5", "!!:0.5"},
...

did you write this by hand? or did you convert it from a midi file?

1 Like

I did it by hand. It seemed like a good idea at the start but not so much by the end :). I haven’t spent any time reading music for years so it was good to remind myself of some of the basics. I’m not doing anything more complicated than notes and rests but luckily the music doesn’t have too much else.

I had a quick look at your tmi library but wasn’t sure it would work for this case (let me know if i’m wrong) and looked at reading MIDI files but that seemed a bit bigger than a weekend project.

2 Likes

as my music teacher says - transcribing by hand is always a good thing! yeah it takes awhile but it helps to really understand music.

I think your approach makes sense! its very straightforward and nice, I was thinking a generator for that kind of phrases table would be cool. another project for another time maybe!

tmi probably would work but it has a hard limitation in that each measure is 4 beats, so the phrases would have to be structured differently. also the tmi syntax is a little funky, so like

{"64:0.5", "65:0.5", "64:1"},

would have to be

e4 f4 e4- e4

since tmi doesn’t specify note lengths, you have to use note ties (the “e4- e4”) for whatever subdivision you are in and the number of subdivisions are equal to the number of things on each line. complicated rhythms might involve a lot of note ties unfortunately. I think tmi is most happy with chords :slight_smile:

2 Likes

This is awesome! can’t wait to try it out…probably one pf my favorite pieces of music of all time TBH…

2 Likes

@tomw

so cool!!!

could you possibly add External MIDI clock to it?
(start/stop)

i would like to run it on multiple MIDI synced norns all at the same time.
:stuck_out_tongue:

2 Likes

Thanks for bumping these threads with these fantastic tools! So grateful for all of these!

That should be there now…seems to work…just copied Norns - How do I listen for incoming MIDI start/stop messages? - #3 by okyeron :slight_smile:

Would love to see/hear it.

2 Likes

AWESOME!
Thank you!

i’ll post the noiz results soon!
:stuck_out_tongue:

UPDATE…

@tomw
so it looks like start and stop work GREAT!

ran into series of other problems… :slight_smile:
when i go to the EDIT page to assign a Seafarer to a midi channel…everything locks up.
(i’m assuming that’s where you would assign MIDI)

to unfreeze things…i hit K1 and then K1 a second time and i can navigate through the Parameters EDIT page.

also…if i change the Audio Engine it kicks me out of the Parameters page and back into the script main page.

if i try to edit a seafarer and then go back to the script with K1 then hit K2…it goes to the Save PSET page.

last one…it’s REALLY loud.
not that loud is a bad thing…in fact its usually an awesome thing…

Do you have mx.samples installed but no instruments downloaded? Thats the only thing I can think of for the lockup going into the settings. I’ve added a code change to stop that - mx.samples isn’t available now unless you have instruments. That might also be the cause of it going to the PSET page.

I don’t think I can do anything about it going back into the script when you change engine. That bits a bit hacky.

i have mx.samples installed for use with Plonky.

went back and downloaded a new sample.
NOW the seafarer options appear!
:slight_smile:
AWESOME!

you might want to clarify that in the guide.
it really throws the script for a loop if it doesn’t see a sample bank option on norns.
or at least state that you can only get to the MIDI settings if an mx.sample bank is installed.

just for anyone curious…this is what happens if you do not have an mx.samples bank installed and you try to go to the seafarer Parameters page:

Summary

first it locks up…when trying to go to a seafarer parameter page…
if i hit K1 it goes to the script.
then hitting K3 jumps to the Parameter Map page for seafarer 1.
hitting K2 jumps it to the PSET save/load page
repeated pushes of K2 toggles between PSET and Map pages.
using E1 will let me get back to the scripts page so i can clear it and try again.

ok…off to explore the sea… :stuck_out_tongue:

UPDATE…

i got off the shore but i didn’t get far. :slight_smile:
norns #1 has locked up…sorta…
it will still MIDI start and stop which is great…but…now i can’t get out of the script.
tried to connect with maiden and that’s not working.
tried the norns Vulcan Death Grip (K3+K2+K1) and that’s a no go either. :frowning:
i set norns #1 to have MIDI for every single seafarer.

the white button of death is my only recourse at this point.

Well that’s impressive. I’ve only tried 2 midi outs I think so I’ll do some testing with more

1 Like