# HG changeset patch # User michael # Date 1266087651 0 # Node ID dad947e53c526731f017434902e7956dfb47f633 # Parent c11bcf7e3e6b97572a6b433e877e5bdf908059a6 Move more code under if(!IS_DIRECT(mb_type)). diff -r c11bcf7e3e6b -r dad947e53c52 h264.h --- a/h264.h Sat Feb 13 18:59:25 2010 +0000 +++ b/h264.h Sat Feb 13 19:00:51 2010 +0000 @@ -1015,6 +1015,7 @@ if((IS_SKIP(mb_type) || IS_DIRECT(mb_type)) && !FRAME_MBAFF) continue; + if(!IS_DIRECT(mb_type)) { h->ref_cache[list][scan8[5 ]+1] = h->ref_cache[list][scan8[7 ]+1] = h->ref_cache[list][scan8[13]+1] = //FIXME remove past 3 (init somewhere else) @@ -1026,7 +1027,7 @@ *(uint32_t*)h->mv_cache [list][scan8[4 ]]= *(uint32_t*)h->mv_cache [list][scan8[12]]= 0; - if( CABAC && !IS_DIRECT(mb_type)) { + if( CABAC ) { /* XXX beurk, Load mvd */ if(USES_LIST(top_type, list)){ const int b_xy= h->mb2b_xy[top_xy] + 3*h->b_stride; @@ -1084,7 +1085,7 @@ h->direct_cache[scan8[0] - 1 + 2*8]= 0; } } - + } if(FRAME_MBAFF){ #define MAP_MVS\ MAP_F2F(scan8[0] - 1 - 1*8, topleft_type)\