THEO Blog

Going Big Screen: Key Considerations When Reaching Samsung Tizen

Listen to this blog:

In the previous blog posts, we’ve covered how to bring your applications to Samsung Tizen, discussed how to leverage Samsung Tizen's native playback component, AVPlay, as well as its use case limitations, delved deeper into the technical limitations present across different Samsung Tizen versions and models, and took a look at how to utilise your own video player on Tizen and its benefits over the Native approach.

In this last blogpost of a 5-part series on Samsung Tizen, we will lay out the key considerations when picking a media player for your Build-Your-Own approach. Additionally, we will close by summarizing the key takeaways on deciding the most suitable player strategy for Samsung Tizen.

THIS IS A SNIPPET FROM OUR “GOING BIG SCREEN: BRINGING VIDEO TO SAMSUNG TIZEN” GUIDE WHICH YOU CAN DOWNLOAD HERE.

Build-Your-Own Approach: Key Considerations

The most important parameter to take into account when picking a media player for Tizen is the list of platforms and versions which are supported. Most popular libraries are built with web browsers on laptop and mobile in mind. Often the assumption is made all browsers implement all APIs in exactly the same way. Browser implementations can however differ significantly. Also, the Tizen platform and smart TVs in general often have significantly different hardware and use cases compared to standard playback on laptop.

With smart TV platforms being forgotten and not making it into the testing cycle this opens up a risk. For example, the compatibility list of hls.js does not list Tizen, dash.js doesn’t list any platforms at all and only claims to rely on MSE being implemented and Shaka Player only mentions Tizen 2017 models as actively tested and supported. At THEOplayer, we actively support the Tizen platform and have code to handle differences and quirks compared to a standard browser environments in our THEOplayer Web SDK such as handling for limitations in the number of decoders which can be used in parallel, switching from one video codec into another, enabling and disabling DRM, handling for higher bitrates, alternative codecs and HDR content on big screens just to name a few.

The compatibility problem doesn’t just show in regard to testing. As already mentioned earlier, there are still significant differences in the web environment, MSE and EME implementations across different Tizen versions. Where most players assume an always up-to-date API, this is not the case on smart TV platforms such as Tizen for which different models often support older draft specifications only. For example, Tizen 3.0 (models from 2017) makes use of Chromium M47, a version from December 2015 and boasts a November 2015 based MSE implementation and an EME version from February 2016. This is far from the recent specification and can have a significant impact on compatibility. An overview of differences in MSE and EME support for different Tizen models and versions can be found below.

Model
VERSION

WEB
ENGINE

MSE
VERSION

EME
VERSION

NOTABLE
QuiRKS

2015 Models
Tizen 2.3
Webkit
r152340
Dec 2013
(Draft)
Aug 2012
(Draft 0.1b)
Hard to implement DRM
("Promise-bug" in EME)
DRM toggling limitations (SSAI)
Codec switching limitations (SSA)
Only seeking to keyframes
2016 Models
Tizen 2.4
Webkit
r152340
Dec 2013
(Draft)
Aug 2012
(Draft 0.1b)
Same as 2015 models
2017 Models
Tizen 3.0
Chromium
M47
(Dec 2015)
Nov 2015
(Draft)
Feb 2016
(Draft)
DRM toggling limitations (SSAI)
Codec switching limitations (SSAI)
Only seeking to keyframes allowed
2018 Models
Tizen 4.0
Chromium
M56
(Jan 2017)
July 2016
(Draft)
July 2016
(Draft)
Codec switching limitations (SSAI)
2019 Models
Tizen 5.0
Chromium
M63
(Sept 2017)
Nov 2016
(Rec.)
Sep 2017
(Rec.)
Mostly OK
2020 Models
Tizen 5.5
Chromium M69
(sept 2018)
Nov 2016
(Rec.)
Sep 2017
(Rec.)
Mostly OK

 

Deciding on a Player Strategy for Tizen: Key Takeaways

  1. Bringing video efficiently to all different versions of Tizen is a challenge, but your viewers are across a wide range of different Tizen versions, therefore premium OTT video service can mostly not simply ignore these older platforms.
  2. Native playback is available using AVPlay, but it comes at a cost. Where it is often tempting to go with Tizen’s native AVPlay streaming support as it is easy to get started, it is in practice often too limiting for premium OTT video providers and can incur issues due to different support across versions. This becomes especially apparent when your use case includes DRM or SSAI.

  3. You can use a third party, or your own video player on Tizen. MSE and EME make this possible. As there are still a broad variation of different versions of the APIs available, it is crucial that the video player you use is optimized as well for the older versions used in Tizen. Due to the quirks in the Tizen platform and its decoders, it is also crucial to ensure your player optimizes for these in order to avoid hiccups during playback. When picking which player to use, make sure to check compatibility: try to avoid making the choice for a player which does not really support the Tizen versions you want to support unless you are willing to pick up the testing, bug fixing (where even possible) and maintenance internally.

  4. You could use a Hybrid Approach where you leverage a “Build Your Own Video Player” approach, and fall back to AVPlay for other use cases. THEOplayer allows you to configure on which version you want to use the MSE/EME approach, and on which versions you want to leverage AVPlay through a single API for configuration and interaction with other systems such as QoE and QoS monitoring. In practice we see it is most interesting to leverage MSE/EME, especially for later versions of Tizen. For really early versions of Tizen, using a Hybrid Approach allows you to enable AVPlay on those specific old versions where it still makes sense in your target audience. The Hybrid Approach can bring the best of both worlds with extensive capabilities using a BYO video player, while falling back on AVPlay for difficult to support versions.

Choosing your video player approach is subject to careful decision making to ensure all key features are present and compatibility across different versions of Tizen is guaranteed for your use cases. Making the wrong choice in this strategy can cause a significant setback if at a later point in time the player has to be swapped out for a different one.

You can download the complete version of this topic in our “GOING BIG SCREEN: BRINGING VIDEO TO SAMSUNG TIZEN” guide here.

 

Questions about our Tizen support? Contact our THEO experts.

Subscribe by email