Radiant Media Player

Google Cast and AirPlay support



Google Cast and AirPlay documentation sections


Google Cast™ support

Google Cast badge
Google Cast and the Google Cast badge are trademarks of Google Inc.

Introduction to Google Cast™

Google Cast™ is a protocol allowing media data to be sent from an emitting (or casting) device to a receiving device (example a TV). This is generally referred to as "second screen experience" in the industry. The emitting/casting device can be a notebook or an Android tablet for example. One can then watch video content on a TV while still being able to control the content through the casting device. .

Radiant Media Player support in-player casting from Google Chrome to Google Cast enabled devices (like Chromecast or Android TV) for a top-notch second-screen video experience. Our implementation is based on Google Cast SDK v3. Information on Google Cast SDK can be found here.

When a Google Cast enabled receiving device is detected the player will automatically display a casting icon (as part of a player module). A dedicated user interface has been designed within Radiant Media Player to support Google Cast. Radiant Media Player Google Cast implementation consists of a sender application built within the player and a receiver application.

Since Radiant Media Player 4.3.0 we have published a custom receiver application with Google in order to support casting of DRM (Widevine or ClearKey) content with DASH and to allow for fine tuning of the casting experience.


Supported receiving devices

  • Chromecast
  • Android TV
  • Any Google Cast™ compatible receiving device

Assistance for setting up a Chromecast device can be found here.


Supported casting devices

  • Google Chrome 32+ on Desktop/laptop: Windows, Linux, Mac, ChromeOS
  • Google Chrome 51+ on Chrome for Android
  • Vivaldi browser 1.6+

Version 3 of Google Cast SDK does not currently support casting from Chrome on iOS. This will be enabled in a future Google Cast SDK release.


Supported features

  • In-player casting for desktop and mobile Chrome
  • Adaptive bitrate casting casting with HLS, DASH or progressive download
  • DASH & HLS DRM (Widevine or ClearKey) & SAMPLE AES/AES-128 HLS
  • Multi-language WebVTT captions/subtitles casting
  • Live and on-demand video support
  • Audio-only support
  • Remote controlling

Google Cast specific settings

Radiant Media Player will automatically detect an in-range Google Cast enabled device and will provide in-player casting options when needed.

The following player settings are available:

googleCast: Boolean

Enables or not Google Cast detection. Default: true. This setting is not supported and automatically set to false for the following features: 360 video. The player will use its poster as thumbnail on the receiving device so we recommend to set an appropriate poster to better support casting.

googleCastReceiverAppId: String

Google Cast receiver app id. By default Radiant Media Player uses the default receiver application from Google which works well for common use-cases including support for HLS & DASH. For DASH or HLS DRM support we have published a custom receiver application with Google. The application ID for this customer receiver is B17187F0. It will automatically be picked by the player when cast DRM setting are provided. Default: ''.

googleCastLicenseUrl: String

DASH or HLS DRM license URL to be used on the receiver application. Default: ''.

googleCastLicenseCustomData: String

Custom license data for DASH or HLS DRM on the receiver application. Default: ''. See Google docs for more information.

googleCastProtectionSystem: String

Preferred Protection System to use for decrypting content. Available values are 'WIDEVINE' or 'CLEARKEY'.Default: '' which means the receiving application will auto-guess.

googleCastInitialBandwidth: Number

Initial bandwidth in bits per second for ABR logic on receiving application. Default: 2000000.

googleCastMetadataType: String

Possible types of media metadata. Availables values are 'MOVIE', 'TV_SHOW' or 'GENERIC'. Default: 'GENERIC'. See Google docs for more information.

googleCastContentTitle: String

The content title to be displayed in the receiver application. Default: ''. If not set and contentTitle is available, contentTitle will be used.

googleCastReleaseDate: String

ISO 8601 date and/or time when the content was released, e.g. 2016-02-10. Default: ''. This information will be displayed underneath the googleCastContentTitle in the receiving application.

Additionally casted WebVTT captions can be customised. See our closed captions documentation for more information.


About video ads casting

It is to be noted that neither the Cast SDK v3 nor the IMA SDK v3 from Google officially support video ads casting from Google Chrome. As such Radiant Media Player will not render video ads on the receiving device. Radiant Media Player will display video ads on the sender device, while not in casting mode. When casting is engaged video ads will be discarded on the sender device and will not render on the receiving device.


Player code example for casting DASH Widevine DRM content

<script src="https://cdn.radiantmediatechs.com/rmp/4.5.8/js/rmp.min.js" 
  integrity="sha384-N8iccZx4+o/JQEudKK8sDITl0HDIppkYGCW9hAuTu8vIfjfUKAY6Hi20rDh5Q22g"
  crossorigin="anonymous"></script>
<div id="rmpPlayer"></div>
<script>
  var bitrates = {
    dash: 'https://demo.unified-streaming.com/video/tears-of-steel/tears-of-steel-dash-widevine.ism/.mpd'
  };
  var settings = { 
    licenseKey: 'your-license-key',
    bitrates: bitrates,
    delayToFade: 3000,
    width: 854,
    height: 364,
    poster: 'https://www.radiantmediaplayer.com/images/poster-rmp-showcase.jpg',
    dashDrm: {
      servers: {
        'com.widevine.alpha': 'https://widevine-proxy.appspot.com/proxy'
      }
    },
    // Here we set our Google Cast options
    googleCastLicenseUrl: 'https://widevine-proxy.appspot.com/proxy',
    googleCastProtectionSystem: 'WIDEVINE',
    googleCastMetadataType: 'MOVIE',
    googleCastContentTitle: 'TOS with DASH DRM',
    googleCastReleaseDate: '2017-06-01'
  };
  var elementID = 'rmpPlayer';
  var rmp = new RadiantMP(elementID);
  rmp.init(settings);
</script>

Scope of support

Radiant Media Player scope of support does not cover troubleshooting set up of Google Cast enabled devices or assistance for building a custom receiver application.


Apple AirPlay support

Since Radiant Media Player version 4.4.7 we offer in-player built-in support for AirPlay casting. This means that when an AirPlay-receiver device is detected in range from an AirPlay-casting device an AirPlay cast icon will automatically appear within the player. On iOS AirPlay can also be managed from the control center menu.

We support Apple AirPlay for the following emitting devices:

  • iOS 9+ Safari
  • macOS Safari 9+

And the following receiving device:

  • Any Apple AirPlay compliant receiver device: Apple TV, Airport Express, and AirPlay-compatible speakers ...

Supported features

  • In-player AirPlay casting for macOS and iOS Safari
  • Adaptive bitrate casting casting with HLS or progressive download
  • SAMPLE AES/AES-128 HLS
  • Live and on-demand video support
  • Audio-only support
  • Remote controlling

AirPlay player settings

airplay: Boolean

Set whether or not in-player AirPlay support should be activated on eligible devices. Default: true. Note that when set to true this setting will enable periodic checks for detecting AirPlay receivers and this may cause additional battery usage on mobile or portable devices.


AirPlay support notes

  • The in-player AirPlay icon will only show after the player loadedmetadata event has fired
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License.