Top Level Architecture

1. Application module

Handles application internal logic and User Interface (UI) look and feel. Accepts user inputs and presents data to the user.

2. Software Development Kit (SDK) module

Handles communication between Application module on one side and backend server and TV middleware software on the other side.

3. Core module

The starting point for a TV application. It represents a central point which connects UI with backend and database APIs as shown in Figure 2. This module contains a set of abstractions for all basic and advanced features as well as a set of APIs which are used as guidelines for application development. It is a highly optimized library which introduces a very small memory footprint.

A particular abstraction can be used for different projects and different clients (e.g. BackendHandler provides a set of APIs used by application module and can be embedded in different backend implementation). This way once developed UI application can be considered as backend agnostic because a different BackendHandler can be added as a plugin to the Core module if needed. This enables us to use the same application and the same logic for different projects and clients because an application always calls the same API abstraction without actually knowing what is in layer beneath it. The same approach can be applied to TV middleware or player used for decoding TV stream of VoD content.

GuiDE composition

Main module that contains API abstractions and Graphical framework for rendering scenes

Pre-integrated offline data provider

Pre-integrated online data provider

Utility tools

Set of examples and tests

PC tool used for creating GuiDE navigation files

Payment feature APIs and Utility Tools

Ads feature APIs and Utility Tools

Web communication utilities

Easy to use tool for creating UI app prototypes

Leave a Comment