Repolode
nyosegawa

nyosegawa/speech.cpp

Kit de herramientas de voz en C++ basado en ggml para síntesis de voz, reconocimiento y detección de actividad de voz, compatible con Metal, Vulkan o CPU y con un servidor compatible con OpenAI.

Alternativa open source a:OpenAI Whisper API

Estrellas
371
Forks
23
Issues abiertos
12
Último commit
hace 6 días

¿Qué es?

speech.cpp ofrece un único comando `speech` y una biblioteca compartida, `libspeech`, con una API de C para síntesis de voz, reconocimiento de voz, detección de actividad de voz y diarización de hablantes. Funciona en CPU, Metal y Vulkan mediante ggml, y cada modelo se descarga por nombre como un único archivo GGUF que incluye su códec, por lo que no hace falta configurar Python ni CUDA.

El catálogo incluye Qwen3-TTS, Irodori-TTS y Drama 3 para síntesis, y Qwen3-ASR, ReazonSpeech, parakeet, Haas y Nemotron para reconocimiento; además, incorpora Silero VAD y diarización de Nemotron para detectar actividad y separar hablantes. El comando `speech serve` ofrece los endpoints de audio y transcripción de OpenAI, además de la transcripción en tiempo real, mediante HTTP local; por su parte, `speech asr --live` transcribe la entrada del micrófono a medida que se habla.

Para programas, `speech worker` sirve un modelo cargado mediante JSON Lines en stdin y stdout, y la API de C permite enlazar la biblioteca directamente desde una aplicación. Hay instaladores para macOS con Apple silicon, Windows x64 y Linux x86-64.

Funciones clave

  • 01Síntesis de voz a partir de texto con varias familias de modelos y voces con nombre.
  • 02Reconocimiento de voz con detección de idioma, marcas de tiempo y etiquetas de hablantes.
  • 03Transcripción en directo desde el micrófono mediante `speech asr --live`.
  • 04Endpoints de audio y transcripción en tiempo real compatibles con OpenAI en localhost.
  • 05Funciona con Metal, Vulkan o CPU, sin necesidad de Python ni CUDA.

Casos de uso

  • Añadir síntesis de voz local o transcripción a una aplicación que use la API de audio de OpenAI.
  • Crear un asistente de voz que transcriba la entrada del micrófono en tiempo real.
  • Transcribir grabaciones en japonés o multilingües sin conexión en una computadora personal.
  • Integrar modelos de voz en otro programa mediante la API de C o el worker de JSON Lines.

Inicio rápido

  1. 1

    Instala speech con el script de instalación oficial del README

  2. 2

    Sintetiza una frase con Qwen3-TTS (el modelo se descarga la primera vez)

    speech tts qwen3-tts-0.6b --voice ryan -o hello.wav "Hello. It will be sunny in Tokyo tomorrow."
  3. 3

    Transcribe el archivo WAVE con Qwen3-ASR

    speech asr qwen3-asr-0.6b hello.wav
  4. 4

    Abre la página web local para elegir modelos, generar voz y transcribir

    speech serve --open

Antes de usarlo

  • Los scripts de instalación solo están disponibles para macOS con Apple silicon, Linux x86-64 y Windows x64; los Mac con Intel requieren compilar desde el código fuente.
  • El servidor escucha en 127.0.0.1 y no tiene autenticación.
  • Algunos modelos son muy grandes, como drama-3, con 20,8 GB, y nemotron-3.5-transcribe, con 19,0 GB.

En colecciones

Temas

Preguntas frecuentes

¿Qué es speech.cpp?
Kit de herramientas de voz en C++ basado en ggml para síntesis de voz, reconocimiento y detección de actividad de voz, compatible con Metal, Vulkan o CPU y con un servidor compatible con OpenAI. speech.cpp ofrece un único comando `speech` y una biblioteca compartida, `libspeech`, con una API de C para síntesis de voz, reconocimiento de voz, detección de actividad de voz y diarización de hablantes. Funciona en CPU, Metal y Vulkan mediante ggml, y cada modelo se descarga por nombre como un único archivo GGUF que incluye su códec, por lo que no hace falta configurar Python ni CUDA.
¿speech.cpp es gratuito? ¿Qué licencia tiene?
speech.cpp es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿speech.cpp sigue mantenido?
Mantenimiento activo. El último commit de speech.cpp fue el 1 nov 2026.
¿Para qué puedo usar speech.cpp?
Añadir síntesis de voz local o transcripción a una aplicación que use la API de audio de OpenAI. Crear un asistente de voz que transcriba la entrada del micrófono en tiempo real. Transcribir grabaciones en japonés o multilingües sin conexión en una computadora personal. Integrar modelos de voz en otro programa mediante la API de C o el worker de JSON Lines.
¿Cómo se instala speech.cpp?
Instala speech con el script de instalación oficial del README Sintetiza una frase con Qwen3-TTS (el modelo se descarga la primera vez): speech tts qwen3-tts-0.6b --voice ryan -o hello.wav "Hello. It will be sunny in Tokyo tomorrow." Transcribe el archivo WAVE con Qwen3-ASR: speech asr qwen3-asr-0.6b hello.wav Abre la página web local para elegir modelos, generar voz y transcribir: speech serve --open
¿Dónde consigo speech.cpp?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/nyosegawa/speech.cpp

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados