SlideShare a Scribd company logo
1 of 36
Download to read offline
Chromecast,
Cheapcast and TV

Sebastian Mauer
GDG Aachen

DevFest Brussels
November 16th, 2013
This Presentation
contains QR-Codes
Who am I?
Sebastian Mauer

GDG Aachen Co-Lead
Software Engineer

CS Student
I don’t work for Google…yet
Part I: Google TV
GoogleTV
•

Google’s first attempt to „own“
the TV

•

Introduced at Google I/O 2010

•

First Device, x86-based

Logitech Revue

•

US only at launch
By the summer of 2012, the majority of the
televisions you see in stores will
have Google TV embedded.
- Eric Schmidt at LeWeb 2011
leTV
Goog
http://9to5mac.com/2013/07/16/report-at-56-apple-tv-takes-majority-of-streaming-device-marketshare-in-2012/
Three Generations
1. Generation, late 2010

based on Android 3.2
2. Generation, Summer 2012
based on Android 3.2

3. Generation, 2013

probably on Android 4.2.2
GoogleTV: Pros
•

Part of the Android-family.

•

Deploying apps is easy™ (via Play Store)

•

Re-use most of your existing Android code
GoogleTV: Cons
•

Does not evolve as fast as mainline Android

•

Not many devices sold (500,000 - 1,000,000)

•

Late start in the European Union (2012)
Help me Android. You're my only hope
Part II: ChromeCast
aka Google Cast Devices
•

Model Number: H2G2-42

•

It’s not based on ChromeOS

•

It’s based on Android

and Chromium

•

It’s not going to kill GoogleTV

http://www.ifixit.com/Teardown/Chromecast+Teardown/16069

ChromeCast: Hardware
ChromeCast: Pros
•

Very cheap hardware (35$)

•

Very easy to use (My Grandma can do it™)

•

Web Developers can easily write „Receiver“-Apps

•

Simple Protocol Stack
ChromeCast: Cons
•

Google Cast SDK is still a Developer Preview

(read: things will break, things will change)

•

You have to manually whitelist

all your apps with Google

•

It’s not officially released outside the U.S.
ChromeCast: Protocol Stack
UDP

•

SSDP (Simple Service Discovery Protocol)

•

DIAL (DIscovery And Launch)

•

RAMP (Remote Application Media Protocol)

•

HTML5 & JS (You know that this is)

•

WebSockets (Bi-directional communication Browser<>WebApp)

•

WebRTC (Web Real Time Communication)

WebTech
ChromeCast: How does it work?
ChromeCast: How it works!
1.

Advertises ChromeCast

using SSDP (UDP Broadcast)

3.

!
!
Requests App and opens

WebSocket connection

4.
2.

!
Discovers Endpoints using DIAL

!
!
!
CC fetches HTML5 based 1st
Screen App (opens WebSocket)
ChromeCast: How it works! II
5.

!
!
!
!
Sends request to play media

7.

!
!
!
!
!
6.
!
Media is downloaded/streamed

by ChromeCast device

!
!
!
!
!
HTML5 app receives

media request (WebSocket)

starts fetching content.
ChromeCast: DIAL
•

Protocol published by Netflix

•

Uses SSDP for Service Announcement

•

DIAL REST WebService for exchanging

Device capabilities and controlling
ChromeCast: DIAL
SSDP

Search

SSDP

Discovery

HTTP

Capabilities

HTTP

Start
ChromeCast: Sender App
Cast SDK available for


•








•

Needs Whitelisting with Google
ChromeCast: Receiver App
<html>
<script src="https://www.gstatic.com/cast/js/receiver/1.0/cast_receiver.js">
</script>
<script type="text/javascript">

!

!
!

!

var receiver = new cast.receiver.Receiver(
'App ID', [cast.receiver.RemoteMedia.NAMESPACE],
"",
5);
var remoteMedia = new cast.receiver.RemoteMedia();
remoteMedia.addChannelFactory(
receiver.createChannelFactory(cast.receiver.RemoteMedia.NAMESPACE));
receiver.start();
window.addEventListener('load', function() {
var elem = document.getElementById('vid');
remoteMedia.setMediaElement(elem);
});

</script>
<body>
<video id="vid" style="position:absolute;top:0;left:0;height:100%;width:100%" />
</body>
</html>
ChromeCast is not just
for „streaming“ content.
It’s a remote controllable
Chrome Browser
running on your TV.
Part III: CheapCast*

* includes shameless plug
CheapCast all the Droids
•

Is an app that emulates a
ChromeCast (or Google Cast)
device on almost any Android
Device

•

Implements DIAL, RAMP/WS
Proxy-ing

•

Does not care if your id is
whitelisted or not.

•

Written by me
CheapCast: Components
1st Screen Output

Receiver App

SSDP Service

WebView

DIAL REST WS
ChromeCast API Ext

Sender App
CheapCast: Use Cases
•

Start developing ChromeCast apps without owning

an actual ChromeCast Device

•

Turn one of your old Android-devices into a

ChromeCast Dongle (connect via MHL<->HDMI)

•

Cast content from your Android Smartphone

to your Android Tablet just for the hell of it.
CheapCast: Use Cases

Google Music

YouTube
CheapCast
CheapCast: OpenSource
https://github.com/mauimauer/cheapcast
Licensed under the Apache 2.0 License

MadeFp ature:
g eossible
obyin
c mC
Up
hng! iu
ti rom m
Cas
Tab
Demo
CheapCast: Get it now
Q&A

More Related Content

What's hot

Christian Kurzke; Getting Your Content on the Big Screen
Christian Kurzke; Getting Your Content on the Big ScreenChristian Kurzke; Getting Your Content on the Big Screen
Christian Kurzke; Getting Your Content on the Big Screen
Droidcon Berlin
 

What's hot (6)

Building TV apps with Chromecast
Building TV apps with ChromecastBuilding TV apps with Chromecast
Building TV apps with Chromecast
 
Chromecast get started
Chromecast get startedChromecast get started
Chromecast get started
 
Chromecast Technology Report(HDMI dongal developed by google)
Chromecast Technology Report(HDMI dongal developed by google)Chromecast Technology Report(HDMI dongal developed by google)
Chromecast Technology Report(HDMI dongal developed by google)
 
The unconventional devices for the Android video streaming
The unconventional devices for the Android video streamingThe unconventional devices for the Android video streaming
The unconventional devices for the Android video streaming
 
[iPlayground] 從 0 到 1 的距離,我與 tvOS 的邂逅
[iPlayground] 從 0 到 1 的距離,我與 tvOS 的邂逅[iPlayground] 從 0 到 1 的距離,我與 tvOS 的邂逅
[iPlayground] 從 0 到 1 的距離,我與 tvOS 的邂逅
 
Christian Kurzke; Getting Your Content on the Big Screen
Christian Kurzke; Getting Your Content on the Big ScreenChristian Kurzke; Getting Your Content on the Big Screen
Christian Kurzke; Getting Your Content on the Big Screen
 

Viewers also liked (6)

Chromecast
ChromecastChromecast
Chromecast
 
Diksha gupta
Diksha guptaDiksha gupta
Diksha gupta
 
Pti 3
Pti 3Pti 3
Pti 3
 
Ppt final
Ppt finalPpt final
Ppt final
 
Google Chromecast | A brief presentation | INB410 MEI
Google Chromecast | A brief presentation | INB410 MEIGoogle Chromecast | A brief presentation | INB410 MEI
Google Chromecast | A brief presentation | INB410 MEI
 
Advantages and disadvantages for google chromecast
Advantages and disadvantages for google chromecastAdvantages and disadvantages for google chromecast
Advantages and disadvantages for google chromecast
 

Similar to Chromecast, CheapCast and TV - DevFest Brussels 2013

Appcelerator Titanium Intro
Appcelerator Titanium IntroAppcelerator Titanium Intro
Appcelerator Titanium Intro
Nicholas Jansma
 
ABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded Systems
Benjamin Zores
 
Michael(tm) Smith WND09 Presentation
Michael(tm) Smith WND09 PresentationMichael(tm) Smith WND09 Presentation
Michael(tm) Smith WND09 Presentation
Michael(tm) Smith
 
Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
Mobile Web Applications using HTML5  [IndicThreads Mobile Application Develop...Mobile Web Applications using HTML5  [IndicThreads Mobile Application Develop...
Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
IndicThreads
 
201507_NeoHsu_Portfolio
201507_NeoHsu_Portfolio201507_NeoHsu_Portfolio
201507_NeoHsu_Portfolio
Neo Hsu
 

Similar to Chromecast, CheapCast and TV - DevFest Brussels 2013 (20)

Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
 
Appcelerator Titanium Intro
Appcelerator Titanium IntroAppcelerator Titanium Intro
Appcelerator Titanium Intro
 
EMEA AppForum 2015 Android KitKat & Lollipop - new features for enterprise de...
EMEA AppForum 2015 Android KitKat & Lollipop - new features for enterprise de...EMEA AppForum 2015 Android KitKat & Lollipop - new features for enterprise de...
EMEA AppForum 2015 Android KitKat & Lollipop - new features for enterprise de...
 
The Web, After HTML5
The Web, After HTML5The Web, After HTML5
The Web, After HTML5
 
DCAST Meetup - Washington, DC Feb 2016
DCAST Meetup - Washington, DC Feb 2016DCAST Meetup - Washington, DC Feb 2016
DCAST Meetup - Washington, DC Feb 2016
 
ABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded Systems
 
Desktop apps with node webkit
Desktop apps with node webkitDesktop apps with node webkit
Desktop apps with node webkit
 
design-low
design-lowdesign-low
design-low
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Browsers on Android (Webkit,chromium)
Browsers on Android (Webkit,chromium)Browsers on Android (Webkit,chromium)
Browsers on Android (Webkit,chromium)
 
Android Lollipop
Android LollipopAndroid Lollipop
Android Lollipop
 
Michael(tm) Smith WND09 Presentation
Michael(tm) Smith WND09 PresentationMichael(tm) Smith WND09 Presentation
Michael(tm) Smith WND09 Presentation
 
State ofappdevelopment
State ofappdevelopmentState ofappdevelopment
State ofappdevelopment
 
Android : How Do I Code Thee?
Android : How Do I Code Thee?Android : How Do I Code Thee?
Android : How Do I Code Thee?
 
Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
Mobile Web Applications using HTML5  [IndicThreads Mobile Application Develop...Mobile Web Applications using HTML5  [IndicThreads Mobile Application Develop...
Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
 
Android Workshop
Android WorkshopAndroid Workshop
Android Workshop
 
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
 
201507_NeoHsu_Portfolio
201507_NeoHsu_Portfolio201507_NeoHsu_Portfolio
201507_NeoHsu_Portfolio
 
Selenium Israel Meetup
Selenium Israel MeetupSelenium Israel Meetup
Selenium Israel Meetup
 
Build Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilderBuild Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilder
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Chromecast, CheapCast and TV - DevFest Brussels 2013