In recent years Linux/RDK-based set-top boxes (STB) have proven particularly popular among pay-TV operators. The reasons are that they are readily available, the prices are relatively low and they require standard, non-specialist web development expertise. Nevertheless, our industry is constantly changing and any operator considering which technology to choose for their new STB-based (set-top box) service platform needs to stay on top of hardware and middleware technologies as well as tracking Google’s evolving development roadmap.
3SS offers this article as a resource to any operator considering which technology to adopt for their next consumer video entertainment platform. With a raft of announcements from Google regarding new Android TV features, and in a landscape of increasingly frequent Android TV-based roll-outs by operators, the need to understand all the nuances of this topic has become more relevant than ever. Choosing the right operating system and platform for new STB launches is critical for success.
RDK is a standardized software stack based on Linux with localization plugins. Most Linux based STBs nowadays are in fact aligned with the Royalty free reference Design Kit (=RDK).
RDK is driven by Comcast and is geared exclusively for operators wanting to launch STB-based services for consumers.
RDK sits below the MVPD (multichannel video programming distributor) application and services layer and provides a common interface to the hardware system, acting as a universal System-on-a-Chip (SoC) adapter. In addition, this standardized stack provides a common method to manage complex video functions such as tuning, conditional access, DRM, and stream management.
On one hand, development is easier as today’s industry has an abundant supply of talented web developers. However the resource limitations of SoC-based STBs, as well as the rather limited range of available complementary apps, should also be considered. By default, unlike with Android TV, with the RDK approach there is no app-store available and therefore this needs to be sourced by the operator. In terms of control, and choice, it is wise to keep in mind that middleware development is usually exclusively controlled by the STB vendor, and therefore the supplier of this hardware is a significant stakeholder over the long term.
A Tale of Two Androids – Diving Deep into AOSP vs Android TV
AOSP (Android Open Source Project) is Android’s source code based on Linux itself.
If choosing AOSP, you do not get any additional proprietary blobs from Google such as:
In other words, AOSP is the pure Android code-base and is also used for mobile versions and for any other Android based platform such as Android Car.
By choosing AOSP, however, you benefit from all the UI libraries and capabilities in the Android Ecosystem. Apps are developed with Android SDK/Java with unrestricted access to system resources, enabling high performing UIs and easy interaction with hardware and middleware.
By having full control over the AOSP-based system, the operator must take full responsibility for platform management and development. This approach introduces the need to devise and deploy additional elements, independent from Google, posing numerous variables which add complexity, require additional decision-making and more ‘in-house’ resource to manage the system to a high quality standard.
Additionally, it is vital to understand and manage the interaction between middleware and hardware tuners (e.g. DVB) and DRM protected playback.
Compared to Android TV, with AOSP the majority of functionality and capabilities need to be self-sourced, developed or purchased through middleware. All of this means far greater development effort is needed on the part of the operator, as well as management of ongoing maintenance, future system enhancements, etc.
AOSP – The ProsAOSP – The Cons
Risks when using AOSP
Android TV is the name for a complete build of the AOSP firmware including all of Google’s proprietary enhancements. The biggest benefit of Android TV however is that it is part of a much bigger ecosystem, one which is currently the pre-eminent operating system in the world, at least based on market figures.
Figure 1: Android overtakes Windows as most popular OS (Source: http://gs.statcounter.com/press/android-overtakes-windows-for-first-time)
Android TV includes all proprietary additions and completions absent from AOSP such as:
Google significantly eases the go-to-market process with Android TV, and continually rolls out new features. With several reference designs with major SoC suppliers, the certification process with google and also Netflix can be expedited – which is a huge plus as this ensures quick time-to-market. However, the operator or service provider using Android TV must strictly comply with Google’s many requirements to be certified. This means the operator ultimately has less control over the overall project since it is effectively co-driven by Google’s Compatibility Definition document. Furthermore, Google’s requirements can change over time, so the operator needs to be vigilant as regards new requisites, and needs to be nimble and capable enough to understand, embrace and deploy the changes to ensure compliance. Google has taken steps towards operators and pay-tv providers, offering the “operator tier” which l– besides a few requirements for visibility of apps and usage of google assistant starting with Android O (the latest version) – does give complete control and freedom over the launcher UI, effectively taking away one of the biggest fears and concerns that existed towards Android TV. At the time of writing google also announced to reduce the minimum hardware requirements for Android TV with Android O on TV.
Android TV – The ProsAndroid TV – The Cons
Risks when using Android TV
(based on comparative hardware requirements, development efforts and technical expertise)
Cost of ownershipLinux based/ RDKAOSPAndroid TVHardwareLower High HighMiddleware High HighMediumDevelopment HighMediumLower
Table 1: Cost of ownership comparison