Inspiration

As programmers who also play musical instruments, we are always curious about the probability to make machine intelligence create compelling music. As game developers, we are also struggle with finding cool free music that matches the games themes. As college students, we feel anxious about the tests and job interviews all the time and we need a stress reliever. Google's TensorFlow Dev Summit and their newly released machine intelligence framework for art generation inspired us to actually get our hands dirty and start developing a music bot on our own.

What it does

TAMG stands for Thematic Ambient Music Generator. It is a web based application to generate basic melodies. Artists can cooperate with the AI to compose songs together. Game developers who need theme songs but lacks the access to compelling free music can use the app to generate music for their projects.People under stress can play with the music bot together and relief their anxiety.

How we built it

On the frontend ide, we used Angular.js/HTML/CSS?Jquery to add the general layout and animations. On the backend side, we used node/express to run the scripts. We used TensorFlow and Magenta to generate the melodies with recurrent neural network (RNN) Models. We also used Amazon Web Services (AWS) to host the website.

Challenges we ran into

We run into compatibility and package dependency issues with the newly published 1.0 version of TensorFlow.

Accomplishments that we're proud of

We are proud of having a working project for the first hackathon that we ever attended and get started on machine learning developing.

What we learned

We've learned the basics of TensorFlow and Magenta and neural network models for machine learning, such as RNN and LSTM.

What's next for Thematic Ambient Music Generator(TAMG)

  1. Improve our search function by adding more training models to it such that the users can search for different genres or moods of the music
  2. Try different machine learning technologies, such as Reinforcement Learning and Generative Adversarial Networks (GAN) to make the songs more dynamic and interesting
  3. Allow the user to customize the song, such as the musical instruments they want to hear from the song.

Built With

Share this project:

Updates