LosCaquitos commited on
Commit
cff39c7
·
1 Parent(s): 831e313

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +813 -25
README.md CHANGED
@@ -9,39 +9,827 @@ app_file: app.py
9
  pinned: false
10
  license: mit
11
  ---
 
12
 
13
- # 🎙️ RVC Voice Conversion
 
 
14
 
15
- A **clean, minimal** HuggingFace Space for **Retrieval-Based Voice Conversion**.
16
- Record or upload audio pick a model → convert in seconds.
 
 
 
17
 
18
- ## Features
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
 
20
- | | |
21
- |---|---|
22
- | 🎙️ **Microphone** | Record directly in the browser |
23
- | 📁 **File upload** | WAV · MP3 · FLAC · OGG · M4A and more |
24
- | 📦 **Custom models** | Upload any RVC `.zip` (`.pth` + optional `.index`) |
25
- | ✅ **Built-in model** | *zetaTest* auto-downloaded on first start |
26
- | ⚡ **GPU / CPU auto** | Automatically uses CUDA if available |
27
- | 🎚️ **Advanced controls** | Pitch · F0 method · Index rate · Noise reduction · Autotune · Split audio |
28
 
29
- ## Usage
 
30
 
31
- 1. **Convert tab** record or upload audio
32
- 2. Choose a model (zetaTest is pre-loaded)
33
- 3. Set pitch if needed (e.g. `+12` to go up an octave)
34
- 4. Click **🚀 Convert Voice**
 
35
 
36
- ## Upload Your Own Model
 
37
 
38
- Go to the **Models tab** and upload a `.zip` containing:
39
- - `model.pth` RVC model weights (required)
40
- - `model.index` — FAISS index for better timbre matching (optional)
41
 
42
- Compatible with models from [weights.gg](https://weights.gg) and [HuggingFace](https://huggingface.co/models?search=rvc).
 
43
 
44
- ## Credits
 
45
 
46
- - Engine: [Ultimate RVC](https://github.com/JackismyShephard/ultimate-rvc) by JackismyShephard
47
- - Default model: [zetaTest](https://huggingface.co/megaaziib/my-rvc-models-collection) by megaaziib
 
9
  pinned: false
10
  license: mit
11
  ---
12
+ # 🎙️ RVC Voice Conversion - Ultimate Real
13
 
14
+ [![Hugging Face Spaces](https://img.shields.io/badge/Hugging%20Face-Spaces-yellow)](https://huggingface.co/spaces)
15
+ [![Docker](https://img.shields.io/badge/Docker-Ready-blue)](https://docker.com)
16
+ [![Gradio](https://img.shields.io/badge/Gradio-4.0+-orange)](https://gradio.app)
17
 
18
+ **Conversão de voz REAL com RVC (Retrieval-Based Voice Conversion)**
19
+ - Upload de vídeo com preview 🎬
20
+ - 5 formatos de saída em fundo preto 🎤
21
+ - Processamento DEMORADO (minutos) - RVC real!
22
+ - Suporte a modelos customizados via ZIP 📦
23
 
24
+ ---
25
+
26
+ ## 📋 Índice
27
+
28
+ - [Pré-requisitos](#pré-requisitos)
29
+ - [Instalação Local](#instalação-local)
30
+ - [Docker](#docker)
31
+ - [Estrutura do Projeto](#estrutura-do-projeto)
32
+ - [Comandos Úteis](#comandos-úteis)
33
+ - [Solução de Problemas](#solução-de-problemas)
34
+
35
+ ---
36
+
37
+ ## 🚀 Pré-requisitos
38
+
39
+ ### Local
40
+ - Python 3.10+
41
+ - FFmpeg (para processamento de vídeo)
42
+ - 4GB+ RAM recomendado
43
+
44
+ ### Docker
45
+ - Docker Engine 20.10+
46
+ - Docker Compose 2.0+
47
+
48
+ ---
49
+
50
+ ## 📦 Instalação Local
51
+
52
+ ### 1. Clone o repositório
53
+ ```bash
54
+ git clone https://github.com/yourusername/rvc-voice-conversion.git
55
+ cd rvc-voice-conversion
56
+
57
+ python -m venv venv
58
+ source venv/bin/activate # Linux/Mac
59
+ # ou
60
+ venv\Scripts\activate # Windows
61
+
62
+ pip install -r requirements.txt
63
+
64
+ sudo apt-get update
65
+ sudo apt-get install ffmpeg
66
+
67
+ brew install ffmpeg
68
+
69
+ Windows: Baixe do ffmpeg.org
70
+
71
+ bash
72
+ python app.py
73
+ Acesse: http://localhost:7860
74
+
75
+ docker build -t rvc-voice-conversion .
76
+
77
+ docker run -d \
78
+ --name rvc-app \
79
+ -p 7860:7860 \
80
+ -v $(pwd)/jobs:/app/jobs \
81
+ -v $(pwd)/models:/app/models \
82
+ -v $(pwd)/uploads:/app/uploads \
83
+ -v $(pwd)/temp:/app/temp \
84
+ -v $(pwd)/video_previews:/app/video_previews \
85
+ rvc-voice-conversion
86
+
87
+ # Iniciar
88
+ docker-compose up -d
89
+
90
+ # Ver logs
91
+ docker-compose logs -f
92
+
93
+ # Parar
94
+ docker-compose down
95
+
96
+ # Parar e remover volumes
97
+ docker-compose down -v
98
+
99
+ # Ver logs do container
100
+ docker logs -f rvc-app
101
+
102
+ # Parar o container
103
+ docker stop rvc-app
104
+
105
+ # Remover o container
106
+ docker rm rvc-app
107
+
108
+ # Acessar shell dentro do container
109
+ docker exec -it rvc-app /bin/bash
110
+
111
+ # Limpar containers e imagens não utilizados
112
+ docker container prune
113
+ docker image prune
114
+ docker volume prune
115
+ docker system prune -a
116
+
117
+ rvc-voice-conversion/
118
+ ├── .gitignore # Arquivos ignorados pelo Git
119
+ ├── .dockerignore # Arquivos ignorados pelo Docker
120
+ ├── Dockerfile # Configuração da imagem Docker
121
+ ├── docker-compose.yml # Orquestração Docker
122
+ ├── docker-entrypoint.sh # Script de inicialização
123
+ ├── requirements.txt # Dependências Python
124
+ ├── README.md # Este arquivo
125
+ ├── app.py # Aplicação principal
126
+ ├── lib/ # Biblioteca interna
127
+ │ ├── __init__.py
128
+ │ ├── config.py # Configurações
129
+ │ ├── jobs.py # Gerenciamento de jobs
130
+ │ ├── models.py # Gerenciamento de modelos
131
+ │ └── ui.py # Helpers da interface
132
+ ├── jobs/ # Jobs de conversão (persistente)
133
+ ├── models/ # Modelos RVC customizados
134
+ ├── uploads/ # Uploads temporários
135
+ ├── temp/ # Arquivos temporários
136
+ └── video_previews/ # Thumbnails de vídeo
137
+
138
+ # Executar em modo debug
139
+ gradio app.py
140
+
141
+ # Verificar código com linter
142
+ ruff check .
143
+
144
+ # Formatar código
145
+ black .
146
+
147
+ # Listar modelos disponíveis
148
+ ls -la models/
149
+
150
+ # Remover modelo
151
+ rm -rf models/nome_do_modelo/
152
+
153
+ # Backup de modelos
154
+ tar -czf models_backup.tar.gz models/
155
+
156
+ # Limpar jobs antigos (mais de 7 dias)
157
+ find jobs/ -type d -mtime +7 -exec rm -rf {} \;
158
+
159
+ # Limpar arquivos temporários
160
+ rm -rf temp/* uploads/*
161
+
162
+ # Limpar logs
163
+ rm -f *.log
164
+
165
+ # Ubuntu/Debian
166
+ sudo apt-get install ffmpeg
167
+
168
+ # MacOS
169
+ brew install ffmpeg
170
+
171
+ # Windows: Adicione ffmpeg ao PATH
172
+
173
+ # Mudar a porta
174
+ PORT=7861 python app.py
175
+
176
+ # Ou matar o processo na porta 7860
177
+ lsof -ti:7860 | xargs kill -9
178
+
179
+ # Corrigir permissões dos volumes
180
+ sudo chown -R 1000:1000 jobs/ models/ uploads/
181
+
182
+ # Ou executar com sudo
183
+ sudo docker run ...
184
+
185
+ # Limitar memória no Docker
186
+ docker run -m 4g ...
187
+
188
+ # Ou no docker-compose.yml
189
+ services:
190
+ rvc-voice-conversion:
191
+ deploy:
192
+ resources:
193
+ limits:
194
+ memory: 4G
195
+
196
+ # Local
197
+ python app.py --debug
198
+
199
+ # Docker
200
+ docker logs -f rvc-app --tail 100
201
+
202
+ # Adicionar como submodule
203
+ git submodule add https://huggingface.co/spaces/seu-usuario/rvc-space space
204
+
205
+ # Copiar arquivos
206
+ cp -r * space/
207
+ cd space
208
+
209
+ # Commit e push
210
+ git add .
211
+ git commit -m "Deploy RVC Voice Conversion"
212
+ git push
213
+
214
+ # Build e push para Docker Hub
215
+ docker build -t seu-usuario/rvc-voice:latest .
216
+ docker push seu-usuario/rvc-voice:latest
217
+
218
+ # No Hugging Face, use Dockerfile:
219
+ FROM seu-usuario/rvc-voice:latest
220
+
221
+ Você deve criar um arquivo chamado README.md na raiz do projeto com todas essas instruções. Aqui está o README completo:
222
+
223
+ README.md
224
+ markdown
225
+ # 🎙️ RVC Voice Conversion - Ultimate Real
226
+
227
+ [![Hugging Face Spaces](https://img.shields.io/badge/Hugging%20Face-Spaces-yellow)](https://huggingface.co/spaces)
228
+ [![Docker](https://img.shields.io/badge/Docker-Ready-blue)](https://docker.com)
229
+ [![Gradio](https://img.shields.io/badge/Gradio-4.0+-orange)](https://gradio.app)
230
+
231
+ **Conversão de voz REAL com RVC (Retrieval-Based Voice Conversion)**
232
+ - Upload de vídeo com preview 🎬
233
+ - 5 formatos de saída em fundo preto 🎤
234
+ - Processamento DEMORADO (minutos) - RVC real!
235
+ - Suporte a modelos customizados via ZIP 📦
236
+
237
+ ---
238
+
239
+ ## 📋 Índice
240
+
241
+ - [Pré-requisitos](#pré-requisitos)
242
+ - [Instalação Local](#instalação-local)
243
+ - [Docker](#docker)
244
+ - [Estrutura do Projeto](#estrutura-do-projeto)
245
+ - [Comandos Úteis](#comandos-úteis)
246
+ - [Solução de Problemas](#solução-de-problemas)
247
+
248
+ ---
249
+
250
+ ## 🚀 Pré-requisitos
251
+
252
+ ### Local
253
+ - Python 3.10+
254
+ - FFmpeg (para processamento de vídeo)
255
+ - 4GB+ RAM recomendado
256
+
257
+ ### Docker
258
+ - Docker Engine 20.10+
259
+ - Docker Compose 2.0+
260
+
261
+ ---
262
+
263
+ ## 📦 Instalação Local
264
+
265
+ ### 1. Clone o repositório
266
+ ```bash
267
+ git clone https://github.com/yourusername/rvc-voice-conversion.git
268
+ cd rvc-voice-conversion
269
+ 2. Criar ambiente virtual
270
+ bash
271
+ python -m venv venv
272
+ source venv/bin/activate # Linux/Mac
273
+ # ou
274
+ venv\Scripts\activate # Windows
275
+ 3. Instalar dependências
276
+ bash
277
+ pip install -r requirements.txt
278
+ 4. Instalar FFmpeg
279
+ Ubuntu/Debian:
280
+
281
+ bash
282
+ sudo apt-get update
283
+ sudo apt-get install ffmpeg
284
+ MacOS:
285
+
286
+ bash
287
+ brew install ffmpeg
288
+ Windows: Baixe do ffmpeg.org
289
+
290
+ 5. Executar
291
+ bash
292
+ python app.py
293
+ Acesse: http://localhost:7860
294
+
295
+ 🐳 Docker
296
+ Build da imagem
297
+ bash
298
+ docker build -t rvc-voice-conversion .
299
+ Executar com Docker Run
300
+ bash
301
+ docker run -d \
302
+ --name rvc-app \
303
+ -p 7860:7860 \
304
+ -v $(pwd)/jobs:/app/jobs \
305
+ -v $(pwd)/models:/app/models \
306
+ -v $(pwd)/uploads:/app/uploads \
307
+ -v $(pwd)/temp:/app/temp \
308
+ -v $(pwd)/video_previews:/app/video_previews \
309
+ rvc-voice-conversion
310
+ Executar com Docker Compose
311
+ bash
312
+ # Iniciar
313
+ docker-compose up -d
314
+
315
+ # Ver logs
316
+ docker-compose logs -f
317
+
318
+ # Parar
319
+ docker-compose down
320
+
321
+ # Parar e remover volumes
322
+ docker-compose down -v
323
+ Comandos Docker úteis
324
+ bash
325
+ # Ver logs do container
326
+ docker logs -f rvc-app
327
+
328
+ # Parar o container
329
+ docker stop rvc-app
330
+
331
+ # Remover o container
332
+ docker rm rvc-app
333
+
334
+ # Acessar shell dentro do container
335
+ docker exec -it rvc-app /bin/bash
336
+
337
+ # Limpar containers e imagens não utilizados
338
+ docker container prune
339
+ docker image prune
340
+ docker volume prune
341
+ docker system prune -a
342
+ 📁 Estrutura do Projeto
343
+ text
344
+ rvc-voice-conversion/
345
+ ├── .gitignore # Arquivos ignorados pelo Git
346
+ ├── .dockerignore # Arquivos ignorados pelo Docker
347
+ ├── Dockerfile # Configuração da imagem Docker
348
+ ├── docker-compose.yml # Orquestração Docker
349
+ ├── docker-entrypoint.sh # Script de inicialização
350
+ ├── requirements.txt # Dependências Python
351
+ ├── README.md # Este arquivo
352
+ ├── app.py # Aplicação principal
353
+ ├── lib/ # Biblioteca interna
354
+ │ ├── __init__.py
355
+ │ ├── config.py # Configurações
356
+ │ ├── jobs.py # Gerenciamento de jobs
357
+ │ ├── models.py # Gerenciamento de modelos
358
+ │ └── ui.py # Helpers da interface
359
+ ├── jobs/ # Jobs de conversão (persistente)
360
+ ├── models/ # Modelos RVC customizados
361
+ ├── uploads/ # Uploads temporários
362
+ ├── temp/ # Arquivos temporários
363
+ └── video_previews/ # Thumbnails de vídeo
364
+ 🛠️ Comandos Úteis
365
+ Desenvolvimento
366
+ bash
367
+ # Executar em modo debug
368
+ gradio app.py
369
+
370
+ # Verificar código com linter
371
+ ruff check .
372
+
373
+ # Formatar código
374
+ black .
375
+ Gerenciamento de Modelos
376
+ bash
377
+ # Listar modelos disponíveis
378
+ ls -la models/
379
+
380
+ # Remover modelo
381
+ rm -rf models/nome_do_modelo/
382
+
383
+ # Backup de modelos
384
+ tar -czf models_backup.tar.gz models/
385
+ Limpeza
386
+ bash
387
+ # Limpar jobs antigos (mais de 7 dias)
388
+ find jobs/ -type d -mtime +7 -exec rm -rf {} \;
389
+
390
+ # Limpar arquivos temporários
391
+ rm -rf temp/* uploads/*
392
+
393
+ # Limpar logs
394
+ rm -f *.log
395
+ 🔧 Solução de Problemas
396
+ Erro: "FFmpeg not found"
397
+ bash
398
+ # Ubuntu/Debian
399
+ sudo apt-get install ffmpeg
400
+
401
+ # MacOS
402
+ brew install ffmpeg
403
+
404
+ # Windows: Adicione ffmpeg ao PATH
405
+ Erro: "Port 7860 already in use"
406
+ bash
407
+ # Mudar a porta
408
+ PORT=7861 python app.py
409
+
410
+ # Ou matar o processo na porta 7860
411
+ lsof -ti:7860 | xargs kill -9
412
+ Erro: "Permission denied" no Docker
413
+ bash
414
+ # Corrigir permissões dos volumes
415
+ sudo chown -R 1000:1000 jobs/ models/ uploads/
416
+
417
+ # Ou executar com sudo
418
+ sudo docker run ...
419
+ Erro de memória
420
+ bash
421
+ # Limitar memória no Docker
422
+ docker run -m 4g ...
423
+
424
+ # Ou no docker-compose.yml
425
+ services:
426
+ rvc-voice-conversion:
427
+ deploy:
428
+ resources:
429
+ limits:
430
+ memory: 4G
431
+ Verificar logs detalhados
432
+ bash
433
+ # Local
434
+ python app.py --debug
435
+
436
+ # Docker
437
+ docker logs -f rvc-app --tail 100
438
+ 🌐 Deploy no Hugging Face Spaces
439
+ Opção 1: Git + Docker
440
+ bash
441
+ # Adicionar como submodule
442
+ git submodule add https://huggingface.co/spaces/seu-usuario/rvc-space space
443
+
444
+ # Copiar arquivos
445
+ cp -r * space/
446
+ cd space
447
+
448
+ # Commit e push
449
+ git add .
450
+ git commit -m "Deploy RVC Voice Conversion"
451
+ git push
452
+ Opção 2: Docker Hub
453
+ bash
454
+ # Build e push para Docker Hub
455
+ docker build -t seu-usuario/rvc-voice:latest .
456
+ docker push seu-usuario/rvc-voice:latest
457
+
458
+ # No Hugging Face, use Dockerfile:
459
+ FROM seu-usuario/rvc-voice:latest
460
+ 📊 Monitoramento
461
+ Verificar status da aplicação
462
+ bash
463
+ curl http://localhost:7860
464
+ Verificar uso de recursos
465
+ bash
466
+ # Docker
467
+ docker stats rvc-app
468
+
469
+ # Local
470
+ htop
471
+ nvidia-smi # Se tiver GPU
472
+
473
+ ts ocultos
474
+ Você deve criar um arquivo chamado README.md na raiz do projeto com todas essas instruções. Aqui está o README completo:
475
+
476
+ README.md
477
+ markdown
478
+ # 🎙️ RVC Voice Conversion - Ultimate Real
479
+
480
+ [![Hugging Face Spaces](https://img.shields.io/badge/Hugging%20Face-Spaces-yellow)](https://huggingface.co/spaces)
481
+ [![Docker](https://img.shields.io/badge/Docker-Ready-blue)](https://docker.com)
482
+ [![Gradio](https://img.shields.io/badge/Gradio-4.0+-orange)](https://gradio.app)
483
+
484
+ **Conversão de voz REAL com RVC (Retrieval-Based Voice Conversion)**
485
+ - Upload de vídeo com preview 🎬
486
+ - 5 formatos de saída em fundo preto 🎤
487
+ - Processamento DEMORADO (minutos) - RVC real!
488
+ - Suporte a modelos customizados via ZIP 📦
489
+
490
+ ---
491
+
492
+ ## 📋 Índice
493
+
494
+ - [Pré-requisitos](#pré-requisitos)
495
+ - [Instalação Local](#instalação-local)
496
+ - [Docker](#docker)
497
+ - [Estrutura do Projeto](#estrutura-do-projeto)
498
+ - [Comandos Úteis](#comandos-úteis)
499
+ - [Solução de Problemas](#solução-de-problemas)
500
+
501
+ ---
502
+
503
+ ## 🚀 Pré-requisitos
504
+
505
+ ### Local
506
+ - Python 3.10+
507
+ - FFmpeg (para processamento de vídeo)
508
+ - 4GB+ RAM recomendado
509
+
510
+ ### Docker
511
+ - Docker Engine 20.10+
512
+ - Docker Compose 2.0+
513
+
514
+ ---
515
+
516
+ ## 📦 Instalação Local
517
+
518
+ ### 1. Clone o repositório
519
+ ```bash
520
+ git clone https://github.com/yourusername/rvc-voice-conversion.git
521
+ cd rvc-voice-conversion
522
+ 2. Criar ambiente virtual
523
+ bash
524
+ python -m venv venv
525
+ source venv/bin/activate # Linux/Mac
526
+ # ou
527
+ venv\Scripts\activate # Windows
528
+ 3. Instalar dependências
529
+ bash
530
+ pip install -r requirements.txt
531
+ 4. Instalar FFmpeg
532
+ Ubuntu/Debian:
533
+
534
+ bash
535
+ sudo apt-get update
536
+ sudo apt-get install ffmpeg
537
+ MacOS:
538
+
539
+ bash
540
+ brew install ffmpeg
541
+ Windows: Baixe do ffmpeg.org
542
+
543
+ 5. Executar
544
+ bash
545
+ python app.py
546
+ Acesse: http://localhost:7860
547
+
548
+ 🐳 Docker
549
+ Build da imagem
550
+ bash
551
+ docker build -t rvc-voice-conversion .
552
+ Executar com Docker Run
553
+ bash
554
+ docker run -d \
555
+ --name rvc-app \
556
+ -p 7860:7860 \
557
+ -v $(pwd)/jobs:/app/jobs \
558
+ -v $(pwd)/models:/app/models \
559
+ -v $(pwd)/uploads:/app/uploads \
560
+ -v $(pwd)/temp:/app/temp \
561
+ -v $(pwd)/video_previews:/app/video_previews \
562
+ rvc-voice-conversion
563
+ Executar com Docker Compose
564
+ bash
565
+ # Iniciar
566
+ docker-compose up -d
567
+
568
+ # Ver logs
569
+ docker-compose logs -f
570
+
571
+ # Parar
572
+ docker-compose down
573
+
574
+ # Parar e remover volumes
575
+ docker-compose down -v
576
+ Comandos Docker úteis
577
+ bash
578
+ # Ver logs do container
579
+ docker logs -f rvc-app
580
+
581
+ # Parar o container
582
+ docker stop rvc-app
583
+
584
+ # Remover o container
585
+ docker rm rvc-app
586
+
587
+ # Acessar shell dentro do container
588
+ docker exec -it rvc-app /bin/bash
589
+
590
+ # Limpar containers e imagens não utilizados
591
+ docker container prune
592
+ docker image prune
593
+ docker volume prune
594
+ docker system prune -a
595
+ 📁 Estrutura do Projeto
596
+ text
597
+ rvc-voice-conversion/
598
+ ├── .gitignore # Arquivos ignorados pelo Git
599
+ ├── .dockerignore # Arquivos ignorados pelo Docker
600
+ ├── Dockerfile # Configuração da imagem Docker
601
+ ├── docker-compose.yml # Orquestração Docker
602
+ ├── docker-entrypoint.sh # Script de inicialização
603
+ ├── requirements.txt # Dependências Python
604
+ ├── README.md # Este arquivo
605
+ ├── app.py # Aplicação principal
606
+ ├── lib/ # Biblioteca interna
607
+ │ ├── __init__.py
608
+ │ ├── config.py # Configurações
609
+ │ ├── jobs.py # Gerenciamento de jobs
610
+ │ ├── models.py # Gerenciamento de modelos
611
+ │ └── ui.py # Helpers da interface
612
+ ├── jobs/ # Jobs de conversão (persistente)
613
+ ├── models/ # Modelos RVC customizados
614
+ ├── uploads/ # Uploads temporários
615
+ ├── temp/ # Arquivos temporários
616
+ └── video_previews/ # Thumbnails de vídeo
617
+ 🛠️ Comandos Úteis
618
+ Desenvolvimento
619
+ bash
620
+ # Executar em modo debug
621
+ gradio app.py
622
+
623
+ # Verificar código com linter
624
+ ruff check .
625
+
626
+ # Formatar código
627
+ black .
628
+ Gerenciamento de Modelos
629
+ bash
630
+ # Listar modelos disponíveis
631
+ ls -la models/
632
+
633
+ # Remover modelo
634
+ rm -rf models/nome_do_modelo/
635
+
636
+ # Backup de modelos
637
+ tar -czf models_backup.tar.gz models/
638
+ Limpeza
639
+ bash
640
+ # Limpar jobs antigos (mais de 7 dias)
641
+ find jobs/ -type d -mtime +7 -exec rm -rf {} \;
642
+
643
+ # Limpar arquivos temporários
644
+ rm -rf temp/* uploads/*
645
+
646
+ # Limpar logs
647
+ rm -f *.log
648
+ 🔧 Solução de Problemas
649
+ Erro: "FFmpeg not found"
650
+ bash
651
+ # Ubuntu/Debian
652
+ sudo apt-get install ffmpeg
653
+
654
+ # MacOS
655
+ brew install ffmpeg
656
+
657
+ # Windows: Adicione ffmpeg ao PATH
658
+ Erro: "Port 7860 already in use"
659
+ bash
660
+ # Mudar a porta
661
+ PORT=7861 python app.py
662
+
663
+ # Ou matar o processo na porta 7860
664
+ lsof -ti:7860 | xargs kill -9
665
+ Erro: "Permission denied" no Docker
666
+ bash
667
+ # Corrigir permissões dos volumes
668
+ sudo chown -R 1000:1000 jobs/ models/ uploads/
669
+
670
+ # Ou executar com sudo
671
+ sudo docker run ...
672
+ Erro de memória
673
+ bash
674
+ # Limitar memória no Docker
675
+ docker run -m 4g ...
676
+
677
+ # Ou no docker-compose.yml
678
+ services:
679
+ rvc-voice-conversion:
680
+ deploy:
681
+ resources:
682
+ limits:
683
+ memory: 4G
684
+ Verificar logs detalhados
685
+ bash
686
+ # Local
687
+ python app.py --debug
688
+
689
+ # Docker
690
+ docker logs -f rvc-app --tail 100
691
+ 🌐 Deploy no Hugging Face Spaces
692
+ Opção 1: Git + Docker
693
+ bash
694
+ # Adicionar como submodule
695
+ git submodule add https://huggingface.co/spaces/seu-usuario/rvc-space space
696
+
697
+ # Copiar arquivos
698
+ cp -r * space/
699
+ cd space
700
+
701
+ # Commit e push
702
+ git add .
703
+ git commit -m "Deploy RVC Voice Conversion"
704
+ git push
705
+ Opção 2: Docker Hub
706
+ bash
707
+ # Build e push para Docker Hub
708
+ docker build -t seu-usuario/rvc-voice:latest .
709
+ docker push seu-usuario/rvc-voice:latest
710
+
711
+ # No Hugging Face, use Dockerfile:
712
+ FROM seu-usuario/rvc-voice:latest
713
+ 📊 Monitoramento
714
+ Verificar status da aplicação
715
+ bash
716
+ curl http://localhost:7860
717
+ Verificar uso de recursos
718
+ bash
719
+ # Docker
720
+ docker stats rvc-app
721
+
722
+ # Local
723
+ htop
724
+ nvidia-smi # Se tiver GPU
725
+ 🤝 Contribuição
726
+ Fork o projeto
727
+
728
+ Crie sua branch: git checkout -b feature/nova-feature
729
+
730
+ Commit: git commit -m 'Adiciona nova feature'
731
+
732
+ Push: git push origin feature/nova-feature
733
+
734
+ Abra um Pull Request
735
+
736
+ 📝 Licença
737
+ MIT License - veja o arquivo LICENSE para detalhes
738
+
739
+ 🙏 Créditos
740
+ Ultimate RVC - Engine de conversão
741
+
742
+ Gradio - Interface web
743
+
744
+ FFmpeg - Processamento de vídeo
745
+
746
+ ⚠️ Notas importantes
747
+ O processamento é DEMORADO de verdade - RVC real leva minutos, não segundos!
748
+
749
+ Requer FFmpeg para processamento de vídeo
750
+
751
+ Modelos RVC devem ser enviados em formato ZIP com .pth e .index
752
+
753
+ 5 outputs só aparecem após clicar na setinha ⬇️ quando o job terminar
754
+
755
+ 📞 Suporte
756
+ Abra uma issue
757
+
758
+ Email: seu-email@example.com
759
+
760
+ Desenvolvido com ❤️ para a comunidade de conversão de voz
761
+
762
+ text
763
+
764
+ ## Onde colocar cada arquivo:
765
+ rvc-voice-conversion/ # Diretório raiz do projeto
766
+
767
+ ├── README.md # ← COLOQUE AQUI (instruções completas)
768
+ ├── .gitignore # ← COLOQUE AQUI
769
+ ├── .dockerignore # ← COLOQUE AQUI
770
+ ├── Dockerfile # ← COLOQUE AQUI
771
+ ├── docker-compose.yml # ← COLOQUE AQUI
772
+ ├── docker-entrypoint.sh # ← COLOQUE AQUI
773
+ ├── requirements.txt # ← COLOQUE AQUI
774
+ ├── app.py # ← COLOQUE AQUI
775
+
776
+ ├── lib/ # ← CRIE ESTA PASTA
777
+ │ ├── init.py
778
+ │ ├── config.py
779
+ │ ├── jobs.py
780
+ │ ├── models.py
781
+ │ └── ui.py
782
+
783
+ ├── jobs/ # ← CRIE ESTA PASTA (vazia)
784
+ │ └── .gitkeep
785
+
786
+ ├── models/ # ← CRIE ESTA PASTA (vazia)
787
+ │ └── .gitkeep
788
+
789
+ ├── uploads/ # ← CRIE ESTA PASTA (vazia)
790
+ │ └── .gitkeep
791
+
792
+ ├── temp/ # ← CRIE ESTA PASTA (vazia)
793
+ │ └── .gitkeep
794
+
795
+ └── video_previews/ # ← CRIE ESTA PASTA (vazia)
796
+ └── .gitkeep
797
+
798
+ text
799
+
800
+ ## Comandos para criar a estrutura:
801
+
802
+ ```bash
803
+ # Criar diretório principal
804
+ mkdir -p rvc-voice-conversion
805
+ cd rvc-voice-conversion
806
+
807
+ # Criar estrutura de diretórios
808
+ mkdir -p lib jobs models uploads temp video_previews
809
 
810
+ # Criar arquivos vazios .gitkeep
811
+ touch jobs/.gitkeep models/.gitkeep uploads/.gitkeep temp/.gitkeep video_previews/.gitkeep
 
 
 
 
 
 
812
 
813
+ # Criar arquivo __init__.py vazio
814
+ touch lib/__init__.py
815
 
816
+ # Agora copie/cole o conteúdo de cada arquivo para seu respectivo local
817
+ Comandos rápidos para testar:
818
+ bash
819
+ # Verificar estrutura
820
+ tree -a
821
 
822
+ # Executar localmente
823
+ python app.py
824
 
825
+ # Build Docker
826
+ docker build -t rvc-voice-conversion .
 
827
 
828
+ # Executar com Docker
829
+ docker run -d --name rvc-app -p 7860:7860 rvc-voice-conversion
830
 
831
+ # Ver logs
832
+ docker logs -f rvc-app
833
 
834
+ # Parar e remover
835
+ docker stop rvc-app && docker rm rvc-app