Google Chromecast is a device that you plug into your TV's HDMI port. Using your smartphone or computer as a remote control, you can use Chromecast to access video content. The Chromecast Plugin enables a player to cast video from your {% if site.product_short == "SDKs" %} mobile device app using the Brightcove Native SDKs {% else %} desktop or Android Chrome browser using Brightcove Player {% endif %} to the Chromecast device.
The plugin supports all Video Cloud videos or external streams using HLS or DASH, including DRM-encrypted streams using Widevine. Advertising is supported through Video Cloud server-side ad insertion (SSAI). Playlists are supported with the Brightcove receiver on Chromecast with the web player. Client-side ads are not supported.
To use the plugin follow these steps:
The software behind Chromecast is comprised of the following components:
Sender app: This is any application that can initiate a cast session and communicate with a receiver. The sender application can be thought of as the "client side" portion of the Chromecast ecosystem.
{% if site.product_short == "SDKs" %} The Chromecast Plugin enables the sender app in the Native SDKs. You will learn about it in this topic. {% else %} The Chromecast Plugin for Brightcove Player enables the sender app in Brightcove Player. You will learn about it in this topic. {% endif %}
Receiver app: This is a custom web application that is hosted on the public internet and runs on a Chromecast device. It handles communication between the sender app and the receiver device. It can be thought of as a single page HTML app with CSS and JavaScript assets.
By default, the Chromecast Plugin uses the Brightcove Cast Receiver app, which is hosted on our CDN. The receiver app is a web application that is loaded onto the Chromecast during a cast session.
The following devices are supported:
The current implementation (plugin/receiver version 2.x) uses the CAF (Cast Application Framework) API.
When the Chromecast receiver plugin is added, the player will display a cast button in the player UI when there is an available Chromecast on the local network.
When this button is clicked or tapped, a cast session is initiated with the current video that is loaded in the player. Here's how it works:
This process is identical for non-Video Cloud sources except there is no Playback API request.
Currently, from an analytics perspective, the cast session is treated as an entirely new playback session.
From a UX perspective, the viewer will see their stream pause on the sender device and resume on the receiver.
From a data perspective, because our metrics are anonymized by default, it is logged as a new viewer starting a new stream on a separate device. This is what actually happens.