원하는 말을 하게 만들고 싶은데, 깔끔한 목소리와 정확한 대본을 얻을 수 있어요!
--> tts 모델을 학습시키면 됩니다. vits를 찾아보세요.
다국어를 지원하는 vits 포크: https://github.com/CjangCjengh/vits
원하는 노래를 부르게 하고 싶어요.
--> svc 모델을 학습시키고 유튜브에서 기준으로 삼을 음원을 다운받아 음원분리를 수행한 후, svc 모델을 사용해 얻어온 음원의 보컬을 변환하면 됩니다. 기준으로 삼을 음원을 잘 고르면 좋은 결과를 얻을 수 있어요. diff-svc를 찾아보세요.
diff-svc: https://github.com/prophesier/diff-svc
ddsp-svc: https://github.com/yxlllc/DDSP-SVC
RVC: https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI
[공통 사항]
tts 모델을 학습시키든 svc 모델을 학습시키든 데이터셋을 만들 수 있어야 해요. 데이터셋을 만들려면 음원 분리 후 음원을 적절한 길이로 잘라주어야 해요. 데이터셋을 만들려면 hdemucs와 pydub 라이브러리를 찾아보세요.
음원 분리 HDEMUCS_HIGH_MUSDB_PLUS: https://pytorch.org/audio/main/generated/torchaudio.pipelines.HDEMUCS_HIGH_MUSDB_PLUS.html
pydub: https://pypi.org/project/pydub/
[각 모델의 특성]
모델 | 대본 | 학습 시간 (RTX3090 기준) | 학습 난이도 | 비고 |
vits | 필요함 (정확해야 함) | 12시간 이상 | 보통 | |
diff-svc | 필요 없음 | 6시간 이상 | 쉬움 | |
ddsp-svc | 필요 없음 | 2시간 이상 | 쉬움 | |
RVC | 필요 없음 | 20분 이내 | 쉬움 |