ReadMe está disponible en los siguientes idiomas:
Silero TTS es una biblioteca de Python que proporciona una manera fácil de sintetizar el habla del texto utilizando varios modelos, idiomas y altavoces Silero TTS. Se puede utilizar como un script independiente o integrarse en sus propios proyectos de Python.
pip install silero-tts
Clon el repositorio:
git clone https://github.com/daswer123/silero-tts-enhanced
Instale las dependencias requeridas:
pip install -r requirements.txt
Puede usar Silero TTS como un script independiente para sintetizar el discurso a partir de archivos de texto o directorios que contienen archivos de texto.
python -m silero_tts [options]
--list-models : Lista de modelos disponibles--list-speakers : lista de altavoces disponibles para un modelo--language LANGUAGE : especifique el código de idioma (requerido)--model MODEL : especifique la ID del modelo (predeterminado: última versión para el idioma)--speaker SPEAKER : especifique el nombre del altavoz (predeterminado: primero altavoz disponible para el modelo)--sample-rate SAMPLE_RATE : especifique la velocidad de muestreo (predeterminada: 48000)--device DEVICE : especifique el dispositivo para usar (predeterminado: CPU)--text TEXT : especifique el texto para sintetizar--input-file INPUT_FILE : especifique el archivo de texto de entrada para sintetizar--input-dir INPUT_DIR : especifique el directorio de entrada con archivos de texto para sintetizar--output-file OUTPUT_FILE : especifique el archivo de audio de salida (defautado: output.wav)--output-dir OUTPUT_DIR : especifique el directorio de salida para los archivos de audio sintetizados (predeterminado: salida)--log-level INFO : especificar el nivel de registro, puede desactivar Usar Ninguno Valor (predeterminado: Información) Sintetizar el discurso de un texto:
python silero_tts.py --language ru --text "Привет, мир!"
Sintetizar el discurso de un archivo de texto:
python silero_tts.py --language en --input-file input.txt --output-file output.wav
Sintetizar el discurso a partir de múltiples archivos de texto en un directorio:
python silero_tts.py --language es --input-dir texts --output-dir audio
También puede integrar Silero TTS en sus propios proyectos de Python importando la clase SileroTTS y utilizando sus métodos.
from silero_tts . silero_tts import SileroTTS
# Get available models
models = SileroTTS . get_available_models ()
print ( "Available models:" , models )
# Get available languages
languages = SileroTTS . get_available_languages ()
print ( "Available languages:" , languages )
# Get the latest model for a specific language
latest_model = SileroTTS . get_latest_model ( 'ru' )
print ( "Latest model for Russian:" , latest_model )
# Get available sample rates for a specific model and language
sample_rates = SileroTTS . get_available_sample_rates_static ( 'ru' , latest_model )
print ( "Available sample rates for the latest Russian model:" , sample_rates )
# Initialize the TTS object
tts = SileroTTS ( model_id = 'v3_en' , language = 'en' , speaker = 'en_2' , sample_rate = 48000 , device = 'cpu' )
# Synthesize speech from text
text = "Hello world!"
tts . tts ( text , 'output.wav' )
# Synthesize speech from a text file
# tts.from_file('input.txt', 'output.wav')
# Get available speakers for the current model
speakers = tts . get_available_speakers ()
print ( "Available speakers for the current model:" , speakers )
# Change the language
tts . change_language ( 'en' )
print ( "Language changed to:" , tts . language )
print ( "New model ID:" , tts . model_id )
print ( "New available speakers:" , tts . get_available_speakers ())
# Change the model
tts . change_model ( 'v3_en' )
print ( "Model changed to:" , tts . model_id )
print ( "New available speakers:" , tts . get_available_speakers ())
# Change the speaker
tts . change_speaker ( 'en_0' )
print ( "Speaker changed to:" , tts . speaker )
# Change the sample rate
tts . change_sample_rate ( 24000 )
print ( "Sample rate changed to:" , tts . sample_rate )El Silero TTS CLI proporciona las siguientes características:
--language para sintetizar el habla en el idioma deseado.--model o permita que la CLI seleccione automáticamente el último modelo para el idioma especificado.--speaker o use el altavoz predeterminado para el modelo elegido.--sample-rate .--device .--text o especificar un archivo de texto de entrada utilizando el indicador --input-file .--input-dir .--output-file o el directorio de salida para el procesamiento por lotes usando el indicador --output-dir .--list-models .--list-speakers . Este proyecto tiene licencia bajo la licencia MIT.