Speech module

VoiceActivityDetector

VoiceActivityDetector

#include </home/runner/work/icey/icey/src/speech/include/icy/speech/voiceactivitydetector.h>

Public Attributes

ReturnNameDescription
Signal< void(const SpeechEvent &)>Event

Event

Signal< void(const SpeechEvent &)> Event

Public Methods

ReturnNameDescription
VoiceActivityDetector explicit
voidsetConfig
VoiceActivityDetectorConfigconfig const
VoiceActivityDetectorStatsstats const
voidreset
voidprocess

VoiceActivityDetector

explicit

explicit VoiceActivityDetector(VoiceActivityDetectorConfig config)

setConfig

void setConfig(VoiceActivityDetectorConfig config)

config

const

VoiceActivityDetectorConfig config() const

stats

const

VoiceActivityDetectorStats stats() const

reset

void reset()

process

void process(const av::PlanarAudioPacket & packet)

Private Attributes

ReturnNameDescription
VoiceActivityDetectorConfig_config
uint64_t_sequence
uint64_t_seen
uint64_t_emitted
int64_t_lastUpdateUsec
int64_t_lastBelowThresholdUsec
bool_active
float_lastLevel
float_lastPeak

_config

VoiceActivityDetectorConfig _config

_sequence

uint64_t _sequence = 0

_seen

uint64_t _seen = 0

_emitted

uint64_t _emitted = 0

_lastUpdateUsec

int64_t _lastUpdateUsec = 0

_lastBelowThresholdUsec

int64_t _lastBelowThresholdUsec = 0

_active

bool _active = false

_lastLevel

float _lastLevel = 0.0f

_lastPeak

float _lastPeak = 0.0f

Private Methods

ReturnNameDescription
Levelsmeasure const
voidemitEvent

measure

const

Levels measure(const av::PlanarAudioPacket & packet) const

emitEvent

void emitEvent(const char * type, const av::PlanarAudioPacket & packet, const Levels & levels, bool active)

Private Static Methods

ReturnNameDescription
VoiceActivityDetectorConfigsanitize static

sanitize

static

static VoiceActivityDetectorConfig sanitize(VoiceActivityDetectorConfig config)