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.org

This Is What Started AMD's Open-Source Strategy

Michael Larabel

Published on 17 September 2011
Written by Michael Larabel
Page 4 of 6 - 57 Comments

  1. Video Support

The X Video Extension provides seamless video support for X. It supports playback of video streams from different sources: software provided video data as well as video data captured from hardware are supported.

Hardware decoding of compressed video is supported by the XvMC (Xvideo Motion Compensation) extension.

Video playback can easily be implemented using components of ATI AVIVO technology.

Xvideo (Xv)

Traditionally video playback from software content (XvPutImage) was implemented using a video overlay scaler as it provides the lowest overhead implementation possible for displaying Luminance/Chrominance based content. The R600 series chipsets seems to provide one video overlay scaler per display controller. Still this infrastructure would limit us to a single video stream per output, furthermore the converted content would not be compositable. Therefore we would instead opt for utilizing the 3D engine to composite the video content to the scan-out buffer.

The R600 chipset generation supports hardware color space conversion. If this engine is capable of converting most Y/V formats to (A)RGB at up to HDTV resolutions it may most likely provide a back end for a compositable, low overhead, Xv implementation. It could also serve as a starting point to implement non-RGB visuals for X.

It should be possible to involve the AVIVO's Advanced Video Processor with both of the above options, which could dramatically increase the quality of playback, even with lesser quality content.

Another option is to relegate color conversion to a shader. The shader language for this is readily available, so it would be easy to implement, once the necessary driver support for shaders is provided.

Also Glucose would provide another opportunity here: NOVELL has implemented fully compositable Xv support for Xgl. This could easily be added to Glucose.

A time estimate depends on the chosen path and its possible prerequisites as well as on more detailed hardware knowledge.

Accelerating Media Decoding

The XvMC extension, as it stands today, is capable of supporting hardware accelerated MPEG1 and 2 decompression. This provides support for motion compensation, iDCT and slice decoding (VLD). It has wide media player support and the existing acceleration could be readily implemented for R600.

To utilize more of the capabilities of the AVIVO's Universal Video Decoder, it would be possible to extend this support to other video codecs such as MPEG-4, DiVX, WMV9 and H264/AVC. Since this will require more than just adding additional driver side support it might provide a good opportunity to reevaluate the current XvMC specification.

Video Input

In the 'radeon' driver there exists support for the ATI Rage Theater 200 video decoder. This has been unmaintained since X.Org X11 R6.9. Furthermore it has neither been updated for AVIVO, nor a possibly revised capture engine, and may require significant work. Both direct XVideo and V4L (Video4Linux) support for video input can be provided.

Latest Articles & Reviews
  1. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  2. 5-Way Linux Distribution Comparison On The Core i3 NUC
  3. OCZ ARC 100 Linux SSD Benchmarks
  4. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
  5. Transcend SSD370 256GB
  6. Linux 3.19 File-System Tests Of EXT4, Btrfs, XFS & F2FS
Latest Linux News
  1. Ubuntu 15.04 Beta Released, Ubuntu MATE Made Official
  2. Coreboot Developer: Purism Doesn't Deliver On Libre Firmware
  3. LLVM 3.6 & Clang 3.6 Deliver More Features, Complete C++14 Support
  4. The Most Popular Open-Source Linux Benchmarks
  5. The Tremendous Features Of Fedora 22
  6. Krita 2.9 Released, Their Biggest Release Ever
  7. RISC OS Now Works With The Raspberry Pi 2
  8. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  9. Unigine 2.0 Beta Brings Performance Optimizations, Oculus Rift DK2 Support
  10. Wayland's Weston Gets A Surface-Shooting API
Most Viewed News This Week
  1. Linux 4.0-RC1 Tagged, Linux 4.0 Will Bring Many Notable Improvements
  2. Screenshots Of The GNOME 3.16 Changes
  3. Ubuntu 14.04.2 LTS Released & Ubuntu 15.04 Now In Feature Freeze
  4. Qt 5.5 Features: Many Exciting Improvements
  5. Mir Now Depends Upon C++14
  6. GNOME 3.16 Beta Brings Wayland-Based Log-in Screen
  7. Linux 4.0 Doesn't Have The Weirdest Codename
  8. LLVM Clang Compiling The Linux Kernel Is A Big Topic For 2015
%%CLICK_URL_UNESC%%