Samsung Smart TV - Internet Multimedia Service Platform

Preview:

DESCRIPTION

Discover a new world of web-connected TV entertainment with Samsung Smart TV. It is a platform with almost unlimited possibilities and allows you to easily search for movies, TV shows, browse the web, explore Samsung apps, chat with friends and find many other types of new interactive TV content. Lecture delivered at University of Economics, Poznan 2012

Citation preview

exeDSP Process

Kernel (Device driver)

DTV M/W

N.Navi

Maple Widget Engine

Widget List Management Widget Management

Rendering Core JavaScript

Window System Abstraction Layer Standard Utility Interface

JavaScript Extension (widget, filesystem …)

Widget Engine Process exeDSP Process

OpenSrc

XServer

Kernel (Device driver)

DTV M/W

N.Navi fork execve kill

Socket Connection (using thrift)

WebKit

Widget Engine Core

Webkit Interface Abstraction Layer

Cairo Surface

Widget Engine Server

Widget Engine Client

Widget Engine

Launcher

Widget List

Management

Widget Management

SEF Client

SEF EMP

JavaScript Extension

Plugins

Rendering Engine

JavaScript

Widget Management

Smart Hub Widget

Graphics

Maple Webkit

JavaScript SpiderMonkey SquirrelFish

Rendering Engine Maple Core Webkit Core

Graphics Shadow Gtk+/Cairo

WEB Device API

SEF (Service

Extension Framework)

Device API

AudioControl DisplayControl AVPlay TV Information

TV Channel TV Window Network ImageView

CustomDevice Gamepad HealthcareDevice Microphone

Printer Recognition Camera

<!DOCTYPE html>

<head>

<title>Text</title>

</head>

<body>

<object id="networkPlugin" border="0"

classid="clsid:SAMSUNG-INFOLINK-

NETWORK"></object>

App Text

</body>

</html>

Execute("InitPlayer", URL);

Execute("SetDisplayArea", x, y, width, height);

Execute("SetInitialBufferSize" 400*1024); // 400KB

Execute("StartPlayback");

case $.sfKey.PLAY:

playerPlugin.Execute("StartPlayback");

break;

case $.sfKey.STOP:

playerPlugin.Execute("Stop");

mobileApp [Client] tvApp [Server]

POST /connect

add device 200 OK

POST /queue [DATA]

recv msg

handle msg

prepare response

GET /queue/device/$DeviceId

408 Timeout

GET /queue/device/$DeviceId

200 OK [DATA]

connect

longpolling

send

receive

disconnect POST /disconnect

200 OK

200 OK

Header Description Required

SLDeviceID This header contains the DeviceID used to identify the client device and the corresponding TV application.

YES (for ALL requests except Get Application Info request)

Content-type This header refers to the content type of the request. The value for this header can be either JSON or XML.

YES (for POST requests only)

ProductID This header is only required for Device Connect requests. The value MUST begin with "SMART" and be exactly 8 characters long. Example: SMARTTVI,SMARTDev

YES (for Connect requests only)

VendorID This header is only required for Device Connect requests. The value must be exactly 8 characters long.

YES (for Connect requests only)

DeviceName This header is only required for Device Connect requests. This header contains the name of the client device. The value MUST be less than 64 characters long.

YES (for Connect requests only)

User-Agent This header is used by the TV to identify the type of the client device and its capabilities.

YES (for ALL requests)

Custom (User-Defined) The developer can add any other headers needed for proper performance of their application. Any custom headers added to a request are included as the second parameter in the message context (JSON object)

NO

Basic

•Every Smart TV application can be controled using Smart Remote App in Remote Control mode

Medium

• Smart TV application is able to use Tigger to generate custom UI in Smart Remote App

High

• Smart TV is able to be controled using Tigger by Smart Remote App