Mercurial > hg > vampy
comparison CHANGELOG @ 110:b90cd806515d
Add CHANGELOG
author | Chris Cannam |
---|---|
date | Tue, 19 Feb 2019 13:54:27 +0000 |
parents | |
children | c85d26cb9dab |
comparison
equal
deleted
inserted
replaced
109:471142e74a1a | 110:b90cd806515d |
---|---|
1 | |
2 UPDATES IN VERSION 2.2: | |
3 | |
4 * Provide an argv list to the plugin script, in case it or one | |
5 of its imports tries to index into it | |
6 * Add CHANGELOG! | |
7 | |
8 | |
9 UPDATES IN VERSION 2.1: | |
10 | |
11 * Fix crash when a file is found that is not loadable as a | |
12 plugin but redefines one of VamPy's "reserved" names | |
13 * Continue to load subsequent plugins after one fails; don't | |
14 just give up on all of them | |
15 * Add VAMPY_VERBOSE environment variable for debug output | |
16 * Update builds for current Python (2.x branch), NumPy etc | |
17 | |
18 | |
19 UPDATES IN VERSION 2.0: | |
20 | |
21 * More complete, two-way Numpy support | |
22 * Embedded extension module exposing Vamp defined names | |
23 e.g. ParameterDescriptor. This allows easier porting to C++. | |
24 * Support RealTime time stamps | |
25 * Support byte compiled Python scripts (.pyc) | |
26 * Environment variables | |
27 * Flags to control how Vampy works with each plugin | |
28 * Flexible type inference to take advantage of dynamic typing | |
29 * More complete error checking for all Python/C API calls | |
30 * Various optimisations and speed-ups | |
31 | |
32 Vampy now supports two main use cases: | |
33 1) Prototyping C++ Vamp plugins in Python. | |
34 2) Develop Vampy plugins in Python to allow the use of a vamp | |
35 hosts for e.g. batch processing or visualisation. | |
36 | |
37 Vampy provides an extension module which allows the use of | |
38 data types defined in the Vamp API; such as FeatureSet() or | |
39 RealTime() in Vampy plugins. | |
40 | |
41 | |
42 BACKWARD COMPATIBILITY (Read this if you used Vampy 1): | |
43 | |
44 This is the second version of Vampy. It is largely compatible | |
45 with the previous version and it is able to run plugins | |
46 written for it. However, due to some bug fixes in this release, | |
47 it may be required to modify old plugins to work correctly | |
48 with Vampy 2.0: | |
49 | |
50 * The size of the input buffers of frequency domain plugins | |
51 are now longer by one element corresponding to the Nyquist | |
52 frequency output of the FFT. | |
53 | |
54 * The legacy interface now uses complex numbers to pass the | |
55 FFT output to frequency domain plugins in Vampy 2.0 instead | |
56 of floating point values. | |
57 | |
58 * Consequently, the size of the input buffer for each | |
59 audio channel is blockSize/2 + 1 if the legacy interface | |
60 is used and blockSize+2 if the buffer interface is used | |
61 in frequency domain plugins. Time domain plugins however | |
62 do not require any change. | |
63 | |
64 * Vampy 1 had two types of process interfaces; the legacy | |
65 and the buffer interface (for Numpy support). They were | |
66 selected based on the name of the process method. | |
67 A process() implementation used the legacy interface, | |
68 a processN() implementation used the Numpy buffer interface. | |
69 This behaviour is retained for backward compatibility but | |
70 only if no flags are set. The use of processN() is now | |
71 obsolete, since the standard process() implementation can | |
72 be configured to use any of the available interfaces by | |
73 setting the flags appropriately. | |
74 | |
75 |