VoiceStudio is the open-source, fully-local ElevenLabs alternative — voice cloning, voice design, video dubbing, dictation, transcription & audiobook creation in 646 languages.
이 번역은 AI가 원문 README를 옮긴 것입니다. 원문이 항상 우선합니다.
이전 명칭: OmniVoice-Studio
로컬 음성 복제, 더빙, 받아쓰기, 장문 오디오.
TTS 엔진 16개 · ASR 엔진 11개 · 646개 언어 카탈로그 · macOS, Windows, Linux
로컬 우선(Local-first). 핵심 워크플로에는 계정, API 키, 구독, 사용량 측정이 필요 없습니다.
[!WARNING]
활성 베타. 안정적인 작업에는 최신 릴리스를 사용하고, 최신 수정 사항은
main브랜치를 사용하세요. 문제는 GitHub Issues로 보고해 주세요.
| VoiceStudio | |||
|---|---|---|---|
| 워크플로 | 음성 복제 및 설계, 비디오 더빙, 받아쓰기, 스토리, 오디오북, 배치 생성 | ||
| 언어 카탈로그 | 646개 TTS 언어; 실제 지원 범위와 품질은 선택한 엔진에 따라 다름 | ||
| 엔진 | TTS 16개 · ASR 11개 · Model Catalogue 또는 Ctrl/Cmd+E로 전환 | ||
| 플랫폼 | Apple Silicon 기반 macOS 13.3+ · Windows 10/11 x64 · glibc 2.39+ 기반 Linux x86_64 | ||
| 컴퓨팅 | CUDA · Apple Silicon MPS/MLX · Linux의 ROCm · CPU · 선택적 원격 워커 | ||
| 인터페이스 | 데스크톱 앱 · 로컬 REST/SSE/WebSocket API · OpenAI 호환 오디오 API · MCP 서버 | ||
| 저장 | 음성, 프로젝트, 설정, 출력물은 기본적으로 기기에 유지 | ||
| 라이선스 | AGPL-3.0; 선택 엔진은 각자의 모델 라이선스를 유지 |
| 플랫폼 | 패키지 | 가이드 | ||
|---|---|---|---|---|
| macOS 13.3+ | DMG, Apple Silicon | macOS에 설치 | ||
| Windows 10/11 | MSI, x64 | Windows에 설치 | ||
| Linux | AppImage, glibc 2.39+ 기반 x86_64 | Linux에 설치 | ||
| Docker | CUDA, ROCm 또는 CPU | Docker로 실행 |
최신 릴리스에서 패키지를 다운로드하세요. 첫 실행 시 관리형 Python 환경이 생성되고 기본 모델이 다운로드됩니다. 이후 실행에서는 둘 다 재사용됩니다.
[!NOTE]
macOS에서는 첫 실행 시 마우스 오른쪽 버튼 클릭 → 열기(Open) 승인이 한 번 필요합니다. Intel Mac은 로컬 Python 백엔드를 실행할 수 없으므로 원격 백엔드를 대신 사용하세요.
개발 사전 요구 사항을 설치한 후:
git clone https://github.com/debpalash/VoiceStudio.git
cd VoiceStudio
bun install
bun run desktop
브라우저 UI는 bun run dev를 사용하세요. 서비스, 테스트, 플랫폼 패키지에 대해서는 Contributing을 참조하세요.
uv run python backend/main.py --diagnose --deep를 실행하세요.| 영역 | 포함 기능 | ||
|---|---|---|---|
| Voice Cloning(음성 복제) | 짧은 참조 클립으로 제로샷 합성 | ||
| Voice Design(음성 설계) | 나이, 억양, 음높이, 스타일, 발화 방식 지시로 음성 생성 | ||
| Video Dubbing(비디오 더빙) | 전사, 번역, 화자 유지, 합성, 비디오 내보내기 | ||
| Stories and audiobooks(스토리 및 오디오북) | 다중 음성 대본 · EPUB/PDF 가져오기 · 챕터 렌더링 · .m4b 내보내기 |
||
| Dictation Widget(받아쓰기 위젯) | 시스템 전체 단축키, 실시간 전사, 선택적 로컬 LLM 정리 | ||
| Vocal Isolation(보컬 분리) | Demucs 음성/배경 분리 | ||
| Speaker Diarization(화자 분리) | Pyannote 및 WhisperX 화자 할당 | ||
| Batch Queue(배치 큐) | 대량 오디오·비디오 작업 큐 및 작업별 진행률 | ||
| Model Catalogue(모델 카탈로그) | TTS, ASR, LLM 모델 설치, 제거, 선택, 라우팅 | ||
| Remote Model Downloads(원격 모델 다운로드) | 등록된 원격 워커에 실시간 진행률로 모델 설치 | ||
| GPU Auto-Detect(GPU 자동 감지) | 엔진별 검사를 통한 CUDA, MPS, ROCm, CPU 라우팅 | ||
| AI Watermark(AI 워터마크) | AudioSeal 삽입 및 탐지 | ||
| MCP Server | MCP 클라이언트용 합성 및 전사 도구 | ||
| Diagnostics(진단) | 자가 점검, 오류 저널, 로그, 개인 정보 제거 지원 번들 | ||
| Local-first(로컬 우선) | 핵심 생성은 로컬에서 유지, 네트워크 기반 기능은 명시적 옵트인 | ||
| Extensible(확장 가능) | 레지스트리 기반 TTS, ASR, 플러그인 인터페이스 |
Model Catalogue: 엔진, 장치, 설치 상태 Gallery: 공유 음성을 로컬 프로필로 저장
VoiceStudio는 관리형 클라우드 컴퓨팅 대신 로컬 제어를 선택합니다. 실제 차이는 다음과 같습니다.
| VoiceStudio | 일반적인 호스팅 음성 서비스 | |||
|---|---|---|---|---|
| 적합한 용도 | 개인, 오프라인, 자체 호스팅 또는 대량 작업 | 로컬 모델 관리 없이 빠른 설정 | ||
| 데이터 경로 | 기본적으로 로컬, 원격 기능은 옵트인 | 오디오와 텍스트가 제공업체에서 처리됨 | ||
| 비용 모델 | 무료 소프트웨어, 하드웨어는 직접 준비 | 구독, 크레딧 또는 사용량 기반 API 요금 | ||
| 설정 | 앱과 모델 가중치 설치 | 계정 생성 후 웹 앱 또는 API 사용 | ||
| 성능 | 엔진과 하드웨어에 따라 달라짐 | 제공업체가 컴퓨팅과 확장을 관리 | ||
| 오프라인 사용 | 필요 모델 설치 후 가능 | 대개 네트워크 연결 필요 | ||
| 커스터마이징 | 소스, 엔진, 모델, API, 라우팅이 모두 공개 | 제공업체 옵션으로 제한 | ||
| 유지보수 | 업데이트, 디스크, 컴퓨팅을 직접 관리 | 제공업체가 인프라 관리 |
요구 사항은 엔진에 따라 다릅니다. 아래 값은 기본 로컬 워크플로 기준입니다.
| 최소 | 권장 | |||
|---|---|---|---|---|
| OS | Windows 10 x64 · macOS 13.3 Apple Silicon · glibc 2.39+ 기반 Linux x86_64 | 현재 지원되는 최신 OS 릴리스 | ||
| RAM | 8 GB | 16 GB 이상 | ||
| 디스크 | 여유 공간 10 GB | 20 GB 이상 SSD | ||
| GPU | 선택 사항, CPU 모드 지원 | NVIDIA CUDA 또는 Apple Silicon | ||
| VRAM | GPU 사용 시 4 GB | 8 GB 이상, 대형 선택 엔진은 더 필요 | ||
| 소스 빌드 Python | 3.11 이상 | 3.11–3.12 |
ROCm은 Linux 전용이며 옵트인입니다. Windows AMD/Ryzen AI는 CPU를 사용합니다. VRAM이 제한된 시스템은 필요 시 작업을 CPU로 오프로드합니다. 성능, 벤치마크, 엔진 디스크 사용량 문서를 참조하세요.
엔진 지원은 기능별로 다릅니다. 엔진을 선택하기 전에 복제 지원, 언어, 플랫폼, 메모리, 라이선스를 확인하세요. 전체 설정 가이드는 docs/engines를 참조하세요.
| 엔진 | 언어 | 복제 | 지시 | Linux | macOS ARM | Windows | 라이선스 | ||
|---|---|---|---|---|---|---|---|---|---|
| VoiceStudio (기본값, k2-fsa/OmniVoice 기반) | 600개 이상 | 지원 | 지원 | CUDA/CPU | MPS | CUDA/CPU | AGPL-3.0 앱 · Apache-2.0 모델 | ||
| CosyVoice 3 | 9개 + 18개 방언 | 지원 | 지원 | CUDA/CPU | CPU | CUDA/CPU | Apache-2.0 | ||
| GPT-SoVITS | 5개 | 지원 | — | CUDA/CPU | — | CUDA/CPU | MIT | ||
| VoxCPM2 | 30개 | 지원 | 지원 | CUDA/CPU | MPS | CUDA/CPU | Apache-2.0 | ||
| MOSS-TTS-Nano | 20개 | 지원 | — | CUDA/CPU | CPU | CUDA/CPU | Apache-2.0 | ||
| KittenTTS | 영어 | — | — | CPU | CPU | CPU | MIT | ||
| MLX-Audio | 모델에 따라 다름 | 다양 | 다양 | — | MLX | — | 다양 | ||
| Sherpa-ONNX | 20개 이상 | — | — | CUDA/CPU | CPU | CUDA/CPU | Apache-2.0 | ||
| IndexTTS 2.5 ⚡ | 중국어 · 영어 · 일본어 · 스페인어 · 아랍어 | 지원 | — | CUDA/CPU | CPU | CUDA/CPU | Bilibili 모델 라이선스¹ | ||
| OmniVoice GGUF ⚡ | 600개 이상 | 지원 | 지원 | CUDA/CPU | MPS/CPU | CUDA/CPU | AGPL-3.0 앱 · Apache-2.0 모델 | ||
| OmniVoice (subprocess) ⚡ | 600개 이상 | 지원 | 지원 | CUDA/CPU | MPS | CUDA/CPU | AGPL-3.0 앱 · Apache-2.0 모델 | ||
| PocketTTS ⚡ | 영어 · 프랑스어 · 독일어 · 포르투갈어 · 이탈리아어 · 스페인어 | 지원 | — | CPU | CPU | CPU | CC-BY-4.0, 게이트 적용² | ||
| Supertonic 3 ⚡ | 31개 | — | — | CPU | CPU | CPU | OpenRAIL-M | ||
| MOSS-TTS-v1.5 ⚡ | 31개 | 지원 | — | CUDA/CPU | CPU | CUDA/CPU | Apache-2.0 | ||
| dots.tts ⚡ | 24개 | 지원 | — | CUDA/CPU | CPU | — | Apache-2.0 | ||
| Confucius4-TTS ⚡ | 14개 | 지원 | — | CUDA/CPU | CPU | CUDA/CPU | Apache-2.0 |
⚡ 요청 시 설치 또는 등록됩니다.
¹ IndexTTS 2.5는 월간 활성 사용자 1억 명 이상 또는 연간 매출 10억 위안(RMB) 이상인 경우 별도의 서면 Bilibili 라이선스가 필요합니다. 모델 라이선스를 검토하세요.
² PocketTTS는 첫 사용 전에 게이트 액세스 및 CC-BY-4.0 약관을 표시합니다.
복제를 지원하지 않는 엔진은 더빙 또는 고정 음성 배치 작업에서 참조 화자를 보존할 수 없습니다. VoiceStudio는 엔진을 조용히 바꾸는 대신 해당 작업을 거부합니다. 대형 엔진은 별도의 메모리 및 플랫폼 제한이 있으므로 먼저 해당 엔진 가이드를 확인하세요.
| 엔진 | ID | 언어 | 적합한 용도 | ||
|---|---|---|---|---|---|
| WhisperX (기본값) | whisperx |
약 100개 | 더빙, 자막, 단어 수준 타임스탬프 | ||
| Faster-Whisper | faster-whisper |
약 100개 | 일반적인 크로스 플랫폼 전사 | ||
| Faster-Whisper (격리) | faster-whisper-isolated |
약 100개 | 크래시 격리 배치 전사 | ||
| MLX Whisper | mlx-whisper |
약 100개 | Apple Silicon | ||
| PyTorch Whisper | pytorch-whisper |
약 100개 | CUDA, MPS, CPU 폴백 | ||
| Parakeet TDT | nemo-parakeet |
영어 + EU 25개 | 빠른 CPU/CUDA 전사 | ||
| Parakeet TDT v3 (MLX) | parakeet-mlx |
EU 25개 | Apple Silicon 받아쓰기 및 단어 타임스탬프 | ||
| Moonshine | moonshine |
영어 | 저전력, 저지연 ONNX | ||
| FunASR | funasr |
50개 이상 | VAD 및 인라인 화자 분리 | ||
| sherpa-onnx (실시간 받아쓰기) | sherpa-onnx-asr |
모델에 따라 다름 | 스트리밍 CPU 받아쓰기 | ||
| OpenAI 호환 ⚠️ 원격 | openai-compat-asr |
서버에 따라 다름 | Qwen3-ASR 또는 기타 호환 엔드포인트, 오디오가 기기를 벗어남 |
WhisperX와 Faster-Whisper는 효율적인 float16을 사용할 수 없을 때 int8로 재시도합니다. 자동 선택이 여전히 실패하는 경우에만 ASRCOMPUTETYPE=int8 또는 float32를 고정하세요.
Tauri v2 desktop shell (Rust)
│ IPC
React + Vite UI
│ HTTP · SSE · WebSocket on localhost:3900
FastAPI backend
├── TTS / ASR engine registries
├── dubbing / audio / long-form pipelines
├── OpenAI-compatible API and MCP server
└── SQLite + Alembic → omnivoice_data/
| 계층 | 경로 | 역할 | ||
|---|---|---|---|---|
| 데스크톱 셸 | frontend/src-tauri/ |
창 수명 주기, 트레이, 단축키, 업데이터, 사이드카 부트스트랩 | ||
| 프론트엔드 | frontend/src/ |
React UI, Zustand 상태, API 및 이벤트 클라이언트, i18n | ||
| API | backend/api/ |
REST 라우트, 스키마, 인증 경계, 스트리밍 | ||
| 핵심 서비스 | backend/services/ |
생성, 더빙, 오디오 처리, 영속화 | ||
| 엔진 | backend/engines/ |
격리된 선택적 엔진 어댑터 | ||
| 워커 시스템 | backend/worker/ |
인증된 원격 컴퓨팅 및 작업 전송 | ||
| 데이터 | omnivoice_data/ |
프로젝트, 음성, 설정, 로그, SQLite 상태 | ||
| 배포 | scripts/, deploy/, .github/workflows/ |
개발, 패키징, 컨테이너, 릴리스, CI |
localhost:3900의 루프백 전용 백엔드와 통신합니다.OpenAI 호환 오디오 클라이언트를 로컬 백엔드로 지정하세요:
- base_url="https://api.openai.com/v1"
+ base_url="http://localhost:3900/v1"
| 엔드포인트 | 용도 | ||
|---|---|---|---|
POST /v1/audio/speech |
TTS를 mp3, opus, aac, flac, wav 또는 pcm로 출력, voice로 프로필, model로 엔진 선택 |
||
POST /v1/audio/transcriptions |
STT를 json, text, verbose_json, srt 또는 vtt로 출력 |
||
GET /v1/audio/voices |
로컬 음성 프로필 및 엔진 목록 조회 |
from openai import OpenAI
client = OpenAI(base_url="http://localhost:3900/v1", api_key="local")
with client.audio.speech.with_streaming_response.create(
model="tts-1",
voice="<profile-id>",
input="Made on my own hardware.",
response_format="wav",
) as response:
response.stream_to_file("speech.wav")
전체 API 참조는 Settings → OpenAPI Reference에 있습니다. LAN, Tailscale 또는 프록시 접근의 경우 백엔드를 노출하기 전에 API 인증 문서를 읽으세요.