diff options
Diffstat (limited to 'rotord/src/rotor.h')
| -rwxr-xr-x | rotord/src/rotor.h | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/rotord/src/rotor.h b/rotord/src/rotor.h index fc557cd..84a42e3 100755 --- a/rotord/src/rotor.h +++ b/rotord/src/rotor.h @@ -28,13 +28,24 @@ namespace Rotor { class Image_node; class Parameter; + class Audio_frame{ + public: + Audio_frame(uint16_t *_samples,int _channels,int _numsamples){ + samples=_samples; + channels=_channels; + numsamples=_numsamples; + } + uint16_t *samples; + int channels,numsamples; + }; class Time_spec{ public: Time_spec(){}; - Time_spec(float _time,float _framerate,float _duration){ time=_time; framerate=_framerate; duration=_duration;}; + Time_spec(float _time,float _framerate,float _duration,Audio_frame *_audio=nullptr){ time=_time; framerate=_framerate; duration=_duration; audio=_audio;}; float time; //num/denom ? float framerate; float duration; + Audio_frame *audio; Time_spec lastframe() const{ return Time_spec(time-(1.0f/framerate),framerate,duration); } @@ -44,10 +55,10 @@ namespace Rotor { }; class Frame_spec: public Time_spec{ public: - Frame_spec(float _time,float _framerate,float _duration,int _w,int _h) - { time=_time; framerate=_framerate; duration=_duration; w=_w; h=_h;}; - Frame_spec(int _frame,float _framerate,float _duration,int _w,int _h) - { time=((float)_frame)/_framerate; framerate=_framerate; duration=_duration; w=_w; h=_h;}; + Frame_spec(float _time,float _framerate,float _duration,int _w,int _h,Audio_frame *_audio=nullptr) + { time=_time; framerate=_framerate; duration=_duration; w=_w; h=_h;audio=_audio;}; + Frame_spec(int _frame,float _framerate,float _duration,int _w,int _h,Audio_frame *_audio=nullptr) + { time=((float)_frame)/_framerate; framerate=_framerate; duration=_duration; w=_w; h=_h;audio=_audio;}; int h,w; Frame_spec lastframe(){ return Frame_spec(time-(1.0f/framerate),framerate,duration,w,h); @@ -381,14 +392,14 @@ namespace Rotor { public: Signal_colour(){ create_signal_input("Selector","Selector input"); - create_attribute("colours","palette list of web colours","Colours","000000"); + create_attribute("palette","palette list of web colours","Colour palette","000000"); title="Signal colour"; description="Cycles through a palette of background colours according to selector signal"; }; Signal_colour(map<string,string> &settings):Signal_colour() { base_settings(settings); - for (int i=0;i<attributes["colours"]->value.size()/6;i++){ - palette.push_back(Colour(attributes["colours"]->value.substr(i*6,6))); + for (int i=0;i<attributes["palette"]->value.size()/6;i++){ + palette.push_back(Colour(attributes["palette"]->value.substr(i*6,6))); } prevcol=-1; }; |
