diff options
author | Edgard Lima <edgard.lima@indt.org.br> | 2008-02-28 10:41:56 +0000 |
---|---|---|
committer | Edgard Lima <edgard.lima@indt.org.br> | 2008-02-28 10:41:56 +0000 |
commit | 8efb5d2012bc57636016f3dbac523d732bc572ec (patch) | |
tree | fbcba969bd61a60f71c54ec3e606f4a1c79f0d5a /tests | |
parent | 3bba6b5f9476c9e07f97ea236b55fd195d3d504c (diff) | |
download | gst-plugins-bad-8efb5d2012bc57636016f3dbac523d732bc572ec.tar.gz gst-plugins-bad-8efb5d2012bc57636016f3dbac523d732bc572ec.tar.bz2 gst-plugins-bad-8efb5d2012bc57636016f3dbac523d732bc572ec.zip |
Map Date-Time and GPS tags and Convert from EXIF to XMP Datatime as local time (those changes has been done in previo...
Original commit message from CVS:
Map Date-Time and GPS tags and Convert from EXIF to XMP Datatime as local time (those changes has been done in previous comit but had to be revert in 2008-02-10 due to frozen)
Diffstat (limited to 'tests')
-rw-r--r-- | tests/icles/metadata_editor.c | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/tests/icles/metadata_editor.c b/tests/icles/metadata_editor.c index 02212bb2..e8bef14b 100644 --- a/tests/icles/metadata_editor.c +++ b/tests/icles/metadata_editor.c @@ -137,6 +137,30 @@ GString *filename = NULL; */ static void +dump_tag_buffer(const char *tag, guint8 * buf, guint32 size) +{ + guint32 i; + printf("\nDumping %s (size = %u)\n\n", tag, size); + + for(i=0; i<size; ++i) { + + if (i % 16 == 0) + printf("%04x:%04x | ", i >> 16, i & 0xFFFF); + + printf("%02x", buf[i]); + + if (i % 16 != 15) + printf(" "); + else + printf("\n"); + + } + + printf("\n\n"); + +} + +static void insert_tag_on_tree (const GstTagList * list, const gchar * tag, gpointer user_data) { @@ -150,6 +174,13 @@ insert_tag_on_tree (const GstTagList * list, const gchar * tag, if (gst_tag_get_type (tag) == G_TYPE_STRING) { if (!gst_tag_list_get_string_index (list, tag, 0, &str)) g_assert_not_reached (); + } else if ( gst_tag_get_type (tag) == GST_TYPE_BUFFER ) { + const GValue *val = NULL; + GstBuffer *buf; + val = gst_tag_list_get_value_index (list, tag, 0); + buf = gst_value_get_buffer (val); + dump_tag_buffer(tag, GST_BUFFER_DATA(buf), GST_BUFFER_SIZE(buf)); + str = g_strdup("It has been printed to stdout"); } else { str = g_strdup_value_contents (gst_tag_list_get_value_index (list, tag, 0)); } @@ -215,7 +246,8 @@ change_tag_list (GstTagList ** list, const gchar * tag, const gchar * value) } break; default: - g_printerr ("Tags of type '%s' are not supported yet.\n", + g_printerr ("Tags of type '%s' are not supported yet for editing" + " by this application.\n", g_type_name (type)); break; } |