FelipeandGitHub 6c01a5f197 docs: Fix and complete the property mapping documentation
* docs: Reword property mapping notes

Use the present tense, refer to keys instead of tags, fix the comma
splice in the Matroska note, and describe the Matroska target level as
optional, with /30 (Track) used when none is given.

* docs: Fix ID3v2 TIPL and TMCL property mappings

ARRANGER, ENGINEER, PRODUCER, DJMIXER and MIXER are stored as roles in the
TIPL frame, and TMCL instrument/name pairs map to PERFORMER:<instrument>
keys. The INVOLVEDPEOPLE and MUSICIANCREDITS keys listed for these frames
don't exist in the code: their frameTranslation entries are commented out,
so both are written to TXXX like any unlisted key.

* docs: Widen ID3v2 column of property mapping table

Whitespace only, to make room for the TXXX descriptions added in the next
commit.

* docs: Document missing ID3v2 property mappings

- MUSICBRAINZ_TRACKID is stored in a UFID frame with owner
  http://musicbrainz.org.
- MusicBrainz, AcoustID and MusicIP properties use fixed TXXX
  descriptions from txxxFrameTranslation (e.g. MUSICBRAINZ_ALBUMID as
  "MUSICBRAINZ ALBUM ID"), not the key.
- COMMENT, LYRICS and URL keys with a description suffix are stored in
  COMM, USLT and WXXX frames with that description.

* docs: Describe MP4 freeform fallback and remove derivable names

MP4 keys without a listed name are stored in a freeform atom
(----:com.apple.iTunes: followed by the key), so cells repeating exactly
that name are redundant. The now empty LICENSE row is kept to list the
key.

* docs: Document MP4 rate atom for RATING

The code maps RATING to the MP4 rate atom, but it was missing from the
table entirely.

* docs: Fix Matroska target levels

The code maps RELEASEDATE to DATE_RELEASED at Album level (50), not Track
level (30). DATE_RECORDED for DATE uses the default level (30) and, unlike
TRACKNUMBER or REPLAYGAIN_TRACK_GAIN, has no Album-level counterpart to
tell apart, so its level is omitted.

* docs: Document Matroska REPLAYGAIN property mappings

The code maps ReplayGain properties to Matroska tags, but these were missing from the table entirely.

* docs: Note that RIFF INFO and ASF only support listed keys

Unlike the other formats, RIFF INFO and ASF don't store keys without a
listed name, and setProperties() returns them.

* docs: Fix ASF mapping for ASIN

The ASF attribute "ASIN" was incorrectly listed under AUDIOSOURCEWEBPAGE.

* docs: Document missing ASF attribute mappings

The code maps the ReplayGain properties to replaygain_* attributes and
further Windows Media attributes (e.g. WM/ToolName, IsVBR,
WM/MediaClassPrimaryID) to properties, but they were missing from the
table.

* docs: Document ASF content description fields

TITLE, ARTIST, COPYRIGHT and COMMENT are stored in the Content Description
Object (Title, Author, Copyright, Description) rather than as attributes,
so the empty ASF column made them look unsupported.

* docs: Remove stray ul tag from TextIdentificationFrame table
2026-10-10 09:06:17 +02:00
2026-09-05 06:17:23 +02:00
2022-10-24 07:06:23 +02:00
2015-05-18 11:31:55 +02:00
2023-10-08 05:58:33 +02:00
2023-09-16 08:41:01 +02:00
2026-09-05 06:17:23 +02:00
2026-08-27 17:39:35 +02:00
2024-01-04 17:18:23 +01:00
2026-02-18 05:15:14 +01:00

TagLib

Build Status

TagLib Audio Metadata Library

https://taglib.org/

TagLib is a library for reading and editing the metadata of several popular audio formats. Currently, it supports various metadata containers such as ID3v1, ID3v2 and Vorbis comments for MP3, MP4, AAC, Ogg, Opus, FLAC, Speex, APE, MPC, WavPack, WAV, AIFF, TrueAudio, Matroska, WebM, ASF, WMA, DSF, DFF and tracker (MOD, XM, S3M, IT) files.

TagLib is distributed under the GNU Lesser General Public License (LGPL) and Mozilla Public License (MPL). Essentially that means that it may be used in proprietary applications, but if changes are made to TagLib they must be contributed back to the project. Please review the licenses if you are considering using TagLib in your project.

S
Description
No description provided
Readme
15 MiB
Languages
C++ 96.7%
CMake 2%
C 0.9%
Logos 0.4%