mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-12 10:25:33 +00:00
gst/tags/gstvorbistag.c: Add replaygain support to vorbistag
Original commit message from CVS: 2004-02-02 Jeremy Simon <jesimon@libertysurf.fr> * gst/tags/gstvorbistag.c: (gst_vorbis_tag_add), (gst_tag_to_vorbis_comments): Add replaygain support to vorbistag
This commit is contained in:
parent
f921cef745
commit
99adadce8c
2 changed files with 34 additions and 16 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2004-02-02 Jeremy Simon <jesimon@libertysurf.fr>
|
||||||
|
|
||||||
|
* gst/tags/gstvorbistag.c: (gst_vorbis_tag_add),
|
||||||
|
(gst_tag_to_vorbis_comments):
|
||||||
|
Add replaygain support to vorbistag
|
||||||
|
|
||||||
2004-02-02 Jeremy Simon <jesimon@libertysurf.fr>
|
2004-02-02 Jeremy Simon <jesimon@libertysurf.fr>
|
||||||
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
|
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
|
||||||
(gst_ffmpeg_caps_to_extradata):
|
(gst_ffmpeg_caps_to_extradata):
|
||||||
|
|
|
@ -173,22 +173,26 @@ gst_vorbis_tag_init (GTypeInstance *instance, gpointer g_class)
|
||||||
gst_element_add_pad (GST_ELEMENT (tag), tag->srcpad);
|
gst_element_add_pad (GST_ELEMENT (tag), tag->srcpad);
|
||||||
}
|
}
|
||||||
static GstTagEntryMatch tag_matches[] = {
|
static GstTagEntryMatch tag_matches[] = {
|
||||||
{ GST_TAG_TITLE, "TITLE" },
|
{ GST_TAG_TITLE, "TITLE" },
|
||||||
{ GST_TAG_VERSION, "VERSION" },
|
{ GST_TAG_VERSION, "VERSION" },
|
||||||
{ GST_TAG_ALBUM, "ALBUM" },
|
{ GST_TAG_ALBUM, "ALBUM" },
|
||||||
{ GST_TAG_TRACK_NUMBER,"TRACKNUMBER" },
|
{ GST_TAG_TRACK_NUMBER, "TRACKNUMBER" },
|
||||||
{ GST_TAG_ARTIST, "ARTIST" },
|
{ GST_TAG_ARTIST, "ARTIST" },
|
||||||
{ GST_TAG_PERFORMER, "PERFORMER" },
|
{ GST_TAG_PERFORMER, "PERFORMER" },
|
||||||
{ GST_TAG_COPYRIGHT, "COPYRIGHT" },
|
{ GST_TAG_COPYRIGHT, "COPYRIGHT" },
|
||||||
{ GST_TAG_LICENSE, "LICENSE" },
|
{ GST_TAG_LICENSE, "LICENSE" },
|
||||||
{ GST_TAG_ORGANIZATION,"ORGANIZATION" },
|
{ GST_TAG_ORGANIZATION, "ORGANIZATION" },
|
||||||
{ GST_TAG_DESCRIPTION,"DESCRIPTION" },
|
{ GST_TAG_DESCRIPTION, "DESCRIPTION" },
|
||||||
{ GST_TAG_GENRE, "GENRE" },
|
{ GST_TAG_GENRE, "GENRE" },
|
||||||
{ GST_TAG_DATE, "DATE" },
|
{ GST_TAG_DATE, "DATE" },
|
||||||
{ GST_TAG_CONTACT, "CONTACT" },
|
{ GST_TAG_CONTACT, "CONTACT" },
|
||||||
{ GST_TAG_ISRC, "ISRC" },
|
{ GST_TAG_ISRC, "ISRC" },
|
||||||
{ GST_TAG_COMMENT, "COMMENT" },
|
{ GST_TAG_COMMENT, "COMMENT" },
|
||||||
{ NULL, NULL }
|
{ GST_TAG_TRACK_GAIN, "REPLAYGAIN_TRACK_GAIN" },
|
||||||
|
{ GST_TAG_TRACK_PEAK, "REPLAYGAIN_TRACK_PEAK" },
|
||||||
|
{ GST_TAG_ALBUM_GAIN, "REPLAYGAIN_ALBUM_GAIN" },
|
||||||
|
{ GST_TAG_ALBUM_PEAK, "REPLAYGAIN_ALBUM_PEAK" },
|
||||||
|
{ NULL, NULL }
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* gst_tag_from_vorbis_tag:
|
* gst_tag_from_vorbis_tag:
|
||||||
|
@ -288,6 +292,9 @@ gst_vorbis_tag_add (GstTagList *list, const gchar *tag, const gchar *value)
|
||||||
case G_TYPE_STRING:
|
case G_TYPE_STRING:
|
||||||
gst_tag_list_add (list, GST_TAG_MERGE_APPEND, gst_tag, value, NULL);
|
gst_tag_list_add (list, GST_TAG_MERGE_APPEND, gst_tag, value, NULL);
|
||||||
break;
|
break;
|
||||||
|
case G_TYPE_DOUBLE:
|
||||||
|
gst_tag_list_add (list, GST_TAG_MERGE_APPEND, gst_tag, g_strtod (value, NULL), NULL);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -409,6 +416,11 @@ gst_tag_to_vorbis_comments (const GstTagList *list, const gchar *tag)
|
||||||
result = g_strdup_printf ("%s=%s", vorbis_tag, str);
|
result = g_strdup_printf ("%s=%s", vorbis_tag, str);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case G_TYPE_DOUBLE: {
|
||||||
|
gdouble value;
|
||||||
|
g_assert (gst_tag_list_get_double_index (list, tag, i, &value));
|
||||||
|
result = g_strdup_printf ("%s=%f", vorbis_tag, value);
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
GST_DEBUG ("Couldn't write tag %s", tag);
|
GST_DEBUG ("Couldn't write tag %s", tag);
|
||||||
continue;
|
continue;
|
||||||
|
|
Loading…
Reference in a new issue