On Mon, 15 Oct 2007, Martin Zlomek wrote:
I have discovered that h264_loop_filter_strength_mmx2(), used for 'bS' calculation in inter predicted macroblocks, gives wrong output when used in fields (compared with the reference decoder). Attached patch is temporary not-optimized solution giving correct output.
I would like to ask Loren Merritt for help - could you look at this, please? Learning MMX instructions and understanding your code would not take me a while...
It's probably due to mvy_limit. I don't know how to fix it without sacrificing some speed (not that I benchmarked anything), so I would just leave filter_mb_fast for the common case that needs to be fast (i.e. progressive), and let PAFF uses the non-asm code. But if you really want: patch is untested and doesn't modify the prototype and caller to match. --Loren Merritt