The Open Master Hearing Aid (openMHA)
openMHA
Open community platform for hearing aid algorithm research
|
Rmslevel plugin. More...
Public Member Functions | |
rmslevel_if_t (MHA_AC::algo_comm_t &iac, const std::string &configured_name) | |
Constructor of rmslevel plugin. More... | |
mha_spec_t * | process (mha_spec_t *s) |
Extract level from current STFT spectrum. More... | |
mha_wave_t * | process (mha_wave_t *s) |
Extract level from current time signal block. More... | |
void | prepare (mhaconfig_t &signal_dimensions) override |
Prepare rmslevel plugin for signal processing: Resize and reinitialize monitor variables according to number of audio channels specified in parameter, publish applicable monitor variables as AC variables (depends on signal domain). More... | |
void | release () override |
Release removes published AC variables from AC space. More... | |
Public Member Functions inherited from MHAPlugin::plugin_t< UNIT > | |
plugin_t (const std::string &, MHA_AC::algo_comm_t &) | |
Constructor of plugin template base class. More... | |
virtual | ~plugin_t () |
Destructor of plugin template base class. More... | |
void | prepare_ (mhaconfig_t &) |
void | release_ () |
bool | is_prepared () const |
Flag, if the prepare method is successfully called (or currently evaluated) More... | |
mhaconfig_t | input_cfg () const |
Current input channel configuration. More... | |
mhaconfig_t | output_cfg () const |
Current output channel configuration. More... | |
Public Member Functions inherited from MHAParser::parser_t | |
parser_t (const std::string &help_text="") | |
Construct detached node to be used in the configuration tree. More... | |
~parser_t () | |
void | insert_item (const std::string &, base_t *) |
Register a parser item into this sub-parser. More... | |
void | remove_item (const std::string &) |
Remove an item by name. More... | |
void | force_remove_item (const std::string &) |
Remove an item by name. More... | |
void | remove_item (const base_t *) |
Remove an item by address. More... | |
Public Member Functions inherited from MHAParser::base_t | |
base_t (const std::string &) | |
Constructor for base class of all parser nodes. More... | |
base_t (const base_t &) | |
Copy constructor for base_t. More... | |
base_t & | operator= (const base_t &)=default |
base_t (base_t &&)=delete | |
base_t & | operator= (base_t &&)=delete |
virtual | ~base_t () |
virtual std::string | parse (const std::string &) |
Causes this node to process a command in the openMHA configuration language. More... | |
virtual void | parse (const char *, char *, unsigned int) |
This function parses a command and writes the parsing result into a C character array. More... | |
virtual void | parse (const std::vector< std::string > &, std::vector< std::string > &) |
virtual std::string | query_perm (const std::string &) |
virtual std::string | query_range (const std::string &) |
std::string | query_version (const std::string &) |
std::string | query_id (const std::string &) |
std::string | query_subst (const std::string &) |
std::string | query_addsubst (const std::string &) |
std::string | query_help (const std::string &) |
std::string | query_cmds (const std::string &) |
void | set_node_id (const std::string &) |
Set the identification string of this parser node. More... | |
void | set_help (const std::string &) |
Set the help comment of a variable or parser. More... | |
void | add_parent_on_insert (parser_t *, std::string) |
void | rm_parent_on_remove (parser_t *) |
const std::string & | fullname () const |
Return the full dot-separated path name of this parser node in the openMHA configuration tree. More... | |
Public Member Functions inherited from MHAPlugin::config_t< runtime_cfg_t > | |
config_t () | |
~config_t () | |
Private Member Functions | |
void | update () |
Called on write access to the configuration variable unit . More... | |
void | insert_ac_variables_levels () |
(Re-)insert AC variables for spectral processing into AC space. More... | |
void | insert_ac_variables_peaks_and_levels () |
(Re-)insert AC variables for waveform processing into AC space. More... | |
void | insert_ac_variable_float_vector (std::vector< float > &v, const std::string &acname) |
(Re-)insert a single AC variable. More... | |
void | remove_ac_variables () |
Remove AC variables from AC space. More... | |
Private Attributes | |
MHAEvents::patchbay_t< rmslevel_if_t > | patchbay |
Configuration language event dispatcher. More... | |
MHAParser::vfloat_mon_t | level = {"RMS level in W/m^2"} |
Sound power. More... | |
MHAParser::vfloat_mon_t | level_db = {"RMS level in dB"} |
Sound pressure level. More... | |
MHAParser::vfloat_mon_t | peak = {"peak amplitude in Pa"} |
Peak amplitude. More... | |
MHAParser::vfloat_mon_t | peak_db = {"peak amplitude in dB"} |
dB value corresponding to peak amplitude. More... | |
const std::string | level_acname |
AC variable name for level . More... | |
const std::string | level_db_acname |
AC variable name for level_db . More... | |
const std::string | peak_acname |
AC variable name for peak . More... | |
const std::string | peak_db_acname |
AC variable name for peak_db . More... | |
MHAParser::kw_t | unit |
Configuration variable for selecting result dB scale. More... | |
std::vector< mha_real_t > | freq_offsets |
freq_offsets provides the conversion of dB(SPL) to dB(HL) for every frequency bin in the stft used by coloured_intensity. More... | |
Additional Inherited Members | |
Public Attributes inherited from MHAParser::base_t | |
MHAEvents::emitter_t | writeaccess |
Event emitted on write access. More... | |
MHAEvents::emitter_t | valuechanged |
Event emitted if the value has changed. More... | |
MHAEvents::emitter_t | readaccess |
Event emitted on read access. More... | |
MHAEvents::emitter_t | prereadaccess |
Event emitted on read access, before the data field is accessed. More... | |
Protected Member Functions inherited from MHAParser::parser_t | |
std::string | op_subparse (expression_t &) |
std::string | op_setval (expression_t &) |
std::string | op_query (expression_t &) |
std::string | query_type (const std::string &) |
std::string | query_dump (const std::string &) |
std::string | query_entries (const std::string &) |
std::string | query_readfile (const std::string &) |
std::string | query_savefile (const std::string &) |
std::string | query_savefile_compact (const std::string &) |
std::string | query_savemons (const std::string &) |
std::string | query_val (const std::string &) |
std::string | query_listids (const std::string &) |
void | set_id_string (const std::string &) |
bool | has_entry (const std::string &) |
Protected Member Functions inherited from MHAParser::base_t | |
void | activate_query (const std::string &, query_t) |
void | notify () |
Protected Member Functions inherited from MHAPlugin::config_t< runtime_cfg_t > | |
runtime_cfg_t * | poll_config () |
Receive the latest run time configuration. More... | |
runtime_cfg_t * | peek_config () const |
Receive the latest run time configuration without changing the configuration pointer. More... | |
void | push_config (runtime_cfg_t *ncfg) |
Push a new run time configuration into the configuration fifo. More... | |
void | cleanup_unused_cfg () |
To be called by the push_config() for housekeeping. More... | |
void | remove_all_cfg () |
To be called on Plugin destruction, will delete all runtime configuration list nodes and objects regardless of their in_use flag. More... | |
Protected Attributes inherited from MHAPlugin::plugin_t< UNIT > | |
mhaconfig_t | tftype |
Member for storage of plugin interface configuration. More... | |
MHA_AC::algo_comm_t & | ac |
AC handle of the chain. More... | |
Protected Attributes inherited from MHAParser::base_t | |
query_map_t | queries |
bool | data_is_initialized |
Protected Attributes inherited from MHAPlugin::config_t< runtime_cfg_t > | |
runtime_cfg_t * | cfg |
Pointer to the runtime configuration currently used by the signal processing thread. More... | |
Rmslevel plugin.
Measures sound for each block and publishes measured result in monitor variables and AC variables.
rmslevel::rmslevel_if_t::rmslevel_if_t | ( | MHA_AC::algo_comm_t & | iac, |
const std::string & | configured_name | ||
) |
Constructor of rmslevel plugin.
iac | Algorithm communication variable space, used to store extracted levels |
configured_name | Configured name of this plugins: either "rmslevel" or the name explicitly given after the colon. Used as prefix for all published AC variables. |
mha_spec_t * rmslevel::rmslevel_if_t::process | ( | mha_spec_t * | s | ) |
Extract level from current STFT spectrum.
s | input spectrum, not modified by this method. |
mha_wave_t * rmslevel::rmslevel_if_t::process | ( | mha_wave_t * | s | ) |
Extract level from current time signal block.
s | input audio block, not modified by this method. |
|
overridevirtual |
Prepare rmslevel plugin for signal processing: Resize and reinitialize monitor variables according to number of audio channels specified in parameter, publish applicable monitor variables as AC variables (depends on signal domain).
signal_dimensions | Audio signal metadata, not modified by this method. |
Implements MHAPlugin::plugin_t< UNIT >.
|
overridevirtual |
Release removes published AC variables from AC space.
Reimplemented from MHAPlugin::plugin_t< UNIT >.
|
private |
Called on write access to the configuration variable unit
.
|
private |
|
private |
|
private |
(Re-)insert a single AC variable.
Helper method used by insert_ac_variables_levels and insert_ac_variables_peaks_and_levels. The stride of the AC variable will be set to v.size().
|
private |
Remove AC variables from AC space.
Called from release().
|
private |
Configuration language event dispatcher.
|
private |
Sound power.
|
private |
Sound pressure level.
|
private |
Peak amplitude.
|
private |
dB value corresponding to peak amplitude.
|
private |
AC variable name for level
.
|
private |
AC variable name for level_db
.
|
private |
AC variable name for peak
.
|
private |
AC variable name for peak_db
.
|
private |
Configuration variable for selecting result dB scale.
|
private |
freq_offsets provides the conversion of dB(SPL) to dB(HL) for every frequency bin in the stft used by coloured_intensity.
Unused when not in spectral domain and unit=hl.