mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-19 23:06:49 +00:00
ext/flac/gstflacdec.c: Use libgsttag helper function here too.
Original commit message from CVS: * ext/flac/gstflacdec.c: (gst_flac_dec_update_metadata): Use libgsttag helper function here too.
This commit is contained in:
parent
424ea70f58
commit
3b826d41db
2 changed files with 18 additions and 15 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2006-08-24 Tim-Philipp Müller <tim at centricular dot net>
|
||||||
|
|
||||||
|
* ext/flac/gstflacdec.c: (gst_flac_dec_update_metadata):
|
||||||
|
Use libgsttag helper function here too.
|
||||||
|
|
||||||
2006-08-23 Stefan Kost <ensonic@users.sf.net>
|
2006-08-23 Stefan Kost <ensonic@users.sf.net>
|
||||||
|
|
||||||
* gst/avi/gstavidemux.c: (gst_avi_demux_class_init),
|
* gst/avi/gstavidemux.c: (gst_avi_demux_class_init),
|
||||||
|
|
|
@ -301,31 +301,29 @@ gst_flac_dec_update_metadata (GstFlacDec * flacdec,
|
||||||
const FLAC__StreamMetadata * metadata)
|
const FLAC__StreamMetadata * metadata)
|
||||||
{
|
{
|
||||||
GstTagList *list;
|
GstTagList *list;
|
||||||
guint32 number_of_comments, cursor, str_len;
|
guint num, i;
|
||||||
gchar *p_value, *value, *name, *str_ptr;
|
|
||||||
|
|
||||||
list = gst_tag_list_new ();
|
list = gst_tag_list_new ();
|
||||||
if (list == NULL) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
number_of_comments = metadata->data.vorbis_comment.num_comments;
|
num = metadata->data.vorbis_comment.num_comments;
|
||||||
value = NULL;
|
GST_DEBUG ("%u tag(s) found", num);
|
||||||
GST_DEBUG ("%d tag(s) found", number_of_comments);
|
|
||||||
for (cursor = 0; cursor < number_of_comments; cursor++) {
|
|
||||||
str_ptr = (gchar *) metadata->data.vorbis_comment.comments[cursor].entry;
|
|
||||||
str_len = metadata->data.vorbis_comment.comments[cursor].length;
|
|
||||||
p_value = g_strstr_len (str_ptr, str_len, "=");
|
|
||||||
if (p_value) {
|
|
||||||
name = g_strndup (str_ptr, p_value - str_ptr);
|
|
||||||
value = g_strndup (p_value + 1, str_ptr + str_len - p_value - 1);
|
|
||||||
|
|
||||||
|
for (i = 0; i < num; ++i) {
|
||||||
|
gchar *vc, *name, *value;
|
||||||
|
|
||||||
|
vc = g_strndup ((gchar *) metadata->data.vorbis_comment.comments[i].entry,
|
||||||
|
metadata->data.vorbis_comment.comments[i].length);
|
||||||
|
|
||||||
|
if (gst_tag_parse_extended_comment (vc, &name, NULL, &value, TRUE)) {
|
||||||
GST_DEBUG ("%s : %s", name, value);
|
GST_DEBUG ("%s : %s", name, value);
|
||||||
gst_vorbis_tag_add (list, name, value);
|
gst_vorbis_tag_add (list, name, value);
|
||||||
g_free (name);
|
g_free (name);
|
||||||
g_free (value);
|
g_free (value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
g_free (vc);
|
||||||
}
|
}
|
||||||
|
|
||||||
gst_tag_list_add (list, GST_TAG_MERGE_REPLACE,
|
gst_tag_list_add (list, GST_TAG_MERGE_REPLACE,
|
||||||
GST_TAG_AUDIO_CODEC, "FLAC", NULL);
|
GST_TAG_AUDIO_CODEC, "FLAC", NULL);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue