/alsa

Primary LanguageGoBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

alsa

A pure Go audio binding to ALSA that supports audio playback.

Build Status Go Report Card GoDoc

WARNING

The public API is unstable. Please fork/vendor before using. Right now it's inspired by oto, but only the player part is implemented, and some features are missing that alsa-lib might do to make it plug-and-play:

  • format conversion
  • channel conversion
  • resampling

TODO

This library implements the bare minimum of the rich alsa API. What's missing:

  • hardware feature detection (sample rate, channels, formats)
  • capture
  • non-interleaved audio playback
  • mmap-based API (less copying)
  • others