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

Class (interface) for calculating input voice signal signal-to-noise ratio (SNR) More...

#include <voicesdk/media/signal.h>

Public Types

using Ptr = std::shared_ptr< SNRComputer >
 

Public Member Functions

virtual float compute (const uint8_t *bytes, size_t bytesNum, size_t sampleRate) const =0
 Computes SNR for PCM16 audio bytes. More...
 
virtual float compute (const int16_t *pcm16Samples, size_t samplesNum, size_t sampleRate) const =0
 Computes SNR for PCM16 audio samples. More...
 
virtual float compute (const float *floatSamples, size_t samplesNum, size_t sampleRate) const =0
 Computes SNR for float (in [-1; 1] range) audio samples. More...
 
virtual float compute (const std::string &audioFile) const =0
 Computes SNR for audio file. More...
 

Static Public Member Functions

static SNRComputer::Ptr create (const std::string &initPath)
 Factory method for creating SNRComputer instance. More...
 

Detailed Description

Class (interface) for calculating input voice signal signal-to-noise ratio (SNR)

Member Function Documentation

◆ compute() [1/4]

virtual float voicesdk::SNRComputer::compute ( const float *  floatSamples,
size_t  samplesNum,
size_t  sampleRate 
) const
pure virtual

Computes SNR for float (in [-1; 1] range) audio samples.

Parameters
floatSamplespointer to array with samples
samplesNumsize of array with samples
sampleRateaudio samples sampling rate
Returns
signal-to-noise ratio (SNR) in dB
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ compute() [2/4]

virtual float voicesdk::SNRComputer::compute ( const int16_t *  pcm16Samples,
size_t  samplesNum,
size_t  sampleRate 
) const
pure virtual

Computes SNR for PCM16 audio samples.

Parameters
pcm16Samplespointer to array with samples
samplesNumsize of array with samples
sampleRateaudio samples sampling rate
Returns
signal-to-noise ratio (SNR) in dB
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ compute() [3/4]

virtual float voicesdk::SNRComputer::compute ( const std::string &  audioFile) const
pure virtual

Computes SNR for audio file.

Parameters
audioFilepath to audio file
Returns
signal-to-noise ratio (SNR) in dB
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ compute() [4/4]

virtual float voicesdk::SNRComputer::compute ( const uint8_t *  bytes,
size_t  bytesNum,
size_t  sampleRate 
) const
pure virtual

Computes SNR for PCM16 audio bytes.

Parameters
bytespointer to array with samples
bytesNumsize of array with samples
sampleRateaudio samples sampling rate
Returns
signal-to-noise ratio (SNR) in dB
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred

◆ create()

static SNRComputer::Ptr voicesdk::SNRComputer::create ( const std::string &  initPath)
static

Factory method for creating SNRComputer instance.

Parameters
initPathpath to the init data folder
Returns
Smart pointer to SNRComputer instance
Exceptions
std::runtime_errorif runtime error occurred
voicesdk::LicenseExceptionif license error occurred