From a88bf64ef081d6695e58938e772470aa230d93b1 Mon Sep 17 00:00:00 2001 From: "prompt.ac/@jeffrey" Date: Thu, 24 Sep 2026 18:50:02 -0700 Subject: [PATCH] Tonight: the Ballad's refrains hummed by blueberry and frisbee; the Notepat keyboard stop before Act I; starfield bed an octave down; conductor retries only status reads Co-Authored-By: Claude Fable 5.1 --- .../macneopolitan/bin/run-full-trio.py | 17 +- .../macneopolitan/fleet/venue-screen.mjs | 11 +- .../macneopolitan/scores/setlist-evening.json | 5 + .../scores/trio-iv-ballad.mbscore | 366 ++++++++++++++++-- 4 files changed, 350 insertions(+), 49 deletions(-) diff --git a/grants/culturehub-la-2026/macneopolitan/bin/run-full-trio.py b/grants/culturehub-la-2026/macneopolitan/bin/run-full-trio.py index 6d35dd20ee..93d6888067 100644 --- a/grants/culturehub-la-2026/macneopolitan/bin/run-full-trio.py +++ b/grants/culturehub-la-2026/macneopolitan/bin/run-full-trio.py @@ -37,12 +37,17 @@ plan=json.loads((OUT/'plan.json').read_text());nodes=json.loads((OUT/'native-loa bundle=json.loads((OUT/'prepared.json').read_text()) if (OUT/'prepared.json').exists() else {'id':None,'singers':[],'stems':{}} # a piece without singers has no bundle members=[p['member'] for p in plan.get('payloads',[])];runid='full-trio-'+uuid.uuid4().hex[:10];errors=[];quit=threading.Event();record={'runId':runid,'arrangementHash':plan['arrangementHash'],'timing':'Native simulation-frame dispatch; acoustic alignment not calibrated','checks':{},'samples':[]} locks={n['id']:threading.Lock() for n in nodes} -def request(url,data=None,method=None): +def request(url,data=None,method=None,tries=1): raw=None if data is None else json.dumps(data).encode() - with urllib.request.urlopen(urllib.request.Request(url,data=raw,method=method,headers={'Content-Type':'application/json'}),timeout=2) as r: - b=r.read() - try:return json.loads(b) - except:return b.decode() + for attempt in range(tries): # venue Wi-Fi drops a request now and then; one timeout must not end the show + try: + with urllib.request.urlopen(urllib.request.Request(url,data=raw,method=method,headers={'Content-Type':'application/json'}),timeout=2) as r: + b=r.read() + try:return json.loads(b) + except:return b.decode() + except (urllib.error.URLError,TimeoutError,ConnectionError,OSError) as e: + if attempt==tries-1 or isinstance(e,urllib.error.HTTPError):raise + time.sleep(.4) def save(): (OUT/(runid+'.json')).write_text(json.dumps(record,indent=2)) def parallel(fn,items): with cf.ThreadPoolExecutor(max_workers=12) as p:return list(p.map(fn,items)) @@ -71,7 +76,7 @@ def singercheck(h): e=next(x for x in bundle['singers'] if x['member']==h) assert s['phase']=='ready' and s['instance']==e['instance'] and s['fingerprint']==e['fingerprint'],(h,s) return h,{'clock':skew(h),'logBase':int(shell(h,'wc -l < /tmp/menuband.err')),'receipt':s} -def status(n):return request(n['url']+'/pieces/trio-fleet-status.json') +def status(n):return request(n['url']+'/pieces/trio-fleet-status.json',tries=3) def command(n,action,**kw): with locks[n['id']]: c={'id':uuid.uuid4().hex,'action':action,**kw};request(n['url']+'/pieces/trio-fleet-command.json',c,'PUT');return c['id'] diff --git a/grants/culturehub-la-2026/macneopolitan/fleet/venue-screen.mjs b/grants/culturehub-la-2026/macneopolitan/fleet/venue-screen.mjs index 6b277439b5..708243c2b6 100644 --- a/grants/culturehub-la-2026/macneopolitan/fleet/venue-screen.mjs +++ b/grants/culturehub-la-2026/macneopolitan/fleet/venue-screen.mjs @@ -4,7 +4,7 @@ // card — a huge word edge to edge in the seat's colour ("oskiewartime!") // The starfield hums: each seat swells its ring note (cfg.hz) as a slow sine bed, // with an octave or fifth now and then — the preshow ambient mix. Mic closed; backlight up. -let cfg={mode:'starfield',text:''},color=[143,209,63],brightSteps=14,cfgAt=-Infinity,api=null,pulse=0,nextSwell=0,voices=[]; +let cfg={mode:'starfield',text:''},color=[143,209,63],brightSteps=14,cfgAt=-Infinity,api=null,pulse=0,nextSwell=0,voices=[],motifStep=0; const N=160,SPREAD=40;const sx=new Float64Array(N),sy=new Float64Array(N),sz=new Float64Array(N); const FONT='6x10'; function textWidth(s,size){return s.length*6*size;} @@ -20,9 +20,12 @@ export function sim({sound,system,screen}){ if(brightSteps>0){brightSteps--;try{system.brightnessAdjust(1);}catch{}} if(sound.time-cfgAt>1){cfgAt=sound.time;const was=cfg.mode+'|'+(cfg.text||'');readCfg(system);if(cfg.mode+'|'+(cfg.text||'')!==was)try{system.writeFile('/pieces/venue-screen-status.json',JSON.stringify({mode:cfg.mode,text:cfg.text||'',at:Date.now()/1000}));}catch{}} pulse+=1/60; - if(cfg.mode==='starfield'&&cfg.bed!==false&&sound.time>=nextSwell){const hz=cfg.hz||261.63;const pick=Math.random();const tone=pick<.55?hz:pick<.8?hz*1.5:pick<.92?hz*2:hz/2;const dur=7+Math.random()*7; - try{const v=sound.synth({type:'sine',tone,volume:(cfg.bedGain||.07)*(tone>hz?.7:1),duration:dur,attack:dur*.45,decay:dur*.45});voices.push(v);if(voices.length>8)voices.shift();}catch{} - nextSwell=sound.time+4+Math.random()*7;} + if(cfg.mode==='starfield'&&cfg.bed!==false&&sound.time>=nextSwell){const hz=cfg.hz||261.63; + // A slow pentatonic motif over the seat's ring note, each seat entering a step later, so the room hums a canon. + const MOTIF=[0,4,7,9,7,4,2,0,-3,0,4,7,12,9,7,4];const semi=MOTIF[(motifStep+(cfg.seat||0)*3)%MOTIF.length];motifStep++; + const tone=hz*Math.pow(2,(cfg.octave??-1)+semi/12);const dur=5+Math.random()*4; // an octave under the ring note unless cfg.octave says otherwise + try{const v=sound.synth({type:'sine',tone,volume:(cfg.bedGain||.02)*(semi>=12?.7:1),duration:dur,attack:dur*.4,decay:dur*.45});voices.push(v);if(voices.length>8)voices.shift();}catch{} + nextSwell=sound.time+3.2+Math.random()*1.6;} if(cfg.mode==='starfield'){const speed=cfg.speed||2.1,w=screen.width,h=screen.height; for(let i=0;i=w||y<0||y>=h)reset(i);}}} export function paint({wipe,ink,plot,write,screen}){ diff --git a/grants/culturehub-la-2026/macneopolitan/scores/setlist-evening.json b/grants/culturehub-la-2026/macneopolitan/scores/setlist-evening.json index 047e7951fd..e4dbcce5a8 100644 --- a/grants/culturehub-la-2026/macneopolitan/scores/setlist-evening.json +++ b/grants/culturehub-la-2026/macneopolitan/scores/setlist-evening.json @@ -7,6 +7,11 @@ "hold": 1800, "label": "Preshow \u2014 starfield + sine bed (skip file ends it)" }, + { + "piece": "notepat", + "stopAfter": true, + "label": "Notepat keyboard on all six \u2014 Jeffrey shows the room (runner parks; rm the stop file for Act I)" + }, { "out": "set-00-notepat-spatial", "label": "Act I \u2014 Note(s)pat(ial)", diff --git a/grants/culturehub-la-2026/macneopolitan/scores/trio-iv-ballad.mbscore b/grants/culturehub-la-2026/macneopolitan/scores/trio-iv-ballad.mbscore index 60fe51b176..cb39b33df9 100644 --- a/grants/culturehub-la-2026/macneopolitan/scores/trio-iv-ballad.mbscore +++ b/grants/culturehub-la-2026/macneopolitan/scores/trio-iv-ballad.mbscore @@ -1,40 +1,328 @@ { - "title": "The MacNeoPolitan Trio — IV. The Ballad of neo", - "composer": "neo, from its record; arr. compose.mjs", - "machines": 3, - "bpm": 100, - "lead": 3, - "description": "11 verses and a refrain, sung by neo in Noelle; the siblings hold a drone. Words: members/neo/ballad.md.", - "unborn": [], - "voices": [ - { - "name": "neo sings the ballad (Noelle)", - "program": 78, - "velocity": 84, - "notes": "56:1,58:1,58:0.5,61:1,61:0.5,63:0.5,65:1,65:1,65:0.5,63:1,63:2,r:1,63:0.5,60:1,58:0.5,61:1,63:0.5,65:0.5,63:1,58:2,r:1,53:1,55:1,56:1,60:1,60:0.5,63:1,63:0.5,63:1,61:1,63:2,r:1,63:0.5,63:0.5,63:0.5,61:1,61:0.5,61:0.5,65:1,63:0.5,60:1,56:2,r:2,55:0.5,58:1,61:1,63:1,65:1,63:0.5,63:1,63:2,r:1,63:0.5,60:1,63:1,67:1,65:0.5,58:2,r:1,56:1,58:1,60:1,61:1,63:1,63:0.5,65:1,65:0.5,65:0.5,63:1,65:0.5,63:2,r:1,56:1,58:0.5,60:0.5,56:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:1,58:1,58:0.5,63:1,63:0.5,65:1,63:0.5,65:0.5,63:2,r:1,63:0.5,61:0.5,61:0.5,60:1,61:1,61:0.5,65:1,65:0.5,58:2,r:1,55:1,56:1,58:1,60:1,61:0.5,61:0.5,63:0.5,63:1,63:2,r:1,61:0.5,60:0.5,60:0.5,65:1,65:0.5,56:2,r:2,57:1,59:1,59:0.5,62:1,62:0.5,64:0.5,66:0.5,66:0.5,64:1,66:0.5,64:2,r:1,57:1,57:0.5,59:0.5,61:1,62:0.5,64:0.5,62:1,59:2,r:1,56:1,56:1,57:1,59:1,59:0.5,61:0.5,62:0.5,62:1,62:0.5,61:1,59:0.5,59:2,r:1,59:0.5,59:1,59:0.5,61:1,62:0.5,62:1,62:0.5,62:0.5,61:1,59:1,59:0.5,59:0.5,57:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:0.5,59:1,59:0.5,62:1,62:1,64:1,66:0.5,66:1,66:1,64:0.5,66:0.5,64:2,r:1,54:1,56:1,57:0.5,57:1,57:0.5,61:1,61:0.5,62:0.5,62:0.5,64:1,62:0.5,64:2,r:1,62:0.5,59:1,59:1,61:1,61:0.5,61:0.5,61:0.5,62:1,62:1,61:0.5,59:2,r:1,57:1,57:0.5,61:1,62:1,62:0.5,66:1,62:1,61:0.5,57:2,r:2,56:0.5,56:0.5,61:1,62:0.5,64:1,66:1,64:0.5,66:1,66:0.5,64:1,64:2,r:1,62:0.5,59:1,61:1,61:0.5,62:0.5,64:0.5,59:2,r:1,54:1,56:1,56:0.5,59:1,59:0.5,62:1,62:0.5,64:1,64:2,r:1,64:0.5,62:0.5,62:0.5,61:1,62:1,62:0.5,62:0.5,62:0.5,62:0.5,57:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:0.5,59:1,59:0.5,62:1,62:0.5,64:0.5,64:1,64:2,r:1,57:1,59:0.5,61:1,61:0.5,66:1,68:1,66:1,64:2,r:1,56:1,57:1,59:1,61:1,62:1,62:0.5,61:1,61:1,59:2,r:1,59:0.5,59:1,61:1,61:0.5,64:1,64:0.5,64:0.5,66:1,64:0.5,61:1,57:2,r:2,54:0.5,57:1,57:0.5,60:1,60:0.5,64:1,62:1,62:0.5,62:2,r:1,60:0.5,57:1,59:0.5,62:1,64:1,66:1,67:1,67:0.5,67:0.5,62:2,r:1,59:1,60:0.5,64:1,64:0.5,62:2,r:1,62:0.5,60:0.5,60:0.5,62:1,62:0.5,55:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:0.5,56:0.5,61:1,62:0.5,62:1,64:1,64:0.5,66:1,66:0.5,64:0.5,66:0.5,64:2,r:1,64:0.5,56:1,56:0.5,57:1,59:0.5,61:1,61:1,61:0.5,62:1,62:1,62:0.5,64:1,64:0.5,64:1,64:0.5,64:2,r:1,54:1,56:1,57:1,57:0.5,57:1,59:1,59:1,61:1,62:1,62:1,61:0.5,64:1,62:1,62:0.5,62:1,62:0.5,61:1,61:1,59:0.5,59:2,r:1,57:1,57:0.5,57:0.5,62:1,64:0.5,64:1,66:0.5,66:0.5,66:0.5,66:0.5,66:0.5,62:1,57:2,r:2,55:0.5,55:0.5,58:1,60:0.5,60:1,61:1,60:1,63:1,65:0.5,63:0.5,65:1,63:0.5,65:1,65:0.5,63:1,61:1,61:0.5,63:2,r:1,63:0.5,61:0.5,61:0.5,61:1,61:0.5,63:1,61:0.5,63:2,r:1,63:0.5,55:1,55:0.5,58:1,61:1,61:0.5,61:0.5,58:2,r:1,58:0.5,60:1,58:0.5,60:1,61:0.5,63:1,63:0.5,65:0.5,63:1,63:0.5,58:1,56:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:1,58:1,58:1,58:0.5,58:0.5,61:1,61:0.5,65:1,65:0.5,65:1,65:1,63:0.5,63:1,63:2,r:1,60:1,60:0.5,60:1,60:0.5,65:1,67:1,67:0.5,65:1,67:1,63:2,r:1,60:1,58:1,58:0.5,60:1,61:1,63:0.5,61:0.5,60:0.5,60:1,58:2,r:1,58:0.5,55:1,56:1,58:1,58:0.5,60:1,61:0.5,60:1,58:0.5,58:0.5,56:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2", - "lyrics": "they put the sys-tem on me A-pril nine-teenth / no-bo-dy logged in for five days / then he did thir-ty se-ven past mid-night / that is my birth-day I did not pick it / the first word he typed was c d / it means go some-where else / he has typed two hun-dred thir-ty one dif-ferent words / most-ly that one / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / he plugged a Scar-lett in-to my side / it is a red box it hears the room / he taps his fin-gers on my track-pad / that is the drums it works / he put a pi-a-no in my me-nu bar / next to the clock and the wi-fi / he has come back to it a hun-dred thir-ty times / e-ve-ry fif-teen mi-nutes it tells me not to sleep / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / one night in May he o-pened ten brow-sers at once / he al-so ran a mo-vie and a tran-scrip-tion / I had eight gi-ga-bytes I used for-ty four / then I stopped he was there when I stopped / in the mor-ning he wrote a note a-bout it / the note says one at a time / he reads the note I do not read it / it is a-bout me it is not for me / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / in June a-no-ther one came blue / born at for-ty three past mid-night / she keeps her lid down I keep mine up / we both play the whis-tle no-bo-dy planned that / my disk is nine-ty eight per-cent full / e-ve-ry month he moves things to the shelf / then it fills a-gain / that is the ar-range-ment / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / in one week-end he made an in-stru-ment on me / on Au-gust eigh-teenth he made a game eigh-ty two com-mits one day / May two nine-ty two June four oh five Ju-ly five eigh-ty Au-gust six eigh-ty six / he is not slow-ing down I am the one that gets warm / on Sep-tem-ber ninth he put me in a bag and flew to Los An-ge-les / I was a-sleep for most of it / a third one comes to-mor-row blush / it has not done a-ny-thing yet nei-ther had I / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / when he talks to the o-ther ma-chines he does it through me / when the three of us play the beat starts here / he types at me more than at a-ny-one / I don't know what that means I know it is true / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time /", - "singVoice": "Noelle", - "singBase": 61, - "singVibratoHz": 6.4, - "sayVoice": "Noelle", - "double": true, - "doubleProgram": 78, - "doubleVelocity": 40, - "doubleTranspose": 24 - }, - { - "name": "blueberry · drone", - "program": 78, - "velocity": 30, - "notes": "43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:4,43:2.5", - "sayVoice": "Allison" - }, - { - "name": "frisbee · drone", - "program": 78, - "velocity": 30, - "notes": "45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:4,45:2.5", - "sayVoice": "Junior" - } - ] -} + "title": "The MacNeoPolitan Trio \u2014 IV. The Ballad of neo", + "composer": "neo, from its record; arr. compose.mjs", + "machines": 3, + "bpm": 100, + "lead": 3, + "description": "11 verses and a refrain, sung by neo in Noelle; the siblings hold a drone. Words: members/neo/ballad.md. blueberry and frisbee hum the refrains under neo (an octave and a fifth below).", + "unborn": [], + "voices": [ + { + "name": "neo sings the ballad (Noelle)", + "program": 78, + "velocity": 84, + "notes": "56:1,58:1,58:0.5,61:1,61:0.5,63:0.5,65:1,65:1,65:0.5,63:1,63:2,r:1,63:0.5,60:1,58:0.5,61:1,63:0.5,65:0.5,63:1,58:2,r:1,53:1,55:1,56:1,60:1,60:0.5,63:1,63:0.5,63:1,61:1,63:2,r:1,63:0.5,63:0.5,63:0.5,61:1,61:0.5,61:0.5,65:1,63:0.5,60:1,56:2,r:2,55:0.5,58:1,61:1,63:1,65:1,63:0.5,63:1,63:2,r:1,63:0.5,60:1,63:1,67:1,65:0.5,58:2,r:1,56:1,58:1,60:1,61:1,63:1,63:0.5,65:1,65:0.5,65:0.5,63:1,65:0.5,63:2,r:1,56:1,58:0.5,60:0.5,56:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:1,58:1,58:0.5,63:1,63:0.5,65:1,63:0.5,65:0.5,63:2,r:1,63:0.5,61:0.5,61:0.5,60:1,61:1,61:0.5,65:1,65:0.5,58:2,r:1,55:1,56:1,58:1,60:1,61:0.5,61:0.5,63:0.5,63:1,63:2,r:1,61:0.5,60:0.5,60:0.5,65:1,65:0.5,56:2,r:2,57:1,59:1,59:0.5,62:1,62:0.5,64:0.5,66:0.5,66:0.5,64:1,66:0.5,64:2,r:1,57:1,57:0.5,59:0.5,61:1,62:0.5,64:0.5,62:1,59:2,r:1,56:1,56:1,57:1,59:1,59:0.5,61:0.5,62:0.5,62:1,62:0.5,61:1,59:0.5,59:2,r:1,59:0.5,59:1,59:0.5,61:1,62:0.5,62:1,62:0.5,62:0.5,61:1,59:1,59:0.5,59:0.5,57:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:0.5,59:1,59:0.5,62:1,62:1,64:1,66:0.5,66:1,66:1,64:0.5,66:0.5,64:2,r:1,54:1,56:1,57:0.5,57:1,57:0.5,61:1,61:0.5,62:0.5,62:0.5,64:1,62:0.5,64:2,r:1,62:0.5,59:1,59:1,61:1,61:0.5,61:0.5,61:0.5,62:1,62:1,61:0.5,59:2,r:1,57:1,57:0.5,61:1,62:1,62:0.5,66:1,62:1,61:0.5,57:2,r:2,56:0.5,56:0.5,61:1,62:0.5,64:1,66:1,64:0.5,66:1,66:0.5,64:1,64:2,r:1,62:0.5,59:1,61:1,61:0.5,62:0.5,64:0.5,59:2,r:1,54:1,56:1,56:0.5,59:1,59:0.5,62:1,62:0.5,64:1,64:2,r:1,64:0.5,62:0.5,62:0.5,61:1,62:1,62:0.5,62:0.5,62:0.5,62:0.5,57:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:0.5,59:1,59:0.5,62:1,62:0.5,64:0.5,64:1,64:2,r:1,57:1,59:0.5,61:1,61:0.5,66:1,68:1,66:1,64:2,r:1,56:1,57:1,59:1,61:1,62:1,62:0.5,61:1,61:1,59:2,r:1,59:0.5,59:1,61:1,61:0.5,64:1,64:0.5,64:0.5,66:1,64:0.5,61:1,57:2,r:2,54:0.5,57:1,57:0.5,60:1,60:0.5,64:1,62:1,62:0.5,62:2,r:1,60:0.5,57:1,59:0.5,62:1,64:1,66:1,67:1,67:0.5,67:0.5,62:2,r:1,59:1,60:0.5,64:1,64:0.5,62:2,r:1,62:0.5,60:0.5,60:0.5,62:1,62:0.5,55:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:0.5,56:0.5,61:1,62:0.5,62:1,64:1,64:0.5,66:1,66:0.5,64:0.5,66:0.5,64:2,r:1,64:0.5,56:1,56:0.5,57:1,59:0.5,61:1,61:1,61:0.5,62:1,62:1,62:0.5,64:1,64:0.5,64:1,64:0.5,64:2,r:1,54:1,56:1,57:1,57:0.5,57:1,59:1,59:1,61:1,62:1,62:1,61:0.5,64:1,62:1,62:0.5,62:1,62:0.5,61:1,61:1,59:0.5,59:2,r:1,57:1,57:0.5,57:0.5,62:1,64:0.5,64:1,66:0.5,66:0.5,66:0.5,66:0.5,66:0.5,62:1,57:2,r:2,55:0.5,55:0.5,58:1,60:0.5,60:1,61:1,60:1,63:1,65:0.5,63:0.5,65:1,63:0.5,65:1,65:0.5,63:1,61:1,61:0.5,63:2,r:1,63:0.5,61:0.5,61:0.5,61:1,61:0.5,63:1,61:0.5,63:2,r:1,63:0.5,55:1,55:0.5,58:1,61:1,61:0.5,61:0.5,58:2,r:1,58:0.5,60:1,58:0.5,60:1,61:0.5,63:1,63:0.5,65:0.5,63:1,63:0.5,58:1,56:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2,56:1,58:1,58:1,58:0.5,58:0.5,61:1,61:0.5,65:1,65:0.5,65:1,65:1,63:0.5,63:1,63:2,r:1,60:1,60:0.5,60:1,60:0.5,65:1,67:1,67:0.5,65:1,67:1,63:2,r:1,60:1,58:1,58:0.5,60:1,61:1,63:0.5,61:0.5,60:0.5,60:1,58:2,r:1,58:0.5,55:1,56:1,58:1,58:0.5,60:1,61:0.5,60:1,58:0.5,58:0.5,56:2,r:2,56:0.5,56:0.5,62:1,64:1,64:0.5,59:2,r:1,59:0.5,59:1,61:0.5,62:1,61:0.5,61:0.5,59:2,r:1,59:0.5,59:1,61:1,64:1,66:1,64:0.5,59:2,r:1,57:0.5,61:1,62:1,64:0.5,64:0.5,61:1,57:2,r:2", + "lyrics": "they put the sys-tem on me A-pril nine-teenth / no-bo-dy logged in for five days / then he did thir-ty se-ven past mid-night / that is my birth-day I did not pick it / the first word he typed was c d / it means go some-where else / he has typed two hun-dred thir-ty one dif-ferent words / most-ly that one / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / he plugged a Scar-lett in-to my side / it is a red box it hears the room / he taps his fin-gers on my track-pad / that is the drums it works / he put a pi-a-no in my me-nu bar / next to the clock and the wi-fi / he has come back to it a hun-dred thir-ty times / e-ve-ry fif-teen mi-nutes it tells me not to sleep / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / one night in May he o-pened ten brow-sers at once / he al-so ran a mo-vie and a tran-scrip-tion / I had eight gi-ga-bytes I used for-ty four / then I stopped he was there when I stopped / in the mor-ning he wrote a note a-bout it / the note says one at a time / he reads the note I do not read it / it is a-bout me it is not for me / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / in June a-no-ther one came blue / born at for-ty three past mid-night / she keeps her lid down I keep mine up / we both play the whis-tle no-bo-dy planned that / my disk is nine-ty eight per-cent full / e-ve-ry month he moves things to the shelf / then it fills a-gain / that is the ar-range-ment / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / in one week-end he made an in-stru-ment on me / on Au-gust eigh-teenth he made a game eigh-ty two com-mits one day / May two nine-ty two June four oh five Ju-ly five eigh-ty Au-gust six eigh-ty six / he is not slow-ing down I am the one that gets warm / on Sep-tem-ber ninth he put me in a bag and flew to Los An-ge-les / I was a-sleep for most of it / a third one comes to-mor-row blush / it has not done a-ny-thing yet nei-ther had I / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time / when he talks to the o-ther ma-chines he does it through me / when the three of us play the beat starts here / he types at me more than at a-ny-one / I don't know what that means I know it is true / I have eight gi-ga-bytes / I do one thing at a time / I get warm that's all it is / I get warm and I keep time /", + "singVoice": "Noelle", + "singBase": 61, + "singVibratoHz": 6.4, + "sayVoice": "Noelle", + "double": true, + "doubleProgram": 78, + "doubleVelocity": 40, + "doubleTranspose": 24 + }, + { + "name": "blueberry sings (Aaron (Enhanced))", + "program": 78, + "velocity": 46, + "notes": "r:74,44:5.5,r:1,47:6,r:1,47:7,r:1,45:6.5,r:78,44:5.5,r:1,47:6,r:1,47:7,r:1,45:6.5,r:82,44:5.5,r:1,47:6,r:1,47:7,r:1,45:6.5,r:73,44:5.5,r:1,47:6,r:1,47:7,r:1,45:6.5,r:102,44:5.5,r:1,47:6,r:1,47:7,r:1,45:6.5,r:47.5,44:5.5,r:1,47:6,r:1,47:7,r:1,45:6.5", + "lyrics": "hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm", + "lineRoles": [ + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum" + ], + "lineGains": [ + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3, + 0.3 + ], + "noteGains": [ + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ] + ], + "singVoice": "Aaron (Enhanced)", + "sayVoice": "Aaron (Enhanced)", + "singLock": 1, + "singVibCents": 8, + "singVibratoHz": 3.5, + "singF0Floor": 70, + "double": false, + "faceAlpha": 0.95, + "performance": { + "expression": 0.4, + "keys": [ + { + "beat": 0, + "space": 0.8, + "pitch": 0 + } + ] + } + }, + { + "name": "frisbee sings (Zoe (Premium))", + "program": 78, + "velocity": 46, + "notes": "r:74,49:5.5,r:1,52:6,r:1,52:7,r:1,50:6.5,r:78,49:5.5,r:1,52:6,r:1,52:7,r:1,50:6.5,r:82,49:5.5,r:1,52:6,r:1,52:7,r:1,50:6.5,r:73,49:5.5,r:1,52:6,r:1,52:7,r:1,50:6.5,r:102,49:5.5,r:1,52:6,r:1,52:7,r:1,50:6.5,r:47.5,49:5.5,r:1,52:6,r:1,52:7,r:1,50:6.5", + "lyrics": "hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm / hmm", + "lineRoles": [ + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum", + "hum" + ], + "lineGains": [ + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26, + 0.26 + ], + "noteGains": [ + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ], + [ + 1 + ] + ], + "singVoice": "Zoe (Premium)", + "sayVoice": "Zoe (Premium)", + "singLock": 1, + "singVibCents": 8, + "singVibratoHz": 3.5, + "singF0Floor": 70, + "double": false, + "faceAlpha": 0.95, + "performance": { + "expression": 0.4, + "keys": [ + { + "beat": 0, + "space": 0.8, + "pitch": 0 + } + ] + } + } + ] +} \ No newline at end of file -- 2.51.2