Repolode
mackron

mackron/miniaudio

Biblioteca de C para reproducir y capturar audio, distribuida como un único archivo fuente y sin dependencias externas.

Estrellas
7,383
Forks
620
Issues abiertos
4
Último commit
hace 6 horas

¿Qué es?

miniaudio es una biblioteca de C para reproducir y capturar audio. Se distribuye como un único archivo fuente y un archivo de cabecera, y solo depende de la biblioteca estándar de C, por lo que puede añadirse directamente a un proyecto sin instalar paquetes adicionales.

La biblioteca ofrece una API de bajo nivel para acceder directamente a datos de audio sin procesar y una API de alto nivel para gestionar y mezclar sonido, aplicar efectos y, de forma opcional, espacializarlo en 3D. Incluye un grafo de nodos para crear cadenas personalizadas de mezcla y efectos, decodificación integrada de WAV, FLAC y MP3 con compatibilidad para decodificadores personalizados, codificación WAV, remuestreo y asignación de canales.

miniaudio es compatible con Windows, macOS, iOS, Linux, variantes de BSD, Android, Raspberry Pi y Emscripten/HTML5. Cada plataforma utiliza su backend de audio nativo, como WASAPI, Core Audio, ALSA, PulseAudio o AAudio, y se pueden añadir backends personalizados sin modificar el código fuente de la biblioteca.

Funciones clave

  • 01Se distribuye como un único archivo fuente de C, sin dependencias externas aparte de la biblioteca estándar.
  • 02Ofrece acceso de bajo nivel a datos de audio sin procesar y una API de alto nivel para reproducir y mezclar sonido.
  • 03Decodifica WAV, FLAC y MP3 de forma integrada y admite decodificadores personalizados.
  • 04Proporciona un grafo de nodos para mezclar y procesar efectos con flexibilidad.
  • 05Admite remuestreo, asignación de canales y conversión de formatos de datos.
  • 06Utiliza backends de audio nativos en Windows, macOS, Linux, BSD, Android y la web.

Casos de uso

  • Añadir efectos de sonido o reproducir música de fondo en un juego de C o C++.
  • Grabar audio de un micrófono en una aplicación de escritorio o integrada multiplataforma.
  • Decodificar archivos de audio a PCM sin procesar para analizarlos o procesarlos.
  • Reproducir audio en una compilación de WebAssembly mediante Emscripten.

Inicio rápido

  1. 1

    Añade miniaudio.c y miniaudio.h a tu árbol de código fuente

  2. 2

    Compila miniaudio.c como cualquier otro archivo fuente (en Linux y BSD, enlaza -lpthread y -lm)

    cc -o app app.c miniaudio.c -lpthread -lm
  3. 3

    Incluye miniaudio.h en tu código y llama a la API, por ejemplo, ma_engine_play_sound

Antes de usarlo

  • La licencia permite elegir entre dominio público y MIT No Attribution, pero los metadatos la indican como NOASSERTION, así que verifica las condiciones antes de usarla.
  • No se garantiza la compatibilidad ABI entre versiones, por lo que se recomienda incluir el código fuente en el proyecto en vez de usar una biblioteca compartida.

Temas

Preguntas frecuentes

¿Qué es miniaudio?
Biblioteca de C para reproducir y capturar audio, distribuida como un único archivo fuente y sin dependencias externas. miniaudio es una biblioteca de C para reproducir y capturar audio. Se distribuye como un único archivo fuente y un archivo de cabecera, y solo depende de la biblioteca estándar de C, por lo que puede añadirse directamente a un proyecto sin instalar paquetes adicionales.
¿miniaudio es gratuito? ¿Qué licencia tiene?
miniaudio es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿miniaudio sigue mantenido?
Mantenimiento activo. El último commit de miniaudio fue el 21 oct 2026.
¿Para qué puedo usar miniaudio?
Añadir efectos de sonido o reproducir música de fondo en un juego de C o C++. Grabar audio de un micrófono en una aplicación de escritorio o integrada multiplataforma. Decodificar archivos de audio a PCM sin procesar para analizarlos o procesarlos. Reproducir audio en una compilación de WebAssembly mediante Emscripten.
¿Cómo se instala miniaudio?
Añade miniaudio.c y miniaudio.h a tu árbol de código fuente Compila miniaudio.c como cualquier otro archivo fuente (en Linux y BSD, enlaza -lpthread y -lm): cc -o app app.c miniaudio.c -lpthread -lm Incluye miniaudio.h en tu código y llama a la API, por ejemplo, ma_engine_play_sound
¿Dónde consigo miniaudio?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/mackron/miniaudio

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

Proyectos relacionados