From 802276fb37bf9dd78b90781e07e1942b60a4bc64 Mon Sep 17 00:00:00 2001 From: Plachta Date: Wed, 15 Feb 2023 15:05:36 +0800 Subject: [PATCH] upload files --- VC_inference.py | 2 +- models_infer.py | 24 +++++++++++++++++++++++- requirements_infer.txt | 1 - 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/VC_inference.py b/VC_inference.py index 9868c93..419a890 100644 --- a/VC_inference.py +++ b/VC_inference.py @@ -3,7 +3,7 @@ import numpy as np import torch from torch import no_grad, LongTensor import argparse -from mel_processing import spectrogram_torch +from models_infer import spectrogram_torch import utils from models_infer import SynthesizerTrn import gradio as gr diff --git a/models_infer.py b/models_infer.py index 8f5e0e4..89c894e 100644 --- a/models_infer.py +++ b/models_infer.py @@ -398,4 +398,26 @@ class SynthesizerTrn(nn.Module): z_p = self.flow(z, y_mask, g=g_src) z_hat = self.flow(z_p, y_mask, g=g_tgt, reverse=True) o_hat = self.dec(z_hat * y_mask, g=g_tgt) - return o_hat, y_mask, (z, z_p, z_hat) \ No newline at end of file + return o_hat, y_mask, (z, z_p, z_hat) + +def spectrogram_torch(y, n_fft, sampling_rate, hop_size, win_size, center=False): + if torch.min(y) < -1.: + print('min value is ', torch.min(y)) + if torch.max(y) > 1.: + print('max value is ', torch.max(y)) + + global hann_window + dtype_device = str(y.dtype) + '_' + str(y.device) + wnsize_dtype_device = str(win_size) + '_' + dtype_device + if wnsize_dtype_device not in hann_window: + hann_window[wnsize_dtype_device] = torch.hann_window(win_size).to(dtype=y.dtype, device=y.device) + + y = torch.nn.functional.pad(y.unsqueeze(1), (int((n_fft - hop_size) / 2), int((n_fft - hop_size) / 2)), + mode='reflect') + y = y.squeeze(1) + + spec = torch.stft(y, n_fft, hop_length=hop_size, win_length=win_size, window=hann_window[wnsize_dtype_device], + center=center, pad_mode='reflect', normalized=False, onesided=True) + + spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) + return spec \ No newline at end of file diff --git a/requirements_infer.txt b/requirements_infer.txt index 85618bf..e289d0f 100644 --- a/requirements_infer.txt +++ b/requirements_infer.txt @@ -1,5 +1,4 @@ Cython -librosa numpy scipy torch