WebM, Theora Acceleration Talked About For Gallium3D

Posted by Michael Larabel on March 26, 2011

Earlier this week I mentioned a student developer looking to partake in Google's Summer of Code was interested in creating an H.264 state tracker for Gallium3D whereby any graphics card with a Gallium3D driver could have H.264 video decoding support using VA-API / VDPAU and accelerating the operations in shaders on the GPU, where in theory at least it would be universally supported across all drivers on this architecture. It's still looking hopeful that this will be hacked on this summer, but a few interesting points have been expressed.

Mesa developers haven't shot down this GSoC proposal like they effectively did with the OpenGL 4.1 state tracker proposal two weeks back over that being too ambitious for a single student to do in one summer. In fact, the Mesa developers seem fairly interested in such a video acceleration state tracker happening. As mentioned in previous articles, the only work done in this area on Gallium3D already has been for XvMC and MPEG with mixed success.

Christian König, the developer that has been working on XvMC for the R600g driver is excited about the possibility of another developer now working on "pipe-video", the branch of Mesa where this video acceleration for Gallium3D is being developed.

Other points that have been talked about for this work in recent days include:

- Shader-based video acceleration is still not ideal when modern graphics cards have dedicated units for encoding/decoding video. Unfortunately, these implementations like AMD UVD2 and NVIDIA PureVideo are not publicly documented and would require hardware-specific work.
- One opportunity instead of -- or to complement -- the H.264 video acceleration would be to target the WebM / VP8 or Theora formats. The video decoding hardware that's out there now doesn't support these open formats so it's all CPU bound for now, so working on WebM video acceleration for Gallium3D would be an original creation. Much of the work needed to target H.264, WebM / VP8, and Theora would be code that could be shared across formats.
- In terms of whether to target the VA-API or VDPAU API for such a state tracker, the consensus seems to be on using NVIDIA's Video Decode and Presentation API for Unix. It also appears that it would be easier to extend VDPAU than VA-API for handling new formats like Google's WebM.
- It was also mentioned there is someone working on WebM support over OpenCL (see the GitHub), but that's currently slower than a CPU-based solution and the open-source drivers currently don't have OpenCL support.

Let's hope this Google Summer of Code proposal is accepted and that it manages to materialize this summer into something useful.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. AMD RadeonSI Gallium3D Begins Simple CL Demos
  2. Intel Shows Off GNOME3-Based Tizen Shell
  3. Linux Desktop Security Could Be A Whole Lot Better
  4. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  5. New NVIDIA Linux Driver Supports The GeForce GTX 780
  6. Chrome 28 To Offer More Speed Improvements
  7. Digia Announces "Boot To Qt" Project
  8. X.Org Libraries Hit By Round Of Security Issues
  9. Wayland's Weston Gets Output Scaling Support
  10. Raspberry Pi Gets New Wayland Weston Renderer
  11. Debian GNU/Hurd 2013 Release Brings New Packages
Latest Forum Talk
  1. AMD RadeonSI Gallium3D Begins Simple CL Demos
  2. Intel Shows Off GNOME3-Based Tizen Shell
  3. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  4. Linux Desktop Security Could Be A Whole Lot Better
  5. Microsoft's zombie attacks Android (again)
  6. Raspberry Pi Gets New Wayland Weston Renderer
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite