/sound-rnn

Generating sound with recurrent neural networks

Primary LanguageLua

sound-rnn

Generating sound using recurrent neural networks.

For more details, see my blog post: http://www.johnglover.net/blog/generating-sound-with-rnns.html

Requirements

This code is written in Lua and requires Torch. See the Torch installation documentation for more details.

The following packages are also required (and can be installed using luarocks):

$ luarocks install nngraph
$ luarocks install optim
$ luarocks install nn

Also install the following (see the respective repositories for installation instructions):

Usage

Run train.lua with no parameters to get a list of arguments. The audio file that you pass in should be a single-channel wav file. For example (using the included sine tone):

$ th train.lua -audio audio/sine_440.wav -model_file sine_440.t7 -batch_size 10 -seq_length 10 -rnn_size 100 -num_partials 10 -mdn_components 1 -num_layers 1

To generate audio, run sample.lua (again no parameters for an argument list). For example:

$ th sample.lua -model sine_440.t7 -length 3000 -output sine_resynth.wav

Thanks

This code is based on a number of great examples:

License

MIT