class_docstr: Convolutional (FIR) reverb.
class_docstr_tok: ["Convolutional","(","FIR",")","reverb","."]
docstr: Apply impulse response.
  
  Args:
    audio: Dry audio, 2-D Tensor of shape [batch, n_samples].
    ir: 3-D Tensor of shape [batch, ir_size, 1] or 2D Tensor of shape
      [batch, ir_size].
  
  Returns:
    tensor of shape [batch, n_samples]
docstr_tok: ["Apply","impulse","response",".","Args",":","audio",":","Dry","audio",",","2-D","Tensor","of","shape","[","batch",",","n_samples","]",".","ir",":","3-D","Tensor","of","shape","[","batch",",","ir_size",",","1","]","or","2D","Tensor","of","shape","[","batch",",","ir_size","]",".","Returns",":","tensor","of","shape","[","batch",",","n_samples","]"]
code: def get_signal(self, audio, ir):
      """Apply impulse response.
  
      Args:
        audio: Dry audio, 2-D Tensor of shape [batch, n_samples].
        ir: 3-D Tensor of shape [batch, ir_size, 1] or 2D Tensor of shape
          [batch, ir_size].
  
      Returns:
        tensor of shape [batch, n_samples]
      """
      audio, ir = tf_float32(audio), tf_float32(ir)
      ir = self._mask_dry_ir(ir)
      wet = core.fft_convolve(
          audio, ir, padding="same", delay_compensation=0
      )
      return (wet + audio) if self._add_dry else wet
  
imports: from ddsp import core
  from ddsp import processors
  from ddsp import synths
  import gin
  import tensorflow.compat.v2
label_desc: Use image node_id 6 for calling the Reverb obj's underlying member method code with example usage: obj.get_signal(audio, ir) and returns: unknown