babylon.cpp
v0.0.2

Babylon.cpp é uma biblioteca C e C ++ para Grapheme to Phoneme Conversão e texto em síntese de fala. Para a fonemização, é usada uma porta de execução do ONNX do modelo deepphonemizer. Para síntese de fala, os modelos Vits são usados. Os modelos Piper são compatíveis após a execução de um script de conversão.
Para construir e executar a biblioteca, execute os seguintes comandos:
make
./bin/babylon_example Para reduzir o tempo de compilação por padrão, o Libary usa bibliotecas compartilhadas OnNxRuntime fornecidas pela Microsoft. Isso pode ser substituído definindo BABYLON_BUILD_SOURCE para ON .
#include "babylon.h"
int main () {
babylon_g2p_options_t options = {
. language = "en_us" ,
. use_dictionaries = 1 ,
. use_punctuation = 1 ,
};
babylon_g2p_init ( "path/to/deep_phonemizer.onnx" , options );
const char * text = "Hello World" ;
babylon_tts_init ( "path/to/vits.onnx" );
babylon_tts ( text , "path/to/output.wav" );
babylon_tts_free ();
babylon_g2p_free ();
return 0 ;
}# include " babylon.hpp "
int main () {
DeepPhonemizer::Session dp ( " path/to/deep_phonemizer.onnx " );
Vits::Session vits ( " path/to/vits.onnx " );
std::string text = " Hello World " ;
std::vector<std::string> phonemes = dp. g2p (text);
vits. tts (phonemes, " path/to/output.wav " );
return 0 ;
}