Update ADF to be compatible with classical mel spectrograms

This commit is contained in:
James Betker 2022-06-14 15:19:52 -06:00
parent c68669e1e1
commit d29ea0df5e
2 changed files with 12 additions and 11 deletions

View File

@ -472,7 +472,7 @@ def test_vqvae_model():
) )
quant_weights = torch.load('D:\\dlas\\experiments\\retrained_dvae_8192_clips.pth') quant_weights = torch.load('D:\\dlas\\experiments\\retrained_dvae_8192_clips.pth')
model.quantizer.load_state_dict(quant_weights, strict=True) model.quantizer.load_state_dict(quant_weights, strict=True)
#torch.save(model.state_dict(), 'sample.pth') torch.save(model.state_dict(), 'sample.pth')
print_network(model) print_network(model)
o = model(clip, ts, cond) o = model(clip, ts, cond)

View File

@ -208,15 +208,16 @@ class AudioDiffusionFid(evaluator.Evaluator):
def perform_diffusion_tfd(self, audio, codes, text): def perform_diffusion_tfd(self, audio, codes, text):
SAMPLE_RATE = 24000 SAMPLE_RATE = 24000
audio_resampled = torchaudio.functional.resample(audio, 22050, SAMPLE_RATE).unsqueeze(0) audio_resampled = torchaudio.functional.resample(audio, 22050, SAMPLE_RATE).unsqueeze(0)
mel = wav_to_univnet_mel(audio_resampled, do_normalization=True) vmel = wav_to_mel(audio)
gen_mel = self.diffuser.p_sample_loop(self.model, mel.shape, umel = wav_to_univnet_mel(audio_resampled, do_normalization=True)
model_kwargs={'truth_mel': mel, gen_mel = self.diffuser.p_sample_loop(self.model, umel.shape,
model_kwargs={'truth_mel': vmel,
'conditioning_input': None, 'conditioning_input': None,
'disable_diversity': True}) 'disable_diversity': True})
gen_wav = self.local_modules['vocoder'].inference(denormalize_mel(gen_mel)) gen_wav = self.local_modules['vocoder'].inference(denormalize_mel(gen_mel))
real_dec = self.local_modules['vocoder'].inference(denormalize_mel(mel)) real_dec = self.local_modules['vocoder'].inference(denormalize_mel(umel))
return gen_wav.float(), real_dec, gen_mel, mel, SAMPLE_RATE return gen_wav.float(), real_dec, gen_mel, umel, SAMPLE_RATE
def load_projector(self): def load_projector(self):
""" """
@ -334,12 +335,12 @@ if __name__ == '__main__':
if __name__ == '__main__': if __name__ == '__main__':
diffusion = load_model_from_config('X:\\dlas\\experiments\\train_tts_diffusion_tfd11_quant\\train.yml', 'generator', diffusion = load_model_from_config('X:\\dlas\\experiments\\train_tts_diffusion_tfd11_quant.yml', 'generator',
also_load_savepoint=False, also_load_savepoint=False,
load_path='X:\\dlas\\experiments\\train_tts_diffusion_tfd11_quant\\models\\14500_generator_ema.pth').cuda() load_path='X:\\dlas\\experiments\\train_tts_diffusion_tfd12_linear_dvae\\models\\12000_generator.pth').cuda()
opt_eval = {'eval_tsv': 'Y:\\libritts\\test-clean\\transcribed-oco-realtext.tsv', 'diffusion_steps': 100, opt_eval = {'eval_tsv': 'Y:\\libritts\\test-clean\\transcribed-brief-w2v.tsv', 'diffusion_steps': 50,
'conditioning_free': False, 'conditioning_free_k': 1, 'conditioning_free': False, 'conditioning_free_k': 1,
'diffusion_schedule': 'cosine', 'diffusion_type': 'tfd'} 'diffusion_schedule': 'linear', 'diffusion_type': 'tfd'}
env = {'rank': 0, 'base_path': 'D:\\tmp\\test_eval', 'step': 100, 'device': 'cuda', 'opt': {}} env = {'rank': 0, 'base_path': 'D:\\tmp\\test_eval', 'step': 101, 'device': 'cuda', 'opt': {}}
eval = AudioDiffusionFid(diffusion, opt_eval, env) eval = AudioDiffusionFid(diffusion, opt_eval, env)
print(eval.perform_eval()) print(eval.perform_eval())