Mercurial > hg > vamp-plugin-sdk
comparison vamp-sdk/Plugin.h @ 47:be8fdfe25693
* Change input buffers arg to process from float ** to const float *const *
to avoid plugins modifying their input data
* Some improvements to comments
* Fix stupidity in frequency-domain input passing (there are n/2+1 values,
not n/2)
author | cannam |
---|---|
date | Fri, 08 Dec 2006 17:39:32 +0000 |
parents | 154f86cb8c99 |
children | aa64a46320d4 |
comparison
equal
deleted
inserted
replaced
46:2858c897d90f | 47:be8fdfe25693 |
---|---|
344 * the real time in seconds of the start of the supplied block of | 344 * the real time in seconds of the start of the supplied block of |
345 * samples. | 345 * samples. |
346 * | 346 * |
347 * If the plugin's inputDomain is FrequencyDomain, inputBuffers | 347 * If the plugin's inputDomain is FrequencyDomain, inputBuffers |
348 * will point to one array of floats per input channel, and each | 348 * will point to one array of floats per input channel, and each |
349 * of these arrays will contain blockSize/2 consecutive pairs of | 349 * of these arrays will contain blockSize/2+1 consecutive pairs of |
350 * real and imaginary component floats corresponding to bins | 350 * real and imaginary component floats corresponding to bins |
351 * 0..(blockSize/2-1) of the FFT output. The timestamp will be | 351 * 0..(blockSize/2) of the FFT output, where bin 0 contains the DC |
352 * the real time in seconds of the centre of the FFT input window | 352 * output and bin blockSize/2 corresponds to the Nyquist output. |
353 * (i.e. the very first block passed to process might contain the | 353 * The timestamp will be the real time in seconds of the centre of |
354 * FFT of half a block of zero samples and the first half-block of | 354 * the FFT input window (i.e. the very first block passed to |
355 * the actual data, with a timestamp of zero). | 355 * process might contain the FFT of half a block of zero samples |
356 * and the first half-block of the actual data, with a timestamp | |
357 * of zero). | |
356 * | 358 * |
357 * Return any features that have become available after this | 359 * Return any features that have become available after this |
358 * process call. (These do not necessarily have to fall within | 360 * process call. (These do not necessarily have to fall within |
359 * the process block, except for OneSamplePerStep outputs.) | 361 * the process block, except for OneSamplePerStep outputs.) |
360 */ | 362 */ |
361 virtual FeatureSet process(float **inputBuffers, | 363 virtual FeatureSet process(const float *const *inputBuffers, |
362 RealTime timestamp) = 0; | 364 RealTime timestamp) = 0; |
363 | 365 |
364 /** | 366 /** |
365 * After all blocks have been processed, calculate and return any | 367 * After all blocks have been processed, calculate and return any |
366 * remaining features derived from the complete input. | 368 * remaining features derived from the complete input. |