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@74: def loadAndConfigureFor(data, sampleRate, key, parameters): Chris@79: plug = vampyhost.load_plugin(key, sampleRate, Chris@77: vampyhost.ADAPT_INPUT_DOMAIN + Chris@77: vampyhost.ADAPT_CHANNEL_COUNT) Chris@64: Chris@80: plug.set_parameter_values(parameters) Chris@68: Chris@80: stepSize = plug.get_preferred_step_size() Chris@80: blockSize = plug.get_preferred_block_size() Chris@68: Chris@68: if blockSize == 0: Chris@68: blockSize = 1024 Chris@68: if stepSize == 0: Chris@68: stepSize = blockSize ##!!! or blockSize/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@68: plug.initialise(channels, stepSize, blockSize) Chris@68: return (plug, stepSize, blockSize) Chris@68: