Jean-Michel Jarre’s Classic ‘Oxygene 4’ Recreated With 19KB Of Javascript

While many have attempted over the years to recreate Jean-Michel Jarre‘s classic Oxygène 4 using classic and vintage gear, Dittytoy user srtuss is the first that we’re aware of to do it using mind-bullets, aka 19KB of Javascript code.

Dittytoy is an online platform that lets you create generative music online, using a simple Javascript API. So don’t expect easy-to-use audio nodes to connect with virtual wires or a graphical user interface that allows you to define patterns easily: everything is generated entirely with code.

srtuss‘s Oxygene 4 arrangement not only is a fairly faithful recreation of the original, but also features a built-in mixer. Check it out and share your thoughts on Javascript remixes in the comments!

17 thoughts on “Jean-Michel Jarre’s Classic ‘Oxygene 4’ Recreated With 19KB Of Javascript

  1. looks as tiresome to work with as my first multitrack sequencer written in Forth on the Atari St was in the 80’s. someone’s gonna love it.

  2. Reminds me of those 40k Amiga demos, squeeze as much audio and visual into the least amount of code as you can and there were some amazing examples out there. Got to be impressed with the efficiency of it all.

    1. 40k is a hell of a lot of code, about 40,000 characters worth, in fact. That probably comes to over 200 pages, depending on the white space. At any rate, this was no trivial project. Listening to the piece definitely shows how detailed that coding was.

      1. Lagrange Audio is referring to a max 40k (40960 bytes) standalone executable which must also contain all graphics and music. No easy feat.

        1. No, it explicitly says in the title “19kb of Javascript”. Although I was way off in my page estimate (probably more like 50 pages), that still would have been a hell of a feat. However, when I wrote that, I didn’t know that the subroutines it called from a library weren’t included in the 19k. If all of the grunt work is done by the library, then 19k really doesn’t sound like a big deal now.

  3. you can use chatGPT to make it write melodies. just tell chatGPT: “write a program in ditty to play a major scale” and paste the output into a dittytoy window.

  4. interesting that it is fairly resource intensive – tried listening on my work computer and it was glitching everywhere – worked fine on my production machine tho

  5. This is clickbait. It is not vanilla 19kb of js (which could be awesome), it is 19kb of code over third party Dittytoy lib which at the first glance i can estimate more than 600kb of code, so it is not so awesome anymore.

    1. Had you actually bothered to look at it beyond the superficial, it would be obvious that the Dittytoy API is an absolute bare-bones means of having audio transport and minimalistic instrument management. Everyone can read up on that and validate it for themselves at https://dittytoy.net/syntax
      No claims beyond that were made. Obviously if comments were removed from the code and JS compression was applied, it would be far less than 19K characters. Or would you prefer to also count the lines of code of the JS VM, the sound-card driver and the computer OS, which is technically also required for playback? Go right ahead.

  6. Next, I expect someone, as a similar exercise, to perform a play of Shakespeare’s using vocoders and Python, and possibly MMD if visuals are desired. Signifying, as the Bard would say, nothing.

Leave a Reply

Your email address will not be published. Required fields are marked *