Chris@56: '''A high-level interface to the vampyhost extension module, for quickly and easily running Vamp audio analysis plugins on audio files and buffers.''' Chris@56: Chris@56: import vampyhost Chris@56: Chris@79: def list_plugins(): Chris@79: return vampyhost.list_plugins() Chris@56: Chris@84: def load_and_configure(data, sample_rate, key, parameters): Chris@82: Chris@84: plug = vampyhost.load_plugin(key, sample_rate, Chris@82: vampyhost.ADAPT_INPUT_DOMAIN + Chris@82: vampyhost.ADAPT_CHANNEL_COUNT) Chris@64: Chris@80: plug.set_parameter_values(parameters) Chris@68: Chris@84: step_size = plug.get_preferred_step_size() Chris@84: block_size = plug.get_preferred_block_size() Chris@68: Chris@84: if block_size == 0: Chris@84: block_size = 1024 Chris@84: if step_size == 0: Chris@84: step_size = block_size ##!!! or block_size/2, but check this with input domain adapter Chris@68: Chris@68: channels = 1 Chris@68: if data.ndim > 1: Chris@68: channels = data.shape[0] Chris@68: Chris@84: plug.initialise(channels, step_size, block_size) Chris@84: return (plug, step_size, block_size) Chris@68: