RDK

RDK

Overview

OBS has integrated DTVKit’s DVB stack (DVBCore) with the RDK software framework providing a common API for RDK applications to use for the management of DVB services. DTVKit’s DVBCore is a market-proven DVB stack, offering Free to Air (FTA) and Pay-Per-View (PPV) functionality, which has been deployed in a wide range of TV and set-top box products worldwide. The DVB integration is compatible with both RDK 3.0 and 4.0 architectures.

Integration with the RDK environment enables RDK applications to integrate DVB services and provide the following capabilities:

Electronic Programme Guide

Access to full event information
(7 day EPG where available)

Ability to watch and playback different ‘live’ streams on different clients (dependent on available resources)

PVR Icon

DVR and timeshift with server or client based playback

Architecture

The DVB stack has been integrated with the RDK platform in such a way as to minimise the number of changes to existing RDK software components. However, it has been necessary to make small changes to the RMF to support communication with the DVB stack through the introduction of the ‘DTV’ module, shown in the diagram below. We have also introduced a component called ‘DTVSrc’ GStreamer and made some changes to the DVB stack itself so it can produce the Single Program Transport Stream (SPTS) needed for playing a service both locally and via the network using RDK’s Media Framework.

The architecture is presented in the diagrams below:

Service selection can be performed locally or remotely by sending a request to the RMFStreamer. This request chooses the ‘DTV’ module which then passes the service selection request on to the DVB stack. Once the DVB stack has performed the tune and set up the demux with the streams that make up the SPTS for the service, the ‘DTVSrc’ GStreamer component is then responsible for making the data available for playback locally or remotely.

DVB Stack Interfaces

The DVB integration makes use of well defined interfaces at both the platform and application layers:

Application Interface

In an RDK 3.0 based system a websocket RPC interface is used to enable control of the DVB stack and retrieval of programme related data by the application. The RPC API controls service acquisition, service management, service selection, and EPG data retrieval.
For an RDK 4.0 based platform the existing RPC API is replaced with a Thunder nano-service offering the same functionality.

Platform Interface

DVBCore has a ‘platform layer’ which is used to abstract it from the underlying hardware. Using this, DVBCore can be integrated with a range of silicon vendor platform APIs. The platform layer requires modification for RDK and our ambition is to agree a standard form of platform layer with RDK.

Security

Operators usually employ content protection to secure their broadcast services. Methods for securing the content are either CI+ or a form of proprietary Conditional Access System (CAS). DVBCore has well-defined interfaces for both CI+ and CAS, and has been deployed with a range of market leading CA providers’ solutions.

Status

The RDK DVB integration is a work in progress and we are discussing architectural improvements with RDK. For further information, please email us at info@oceanbluesoftware.co.uk.