/GANSynth

TensorFlow implementation of "GANSynth: Adversarial Neural Audio Synthesis"

Primary LanguagePython

GANSynth: Adversarial Neural Audio Synthesis
TensorFlow implementation of the ICLR 2019 paper

Original paper

Based on following papers

Dataset

Requirements

  • TensorFlow 1.13.1 with GPU support.

Usage

  • Following the paper, create a new train/valid/test 80/10/10 split from shuffled data, as the original split was divided along instrument type, which isn’t desirable for this task.

  • The original tfrecord is very large, so it takes so long time to shuffle after each epoch.
    For better peformance, make tfrecord which contains the path to waveform.

wget http://download.magenta.tensorflow.org/datasets/nsynth/nsynth-train.jsonwav.tar.gz
wget http://download.magenta.tensorflow.org/datasets/nsynth/nsynth-valid.jsonwav.tar.gz
wget http://download.magenta.tensorflow.org/datasets/nsynth/nsynth-test.jsonwav.tar.gz

tar -xvf nsynth-train.jsonwav.tar.gz
tar -xvf nsynth-valid.jsonwav.tar.gz
tar -xvf nsynth-test.jsonwav.tar.gz

python make_tfrecord.py
python main.py --filenames nsynth_train_examples.tfrecord --train
python main.py --filenames nsynth_test_examples.tfrecord --evaluate