Microsoft looks to have acquired a trump now that it has been granted a patent for using graphics processors for encoding video. The patent was applied for six years ago and has been approved as late as last week.
Microsoft started using GPU accelerated video encoding technology with Windows Vista back in 2007, when the technology was partially baked into DirectX 10 and Direct Compute. Since then both NVIDIA and AMD have jumped on the GPGPU train where not at least NVIDIA CUDA has been very successful.
Exactly how this will affect them is a bit hard to predict, but potentially both software and graphics card developers will have to pay license fees in the future. The patent was filed on October 22nd, 2004, named ”Accelerated video encoding using a graphics processing unit”.
The system implements a technique that enables the GPU to perform motion estimation for video encoding. The technique allows the GPU to perform a motion estimation process in parallel with the video encoding process performed by the CPU. The performance of video encoding using such a system is greatly accelerated as compared to encoding using just the CPU. Also, data related to motion estimation is arranged and provided to the GPU in a way that utilizes the capabilities of the GPU. Data about video frames may be collocated to enable multiple channels of the GPU to process tasks in parallel. The depth buffer of the GPU may be used to consolidate repeated calculations and searching tasks during the motion estimation process.
The entire patentet can be found at USPTO and considering that even Intel has started baking in video encoding circuits in its future processors this should prove to be perfect timing for Microsoft. We will have to wait and see how it will use the patent.