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