{"id":13862633,"url":"https://github.com/DamiPayne/AI-Music-Composer","last_synced_at":"2025-07-14T13:31:38.752Z","repository":{"id":51689786,"uuid":"88155292","full_name":"DamiPayne/AI-Music-Composer","owner":"DamiPayne","description":"A project that trains a LSTM recurrent neural network over a data-set of MIDI files.","archived":false,"fork":false,"pushed_at":"2021-10-03T17:07:35.000Z","size":25,"stargazers_count":65,"open_issues_count":1,"forks_count":12,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-08-05T06:06:10.345Z","etag":null,"topics":["ai","ai-music","midi-files","neural-network","python","python-midi","songs"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DamiPayne.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"License.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-04-13T10:52:27.000Z","updated_at":"2024-07-01T04:39:13.000Z","dependencies_parsed_at":"2022-08-22T06:00:21.106Z","dependency_job_id":null,"html_url":"https://github.com/DamiPayne/AI-Music-Composer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamiPayne%2FAI-Music-Composer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamiPayne%2FAI-Music-Composer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamiPayne%2FAI-Music-Composer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamiPayne%2FAI-Music-Composer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DamiPayne","download_url":"https://codeload.github.com/DamiPayne/AI-Music-Composer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225980898,"owners_count":17554919,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ai-music","midi-files","neural-network","python","python-midi","songs"],"created_at":"2024-08-05T06:01:48.925Z","updated_at":"2024-11-22T23:30:17.482Z","avatar_url":"https://github.com/DamiPayne.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# AI-Music-Composer\nA project that trains a LSTM recurrent neural network over a data-set of MIDI files.\n\n## Dependencies\nNumpy (http://www.numpy.org/)\n\nTensorflow 0.8 (https://github.com/tensorflow/tensorflow) its best to uses virtual env to do this\n\nvirtual env (https://virtualenv.pypa.io/en/stable/)\n\nPython Midi (https://github.com/vishnubob/python-midi.git)\n\nMingus (https://github.com/bspaans/python-mingus)\n\nMatplotlib (https://github.com/matplotlib/matplotlib)\n\n## How to use it?\n\n1. `mkdir data \u0026\u0026 mkdir models`\n2. run `python main.py`. This will collect the data, create the chord mapping file in data/nottingham.pickle, and train the model\n3. Run `python rnn_sample.py --config_file new_config_file.config` to generate a new MIDI song.\n\nGive it 1-2 hours to train on your local machine, then generate the new song. \nYou don't have to wait for it to finish, just wait until you see the 'saving model' message in terminal. \nTo increase speed you can use a cloud based GPU such as www.fomoro.com\n\n## Credits\n\nThis is an adaptation of an idea from [Yoav Zimmerman](https://github.com/yoavz). The main use of this project is as a proof of concept for a RNN.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDamiPayne%2FAI-Music-Composer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDamiPayne%2FAI-Music-Composer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDamiPayne%2FAI-Music-Composer/lists"}