Enabling Hardware Accelerated Playback for Fedora* 16

Enabling Hardware Accelerated Video Decode on Intel
®
Atom™ Processor D2000 and N2000 Series under Fedora 16
October 2012 AN
Order Number: 509577-003US 5
Intel
®
Atom™ D2000/N2000
1.0 Introduction
The Cedar Trail platform is based on the Intel
®
Atom™ Processor N2000 and D2000
Series processor (formerly called Cedarview) and the Intel
®
NM10 Express Chipset
(formerly called Tiger Point). This processor series is based on a 32nm process and
features new levels of performance-per-watt opening the door to always-on, always-
connected embedded devices.
The N2000/D2000 series processors include an integrated graphics controller with
advanced media handling capabilities such as smooth full HD (up to 1080p) video
playback along with support for wide range of outputs such as VGA, LVDS, HDMI*, DP*
and eDP
1
. Media playback is optimum when the video decoding is handled by the video
engine in the integrated graphics controller. Using the video engine can significantly
reduce the CPU workload and also help improve the quality of playback.
Intel has released graphics and media drivers (referred to as PVR-CDV drivers in this
document) for the MeeGo open-source distribution for the Cedar Trail platform. The
PVR-CDV drivers exploit the video and graphics acceleration capabilities of the media
engine. This application note is a case study on integrating these drivers with the
Fedora distribution and then demonstrating the video acceleration capability of the
system with the MPlayer video player. The steps to demonstrate graphics acceleration
using the glxgears demo utility are also provided.
The case study was done on a system with Intel
®
Atom N2800 processor and Intel
®
NM10 Express Chipset. However, the findings are applicable in general to any Cedar
Trail system.
2.0 Overview of Hardware Accelerated Decode
To meet the demands of low power and high performance, the Cedarview processor
provides dedicated graphics and video decode acceleration hardware for delivering fast
video and graphics rendering. Hardware acceleration frees up most of the CPU
bandwidth for other time critical tasks. In addition to lowering CPU utilization, hardware
acceleration also helps improve the quality of media playback by reducing or
eliminating frame drop and reducing audio/video synchronization issues. Figure 1 on
page 6 provides a simplified overview of the graphics and video acceleration stack.
VA-API is a standard API that exposes offloading of video decoding to acceleration
hardware.
libVA is an open source library implementation of the VA-API specification.
This library provides access to the hardware used for acceleration of video processing.
It enables hardware accelerated video decode at various entry points (VLD, IDCT,
Motion Compensation, deblocking) for the prevailing coding standards today (MPEG-2,
MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/WMV3). The VA hardware driver is
the Cedarview hardware-specific video decode driver.
OpenGL ES API is used to expose 3D graphics acceleration to the graphics application
2
.
libGLES is the open source library implementation of the OpenGL ES API. The DRI
driver converts libGLES commands to the graphics hardware accelerator-specific
commands.
The X server provides the basic services for managing windows displays and input
devices. It provides the basic framework for building GUIs.
1. Version 1.0 of PVR-CDV drivers does not support DP and eDP ports; support was added in v.1.0.1.
2. OpenGL API is partially supported by PVR-CDV drivers. However, OpenGL ES is the recommended
API for 3D graphics applications.