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 797231 - protection: Add a new definition for unspecified system protection
protection: Add a new definition for unspecified system protection
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal enhancement
: 1.15.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks: 765275
 
 
Reported: 2018-10-01 11:43 UTC by y.bandou
Modified: 2018-10-04 08:36 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add a new definition for unspecified system protection (955 bytes, patch)
2018-10-01 11:43 UTC, y.bandou
none Details | Review
Add a new definition for unspecified system protection (1.77 KB, patch)
2018-10-02 10:36 UTC, y.bandou
none Details | Review
Add a new definition for unspecified system protection (2.35 KB, patch)
2018-10-02 12:36 UTC, y.bandou
none Details | Review
Add a new definition for unspecified system protection (2.36 KB, patch)
2018-10-02 12:53 UTC, y.bandou
committed Details | Review

Description y.bandou 2018-10-01 11:43:46 UTC
Created attachment 373816 [details] [review]
Add a new definition for unspecified system protection

In some cases, the UUID is not specified as in WebM spec.
Comment 1 Philippe Normand 2018-10-01 14:26:56 UTC
This approach sounds good to me. Probably someone would like to bikeshed on the #define string value though :)
Comment 2 Xabier Rodríguez Calvar 2018-10-02 06:48:28 UTC
lgtm
Comment 3 Sebastian Dröge (slomo) 2018-10-02 07:39:03 UTC
Comment on attachment 373816 [details] [review]
Add a new definition for unspecified system protection

Generally seems fine to me but this needs more documentation. How is this supposed to be used, example uses, how would the application/protection-system know how to handle such protected data, etc
Comment 4 y.bandou 2018-10-02 10:36:52 UTC
Created attachment 373826 [details] [review]
Add a new definition for unspecified system protection

More doc.

About how the application handles such protected data, I don't think it should be documented here.
Comment 5 Sebastian Dröge (slomo) 2018-10-02 11:03:25 UTC
(In reply to y.bandou from comment #4)
> Created attachment 373826 [details] [review] [review]
> Add a new definition for unspecified system protection
> 
> More doc.
> 
> About how the application handles such protected data, I don't think it
> should be documented here.

It should be documented at least that the application has to have external information about how and with which actual protection system it handles the data. And maybe mention the webm case as an example.

Without this, this addition is kind of useless as nobody would know what it's for and how it's supposed to be used :)
Comment 6 y.bandou 2018-10-02 12:36:00 UTC
Created attachment 373827 [details] [review]
Add a new definition for unspecified system protection
Comment 7 Sebastian Dröge (slomo) 2018-10-02 12:39:06 UTC
Review of attachment 373827 [details] [review]:

Seems fine to me
Comment 8 Xabier Rodríguez Calvar 2018-10-02 12:40:44 UTC
Review of attachment 373827 [details] [review]:

::: gst/gstprotection.h
@@ +42,3 @@
+ * metadata, as encrypted WebM.
+ * This define is used to set the value of the "system_id" field in GstProtectionEvent,
+ * with this value, the application will use an external information to chose which

choose

@@ +46,3 @@
+ *
+ * Example: The matroskademux uses this value in the case of encrypted WebM,
+ * the application will chose the appropriate protection system based on the information

choose
Comment 9 y.bandou 2018-10-02 12:53:30 UTC
Created attachment 373828 [details] [review]
Add a new definition for unspecified system protection

Thanks Calvaris.
Comment 10 Thibault Saunier 2018-10-03 15:20:06 UTC
commit 05a3da347b3b8dbaf470793dc3f9ebb23e6fc67f (HEAD -> master, origin/master, origin/HEAD)
Author: Yacine Bandou <yacine.bandou@softathome.com>
Date:   Mon Oct 1 12:11:47 2018 +0200

    protection: Add a new definition for unspecified system protection

    In some cases the system protection ID is not present in the contents
    or in their metadata.
    This define is used to set the value of the "system_id" field in GstProtectionEvent,
    with this value, the application will use an external information to choose which
    protection system to use.

    Example: The matroskademux uses this value in the case of encrypted WebM,
    the application will choose the appropriate protection system based on the information
    received through EME API.

    https://bugzilla.gnome.org/show_bug.cgi?id=797231
Comment 11 Tim-Philipp Müller 2018-10-03 15:37:37 UTC
> Probably someone would like to bikeshed on
> the #define string value though :)

Someone said my name?


> +#define GST_PROTECTION_UNSPECIFIED_SYSTEM_ID "unspecified.gstreamer.org"

Can we change that to something else? Maybe just "unspecified" or "unspecified.gstreamer" or "unspecified.gstreamer.freedesktop.org" - we don't even have control of gstreamer.org :)
Comment 12 Thibault Saunier 2018-10-03 16:19:55 UTC
AH, I see your point, let's say `unspecified.gstreamer.freedesktop.org` and be done.
Comment 13 Thibault Saunier 2018-10-03 16:22:31 UTC
Or `unspecified-system-id` actually? (I didn't want to start bikeshedding but we are into that it seem xD)
Comment 14 Tim-Philipp Müller 2018-10-03 17:13:41 UTC
Both work for me.

If there's no reason/precedent for the domain-type notation I'd go for "unspecified-system-id".
Comment 15 Thibault Saunier 2018-10-04 08:36:40 UTC
Followed up with:

commit b89b1802df44829a0c034db5807bc893ad3c7774 (HEAD -> master, origin/master, origin/HEAD)
Author: Thibault Saunier <tsaunier@igalia.com>
Date:   Wed Oct 3 18:23:01 2018 +0200

    protection: Fix the string to define unspecified system id

    Setting it to "unspecified-system-id".