diff options
| author | Tim Redfern <tim@eclectronics.org> | 2013-09-10 12:56:08 +0100 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2013-09-10 12:56:08 +0100 |
| commit | 959b4591baa048b692e38c39c8db89317023ccea (patch) | |
| tree | f819b7b5ecc614bbe5c4e40fd573b33b55fb5edc /rotord/src/rotor.h | |
| parent | 1ba984e17672dd214e4e239c6806ee2e739432e8 (diff) | |
cvimage release
Diffstat (limited to 'rotord/src/rotor.h')
| -rw-r--r-- | rotord/src/rotor.h | 55 |
1 files changed, 15 insertions, 40 deletions
diff --git a/rotord/src/rotor.h b/rotord/src/rotor.h index 7a26a5b..fbefa66 100644 --- a/rotord/src/rotor.h +++ b/rotord/src/rotor.h @@ -255,17 +255,6 @@ namespace Rotor { float image_time; //? could be used to detect image reuse? }; - class Audio_processor: public Signal_node { - public: - virtual Audio_processor(){}; - virtual ~Audio_processor(){}; - virtual int process_frame(uint8_t *data,int samples)=0; - virtual bool init(int _channels,int _bits,int _samples,int _rate)=0; - virtual void cleanup()=0; - virtual void print_summary(){}; - virtual string get_features(){}; - int channels,bits,samples,rate; - }; class LUT { LUT(){ lut=nullptr; @@ -289,6 +278,17 @@ namespace Rotor { protected: unsigned char *lut; }; + class Audio_processor: public Signal_node { + public: + virtual Audio_processor(){}; + virtual ~Audio_processor(){}; + virtual int process_frame(uint8_t *data,int samples)=0; + virtual bool init(int _channels,int _bits,int _samples,int _rate)=0; + virtual void cleanup()=0; + virtual void print_summary(){}; + virtual string get_features(){}; + int channels,bits,samples,rate; + }; //actual nodes------------------------------------------------- class Time: public Signal_node { public: @@ -605,10 +605,11 @@ namespace Rotor { image=image.add_wrap(*in2); break; case BLEND_blend: //has to be last because of initialser of *in? go figure + //problem here with leak image*=(1.0f-parameters["amount"]->value); - Image in=(*in2); - in*=parameters["amount"]->value; - image+=in; + Image *in=(*in2)*parameters["amount"]->value; + image+=(*in); + delete in; break; } return ℑ @@ -1121,32 +1122,6 @@ namespace Rotor { private: unordered_map<string,Node*> type_map; }; - class Audio_thumbnailer: public Audio_processor { - public: - Audio_thumbnailer(){ - height=128; - width=512; //fit - data=new uint8_t[height*width]; - memset(data,0,height*width); - vectordata =new float[width]; - }; - ~Audio_thumbnailer(){ - delete[] data; - delete[] vectordata; - }; - Audio_thumbnailer* clone(map<string,string> &_settings) { return new Audio_thumbnailer();}; - bool init(int _channels,int _bits,int _samples,int _rate); - void cleanup(){}; - int process_frame(uint8_t *data,int samples_in_frame); - string print(); - void print_vector(xmlIO XML); - uint8_t *data; - float *vectordata; - int height,width,samples_per_column; - int column,out_sample,sample,samples; - int offset; - double scale,accum; - }; } #endif |
