Gnuspeechsa es un sintetizador articulatorio de línea de comandos que convierte el texto en habla.
Gnuspeechsa es un puerto C ++ del TTS_Server en el sistema original de Gnuspeech desarrollado para NextStep, proporcionado por David R. Hill, Leonard Manzara, Craig Schock y colaboradores. La base fue el código en el repositorio de subversión de Gnuspeech, Revisión 672, descargada en 2014-08-02. El código fuente se obtuvo de los directorios:
nextstep/trunk/ObjectiveC/Monet.realtime
nextstep/trunk/src/SpeechObject/postMonet/server.monet
Este software está escrito en C ++ multiplataforma.
Gnuspeech es un sintetizador articulatorio del habla. El proyecto implementó el primer software articulatorio de texto a voz (TTS) (que yo sepa). Fue desarrollado en los años 90, hace unos 30 años (en 2023). El sintetizador era previamente un software comercial de código cerrado, disponible solo para las próximas computadoras. Después de la desaparición de Next, el software fue donado al proyecto GNU. Utiliza un modelo de tracto vocal simple, porque la siguiente era una computadora muy lenta. Las CPU de los 90 funcionaban a una frecuencia de decenas de MHz (no un error tipográfico), alrededor de 100 veces más lento que la tecnología en 2023. La baja complejidad relativa del modelo permite la síntesis de baja latencia en las computadoras personales modernas.
El sistema TTS original tenía dos implementaciones del modelo de tracto vocal (modelo de tubo), una que se ejecutó en un DSP de 56k, escrita en el ensamblaje y otra que se ejecutó en la CPU, escrita en C. El modelo de tubo DSP genera un mejor habla, con fricativas/plosives más equilibrados. Este repositorio utiliza el modelo de tubo C.
Los sonidos a continuación fueron sintetizados del texto del caos (versión corta) por Gerard Nolst Trenité.
mantenimiento
Solo el inglés es compatible.
Este programa es un software gratuito: puede redistribuirlo y/o modificarlo bajo los términos de la Licencia Pública General de GNU publicada por Free Software Foundation, ya sea la versión 3 de la licencia o (a su opción) cualquier versión posterior.
Este programa se distribuye con la esperanza de que sea útil, pero sin ninguna garantía; Sin siquiera la garantía implícita de comerciabilidad o estado físico para un propósito particular. Consulte el archivo Coping.txt para obtener más detalles.
Este software incluye código de Rapidxml. Consulte el archivo src/rapidxml/licencia.txt para más detalles.
gnuspeech_sa gnuspeech_sa convierte el texto de entrada en discurso.
./gnuspeech_sa [-v] -c config_dir -p trm_param_file.txt -o output_file.wav
"Hello world."
Synthesizes text from the command line.
-v : verbose
config_dir is the directory that stores the configuration data,
e.g. data/en.
trm_param_file.txt will be generated, containing the tube model
parameters.
output_file.wav will be generated, containing the synthesized speech.
./gnuspeech_sa [-v] -c config_dir -i input_text.txt -p trm_param_file.txt
-o output_file.wav
Synthesizes text from a file.
-v : verbose
config_dir is the directory that stores the configuration data,
e.g. data/en.
input_text.txt contains the input text.
trm_param_file.txt will be generated, containing the tube model
parameters.
output_file.wav will be generated, containing the synthesized speech.
gnuspeech_sa_trm gnuspeech_sa_trm ejecuta solo el modelo de tubo.
./gnuspeech_sa_trm [-v] trm_param_file.txt output_file.wav
-v : verbose
trm_param_file.txt is the file generated by gnuspeech_sa, containing the
tube model parameters.
output_file.wav will be generated, containing the synthesized speech.
monet.xmlContiene la base de datos articulatoria.
intonation.txtControla la entonación.
Si random_intonation = 0 en trm_control_model.txt , solo se utilizará la primera línea en cada grupo de tono. Si random_intonation = 1 , la línea se seleccionará aleatoriamente.
MainDictionary.txtContiene el diccionario principal, que relaciona las palabras con las posturas.
trm.txtContiene los parámetros para el modelo de tubo.
Los parámetros interesantes son:
vocal_tract_length_offset
This value is added to the vocal tract length.
loss_factor
Defines the acoustic loss inside the vocal tract.
trm_control_model.txtContiene los parámetros para el controlador del modelo de tubo.
Los parámetros interesantes son:
voice_name
Defines the voice used in the synthesis.
It selects which of the voice_*.txt files will be
loaded.
tempo
Values greater than 1 will speed up the speech.
pitch_offset
Modifies the voice pitch.
drift_deviation
drift_lowpass_cutoff
Control the random perturbations in the intonation
(requires intonation_drift = 1).
dictionary_1_file
dictionary_2_file
dictionary_3_file
Indicate the dictionaries (the dictionaries will be
searched in the order 1, 2, 3).
Nota:
Los siguientes parámetros no se usan en este momento:
voice_baby.txtvoice_female.txtvoice_large_child.txtvoice_male.txtvoice_small_child.txtContienen los parámetros de voz.
Los parámetros interesantes son:
vocal_tract_length
glottal_pulse_tp
Rise time, in % of the period.
glottal_pulse_tn_min
Fall time, in % of the period - for the highest pulse
amplitude.
glottal_pulse_tn_max
Fall time, in % of the period - for the lowest pulse
amplitude.
These parameters modify the glottal pulse shape.
reference_glottal_pitch
Modify the voice pitch.
breathiness
vowelTransitions.txtControla las transiciones vocales.
vowelTransitions_2.txt Versión alternativa de vowelTransitions.txt .
No se está utilizando.