From 74fb627a087af3d6da3dd6b3c5f8944f630f3f72 Mon Sep 17 00:00:00 2001 From: Mark Nauwelaerts Date: Mon, 6 Dec 2010 19:00:28 +0100 Subject: [PATCH] jpegparse: try to convert comment tag to UTF-8 --- gst/jpegformat/gstjpegparse.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/gst/jpegformat/gstjpegparse.c b/gst/jpegformat/gstjpegparse.c index 4ec736c..8dbc511 100644 --- a/gst/jpegformat/gstjpegparse.c +++ b/gst/jpegformat/gstjpegparse.c @@ -562,16 +562,25 @@ gst_jpeg_parse_read_header (GstJpegParse * parse, GstBuffer * buffer) case COM:{ /* read comment and post as tag */ const guint8 *comment = NULL; + const gchar *comm; + const gchar *env_vars[] = { "GST_JPEG_TAG_ENCODING", + "GST_TAG_ENCODING", NULL + }; if (!gst_byte_reader_get_uint16_be (&reader, &size)) goto error; if (!gst_byte_reader_get_data (&reader, size - 2, &comment)) goto error; - if (!parse->priv->tags) - parse->priv->tags = gst_tag_list_new (); - gst_tag_list_add (parse->priv->tags, GST_TAG_MERGE_REPLACE, - GST_TAG_COMMENT, comment, NULL); + comm = (const gchar *) comment; + comm = gst_tag_freeform_string_to_utf8 (comm, size - 2, env_vars); + + if (comm) { + if (!parse->priv->tags) + parse->priv->tags = gst_tag_list_new (); + gst_tag_list_add (parse->priv->tags, GST_TAG_MERGE_REPLACE, + GST_TAG_COMMENT, comm, NULL); + } break; } -- 2.7.4