When it comes to multimedia streaming, people tend to think about YouTube, Netflix and many other services that deliver your favorite clips on smartphones, tablets and laptops.
But thanks to a series of smarter technologies, users can also stream videos between devices over wireless protocols. One example is Miracast, a peer-to-peer wireless screencasting standard that runs on existing Wi-Fi Direct connections in a manner similar to Bluetooth. Miracast is the standard adopted by operating systems such as Android 4.2 (and beyond) or Windows 8.
Today I would like to present you a Miracast demo that showcases the performance and image quality of our PowerVR video IP. To allow for such low latency applications, we have added a series of features to our PowerVR video processors which enable our decoders and encoders to communicate more efficiently with other on-chip processors (i.e. GPUs, ISPs, etc.). One of these technologies is called Zero Memory™ and can also be seen in action here; this technology allows passing of data between compatible Imagination processors, without using system memory.
The setup for the demos is presented below; from left to right, we have two devices running Android 4.4 (the new Google Nexus Player and the Huawei Honor 6 smartphone) and a Miracast receiver from Netgear connected to a 1080p screen.
The work we’ve done significantly reduces power, latency and memory bandwidth usage. For example, PowerVR encoders can output coded bitstream to a port instead of memory, creating a framework for hardware assisted transmission which removes the latency introduced by memory buffer management. PowerVR encoders can also support predictive lossless encoding for high quality display mirroring (when high bandwidth is available).
High quality and low latency Miracast streaming
In the video below, you can see the new Huawei Honor 6 smartphone playing a 1080p video at 60 fps. Honor 6 is powered by a HiSilicon Kirin 920 chip; this application processor integrates a PowerVR video decoder and encoder for high quality, low power multimedia playback and recoding, respectively.
The demonstration shows both PowerVR engines working together to output video on two separate displays:
- the PowerVR video decoder takes care of the low power processing required for smooth H.264 playback on the smartphone’s display
- the PowerVR video encoder captures the composited output of the PowerVR video decoder, GPU and display engine in H.264 format and sends it using the Miracast standard to the receiver (the little black box) connected via HDMI to the PC monitor.
The receiver is deliberately chosen to be a third party solution to demonstrate the full interoperability of Imagination solutions with the Miracast standard. We’ve also added a small counter that indicates the difference in frames between the two video streams displayed on each screen to show the low latency and high performance characteristics of our PowerVR video processors.
The difference (less than 7 frames) is so small it can only be captured using a high speed camera recording at 120 fps. There are limitations in this demo (i.e. to the minimum latency that can be achieved) caused by the varying level of interoperability between the Android operating system, Miracast and the performance characteristics of the third party hardware used.
In an end to end system, using only IP processors from Imagination, a latency of well under a single frame can be achieved.
PowerVR GPUs and VPUs processing four video streams simultaneously
On a related note, we’ve also included a second demonstration showing multiple PowerVR processors working together to accelerate multimedia-related tasks. Since the Nexus Player from Google shown below is using an Intel Atom Z3560 processor, we can transfer data more efficiently between the two on-chip PowerVR processors (PowerVR G6430 GPU and PowerVR video decoder) without needing to constantly access the main system memory.
This improves performance (notice how we are able to decode four different codecs simultaneously) but also reduces power consumption considerably, providing a better overall user experience and increased platform stability.
If you want to see this demo (and many others more), come to our booth at CES 2015; we are exhibiting at the upper level of South Hall 4 (Suite S215) inside the LVCC. We will also be in Barcelona for MWC 2015; come and see us in Hall 6 on booth 6E30.