mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-28 20:05:38 +00:00
ext/taglib/gstid3v2mux.cc: is still sub-optimal though, since we don't retain or extract the comment descriptions pro...
Original commit message from CVS: * ext/taglib/gstid3v2mux.cc: Fix writing of comment frames (should be COMM not TCOM), is still sub-optimal though, since we don't retain or extract the comment descriptions properly (#334375, also see #334375).
This commit is contained in:
parent
c22616258e
commit
1adb9122d7
2 changed files with 41 additions and 1 deletions
|
@ -1,3 +1,11 @@
|
|||
2006-07-26 Tim-Philipp Müller <tim at centricular dot net>
|
||||
|
||||
* ext/taglib/gstid3v2mux.cc:
|
||||
Fix writing of comment frames (should be COMM not TCOM),
|
||||
is still sub-optimal though, since we don't retain or
|
||||
extract the comment descriptions properly (#334375,
|
||||
also see #334375).
|
||||
|
||||
2006-07-26 Tim-Philipp Müller <tim at centricular dot net>
|
||||
|
||||
* gst/wavparse/gstwavparse.c:
|
||||
|
|
|
@ -60,6 +60,7 @@
|
|||
#include <textidentificationframe.h>
|
||||
#include <uniquefileidentifierframe.h>
|
||||
#include <attachedpictureframe.h>
|
||||
#include <commentsframe.h>
|
||||
#include <id3v2tag.h>
|
||||
#include <gst/tag/tag.h>
|
||||
|
||||
|
@ -444,6 +445,37 @@ add_image_tag (ID3v2::Tag * id3v2tag, const GstTagList * list,
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
add_comment_tag (ID3v2::Tag * id3v2tag, const GstTagList * list,
|
||||
const gchar * tag, guint num_tags, const gchar * unused)
|
||||
{
|
||||
TagLib::StringList string_list;
|
||||
guint n;
|
||||
|
||||
GST_LOG ("Adding comment frames");
|
||||
for (n = 0; n < num_tags; ++n) {
|
||||
gchar *s = NULL;
|
||||
|
||||
if (gst_tag_list_get_string_index (list, tag, n, &s) && s != NULL) {
|
||||
ID3v2::CommentsFrame * f;
|
||||
gchar *desc;
|
||||
|
||||
GST_LOG ("%s[%u] = '%s'", tag, n, s);
|
||||
f = new ID3v2::CommentsFrame (String::UTF8);
|
||||
|
||||
/* FIXME: we should somehow try to preserve the original descriptions */
|
||||
desc = g_strdup_printf ("c%u", n);
|
||||
f->setDescription (desc);
|
||||
g_free (desc);
|
||||
|
||||
f->setText (s);
|
||||
g_free (s);
|
||||
|
||||
id3v2tag->addFrame (f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
add_text_tag (ID3v2::Tag * id3v2tag, const GstTagList * list,
|
||||
const gchar * tag, guint num_tags, const gchar * frame_id)
|
||||
|
@ -485,9 +517,9 @@ static const struct
|
|||
GST_TAG_ARTIST, add_text_tag, "TPE1"}, {
|
||||
GST_TAG_TITLE, add_text_tag, "TIT2"}, {
|
||||
GST_TAG_ALBUM, add_text_tag, "TALB"}, {
|
||||
GST_TAG_COMMENT, add_text_tag, "TCOM"}, {
|
||||
GST_TAG_COPYRIGHT, add_text_tag, "TCOP"}, {
|
||||
GST_TAG_GENRE, add_text_tag, "TCON"}, {
|
||||
GST_TAG_COMMENT, add_comment_tag, ""}, {
|
||||
GST_TAG_DATE, add_date_tag, ""}, {
|
||||
GST_TAG_IMAGE, add_image_tag, ""}, {
|
||||
GST_TAG_PREVIEW_IMAGE, add_image_tag, ""}, {
|
||||
|
|
Loading…
Reference in a new issue