Ad breaks

An ad break refers to an interval for playback containing one or more ads or bumpers.

Android Sender

Android Sender is used to send and share your applications from your android mobile phone to others.

Android TV Receiver

Android TV Receivers use the Cast Connect library to allow existing sender applications to communicate with Android TV applications using the Cast protocol. Cast Connect builds on top of the Cast infrastructure, with your Android TV app acting as a receiver.

Application life cycle

The receiver app life cycle starts from the point at which the receiver is loaded onto the Cast device and proceeds to the point at which the application is torn down and the Cast device reverts back to its default state.

Audio tracks

Audio track selection in the Receiver SDK has an AudioTracksManager class that simplifies and streamlines track selection. It gives you more control and better access to name, URL, and languager properties.


break clip

An ad clip shown during an ad break.



The Google Cast protocol.


The act of displaying all forms of media (for example, video) dynamically on a Google Cast receiver (for example, a Chromecast).

Cast Connect

The Cast Connect library allows your Android TV app to receive messages and broadcast media status, as if it were a Chromecast. This is meant to "combine Cast with Android TV to bring your app to the modern Cast experience." It allows for expanded control, including being able to use a hardware remote.

cast state

The current state of casting from the perspective of the sender:

State Description
Unavailable No Cast receivers are available
Disconnected Cast receivers are available and none are connected
Connecting A Cast receiver is connecting
Connected A Cast receiver is connected but not casting
Casting A Cast receiver is connected and casting


A streaming media adapter from Google that allows users to play online content such as videos and music on a display.

Closed captions (subtitles)

Closed caption track selection in the Receiver SDK has a TextTracksManager class that simplifies and streamlines track selection, giving you more control and better access to properties, such as name, URL and language (much like Audio track selection).

Cross-Origin Resource Sharing (CORS)

Cross-origin resource sharing (CORS) is a method that requests secure web page resources from an outside domain.

Custom messages

Message exchange is the key interaction method for receiver applications. A sender can send a message to the receiver and vice versa. A receiver application may choose to listen for messages on a specified namespace. It is then up to any connected senders wishing to communicate on that namespace to use the appropriate protocol.

Custom Receiver

This is a custom built HTML5 app that you must host to handle the display of your app content on the TV. You may need to create a Custom Receiver if your app wants to display content other than audio/video media or if the Styled Media Receiver does not support the media types your app requires.

Custom UI data binding

Custom UI data binding allows you to use your own custom UI element and use the PlayerDataBinder class to bind the UI to the player state. The binder also supports sending events for data changes, if the app does not support data binding.

Content preload

The Receiver supports preloading of media items after the current playback item in the queue. The preload operation pre-downloads several segments of the upcoming items. Preloading will work for HLS and Smooth streaming content by default. For regular MP4 video and audio files such as MP3, those will not be preloaded, as Cast devices support one media element only and cannot be used to preload while an existing content item is still playing.


Default Media Receiver

A third option available is the Default Media Receiver. This is a pre-built receiver application hosted by Google that is designed for streaming your audio and video content. It does not require you to register with the Google Cast SDK Developer Console, but you cannot customize any of the UI in the Default Media Receiver.


Google Cast SDK Developer Console

The Google Cast Developer Console enables developers to register applications and authorize devices for testing.


iOS Sender

iOS Sender is used to send and share your applications from your Apple mobile devices to others.


Media Playback Messages

Google Cast sender applications control the playback on the receiver device by sending messages in JSON format to the receiver application. Likewise, the receiver sends messages back to the sender, also in JSON. The messages may be commands from the sender that change the player state, responses to those commands from the receiver, or data structures that describe the media for the receiver application.

Message interception

The Receiver SDK allows your receiver app to intercept messages and execute custom code at that point of interception. Message interception can be especially useful if you want to customize the load request data.



Cast utilizes both a basic sender-initiated queue and receiver-implemented queueing.



A receiver is an application created using HTML, JavaScript, and CSS. It is loaded onto a Cast device (for example, a Chromecast) through a URL that is accessible over the Wi-Fi network to which the Cast device is connected. The sender app connects to and sends commands to the receiver to display content.

receiver app

The receiver app receives commands from the sender app and displays the requested content on the device serving as the receiver. For example, the YouTube app on Chromecast. See receiver.

receiver device

The Cast device that loads the receiver app. For example, a Chromecast. See receiver.



A sender is an application that initiates connecting to or casting to a receiver on the same Wi-Fi network or in guest mode. An example of a sender app is the YouTube app on a mobile device.

sender app

See sender

sender device

The device that loads the sender app. For example, a mobile phone or a tablet.

Stream transfer

CAF Receiver supports stream transfer, where users can move audio and video streams across devices using voice commands. Stream transfer for audio is supported by default and no additional development is necessary. Stream transfer for video requires enabling the stream transfer media command and optional overriding of the media session state.

Styled Media Receiver

The Styled Media Receiver (SMR) allows your sender application to play media on a Cast device without creating your own custom receiver application. You can customize the SMR color scheme and branding by providing your own CSS file during registration.

Styling the player

The Receiver SDK provides a built-in player UI. In order to use the built-in player UI, you need to add the cast-media-player element to your HTML. CSS-like styling allows setting various things including background-image, splash-image, font family and other things. This functionality allows for better branding and overall customization.


Touch controls

The Receiver SDK supports touch controls on your receiver app when launched on these devices. The Receiver SDK provides a default UI experience with additional customization of the player controls.


Web Receiver

A Web Receiver application is an HTML5/JavaScript application that runs on the receiver device, such as a Chromecast. It provides an interface to display the app's content on the TV, and handles messages from the sender application to control content on the receiver device.

Web Sender

Web Sender is used to send and share your applications from your Chromeium based browsers to Cast devices.


Common phrases used for casting have been translated into many languages and are available in the Cast Terminology Translations spreadsheet. Use these translations for labels and text if the app you are developing is localized. For example, in a Japanese app, instead of "Stop casting" you would use "キャストを停止".