To view parent comment, click here.
To read all comments associated with this story, please click here.
For a counter example of why Acceleration != Full-Implementation see 3D accelerators. They contain neither OpenGL or DirectX, but rather functions which can accelerate their common operations.
It is difficult to say from the outside whether a particular card supports full decompression of a codec, however for ATI I believe this is the case.
XvMC doesn't support full decoding of h264 as far as I know, only selected parts of the pipeline. I can't say whether this is a fundamental incompatibility, or just not implemented yet. Some proprietary implementations , like VDPAU from NVidia (which works quite well for me), support the full pipeline, I believe.
The layers you describe exist in theory but probably aren't actually being called/used in the way you describe. Firstly XvMC likely calls the xorg driver, secondly, I think the XvMC/xorg-driver layers do not support h264. I'm not sure what that means for licensing...
I think you might find that there are a great number of patents involved in h.264, but all of them relate only to one or other of the low-level functions. (Here, I use the classic meaning of "function", which is a mathematical operation which takes one or more parameters as inputs, and produces one or mor values as output. Which, BTW, is why software patents are silly in the first place, because mathematics should not be patentable subject matter). Anyway, there is no patent which covers h.264 "overall".
The card is advertised (by ATI) as including the following functionality within the hardware.
http://www.amd.com/us/products/desktop/graphics/ati-radeon-hd-4000/...
This is a long list.
When I buy the card, I get an implied license to use all of those functions.
http://en.wikipedia.org/wiki/Implied_license
There is no doubt at all that when I purchased my ATI HD4350 video card, I have purchased a physical embodiment of all of the functions listed in the specifications as linked above.
Within the list it includes specifically hardware decoding of h.264. I have a full and reasonable expectation, when I bought my ATI HD4350 card, that included within that purchase was a license to use the h.264 decoder which is described as being included within it.
Any lawyer representing MPEG LA is going to have a very, very difficult task trying to claim that I must pay again for a licenase for the same functions in my Linux OS, because of this:
http://en.wikipedia.org/wiki/Exhaustion_doctrine
Having been effectively sold one license for H.264 decoding, I don't need to buy any other. To imply anything else would be misrepresentation at least, or outright fraud even.
Now, the really, really interesting thing is this: why exactly are people like you so keen to try to imply that this is not the case?
Hmmmmm?
Edited 2010-05-18 23:35 UTC





Member since:
2007-02-17
Here are the specs for my video card:
http://www.amd.com/us/products/desktop/graphics/ati-radeon-hd-4000/...
ATI Avivo™ HD Video and Display Platform
2nd generation Unified Video Decoder (UVD 2)
Enabling hardware decode acceleration of H.264, VC-1 and MPEG-2
There is also quite a long list of other functions related to hardware video acceleration, although these are not specific to h.624 I would think.
Does Hardware Accelerated Decoding (or "hardware decode acceleration") === Hardware Decoding? I know that the terms are often used synonymously, but are they the same thing. Surely your graphics card still requires some software which understands h.264, to tell the GPU what to do. "
The graphics card functions are accessed via an Application Programming Interface ... aka an API.
Software which calls that API would be termed a "driver".
Video player software which could play H.264 videos would call the driver, which in turn would use the video card API to pass on the video data to the video card to be decoded by the card's decoder functions (collectively known as UVD).
The decoder functions are on the video card. They are not executed by any of the higher layers of software in this stack.
My Linux system could have a player, say Firefox, or VLC, or SMPlayer, which would call the driver, xf86-video-ati, which in turn would call the card's hardware video acceleration API, XvMC, which would then access the actual decoder embedded on the card. None of the software layers would actually have a H.264 encoder themselves.
http://en.wikipedia.org/wiki/XvMC
See? The video decoding is offloaded to the GPU video-hardware.
Therefore, the higher layers of software do not violate any H.264 patent.
Therefore, since I have purchased the video card, I have an implied license to use the patented decoder functions embedded within the video card, and I do not require any further license to use the rest of the stack (the higher layers), since these are not patented. Therefore, I can use all of this on my Linux system perfectly legally, since I have paid for the video card.
Edited 2010-05-18 14:45 UTC