MegaTTS3: un modelo ligero para sintetizar el habla china e inglesa

Introducción general

MegaTTS3 es una herramienta de síntesis de voz de código abierto desarrollada por ByteDance en colaboración con la Universidad de Zhejiang, centrada en la generación de voz china e inglesa de alta calidad. Su modelo central tiene solo 0,45 B de parámetros, es ligero y eficiente, y admite la generación de habla mixta china e inglesa y la clonación del habla. MegaTTS3 puede imitar la voz de destino con unos pocos segundos de muestras de audio y también permite ajustar la intensidad del acento. Es adecuado para la investigación académica, la creación de contenidos y el desarrollo de aplicaciones de voz, con funciones de control de la pronunciación y la duración que se añadirán en el futuro.

MegaTTS3:合成中英文语音的轻量模型

 

Lista de funciones

  • Genere habla china, inglesa y mixta con una salida natural y fluida.
  • La clonación de voz de alta calidad se consigue con una pequeña cantidad de audio que imita un timbre específico.
  • Admite el ajuste de la intensidad del acento, puede generar habla con acento o con pronunciación estándar.
  • Utilizar latentes acústicos para mejorar la eficacia del entrenamiento de modelos.
  • Vocoder WaveVAE de alta calidad integrado para mejorar la inteligibilidad y el realismo de la voz.
  • Los submódulos Aligner y Graphme-to-Phoneme sirven de apoyo al análisis del habla.
  • Código fuente abierto y modelos preentrenados para un desarrollo definido por el usuario.

 

Utilizar la ayuda

MegaTTS3 requiere cierta experiencia básica en programación, especialmente con Python y entornos de aprendizaje profundo. A continuación se detallan las instrucciones de instalación y uso.

Proceso de instalación

  1. Entorno construido
    MegaTTS3 Recomendado Python 3.9. Es posible utilizar el Conda Crear un entorno virtual:

    conda create -n megatts3-env python=3.9
    conda activate megatts3-env
    

    Tras la activación, todas las operaciones se realizan en este entorno.

  2. Descargar código
    Ejecute el siguiente comando en un terminal para clonar GitHub Almacén:

    git clone https://github.com/bytedance/MegaTTS3.git
    cd MegaTTS3
    
  3. Instalación de dependencias
    Ofertas de proyectos requirements.txtSi desea instalar las bibliotecas necesarias, ejecute el siguiente comando:

    pip install -r requirements.txt
    

    El tiempo de instalación varía según la red y el dispositivo y suele completarse en unos minutos.

  4. Obtener el modelo
    Los modelos preentrenados pueden descargarse de Google Drive o Hugging Face (véanse los enlaces oficiales). README). Descárguelo y descomprímalo en ./checkpoints/ Carpeta. Ejemplo:

    • comandante en jefe (militar) model.pth poner en ./checkpoints/model.pth.
    • pre-extraído latents Los archivos deben descargarse del enlace especificado en el mismo directorio.
  5. instalación de prueba
    Ejecute un sencillo comando de prueba para verificar el entorno:

    python tts/infer_cli.py --input_wav 'assets/Chinese_prompt.wav' --input_text "测试" --output_dir ./gen
    

    Si no aparece ningún error, la instalación se ha realizado correctamente.

Funciones principales

síntesis de voz

La generación del habla es la función principal de MegaTTS3. Requiere la introducción de texto y audio de referencia:

  • Preparar el documento
    existe assets/ en la carpeta de audio de referencia (p. ej. Chinese_prompt.wavlatents Archivos (por ejemplo Chinese_prompt.npy). Si no latentsse necesitan archivos oficiales preextraídos.
  • Ejecutar comando
    Entrada:

    CUDA_VISIBLE_DEVICES=0 python tts/infer_cli.py --input_wav 'assets/Chinese_prompt.wav' --input_text "你好,这是一段测试语音" --output_dir ./gen
    
    • --input_wav es la ruta de audio de referencia.
    • --input_text es el texto que hay que sintetizar.
    • --output_dir es la carpeta de salida.
  • Ver resultados
    El discurso generado se guarda en la carpeta ./gen/output.wavLa película se puede reproducir directamente.

clonación de voz

Bastan unos segundos de muestras de audio para imitar un sonido concreto:

  • Prepare un audio de referencia claro (se recomiendan 5-10 segundos).
  • Utilice el comando de síntesis anterior para especificar el --input_wav.
  • La voz de salida será lo más parecida posible al tono de referencia.

control de acentos

Ajuste de la intensidad del acento mediante parámetros p_w responder cantando t_w::

  • Introduzca el audio en inglés con acento:
    CUDA_VISIBLE_DEVICES=0 python tts/infer_cli.py --input_wav 'assets/English_prompt.wav' --input_text "这是一条有口音的音频" --output_dir ./gen --p_w 1.0 --t_w 3.0
    
  • p_w enfoque 1.0 A veces se mantiene el acento original, y el aumento tiende hacia la pronunciación estándar.
  • t_w Controles de similitud tímbrica, normalmente más de p_w su (honorífico) 0-3.
  • Generar una pronunciación normalizada:
    CUDA_VISIBLE_DEVICES=0 python tts/infer_cli.py --input_wav 'assets/English_prompt.wav' --input_text "这条音频发音标准一些" --output_dir ./gen --p_w 2.5 --t_w 2.5
    

Operaciones de interfaz web

Admite el funcionamiento a través de una interfaz web:

  • Corriendo:
    CUDA_VISIBLE_DEVICES=0 python tts/gradio_api.py
    
  • Abra su navegador e introduzca la dirección (por defecto) localhost:7860), carga audio y texto para generar voz.CPU Aproximadamente 30 segundos en el ambiente.

Uso del submódulo

Alineador

  • funcionalidad: Alinea voz y texto.
  • uso: Ejecutar tts/frontend_function.py El código de ejemplo para la segmentación del habla o el reconocimiento de fonemas en el programa

Del grafema al fonema

  • funcionalidadConvierte texto en fonemas.
  • uso: Referencia tts/infer_cli.pyA continuación se enumeran las características más importantes del Análisis de la Pronunciación.

WaveVAE

  • funcionalidad: El audio comprimido es latents y reconstruido.
  • restricciónLos parámetros del codificador no se divulgan y sólo pueden utilizarse con parámetros preextraídos. latents.

advertencia

  • Los parámetros del codificador WaveVAE no están disponibles por motivos de seguridad y sólo se pueden utilizar con los codificadores oficiales de latents Documentación.
  • El proyecto se lanzó el 22 de marzo de 2025 y sigue en desarrollo, con nuevas pronunciaciones y ajustes de duración previstos.
  • GPU Recomendaciones aceleradas.CPU Funciona pero es lento.

 

 

escenario de aplicación

  1. investigación académica
    Los investigadores pueden probar técnicas de síntesis de voz con MegaTTS3, analizando el latents El efecto de la
  2. Ayudas educativas
    Convierta los libros de texto a voz y genere audiolibros para mejorar la experiencia de aprendizaje.
  3. creación de contenidos
    Genere narraciones para vídeos o podcasts y ahorre en costes de grabación manual.
  4. interacción por voz
    Los desarrolladores pueden integrarlo en sus dispositivos para permitir el diálogo por voz en inglés y chino.

 

CONTROL DE CALIDAD

  1. ¿Qué idiomas se admiten?
    Admite chino, inglés y habla mixta, con posibilidad de ampliarse a otros idiomas en el futuro.
  2. debe GPU ¿Qué?
    No es necesario.CPU Se puede ejecutar, pero es lento y se recomienda utilizar la función GPU.
  3. ¿Cómo solucionar los fallos de instalación?
    actualización pip(pip install --upgrade pip), comprobando la red, o en GitHub Presentar número.
  4. ¿Por qué faltan codificadores WaveVAE?
    No revelado por razones de seguridad, se requiere extracción oficial previa latents.
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...