mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-06-18 11:48:46 +02:00
55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
#ifndef STK_PHONEMES_H
|
|
#define STK_PHONEMES_H
|
|
|
|
#include "Stk.h"
|
|
|
|
namespace stk {
|
|
|
|
/***************************************************/
|
|
/*! \class Phonemes
|
|
\brief STK phonemes table.
|
|
|
|
This class does nothing other than declare a
|
|
set of 32 static phoneme formant parameters
|
|
and provide access to those values.
|
|
|
|
by Perry R. Cook and Gary P. Scavone, 1995-2012.
|
|
*/
|
|
/***************************************************/
|
|
|
|
class Phonemes : public Stk
|
|
{
|
|
public:
|
|
|
|
Phonemes( void );
|
|
|
|
~Phonemes( void );
|
|
|
|
//! Returns the phoneme name for the given index (0-31).
|
|
static const char *name( unsigned int index );
|
|
|
|
//! Returns the voiced component gain for the given phoneme index (0-31).
|
|
static StkFloat voiceGain( unsigned int index );
|
|
|
|
//! Returns the unvoiced component gain for the given phoneme index (0-31).
|
|
static StkFloat noiseGain( unsigned int index );
|
|
|
|
//! Returns the formant frequency for the given phoneme index (0-31) and partial (0-3).
|
|
static StkFloat formantFrequency( unsigned int index, unsigned int partial );
|
|
|
|
//! Returns the formant radius for the given phoneme index (0-31) and partial (0-3).
|
|
static StkFloat formantRadius( unsigned int index, unsigned int partial );
|
|
|
|
//! Returns the formant gain for the given phoneme index (0-31) and partial (0-3).
|
|
static StkFloat formantGain( unsigned int index, unsigned int partial );
|
|
|
|
private:
|
|
|
|
static const char phonemeNames[][4];
|
|
static const StkFloat phonemeGains[][2];
|
|
static const StkFloat phonemeParameters[][4][3];
|
|
};
|
|
|
|
} // stk namespace
|
|
|
|
#endif
|