diff --git a/doc/protocol.rst b/doc/protocol.rst index 660b737bb..acc2d3c47 100644 --- a/doc/protocol.rst +++ b/doc/protocol.rst @@ -207,6 +207,7 @@ The following tags are supported by * **performer**: the artist who performed the song. * **comment**: a human-readable comment about this song. The exact meaning of this tag is not well-defined. * **disc**: the decimal disc number in a multi-disc album. +* **label**: the name of the label or publisher. * **musicbrainz_artistid**: the artist id in the `MusicBrainz `_ database. * **musicbrainz_albumid**: the album id in the `MusicBrainz `_ database. * **musicbrainz_albumartistid**: the album artist id in the `MusicBrainz `_ database. diff --git a/doc/user.rst b/doc/user.rst index fd2c5b42b..b050fb4eb 100644 --- a/doc/user.rst +++ b/doc/user.rst @@ -770,6 +770,7 @@ When scanning or playing a song, :program:`MPD` parses its metadata. The followi * **performer**: the artist who performed the song. * **comment**: a human-readable comment about this song. The exact meaning of this tag is not well-defined. * **disc**: the decimal disc number in a multi-disc album. +* **label**: the name of the label or publisher. * **musicbrainz_artistid**: the artist id in the `MusicBrainz `_ database. * **musicbrainz_albumid**: the album id in the `MusicBrainz `_ database. * **musicbrainz_albumartistid**: the album artist id in the `MusicBrainz `_ database. diff --git a/src/tag/Id3Scan.cxx b/src/tag/Id3Scan.cxx index d7afaf7cf..6d1dd970f 100644 --- a/src/tag/Id3Scan.cxx +++ b/src/tag/Id3Scan.cxx @@ -1,5 +1,5 @@ /* - * Copyright 2003-2017 The Music Player Daemon Project + * Copyright 2003-2018 The Music Player Daemon Project * http://www.musicpd.org * * This program is free software; you can redistribute it and/or modify @@ -38,12 +38,13 @@ #include #include -# ifndef ID3_FRAME_COMPOSER -# define ID3_FRAME_COMPOSER "TCOM" -# endif -# ifndef ID3_FRAME_DISC -# define ID3_FRAME_DISC "TPOS" -# endif +#ifndef ID3_FRAME_COMPOSER +#define ID3_FRAME_COMPOSER "TCOM" +#endif + +#ifndef ID3_FRAME_DISC +#define ID3_FRAME_DISC "TPOS" +#endif #ifndef ID3_FRAME_ARTIST_SORT #define ID3_FRAME_ARTIST_SORT "TSOP" @@ -61,6 +62,10 @@ #define ID3_FRAME_ORIGINAL_RELEASE_DATE "TDOR" #endif +#ifndef ID3_FRAME_LABEL +#define ID3_FRAME_LABEL "TPUB" +#endif + gcc_pure static id3_utf8_t * tag_id3_getstring(const struct id3_frame *frame, unsigned i) noexcept @@ -317,6 +322,8 @@ scan_id3_tag(const struct id3_tag *tag, TagHandler &handler) noexcept handler); tag_id3_import_text(tag, ID3_FRAME_DISC, TAG_DISC, handler); + tag_id3_import_text(tag, ID3_FRAME_LABEL, TAG_LABEL, + handler); tag_id3_import_musicbrainz(tag, handler); tag_id3_import_ufid(tag, handler); diff --git a/src/tag/Names.c b/src/tag/Names.c index 5657e5f80..5a4de3b4a 100644 --- a/src/tag/Names.c +++ b/src/tag/Names.c @@ -1,5 +1,5 @@ /* - * Copyright 2003-2017 The Music Player Daemon Project + * Copyright 2003-2018 The Music Player Daemon Project * http://www.musicpd.org * * This program is free software; you can redistribute it and/or modify @@ -37,6 +37,7 @@ const char *const tag_item_names[TAG_NUM_OF_ITEM_TYPES] = { [TAG_PERFORMER] = "Performer", [TAG_COMMENT] = "Comment", [TAG_DISC] = "Disc", + [TAG_LABEL] = "Label", /* MusicBrainz tags from http://musicbrainz.org/doc/MusicBrainzTag */ [TAG_MUSICBRAINZ_ARTISTID] = "MUSICBRAINZ_ARTISTID", diff --git a/src/tag/Type.h b/src/tag/Type.h index 8e9d603b5..07429688e 100644 --- a/src/tag/Type.h +++ b/src/tag/Type.h @@ -1,5 +1,5 @@ /* - * Copyright 2003-2017 The Music Player Daemon Project + * Copyright 2003-2018 The Music Player Daemon Project * http://www.musicpd.org * * This program is free software; you can redistribute it and/or modify @@ -51,6 +51,7 @@ enum TagType TAG_PERFORMER, TAG_COMMENT, TAG_DISC, + TAG_LABEL, TAG_MUSICBRAINZ_ARTISTID, TAG_MUSICBRAINZ_ALBUMID,