Call Center SDK  1.11.3
Public Types | Public Member Functions | Static Public Member Functions | List of all members
voicesdk::attr::AttributesEstimator Class Referenceabstract

Class for estimating person attributes by their voice (age and gender) More...

#include <voicesdk/attributes/attributes.h>

Public Types

using Ptr = std::shared_ptr< AttributesEstimator >
 

Public Member Functions

virtual Attributes Estimate (const uint8_t *bytes, size_t bytes_num, size_t sample_rate)=0
 
virtual Attributes Estimate (const int16_t *pcm16_samples, size_t samples_num, size_t sample_rate)=0
 
virtual Attributes Estimate (const float *float_samples, size_t samples_num, size_t sample_rate)=0
 
virtual Attributes Estimate (const std::string &audio_file)=0
 

Static Public Member Functions

static AttributesEstimator::Ptr Create (const std::string &init_path)
 Creates AttributesEstimator instance. More...
 

Detailed Description

Class for estimating person attributes by their voice (age and gender)

Member Function Documentation

◆ Create()

static AttributesEstimator::Ptr voicesdk::attr::AttributesEstimator::Create ( const std::string &  init_path)
static

Creates AttributesEstimator instance.

Parameters
init_pathpath to initialization data directory
Returns
Smart pointer to created AttributesEstimator instance
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ Estimate() [1/4]

virtual Attributes voicesdk::attr::AttributesEstimator::Estimate ( const float *  float_samples,
size_t  samples_num,
size_t  sample_rate 
)
pure virtual

Estimates person attributes from the given float (in [-1; 1] range) audio samples

Parameters
float_samplesinput audio as normalized float samples array
samples_numnumber of samples
sample_rateinput audio sample rate
Returns
Attributes object containing estimated attributes
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ Estimate() [2/4]

virtual Attributes voicesdk::attr::AttributesEstimator::Estimate ( const int16_t *  pcm16_samples,
size_t  samples_num,
size_t  sample_rate 
)
pure virtual

Estimates person attributes from the given PCM16 audio samples

Parameters
pcm16_samplesinput audio as PCM16 samples array
samples_numnumber of samples
sample_rateinput audio sample rate
Returns
Attributes object containing estimated attributes
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ Estimate() [3/4]

virtual Attributes voicesdk::attr::AttributesEstimator::Estimate ( const std::string &  audio_file)
pure virtual

Estimates person attributes from the given audio file

Parameters
audio_filepath to audio file
Returns
Attributes object containing estimated attributes
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ Estimate() [4/4]

virtual Attributes voicesdk::attr::AttributesEstimator::Estimate ( const uint8_t *  bytes,
size_t  bytes_num,
size_t  sample_rate 
)
pure virtual

Estimates person attributes from the given byte representation of PCM16 audio samples

Parameters
bytesinput audio as little-endian PCM16 byte array
bytes_numnumber of bytes
sample_rateinput audio sample rate
Returns
Attributes object containing estimated attributes
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred