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@56: def listPlugins(): Chris@56: return vampyhost.listPlugins() Chris@56: Chris@74: def loadAndConfigureFor(data, sampleRate, key, parameters): Chris@74: plug = vampyhost.loadPlugin(key, sampleRate, Chris@77: vampyhost.ADAPT_INPUT_DOMAIN + Chris@77: vampyhost.ADAPT_CHANNEL_COUNT) Chris@64: Chris@68: plug.setParameterValues(parameters) Chris@68: Chris@68: stepSize = plug.getPreferredStepSize() Chris@68: blockSize = plug.getPreferredBlockSize() 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: