TARA participated in the Android TV Virtual Bootcamp 2020
Like last year the TARA Systems team participated in the Android TV Bootcamp. However, due to Covid-19, this time the bootcamp virtually took place and was based on presentations and live streams. The main topic of this year’s edition was the introduction of Android TV 11.
The message: Besides general improvements like better performance, quality, security and privacy to build a strong platform foundation, Android TV 11 will bring specific extensions for TV applications. Reference designs provided by various semiconductor manufacturers will minimize the effort by OEM and operators to launch Android TV devices.
Replay Guide Using Microservices
The QL UHD STB provides more than 130 TV channels and up to seven days of Replay TV. This is a huge amount of content and users need some guidance to find their desired TV shows.
With the Grid EPG and Google’s search functionality, the users are already able to find content using the broadcast time, the title, or the name of an actor/actress.
We now introduced the Replay Guide, a new and advanced feature for finding content. This Replay Guide shows recommendations, lists the most-watched events, and allows filtering for categories (like sport, movies, series) and genre.
We realised the Replay Guide as a highly responsive end-to-end solution. On the backend, a microservice is running (see below) which collects and prepares all data. Whereas the UHD set-top box accesses the microservice and presents the Replay Guide to the users.
Microservices for TV Backend
We now dive into microservice architecture for extending existing TV backend systems of our customers. Lightweight microservices written in Go, storing data in a NoSQL database, using Docker allow adding new features to existing TV applications in an efficient and well-structured way.
Providing a REST API using JSON or protocol buffers lead to a simple integration of fast metadata access on various clients running e.g. on Android TV set-top boxes, mobile devices or web browsers.
Android TV 10 on BCM 7271
With Android TV 9 (Pie) Google introduced a lot of new features following the motto content first. Besides many other improvements, channels were supported on the home screen where each app could now show a row of recommendations including a content preview.
The changes and improvements that are coming with Android TV 10 are more under-the-hood and not so visible to the user. Dynamic partitions, higher security and privacy, improved energy consumption and performance improvements are the most prominent new features. We are currently porting our Inaris DVB/IPTV middleware and our LiveOn TV application to Android TV 10 starting with a Broadcom 7271 platform.
Google Certification for Android Pie Passed
We now passed the Google certification for Android TV Pie with the Quickline UHD STB. This allows us to further increase the user experience. So it’s now possible to adapt the home screen and include a preview of TV channels. With the support of Google Assistant, we will be able to enhance the capabilities of voice commands for searching and playback control.
Quickline STB UX Optimisation
For the Quickline (QL) Android TV UHD STB project an intensive phase of optimisation and performance improvements has been completed. Through the improved interaction of the client with the different backend servers (e.g. for login, access to metadata, as well as audio/video streaming) a significant improvement of the user experience could be achieved.
Among other things, the launch of the app and the switch to the QL-UHD app from another app were significantly accelerated. Also the navigation within the EPG could be further optimised and thus allows a smooth access to the extensive programme data.
Decisive for such an optimisation is the possibility to evaluate the corresponding analysis data of the devices in the field. Optimisations and improvements were also carried out in this area. Various tools such as Firebase, Google Cloud Pub/Sub Messaging, BigQuery, Data Studio and others are used.
Using Android Treble for Inaris DVB/IPTV Middleware
With the introduction of Treble Google improved the way of how Android is accessing the device hardware. With Treble there is now a clear separation between Android SDK and vendor’s code and both software parts can be updated separately. However, as a consequence, Android apps are no longer able to directly access the underlying hardware like tuners, demultiplexers or AV decoders.
With Android P our Inaris DVB/IPTV Middleware will also support Treble. We follow Google’s new architecture and move our Hardware Abstraction Layer (HAL) to the vendor specific code were we again have full access to the device hardware. The Inaris Middleware is still part of the app and gets access to the HAL via Interprocess Communication (IPC) using Android’s Hardware Abstraction Layer IPC (HIDL).
This video provides a good introduction from Google to project Treble with some background information.
Android 9 Pie on Broadcom SoC
The first Android 9 Pie for Android TV approved builds are now available and we already ported our Inaris DVB/IPTV Middleware Stack to the Broadcom 7271 reference platform. Also our TV reference application LiveOn TV is now working on Android 9 Pie.
Following the motto: “Content First” Google constantly improves the launcher and brings even more details to the home screen.
This includes preview video playback directly on the launcher and displaying even more metadata.
Also the Google Assistant is constantly improved and finds its way into more services, including the linear TV experience. Our LiveOn TV application already supports video preview on the launcher of selected TV channels. Support for Google Assistant for searching and playback control via voice will be added in the next step.
More and more features of a classic DVB/IPTV middleware are now supported by Android TV especially in the area of media playback. For example with Android 9 Pie CA Systems can now be integrated using the new MediaCAS API. We will follow these new possibilities and adapt our Inaris DVB/IPTV Middleware accordingly.
Quickline launches Android TV STB
The Swiss cable operator group recently launched their hybrid UHD Android TV STB which combines classic TV with on-demand content and apps like Netflix, Youtube, Spotify, Sky and others. TARA contributes its TV middleware and the player for DVB and OTT media streams as well as the communication with the backend servers.
Read our Success Story »
LiveOn TV running on Sagemcom STBs
Our LiveOn TV reference application in now up and running on Sagemcom Android TV STBs which are widely used in the market. LiveOn TV accesses the Inaris DVB/IPTV Middleware using the OIPF for Android API. On this Broadcom based platform, our Inaris Middleware provides a full integration with the hardware features.
The LiveOn TV application exposes a channel to the Android Launcher for fast access to the TV services with live preview. Besides of live TV functionality using the internal tuner, SAT>IP, IPTV and channel management, also HbbTV and Teletext is supported.
Public Broadcaster ORF Internally Uses TARA’s Android TV Solution
The Austrian public broadcaster ORF uses our Android TV solution as a player for their internal broadcast distribution. The solution is based on our Inaris DVB/IPTV Middleware which receives the broadcast via RTP multicast. ORF uses our LiveOn TV application which also supports HbbTV and Teletext. The middleware and TV application is running on the NVIDIA Shield platform with Android O.
Read more in our handout “DVB / IPTV Solution for Android”
Inaris DVB/IPTV Middleware integrated on HiSilicon with Android O
Our Inaris DVB/IPTV Middleware is now integrated on the HiSilicon platform with Android O. We use the hardware features of the SoC and also directly access the onboard tuner to receive the DVB signal. On top of this integration we use our TV application LiveOn TV which supports also HbbTV and Teletext.
LiveOn TV application on Android O with DVB-T2 reception
LiveOn TV App Using OIPF For Android
We created a reference TV application for Android devices – LiveOn TV. This application uses our new OIPF for Android API for all TV specific features and is a great starting point for our customers creating their own TV applications.
LiveOn TV is a lean application which focuses on support of the most important TV features and at the same time being easily adaptable and extendable by our customers to create a completely new TV user interface. LiveOn TV application demonstrates already some of the new features introduced with Android Oreo. In our video we demonstrate this reference application on Android O with DVB-T2 reception.
Inaris HbbTV Solution on Android Oreo
Inaris HbbTV on Android Oreo
With Android Oreo, the latest Android version is currently rolled out on many devices in the market. This also applies to Android TV where the new version brings many enhancements, especially for operators who want to build state-of-the-art set-top boxes.
To enable Android TV devices presenting broadcast related content in HbbTV applications, we have now ported our Inaris HbbTV Solution to Android O.
In our reference integration, we use the Chromium browser for application rendering. For media playback the ExoPlayer or any other available player can be used.
Verimatrix Ultra Security for Android TV
High quality content is important to be available on Android TV devices. Securing reception and playback of content on an open platform as Android TV is a challenging task. To fulfill the highest security level for premium content we integrated the Verimatrix ViewRight IPTV Ultra Client with our Inaris DVB Middleware on a Broadcom platform for the reception of encrypted DVB live content.
To support timeshifted, restart and replay TV as well as for network PVR with OTT streaming we are integrating the Verimatrix ViewRight Web Client with our Inaris DVB/IPTV Middleware. Using our own HLS player we are able to strictly separate the content playback from JAVA application code.
OIPF for Android
Our OIPF for Android Framework can be used in combination with Google’s TV Input Framework (TIF) to provide extended TV functionality. In addition it can also be used for Android devices not supporting TIF. With this approach Android TV applications can be created for Android TV devices using the additional features possible with TIF and at the same time can also be used for standard Android devices, like tablets.
Inaris DVB/IPTV Middleware on Android Oreo
We ported and verified our Inaris DVB/IPTV Middleware for Android Oreo. The functionality of our TV middleware can be accessed with our new OIPF for Android API directly from any Android application. Using the Inaris DVB/IPTV Middleware TV applications can now be created that work on both Android TV devices and also on other Android devices not supporting Google’s TV Input Framework (TIF).
HbbTV on Android TV with Chromium
Showcasing HbbTV on Android TV with Chromium at Android TV Summit
Android TV allows TV manufacturers and operators to build state of the art devices with a huge selection of available applications. The Android TV environment provides the user a very good coverage of video-on-demand content, independent from the linear broadcast. Additionally, broadcasters provide the user more and more broadcast-related content via the open HbbTV standard.
To benefit also from this, the Android TV ecosystem can be enhanced with HbbTV functionality. To have a seamless integration of HbbTV services into the TV application, we extended our Inaris HbbTV Solution to be embedded into the Android TV application, independent of the used input service. This allows operators to integrate HbbTV functionality into their TV application without any middleware adaptation.
The implementation is based on our platform-independent Inaris HbbTV Solution, the open Chromium browser, and powerful ExoPlayer media player for broadband playback. The interaction with the TV Input Service is done using the TV Input Framework (TIF) API.
We have presented our concept at the Android TV Summit at IBC 2017. Watch the video showing our proof-of-concept implementation.
Teletext Server for OTT
In some cases (e.g. OTT) it may not be possible to transfer the Teletext data as part of the audio/video stream. With our Teletext Server solution you can continue supporting Teletext in these environments. Learn more.
This video demonstrates Android TV with live TV and timeshift on BCM7271 reference board.
Android TV with InarisTvInputService on BCM7271
The InarisTvInputService is now also working on BCM7271 based hardware with Android N. The linear TV is received with the on-board DVB tuner or alternatively via OTT (e.g. using HLS). Of course the well-known features like Teletext, Subtitles and EPG are supported. Furthermore timeshift and Restart TV is available. See the video with a live demonstration.
Android TV on BCM7252S - extended
The linear TV experience with Android N on BCM7252S have been extended. Beside the support of standard DVB features like Teletext and Subtitles, also custom specific back-end server accesses have been added. So the channel lists and advanced EPG data (incl. images) are retrieved from the back-end server and presented within the GUI. In addition linear TV via OTT (using HLS) is now supported on BCM7252S.
This video demonstrates Android N with live TV on a BCM7252S SoC.
Inaris DVB/IPTV on Android N
We have now integrated our Inaris DVB/IPTV solution in Android TV for Android N. Beyond the classic DVB reception we see more and more services like Replay TV, Restart TV, netPVR provided via OTT. Therefore we combine our DVB/IPTV solution with OTT services using HLS or MPEG-DASH and integrate the access to custom specific back-end servers in our Android TV Input Service.
Inaris on Nvidia Shield TV enables Live TV
The custom designed Live TV application running on Amazon Fire TV is now ported to Nvidia Shield TV. It enables the playback of high quality linear TV by accessing a commercially available SAT>IP server.
Live TV on Amazon Fire TV using SAT>IP
As a successor of our Inaris SAT>IP app for Android TV we now also focus on Android AOSP devices. As a first target we chose the Amazon Fire TV, where Google GMS is not used and therefore it does not come with a suitable TV application. So we developed a custom designed Live TV application with a brand new user interface. Using existing SAT>IP server infrastructure in your home turns your Fire TV in a real Live TV app with high quality playback of free to air SD & HD channels regardless of your broadband connection speed.
HbbTV on Android TV
Android TV is finding its way into the European TV market and Android is furthermore well established on consumers’ side. Whereas HbbTV is a standard for all TV devices, it’s a logical step to combine these two technologies. All components of our Inaris Middleware as well as the components of our HbbTV Solution are based on a Hardware Abstraction Layer. This enables us to port our HbbTV Solution also on Android TV. This includes our already available HbbTV 1.5 solution as well as the new HbbTV 2.0 components that will be available by end of this year.
Beyond broadcast-related applications, HbbTV can also be used as a general application development platform. The current activity to extend HbbTV to be used for operator specific applications even strengthens this usage. We will support HbbTV with these extensions on Android TV as a general application development platform based on standardised APIs, standalone or in combination with Android TV Input Framework.
TIF Extension for DVB Scanning Feature
Currently the Android TV Input Framework (TIF) does not support a dedicated API for DVB channel scanning. In cooperation with the major European network operator, we extended TIF to support DVB scanning. The proposed API fulfils all Android design rules used for other TIF APIs. We implemented a prototype for testing this new feature on a Broadcom 7252S platform. With this extension we created an Android application that uses this new Java based API to realise a DVB channel scan.
TARA Systems launches Inaris SAT>IP app for Google Nexus Player
TARA Systems launches “Inaris SAT>IP” app for Google Nexus player in the Google Play Store. With the “Inaris SAT>IP” app, make your Nexus Player a SAT>IP Client. This allows to receive Live Free-To-Air channels via satellite on your Nexus Player as well as via T-Entertain. This is currently available for download as a free beta version from the Google Play Store.
The Inaris SAT>IP app demonstrates some of the expertise and software components that we have been developing through our SAT>IP and Android activities over the past six months.
Inaris and Android AOSP on Marvell BG4-CT Reference Board
Inaris and Android AOSP on Marvell BG4-CT Reference Board
The Inaris DVB Service now runs on the Marvell ARMADA 1500 Ultra /88DE3218 (BG4-CT) reference board as a SAT>IP client on top of Android AOSP. However any DVB tuner can be used as a source too. Of course it also can be integrated together with Google Android TV on this platform.
Inaris TV Middleware Live TV Application running on Android 4.4 AOSP (Amazon Fire TV)
Inaris on Amazon Fire TV, powered by Android 4.4 AOSP
Inaris DVB/IPTV Middleware now runs on the Amazon Fire TV (and TV Stick) which is powered by Android 4.4 AOSP. Based on this we implemented an own native TV app which allows to use the Amazon Fire TV or the Stick to watch FTA Satellite TV over a SAT>IP Server. For this app we use the same Inaris DVB service which we already use in context of Android TV. In contrast we have written our own TV application frontend which directly uses the Inaris DVB service. This demonstrates different usage scenarios for the Inaris DVB service on Android / Android TV.
Teletext running on Android TV
Teletext on Android TV
In addition to video and subtitles, a number of other services are available for DVB broadcast TV that shouldn’t be overlooked here. As an introduction to the connection of additional services, we have chosen the good old Teletext, which could be found in every TV in Europe during its popularity.
The TV Input Framework (TIF) provides a very pragmatic approach for the integration of additional services with Android TV:
Each TV Input Service, in other words any data source from TV services, is responsible for the selection, control, and display of additional services. It can also produce an overlay to video, where it presents that supplementary service. The data source receives the key events from the TV app in order to respond to user input. However, the latter is only permitted to services with system permissions, in other words only services that are pre-installed by the system manufacturer.
The TV Input Service is a fixed term in the TIF (TV INPUT FRAMEWORK) from Google, and each represents a data source. For example, one TV Input Service can provide T-Home, another DVB-C, as well as any other live IPTV service.
Since we consider the interplay of TV on mobile devices to be very important, we pursue both the stand-alone products and the use of Inaris DVB service in client-server based systems.
In order to find a generic approach for the integration of an additional service such as Teletext for all of these application areas, we relied on proven web technologies.
For the implementation we used our Teletext Decoder as REST service, which returns the rendered Teletext pages in PNG format. Using Android TV the Image View in the video overlay, which displays this PNG, is created from the TV Input Service. The same technique can also be applied by any other app, and even from remote client apps and browser applications.
The Teletext REST service has already been implemented for the Nexus Player and other STBs with Android TV. Teletext, which requires at least 500 ms display updates to run even with the use of web technologies, demonstrates sufficient performance on today’s Android systems.
In the following we will now explore whether this approach is also suitable for other services, such as HbbTV.
Inaris Middleware running on Nexus Player
Inaris runs on Android TV
Since we have been engaged for years with Inaris in relation to Android, in the context of various studies and POCS (such as Inaris in a SAT> IP app on the Android Tablet), we were able to implement Inaris on multiple Android platforms (including the Google Nexus Player) with Android TV as a system service that is utilised by an Inaris TV Input Service. It is accessed directly from the TV app.
Apart from Android TV, this Inaris system service can also be used on AOSP (Android Open Source Package) without using TIF (TV Input Framework).
Why are we focusing on this subject?
After Google presented its new Android 5.0 with Android TV at the I/O Conference in August 2014, many TV system providers and operators showed interest in profiting from the advantages of a standardised operating system with corresponding functionality (such as Google Playstore and Live Cycle Management).
Android TV does not offer, as one might expect, live TV functionality with DVB tuning, channel scan, zapping, transport stream decoding, etc. Android TV is merely a framework made available to provide the user with live video services within a TV app. What is missing is a corresponding DVB middleware. The Inaris DVB Service is the missing link.
The Android robot logo has been reproduced or modified from a work created and shared by Google and is used for attribution under the terms of the Creative Commons 3.0 license.