<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><blockquote type="cite"><div>On Jun 9, 2014, at 3:56 PM, Brendan Long <<a href="mailto:self@brendanlong.com">self@brendanlong.com</a>> wrote:</div><br class="Apple-interchange-newline"><div>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<div text="#000000" bgcolor="#FFFFFF">
I'm looking into <a href="https://dvcs.w3.org/hg/html-media/raw-file/default/encrypted-media/encrypted-media.html">EME</a>
and something I've been asked to investigate is <a href="http://www.microsoft.com/playready/documents/default.aspx#CDMSpec">Microsoft's
proposed CDMi interface</a>, and if we could use it in WebKit. The
idea is that we would expose a few common interfaces (see page 12 of
the PDF at that link), like "Cdm_MediaKeys(wchar_t *keySystem)"
constructor, "createSession(wchar_t* type, const unsigned char
*initData, const unsigned char *AppData)" to create a CDM session,
etc. The advantage of this would be that we could create CDMs for
each platform and then re-use them in multiple browsers.<br>
<br>
Is there any interest in this in WebKit? I'm starting to look
through the code to see how it could be done (presumably implement
CDMPrivate / CDMPrivateInterface to use CDMs matching this
interface), but I figured I'd go to the source and see if anyone has
looked into doing this before.<br></div></div></blockquote><div><br></div><div>I haven’t seen this document before, but after a brief look it seems that implementing a new CDMPrivate and CDMSession would be the best way to add support for this CDMi interface.</div><div><br></div><div>It does look like the CDMi module implements a lot of the platform-independant parts of the EME spec (whereas CDMPrivate and CDMSession are the platform-specific parts), so there may be some redundant logic. And we may need to expose some new methods from CDMSession -> MediaKeySession, e.g. to change the MediaKeySession’s readyState. Apart from that, this looks doable.</div><div><br></div><div>-Jer</div><br><blockquote type="cite"><div><div text="#000000" bgcolor="#FFFFFF">
Thanks,<br>
Brendan Long<br>
CableLabs, Inc.<br>
</div>
_______________________________________________<br>webkit-dev mailing list<br><a href="mailto:webkit-dev@lists.webkit.org">webkit-dev@lists.webkit.org</a><br>https://lists.webkit.org/mailman/listinfo/webkit-dev<br></div></blockquote></div><br></body></html>