![]() Judging from a WebKit commit log, they introduced .2_0 for MediaSource: And Shaka Player currently only works with MediaSource. When used with MediaSource, createSession() causes the page to crash and reload. The challenge is that the key system .1_0 seems to be usable only with video.src=foo.m3u8. Parsing the FairPlay tag in HLS to feed EME is trivial. I have written a polyfill that builds a compliant MediaKeys API on top of Safari 10's WebKitMediaKeys. The only way I can see to avoid that is to create a custom event instead like this: I'm also having the following issue in Safari: In _ it throws an error when trying to dispatch the shaka FakeEvent: UNSPECIFIED_EVENT_TYPE_ERR: DOM Events Exception 0: The Event's type was not specified by initializing the event before the method was called. I have tested that Apple sample code with HLS + Fairplay content and it does work in Safari. It appears to me that the flow on Safari is a bit different than on Chrome. This also appears to be different than how Shaka is handling it where the createSession call does not take any arguments and there is a generateRequest call that takes initData. The concatenated init data is passed in the createSession call and then there is no generateRequest call at all. ![]() ![]() I believe this is different from Chrome and other browsers that just require the init data? It looks to me like currently Shaka and the MediaKeys polyfill assumes the needkey event.initData is sufficient.Īfter that it looks like there are some other differences. If you haven't looked at this it would be useful for comparing to the v01b polyfill.įor instance, for FPS on Safari the init data is formed by concatenating the initData from the needkey event with a contentId and an Apple App Cert. But there is sample client code from apple here: if you download the FairPlay Streaming Server SDK. I'm still working on getting you some HLS + Fairplay samples to give you. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |