MegaTTS3: 중국어와 영어 음성 합성을 위한 경량 모델

최신 AI 리소스4 개월 전에 게시 됨 AI 공유 서클
2.4K 00

일반 소개

MegaTTS3는 고품질 중국어 및 영어 음성 생성에 중점을 두고 절강대학교와 협력하여 바이트댄스가 개발한 오픈 소스 음성 합성 도구입니다. 핵심 모델은 파라미터가 0.45억 개에 불과하고 가볍고 효율적이며 중국어와 영어의 혼합 음성 생성 및 음성 복제를 지원합니다. 이 프로젝트는 깃허브에서 호스팅되며 무료로 다운로드할 수 있는 코드와 사전 학습된 모델을 제공하며, 몇 초의 오디오 샘플로 대상 음성을 모방할 수 있고 악센트 강도 조절도 지원합니다. 학술 연구, 콘텐츠 제작, 음성 애플리케이션 개발에 적합하며 향후 발음 및 지속 시간 제어 기능이 추가될 예정입니다.

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

 

기능 목록

  • 자연스럽고 부드러운 출력으로 중국어, 영어 및 혼합 음성을 생성하세요.
  • 고품질 음성 복제는 특정 음색을 모방하는 소량의 오디오로 이루어집니다.
  • 악센트 강도 조절을 지원하고, 악센트 또는 표준 발음으로 음성을 생성할 수 있습니다.
  • 음향 잠재력을 사용하여 모델 학습 효율을 개선하세요.
  • 음성 명료도와 사실감을 높여주는 고품질 WaveVAE 보코더가 내장되어 있습니다.
  • 음성 분석을 지원하기 위해 얼라이너와 그래프 음소 간 하위 모듈이 제공됩니다.
  • 사용자 정의 개발을 위한 오픈 소스 코드 및 사전 학습된 모델.

 

도움말 사용

MegaTTS3는 특히 파이썬 및 딥러닝 환경에 대한 기본적인 프로그래밍 경험이 필요합니다. 자세한 설치 및 사용 지침은 아래에 나와 있습니다.

설치 프로세스

  1. 구축 환경
    MegaTTS3 권장 Python 3.9. 이 작업은 다음을 사용하여 수행할 수 있습니다. Conda 가상 환경을 만듭니다:

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

    활성화 후 모든 작업은 이 환경에서 수행됩니다.

  2. 코드 다운로드
    터미널에서 다음 명령을 실행하여 복제합니다. GitHub 창고:

    git clone https://github.com/bytedance/MegaTTS3.git
    cd MegaTTS3
    
  3. 종속성 설치
    프로젝트 제안 requirements.txt필요한 라이브러리를 설치하려면 다음 명령을 실행하세요:

    pip install -r requirements.txt
    

    설치 시간은 네트워크와 디바이스에 따라 다르며 일반적으로 몇 분 안에 완료됩니다.

  4. 모델 가져오기
    사전 훈련된 모델은 Google 드라이브 또는 허깅 페이스에서 다운로드할 수 있습니다(공식 링크 참조). README). 다운로드하여 다음 위치에 압축을 풉니다. ./checkpoints/ 폴더로 이동합니다. 예시:

    • 최고 사령관(군) model.pth 에 넣어 ./checkpoints/model.pth.
    • 사전 추출 latents 지정된 링크에서 동일한 디렉터리로 파일을 다운로드해야 합니다.
  5. 테스트 설치
    간단한 테스트 명령을 실행하여 환경을 확인합니다:

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

    오류가 보고되지 않으면 설치에 성공한 것입니다.

주요 기능

음성 합성

음성 생성은 MegaTTS3의 핵심 기능입니다. 텍스트와 참조 오디오를 입력해야 합니다:

  • 문서 준비
    존재 assets/ 폴더를 참조 오디오(예 Chinese_prompt.wav그리고 latents 파일(예 Chinese_prompt.npy). 없는 경우 latents를 사용하려면 미리 압축을 푼 공식 파일이 필요합니다.
  • 명령 실행
    입력:

    CUDA_VISIBLE_DEVICES=0 python tts/infer_cli.py --input_wav 'assets/Chinese_prompt.wav' --input_text "你好,这是一段测试语音" --output_dir ./gen
    
    • --input_wav 는 참조 오디오 경로입니다.
    • --input_text 는 합성할 텍스트입니다.
    • --output_dir 는 출력 폴더입니다.
  • 결과 보기
    생성된 음성은 ./gen/output.wav동영상은 바로 재생할 수 있습니다.

음성 복제

특정 소리를 모방하는 데 단 몇 초의 오디오 샘플만 있으면 됩니다:

  • 선명한 참조 오디오를 준비합니다(5~10초 권장).
  • 위의 합성 명령을 사용하여 다음을 지정합니다. --input_wav.
  • 출력 음성은 최대한 기준 톤에 가깝습니다.

악센트 제어

매개 변수를 통한 악센트 강도 조정 p_w 노래로 응답 t_w::

  • 악센트가 있는 영어 오디오를 입력합니다:
    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 근접성 1.0 원래의 억양은 때때로 유지되며, 표준 발음에 가까워지는 경향이 있습니다.
  • t_w 음색 유사성을 제어하며, 일반적으로 다음과 같습니다. p_w 귀하의(경칭) 0-3.
  • 표준화된 발음을 생성하세요:
    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
    

웹 UI 작업

웹 인터페이스를 통한 작업을 지원합니다:

  • 실행 중입니다:
    CUDA_VISIBLE_DEVICES=0 python tts/gradio_api.py
    
  • 브라우저를 열고 주소를 입력합니다(기본값). localhost:7860)를 클릭하고 오디오와 텍스트를 업로드하여 음성을 생성합니다.CPU 환경에서 약 30초.

서브모듈 사용

얼라이너

  • 기능음성과 텍스트를 정렬합니다.
  • 사용법: 실행 tts/frontend_function.py 음성 분할 또는 음소 인식을 위한 예제 코드는 다음과 같습니다.

그래프-음소

  • 기능: 텍스트를 음소로 변환합니다.
  • 사용법참조 tts/infer_cli.py다음은 발음 분석의 가장 중요한 기능 목록입니다.

WaveVAE

  • 기능압축 오디오는 latents 재구축했습니다.
  • 제약 조건인코더 파라미터는 공개되지 않으며 미리 추출된 인코더에서만 사용할 수 있습니다. latents.

주의

  • WaveVAE 인코더 파라미터는 보안상의 이유로 사용할 수 없으며 공식적인 latents 문서화.
  • 이 프로젝트는 2025년 3월 22일에 출시되었으며, 새로운 발음과 기간 조정이 예정되어 있는 등 아직 개발 중입니다.
  • GPU 빠른 추천.CPU 실행되지만 느립니다.

 

 

애플리케이션 시나리오

  1. 학술 연구
    연구원들은 MegaTTS3로 음성 합성 기술을 테스트하고, 다음과 같이 분석할 수 있습니다. latents 의 효과
  2. 교육 보조 자료
    교과서를 음성으로 변환하고 오디오북을 생성하여 학습 경험을 향상하세요.
  3. 콘텐츠 제작
    동영상이나 팟캐스트용 내레이션을 생성하고 수동 녹음 비용을 절약하세요.
  4. 음성 상호작용
    개발자는 이를 기기에 통합하여 영어와 중국어로 음성 대화가 가능하도록 할 수 있습니다.

 

QA

  1. 어떤 언어가 지원되나요?
    중국어, 영어 및 혼합 음성을 지원하며 향후 다른 언어로 확장할 수 있습니다.
  2. 필수 GPU 네? - 모르겠습니다.
    필요하지 않습니다.CPU 실행할 수 있지만 속도가 느리기 때문에 GPU.
  3. 설치 실패는 어떻게 처리하나요?
    업데이트 pip(pip install --upgrade pip), 네트워크 확인 또는 GitHub 이슈를 제출합니다.
  4. WaveVAE 인코더가 누락된 이유는 무엇인가요?
    보안상의 이유로 비공개, 공식 사전 추출 필요 latents.
© 저작권 정책

관련 문서

댓글 없음

댓글에 참여하려면 로그인해야 합니다!
지금 로그인
없음
댓글 없음...