Mercurial > hg > vampy
comparison README @ 111:24d1c698b548 vampy-2.2
Refer to CHANGELOG
author | Chris Cannam |
---|---|
date | Tue, 19 Feb 2019 13:56:29 +0000 |
parents | 28d22109991c |
children |
comparison
equal
deleted
inserted
replaced
110:b90cd806515d | 111:24d1c698b548 |
---|---|
56 | 56 |
57 Vampy embeds the Python interpreter dynamically, and also extends | 57 Vampy embeds the Python interpreter dynamically, and also extends |
58 it with data types defined by the Vamp C++ API, all within a | 58 it with data types defined by the Vamp C++ API, all within a |
59 single shared library. | 59 single shared library. |
60 | 60 |
61 | |
62 WHAT'S NEW IN THIS RELEASE? | |
63 | |
64 See the file CHANGELOG for details of changes in this release | |
65 (and previous releases) of Vampy. | |
66 | |
61 | 67 |
62 OBTAINING VAMPY: | 68 OBTAINING VAMPY: |
63 | 69 |
64 Vampy is a free, cross platform, open source package. The | 70 Vampy is a free, cross platform, open source package. The |
65 source code is available from its repository at | 71 source code is available from its repository at |
108 _DEBUG : print more detailed messages while Vampy is in use | 114 _DEBUG : print more detailed messages while Vampy is in use |
109 _DEBUG_VALUES : print all converted values to stderr | 115 _DEBUG_VALUES : print all converted values to stderr |
110 | 116 |
111 (But note that basic debug messages are compiled in already, and | 117 (But note that basic debug messages are compiled in already, and |
112 will be displayed if the environment variable VAMPY_VERBOSE is set.) | 118 will be displayed if the environment variable VAMPY_VERBOSE is set.) |
113 | |
114 | |
115 UPDATES IN THIS VERSION (Vampy 2.0): | |
116 | |
117 * More complete, two-way Numpy support | |
118 * Embedded extension module exposing Vamp defined names | |
119 e.g. ParameterDescriptor. This allows easier porting to C++. | |
120 * Support RealTime time stamps | |
121 * Support byte compiled Python scripts (.pyc) | |
122 * Environment variables | |
123 * Flags to control how Vampy works with each plugin | |
124 * Flexible type inference to take advantage of dynamic typing | |
125 * More complete error checking for all Python/C API calls | |
126 * Various optimisations and speed-ups | |
127 | |
128 Vampy now supports two main use cases: | |
129 1) Prototyping C++ Vamp plugins in Python. | |
130 2) Develop Vampy plugins in Python to allow the use of a vamp | |
131 hosts for e.g. batch processing or visualisation. | |
132 | |
133 Vampy provides an extension module which allows the use of | |
134 data types defined in the Vamp API; such as FeatureSet() or | |
135 RealTime() in Vampy plugins. | |
136 | |
137 | |
138 BACKWARD COMPATIBILITY (Read this if you used Vampy 1): | |
139 | |
140 This is the second version of Vampy. It is largely compatible | |
141 with the previous version and it is able to run plugins | |
142 written for it. However, due to some bug fixes in this release, | |
143 it may be required to modify old plugins to work correctly | |
144 with Vampy 2.0: | |
145 | |
146 * The size of the input buffers of frequency domain plugins | |
147 are now longer by one element corresponding to the Nyquist | |
148 frequency output of the FFT. | |
149 | |
150 * The legacy interface now uses complex numbers to pass the | |
151 FFT output to frequency domain plugins in Vampy 2.0 instead | |
152 of floating point values. | |
153 | |
154 * Consequently, the size of the input buffer for each | |
155 audio channel is blockSize/2 + 1 if the legacy interface | |
156 is used and blockSize+2 if the buffer interface is used | |
157 in frequency domain plugins. Time domain plugins however | |
158 do not require any change. | |
159 | |
160 * Vampy 1 had two types of process interfaces; the legacy | |
161 and the buffer interface (for Numpy support). They were | |
162 selected based on the name of the process method. | |
163 A process() implementation used the legacy interface, | |
164 a processN() implementation used the Numpy buffer interface. | |
165 This behaviour is retained for backward compatibility but | |
166 only if no flags are set. The use of processN() is now | |
167 obsolete, since the standard process() implementation can | |
168 be configured to use any of the available interfaces by | |
169 setting the flags appropriately. | |
170 | 119 |
171 | 120 |
172 USING VAMPY: | 121 USING VAMPY: |
173 | 122 |
174 (1) Make sure you have Python 2.7 installed and you | 123 (1) Make sure you have Python 2.7 installed and you |