[Bug 770107] qtdemux: reports only one encryption system even if it can support more than one

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sun May 21 11:22:02 UTC 2017


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

Tim-Philipp Müller <t.i.m at zen.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #352261|none                        |needs-work
             status|                            |

--- Comment #19 from Tim-Philipp Müller <t.i.m at zen.co.uk> ---
Comment on attachment 352261
  --> https://bugzilla.gnome.org/attachment.cgi?id=352261
1/3 protection: added function to filter system ids

Looks fine, just some minor niggles:

> 
>+gchar **
>+gst_protection_filter_systems_by_available_decryptors (const gchar **
>+    system_identifiers)
>+{

Need a gtk-doc blurb here for the new API with 'Since: 1.14' marker at end, and
add it to the -sections.txt file in docs/gst/ 

>+  GList *decryptors, *walk;
>+  gchar **retval;
>+  guint i = 0, decryptors_number;
>+
>+  decryptors =
>+      gst_element_factory_list_get_elements (GST_ELEMENT_FACTORY_TYPE_DECRYPTOR,
>+      GST_RANK_MARGINAL);
>+
>+  decryptors_number = g_list_length (decryptors);
>+  retval = g_new (gchar *, decryptors_number + 1);
>+
>+  GST_TRACE ("found %u decrytors", decryptors_number);
>+
>+  for (walk = decryptors; walk; walk = g_list_next (walk)) {
>+    GstElementFactory *fact = (GstElementFactory *) walk->data;
>+
>+    const char *found_sys_id =
>+        gst_protection_factory_check (fact, system_identifiers);
>+    GST_TRACE ("factory %s is valid for %s", GST_OBJECT_NAME (fact),
>+        found_sys_id);

Newline after variable declaration above please, and you can probably use
GST_DEBUG or GST_LOG here, unless this is called a lot.


>--- a/gst/gstprotection.h
>+++ b/gst/gstprotection.h
>@@ -71,5 +71,8 @@ GstProtectionMeta * gst_buffer_add_protection_meta (GstBuffer * buffer,
> GST_EXPORT
> const gchar * gst_protection_select_system (const gchar ** system_identifiers);
> 
>+gchar ** gst_protection_filter_systems_by_available_decryptors (
>+    const gchar ** system_identifiers);
>+

This needs a GST_EXPORT, and you'll also need to run 'make update-exports'
(there should be a new entry in the win32 .def file for the new function).

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list