Mixer: Limit rate of DSP meter updates.
This commit is contained in:
parent
19487a72e4
commit
1cb9f68cf1
|
@ -464,7 +464,25 @@ Mixer_Strip::update ( void )
|
||||||
_chain->update();
|
_chain->update();
|
||||||
}
|
}
|
||||||
if ( group() )
|
if ( group() )
|
||||||
dsp_load_progress->value( group()->dsp_load() );
|
{
|
||||||
|
if ( ( _dsp_load_index++ % 10 ) == 0 )
|
||||||
|
{
|
||||||
|
float l = group()->dsp_load();
|
||||||
|
|
||||||
|
dsp_load_progress->value( l );
|
||||||
|
|
||||||
|
{
|
||||||
|
char pat[20];
|
||||||
|
snprintf( pat, sizeof(pat), "%.1f%%", l * 100.0f );
|
||||||
|
dsp_load_progress->copy_tooltip( pat );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( l <= 0.15f )
|
||||||
|
dsp_load_progress->color2( fl_rgb_color( 127,127,127 ) );
|
||||||
|
else
|
||||||
|
dsp_load_progress->color2( FL_RED );
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -476,6 +494,8 @@ Mixer_Strip::init ( )
|
||||||
_chain = 0;
|
_chain = 0;
|
||||||
_group = 0;
|
_group = 0;
|
||||||
|
|
||||||
|
_dsp_load_index = 0;
|
||||||
|
|
||||||
box( FL_FLAT_BOX );
|
box( FL_FLAT_BOX );
|
||||||
labeltype( FL_NO_LABEL );
|
labeltype( FL_NO_LABEL );
|
||||||
|
|
||||||
|
|
|
@ -85,6 +85,8 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
unsigned int _dsp_load_index;
|
||||||
|
|
||||||
/* used to defer setting the mode of the gain controller until the
|
/* used to defer setting the mode of the gain controller until the
|
||||||
chain has been added and the controller connected to a default
|
chain has been added and the controller connected to a default
|
||||||
module */
|
module */
|
||||||
|
|
Loading…
Reference in New Issue