Radiant Media Player

Flash support (deprecated)



Documentation sections


Deprecating Flash support in Radiant Media Player 4

Radiant Media Player has always been an HTML5-first web media player. When we started development of Radiant Media Player in late 2014 it made sense to add an advanced Flash fallback providing a unified API between HTML5 & Flash. As Flash becomes widely deprecated in the industry we will progressively phase out Flash of our player. This is a good thing for everyone.

On an advertisement point of view on January 4, 2017 Google announced the end of Flash support in the IMA SDK by June 1, 2017. They leave this note:

We strongly encourage all publishers still using the Flash SDK to migrate to the HTML5 SDK. We also strongly encourage advertisers still trafficking Flash VPAID ads to migrate those ads to JavaScript VPAID.

Over the past few months we have seen a significant drop in Flash usage by Radiant Media Player customers. In Q4 2016 Flash only represented 10% of the traffic we saw through our player - we expect this to rapidly fall under 5% in 2017.

Following Google lead Radiant Media Player 4 will gradually stop supporting Flash with the below schedule:

  • On February 20, 2017 Radiant Media Player 4 is released. Flash fallback support will be limited to a HLS to Flash fallback for legacy desktop browsers (the main use-case is to support Internet Explorer 11 on Windows 7).
  • On June 1, 2017 Flash VPAID ads will stop working in our HTML5 player. Radiant Media Player Flash fallback will still be available but we will stop all development for Flash and support will not be guaranteed anymore.
  • When Microsoft stops supporting Internet Explorer 11 on Windows 7 we will completely remove Flash from Radiant Media Player.

Video ads through the Flash Google IMA SDK are still available (player version 4.5.8+) in Radiant Media Player 4 Flash fallback but as the Flash Google IMA SDK becomes deprecated we cannot guarantee they will continue to work or provide support for using them. Essentially VAST3, VAST2, Flash VPAID and VMAP tags should be supported.


Radiant Media Player 4 Flash fallback

We have ported a lightweight version of Radiant Media Player 3 Flash fallback into Radiant Media Player 4. Supported features for this lightweight Flash fallback are limited to essential player features. This is mainly provided to support HLS streaming with legacy Desktop browsers - mainly Internet Explorer 11 on Windows 7 (those legacy browsers do not support Media Source Extensions or native HLS streaming so HLS to Flash is the only option left).

For HLS on-demand streaming we still recommend to provide a MP4 progressive download URL alternative to the player so that we can avoid Flash all together.


Supported HLS features in Flash fallback (version 4.5.8+)

  • HLS to Flash fallback for live, DVR and on-demand video
  • Multi-audio tracks
  • AES-128 decryption
  • Automatic adaptive bitrate streaming and manual bitrate selection
  • Error resilience: retry mechanism on I/O errors, recovery mechanism on badly segmented TS streams, failover on alternate redundant streams

Make sure to comply with cross-domain policy for HLS streaming to Flash to avoid common playback issues


Supported HLS M3U8 tags in Flash fallback (version 4.5.8+)

  • #EXTM3U
  • #EXTINF
  • #EXT-X-STREAM-INF (Multiple bitrate)
  • #EXT-X-ENDLIST (VoD / Live playlist)
  • #EXT-X-MEDIA-SEQUENCE
  • #EXT-X-TARGETDURATION
  • #EXT-X-DISCONTINUITY
  • #EXT-X-DISCONTINUITY-SEQUENCE
  • #EXT-X-KEY (AES-128 method supported only)
  • #EXT-X-BYTERANGE

Supported player API methods in Flash fallback (version 4.5.8+)

  • getReady method
  • getPlayerVersion method
  • getPlayerMode method
  • getStreamType method
  • getTimeReady method
  • resize method
  • getPlayerWidth method
  • getPlayerHeight method
  • setPlayerSize method
  • getSrc method
  • getPoster method
  • destroy method

All other player methods are not available with Radiant Media Player 4 Flash fallback. Refer to our player API documentation for details about the above API methods.


Supported player API events in Flash fallback (version 4.5.13+)

  • ready
  • loadstart
  • durationchange
  • loadedmetadata
  • timeupdate
  • seeking
  • seeked
  • volumechange
  • progress
  • enterfullscreen
  • exitfullscreen
  • play
  • pause
  • playing
  • waiting
  • ended
  • error
  • adstarted
  • adclick
  • aderror
  • adimpression
  • adloaded
  • adcomplete
  • adalladscompleted
  • adcontentpauserequested
  • adcontentresumerequested

Supported player skins in Flash fallback

Only one skin is provided for Radiant Media Player 4 Flash fallback. It cannot be customised.


Available player settings in Flash fallback (version 4.5.8+)

  • ccFiles
  • audioOnly
  • loop
  • initialVolume
  • delayToFade
  • scaleMode
  • poster
  • endOfVideoPoster
  • posterScaleMode
  • autoplay
  • muted
  • permanentMuted
  • isLive
  • isLiveDvr
  • logo
  • logoLoc
  • logoPosition
  • logoWatermark
  • hideControls
  • hideCentralPlayButton
  • hideSeekBar
  • hideFullscreen

Refer to our general player settings docs for details about the above settings.


Available video ads player settings in Flash fallback (version 4.5.8+)

  • ads
  • adTagUrl
  • adCountDown
  • adTagWaterfall
  • adMaxNumRedirects
  • adUseStyledNonLinearAds
  • adLoadMediaTimeout
  • adFlashVpaidVersion

Video ads support in Flash include VAST 2 & 3, VPAID 1&2 & VMAP. Refer to our video ads docs for details about the above settings.

Our Flash video ads implementation is based on the deprecated Flash IMA SDK v3 - since this has been deprecated by Google on July 5, 2017 we cannot guarantee support for Flash video ads.


Flash-only player settings (version 4.5.8+)

The following settings only apply to Radiant Media Player 4 Flash fallback:

  • flashFallBack: Boolean - enable or disable flash fallback - default: true
  • flashWMode: String - set Flash Window Mode, possible values are 'window', 'direct', 'opaque', 'transparent', 'gpu' - default: 'direct'
  • flashHlsMinbufferlength: Number - minimum buffer length in seconds that needs to be reached before playback can start (after seeking) or restart (in case of empty buffer). If set to -1 some heuristics based on past metrics are used to define an accurate value that should prevent buffer to stall - default: -1
  • flashHlsLowbufferlength: Number - low buffer threshold in seconds. When crossing down this threshold, HLS will switch to buffering state, usually the player will report this buffering state through a buffering statement. Playback may still continue - default: 3
  • flashHlsMaxbufferlength: Number - maximum buffer length in seconds. The player will try to never exceed this value for its buffer - default: 60
  • flashHlsCapLevelToStage: Boolean - this setting limits bitrates usable in auto-quality by the stage dimensions (width and height) - default: false
  • flashHlsCaplevelonfpsdrop: Boolean - this setting causes an automatic level switch down when frame rate loss is considered too high by player - default: true
  • flashHlsStartFromLevel: Number - from 0 to 1, indicates the preferred initial bitrate - default: -1
    • 0 means lowest non-audio bitrate is used
    • 1 means highest bitrate is used
    • 0.5 means the closest to the middle bitrate will be selected and used first
    • -1 means automatic start level selection, playback will start from level matching download bandwidth (determined from download of first segment)
    • -2 means playback will start from the first level appearing in Manifest (regardless of its bitrate)
  • flashHlsAutoStartMaxDuration: Number - max fragment loading duration (bandwidth test + fragment loading) in automatic start level selection mode (in milliseconds) - default: -1
    • -1 means max duration is not capped
    • greater than 0 means max duration is capped to the given value. This will avoid long playback starting time. basically if set to 2000ms, and download bandwidth test took 1500ms, we only have 500ms left to load the proper fragment ... which is not enough ... this means that the player will stick to level 0 in that case, even if download bandwidth would be enough to select a higher bitrate
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License.