X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Famodule.C;h=aee3f5f084431e9fb45b503bba95ac3ad382ed28;hb=ecf90ad2d14e5f72505b824b7b50edd717d2d404;hp=6ade03dd05fd8edb49232ae7327ce8157a4bfc9d;hpb=265feb10ecd640f8c90351082f48442863722a9d;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/amodule.C b/cinelerra-5.1/cinelerra/amodule.C index 6ade03dd..aee3f5f0 100644 --- a/cinelerra-5.1/cinelerra/amodule.C +++ b/cinelerra-5.1/cinelerra/amodule.C @@ -150,11 +150,10 @@ AModule::AModule(RenderEngine *renderengine, data_type = TRACK_AUDIO; transition_temp = 0; speed_temp = 0; - level_history = 0; - current_level = 0; bzero(nested_output, sizeof(Samples*) * MAX_CHANNELS); bzero(prev_head, SPEED_OVERLAP * sizeof(double)); bzero(prev_tail, SPEED_OVERLAP * sizeof(double)); + meter_history = new MeterHistory(); nested_allocation = 0; resample = 0; asset = 0; @@ -166,22 +165,11 @@ AModule::AModule(RenderEngine *renderengine, AModule::~AModule() { - if(transition_temp) delete transition_temp; - if(speed_temp) delete speed_temp; - if(level_history) - { - delete [] level_history; - delete [] level_samples; - } - + delete transition_temp; + delete speed_temp; + delete meter_history; for(int i = 0; i < MAX_CHANNELS; i++) - { - if(nested_output[i]) - { - delete nested_output[i]; - } - } - + delete nested_output[i]; delete resample; } @@ -195,17 +183,9 @@ void AModule::create_objects() { Module::create_objects(); // Not needed in pluginarray - if(commonrender) - { - level_history = new double[((ARender*)commonrender)->total_peaks]; - level_samples = new int64_t[((ARender*)commonrender)->total_peaks]; - current_level = 0; - - for(int i = 0; i < ((ARender*)commonrender)->total_peaks; i++) - { - level_history[i] = 0; - level_samples[i] = -1; - } + if( commonrender ) { + meter_history->init(1, ((ARender*)commonrender)->total_peaks); + meter_history->reset_channel(0); } }