add14: chromecast and the future of android tv

41
ChromeCast and the future of Android TV Sebastian Mauer GDG Aachen

Upload: sebastian-mauer

Post on 01-Dec-2014

1.128 views

Category:

Software


12 download

DESCRIPTION

Google seems ready to try to take over the big screen again. Chromecast provides a unique way for developers to extend their apps with a second screen experience. This talk shows the inner bits and bolts of Chromecast and sheds light on Android’s deep connection with Chromecast. Saturday, 17 May 2014 Presented at Android Developer Days 2014, Ankara, Turkey

TRANSCRIPT

Page 1: ADD14: ChromeCast and the future of Android TV

ChromeCast and the future of Android TV

Sebastian Mauer GDG Aachen

Page 2: ADD14: ChromeCast and the future of Android TV

This Presentation contains QR-Codes

Page 3: ADD14: ChromeCast and the future of Android TV

Who am I?Sebastian MauerGDG Aachen Co-Lead CS StudentSoftware Engineer I don’t work for Google…yet

Page 4: ADD14: ChromeCast and the future of Android TV
Page 5: ADD14: ChromeCast and the future of Android TV

Part I: Google TV(aka „The History“)

Page 6: ADD14: ChromeCast and the future of Android 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

Page 7: ADD14: ChromeCast and the future of Android TV

By the summer of 2012, the majority of the televisions you see in stores will

have Google TV embedded.- Eric Schmidt at LeWeb 2011

Page 8: ADD14: ChromeCast and the future of Android TV

GoogleTV

http://9to5mac.com/2013/07/16/report-at-56-apple-tv-takes-majority-of-streaming-device-marketshare-in-2012/

Page 9: ADD14: ChromeCast and the future of Android TV

Three Generations1. 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

Page 10: ADD14: ChromeCast and the future of Android TV

GoogleTV: Pros

• Part of the Android-family.

• Deploying apps is easy™ (via Play Store)

• Re-use most of your existing Android code

Page 11: ADD14: ChromeCast and the future of Android TV

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)

Page 12: ADD14: ChromeCast and the future of Android TV

Help me Android. You're my only hope

Page 13: ADD14: ChromeCast and the future of Android TV

Part II: ChromeCastaka Google Cast Devices

Page 14: ADD14: ChromeCast and the future of Android TV
Page 15: ADD14: ChromeCast and the future of Android TV

ChromeCast: Hardware

• 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.c

om/Tea

rdow

n/Chrom

ecas

t+Te

ardo

wn/16

069

Page 16: ADD14: ChromeCast and the future of Android TV

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

Page 17: ADD14: ChromeCast and the future of Android TV

ChromeCast: How does it work?

Page 18: ADD14: ChromeCast and the future of Android TV

ChromeCast: Cons

• Google Cast SDK is still a Developer Preview(read: things will break, things will change)

• You have to manually whitelistall your apps with Google

• It’s not officially released outside the U.S.

Things have been broken. But the SDK is stable now.

Page 19: ADD14: ChromeCast and the future of Android TV

WebTech

UDP

ChromeCast: Protocol Stack• 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)

Page 20: ADD14: ChromeCast and the future of Android TV

TCP

WebTech

UDP

ChromeCast: New Protocol• mDNS (Multicast Domain Name System, aka Bonjour)

• Protobuf over TLS Sockets

• RAMP (Remote Application Media Protocol)

• HTML5 & JS (You know that this is)

• WebSockets (Bi-directional communication Browser<>WebApp)

• WebRTC (Web Real Time Communication, ex. Screen Mirroring)

Page 21: ADD14: ChromeCast and the future of Android TV

ChromeCast: How it works!1. Advertises ChromeCast

using mDNS (UDP Broadcast)

!2. Discovers Endpoints using mDNS

!!

3. Requests App and opens TLS Socket connection

!!!

4. CC fetches HTML5 based 1st Screen App (opens WebSocket)

Page 22: ADD14: ChromeCast and the future of Android TV

ChromeCast: How it works! II!!!!

5. Sends request to play media

!!!!!

6. HTML5 app receivesmedia request (WebSocket) starts fetching content.

!!!!!!

7. Media is downloaded/streamed by ChromeCast device

Page 23: ADD14: ChromeCast and the future of Android TV

ChromeCast: Sender App

• Cast SDK available for

• You need to pay $5 to create an accounton the Google Cast Developer Console

Page 24: ADD14: ChromeCast and the future of Android TV

ChromeCast is not just for „streaming“ video content.

Page 25: ADD14: ChromeCast and the future of Android TV

It’s a remote controllable Chrome Browser running on your TV.

Page 26: ADD14: ChromeCast and the future of Android TV

Use Cases: PhotoCast

Page 27: ADD14: ChromeCast and the future of Android TV

Use Cases: CastPad

Page 28: ADD14: ChromeCast and the future of Android TV

Part III: ChromeCast without ChromeCast*

* includes shameless plug

Page 29: ADD14: ChromeCast and the future of Android TV

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

Page 30: ADD14: ChromeCast and the future of Android TV

CheapCast: Components

WebView

SSDP Service

DIAL REST WS

ChromeCast API Ext

1st Screen Output

Receiver App

Sender App

Page 31: ADD14: ChromeCast and the future of Android TV

CheapCast: Use Cases

• Start developing ChromeCast apps without owningan actual ChromeCast Device

• Turn one of your old Android-devices into aChromeCast Dongle (connect via MHL<->HDMI)

• Cast content from your Android Smartphoneto your Android Tablet just for the hell of it.

Page 32: ADD14: ChromeCast and the future of Android TV

CheapCast: OpenSource

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

Made possible by ChromiumTotally useless

right now!

But it might come back…

Page 33: ADD14: ChromeCast and the future of Android TV

Part IV: Android TV(aka „What might be…“)

Page 34: ADD14: ChromeCast and the future of Android TV
Page 35: ADD14: ChromeCast and the future of Android TV
Page 36: ADD14: ChromeCast and the future of Android TV
Page 37: ADD14: ChromeCast and the future of Android TV

Just Rumours? Yes!But Google Cast ist not going away soon.

Page 38: ADD14: ChromeCast and the future of Android TV
Page 39: ADD14: ChromeCast and the future of Android TV

Q&A

Follow me on G+

Page 40: ADD14: ChromeCast and the future of Android TV

First one to scan this QRCode to find out the Codeword wins.

Page 41: ADD14: ChromeCast and the future of Android TV

Thanks. Teşekkürler.