Playback Strategies

As part of the configuration of Bigscreen Player, a 'playback strategy' should be provided.

There are three options available:

  • msestrategy
  • nativestrategy
  • basicstrategy

Your app should write this globally to the window before initialising Bigscreen Player. This enables only the required media player code to be loaded. For example, if MSE playback is not needed, the dashjs library does not have to be loaded.

window.bigscreenPayer.playbackStrategy = 'msestrategy' // OR 'nativestrategy' OR 'basicstategy'

The player will require in the correct strategy file at runtime.

MSE Strategy

The MSE strategy utilises the open source dashjs library. Dashjs handles much of the playback, and the strategy interacts with this to provide a consistent interface. No other dependencies are requried.

Native Strategy

We have migrated TAL media player implementations into the Native Strategy, so that you can play media on devices that do not support Media Source Extensions without TAL. So far there is support for playback via:

  • HTML5
  • CEHTML
  • SAMSUNG_MAPLE
  • SAMSUNG_STREAMING
  • SAMSUNG_STREAMING_2015

This requires additional config, to select which implementation to use and indicate the device's live playback capability:

window.bigscreenPlayer.liveSupport: 'seekable', // OR 'none' OR 'playable' OR 'restartable'; defaults to 'playable'
window.bigscreenPlayer.mediaPlayer: 'html5' // OR 'cehtml'; defaults to 'html5'

Basic Strategy

This strategy is similar to native, in that it relies on the browser's media element to handle play back of the source provided. It is intended to be a lightweight wrapper around standard HTML5 media playback. It is media element event driven, and contains none of the workarounds (such as overrides and sentinels) that the native strategy does.