Demos
A primary goal of the Magenta project is to demonstrate that machine learning can be used to enable and enhance the creative potential of all people.
The demos and apps listed on this page illustrate the work of many people--both inside and outside of Google--to build fun toys, creative applications, research notebooks, and professional-grade tools that will benefit a wide range of users.
Categories
Featured
-
NSynth Super [ blog | code ]
NSynth Super is an experimental physical interface for the NSynth model.
NSynth uses deep neural networks to generate sounds at the level of individual samples. Learning directly from data, NSynth provides artists with intuitive control over timbre and dynamics, and the ability to explore new sounds that would be difficult or impossible to produce with a hand-tuned synthesizer.
Read more... -
Tenori-off [ play | code ]
A creative take on a rare electronic sequencer. Uses the Magenta.js to generate drum patterns when you hit the “Improvise” button.
-
Latent Cycles [ play | blog | code ]
Creates a hypnotic soundscape of melodic loops using Magenta.js that you can play against each other to explore the latent harmonic possibilities.
Each of the four corners in this space is a little melodic pattern generated using ImprovRNN. The space is then filled in with a 2-dimensional interpolation between those four corner patterns using MusicVAE. You can listen to the patterns of your choosing by activating and deactivating different ones, experiencing the gradual morphing of patterns over the two-dimensional space.
Read more... -
Neural Drum Machine [ play | blog | code ]
An experimental drum machine powered by Magenta.js using the DrumsRNN and MusicVAE models.
Define a seed pattern on the left, and use the “generate” button to have the neural network dream up an “auto-completion” of the beat. Click the generate button multiple times to see different possible continuations of your pattern. Control parameters of the models with the sliders at the bottom.
Read more... -
Beat Blender [ play | blog | code ]
An interactive demo by Google Creative Lab based on MusicVAE using the Magenta.js API.
Use it to generate two dimensional palettes of drum beats and draw paths through the latent space to create evolving beats. The 4 corners can be edited manually, replaced with presets, or sampled from the latent space to regenerate the palette.
Read more... -
Latent Loops [ play | blog ]
An interactive demo by Google’s Pie Shop based on MusicVAE using the Magenta.js API.
Latent Loops let’s you sketch melodies on a matrix tuned to different scales, explore a palette of generated melodic loops, and sequence longer compositions using them. Musicians can create full melodic lines using this interface and then easily move them over to their DAW of choice.
Read more... -
SketchRNN [ play | blog | code ]
One of several interactive web demos that let you draw together with SketchRNN.
Select a category and start drawing. The neural network will complete your sketch in multiple ways. Add more details and the network will start from wherever you leave off.
Read more...
Web Apps
This section includes hosted browser-based applications, many of which are implemented with TensorFlow.js for WebGL-accelerated inference.
-
Multitrack Interpolation [ play | blog | code ]
Uses the Magenta.js API with a MultiTrack MusicVAE model to interpolate between two musical “styles”, either randomly generated or imported from MIDI.
Read more... -
Multitrack Chords [ play | blog | code ]
Uses the Magenta.js API with a Multitrack MusicVAE model to interpolate between two musical “styles” while playing an editable chord progression.
Read more... -
Endless Trios [ play | blog | code ]
A demonstration of how simple it is to randomly generate a never-ending stream of trios from MusicVAE with Magenta.js.
Read more... -
Beat Blender [ play | blog | code ]
An interactive demo by Google Creative Lab based on MusicVAE using the Magenta.js API.
Use it to generate two dimensional palettes of drum beats and draw paths through the latent space to create evolving beats. The 4 corners can be edited manually, replaced with presets, or sampled from the latent space to regenerate the palette.
Read more... -
Latent Loops [ play | blog ]
An interactive demo by Google’s Pie Shop based on MusicVAE using the Magenta.js API.
Latent Loops let’s you sketch melodies on a matrix tuned to different scales, explore a palette of generated melodic loops, and sequence longer compositions using them. Musicians can create full melodic lines using this interface and then easily move them over to their DAW of choice.
Read more... -
Melody Mixer [ play | blog | code ]
An interactive demo by Google Creative Lab based on MusicVAE using the MusicVAE.js API. It allows you to easily generate interpolations between short (2 bar) melody loops.
Read more... -
PerformanceRNN [ play | blog | code ]
Real-time PerformanceRNN piano performances in the browser implemented with TensorFlow.js.
Read more... -
SketchRNN [ play | blog | code ]
One of several interactive web demos that let you draw together with SketchRNN.
Select a category and start drawing. The neural network will complete your sketch in multiple ways. Add more details and the network will start from wherever you leave off.
Read more... -
NSynth Sound Maker [ play | blog | code ]
An interactive AI Experiment based on NSynth made in collaboration with Google Creative Lab that lets you interpolate between pairs of instruments to create new sounds.
Read more... -
A.I. Duet [ play | blog | code ]
An interactive AI Experiment based on MelodyRNN made in collaboration with Google Creative Lab lets you make music through machine learning. A neural network was trained on many MIDI examples and it learned about musical concepts, building a map of notes and timings. You just play a few notes, and see how the neural net responds.
Read more...
Colab Notebooks
Colaboratory is a Google research project created to help disseminate machine learning education and research. It's a Jupyter notebook environment that requires no setup to use and runs entirely in the cloud.
We provide notebooks for several of our models that allow you to interact with them on a hosted Google Cloud instance for free.
-
E-Z NSynth [ play ]
This Colab notebook has everything you need to upload your own sounds and use NSynth models to reconstruct and interpolate between them on a GPU at no cost.
-
MusicVAE [ play ]
MusicVAE learns a latent space of musical scores. This Colab notebook provides functionality for you to randomly sample from the prior distribution and interpolate between existing sequences for several pre-trained MusicVAE models. You can also compare the results against baseline models described in the MusicVAE paper: A Hierarchical Latent Vector Model for Learning Long-Term Structure in Music.
-
Onsets and Frames [ play ]
Onsets and Frames is an automatic piano music transcription model. This Colab notebook demonstrates running the model on user-supplied recordings.
-
Latent Constraints [ play ]
Code for running experiments related to Latent Constraints: Conditional Generation from Unconditional Generative Models.
Native Apps
Native applications run on your local machine and typically require you to install additional software, but are sometimes better suited for professonal use.
-
NSynth MaxForLive Device [ blog | code ]
A MaxForLive Device that integrates into both Max MSP and Ableton Live. It allows you to explore the space of NSynth sounds through an intuitive grid interface.
Read more... -
A.I. Jam (NIPS 2016 Demo) [ blog | code ]
An interactive “A.I. jam session” built using the frontend from AI Duet, combined with the Magenta MIDI interface to recreate the experience of the award-winning Magenta 2016 NIPS Demo in your browser.
Read more...
Hardware
-
NSynth Super [ blog | code ]
NSynth Super is an experimental physical interface for the NSynth model.
NSynth uses deep neural networks to generate sounds at the level of individual samples. Learning directly from data, NSynth provides artists with intuitive control over timbre and dynamics, and the ability to explore new sounds that would be difficult or impossible to produce with a hand-tuned synthesizer.
Read more...
Community Contributions
Community contributions were all created without the involvment of Google, using Magenta models and libraries. If you have a demo that you think belongs here, please share it via our discussion group.
-
Tenori-off [ play | code ]
A creative take on a rare electronic sequencer. Uses the Magenta.js to generate drum patterns when you hit the “Improvise” button.
-
Robot Neil's Bubble Bath [ play | blog | code ]
A living, abstract piece of music generated by ML and you!
Click the canvas to create bubbles which generate melodic loops from the latent space of MusicVAE using Magenta.js and hear them slowly interpolate over time.
Read more... -
Latent Cycles [ play | blog | code ]
Creates a hypnotic soundscape of melodic loops using Magenta.js that you can play against each other to explore the latent harmonic possibilities.
Each of the four corners in this space is a little melodic pattern generated using ImprovRNN. The space is then filled in with a 2-dimensional interpolation between those four corner patterns using MusicVAE. You can listen to the patterns of your choosing by activating and deactivating different ones, experiencing the gradual morphing of patterns over the two-dimensional space.
Read more... -
Neural Drum Machine [ play | blog | code ]
An experimental drum machine powered by Magenta.js using the DrumsRNN and MusicVAE models.
Define a seed pattern on the left, and use the “generate” button to have the neural network dream up an “auto-completion” of the beat. Click the generate button multiple times to see different possible continuations of your pattern. Control parameters of the models with the sliders at the bottom.
Read more... -
Neural Arpeggiator [ play | blog | code ]
Hold a note or chord and let a deep neural network play an arpeggiated pattern around it.
Powered by TensorFlow.js and Magenta’s ImprovRNN.
Read more... -
Neural Melody Autocompletion [ play | blog | code ]
Play and hold a melody or a chord and let a deep neural network complete it for you.
Powered by TensorFlow.js and Magenta’s ImprovRNN.
Read more... -
Deep Roll [ play | blog | code ]
A deep neural network dreaming up melodies in your browser. Powered by TensorFlow.js and Magenta’s ImprovRNN.
The melodies are generated by ImprovRNN conditioned on chord progressions, which themselves are generated using a Markov Chain.
Read more... -
mSynth [ play | blog | code ]
mSynth is an application that won first place in the Outside Hacks 2017 - the official 24-hour music hackathon to the Outside Lands Music Festival in San Francisco. The team developed an artist-audience interactive experience where festival goers can collectively control Magenta’s NSynth in real-time by tilting their phones.
Read more...
