Upload
nemus
View
1.158
Download
2
Embed Size (px)
DESCRIPTION
세간의 화제 크롬캐스트! - 크롬캐스트에 대한 간략한 설명 - 크롬캐스트를 둘러싼 개발이슈
Citation preview
All about Chromecast
2013.08.19
김성준 선임
인터넷과 연결이 되어 있지 않은
TV
인터넷과 연결된 TV가 있으신가요?
Chromecast
인터넷과 연결된 TV로 무엇을 하시나요?
Chromecast
HDMI 입력 포트만 있다면?!
- 기타 25%
- 음악 15%
- 방송 스트리밍 60%
Chromecast?!
기능
YouTube, Netflix, Google Music, Google Movie 컨텐츠 스트리밍
모바일 기기에 저장된 컨텐츠를 재생하거나 미러링하는 것은 기본적으로 불가(?)
Remote-cast
모바일 기기, Chrome browser에서 재생 시작
플랫폼 독립적인 기능
Android, iOS, Chrome browser(Windows/Mac) 지원
볼륨 조절 (제한적)
모바일 기기의 볼륨 조절 버튼으로 동영상의 볼륨 조절 가능
HDMI-CEC 지원 (제한적)
자동으로 TV가 켜지고, 외부 입력이 전환되고, 동영상 시작
$35!
- 애플 TV $99
- 완제품 LG GoogleTV
$1,200
- Sony GoogleTV Box $140
스마트TV는 이제 끝났다?
Demo
connect to
nemus AE3D
- Linux kernel, DirectFB, Custom android (Dalvik, Bionic 제외)
- Chromecast 상에서는 web app만 실행 가능
구조 분석
- Sender side에서 Chromecast에게 미리 등록되어 있는 AppId(URL)를 던져서
채널 생성 후 통신
AppId(URL)
Receiver app (YouTube)
on Chromecast
Sender app
videoId
Contents Cloud
구조 분석
- Supported media types
- Video codecs: H.264 High Profile Level 4.1, 4.2 and 5, VP8
- Audio decoding: HE-AAC, LC-AAC, CELT/OPUS, MP3
- Containers: MP4/CENC, WebM, MPEG-DASH, SmoothStreaming
- Level 1 DRM support: Widevine, Playready
- Subtitles: TTML, WebVTT
Showcasing products
Local Media Playback for Chromecast
Dropbox to Chromecast
Phone to Chromecast
Chromecast Tetris
How to develop
- receiver app : Chromecast 상에서 동작하는 webapp
- sender app : Android or iOS app
0. Chromecast를 Google whitelist에 등록
이때 Receiver side URL 등록하면서 Application Id 얻음
1. Device discovery
android.support.v7.media.MediaRouter 사용
2. Application session creation
sender app가 receiver의 application id를 사용하여 세션 생성. receiver app
은 해당 webapp을 실행하고 message channel (양방향 WebSocket 형태로
구현됨)을 연다.
3. message exchange
JSON 형태의 message를 channel을 통해 교환하며 동작
어떤 것을 만들면 좋을까?
- NAS 컨텐츠 스트리밍
- Pooq, Tving 컨텐츠 스트리밍
- 카카오톡과 연동
The end