9 ms·
This DX7 Cartridge Does Not Exist
- deleted 6y ago[deleted]
- harritaylor 6y agoAwesome! I tried to do this for my final year project back in 2018 but failed miserably. To the author: well done, this is really cool!
- Halian 6y ago404
- blendergeek 6y agoCan someone give me a short explanation as to what this is and why it is significant? It looks quite interesting. I am basically looking for the ELI5 because I have never heard of a DX7 before and I don't know what the file that I was prompted to download was about.
- satori99 6y agoIt appears to generate ROM (cartridge) images, which I'm guessing are sound patches, for a vintage Yamaha FM synthesizer -- A model which was extremely popular and ubiquitous a few decades ago. https://en.wikipedia.org/wiki/Yamaha_DX7 https://en.wikipedia.org/wiki/Yamaha_DX7
- aasasd 6y agoNotably, there are a crapload of software synths emulating DX7—as exemplified by the two mentioned on the page—and at least some of them accept patches in its native format, so apparently there's an ‘ecosystem’ of sorts of these patches floating around.
- mortenjorck 6y agoThe file format that it downloads (.syx) is a MIDI sysex or system-exclusive message file (https://www.midi.org/specifications-old/item/table-4-universal-system-exclusive-messages https://www.midi.org/specifications-old/item/table-4-univers...). These are basically scripts of MIDI instructions that exist outside the regular note on-off messages, and can be used for a variety of things, in this case programming a patch in the DX7’s synthesis engine.
- gb 6y agoIf you scroll down a bit there's more info: https://www.thisdx7cartdoesnotexist.com/#faq https://www.thisdx7cartdoesnotexist.com/#faq
- ubercow13 6y agoFM synthesisers like the DX7 are notoriously difficult to program compared to other types. There are many parameters to tweak and it can be hard to get an intuition about how each will change the sound. There's also a wide subspace of the possible parameter settings that sounds very bad/not musical. This project seems to take a bunch of manually designed presets that sound good and use them to train a model on what sounds good, so it can make up new presets.
- SmallPeePeeMan 6y ago> have never heard of a DX7 before Whoa
- t-writescode 6y agoIt .. asks me to download something when I click generate. Is that supposed to happen? Running: Firefox: 76.0.1 (64 bit) I thought it was going to be a picture of the cartridge.
- wegs 6y agoWell, I have to say: (1) This looks interesting. I had no idea any of this existed. (2) For the level of awesome, this is the worst-documented ecosystem I've stepped into in a long while. I hope some random user volunteers to make really nice documentation at some point. This could go from awesome to a lot awesomer. I looked for MIDI synthesizer a while back, and never ran into dexed. I suspect I'll have a lot of fun with this at some point.
- aasasd 6y agoSurprised that you managed to evade the DX7 fandom with all the emulators, when looking for a synth.
- wegs 6y agoI can sometimes be dumb with Google/apt-cache search/DDG like that :)
- nintoracaudio 6y agoFor (2), yea definitely threw this all together a little too quickly. I have updated the README in https://github.com/Nintorac/NeuralDX7 https://github.com/Nintorac/NeuralDX7 to give a little explanation of the specific code used for this site. Hope that helps and feel free to get in contact info@thisdx7cartdoesnotexist.com or create an issue if I can help to make anything clearer
- wegs 6y agoNah. (1) For open source, out early is better than out later. v0 (or v1 or where ever you start numbering) shouldn't be perfect. If it's perfect, you're sharing too late. (2) All this is volunteer work and a gift to the community. It's a fallacy to think the person who writes the code is also responsible for doing everything else. Some people code well. Others write well. Others do both well. That's okay. (3) My comment was on the dexed ecosystem; not just on this piece (4) All that said, what would be awesome is if - There were sample audio files we could listen to. Ideally, these would be for the generated patches, but even if there was just a half-dozen example WAV or MP3 files. - If the README file on github had a link to the web page, or at the very least, if the current text (thisdx7cartdoesnotexit.com) said "exist" at the end instead of "exit"
- Rodeoclash 6y agoThis is very cool, well done! I wonder how far we are away from the following: 1. Being able to use a GAN to be able to give a synth an input sound (i.e. a reece sound from a dnb track) and have it generate a patch that matches it. 2. Being able to do 1 but apply it to a whole Ableton project. The interesting thing about Ableton is that they're actually XML files under the covers. Even if you couldn't get close, it would be fascinating to see how an AI would design synth patches for subtractive synths.
- pixelface 6y agoyou'll be pleased to find out that we are already able to do your first item - https://fo.am/activities/midimutant/ https://fo.am/activities/midimutant/
- nintoracaudio 6y agoThanks for the feedback! 1. For sure, I was thinking something along the lines of a multiview VAE that gets as input either `f(z|audio, midi)` or `f(z|dx7_parameters)` and must produce as output `f(audio|midi,z)` or `f(dx7_parameters|z)` 2. Yea, I have tried to pick apart Ableton files in the past but the format is a bit of a nightmare, it might be easier to use source separation like https://github.com/deezer/spleeter https://github.com/deezer/spleeter to build your dataset!
- raphlinus 6y agoThere is a long tradition of using AI and AI-ish techniques to try to generate FM synthesis patches, for example [1] genetic algorithms (1993) to [2] neural networks (2017). See the "previous work" section in the latter paper for more references. Disclosure: I wrote the original sound engine in Dexed. I love seeing stuff like this! [1]: https://www.jstor.org/stable/3680541?seq=1 https://www.jstor.org/stable/3680541?seq=1 [2]: http://research.gold.ac.uk/22516/1/myk_lf_vsti_programming.pdf http://research.gold.ac.uk/22516/1/myk_lf_vsti_programming.p...
- leonfedden 6y agoHey dexed is awesome! I was the coauthor for [2], it for was my 3rd year undergraduate dissertation. A lot of the work went into creating a Python VST host capable of generating huge datasets of random patches. I'm looking at some of the fancy new ML tricks that have come out since that paper was wrote and have been thinking there would be significant improvements over the LSTM we used.
- aasasd 6y agoI sorta wonder if this can be generalized to, say, some number of oscillators (i.e. if there's three in the synth then extra three in the model are considered disabled and we have a subspace of parameters), and to a bunch of common parameters like wave shapes, ADSR, the algo, the LFO. Because I noticed DX7 patches available on the web, but my particular DAW ain't got six oscillators and I can't even imagine what to do with that many of them. (Though personally I don't believe that we should accelerate the exhaustive search on the musical space, but the geek in me can't help pondering about this.)
- theduro 6y agoJust loaded mine into my Arturia DX7 VST, and its rad. Threw some juicy reverb after it, and found a couple patches in my pack that will defintely be putting into a track.
- munsters 6y agoI had no idea what a DX7 cartridge was, but out of curiosity I clicked the "Click here to generate" link. It immediately downloaded a file. I'm sure you have no malicious intent here, but my immediate reaction was that it's a virus or something bad. I immediately deleted the file. The experience felt like one of those scammy popups that initiates a download. You should really put a label or something to indicate to the user that clicking the link is going to download something.
- skylanh 6y agoThis appears specific to your setup and testing process. I tried this with several browsers, and this did not occur for me. Browsers: Firefox, Chrome, Edge Perhaps you're referring to the link on the website which says "Click here to generate Cartridge!"? Which follows the somewhat expected path for the picture context.
- nkozyra 6y agoI know what one is. I'm a fan of fm synthesis and dx-model synths and variants. But if I had known it automatically downloaded a patch I wouldn't click. It did this without me clicking anything.
- jml7c5 6y agoWhat browser are you using? It requires a click for me on Firefox. From a quick glance at the source I don't see anything that would automatically initiate a download.
- yowlingcat 6y agoFirst of all, fantastic tool. Second of all, to folks that are trying to figure out how to give this a go: Open up your favorite DAW (try out Reaper[1] if you don't have one yet), download an install the fantastic open source DX7 emulator plugin Dexed VST plugin [2] and have fun. In my opinion, FM synthesis is one of the finest things in life I've ever experienced. I never understood the whole culture around an emotional attachment to one's guitar before I realized how closely I could bond with my FM synthesis instruments. It was about five years ago when it started to feel a bit more like an extension of my brain and less like a tool. Now, I've always been an FM8 person myself because of the envelopes, but obviously the DX7 shaped synthesizers have the superior library. I'm always overjoyed to see projects that get more folks into the joy of music with FM synthesis. [1] https://www.reaper.fm/ https://www.reaper.fm/ [2] https://asb2m10.github.io/dexed/ https://asb2m10.github.io/dexed/
- cable 6y agoThe Elektron Digitone is a fantastic sounding, modern hardware FM synth with great workflow once you learn it. Highly recommended.
- n3k5 6y agoYou don't even need a DAW. When I downloaded Dexed as an audio unit for my Mac (thinking “I'll have to try this later; at the moment I don't have enough RAM free to start a DAW”), I was pleasantly surprised that it also came with a stand-alone app. The Dexed wiki says there are such apps for Windows and Linux, too. Then I downloaded a MIDI file and used Audacity to play some of its channels into the synth. Super easy, even though I'd never used Audacity for MIDI before. Just one thing stumped me for a minute: When you open the MIDI settings in the Dexed app, under “Active MIDI inputs” it shows a list of available buses, all with what looks like a green light next to it, as if they are indeed active. Those are actually checkboxes and they're initially off.
- yowlingcat 6y agoIt's true! You don't technically need a DAW, but I just I like how easy a good one makes it to go from noodling around on an idea to having a full song. In my opinion, any of major DAWs (including Logic/Live/FL/Reaper/Cubase) gives you enough tools to put out really polished stuff if you want to start polishing your craft. I'm not sure if I've found an open source one I like to that level yet, though. Ardour seems really powerful, but I'm unfamiliar with it.
- hondadriver 6y agoReminds me of the Yanaha CX5 MSX computer https://www.msx.org/wiki/Yamaha_CX5 https://www.msx.org/wiki/Yamaha_CX5
- tmountain 6y agoReally really cool. Can’t wait to try this out.
- 12bits 6y agoabsolutely love when hn has audio related content. Thank you for sharing this, I will use this with dexed next time I'm horsing around with sound design.
- andoma 6y agoMy dad bought a DX7 when I was a kid. This sure bring back some good memories!
- ebg13 6y ago> Do you want to allow downloads on “www.thisdx7cartdoesnotexist.com”? Nope.
- teilo 6y agoI have KQ Dixie on this iPad Pro that I'm presently on. The sysex files generated by this website opened up directly into it, and it worked brilliantly. This is so cool. There's a lot of duds, but it also generates some very usable patches. I actually have a DX7 sitting on my desk at work, although I only use it as a MIDI keyboard because I love the keybed. Dexed or Arturia is so much easier to program, and 100% the same audio, so I have no reason to mess around programming the real thing. When I did play it directly, I programmed it in Dexed anyway.
- nobleach 6y agoI've owned multiple DX-7s (only first gen... I've always wanted to buy a DX-7IIfd). While I liked the feel of the keys, I couldn't get passed the MIDI implementation not sending the full 0-127 velocity. (Yamaha implemented a 0 to 100 range because the MIDI spec wasn't complete at the time of production). When I'm actually using it as just a keyboard to play, it doesn't seem to matter... it's only when I'm using a different sound source.
- jacquesm 6y agoYou can patch that if you want, the ROM image is available and there are reasonably accurate disassemblies, enough to figure out where that bit of code lives so you can scale it. You won't be able to fix it at the source (the DX7 contains two processors, the other one is mask programmable), but you can simply scale the 0...100 values to become 0...127.
- teilo 6y agoI fixed this with MidiFire on Mac. I created a map that scales 0-100 to 0-127. I also added a control to shift octaves. The only real annoying thing is the fact that it doesn't send aftertouch unless the current patch has it enabled.
- inetsee 6y agoYears ago I had a TX81Z synthesizer unit. It was a rack mount unit (not a keyboard synthesizer; you had to use it with a midi keyboard). It was also an FM synthesizer with a fundamental difference; the DX7 used sine waves modulating each other to produce the sounds, and the TX81Z let you do the frequency modulation with sine waves, or triangle waves, or square waves, or pulse waves. You basically had an order of magnitude more flexibility in creating sounds, and an order of magnitude more difficulty. Some people were able to create some really interesting patches, but I never got good enough to create anything remotely interesting.
- parenthesis 6y agoThe TX81Z only has 4 operators, versus 6 on the DX7, but, on the other hand, yes, not just sine waves. Also, it had the "LatelyBass" preset, used on a huge number of records in the 80s and 90s.
- rcarmo 6y agoThis is so cool. I recently got myself a Reface DX to recapture the feel of the original DX7 and have Dexed on my machines (including the iPad), so will be having some fun over the next few evenings.
- jacquesm 6y agoVery neat. I refurbish/repair DX7's as a hobby, and it is always surprising to me how much life there is still left in that synth. There is a whole eco-system around them and lots of people still want the actual thing to play on. They're also built like tanks which is one reason they are still so much in use today.
- parenthesis 6y agoAlso a ridiculous number were made, so there's a lot of them out there, despite Trent Reznor destroying many of them on stage!
- teilo 6y agoJust curious, since you mentioned this: where do you get your up-stop felt?
- jacquesm 6y agoPiano restauration parts supplier in Amsterdam.
- timc3 6y agoReally works well. Downloaded the SysEx imported into NI's FM8 and some of the sounds are extremely usable as the basis for some sound design. You milage may vary if you are after some traditional sounds though - I am definitely not.
- s_m 6y agoI downloaded a .syx and loaded it into Dexed. About half the patches don't make any sound, but the ones that remain are pretty good. Various classic FM sounds in the Sonic the Hedgehog vein.
- sheinsheish 6y agoCool idea ! Will definitely test the results , thanks a lot ! Here’s something similar : https://u-he.com/products/protoverb/ https://u-he.com/products/protoverb/
- severak_cz 6y agoThis is ultimate vaporwave thing. It needs just two things: 1) some sanity checking on presets (to drop not working sounds) 2) javascript player on the page (there is web port of DEXED[1]) [1] - https://www.webaudiomodules.org/wamsynths/dexed https://www.webaudiomodules.org/wamsynths/dexed
- rmelhem 6y agowow really nice! will try it later. that topic made me join to do my first comment on HN lol. I wonder if there are many music producers around here? would be nice to exchange some ideas :)
- parenthesis 6y agoI really want to like Dexed (I love FM synthesis). But (I'm using it on a Mac, if that makes any difference): • After clicking on a knob, I should then be able to use the up and down arrow keys to move the value up and down. • I should be able to type in the numeric value I want a selected parameter to be. If the interface had these two features, it would be perfect. Without them, for me, it is unusable for programming sounds.