{GST_TAG_MUSICBRAINZ_ALBUMARTISTID, "TXXX|MusicBrainz Album Artist Id"},
{GST_TAG_MUSICBRAINZ_RELEASEGROUPID, "TXXX|MusicBrainz Release Group Id"},
{GST_TAG_MUSICBRAINZ_TRMID, "TXXX|MusicBrainz TRM Id"},
+ /* acoustid identifiers according to the official musicbrainz mapping
+ * https://picard.musicbrainz.org/docs/mappings/ */
+ {GST_TAG_ACOUSTID_ID, "TXXX|Acoustid Id"},
+ {GST_TAG_ACOUSTID_FINGERPRINT, "TXXX|Acoustid Fingerprint"},
/* according to: http://wiki.musicbrainz.org/MusicBrainzTag (yes, no space
* before 'ID' and not 'Id' either this time, yay for consistency) */
{GST_TAG_CDDA_MUSICBRAINZ_DISCID, "TXXX|MusicBrainz DiscID"},
{GST_TAG_ALBUM_GAIN, "REPLAYGAIN_ALBUM_GAIN"},
{GST_TAG_ALBUM_PEAK, "REPLAYGAIN_ALBUM_PEAK"},
{GST_TAG_REFERENCE_LEVEL, "REPLAYGAIN_REFERENCE_LOUDNESS"},
+ {GST_TAG_ACOUSTID_ID, "ACOUSTID_ID"},
+ {GST_TAG_ACOUSTID_FINGERPRINT, "ACOUSTID_FINGERPRINT"},
{GST_TAG_MUSICBRAINZ_TRACKID, "MUSICBRAINZ_TRACKID"},
{GST_TAG_MUSICBRAINZ_RELEASETRACKID, "MUSICBRAINZ_RELEASETRACKID"},
{GST_TAG_MUSICBRAINZ_ARTISTID, "MUSICBRAINZ_ARTISTID"},
* GST_TAG_MUSICBRAINZ_RELEASEGROUPID:
*
* MusicBrainz Release Group ID
+ *
+ * Since: 1.18
*/
#define GST_TAG_MUSICBRAINZ_RELEASEGROUPID "musicbrainz-releasegroupid"
/**
* GST_TAG_MUSICBRAINZ_RELEASETRACKID:
*
* MusicBrainz Release Track ID
+ *
+ * Since: 1.18
*/
#define GST_TAG_MUSICBRAINZ_RELEASETRACKID "musicbrainz-releasetrackid"
/**
#define GST_TAG_MUSICBRAINZ_TRMID "musicbrainz-trmid"
/**
+ * GST_TAG_ACOUSTID_ID:
+ *
+ * AcoustID Identifier
+ *
+ * Since: 1.18
+ */
+#define GST_TAG_ACOUSTID_ID "acoustid-id"
+
+/**
+ * GST_TAG_ACOUSTID_FINGERPRINT:
+ *
+ * AcoustID Fingerprint (Chromaprint)
+ *
+ * Since: 1.18
+ */
+/*
+ * FIXME 2.0: Using "chromaprint-fingerprint" for backwards compatibility with the
+ * old custom tag from the chromaprint plugin but should change this to
+ * "acoustid-fingerprint" in 2.0 for consistency.
+*/
+#define GST_TAG_ACOUSTID_FINGERPRINT "chromaprint-fingerprint"
+
+/**
* GST_TAG_CMML_STREAM:
*
* Annodex CMML stream element tag
const gchar * gst_tag_to_vorbis_tag (const gchar * gst_tag);
GST_TAG_API
-void gst_vorbis_tag_add (GstTagList * list,
- const gchar * tag,
+void gst_vorbis_tag_add (GstTagList * list,
+ const gchar * tag,
const gchar * value);
GST_TAG_API
-GList * gst_tag_to_vorbis_comments (const GstTagList * list,
+GList * gst_tag_to_vorbis_comments (const GstTagList * list,
const gchar * tag);
/* functions to convert GstBuffers with vorbiscomment contents to GstTagLists and back */
_("MusicBrainz release track ID"), NULL);
gst_tag_register_static (GST_TAG_MUSICBRAINZ_TRMID, GST_TAG_FLAG_META,
G_TYPE_STRING, _("track TRM ID"), _("MusicBrainz TRM ID"), NULL);
+ gst_tag_register_static (GST_TAG_ACOUSTID_ID, GST_TAG_FLAG_META,
+ G_TYPE_STRING, _("AcoustID ID"), _("AcoustID ID"), NULL);
+ gst_tag_register_static (GST_TAG_ACOUSTID_FINGERPRINT,
+ GST_TAG_FLAG_META, G_TYPE_STRING, _("AcoustID fingerprint (chromaprint)"),
+ _("AcoustID fingerprint (chromaprint)"), NULL);
/* CDDA tags */
gst_tag_register_static (GST_TAG_CDDA_CDDB_DISCID, GST_TAG_FLAG_META,
gst_vorbis_tag_add (list, "CONTACT", "Coo");
gst_vorbis_tag_add (list, "COMMENT", "Stroodle is good");
gst_vorbis_tag_add (list, "COMMENT", "Peroxysulfid stroodles the brain");
+ gst_vorbis_tag_add (list, "ACOUSTID_ID", "5678913");
+ gst_vorbis_tag_add (list, "ACOUSTID_FINGERPRINT", "5678912");
gst_vorbis_tag_add (list, "TRACKNUMBER", "5");
gst_vorbis_tag_add (list, "TRACKTOTAL", "77");
ASSERT_TAG_LIST_HAS_STRING (list, GST_TAG_CONTACT, "Coo");
ASSERT_TAG_LIST_HAS_STRING (list, GST_TAG_COMMENT,
"Peroxysulfid stroodles the brain");
+ ASSERT_TAG_LIST_HAS_STRING (list, GST_TAG_ACOUSTID_ID, "5678913");
+ ASSERT_TAG_LIST_HAS_STRING (list, GST_TAG_ACOUSTID_FINGERPRINT, "5678912");
ASSERT_TAG_LIST_HAS_STRING (list, GST_TAG_COMMENT, "Stroodle is good");
ASSERT_TAG_LIST_HAS_UINT (list, GST_TAG_TRACK_NUMBER, 5);
ASSERT_TAG_LIST_HAS_UINT (list, GST_TAG_TRACK_COUNT, 77);