Extraer audio del video
ffmpeg -i video.mp4 audio.wav
Extraer voz con UVR
Puedes descarga la versión más reciente de Ultimate Vocal Remover en GitHub (dmg o zip)
https://github.com/anjok07/ultimatevocalremovergui
Al separar voz/música con IA, la música puede quedar con picos y bajones de volumen donde antes había voz.
Revisa que no esté activado algo como:
- Remove Silence
- Trim Silence
- Auto Trim
- Split by silence
Para crear pistas sin eliminación de silencios.
Transcribir audio a texto
A) Básico con marcas de tiempo.
whisper voz–>av –>model medium
Instalación:
pip install -U openai-whisper
B) Avanzado con detección los hablantes.
- Crear una cuenta gratuita en Hugging Face.
- Aceptar las condiciones de uso del modelo de diarización de pyannote (pyannote/speaker-diarization). Y de pyannote/segmentation si lo pide.
- Crear un token de acceso tipo READ.
- Usar ese token en WhisperX.
- Abre en Hugging Face pyannote/speaker-diarization-community-1 1.1. Busca un botón parecido a "Agree and access repository"
whisperx voz–>av \ –>model medium \ –>language en \ –>diarize \ –>hf_token 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 \ –>output_format srt
Puedes cambiar a large-v3 para mejor precisión.
Instalación:
pip install whisperx
Información:
La diarización de hablantes es detectar:
- Cuántas voces distintas hay en el audio,
- En qué momento habla cada una,
Muy útil para crear un guion de doblaje.
Extraer muestras de cada hablante
py extraer_muestras_hablantes.py
Comparar voces
py comparar_voces.py
Usa SpeechBrain (un modelo preentrenado spkrec-ecapa-voxceleb que sirve para verificación de hablante y extracción de embeddings) Para hacer una comparación de timbre, rango, textura, presencia, características del hablante.
Instalación:
pip install torch torchaudio speechbrain
Traducir el .vtt:
python traducir_vtt.py
Instalación:
pip install deep-translator
Edición
- Donde no hay diálogo, conserva el audio original.
- Donde si hay diálogo, usa la pista instrumental separada.
–> OPCIONAL
Partir el audio:
ffmpeg -i audio.wav -ss 00:00:>00 -to 00:07:>00 -c copy parte1.wav ffmpeg -i audio.wav -ss 00:07:>00 -to 00:14:>00 -c copy parte2.wav ffmpeg -i audio.wav -ss 00:14:>00 -to 00:21:>00 -c copy parte3.wav ffmpeg -i audio.wav -ss 00:21:>00 -to 00:28:>00 -c copy parte4.wav
Unir 4 resultados:
ffmpeg “[0:a][1:a][2:a][3:a]concat=n=4:v=0:a=1[out]”>“[0:a][1:a][2:a][3:a]concat=n=4:v=0:a=1[out]”>_vocals“[0:a][1:a][2:a][3:a]concat=n=4:v=0:a=1[out]”>oncat=n=4:v=0:>a=1[out]" \ “[out]”>out]" fondo.wav