class_docstr: Speedy speech encoder built on Transformer with Relative Position encoding.
  
  TODO: Integrate speaker conditioning vector.
  
  Args:
      in_channels (int): number of input channels.
      out_channels (int): number of output channels.
      hidden_channels (int): number of hidden channels
      params (dict): dictionary for residual convolutional blocks.
class_docstr_tok: ["Speedy","speech","encoder","built","on","Transformer","with","Relative","Position","encoding",".","TODO",":","Integrate","speaker","conditioning","vector",".","Args",":","in_channels","(","int",")",":","number","of","input","channels",".","out_channels","(","int",")",":","number","of","output","channels",".","hidden_channels","(","int",")",":","number","of","hidden","channels","params","(","dict",")",":","dictionary","for","residual","convolutional","blocks","."]
code: def __init__(
      self, in_channels, out_channels, hidden_channels, params
  ):
      super().__init__()
      self.prenet = ResidualConv1dBNBlock(
          in_channels,
          hidden_channels,
          hidden_channels,
          kernel_size=5,
          num_res_blocks=3,
          num_conv_blocks=1,
          dilations=[1, 1, 1],
      )
      self.rel_pos_transformer = RelativePositionTransformer(
          hidden_channels, out_channels, hidden_channels, **params
      )
  
imports: import math
  import torch
  from torch import nn
  from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer
  from TTS.tts.layers.generic.res_conv_bn import ResidualConv1dBNBlock
label_desc: Use image node_id 1 to create a new RelativePositionTransformerEncoder object from inherited base classes: nn with example: obj = RelativePositionTransformerEncoder(in_channels, out_channels, hidden_channels, params)