[gst-cvs] gst-python: tag: Adds xmp functions mappings

Edward Hervey bilboed at kemper.freedesktop.org
Thu Apr 29 07:09:11 PDT 2010


Module: gst-python
Branch: master
Commit: 697c8e73f7bed536f3a3222bb4b374287ea4b747
URL:    http://cgit.freedesktop.org/gstreamer/gst-python/commit/?id=697c8e73f7bed536f3a3222bb4b374287ea4b747

Author: Thiago Santos <thiago.sousa.santos at collabora.co.uk>
Date:   Wed Apr 28 00:27:43 2010 -0300

tag: Adds xmp functions mappings

Maps gst_tag_list_from_xmp_buffer and
gst_tag_list_to_xmp_buffer

https://bugzilla.gnome.org/show_bug.cgi?id=617068

---

 gst/tag.defs             |   17 +++++++++++++++++
 testsuite/test_libtag.py |   37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 0 deletions(-)

diff --git a/gst/tag.defs b/gst/tag.defs
index 3ee06f4..3aebd02 100644
--- a/gst/tag.defs
+++ b/gst/tag.defs
@@ -253,3 +253,20 @@
   )
 )
 
+(define-function tag_list_from_xmp_buffer
+  (c-name "gst_tag_list_from_xmp_buffer")
+  (return-type "GstTagList*")
+  (parameters
+    '("const-GstBuffer*" "buffer")
+  )
+)
+
+(define-function tag_list_to_xmp_buffer
+  (c-name "gst_tag_list_to_xmp_buffer")
+  (return-type "GstBuffer*")
+  (parameters
+    '("const-GstTagList*" "taglist")
+    '("gboolean" "readonly")
+  )
+)
+
diff --git a/testsuite/test_libtag.py b/testsuite/test_libtag.py
new file mode 100644
index 0000000..9f3131e
--- /dev/null
+++ b/testsuite/test_libtag.py
@@ -0,0 +1,37 @@
+# -*- Mode: Python -*-
+# vi:si:et:sw=4:sts=4:ts=4
+#
+# gst-python - Python bindings for GStreamer
+# Copyright (C) 2010 Thiago Santos <thiago.sousa.santos at collabora.co.uk>
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
+
+from common import gst, TestCase
+from gst import tag
+
+class TesLibTag(TestCase):
+    def testXmp(self):
+        taglist = gst.TagList()
+        taglist['title'] = 'my funny title'
+        taglist['geo-location-latitude'] = 23.25
+
+        xmp = tag.tag_list_to_xmp_buffer (taglist, True)
+        self.assertNotEquals(xmp, None)
+        taglist2 = tag.tag_list_from_xmp_buffer (xmp)
+
+        self.assertEquals(len(taglist2), 2)
+        self.assertEquals(taglist2['title'], 'my funny title')
+        self.assertEquals(taglist2['geo-location-latitude'], 23.25)
+





More information about the Gstreamer-commits mailing list