A cross-platform C library for reading audio tags
flac: parse seek table as toc
redo parts of the API to fit more tag-kind-specific info - attached image type



You can also use your local clone with git send-email.


A cross-platform library for reading audio tags, designed mainly for highly constrained environments.

Some features:

  • C, no memory allocations, no dependencies, portable, thread-safe
  • minimalistic API
  • MIT license
  • flac, ogg/vorbis, ogg/opus, m4a, mp3, wav
  • it, xm, s3m, mod
  • id3v1, id3v2.*
  • replay gain
  • number of channels, sampling/bit rate, duration (unless it's a mod-like format)
  • strings are converted to UTF-8 (from 437, ISO-8859-1 and UTF-16)
  • very fast

Fuzzing has been performed with AFL++.


tags.h is the API which contains the documentation as well.

examples/readtags.c is a simple example that reads and prints out tags of the files specified on the command line.