56
Java + Connected TV integracja aplikacji Java z ConnectedTV

Integracja aplikacj java z connectedtv

Embed Size (px)

DESCRIPTION

Integracja aplikacji java z ConnectedTV / SmartTV Devcrowdpl wiosna 2012

Citation preview

Page 1: Integracja aplikacj java z connectedtv

Java + Connected TV integracja aplikacji Java z ConnectedTV

Page 2: Integracja aplikacj java z connectedtv

Dlaczego Java? •  Popularność

o  Spora baza wiedzy, biblioteki open source, fora o  Duża społeczność developerów

•  Java w mobile

o  Android OS o  Blackberry o  JME

•  Obiektowość, niezależność od platformy o  prostota, zrozumiały kod

Page 3: Integracja aplikacj java z connectedtv

Connected TV

Co to jest ConnectedTV ?

Page 4: Integracja aplikacj java z connectedtv

Connected TV

Każdy telewizor z podłączeniem do Internetu

Obecnie każdy sprzedawany telewizor ze średniej i wyższej półki…

Page 5: Integracja aplikacj java z connectedtv

Connected TV

• Connected TV o  Smart TV o Net TV o Web TV o  Interactive TV

Różne nazwy handlowe, zbliżone funkcjonalności i możliwości

Page 6: Integracja aplikacj java z connectedtv

Connected TV -możliwości

Page 7: Integracja aplikacj java z connectedtv

Connected TV

• Tradycyjny telewizor o  Z dostępem do Internetu o  Posiada przeglądarkę internetową o  Z App Store znanym z platform mobilnych gdzie

możemy pobrać dedykowane aplikacje na daną platformę telewizyjną

Page 8: Integracja aplikacj java z connectedtv

Connected TV

• Ile jest jest ConnectedTV na świecie? o  200 milionów

Page 9: Integracja aplikacj java z connectedtv

Connected TV - software

ConnectedTV = SmartTV = NetTV

Widget, aplikacje telewizyjne Aplikacja - PC - tablet - telefon komunikująca się z telewiorem

Integracja z aplikacjami na PC, platformy mobilne

Aplikacje działające w telewizorze danej marki

Page 10: Integracja aplikacj java z connectedtv

Connected TV - software

• Skupimy się na integracji aplikacji PC, platformy mobilne z Connected TV

•  Widgety, aplikacje telewizyjne traktujemy jako ciekawostkę

Page 11: Integracja aplikacj java z connectedtv

Connected TV - software

Widgety, aplikacje telewizyjne

Page 12: Integracja aplikacj java z connectedtv

Connected TV - software

Popularne platformy telewizyjne •  Samsung Smart TV •  Sony Internet TV •  Panasonic Viera Connect •  LG Smart TV •  Philips Net TV •  Sharp AQUOS NET+ •  Toshiba Smart TV

Page 13: Integracja aplikacj java z connectedtv

Connected TV - software

Jeśli chcemy stworzyć widget: •  7 platform do obsłużenia •  każdy producent ma swoje widzimisię •  7 różnych SDK •  7 interfejsów użytkownika •  ograniczenie do platformy jednego

producenta, brak przenośności •  Spore koszty

Page 14: Integracja aplikacj java z connectedtv

Connected TV - software

Integracja aplikacji PC, platform mobilnych z Connected TV

Page 15: Integracja aplikacj java z connectedtv

Connected TV - software

Aplikacja

- PC - tablet

- telefon komunikująca się z telewiorem?

Jak to możliwe? Jak możemy zintegrować nasze aplikacje?

Page 16: Integracja aplikacj java z connectedtv

Connected TV - software

Page 17: Integracja aplikacj java z connectedtv

Connected TV - software

Możliwości DLNA: Przesłanie na telewizor: - filmy, muzykę, zdjęcia Sprawdzenie stanu telewizora: - co jest odtwarzane - czas utworu Sterowanie telewizorem: - play, pause, stop - regulacja głośności

Page 18: Integracja aplikacj java z connectedtv

Connected TV - software

Możliwości dla twórców aplikacji mobilnych: •  z pozoru mało istotne rozwiązanie

Po głębszej analizie: •  "obejrzyj na dużym ekranie" •  nowa kategoria aplikacji mobilnych •  vod (video na rządanie) •  oglądaj co chcesz, kiedy chcesz •  second screen

Page 19: Integracja aplikacj java z connectedtv

Connected TV - software

Obejrzyj na dużym ekranie

Page 20: Integracja aplikacj java z connectedtv

Connected TV - software

Nowa kategoria aplikacji mobilnych

iMediaShare - ponad 1 000 000 pobrań na Google Play

Page 21: Integracja aplikacj java z connectedtv

Connected TV - software

Szansa dla dostawców treści którzy nie mają szans znaleźć się w eterze - małe telewizje regionalne - telewizje tematyczne - esport - fitness - gotowanie

Page 22: Integracja aplikacj java z connectedtv

Connected TV - software

Second screen: 60% użytkowników smartphonów i tabletów sięga po swoje urządzenia podczas oglądania telewizji

Page 23: Integracja aplikacj java z connectedtv

Connected TV - software

Kto odpowiada za DLNA? - Samsung - LG - Sony - Philips - Sharp

Page 24: Integracja aplikacj java z connectedtv

Connected TV - software

DLNA to •  zestaw kilku protokołów (UDP, SOAP) •  standart utrzymywany przez Digital Living

Network Alliance

który odpowiada za: •  wykrywanie urządzeń DLNA w sieci •  sterowanie urządzeniami DLNA •  kontrolę stanu urządzeń DLNA

Page 25: Integracja aplikacj java z connectedtv

Connected TV - technikalia

UDP

HTTP

SOAP

Page 26: Integracja aplikacj java z connectedtv

Conencted TV - technikalia

Wykrywanie urządzeń DLNA Technikalia

Page 27: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Wykrywanie urządzeń DLNA - UDP (multicast)

Urządzenia muszą znajdować się w tej samej sieci

Page 28: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Page 29: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Multicast

transmisja grupowa tej samej wiadomości do

kilku hostów

Page 30: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Wyszukiwanie urządzeń w skrócie:

•  wysyłamy odpowiedni pakiet po multicascie •  otrzymujemy odpowiedzi od urządzeń DLNA •  w odpowiedzi jest adres URL do pliku XML z

opisem urządzenia •  pobieramy i parsujemy plik XML opisujący

co potrafi urządzenie

Page 31: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Wysyłamy pakiet do grupy multicastowej 239.255.255.250 na port 1900

Page 32: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Urządzenia DLNA odpowiadają pakietem

Page 33: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Nadawca zapytania pobiera plik XML z opisem urządzenia

Page 34: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Page 35: Integracja aplikacj java z connectedtv

Wykrywanie urządzeń DLNA Java

Page 36: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 37: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 38: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 39: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 40: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 41: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 42: Integracja aplikacj java z connectedtv

Connected TV - technikalia

Sterowanie urządzeniem DLNA Technikalia

Page 43: Integracja aplikacj java z connectedtv

Connected TV - technikalia

• XML opisujący urządzenie o Audio-video transport o Rencer control o  Connection manager

Page 44: Integracja aplikacj java z connectedtv
Page 45: Integracja aplikacj java z connectedtv
Page 46: Integracja aplikacj java z connectedtv

Connected TV - Technikalia

•  Serwis AvTransport o  SetAvTransportUri o  Play, Stop, Pause o  Seek o  GetTransportInfo o  GetPositionInfo

•  Serwis RenderCtrl o  SetVolume o  GetVolume o  Mute

Page 47: Integracja aplikacj java z connectedtv

Connected TV - Java

Sterowanie urządzeniem DLNA Java

Page 48: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 49: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 50: Integracja aplikacj java z connectedtv

Connected TV - Java

Page 51: Integracja aplikacj java z connectedtv

Connected TV - Java

Sterowanie urządzeniem DLNA Niespodzianki

Page 52: Integracja aplikacj java z connectedtv

Connected TV - Java

•  każdy producent dodaje coś swojego i rozszerza protokół o dodatkowe możliwości o  zdalne sterowanie (Samsung, Sony) o  funkcje telegazety

•  Żaden producent nie używa nazwy DLNA o  AllShare

•  nagłówki HTTP podczas transmisji contentu

Page 53: Integracja aplikacj java z connectedtv

Connected TV – Java

• Każdy producent wprowadza niespodzianki aby utrudnić integrację z obcym sprzętem albo oprogramowaniem

o Dodatkowe nagłówki HTTP podczas transmisji

contentu

Page 54: Integracja aplikacj java z connectedtv
Page 55: Integracja aplikacj java z connectedtv
Page 56: Integracja aplikacj java z connectedtv

Pytania !?!

e-mail: [email protected]

twitter: @matt_rutkowski