Use Deep Learning to Automatically Generate 8-Bit Chiptune Music
Chiptune is an interesting genre of music that is traditionally synthesized using only the programmable sound generator (PSG) chips that…
Chiptune is an interesting genre of music that is traditionally synthesized using only the programmable sound generator (PSG) chips that are found in retro video game consoles, computers, and arcade cabinets. Modern computers and video game consoles handle it differently, but early video game consoles had a dedicated chip for synthesizing the game music and sound effects in real time while you play. LakhNES lets you automatically generate that 8-bit chiptune music using deep learning.
Chiptune music has a distinct sound because the PSG chips of early video game consoles, particularly from the 8-bit era, were limited by the technology of the time. They could produce a full range of notes, but couldn’t do so with the smooth sine waves that we associate with analog sound. Instead, they usually relied on low-resolution approximations like square waves, which have a very noticeable “digital” quality to them. Game developers from the era used a lot of tricks to modify those sounds to create rich music, which resulted in the nostalgic sounds that you remember from your childhood.
Most modern chiptune music is composed and then played through that retro hardware, but LakhNES can generate it automatically. It’s a deep neural network that has been trained on music composed by humans for the NES. Through that training, it has learned how to produce MIDI output that adheres to the patterns found in that kind of music. That MIDI output can then be sent to synthesizer software to play the deep learning-generated chiptune music. LakhNES is completely open source, and should run nicely on single-board computers like the Raspberry Pi. The documentation explains how to setup the pre-trained model, so you can get started with generating your own chiptunes using deep learning!