libtags
A read-only mirror of https://git.kyotam.com/sigrid. It updates only from there.
| Name | Last commit date |
|---|---|
| examples | 2 years ago |
| input | 2 years ago |
| .gitignore | 2 years ago |
| 437.c | 2 years ago |
| 8859.c | 2 years ago |
| base64.c | 2 years ago |
| flac.c | 2 years ago |
| harness.c | 2 years ago |
| id3genres.c | 6 years ago |
| id3v1.c | 2 years ago |
| id3v2.c | 2 years ago |
| it.c | 2 years ago |
| LICENSE | 2 years ago |
| m4a.c | 2 years ago |
| meson.build | 2 years ago |
| meson.options | 2 years ago |
| mod.c | 2 years ago |
| opus.c | 2 years ago |
| README.md | 2 years ago |
| s3m.c | 2 years ago |
| shell.nix | 2 years ago |
| tags.c | 2 years ago |
| tags.h | 2 years ago |
| tagspriv.h | 2 years ago |
| utf16.c | 2 years ago |
| vorbis.c | 2 years ago |
| wav.c | 2 years ago |
| xm.c | 2 years ago |
libtags
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++.
Usage
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.