annotate sv/filter/TimeStretchFilter.h @ 99:ca1f73f027f5

fix the play checkBox bug
author benoitrigolleau
date Wed, 11 Jul 2007 12:18:15 +0000
parents 8ebc85f6ce4e
children d94ee3e8dfe1
rev   line source
lbajardsilogic@79 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
lbajardsilogic@79 2
lbajardsilogic@79 3 /* Sound Access
lbajardsilogic@79 4 EASAIER client application.
lbajardsilogic@79 5 Silogic 2007. Laure Bajard.
lbajardsilogic@79 6
lbajardsilogic@79 7 This program is free software; you can redistribute it and/or
lbajardsilogic@79 8 modify it under the terms of the GNU General Public License as
lbajardsilogic@79 9 published by the Free Software Foundation; either version 2 of the
lbajardsilogic@79 10 License, or (at your option) any later version. See the file
lbajardsilogic@79 11 COPYING included with this distribution for more information.
lbajardsilogic@79 12 */
lbajardsilogic@79 13
lbajardsilogic@79 14 #ifndef _TIME_STRETCH_FILTER_H_
lbajardsilogic@79 15 #define _TIME_STRETCH_FILTER_H_
lbajardsilogic@79 16
lbajardsilogic@79 17 #include "Filter.h"
lbajardsilogic@79 18
lbajardsilogic@79 19 class TimeStretchFilter : public Filter
lbajardsilogic@79 20 {
lbajardsilogic@79 21 Q_OBJECT
lbajardsilogic@79 22
lbajardsilogic@79 23 public:
lbajardsilogic@79 24 TimeStretchFilter();
lbajardsilogic@79 25 virtual ~TimeStretchFilter();
lbajardsilogic@79 26
lbajardsilogic@79 27 virtual PropertyList getProperties() const;
lbajardsilogic@79 28 virtual QString getPropertyLabel(const PropertyName &) const;
lbajardsilogic@79 29 virtual PropertyType getPropertyType(const PropertyName &) const;
lbajardsilogic@79 30 virtual int getPropertyRangeAndValue(const PropertyName &,
lbajardsilogic@79 31 int *min, int *max, int *deflt) const;
lbajardsilogic@79 32 virtual QString getPropertyValueLabel(const PropertyName &,
lbajardsilogic@79 33 int value) const;
lbajardsilogic@79 34
lbajardsilogic@79 35 virtual void setProperty(const PropertyName &, int value);
lbajardsilogic@79 36
lbajardsilogic@79 37 virtual void putInput(float **input, size_t samples);
lbajardsilogic@79 38 virtual void getOutput(float **output, size_t samples);
lbajardsilogic@79 39
lbajardsilogic@82 40 virtual size_t getRequiredInputSamples(size_t outputSamplesNeeded);
lbajardsilogic@82 41
lbajardsilogic@79 42 protected:
lbajardsilogic@79 43
lbajardsilogic@79 44 bool m_bypass;
lbajardsilogic@79 45 bool m_transcheck;
lbajardsilogic@79 46 bool m_peakcheck;
lbajardsilogic@79 47
lbajardsilogic@82 48 size_t m_framesize;
lbajardsilogic@82 49 int m_hop;
lbajardsilogic@79 50
lbajardsilogic@82 51 float *m_inputBuffer;
lbajardsilogic@79 52
lbajardsilogic@82 53 float m_interpfactor;
lbajardsilogic@82 54
lbajardsilogic@82 55 float *audioframe;
lbajardsilogic@82 56 float *prev_audioframe;
lbajardsilogic@82 57 float *window;
lbajardsilogic@82 58 float *processedframe;
lbajardsilogic@82 59 float *outbuffer;
lbajardsilogic@82 60 float *holdbuffer3;
lbajardsilogic@82 61 float *holdbuffer2;
lbajardsilogic@82 62 float *holdbuffer1;
lbajardsilogic@82 63
lbajardsilogic@82 64 float *c_phase; ///CURRENT FRAME phases
lbajardsilogic@82 65 float *p_phase; ///PREVIOUS FRAME phases
lbajardsilogic@82 66 float *c_synthphase;
lbajardsilogic@82 67 float *p_synthphase;
lbajardsilogic@82 68 float *synthframe;
lbajardsilogic@79 69
lbajardsilogic@79 70 };
lbajardsilogic@79 71
lbajardsilogic@79 72 #endif