Article Title: hard decoding of graphics cards in Linux. Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedded systems, and open source.
DXVA is available in Windows. A standard decoder can use the computing power of the video card to partially or even complete video decoding. Now ATI's UVD2 and NVIDIA's PureVideoHD have matured. Intel ClearVideo is also in progress. In short, Windows users can enjoy the benefits of the new graphics card.
However, users in Linux are miserable. The most common video output in Linux is xv, which can provide quick display, however, there is no corresponding method for using the new features of UVD2 and PureVideoHD. XvMC can be used to partially decode the video card. The problem is that only full hard decoding of mpeg2. For H264, VC1 does not have some corresponding decoding methods, so it is impossible to perform full hard decoding on H264 and VC1. It is not convenient to use. It is estimated that many mplayer users have not specified-vo xvmc-vc ffmpeg12mc. In response to this situation, a variety of solutions have also been proposed, but no one has become a climate. The result is... Currently, the hard decoding solution for Linux graphics cards is a fierce fight ......
Because the video card decoding API in Linux is provided, only links are provided below.
● Intel:
ProposedVA-API. However, the community discussion thinks that it basically repeats the DXVA set, so ...... The Community also proposed to expand XvMC to support more formats... I don't know much about this.
● ATI:
Several library files with unknown intentions appear in the new Linux driver. After symbol analysis, the UVD and XvBA words are found. View DetailsLink. UVD is clear, but what is XvBA? X-Video Bitstream Acceleration (XvBAAMD extended Xv to enable Bitstream decoding, which is an important part of HD Format Decoding. The original GPU is basically incapable of integer and bit operations, so it is difficult for early graphics cards to complete full Decoding in HD format. The new ATI and NVIDIA graphics cards have built-in hardware for this situation. This makes it possible to completely decode the video card. However, AMD does not release relevant instructions, and the driver does not have the corresponding header file and cannot be called. Therefore, it is only speculation at this stage. But since the library file has this symbol, it should not be wrong.
● Generic GPU-Accelerated Video Decoding:
OneGoogle code projectIt can also be seen at http://www.bitblit.org/gsoc/g3dvl/index.shtml. General video decoding acceleration using OpenGL shader is currently under development. There seems to be no specific hardware requirement, which means that decoding can be performed only by the Gallium3D-based drive framework (this is what Mesa3D uses ). At present, XvMC has been implemented using its own API, which provides compatibility and transitional solutions.
New discoveries todayNVIDIA Driver Brings PureVideo Features To Linux:
The Linux driver of NVIDIA's 8 series graphics card will no longer support Xvmc, which has aroused considerable public anger. But I didn't think of it !! NVIDIA has released the 180.06 Linux driver and has a video decoding API !! Vdpau api (The Video Decode and Presentation API for Unix), not only decoding, but also post-decoding, such as noise reduction and other functions !! What's more, the driver has been released along with header files and documents, and NVIDIA has provided patches for enabling related features for mplayer on the website for download !! After thatThis pageIt's so amazing that Benchmarks came into play just after the release. The result is that the mplayer that has been patched uses the-vo vdpau-vc ffh1_vdpau parameter to play the high-definition H264 video. The result is that the CPU usage for downgrading to 1.8G is basically 10%, it can prove its hardware acceleration capability!
These messages indicate the increasing importance that the vendor attaches to Linux development. But now it's a big fight... A particularly obvious rule in Linux is the survival of the fittest. Well Dongdong is also used after writing it for N years. It's a bad flash... I don't know what the final result of this war will be... But for Linux users, the experience is greatly enhanced.