FairPlay with MPEG DASH / CENC

It seems that the only supported encryption format is HLS with SAMPLE-AES, which implies AES-128 in CBC mode.

Is it at all possible that other cipher modes could be supported, including AES-128 in CTR mode? This would make it possible to support streaming of MPEG DASH streams encrypted with MPEG Common Encryption (CENC), which would be a great way to avoid having to store two versions of the streams on the origin server (one for FairPlay streaming, and one for all other clients). Maybe there are some #EXT-X-KEY:METHOD=*** values that could be used to indicate MPEG CENC (ISO/IEC 23001-7) instead of SAMPLE-AES.

There's a hint that this should be supported: it looks like the Netflix app on OSX Yosemite streams FairPlay-protected content using MPEG DASH (also, the Netflix app works on Safari on Yosemite, which means that FairPlay streaming through HTML5 should work there, but according to the WWDC session video on FairPlay Streaming, only El Capitan claims to support it).

Replies

It's sad that apple is only willing to work with Netflix at the moment with FairPlay in safari using MPEG-DASH.


HLS seems to use this DRM so far:

"com.apple.fps.1_0"


Netflix Uses:

"com.apple.fps.2_0"


I'm not sure if one drm is made for dash or hls or if they can do both. There are a lot of variations on that string that return true in safari.

WebKitMediaKeys.isTypeSupported("com.apple.fps.2_1", "video/mp4") = true

WebKitMediaKeys.isTypeSupported("com.apple.fps.2_9", "video/mp4") = true

etc..


If you gab a piece of encrypted content from netflix using safari you'll see that Netflix content is clearly Dash content. It contains 3 PSSH boxes.


The first PSSH is Playready with a systemID of:

9A 04 F0 79 98 40 42 86 AB 92 E6 5B E0 88 5F 95


Second PSSH is Widevine with a systemId of:

ED EF 8B A9 79 D6 4A CE A3 C8 27 DC D5 1D 21 ED


Third PSSH is what i am guessing to be the FairPlay systemId:

29 70 1F E4 3C C7 4A 34 8C 5B AE 90 C7 43 9A 47


Would be nice if Apple wouldn't pretend that they don't support Fairplay DRM for Dash in Safari for everyone except Netflix.


... end of rant ...