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.
docstr: Args:
      x (Tensor): input waveform.
  
  Returns:
      Tensor: discriminator scores.
      List[Tensor]: list of features from the convolutiona layers.
code: def forward(self, x):
      """
      Args:
          x (Tensor): input waveform.
  
      Returns:
          Tensor: discriminator scores.
          List[Tensor]: list of features from the convolutiona layers.
      """
      feat = []
      for l in self.convs:
          x = l(x)
          x = torch.nn.functional.leaky_relu(x, 0.1)
          feat.append(x)
      x = self.conv_post(x)
      feat.append(x)
      x = torch.flatten(x, 1, -1)
      return x, feat
  
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 2 for calling the DiscriminatorS obj's underlying member method code with example usage: obj.forward(x) and returns: x,  feat