mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-22 14:46:34 +01:00
fix unbound DSP calc.
This commit is contained in:
parent
79fecf0b61
commit
a05e48dab0
1 changed files with 5 additions and 9 deletions
|
|
@ -68,18 +68,14 @@ public:
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (elapsed_time_us() > m_max_time_us) {
|
|
||||||
m_dsp_load = 1.0f;
|
|
||||||
} else {
|
|
||||||
const float load = elapsed_time_us() / (float)m_max_time_us;
|
const float load = elapsed_time_us() / (float)m_max_time_us;
|
||||||
if (load > m_dsp_load) {
|
if (load > m_dsp_load || load > 1.0) {
|
||||||
m_dsp_load = load;
|
m_dsp_load = load;
|
||||||
} else {
|
} else {
|
||||||
const float alpha = 0.2f * (m_max_time_us * 1e-6f);
|
const float alpha = 0.2f * (m_max_time_us * 1e-6f);
|
||||||
m_dsp_load = m_dsp_load + alpha * (load - m_dsp_load) + 1e-12;
|
m_dsp_load = m_dsp_load + alpha * (load - m_dsp_load) + 1e-12;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
int64_t elapsed_time_us()
|
int64_t elapsed_time_us()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue