Linked by Thom Holwerda on Sun 16th May 2010 12:52 UTC, submitted by mrsteveman1
Internet & Networking Mozilla, sticking to its ideals of the open web, decided long ago that support for the patent-encumbered H264 codec would not be included in any of its products. Not only is H264 wholly incompatible with the open web and Free software, it is also incredibly expensive. Mozilla could use one of the open source implementations, but those are not licensed, and the MPEG-LA has been quite clear in that it will sue those who encode or decode H264 content without a license. Software patents, however, are only valid in some parts of the world, so an enterprising developer has started a project that was sure to come eventually: Firefox builds with H264 support.
Permalink for comment 425222
To read all comments associated with this story, please click here.
Member since:

Here are the specs for my video card:
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.
X-Video Motion Compensation (XvMC), is an extension of the X video extension (Xv) for the X Window System. The XvMC API allows video programs to offload portions of the video decoding process to the GPU video-hardware.

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

Reply Parent Score: 2