Class lra_vec¶
class lra_vec<T> dsp¶
template <typename T>
struct lra_vec : public univector<T> { … } Sorted buffer of short-term mean-square energies used to compute the Loudness Range (LRA) per EBU R128 / ITU-R BS.1770.
Samples below -70 LUFS are rejected on push; the rest are kept in ascending order so that percentile lookups are O(log n). LRA is the difference between the 95 % and 10 % percentiles of the loudness distribution above a relative gate set 20 LU below the ungated mean.
constructor lra_vec<T>() ¶
lra_vec() Fully qualified name: kfr::lra_vec<T>::lra_vec<T>()
Declared at dsp/ebu.hpp:194
function push(T) ¶
void push(T mean_square) Insert a short-term mean-square energy sample, keeping the buffer sorted.
Samples whose loudness is below -70 LUFS are rejected.
| mean_square | Short-term mean-square energy for one 3 s window. |
Fully qualified name: kfr::lra_vec<T>::push(T)
Declared at dsp/ebu.hpp:201
function reset() ¶
void reset() Clear the buffer and invalidate the cached result.
Fully qualified name: kfr::lra_vec<T>::reset()
Declared at dsp/ebu.hpp:212
function get(T &, T &) ¶
void get(T& low, T& high) const Return the LRA percentile loudness bounds.
| low | Out: 10 % percentile loudness in LUFS. |
| high | Out: 95 % percentile loudness in LUFS. |
Note
LRA = high - low.
Fully qualified name: kfr::lra_vec<T>::get(T &, T &)
Declared at dsp/ebu.hpp:223
Fully qualified name: kfr::lra_vec<T>
Declared at dsp/ebu.hpp:160