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

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Aug 18 17:50:43 UTC 2016


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

            Bug ID: 770107
           Summary: [qtdemux] reports only one encryption system even if
                    it can support more than one
    Classification: Platform
           Product: GStreamer
           Version: 1.0.8
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-good
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: calvaris at igalia.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Imagine a file that is encrypted with more than one encryption system, say
Widevine, PlayReady and Clearkey. We have decryptors for two of them available.
Qtdemux will select the first factory that can provide a decryptor that the
stream reported it is encrypted with (this happens in
gst_protection_select_system).

In some cases it can be a bad idea because even when the file claims that it
supports three encryption systems, the user should be who decides with which of
those systems it wants to decrypt, meaning that the stream should provide caps
with three structures, one of each stream if those can be used.

How I found that this is a problem: YouTube EME tests. Many files used in those
tests are encrypted for the three systems I mentioned above and used
indistinctly in different tests for different key systems. It can happen that
the same file is used for PlayReady and ClearKey tests, for example. If we
always select ClearKey decryptor because we select the first that matches and
the PlayReady test won't provide a key for it, we are screwed :)

As I said, I think the solution is providing more than one structure at the
caps for the outgoing stream. This will be a nightmare in WebKit too, but life
sucks sometimes ;)

-- 
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