diff 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
line wrap: on
line diff
--- a/vamp-sdk/Plugin.h	Thu Nov 30 15:00:17 2006 +0000
+++ b/vamp-sdk/Plugin.h	Fri Dec 08 17:39:32 2006 +0000
@@ -346,19 +346,21 @@
      *
      * If the plugin's inputDomain is FrequencyDomain, inputBuffers
      * will point to one array of floats per input channel, and each
-     * of these arrays will contain blockSize/2 consecutive pairs of
+     * of these arrays will contain blockSize/2+1 consecutive pairs of
      * real and imaginary component floats corresponding to bins
-     * 0..(blockSize/2-1) of the FFT output.  The timestamp will be
-     * the real time in seconds of the centre of the FFT input window
-     * (i.e. the very first block passed to process might contain the
-     * FFT of half a block of zero samples and the first half-block of
-     * the actual data, with a timestamp of zero).
+     * 0..(blockSize/2) of the FFT output, where bin 0 contains the DC
+     * output and bin blockSize/2 corresponds to the Nyquist output.
+     * The timestamp will be the real time in seconds of the centre of
+     * the FFT input window (i.e. the very first block passed to
+     * process might contain the FFT of half a block of zero samples
+     * and the first half-block of the actual data, with a timestamp
+     * of zero).
      *
      * Return any features that have become available after this
      * process call.  (These do not necessarily have to fall within
      * the process block, except for OneSamplePerStep outputs.)
      */
-    virtual FeatureSet process(float **inputBuffers,
+    virtual FeatureSet process(const float *const *inputBuffers,
 			       RealTime timestamp) = 0;
 
     /**