mirror of
https://github.com/taglib/taglib.git
synced 2026-10-19 06:28:51 -04:00
6c01a5f1977e8c4dcf5eaf141fa78bf51ed0f620
* 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
TagLib
TagLib Audio Metadata Library
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.
Languages
C++
96.7%
CMake
2%
C
0.9%
Logos
0.4%