obsidian-dix/DIX-Notes/Transcribir Videos (WSL).md

97 lines
4.2 KiB
Markdown

¡Qué bueno que estés usando **Tesseract OCR** para extraer texto de imágenes! Para extraer texto de un video (transcribirlo), necesitas una herramienta que combine **reconocimiento de voz (ASR - Automatic Speech Recognition)** en lugar de OCR. Aquí tienes algunas opciones similares pero para audio/video:
### 1. **Whisper (de OpenAI)**
- **Recomendado**: Es uno de los mejores sistemas de transcripción de voz, gratuito y de código abierto.
- Funciona bien incluso con ruido de fondo y múltiples idiomas.
- Puedes usarlo localmente en WSL (requiere Python y algo de RAM).
- **Cómo instalarlo**:
```bash
pip install openai-whisper
```
Luego ejecutas:
```bash
whisper "tuvideo.mp4" --model medium --language Spanish
```
(Hay modelos más pequeños como `tiny`, `base`, `small` si no tienes mucha RAM).
### 2. **Vosk**
- Alternativa ligera y offline, con modelos en español.
- Funciona bien en WSL/Linux.
- Ejemplo de uso:
```bash
pip install vosk
```
Luego usa su API para transcribir audio extraído del video.
### 3. **FFmpeg + Whisper/Vosk**
- Primero extrae el audio del video con **FFmpeg**:
```bash
ffmpeg -i "tuvideo.mp4" -vn -ar 16000 -ac 1 "audio.wav"
```
- Luego procesas `audio.wav` con Whisper o Vosk.
### 4. **Herramientas en línea (si prefieres no instalar nada)**
- **YouTube Studio** (si subes el video a YouTube, genera automáticamente subtítulos).
- **Otter.ai** (gratis para videos cortos).
- **Adobe Premiere Pro** (de pago, pero muy preciso).
### ¿Qué elegir?
- Si quieres **offline y potente**: **Whisper**.
- Si necesitas **liviano**: **Vosk**.
- Si prefieres **online**: **Otter.ai** o YouTube.
¿Necesitas ayuda para configurar alguna en WSL? ¡Avísame! 🚀
El error que estás experimentando se debe a que **Whisper no puede encontrar el archivo FFmpeg**, que es una dependencia esencial para procesar archivos de audio/video. Aunque descargaste el modelo de Whisper correctamente (`medium`), el problema está en la configuración del entorno.
### Causa del error:
1. **FFmpeg no está instalado o no está en el PATH**:
Whisper usa `ffmpeg` internamente para extraer el audio del video, pero no lo encuentra en tu sistema.
2. **Problema con espacios en la ruta del archivo**:
El nombre de tu video tiene espacios y caracteres especiales, lo que puede causar problemas en la interpretación de la ruta.
### Soluciones:
#### 1. **Instalar FFmpeg y agregarlo al PATH**:
- Descarga FFmpeg desde [https://ffmpeg.org/download.html](https://ffmpeg.org/download.html) (versión "Windows Builds").
- Extrae el ZIP y copia la carpeta `ffmpeg-x.x.x-full_build\bin` a una ubicación fija (ej. `C:\ffmpeg\bin`).
- Agrega la ruta `C:\ffmpeg\bin` al **PATH de Windows**:
- Ve a `Configuración > Sistema > Acerca de > Configuración avanzada del sistema > Variables de entorno`.
- En `Variables del sistema`, edita `Path` y agrega `C:\ffmpeg\bin`.
- Reinicia la terminal o PowerShell.
#### 2. **Usar comillas y rutas cortas**:
- Simplifica el nombre del archivo o usa comillas dobles para manejar espacios:
```bash
whisper ".\Primera Reunión.mp4" --model small --language Spanish
```
- O usa la ruta completa sin espacios:
```bash
whisper C:\ruta\corta\video.mp4 --model small --language Spanish
```
#### 3. **Probar con un modelo más pequeño**:
- El modelo `medium` requiere mucho RAM/CPU. Si no tienes GPU, usa `small` o `base`:
```bash
whisper ".\video.mp4" --model small --language Spanish
```
#### 4. **Extraer el audio manualmente con FFmpeg**:
Si persiste el error, extrae el audio primero:
```bash
ffmpeg -i "video.mp4" -vn -acodec pcm_s16le -ar 16000 -ac 1 audio.wav
```
Luego transcribe el archivo `audio.wav`:
```bash
whisper audio.wav --model small --language Spanish
```
### Verificación:
- Ejecuta en PowerShell:
```bash
ffmpeg -version
```
Si no da error, FFmpeg está correctamente instalado.
Si el problema continúa, dime si usas WSL o Windows nativo para ajustar la solución. ¡Podemos probar alternativas como Vosk o Whisper en Docker! 🛠️