1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking Benchmarking Platform
Phoromatic Test Orchestration

Nouveau Gets H.264/MPEG2 Decoding From VP2

Nouveau

Published on 28 June 2013 05:48 AM EDT
Written by Michael Larabel in Nouveau
9 Comments

Patches published this week allow for H.264 and MPEG2 video decoding on certain NVIDIA GeForce GPUs via the VP2 PureVideo HD hardware engine.

On the NV84 (GeForce 8600) through NV96 (GeForce 9400~9600~9700) GPUs and NVA0 (GT 200) graphics processors is a V2 engine that is now supported by the reverse-engineered open-source NVIDIA graphics driver. The NVIDIA VP2 engine is a bit-stream processor for decoding H.264 and a video processor to take care of certain video operations on MPEG/H.264/VC-1 streams.

A patch posted on Sunday loads a kernel for these engines, which are based on embedded Xtensa chips, and for loading the blob firmware from user-space. If you're using the NVIDIA binary Linux driver, this engine is under the "PureVideo HD" brand and the engine is exposed via VDPAU.

This VP2 engine work for select NVIDIA GeForce/Quadro GPUs was done by Ilia Mirkin and the first patch was published to the Nouveau mailing list as the support isn't yet part of the mainline Linux kernel.

Ilia Mirkin has now published the Gallium3D driver patches against the NV50 driver for exposing the VP2-accelerated H.264 and MPEG-2 codec support. While this is a step forward for hardware-accelerated video playback on Nouveau, H.264 interlacing isn't rendering right, there's some H.264 artifacts on occassion, and MPEG-2 with VDPAU shows artifacts. Via the Gallium3D driver, this support can be exposed via the VDPAU and XvMC video APIs.

In terms of performance, Mirkin notes with his current Gallium3D NV50 patch, "XvMC ends up ~20% faster than plain CPU decoding, and likely that percent improves on older CPUs that can't decode MPEG2 quite as quickly. VDPAU provides further improvements (likely because it is able to skip mb's while XvMC can't), but there are artifacts for reasons unknown."

The Gallium3D patch at just under two thousand lines of code hasn't yet been merged into Mesa but can be found on the mailing list. Meanwhile the VP2 Nouveau DRM patch will hopefully make it into the Linux 3.11 kernel.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Articles & Reviews
  1. Sub-$20 802.11n USB WiFi Adapter That's Linux Friendly
  2. The Lenovo T450s Is Working Beautifully With Linux
  3. Linux 4.0 SSD EXT4 / Btrfs / XFS / F2FS Benchmarks
  4. Linux 4.0 Hard Drive Comparison With Six File-Systems
  5. Lenovo ThinkPad T450s Broadwell Preview
  6. How Open-Source Allowed Valve To Implement VULKAN Much Faster On The Source 2 Engine
Latest Linux News
  1. Library Operating System (LibOS) For Linux Still Being Pursued
  2. C4 Game Engine Continues Supporting Linux
  3. Debian 8.0 Jessie's Installer RC3 Released
  4. Features Thus Far For The Linux 4.1 Kernel
  5. Intel's Turbostat Adds Skylake Support In Linux 4.1
  6. Microsoft's Open-Source Group Merges Back Into The Company
  7. EXT4 In Linux 4.1 Adds File-System Level Encryption
  8. Open-Source Ardour 4.0 Audio Software Has Big Improvements
  9. Linux-Powered Endless Computer Raises $100k+ In A Few Days
  10. GCC 5.1 RC2 Arrives, GCC 5.1 Planned For Next Week
Most Viewed News This Week
  1. Nouveau: NVIDIA's New Hardware Is "VERY Open-Source Unfriendly"
  2. Linux 4.1 Brings Many Potentially Risky x86/ASM Changes
  3. Linux 4.0 Kernel Released
  4. Microsoft Announces An LLVM-Based Compiler For .NET
  5. VirtualBox 5.0 Beta 2 Released
  6. KDBUS Is Taking A Lot Of Heat, Might Be Delayed From Mainline Linux Kernel
  7. LibreOffice 4.5 Bumped To Become LibreOffice 5.0
  8. Linux Audio Is Being Further Modernized With The 4.1 Kernel