gnuspeechsa는 텍스트를 음성으로 변환하는 명령 줄 조음 합성기입니다.
Gnuspeechsa는 David R. Hill, Leonard Manzara, Craig Schock 및 Contributors가 제공하는 Nextstep을 위해 개발 된 원래 GNUSPEECH 시스템의 TTS_SERVER의 C ++ 포트입니다. 기반은 2014-08-02에 다운로드 된 GNUSPEECH의 전복 저장소 인 Revision 672의 코드였습니다. 소스 코드는 디렉토리에서 얻었습니다.
nextstep/trunk/ObjectiveC/Monet.realtime
nextstep/trunk/src/SpeechObject/postMonet/server.monet
이 소프트웨어는 다중 플랫폼 C ++로 작성되었습니다.
gnuspeech는 조음 음성 합성기입니다. 이 프로젝트는 제가 아는 한 첫 번째 관절 텍스트-음성 (TTS) 소프트웨어를 구현했습니다. 그것은 약 30 년 전 (2023 년) 90 년대에 개발되었습니다. 신시사이저는 이전에 닫힌 소스 상용 소프트웨어였으며 다음 컴퓨터에서만 사용할 수있었습니다. 다음에 소멸 된 후 소프트웨어는 GNU 프로젝트에 기부되었습니다. 다음은 매우 느린 컴퓨터이기 때문에 간단한 보컬 트랙 모델을 사용합니다. 90 년대의 CPU는 2023 년의 기술보다 약 100 배 느린 수십 MHz (오타가 아님)의 빈도로 작동했습니다.이 모델의 상대적으로 낮은 복잡성은 현대적인 개인용 컴퓨터에서 낮은 대기 시간 합성을 가능하게합니다.
원래 TTS 시스템에는 보컬 트랙 모델 (튜브 모델)의 두 가지 구현이 있었는데, 하나는 56k DSP에서 실행되고 어셈블리로 작성된 다른 하나는 C로 작성된 CPU에서 실행 된 다른 하나는 더 나은 음성을 생성하고 균형 잡힌 마찰/다량을 생성합니다. 이 저장소는 C 튜브 모델을 사용합니다.
아래의 소리는 Gerard Nolst Trenité의 Chaos (짧은 버전)의 텍스트에서 합성되었습니다.
유지
영어 만 지원됩니다.
이 프로그램은 무료 소프트웨어입니다. Free Software Foundation, 라이센스의 버전 3 또는 이후 버전에서 게시 한 GNU 일반 공개 라이센스의 조건에 따라 재분배 및/또는 수정할 수 있습니다.
이 프로그램은 유용 할 것이지만 보증이 없다는 희망으로 배포됩니다. 상업성 또는 특정 목적에 대한 적합성에 대한 묵시적 보증조차 없습니다. 자세한 내용은 Copying.txt 파일을 참조하십시오.
이 소프트웨어에는 RapidXML의 코드가 포함되어 있습니다. 자세한 내용은 src/rapidxml/license.txt 파일을 참조하십시오.
gnuspeech_sa 의 사용 gnuspeech_sa 입력 텍스트를 음성으로 변환합니다.
./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 튜브 모델 만 실행합니다.
./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.xml조음 데이터베이스를 포함합니다.
intonation.txt억양을 제어합니다.
trm_control_model.txt 에서 random_intonation = 0 인 경우 각 톤 그룹의 첫 번째 줄만 사용됩니다. random_intonation = 1 인 경우 라인이 무작위로 선택됩니다.
MainDictionary.txt단어를 자세와 관련된 주요 사전을 포함합니다.
trm.txt튜브 모델의 매개 변수가 포함되어 있습니다.
흥미로운 매개 변수는 다음과 같습니다.
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.txt튜브 모델 컨트롤러의 매개 변수가 포함되어 있습니다.
흥미로운 매개 변수는 다음과 같습니다.
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).
메모:
현재 다음 매개 변수는 사용되지 않습니다.
voice_baby.txtvoice_female.txtvoice_large_child.txtvoice_male.txtvoice_small_child.txt음성 매개 변수를 포함합니다.
흥미로운 매개 변수는 다음과 같습니다.
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.txt모음 전환을 제어합니다.
vowelTransitions_2.txt vowelTransitions.txt 의 대체 버전.
사용되지 않습니다.