There are many applications that play natural noise like forest, stove, forest birds singing, sea wave, etc.
But actually they are playing a audio clip again and again, which means they repeat every several minutes.
Sometimes it may be a little bit annoying when noticing.
So we want to create a Natural Noise Generator, basically based on waveGAN, to generate natural noise continously without repeating.
Based on WaveGAN, the Generator takes additional input from last part of previous audio sample as Y. See model.py for details.
Trainning
python main.py train --data_dir ./data/ --data_fast_wav --verbose
Generator Inferencing
python main.py generate --wav_out_time 150
Since there is no tensorflow=1.12 on SCC, we need to use anaconda to setup environment
module load anaconda3
conda create -n my_root --clone="/share/pkg/anaconda3/4.4.0/install"
source activate my_root
conda install -c anaconda tensorflow-gpu
pip install --user librosa==0.6.2
Done!
Then you can submit the job to SCC usingqsub train.sh
remember to modify project name
open a terminal
ssh -NfL localhost:16007:localhost:6007 jiaxin@scc1.bu.edu
open another terminal
ssh jiaxin@scc1.bu.edu
navigate to the working directory
module load python/3.6.2 tensorflow/r1.10
tensorboard --logdir=./train --port 6007
in the web browser localhost:16007
This is the spectogram of ground truth, audio generated by WaveGan, and audio generated by our adapted network. From the spectogram, we can see our network increase the continuity of the generated audio.