Block matching

Started by
0 comments, last by James Clayton 19 years, 11 months ago
Hi, I''m not too sure if this is the place to be posting, but I''ll give it a go anyhow. I''m currently looking for fast methods of video block matching. I''ve written a software block matcher, in C++ and then tried optimising in asm. It wasn''t really fast enough. I know block matching is used throughout the encoding of MPEG, and I believe there is hardware acceleration for MPEG on most of today’s graphic cards. Although this is probably for decoding, I''m having a bit of difficulty trying to find information about the extent of acceleration that these cards provide. Does anyone know if there’s a way of accessing any block matching features on today’s graphics cards? I suppose I could try writing a few shaders to calculate a difference map from 2 textured quads at different displacements... Reading back textures from the gfx card doesn''t sound like fun though. Any thoughts or suggestions? Thanks, James.
Advertisement
Most video cards these days don''t have any form of MPEG acceleration, simply because modern CPUs are fast enough that they don''t need it. Back in the good old days when they did, though, the acceleration was in the form of fast hardware MDCT and IMDCT, for which see Google. Anyways, I suggest you do this on CPU... there should be plenty of ASM implementations out there which take advantage of SSE/SSE2/3Dnow/MMX/whatever, and which are optimized to the teeth.

"Sneftel is correct, if rather vulgar." --Flarelocke

This topic is closed to new replies.

Advertisement