Skip to content
This repository has been archived by the owner on Feb 15, 2024. It is now read-only.

WIP - MIDI, Sheet Music, and Ableton files for eulerbeats.com Genesis LPs

Notifications You must be signed in to change notification settings

llllvvuu/eulerbeats-genesis-midi

Repository files navigation

Ableton Screenshot

WIP - Need to finish rest of Ableton files

These are MIDI/project files/sheet music for remixing Eulerbeats. Everything is ripped from their on-chain(!!) audio generation code.

Big thanks to the Eulerbeats team for creating a great project. Ape strong

How to run the generator

For me, just opening index.html does not work, I have to run

python -m http.server

or similar.

How the on-chain code works

The Eulerbeats smart contract address is 0x8754F54074400CE745a7CEddC928FB1b7E985eD6.

To call the read functions on the contract is pretty easy on Etherscan.

scriptCount() shows that the script is chunked into 4 parts. So calling getScriptAtIndex(i) for i=0,1,2,3 gives us 4 tx hashes, which we can plug into Etherscan. The code is contained in the input data of these 4 tx (make sure to view in UTF-8).

The seeds I just found on OpenSea but there is probably a faster way such as filtering for all of the mintOriginal events.

How I converted to MIDI

Maybe it would have been easiest to just use Audio-To-MIDI in Ableton, but I wanted to be precise. When you play a track with the generator script, it console logs Gibberish code which plays the audio. I didn't see an off-the-shelf solution to convert Gibberish to MIDI, so I hacked together some JS to convert the note arrays into MIDI.

The console log also shows the synth settings and how the reverb and chorus is hooked up.

node export.js will write all 27 MIDI files to the current directory.

Recreating the Synths + Reverb

I have Ableton files ready made in the Ableton/ folder. For other DAWs, synths can be set up according to synthinfo.txt which I dumped from synthinfo.js. The numbers are scaled in weird multiples of 44100 though. TODO: clarify this.

TODO: Create the pwm waveform (the horn-sounding one - think this can just be done in Operator). Improve the reverb if possible.

.mp3

LP01 LP02 LP03 LP04 LP05 LP06 LP07 LP08 LP09 LP10 LP11 LP12 LP13 LP14 LP15 LP16 LP17 LP18 LP19 LP20 LP21 LP22 LP23 LP24 LP25 LP26 LP27

About

WIP - MIDI, Sheet Music, and Ableton files for eulerbeats.com Genesis LPs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published