class_docstr: Transposed Convolutional decoder for speech enhancement and separation
docstr: Forward.
  
  Args:
      input (torch.Tensor): spectrum [Batch, T, F]
      ilens (torch.Tensor): input lengths [Batch]
      fs (int): sampling rate in Hz (Not used)
code: def forward(
      self, input: torch.Tensor, ilens: torch.Tensor, fs: int = None
  ):
      """Forward.
  
      Args:
          input (torch.Tensor): spectrum [Batch, T, F]
          ilens (torch.Tensor): input lengths [Batch]
          fs (int): sampling rate in Hz (Not used)
      """
      input = input.transpose(1, 2)
      batch_size = input.shape[0]
      wav = self.convtrans1d(
          input, output_size=(batch_size, 1, ilens.max())
      )
      wav = wav.squeeze(1)
  
      return wav, ilens
  
file_path: espnet/espnet2/enh/decoder/conv_decoder.py
imports: import math
  import torch
  from espnet2.enh.decoder.abs_decoder import AbsDecoder
label_desc: Use image node_id 2 for calling the ConvDecoder obj's underlying member method code with example usage: obj.forward(input, ilens, fs) and returns: wav,  ilens