The Raspberry Pi is a computer the size of a deck of cards that has sparked a revolution with tinkerers and teachers around the world. When the Raspberry Pi Foundation released their first product in 2012 they could not know the impact it would have on tech industry. Several iterations later and even Microsoft has an operating system that runs on the Raspberry Pi. This tiny computer allows individuals to learn and build without high cost barriers. Development that had previously been limited to large companies is now available to individual developers and small startups. Because the Raspberry Pi is so easily available, it has great support through the large community of programmers and educators building and teaching with the device.
The latest iteration of hardware, the Raspberry Pi 3 Model B, is quite powerful with a 1.2GHz 64-bit quad-core ARMv9 CPU. With the integrated HDMI and Ethernet ports, this device is a great way to get media onto TVs. In fact there are several operating systems for the Raspberry Pi that exist to do just this, but what about live content? The device certainly has a capable enough GPU to stream IP video, although there it would need an adaptor to display RF streams.
The Raspberry Pi is an extremely capable computer, and is not that different from the existing client HDPs. With this thought in mind, we set out replicate the client HDP on the Raspberry Pi. For those not familiar with it, RDKM created the Hardware Development Platform (HDP) several years ago to provide a standard hardware device for developers to build, integrate, and test their apps and RDK contributions on. However, this device is expensive, large, and requires a number of licenses. A person interested in an HDP box could wait several weeks to receive their box from the time they apply. Since the Raspberry Pi is open and easily obtainable hardware, the only thing slowing you down is how fast your computer can build the image!
Speaking of the image, we configured the system to be built via Yocto and the code is checked in to CMF. In keeping with the latest trend in RDK and a request from RDKM, RDK Browser has been removed along with QT, and the client relies upon the Metrological WPE browser instead. The image features RDK Media Framework and G streamer 1.4.4. The device can play IP stream content directly over an internet connection and can also play IP streams which have been made available from QAM based gateways like the hybrid HDP box or even an emulator running in virtual box. With the same HDP applications running, and the same default guide experience, you would be hard pressed to determine a difference by looking at the display alone. While you can do most functions with the Raspberry Pi out of the box, you may need to buy an MPEG-2 license if you wish to use MPEG streams.
This is only the start of RDK on the Raspberry Pi. Beyond feature expansion for the current image, work on an RDK-B image has already begun and a gateway version of RDK-V (with QAM video and DVR capabilities) is also on the way. The Raspberry Pi features a GPIO header which opens up a lot of industry standard interfaces for easy integration with IoT development and with the standard camera module the Raspberry Pi could very easily bring camera development into the RDK stack. The Raspberry Pi is open enough that developers are not limited to the configurations and code provided on the CMF. Integrators have the power to innovate and contribute features back into RDK and influence its roadmap. It’s an exciting time to be alive!
More information is available here.