Radiant Media Player

Version history

  • 4.1.3 - May 23, 2017

    • Set default for autoplayDetectionTimeout setting to 8000 (8s) for better accuracy in busy JavaScript/network environments
    • Set default for adAjaxTimeout setting to 8000 (8s)
    • Updated to rmp-vast 0.1.11
    • Now uses rmp-vast.js un-compiled for easier debugging
    • Allow getEnvironment and getFramework API methods to be queried before init call on player
    • Adds navRates setting
  • 4.1.2 - May 6, 2017

    • Adds support for Radiant Media Player in web-based mobile applications (WebView, Cordova, standalone web-app) BETA
    • Adds getWaitingUI and setWaitingUI methods to player API
    • Removes adtagloaded event from Google Analytics integration
    • Prevents double-loading of Google analytics.js in some case scenario
    • Fixed a bug for iframe usage in Firefox related to https://bugzilla.mozilla.org/show_bug.cgi?id=548397
    • Updates to rmp-vast 0.1.10
    • Improves ad loading UI for rmp-vast
    • Adds adPauseOnClick, adCountDown and labels.ads.controlBarCustomMessage support for rmp-vast
    • Fixes a bug with stopAds/loadAds methods with rmp-vast that would cause player to not restore content UI properly
  • 4.1.1 - May 2, 2017

    • Introduced rmp-detect-autoplay: open-source JavaScript feature detection script for autoplay support in HTML5 video
    • Integrated rmp-detect-autoplay into Radiant Media Player for better accuracy at detecting autoplay support
    • Updated to rmp-vast 0.1.5
    • Added support for adAjaxTimeout, adMaxNumRedirects, labels.ads.skipMessage, labels.ads.skipWaitingMessage and labels.ads.textForClickUIOnMobile settings for rmp-vast in Radiant Media Player
  • 4.1.0 - April 27, 2017

    • Introduced rmp-vast: open-source VAST client
    • Integrated rmp-vast into Radiant Media PlayerPREVIEW
    • Removed adDelayBeforeSkip & adSkipButton player settings - skippable ads are now only available with VAST 3 compliant skippable ads
    • Implements HTMLMediaElement.play() returns a Promise where supported
    • Performance improvement due to faster internal player framework
  • 4.0.28 - April 17, 2017

    • Fix for a non-fatal error message produced by the Google Cast framework in Chrome when multiple player instances are used (Uncaught DOMException: Failed to execute 'registerElement' on 'Document')
  • 4.0.27 - April 14, 2017

    • Added example for HLS server-side ad insertion and ad UI display
    • Server-side ad insertion: when ad UI is on prevent seek keyboard navigation
    • For in-article outstream ads layout do not auto-hide controls
    • Insure that custom playback is used on iOS 10+ for displaying ads through the IMA SDK
  • 4.0.26 - April 12, 2017

    • Added support for dedicated thumbnail files in playlist and related layouts
    • Added playlistEndedLoop and relatedEndedLoop settings
    • Minor CSS and JavaScript improvements for playlist and related
    • Updated loading indicator UI for better accuracy when player is fetching external resources
  • 4.0.25 - April 12, 2017

    • Internal release - no new feature
  • 4.0.24 - April 08, 2017

    • Updated CSS for in-article outstream ads layout for uniformed rendering across devices
    • For in-article outstream ads layout only detect hover states for desktop devices (hover states do not apply on mobile devices)
    • Updated destroy API to best support adOutStreamInArticle, adTagReloadOnEnded settings
    • Updated beacon media files for featureDetectAutoplay setting
  • 4.0.23 - April 07, 2017

    • Added in-article outstream ad layout with adOutStreamInArticle, adOutStreamInArticleMutedAutoplayWithHoverApi settings and implementation example
    • Re-added hlsJSStopDownloadWhilePaused setting (previously available with v3 and now ported to v4)
    • Re-added adTagReloadOnEnded setting (previously available with v3 and now ported to v4)
    • For autoplay feature detection use WebM beacon first over MP4 beacon for better and faster results on Chrome for Android
    • Added hover API examples
  • 4.0.22 - April 06, 2017

    • Internal release - no new feature
  • 4.0.21 - April 05, 2017

    • Added hlsStopLoad and hlsStartLoad API methods
    • Added hlsmanifestparsed API event
    • Added getHlsFragmentBeingPlayedData API method
    • Added hlsfragmentbeingplayedchanged API event
    • Added getAdUI and setAdUI API methods
    • WebM detection for featureDetectAutoplay now relies on an external beacon.webm file for better accuracy
    • Fixed an issue with path resolution of required media files for featureDetectAutoplay when player is used in self-hosted version with pathToRmpFiles default value
  • 4.0.20 - April 03, 2017

    • Added featureDetectAutoplay setting and reworked feature-detection for autoplay support to account for use-cases where the player is dynamically appended to the page
    • Set autoplayDetectionTimeout default to 3000
    • Ad scheduler: when no pre-roll is present previously an aderror event would fire which was not actually representing an ad-related error with the player
    • In HLS when a manifest documents a rendition with a bitrate lower than 10 kbps do not show the bitrate value in the quality module - the main reason for this to happen is when wrong bitrate information are present in an HLS manifest
    • Specified IMA-related logs with a starting "RMP-ads-ima" string when player is in debug mode
  • 4.0.19 - March 31, 2017

    • Added muted autoplay support for video ads on mobile devices
    • Updated feature-based autoplay detection support on mobile devices for better accuracy
    • Added autoplayDetectionTimeout setting
  • 4.0.18 - March 30, 2017

    • Added contentID player setting, getContentID & setContentID API methods
    • Added getLogo & setLogo API methods
    • Added domain whitelisting support for PLATFORM Edition
    • Bump to Shaka Player (internal DASH-decoder) version 2.0.7 - previously version 2.0.5
  • 4.0.17 - March 27, 2017

    • Added full support for DASH multi-period
    • Added dashtrackschanged event to player API
    • Added server-side ad insertion documentation
    • Fixed an issue where the label for quality module would not show as expected in some instances
  • 4.0.16 - March 24, 2017

    • Added support for video ads with 360 video
    • Added support for HLS DVR streaming with audio-only content
    • Google Cast: when content ends on cast device keep the current session active, unless explicitly disconnected by the viewer - in the event a new play is requested the receiving device can display content again faster
  • 4.0.15 - March 23, 2017

    • Internal release - no new feature
  • 4.0.14 - March 22, 2017

    • Added Streamroot support
    • Added iframeAllowed setting
    • Fixed an issue with the loadAds API method that would cause content recovery issues on iOS when called repeatedly
    • Fixed a reference issue with the debug player that would cause DASH decoder to not load in some instances
  • 4.0.12 - March 20, 2017

    • Google Analytics plugin now sends adimpression event instead of adstarted event
    • Fixed a typo for sharingNetworks setting that was previously incorrectly named sharingNetowrks
  • 4.0.11 - March 17, 2017

    • Added Apple FairPlay Streaming support
  • 4.0.10 - March 16, 2017

    • Added getAdPodInfo API method
    • Added getAdvertiserName API method
    • Added getAdCreativeAdId, getAdCreativeId & getAdDealId API methods
    • Added getAdMediaUrl API method
    • Added getAdSurveyUrl API method
    • Added getAdUniversalAdIdRegistry & getUniversalAdIdValue API methods
    • Added adsResponse player setting
    • Added adPlayAdsAfterTime player setting
    • Added adContentDuration, adContentKeywords & adContentTitle player settings
    • Added adForceNonLinearFullSlot player setting
    • Added adDisableFlashAds player setting
    • Added adPpid player setting
    • Added adCompanionBackfill player setting
    • Pre-detect Google Cast support before loading cast_sender.js which can cause unwanted side-effect on MS Edge at playback start
  • 4.0.9 - March 15, 2017

    • Internal release - no new feature
  • 4.0.8 - March 14, 2017

    • PLATFORM Edition release
  • 4.0.7 - March 10, 2017

    • Internal release - no new feature
  • 4.0.6 - March 7, 2017

    • Now using the default receiver application from Google for Google Cast - this notably fixes issues related to aspect ratio on the receiver device. The custom receiver application that was used previously is still available for legacy support purposes
    • Fix an issue where the poster frame would take some extra time to be removed at player start-up with progressive download
    • Fix a deprecation notice warning in browser console (related to "-internal-media-controls-overlay-cast-button") in latest Chrome Canary
    • Adjustment to CSS for colors of the DVR bumper
  • 4.0.5 - March 3, 2017

    • Added sharingNetowrks setting which add customisation to the sharing module including support for: Facebook, Twitter, LinkedIn, Google Plus, Reddit & email
    • Minor optimisation to the feature detection logic
    • For audio-only streaming disable DVR layout as not supported (use live instead)
    • Fixed a potential error when using the destroy method with 360 video
    • Added destroy API example
    • Added getFramework method to player API
  • 4.0.4 - March 2, 2017

    • Internal release - no new feature
  • 4.0.3 - March 1, 2017

    • Correctly display data in Up Next menu in related content when last item is played
    • setSrc API method now correctly works when content has not been initialised
    • Added setSrc API examples to docs
    • Replaced admanagerloaded event with adtagloaded event for better understanding of the ad loading process (admanagerloaded event still available for legacy support)
    • Added adtagloaded & adloaded to Google Analytics reporting
  • 4.0.2 - February 28, 2017

    • Fixed JSON-based related/playlist that would not work with MP4 or WebM progressive download.
    • Added getEnvironment to player API
  • 4.0.1 - February 24, 2017

    • Re-added resize method to the player API that went missing with 4.0.0 release
    • Disabling muted autoplay of video ads on iOS. A recent update of the Google IMA SDK caused an inconsistent behaviour on iOS - so the mutedAutoplayOnMobile is now disabled when using video ads on iOS. This feature will be re-enabled as soon as possible. The mutedAutoplayOnMobile continues to work as expected on mobile devices when not used with ads.
    • Minor adjustments to CSS shadows
    • When dodgy values for bitrate/height data are found in a HLS or DASH manifest do not show them in HD module - instead show default values
  • 4.0.0 - February 20, 2017

    • Related content
      • Added related content support with JSON input
      • Up next and discovery overlay support
    • Playlist
      • Updated playlist support with JSON input
      • Updated playlist design
    • DASH
    • 360 video
      • Official release for 360 video support in Radiant Media Player
      • Added support for macOS Safari
      • Added support for progressive download with 360 video
    • Player
      • Added playsInline settings
      • Playback rate values from the nav setting now ranges from x0.25 to x4
      • Rewrote fullscreen management for faster entering/exiting fullscreen
      • Backup streaming URL (backupBitrates setting) is now supported for progressive download
      • Added webmCodecs setting for easier targeting of specific WebM codecs combination
      • Logo for logo setting can now be provided as JPEG, PNG or GIF
      • In HLS or DASH when bitrate changes in ABR auto mode the bitrate selector module now indicates which bitrate is currently playing
      • Added vtt.js support for macOS Safari (external WebVTT captions)
      • Default buffer length for HLS & DASH is now unified at 60 seconds
      • Minimum buffer length value for HLS & DASH is now set to 10 seconds
      • Removed displayStreams setting
      • Updated noSupportInstallChrome player label default
      • Preload setting now only has effect for progressive download & native HLS
      • Enabled proper iframe policy as per terms of service
    • Audio-only
      • Added support for M4A & MP3 progressive download
      • Updated layout for audio-only player
      • Removed audio-only with poster layout - this would need to be built on top of the audio-only player now
    • Ads
      • Updated ad-loading mechanism allowing for faster rendering
      • Improved chain ad-loading
      • Improved outstream ad coverage on older device/browsers
      • Added adAutoplayOnlyPreroll setting
      • Set default of adVpaidMode to 'friendlyiframe'
      • Set default of adUseWatermarkCountdownAndMessage to true
      • Removed adRemainingTimeColor setting - this is now set based on CSS accent color
    • Flash
      • Deprecated Flash fallback support - Flash support is now limited to essential functionalities for legacy browsers and will be progressively phased out of Radiant Media Player
    • HLS
      • Added hlsJSAbrDefaultBandwidthEstimate setting
      • Added hlsJSBWFactor setting
      • Added hlsJSAppleAppStoreCompliance setting
      • Added player API methods & events for HLS streaming: getHlsManifestData, getHlsLevelData, getHlsFragmentData methods & hlsmanifestloaded, hlslevelloaded, hlsfragmentloaded, hlsabradaptationchange events
      • Added support for #EXT-X-PROGRAM-DATE-TIME through getHlsEpochProgramDateTime & getHlsRawProgramDateTime API methods
      • Added full support for #EXT-X-DISCONTINUITY & #EXT-X-DISCONTINUITY-SEQUENCE
      • Removed hlsJSStopDownloadWhilePaused setting
      • Removed useNativeHlsOverHlsJS setting
      • Renamed hlsjserror event to hlserror & hlsjswarning event to hlswarning
      • Renamed hlsjsinstancecreated event to hlsinstancecreated
      • Bump to hls.js 0.6.21
    • Player API
      • Completely reworked setSrc API with support for update in video/audio tracks - it also supports DASH and live content now
      • Added getReady method
      • Simplified retuned values for getStreamType method
      • Added getBufferLength method
      • Added getLoop, getControls, getContentTitle, getContentDescription & getPoster methods
      • Added setContentTitle & setContentDescription methods
      • Renamed toggleFullscreen method to setFullscreen
      • setBitrate method does not require a type parameter anymore
      • Added destroyerror & fullscreenerror events
    • CSS
      • Updated CSS sizing classes: .rmp-extrasmall, .rmp-small, .rmp-medium, .rmp-large & .rmp-extralarge are now available
      • Added overflow support for text content within player modules
      • Added 360.less, related.less, playlist.less, audio-only.less files for more consistent breakdown of player CSS
      • Updated CSS ready detection for faster time-to-ready
      • Fixed a layout issue with play/pause button in s4 skin
      • Fixed minor CSS issues while player is in casting mode
      • Renamed .rmp-i-share class to .rmp-i-sharing
      • Renamed .rmp-i-streams class to .rmp-i-hd
      • Moved CSS lint to stylelint
    • Player builds
      • New player build process to generate production/debug player builds
      • Production player is faster and lighter
      • Added debugLevel setting
    • Analytics
      • Added gaNamedTracker setting for Google Analytics
      • Removed getPercentHeatMap method which was redundant with getRawHeatMap method
      • Renamed trackingId setting to gaTrackingId

  • 3.10.16 - March 17, 2017

    • Pre-detect Google Cast support before loading cast_sender.js which can cause unwanted side-effect on MS Edge at playback start
  • 3.10.15 - March 2, 2017

    • Disabling muted autoplay of video ads on iOS. A recent update of the Google IMA SDK caused an inconsistent behaviour on iOS - so the mutedAutoplayOnMobile is now disabled when using video ads on iOS. This feature will be re-enabled as soon as possible. The mutedAutoplayOnMobile continues to work as expected on mobile devices when not used with ads.
    • Bump to hls.js 0.6.21
  • 3.10.14 - January 30, 2017

    • Disabled asset preloading for VMAP adTags in HTML5 video as it could cause content recovery issues with some pod configurations containing several ads - if you are using VMAP this is a recommended update
    • Bump to hls.js 0.6.19
  • 3.5.0 - August 19, 2016

    • Device support
      • Added Xbox One MS Edge support.
      • Pre-test for iOS 10 release.
    • Improvements
      • Completely rebuilt Google Analytics plugin.
      • Added black background for chained TV-like video ads.
      • Added counter for ad pods in VMAP (HTML5-video ads only).
      • Set dashAndroid setting default to true.
      • Added preload = 'none' support for MPEG-DASH and Flash.
      • getStreamType API method now also returns hlsflash and mp4flash.
      • Added adMaxNumRedirects setting.
      • Added useNativeHlsOverHlsJS setting.
      • Added hlsWithH264Mp3Support setting.
      • Re-enabled file:// protocol support but without support for specific file:// enabled environment.
      • Removed some extra processing for feature detection of playback rate.
      • Added dashXhrWithCredentials setting
      • MPEG-DASH bitrate switching is now faster
      • Added MPEG-DASH events:
        • manifestloaded
        • periodswitchstarted
        • periodswitchcompleted
        • qualitychangestarted
        • qualitychangecompleted
        • streaminitialized
    • Bug fixes
      • Using the player API for multiple instance of Flash players could cause collision of some methods
      • HLS-MSE now correctly fires the error event and display an error message on network error
      • Fixed a bug that was preventing fullscreen events to fire after a video ad has been played in flash
  • 3.0.0 30th April 2016

    • Refactor
      • Code base is now ES2015 JavaScript and compiled to ES5 with Babel
    • Added
      • HLS to HTML5 video on Desktop and mobile support (MSE-based)
      • TV like video ads experience
      • getBitrates getCurrentBitrateIndex getPlaybackRate getHlsId3TagSamples getFullscreen showCaptions hideCaptions API methods
      • hlslevelswitch hlsid3tagparsingcompleted destroycompleted API events
      • destroy API methods with update player examples
      • Customisable player labels
      • Fallback streaming URLs
      • Outstream video ads
      • initialVolume setting
      • Player hints for module (sharing, quality, speed ...)
      • dashCapLevelToStage setting
      • In-manifest CEA 608, WebVTT, TTML or EBU-TT-D captions for MPEG-DASH
      • backgroundColor setting
      • For MPEG-DASH download of chunks is now paused when player is in pause
      • Flash VPAID in HTML5 player
    • Changed
      • Set friendlyiframe as default for VPAID HTML5
      • adSchedule items must be passed as array
      • Bitrates information are now simplified as string (dash, hls) or simple array (mp4, webm)
      • Bitrates MPEG-DASH information are now bitrates.dash instead of bitrates.dash264
      • hlsToFlash setting is now enabled by default and cannot be disabled
      • Renamed defaultFlashAudioLabel to flashDefaultAudioLabel setting
      • getCurrentTime getDuration getVolume getTimeViewed getPercentViewed getTimeReady methods now returns -1 when not available
      • Setting ad-block detected custom message is now done with adBlockMessage setting
      • Playlist layout now based on destroy + update player API methods
    • Improved/bug fixes
      • Skin UI
      • Flash VPAID in Flash player
      • Error layout
      • Preloading behaviour for MPEG-DASH (only metadata are now loaded)
      • Seeking UI with MPEG-DASH and Android devices
    • Removed
      • setSrc API methods
      • autoNext feature from Playlist
      • adFlashTagWaterfall and adFlashTagUrl settings
      • dashFirefox setting (enabled by default now)
      • adForceNonLinearFullSlot setting
      • adBlockDetectedRestrictive adBlockDetectedRestrictiveMessage adBlockDetectedPermissiveMessage settings
      • defaultDashAudioTrack setting - now auto-guess from Manifest

  • 2.0.0 18th August 2015

    • Added Windows 10 support
    • New more flexible trial edition
    • Introduced Radiant Media Player R1, R2 and R3 editions
    • New Flash fallback with added features: new layout, multiple audio tracks support, SRT closed captions
    • Improved Apple HLS support: manual or auto bitrate switching, multiple audio tracks support
    • Added debug mode to the player
    • Added legacy mobile platforms support
    • New playback modifier module
    • New video loading and buffering module
    • New CSS skinning model with 5 pre-built skins
    • Improved HTML5 video ads module: ad waterfalling, ad scheduling (VMAP 1.0.1), universal skip button, better mobile support
    • New MPEG-DASH DASH264 decoder
    • Updated unified JavaScript API for HTML5 + Flash
    • Unified keyboard control HTML5 + Flash
    • Unified Google Analytics module HTML5 + Flash
    • Added prototype for file:// support BETA
    • Various minor bug fixes
    • In an effort to make our player better we have had to remove some features: WebM Dash support (this has been back with 2.2), design lab, RTMP support for Flash

  • 1.0.0 28th January 2015 OUT OF BETA