EmotiVoice: motor de conversión de texto a voz con controles multivoz y emocionales.
Últimos recursos sobre IAActualizado hace 5 meses Círculo de intercambio de inteligencia artificial 3K 00
Introducción general
EmotiVoice es un motor de texto a voz (TTS) con múltiples voces y control de señales emocionales desarrollado por NetEaseYoudao. Este motor TTS de código abierto soporta inglés y chino, tiene más de 2000 voces diferentes y dispone de capacidades de síntesis de emociones para crear voces con múltiples emociones como feliz, excitado, triste y enfadado. Proporciona una interfaz WEB fácil de usar y resultados de generación por lotes de la interfaz de script .
Alojado en la dirección de demostración de Replicate

Lista de funciones
Proporcionar interfaz WEB e interfaz de procesamiento por lotes de secuencias de comandos
Apoyo a la síntesis de emociones
Múltiples opciones de sonido
Síntesis en chino e inglés
Utilizar la ayuda
Consulte el repositorio de GitHub para obtener instrucciones de instalación y uso.
Ejecutar una imagen Docker para probar EmotiVoice
Consulte la página Wiki para descargar información adicional, como modelos preentrenados
Únete al grupo WeChat para intercambiar opiniones
En respuesta a la demanda de la comunidad, nos complace publicar elFunción de clonación de sonidoy ofrece dos tutoriales de ejemplo.
Notas.
- Esta función requiere al menos un Gráficos GPU Nvidia .
- sonido objetivoLos datos son fundamentales¡! En la siguiente sección se detallan los requisitos.
- Actualmente, esta función sólo está disponible en chino e inglés, lo que significa que puede entrenarse con datos chinos o ingleses paraConsigue un modelo de timbre que hable dos idiomas.
- Aunque EmotiVoice admite el control emocional, los datos de entrenamiento también tienen que ser emocionales si quieres que tu voz transmita emociones.
- Después del entrenamiento utilizando sólo sus datos, el EmotiVoice delEl sonido original se alterará. Esto significa que el nuevo modelo se adaptará completamente a tus datos. Si desea utilizar las más de 2000 voces originales de EmotiVoice, se recomienda utilizar el modelo original preentrenado.
Requisitos detallados para los datos de formación
- Los datos de audio deben ser de alta calidad y tienen que ser claros y sin distorsiones para la voz de una sola persona. La duración o el número de frases no es obligatorio por el momento, unas pocas frases están bien, pero se recomiendan más de 100 frases.
- El texto correspondiente a cada audio debe coincidir estrictamente con el contenido del discurso. Antes del entrenamiento, el texto bruto se convierte en fonemas mediante G2P. Hay que prestar atención a las pausas (sp*) y los resultados de la conversión polifónica, tienen un impacto significativo en la calidad de la formación.
- Si quieres que tu voz transmita emoción, es necesario que los datos de entrenamiento también lo sean. Además, el contenido de la **etiqueta 'prompt'** debe modificarse para cada audio. El contenido del aviso puede incluir cualquier forma de descripción textual de la emoción, la velocidad del habla y el estilo de habla.
- Entonces, se obtiene un archivo llamado
data directory
que contiene dos subdirectorios, el directoriotrain
responder cantandovalid
. Cada subdirectorio tiene undatalist.jsonl
y se formatea cada línea:{"key": "LJ002-0020", "wav_path": "data/LJspeech/wavs/LJ002-0020.wav", "speaker": "LJ", "text": ["<sos/eos>", "[IH0]", "[N]", "engsp1", "[EY0]", "[T]", "[IY1]", "[N]", "engsp1", "[TH]", "[ER1]", "[T]", "[IY1]", "[N]", ".", "<sos/eos>"], "original_text": "In 1813", "prompt": "common"}
.
Distribución de las etapas de formación.
En chino, consulte Receta DataBakerConsulte la versión inglesa:Receta LJSpeech. A continuación se ofrece un resumen:
- Prepare el entorno de formación: sólo es necesario configurarlo una vez.
# create conda enviroment conda create -n EmotiVoice python=3.8 -y conda activate EmotiVoice # then run: pip install EmotiVoice[train] # or git clone https://github.com/netease-youdao/EmotiVoice pip install -e .[train]
- consulta Requisitos detallados para los datos de formación Realizar la preparación de datos, ejemplos de referencia recomendadosReceta DataBaker responder cantando Receta LJSpeechmétodos y guiones en el
- A continuación, ejecute el siguiente comando para crear un directorio para la formación:
python prepare_for_training.py --data_dir <data directory> --exp_dir <experiment directory>
. Sustitución<data directory>
para la ruta real del directorio de datos preparado.<experiment directory>
es la ruta deseada al directorio experimental. - Puede modificarse en función de la configuración del servidor y de los datos
<experiment directory>/config/config.py
. Una vez realizadas las modificaciones, inicie el proceso de entrenamiento ejecutando el siguiente comandotorchrun --nproc_per_node=1 --master_port 8018 train_am_vocoder_joint.py --config_folder <experiment directory>/config --load_pretrained_model True
. (Este comando iniciará el proceso de entrenamiento utilizando la carpeta de configuración especificada y cargará cualquier modelo pre-entrenado especificado). Este método está disponible actualmente para Linux, ¡en Windows puede haber problemas! - Después de completar algunos de los pasos de entrenamiento, seleccione un punto de control y ejecute el siguiente comando para confirmar que los resultados son los esperados:
python inference_am_vocoder_exp.py --config_folder exp/DataBaker/config --checkpoint g_00010000 --test_file data/inference/text
. No olvide modificardata/inference/text
El contenido del campo altavoz del Si está satisfecho con el resultado, ¡no dude en utilizarlo! Le ofrecemos una versión modificada de la página de demostración.demo_page_databaker.py
Venga y experimente el efecto del tono tras la clonación con DataBaker. - Si los resultados no son satisfactorios, puedes seguir entrenando o comprobar tus datos y tu entorno. Por supuesto, ¡no dudes en comentarlo en la comunidad o enviar un problema!
Información de referencia en tiempo de ejecución.
Proporcionamos la siguiente información sobre el tiempo de ejecución y la configuración del hardware para su referencia:
- Versiones del paquete Pip: Python 3.8.18, torch 1.13.1, cuda 11.7
- Modelo de tarjeta GPU: NVIDIA GeForce RTX 3090, NVIDIA A40
- Tiempo de entrenamiento: se tarda entre 1 y 2 horas en entrenar 10.000 pasos.
Incluso puede entrenarse sin tarjeta gráfica GPU, utilizando sólo la CPU. ¡Espere las buenas noticias!
Dirección de descarga del paquete de instalación con un solo clic
windows thunderbolt cloud drive
La contraseña de descompresión del zip es jian27 o jian27.com
© declaración de copyright
Derechos de autor del artículo Círculo de intercambio de inteligencia artificial Todos, por favor no reproducir sin permiso.
Artículos relacionados
Sin comentarios...