class_docstr: HiFiGAN Scale Discriminator. Channel sizes are different from the original HiFiGAN.
  
  Args:
      use_spectral_norm (bool): if `True` swith to spectral norm instead of weight norm.
code: def __init__(self, use_spectral_norm=False):
      super().__init__()
      norm_f = (
          nn.utils.spectral_norm
          if use_spectral_norm
          else nn.utils.parametrizations.weight_norm
      )
      self.convs = nn.ModuleList(
          [
              norm_f(Conv1d(1, 16, 15, 1, padding=7)),
              norm_f(Conv1d(16, 64, 41, 4, groups=4, padding=20)),
              norm_f(Conv1d(64, 256, 41, 4, groups=16, padding=20)),
              norm_f(Conv1d(256, 1024, 41, 4, groups=64, padding=20)),
              norm_f(Conv1d(1024, 1024, 41, 4, groups=256, padding=20)),
              norm_f(Conv1d(1024, 1024, 5, 1, padding=2)),
          ]
      )
      self.conv_post = norm_f(Conv1d(1024, 1, 3, 1, padding=1))
  
file_path: TTS/TTS/tts/layers/vits/discriminator.py
imports: import torch
  from torch import nn
  from torch.nn.modules.conv import Conv1d
  from TTS.vocoder.models.hifigan_discriminator import DiscriminatorP, MultiPeriodDiscriminator
label_desc: Use image node_id 1 to create a new DiscriminatorS object from inherited base classes: torch.nn with example: obj = DiscriminatorS(use_spectral_norm)