Application Example: IPTV Set-Top Box
The following example shows how the C++ libraries and tools from Applied Informatics can be used to build an IPTV Set-Top Box.
Implementation
The set-top box software is implemented in a modular and extensible way, based on the Open Service Platform. An internal web server hosts various local web applications providing the user interface of the set-top box, displayed on the TV screen using the open source WebKit browser engine.
Optional features such as a digital video recorder are implemented as plug-ins (bundles) to the main application, making it easy to build different variants of the device. OSP makes it possible to dynamically install additional bundles, even when the device is already at the customer. This can be used to implement user-downloadable third party applications. These apps are implemented in HTML, CSS and JavaScript and run within the embedded WebKit browser engine. The apps are distributed in the form of OSP bundles. OSP's bundle signing feature can be used to control which third-party bundles can be installed.
Basic functionality like HTTP(S) server and client, TCP, UDP and multicast sockets required for streaming protocols, as well as XML processing and an embedded database (based on SQLite) are provided by the POCO C++ Libraries.
Applied Informatics' UPnP implementation is used to add Universal Plug and Play support to the device.