-Refactored EventFxReverb

This commit is contained in:
Harry van Haaren 2013-09-05 14:42:48 +01:00
parent 637e545f27
commit c66bcc2a42
5 changed files with 33 additions and 12 deletions

View file

@ -65,7 +65,7 @@ void DiskReader::readSession( std::string path )
readGrid(); readGrid();
readMaster();
// cleanup // cleanup
cJSON_Delete( session ); cJSON_Delete( session );
@ -81,7 +81,27 @@ void DiskReader::readMaster()
cJSON* master = cJSON_GetObjectItem( session, "master"); cJSON* master = cJSON_GetObjectItem( session, "master");
if ( master ) if ( master )
{ {
cJSON* volume = cJSON_GetObjectItem( master, "volume");
// fader
{
cJSON* fader = cJSON_GetObjectItem( master, "fader");
EventTrackVol e( -1, fader->valuedouble );
writeToDspRingbuffer( &e );
}
// reverb
{
cJSON* reverb = cJSON_GetObjectItem( master, "reverb");
cJSON* active = cJSON_GetObjectItem( master, "active");
cJSON* size = cJSON_GetObjectItem( master, "wet");
cJSON* wet = cJSON_GetObjectItem( master, "dry");
cJSON* damping = cJSON_GetObjectItem( master, "damping");
EventFxReverb e( active->valuedouble, size->valuedouble,
wet->valuedouble, damping->valuedouble );
writeToDspRingbuffer( &e );
}
} }

View file

@ -74,7 +74,6 @@ void DiskWriter::writeMaster()
cJSON_AddNumberToObject( masterTrack, "fader", master->getVolume()->value() ); cJSON_AddNumberToObject( masterTrack, "fader", master->getVolume()->value() );
// scene names // scene names
Avtk::ClipSelector* clipSelector = master->getClipSelector(); Avtk::ClipSelector* clipSelector = master->getClipSelector();
cJSON* sceneNames = cJSON_CreateArray(); cJSON* sceneNames = cJSON_CreateArray();
@ -89,12 +88,13 @@ void DiskWriter::writeMaster()
Avtk::Reverb* rev = master->getReverb(); Avtk::Reverb* rev = master->getReverb();
cJSON* reverb = cJSON_CreateObject(); cJSON* reverb = cJSON_CreateObject();
cJSON_AddItemToObject( masterTrack, "reverb", reverb ); cJSON_AddItemToObject( masterTrack, "reverb", reverb );
cJSON_AddNumberToObject( reverb, "active", rev->getActive() );
cJSON_AddNumberToObject( reverb, "size", rev->size() ); cJSON_AddNumberToObject( reverb, "size", rev->size() );
cJSON_AddNumberToObject( reverb, "wet", rev->wet() ); cJSON_AddNumberToObject( reverb, "wet", rev->wet() );
cJSON_AddNumberToObject( reverb, "damping", rev->damping() ); cJSON_AddNumberToObject( reverb, "damping", rev->damping() );
cJSON_AddNumberToObject( reverb, "wet", rev->wet() ); //cJSON_AddNumberToObject( reverb, "wet", rev->wet() );
cJSON_AddNumberToObject( reverb, "damping", rev->damping() ); //cJSON_AddNumberToObject( reverb, "damping", rev->damping() );
} }
@ -124,7 +124,7 @@ void DiskWriter::writeSession( std::string path, std::string sessionName )
// add track metadata: volumes, sends etc // add track metadata: volumes, sends etc
cJSON_AddNumberToObject( track, "ID", t ); cJSON_AddNumberToObject( track, "ID", t );
cJSON_AddNumberToObject( track, "volume", 0.4 ); cJSON_AddNumberToObject( track, "fader", 0.4 );
// write clipData vector into clip placeholder // write clipData vector into clip placeholder
cJSON* clips = cJSON_CreateArray(); cJSON* clips = cJSON_CreateArray();

View file

@ -174,13 +174,14 @@ class EventFxReverb : public EventBase
int type() { return int(FX_REVERB); } int type() { return int(FX_REVERB); }
uint32_t size() { return sizeof(EventFxReverb); } uint32_t size() { return sizeof(EventFxReverb); }
int track;
bool enable; bool enable;
float damping;
float rtSize; float rtSize;
float wet;
float damping;
EventFxReverb(){}; EventFxReverb(){};
EventFxReverb(int t, bool e, float d, float s): track(t), enable(e), damping(d), rtSize(s) {} EventFxReverb(bool e, float s, float w, float d): enable(e), rtSize(s), wet(w), damping(d) {}
}; };
class EventTrackSend : public EventBase class EventTrackSend : public EventBase

View file

@ -27,7 +27,7 @@ static void gmastertrack_reverb_cb(Fl_Widget *w, void *data)
{ {
int enable = ((Avtk::Reverb*)w)->getActive(); int enable = ((Avtk::Reverb*)w)->getActive();
printf("reverb enable %i\n",enable); printf("reverb enable %i\n",enable);
EventFxReverb e = EventFxReverb( -1, enable, 0.5, 0.5 ); EventFxReverb e = EventFxReverb( enable, 0.5, 0.5, 0.5 );
writeToDspRingbuffer( &e ); writeToDspRingbuffer( &e );
} }

View file

@ -89,8 +89,8 @@ static void gui_header_callback(Fl_Widget *w, void *data)
break; break;
} }
} }
else if ( strcmp(m->label(), "Save ") == 0 ) { else if ( strcmp(m->label(), "Save ") == 0 )
{
const char* name = fl_input( "Save session as", "sessionName" ); const char* name = fl_input( "Save session as", "sessionName" );
if ( name ) if ( name )
{ {