class_docstr: Parent Abstract Class for Vamp Analyzer through Vampyhost
      
class_docstr_tok: ["Parent","Abstract","Class","for","Vamp","Analyzer","through","Vampyhost"]
code: def setup(
      self,
      channels=None,
      samplerate=None,
      blocksize=None,
      totalframes=None,
  ):
      super(VampAnalyzer, self).setup(
          channels, samplerate, blocksize, totalframes
      )
  
      self.plugin = vampyhost.load_plugin(
          self.plugin_key,
          float(self.input_samplerate),
          vampyhost.ADAPT_INPUT_DOMAIN
          + vampyhost.ADAPT_BUFFER_SIZE
          + vampyhost.ADAPT_CHANNEL_COUNT,
      )
  
      if not self.plugin.initialise(
          self.input_channels, self.input_stepsize, self.input_blocksize
      ):
          raise RuntimeError(
              "Vampy-Host failed to initialise plugin %d"
              % self.plugin_key
          )
  
      self.out_index = self.plugin.get_output(self.plugin_output)[
          "output_index"
      ]
  
      if not self.plugin_output:
          self.output_desc = self.plugin.get_output(0)
          self.plugin_output = self.output_desc["identifier"]
      else:
          self.output_desc = self.plugin.get_output(self.plugin_output)
  
file_path: TimeSide/timeside/plugins/analyzer/externals/vampyhost_wrapper.py
imports: from timeside.core import implements, interfacedoc, abstract
  from timeside.core.analyzer import Analyzer
  from timeside.core.api import IAnalyzer
  from timeside.core.tools.parameters import HasTraits, List
  from timeside.core.preprocessors import downmix_to_mono, frames_adapter
  from timeside.core.tools.parameters import store_parameters
  import vamp
  from vamp.collect import deduce_shape, reshape
  import vampyhost
label_desc: Use image node_id 2 for calling the VampAnalyzer obj's underlying member method code with example usage: obj.setup(channels, samplerate, blocksize, totalframes) without return types