From 4bd3df26072939bbc2b8b242528d0d4285014156 Mon Sep 17 00:00:00 2001 From: Enno Hermann Date: Wed, 26 Jun 2024 11:54:36 +0200 Subject: [PATCH] refactor: remove duplicate get_padding --- TTS/tts/layers/vits/networks.py | 4 ---- TTS/tts/layers/xtts/hifigan_decoder.py | 5 +---- TTS/vc/models/freevc.py | 3 ++- TTS/vc/modules/freevc/commons.py | 4 ---- TTS/vc/modules/freevc/modules.py | 3 ++- TTS/vocoder/models/hifigan_discriminator.py | 3 ++- TTS/vocoder/models/hifigan_generator.py | 4 ++-- 7 files changed, 9 insertions(+), 17 deletions(-) diff --git a/TTS/tts/layers/vits/networks.py b/TTS/tts/layers/vits/networks.py index 04a1cd24..50ed1024 100644 --- a/TTS/tts/layers/vits/networks.py +++ b/TTS/tts/layers/vits/networks.py @@ -10,10 +10,6 @@ from TTS.tts.utils.helpers import sequence_mask LRELU_SLOPE = 0.1 -def get_padding(kernel_size, dilation=1): - return int((kernel_size * dilation - dilation) / 2) - - class TextEncoder(nn.Module): def __init__( self, diff --git a/TTS/tts/layers/xtts/hifigan_decoder.py b/TTS/tts/layers/xtts/hifigan_decoder.py index 42f64e68..9160529b 100644 --- a/TTS/tts/layers/xtts/hifigan_decoder.py +++ b/TTS/tts/layers/xtts/hifigan_decoder.py @@ -9,16 +9,13 @@ from torch.nn.utils.parametrizations import weight_norm from torch.nn.utils.parametrize import remove_parametrizations from TTS.utils.io import load_fsspec +from TTS.vocoder.models.hifigan_generator import get_padding logger = logging.getLogger(__name__) LRELU_SLOPE = 0.1 -def get_padding(k, d): - return int((k * d - d) / 2) - - class ResBlock1(torch.nn.Module): """Residual Block Type 1. It has 3 convolutional layers in each convolutional block. diff --git a/TTS/vc/models/freevc.py b/TTS/vc/models/freevc.py index 36f4017c..7746572f 100644 --- a/TTS/vc/models/freevc.py +++ b/TTS/vc/models/freevc.py @@ -19,10 +19,11 @@ from TTS.tts.utils.speakers import SpeakerManager from TTS.utils.io import load_fsspec from TTS.vc.configs.freevc_config import FreeVCConfig from TTS.vc.models.base_vc import BaseVC -from TTS.vc.modules.freevc.commons import get_padding, init_weights +from TTS.vc.modules.freevc.commons import init_weights from TTS.vc.modules.freevc.mel_processing import mel_spectrogram_torch from TTS.vc.modules.freevc.speaker_encoder.speaker_encoder import SpeakerEncoder as SpeakerEncoderEx from TTS.vc.modules.freevc.wavlm import get_wavlm +from TTS.vocoder.models.hifigan_generator import get_padding logger = logging.getLogger(__name__) diff --git a/TTS/vc/modules/freevc/commons.py b/TTS/vc/modules/freevc/commons.py index 587612f6..feea7f34 100644 --- a/TTS/vc/modules/freevc/commons.py +++ b/TTS/vc/modules/freevc/commons.py @@ -12,10 +12,6 @@ def init_weights(m: torch.nn.Module, mean: float = 0.0, std: float = 0.01) -> No m.weight.data.normal_(mean, std) -def get_padding(kernel_size, dilation=1): - return int((kernel_size * dilation - dilation) / 2) - - def intersperse(lst, item): result = [item] * (len(lst) * 2 + 1) result[1::2] = lst diff --git a/TTS/vc/modules/freevc/modules.py b/TTS/vc/modules/freevc/modules.py index d6f2acb8..722444a3 100644 --- a/TTS/vc/modules/freevc/modules.py +++ b/TTS/vc/modules/freevc/modules.py @@ -7,7 +7,8 @@ from torch.nn.utils.parametrize import remove_parametrizations import TTS.vc.modules.freevc.commons as commons from TTS.tts.layers.generic.normalization import LayerNorm2 -from TTS.vc.modules.freevc.commons import get_padding, init_weights +from TTS.vc.modules.freevc.commons import init_weights +from TTS.vocoder.models.hifigan_generator import get_padding LRELU_SLOPE = 0.1 diff --git a/TTS/vocoder/models/hifigan_discriminator.py b/TTS/vocoder/models/hifigan_discriminator.py index 7447a5fb..1cbc6ab3 100644 --- a/TTS/vocoder/models/hifigan_discriminator.py +++ b/TTS/vocoder/models/hifigan_discriminator.py @@ -3,6 +3,8 @@ import torch from torch import nn from torch.nn import functional as F +from TTS.vocoder.models.hifigan_generator import get_padding + LRELU_SLOPE = 0.1 @@ -29,7 +31,6 @@ class DiscriminatorP(torch.nn.Module): def __init__(self, period, kernel_size=5, stride=3, use_spectral_norm=False): super().__init__() self.period = period - get_padding = lambda k, d: int((k * d - d) / 2) norm_f = nn.utils.spectral_norm if use_spectral_norm else nn.utils.parametrizations.weight_norm self.convs = nn.ModuleList( [ diff --git a/TTS/vocoder/models/hifigan_generator.py b/TTS/vocoder/models/hifigan_generator.py index b9561f6f..083ce344 100644 --- a/TTS/vocoder/models/hifigan_generator.py +++ b/TTS/vocoder/models/hifigan_generator.py @@ -15,8 +15,8 @@ logger = logging.getLogger(__name__) LRELU_SLOPE = 0.1 -def get_padding(k, d): - return int((k * d - d) / 2) +def get_padding(kernel_size: int, dilation: int = 1) -> int: + return int((kernel_size * dilation - dilation) / 2) class ResBlock1(torch.nn.Module):