After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 772527 - tags: Add support for remaining Dublin Core metadata
tags: Add support for remaining Dublin Core metadata
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal enhancement
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-10-06 19:47 UTC by minfrin
Modified: 2018-11-03 12:36 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gstreamer: Support the full set of tags in Dublin Core. (11.12 KB, patch)
2016-10-06 19:47 UTC, minfrin
none Details | Review
gst-plugins-base: Support the full set of tags in Dublin Core. (1.92 KB, patch)
2016-10-06 19:48 UTC, minfrin
reviewed Details | Review
gst-plugins-bad: Parse TDT, TOT and SDT messages from DVB. (8.05 KB, patch)
2016-10-06 19:50 UTC, minfrin
reviewed Details | Review
gstreamer: Support the full set of tags in Dublin Core. (10.01 KB, patch)
2016-10-20 12:46 UTC, minfrin
none Details | Review

Description minfrin 2016-10-06 19:47:22 UTC
Created attachment 337102 [details] [review]
gstreamer: Support the full set of tags in Dublin Core.

Parse TDT, TOT and SDT messages from DVB.

Pass the date and time from TDT into GST_TAG_DATE_TIME, and pass the SDT service name and service provider as GST_TAG_SOURCE and GST_TAG_PUBLISHER.

This patch includes the addition of all missing tags in Dublin Core.
Comment 1 minfrin 2016-10-06 19:48:50 UTC
Created attachment 337103 [details] [review]
gst-plugins-base: Support the full set of tags in Dublin Core.
Comment 2 minfrin 2016-10-06 19:50:07 UTC
Created attachment 337105 [details] [review]
gst-plugins-bad: Parse TDT, TOT and SDT messages from DVB.
Comment 3 Sebastian Dröge (slomo) 2016-10-20 10:08:01 UTC
Review of attachment 337102 [details] [review]:

Maybe these should be moved into libgsttag into a separate namespace for dublin core? But generally seems fine to have them in core I guess, except for:

::: gst/gsttaglist.h
@@ +485,3 @@
+#define GST_TAG_COVERAGE               "coverage"
+/**
+ * GST_TAG_IDENTIFIER:

This seems a bit generic. DUBLIN_CORE_IDENTIFIER maybe?

@@ +505,3 @@
+ * Since: 1.9
+ */
+#define GST_TAG_LANGUAGE               "language"

There's also LANGUAGE_NAME and LANGUAGE_CODE. How is this one different?

@@ +507,3 @@
+#define GST_TAG_LANGUAGE               "language"
+/**
+ * GST_TAG_PUBLISHER:

There already is GST_TAG_PUBLISHER since 1.2

@@ +540,3 @@
+#define GST_TAG_SOURCE                 "source"
+/**
+ * GST_TAG_GENRE:

GST_TAG_GENRE exists since forever already
Comment 4 Sebastian Dröge (slomo) 2016-10-20 10:08:37 UTC
Review of attachment 337103 [details] [review]:

::: gst-libs/gst/tag/gstxmptag.c
@@ +953,3 @@
+  _gst_xmp_schema_add_simple_mapping (schema, GST_TAG_IDENTIFIER,
+      "dc:identifier", GstXmpTagTypeSeq, NULL, NULL);
+  _gst_xmp_schema_add_simple_mapping (schema, GST_TAG_LANGUAGE,

LANGUAGE_NAME or LANGUAGE_CODE?
Comment 5 Sebastian Dröge (slomo) 2016-10-20 10:09:39 UTC
Review of attachment 337105 [details] [review]:

::: gst/mpegtsdemux/mpegtsbase.c
@@ +1205,3 @@
+    return FALSE;
+
+  if (G_UNLIKELY (GST_DEBUG_IS_ENABLED ())) {

Usually we just put these into #ifndef GST_DISABLE_GST_DEBUG blocks
Comment 6 minfrin 2016-10-20 12:16:49 UTC
> Maybe these should be moved into libgsttag into a separate
> namespace for dublin core? But generally seems fine to have
> them in core I guess, except for:

Right now we support roughly half of Dublin Core, this patch adds the other half following the same conventions as already established.

> This seems a bit generic. DUBLIN_CORE_IDENTIFIER maybe?

The formal definition is here:

http://dublincore.org/documents/dces/

"An unambiguous reference to the resource within a given context. Recommended best practice is to identify the resource by means of a string conforming to a formal identification system."

Seems Dublin Core expects this to be generic.

> There's also LANGUAGE_NAME and LANGUAGE_CODE. How is this one different?

The formal defition of GST_TAG_LANGUAGE is an RFC4646 language tag. I am not seeing that LANGUAGE_NAME or LANGUAGE_CODE have such a strict definition.

> There already is GST_TAG_PUBLISHER since 1.2

Will fix.

> GST_TAG_GENRE exists since forever already

Will fix.
Comment 7 minfrin 2016-10-20 12:46:22 UTC
Created attachment 338097 [details] [review]
gstreamer: Support the full set of tags in Dublin Core.

Removed duplicated elements, clarified format of GST_TAG_LANGUAGE to indicate RFC 4646.
Comment 8 Sebastian Dröge (slomo) 2016-10-20 13:44:57 UTC
(In reply to minfrin from comment #6)

> > This seems a bit generic. DUBLIN_CORE_IDENTIFIER maybe?
> 
> The formal definition is here:
> 
> http://dublincore.org/documents/dces/
> 
> "An unambiguous reference to the resource within a given context.
> Recommended best practice is to identify the resource by means of a string
> conforming to a formal identification system."
> 
> Seems Dublin Core expects this to be generic.

Add something to the name to make it dublin core specific then :)

> > There's also LANGUAGE_NAME and LANGUAGE_CODE. How is this one different?
> 
> The formal defition of GST_TAG_LANGUAGE is an RFC4646 language tag. I am not
> seeing that LANGUAGE_NAME or LANGUAGE_CODE have such a strict definition.

LANGUAGE_CODE is according to ISO-639-2 or ISO-639-1. RFC4646 seems to be a superset of that.
Comment 9 GStreamer system administrator 2018-11-03 12:36:38 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/191.