annotate vamp/load.py @ 81:0a2f2e7803ea
naming: PyPluginObject members snake_case
author |
Chris Cannam |
date |
Wed, 21 Jan 2015 12:32:32 +0000 |
parents |
de501b7e165a |
children |
a11b57e9fb0b |
rev |
line source |
Chris@56
|
1 '''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
|
2
|
Chris@56
|
3 import vampyhost
|
Chris@56
|
4
|
Chris@79
|
5 def list_plugins():
|
Chris@79
|
6 return vampyhost.list_plugins()
|
Chris@56
|
7
|
Chris@74
|
8 def loadAndConfigureFor(data, sampleRate, key, parameters):
|
Chris@79
|
9 plug = vampyhost.load_plugin(key, sampleRate,
|
Chris@77
|
10 vampyhost.ADAPT_INPUT_DOMAIN +
|
Chris@77
|
11 vampyhost.ADAPT_CHANNEL_COUNT)
|
Chris@64
|
12
|
Chris@80
|
13 plug.set_parameter_values(parameters)
|
Chris@68
|
14
|
Chris@80
|
15 stepSize = plug.get_preferred_step_size()
|
Chris@80
|
16 blockSize = plug.get_preferred_block_size()
|
Chris@68
|
17
|
Chris@68
|
18 if blockSize == 0:
|
Chris@68
|
19 blockSize = 1024
|
Chris@68
|
20 if stepSize == 0:
|
Chris@68
|
21 stepSize = blockSize ##!!! or blockSize/2, but check this with input domain adapter
|
Chris@68
|
22
|
Chris@68
|
23 channels = 1
|
Chris@68
|
24 if data.ndim > 1:
|
Chris@68
|
25 channels = data.shape[0]
|
Chris@68
|
26
|
Chris@68
|
27 plug.initialise(channels, stepSize, blockSize)
|
Chris@68
|
28 return (plug, stepSize, blockSize)
|
Chris@68
|
29
|