Watching video on mobile devices has become part of our daily routine. Most of us use YouTube for the latest clips from our favorite artists, snippets of daily news and (obviously) the best selection of cat videos. A brief look at YouTube’s statistics reveals the staggering amount of daily traffic the website has to accommodate. YouTube users watch over 6 billion hours of video each month, which translates to almost an hour for every person on earth; even more interesting is the fact that, according to Nielsen, YouTube reaches more US adults aged 18-34 than any cable network today.
An important component of this surge in video traffic has been the development of VP8 and VP9, two open formats created by Google for video playback, capture and conferencing.
A short history of the WebM Project
In 2010, Google launched an experimental version of YouTube that used the built-in multimedia capabilities of HTML5-based apps to stream videos. Consequently, the WebM Project was assembled and tasked with developing a new format for video and audio compression. Their work resulted in VP8, an open-source alternative to existing video standards.
Already supported in Imagination’s D4500MP video decoder and E4500MP video encode IP, VP8 is a high-performance codec aimed at bringing high-quality video content and experiences to web-connected devices. Hardware support for VP8 enables real-time transcoding of high definition video, as well as real-time multi-stream transcoding between devices, allowing consumers to experience HD content anywhere on any device.
More recently, Google released the royalty-free VP9 format, aiming to reduce the bitrate by half compared to VP8 while having the same video quality. For many mobile devices, initial support for VP9 will largely be based on software solutions before specialized video hardware will become available.
VP9 decoding on PowerVR GPUs at MWC 2014
Imagination fully supports VP9 and the WebM project, offering partners and consumers a choice of leading video codecs. We have partnered with MultiCoreWare and Google to create an efficient software decoder based on GPU compute processing on our PowerVR Rogue GPUs.
By using GPU compute for VP9 decoding, Imagination can quickly support a hardware-accelerated decode solution on a range of PowerVR Rogue GPUs. Most importantly, we can work with all of our partners and customers to ensure the current OpenCL implementation is optimized for their different hardware configurations and requirements. The optimisation work involves selecting suitable kernels for execution on the GPU and organising them to take advantage of the PowerVR Rogue architecture.
The VP9 decoder can be seen in the wild at MWC 2014 running on MediaTek’s MT8135 processor, a quad-core SoC that aims for the middle to high-end tier of the tablet market. The PowerVR Rogue GPU inside this apps processor delivers smooth 1080p@30fps decoding using OpenCL. By switching the workload on the GPU, we offload the main CPU inside the application processor, thus lowering overall system power consumption and saving precious battery life.
In the example below, the popular YouTube player is decoding live VP9 content. Because VP9 requires more computational power than H.264 and VP8, the main CPU is simply unable to keep up with the amount of complexity and thermal throttling kicks in after a few seconds and performance drops dramatically. However, when using the PowerVR GPU, thermal throttling is kept to a minimum and the mobile platform is able to sustain a constant, stable 30fps frame rate.
Our strategic vision when designing PowerVR Rogue for highly-efficient, low power GPU compute coupled with the close relationships formed with ecosystem partners like MultiCoreWare, Google and many others enables us to offer consumers the best possible user experience for mobile and embedded devices.