Class ebu_r128¶
class ebu_r128<T> dsp¶
template <typename T>
struct ebu_r128 { … } EBU R128 loudness meter.
Computes momentary (M, 400 ms), short-term (S, 3 s), integrated (I) and loudness range (LRA) values for a multi-channel signal, per EBU Tech 3341 / R128 s2 and EBU R128 s3 (LRA).
constructor ebu_r128<T>(int, std::span<const speaker_type>, int) ¶
ebu_r128(int sample_rate, std::span<const speaker_type> channels, int packet_size_factor = 1) Construct the meter.
| sample_rate | Sample rate in Hz. |
| channels | Speaker roles for each input channel (L, R, C, Ls, Rs, LFE, ...). |
| packet_size_factor | Refresh multiplier: 1 = 10 Hz, 2 = 20 Hz, 3 = 30 Hz (range [1..6]). |
Fully qualified name: kfr::ebu_r128<T>::ebu_r128<T>(int, std::span<const speaker_type>, int)
Declared at dsp/ebu.hpp:369
function sample_rate() ¶
int sample_rate() const Return the configured sample rate in Hz.
Fully qualified name: kfr::ebu_r128<T>::sample_rate()
Declared at dsp/ebu.hpp:384
function packet_size() ¶
size_t packet_size() const Return the number of samples per packet (= sample_rate / refresh_rate).
Fully qualified name: kfr::ebu_r128<T>::packet_size()
Declared at dsp/ebu.hpp:387
function get_values(T &, T &, T &, T &, T &) ¶
void get_values(T& loudness_momentary, T& loudness_short, T& loudness_intergrated, T& loudness_range_low,
T& loudness_range_high) Read all measured loudness values.
| loudness_momentary | Out: momentary loudness M (400 ms), LUFS. |
| loudness_short | Out: short-term loudness S (3 s), LUFS. |
| loudness_intergrated | Out: integrated program loudness I, LUFS. |
| loudness_range_low | Out: LRA 10 % percentile, LUFS. |
| loudness_range_high | Out: LRA 95 % percentile, LUFS. |
Note
LRA = loudness_range_high - loudness_range_low.
Fully qualified name: kfr::ebu_r128<T>::get_values(T &, T &, T &, T &, T &)
Declared at dsp/ebu.hpp:398
function operator[](size_t) ¶
const ebu_channel<T>& operator[](size_t index) const Access channel index (read-only).
Fully qualified name: kfr::ebu_r128<T>::operator[](size_t)
Declared at dsp/ebu.hpp:417
function count() ¶
size_t count() const Return the number of channels.
Fully qualified name: kfr::ebu_r128<T>::count()
Declared at dsp/ebu.hpp:419
function process_packet(const std::initializer_list<univector_dyn<T>> &) ¶
void process_packet(const std::initializer_list<univector_dyn<T>>& source) Process one packet for every channel.
Fully qualified name: kfr::ebu_r128<T>::process_packet(const std::initializer_list<univector_dyn<T>> &)
Declared at dsp/ebu.hpp:429
function process_packet(const std::initializer_list<univector_ref<T>> &) ¶
void process_packet(const std::initializer_list<univector_ref<T>>& source) Process one packet for every channel.
Fully qualified name: kfr::ebu_r128<T>::process_packet(const std::initializer_list<univector_ref<T>> &)
Declared at dsp/ebu.hpp:434
function process_packet(std::span<const univector_dyn<T>>) ¶
void process_packet(std::span<const univector_dyn<T>> source) Process one packet for every channel.
Fully qualified name: kfr::ebu_r128<T>::process_packet(std::span<const univector_dyn<T>>)
Declared at dsp/ebu.hpp:439
function process_packet(std::span<const univector_ref<T>>) ¶
void process_packet(std::span<const univector_ref<T>> source) Process one packet for every channel.
Fully qualified name: kfr::ebu_r128<T>::process_packet(std::span<const univector_ref<T>>)
Declared at dsp/ebu.hpp:444
function start() ¶
void start() (Re)start measurement: subsequent packets update the buffers.
Fully qualified name: kfr::ebu_r128<T>::start()
Declared at dsp/ebu.hpp:450
function stop() ¶
void stop() Pause measurement: packets are still filtered but buffers are frozen.
Fully qualified name: kfr::ebu_r128<T>::stop()
Declared at dsp/ebu.hpp:452
function running() ¶
bool running() const Return whether the meter is currently running (see start() , stop() ).
Fully qualified name: kfr::ebu_r128<T>::running()
Declared at dsp/ebu.hpp:454
function reset() ¶
void reset() Request a deferred reset of all channels and accumulators.
Fully qualified name: kfr::ebu_r128<T>::reset()
Declared at dsp/ebu.hpp:461
Fully qualified name: kfr::ebu_r128<T>
Declared at dsp/ebu.hpp:358