class_docstr: Decodes the expanded phoneme encoding into spectrograms
  Args:
      out_channels (int): number of output channels.
      in_hidden_channels (int): input and hidden channels. Model keeps the input channels for the intermediate layers.
      decoder_type (str): decoder layer types. 'transformers' or 'residual_conv_bn'. Default 'residual_conv_bn'.
      decoder_params (dict): model parameters for specified decoder type.
      c_in_channels (int): number of channels for conditional input.
  
  Shapes:
      - input: (B, C, T)
class_docstr_tok: ["Decodes","the","expanded","phoneme","encoding","into","spectrograms","Args",":","out_channels","(","int",")",":","number","of","output","channels",".","in_hidden_channels","(","int",")",":","input","and","hidden","channels",".","Model","keeps","the","input","channels","for","the","intermediate","layers",".","decoder_type","(","str",")",":","decoder","layer","types",".","'transformers","'","or","'residual_conv_bn","'",".","Default","'residual_conv_bn","'",".","decoder_params","(","dict",")",":","model","parameters","for","specified","decoder","type",".","c_in_channels","(","int",")",":","number","of","channels","for","conditional","input",".","Shapes",":","-","input",":","(","B",",","C",",","T",")"]
docstr: Args:
      x: [B, C, T]
      x_mask: [B, 1, T]
      g: [B, C_g, 1]
docstr_tok: ["Args",":","x",":","[","B",",","C",",","T","]","x_mask",":","[","B",",","1",",","T","]","g",":","[","B",",","C_g",",","1","]"]
code: def forward(
      self, x, x_mask, g=None
  ):  # pylint: disable=unused-argument
      """
      Args:
          x: [B, C, T]
          x_mask: [B, 1, T]
          g: [B, C_g, 1]
      """
      # TODO: implement multi-speaker
      o = self.decoder(x, x_mask, g)
      return o
  
imports: import torch
  from torch import nn
  from TTS.tts.layers.generic.res_conv_bn import Conv1dBN, Conv1dBNBlock, ResidualConv1dBNBlock
  from TTS.tts.layers.generic.transformer import FFTransformerBlock
  from TTS.tts.layers.generic.wavenet import WNBlocks
  from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer
label_desc: Use image node_id 2 for calling the Decoder obj's underlying member method code with example usage: obj.forward(x, x_mask, g) and returns: o