What version of Shaka Player are you using? v2.1.0
Can you reproduce the issue with our latest release version? Yes
Can you reproduce the issue with the latest code from master? Yes
Are you using the demo app or your own custom app? Demo app
What browser and OS are you using?
userAgent = Mozilla/5.0 (SMART-TV; Linux; Tizen 2.4.0) AppleWebkit/538.1 (KHTML, like Gecko) SamsungBrowser/1.1 TV Safari/538.1
Info about MSE/EME support:
http://webcache.googleusercontent.com/search?q=cache:fkPhZ4MZgIEJ:developer.samsung.com/tv/develop/tutorials/html5w3c/mse-media-source-extensions-eme-encrypted-media-extensions+&cd=1&hl=es&ct=clnk&gl=es



@avelad, my best guess is that the issue might be with Samsung's implementation of EME v0.1b. Let me consult with a colleague of mine and see if there's any way we can get access to a Tizen TV for testing.
I don't have access to a Tizen TV. Can you recommend a way for me to reproduce and work on a fix?
Hi @joeyparrish ,
I suspect that Samsung implementation has any error on Promises or EME API. Let me check anf I'll back with any news
Please do not close the issue even if it takes a week to respond.
No problem. I am happy to leave the issue open for you.
If you can develop an appropriate polyfill for Tizen, you could send us a PR.
With Tizen TV emulator ClearKey works.
After check the Samsung Forum, I found http://developer.samsung.com/forum/thread/are-html5-mse-and-eme-supported-by-tizen/201/306261?boardName=SDK&startId=zzzzz~
I think that the problem it's the EME implementation of Samsung.
The problem probably is related to: https://github.com/google/shaka-player/issues/752#issuecomment-293054809 with Tizen 3.0, Samsung changes to V8 and update EME implementation...
I don't see anything obviously related in #752 (which is about Safari), and your comment link does not go to a specific comment. Can you clarify?
Tizen 2.4 is based on EME v0.1b (non-object-oriented) with a webkit prefix same a Safari.
Tizen 3.0 works with current polyfill (ClearKey on emulator and ClearKey /Widevine on TV).
According to http://developer.samsung.com/tv/develop/specifications/general-features, Samsung Smart TV 2016 uses Tizen 2.4 and Samsung Smart TV 2017 uses TIzen 3.0
Note:
Tizen 2.4 uses JSC as javascript engine.
Tizen 3.0 uses V8 as javascript engine.
Ah, I see. Thanks for the details!
I don't think we'll be able to look into this until we get our own Tizen TV for testing. In the mean time, a PR is welcome if you figure it out on your own.
Regarding 2015 and 2016 SamsungTVs:
the implementation of EME v0.1b is incomplete/incorrect:
Tizen’s video element implementation declares msPrefixed EME methods and events.
That’s the reason Youtube test page and Shaka Player support page report positive.
But the implementations are empty, and I get an empty challenge on the license request event.
In addition, the drm engine seems to support Playready, and not Widevine as advertised:
you can play Playready DASH (and HSS) content in a “native” Tizen application,
which is an Html + Javascript application that calls native Tizen Javascript Extensions, and can be developed with the Tizen IDE.
Note Shaka v2.0.1 introduced a fix for Toshiba TV, which seemed to have similar problems with eme v0.1b.
But unfortunately it doesn't fix the problems for Samsung TV.