1 From ae1068e2e51670519b6730107a724a0d2c354cfd Mon Sep 17 00:00:00 2001
2 From: Thiago Santos <thiago.sousa.santos@collabora.co.uk>
3 Date: Mon, 18 Apr 2011 23:28:13 -0300
4 Subject: [PATCH] tag: xmp: Add Iptc4xmpExt schema support
6 Adds Iptc4xmpExt schema with country, city and sublocation
9 gst-libs/gst/tag/gstxmptag.c | 21 +++++++++++++++++++++
10 1 files changed, 21 insertions(+), 0 deletions(-)
12 diff --git a/gst-libs/gst/tag/gstxmptag.c b/gst-libs/gst/tag/gstxmptag.c
13 index 296804a..a85ccf4 100644
14 --- a/gst-libs/gst/tag/gstxmptag.c
15 +++ b/gst-libs/gst/tag/gstxmptag.c
16 @@ -51,6 +51,7 @@ static const gchar *schema_list[] = {
24 @@ -1007,6 +1008,24 @@ _init_xmp_tag_map (gpointer user_data)
25 GstXmpTagTypeSimple, NULL, NULL);
26 _gst_xmp_add_schema ("Iptc4xmpCore", schema);
28 + /* iptc4xmpext schema */
29 + schema = gst_xmp_schema_new ();
30 + xmpinfo = gst_xmp_tag_create (NULL, "Iptc4xmpExt:LocationShown",
31 + GstXmpTagTypeStruct, NULL, NULL);
32 + xmpinfo->children = g_slist_prepend (xmpinfo->children,
33 + gst_xmp_tag_create (GST_TAG_GEO_LOCATION_SUBLOCATION,
34 + "LocationDetails:Sublocation", GstXmpTagTypeSimple, NULL, NULL));
36 + g_slist_prepend (xmpinfo->children,
37 + gst_xmp_tag_create (GST_TAG_GEO_LOCATION_CITY,
38 + "LocationDetails:City", GstXmpTagTypeSimple, NULL, NULL));
40 + g_slist_prepend (xmpinfo->children,
41 + gst_xmp_tag_create (GST_TAG_GEO_LOCATION_COUNTRY,
42 + "LocationDetails:Country", GstXmpTagTypeSimple, NULL, NULL));
43 + _gst_xmp_schema_add_mapping (schema, xmpinfo);
44 + _gst_xmp_add_schema ("Iptc4xmpExt", schema);
49 @@ -1031,6 +1050,7 @@ static const GstXmpNamespaceMatch ns_match[] = {
50 {"xap", "http://ns.adobe.com/xap/1.0/"},
51 {"photoshop", "http://ns.adobe.com/photoshop/1.0/"},
52 {"Iptc4xmpCore", "http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/"},
53 + {"Iptc4xmpExt", "http://iptc.org/std/Iptc4xmpExt/2008-02-29/"},
57 @@ -1251,6 +1271,7 @@ gst_tag_list_from_xmp_buffer (const GstBuffer * buffer)
60 {"Iptc4xmpCore", NULL},
61 + {"Iptc4xmpExt", NULL},