guías

Cómo montar transcripción de voz a texto en local con Whisper (sin enviar nada a la nube)

Guía completa para instalar whisper.cpp en tu ordenador y transcribir audio en español en local. Sin API, sin suscripción, sin internet.


Whisper es el modelo de reconocimiento de voz de OpenAI. Es open source, funciona en más de 90 idiomas (incluyendo español con muy buena calidad) y puedes correrlo entero en tu propio ordenador sin enviar ni una palabra a internet.

En esta guía te explico cómo instalarlo, qué modelo elegir según tu hardware, y cómo usarlo para transcribir archivos de audio o para dictar en tiempo real.

Qué necesitas antes de empezar

  • Un ordenador con al menos 8 GB de RAM (para el modelo medium, el que mejor equilibra calidad y velocidad en español)
  • Espacio en disco: entre 500 MB y 3 GB según el modelo que elijas
  • macOS, Windows o Linux
  • Saber abrir una terminal y copiar-pegar comandos

Si nunca has abierto una terminal: en Mac pulsa Cmd + Espacio, escribe “Terminal” y pulsa Enter. En Windows, busca “PowerShell” en el menú de inicio.

Las dos versiones de Whisper que importan

Hay muchas formas de correr Whisper, pero las dos que merecen tu tiempo son:

whisper.cpp — Es Whisper reescrito en C++ para correr rápido en CPU, sin necesitar Python ni una GPU. Es lo que la mayoría de apps de dictado usan por debajo. Si tienes un Mac con chip Apple Silicon (M1, M2, M3, M4), corre especialmente bien gracias a la optimización para Metal — el framework gráfico de Apple que aquí se usa para acelerar los cálculos de la red neuronal.

faster-whisper — Es Whisper optimizado con CTranslate2, una librería que comprime y acelera modelos de IA. Requiere Python pero es significativamente más rápido que el Whisper original, especialmente en GPU NVIDIA.

Para esta guía vamos con whisper.cpp porque no necesita Python, no necesita GPU y funciona en los tres sistemas operativos sin drama.

Instalar whisper.cpp

En Mac o Linux

Abre la terminal y ejecuta:

git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cpp
make

Estos tres comandos descargan el código, entran en la carpeta y compilan el programa. Si tienes un Mac con Apple Silicon, la compilación detecta automáticamente Metal y lo activa. En unos 30 segundos tendrás el ejecutable listo.

Si no tienes git instalado, en Mac te pedirá instalar las Command Line Tools de Xcode — acepta y espera a que termine.

En Windows

Necesitas instalar primero Git para Windows y un compilador C++. La opción más sencilla es usar w64devkit — descarga el zip, descomprímelo y abre w64devkit.exe. Desde ahí:

git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cpp
make

Descargar un modelo

whisper.cpp incluye un script que descarga los modelos directamente. Los modelos disponibles, de menor a mayor:

ModeloTamañoRAM mínimaCalidad en español
tiny75 MB1 GBBásica — entiende frases simples
base142 MB1 GBAceptable — falla con acentos y nombres
small466 MB2 GBBuena — funcional para notas rápidas
medium1.5 GB5 GBMuy buena — recomendado para español
large-v33 GB10 GBExcelente — la mejor calidad disponible

Para descargar el modelo medium (el que recomiendo para empezar):

./models/download-ggml-model.sh medium

En Windows:

bash ./models/download-ggml-model.sh medium

La descarga tarda unos minutos dependiendo de tu conexión. Una vez descargado, el modelo se queda en la carpeta models/ y no necesitas internet para usarlo.

Transcribir un archivo de audio

Con el modelo descargado, ya puedes transcribir. Si tienes un archivo WAV:

./main -m models/ggml-medium.bin -f tu_audio.wav -l es

El parámetro -l es le dice a Whisper que el audio es en español. Si lo omites, intentará detectar el idioma automáticamente (funciona bien, pero tarda un poco más).

Si tu archivo está en MP3, M4A u otro formato, necesitas convertirlo primero a WAV 16 kHz mono. Con FFmpeg — una herramienta gratuita para convertir audio y vídeo:

ffmpeg -i tu_audio.mp3 -ar 16000 -ac 1 -c:a pcm_s16le tu_audio.wav

Si no tienes FFmpeg instalado: en Mac brew install ffmpeg, en Ubuntu sudo apt install ffmpeg, en Windows descárgalo de ffmpeg.org.

Dictar en tiempo real

Para dictar directamente con el micrófono en tiempo real, whisper.cpp incluye un modo stream:

./stream -m models/ggml-medium.bin -l es --step 3000 --length 10000

Esto abre el micrófono, escucha en bloques de 3 segundos y transcribe continuamente. Verás el texto aparecer en la terminal mientras hablas.

Algunos parámetros útiles para ajustar:

  • --step 3000 — cada cuántos milisegundos procesa un bloque (3 segundos es un buen balance)
  • --length 10000 — ventana de contexto en milisegundos (10 segundos ayuda con frases largas)
  • -t 4 — número de hilos de CPU a usar (ajusta según tu procesador)

La latencia depende del modelo y tu hardware. Con el modelo medium en un Mac M1, espera unos 2-3 segundos de retraso. Con el modelo small, baja a menos de 1 segundo pero pierde algo de precisión.

Apps de escritorio que usan Whisper por debajo

Si la terminal no es lo tuyo, hay apps con interfaz gráfica que hacen lo mismo:

MacWhisper (solo Mac, versión gratuita disponible) — Arrastras un archivo de audio y lo transcribe. La versión Pro permite dictar en tiempo real y exportar en varios formatos.

Superwhisper (solo Mac) — Dictado en tiempo real con atajos de teclado. Pulsas una tecla, hablas, sueltas y el texto aparece donde tengas el cursor. Ideal para escribir emails, código o documentación dictando.

Vibe (Mac, Windows, Linux, gratuito y open source) — Similar a MacWhisper pero multiplataforma. Buena opción si estás en Windows o Linux.

Estas apps descargan los modelos de Whisper y los corren localmente — ninguna envía tu audio a ningún servidor externo.

Conectar Whisper con otros proyectos

Aquí es donde la cosa se pone interesante para builders:

Con Home Assistant: Si tienes un asistente de voz local (como el ESP32-S3-BOX-3 o el ReSpeaker Lite del que hablamos en la sección de productos), Whisper es el componente que convierte tu voz en texto. Se instala como add-on en Home Assistant y funciona junto con Piper (texto a voz) para crear un pipeline de voz completamente local.

Con Ollama: Puedes encadenar Whisper + Ollama para hablarle a un LLM local. Whisper transcribe lo que dices, el texto se envía a Ollama, y la respuesta la puedes convertir de vuelta a voz con Piper. Todo en tu máquina, sin internet.

Con un script de Python: Si programas, la librería pywhisper o faster-whisper te permiten integrar transcripción en cualquier proyecto. Un ejemplo simple: un script que graba 10 segundos de audio, los transcribe con Whisper y los guarda en un archivo de texto.

Lo que no te van a contar

El modelo medium en español es muy bueno para lenguaje cotidiano, pero tiene puntos débiles: nombres propios poco comunes, términos técnicos muy específicos (sobre todo si los pronuncias con acento mixto español-inglés), y frases en las que mezclas idiomas dentro de la misma oración. Para estos casos, el modelo large-v3 mejora notablemente, pero necesita más RAM y tarda más.

El modo de dictado en tiempo real (stream) no tiene puntuación automática fiable. Whisper añade puntos y comas a veces, pero no siempre acierta. Si necesitas puntuación precisa para documentos formales, tendrás que repasar el texto después.

Y la transcripción de audio con mucho ruido de fondo sigue siendo un reto. Whisper lidia mejor que la mayoría con el ruido, pero un buen micrófono (como el ReSpeaker Lite o el MXL AC-44) mejora los resultados más que subir de modelo. Audio limpio + modelo medium supera a audio ruidoso + modelo large casi siempre.

Veredicto

Whisper local es una de esas herramientas que una vez pruebas, no entiendes cómo vivías sin ella. Dictar emails mientras cocinas, transcribir reuniones sin que nadie se entere de qué has hablado, convertir notas de voz en texto sin subirlas a ningún servicio. Todo gratis, todo privado, todo en tu máquina. La instalación lleva 10 minutos y el modelo medium en español funciona sorprendentemente bien para el día a día.