Mercurial > libavcodec.hg
changeset 11014:51d8befcc773 libavcodec
Simplify left_xy content for the loop filter, this also makes it closer to
what is needed and its faster too.
author | michael |
---|---|
date | Tue, 26 Jan 2010 14:55:19 +0000 |
parents | 5e5d44c920b6 |
children | d844c58b985a |
files | h264.h |
diffstat | 1 files changed, 10 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/h264.h Tue Jan 26 13:39:26 2010 +0000 +++ b/h264.h Tue Jan 26 14:55:19 2010 +0000 @@ -762,6 +762,10 @@ const int curr_mb_field_flag = IS_INTERLACED(mb_type); if(s->mb_y&1){ if (left_mb_field_flag != curr_mb_field_flag) { + if(for_deblock){ + left_xy[0] = mb_xy - s->mb_stride - 1; + left_xy[1] = mb_xy - 1; + }else{ left_xy[1] = left_xy[0] = mb_xy - s->mb_stride - 1; if (curr_mb_field_flag) { left_xy[1] += s->mb_stride; @@ -772,6 +776,7 @@ topleft_partition = 0; left_block = left_block_options[1]; } + } } }else{ if(curr_mb_field_flag){ @@ -780,6 +785,10 @@ top_xy += s->mb_stride & (((s->current_picture.mb_type[top_xy ]>>7)&1)-1); } if (left_mb_field_flag != curr_mb_field_flag) { + if(for_deblock){ + left_xy[0] = mb_xy - 1; + left_xy[1] = mb_xy + s->mb_stride - 1; + }else{ left_xy[1] = left_xy[0] = mb_xy - 1; if (curr_mb_field_flag) { left_xy[1] += s->mb_stride; @@ -787,6 +796,7 @@ } else { left_block = left_block_options[2]; } + } } } }