summaryrefslogtreecommitdiff
path: root/libavcodec/h264_loopfilter.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2010-01-20 00:17:16 +0000
committerMichael Niedermayer <michaelni@gmx.at>2010-01-20 00:17:16 +0000
commit9528ce7b996a0d31133b3df5e312760f4d4b825b (patch)
tree91bbeb3f56c109447192eff894e6f55816cd777e /libavcodec/h264_loopfilter.c
parent75fb5c24ed16743a31d5838b55984b4bf89d48bb (diff)
Sightly simplify initialization of int start.
No real speed change. Originally committed as revision 21336 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h264_loopfilter.c')
-rw-r--r--libavcodec/h264_loopfilter.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/libavcodec/h264_loopfilter.c b/libavcodec/h264_loopfilter.c
index d50384fb80..452a77aa3e 100644
--- a/libavcodec/h264_loopfilter.c
+++ b/libavcodec/h264_loopfilter.c
@@ -430,7 +430,6 @@ static av_always_inline void filter_mb_dir(H264Context *h, int mb_x, int mb_y, u
int edge;
const int mbm_xy = dir == 0 ? mb_xy -1 : h->top_mb_xy;
const int mbm_type = s->current_picture.mb_type[mbm_xy];
- int start = h->slice_table[mbm_xy] == 0xFFFF ? 1 : 0;
const int edges = (mb_type & (MB_TYPE_16x16|MB_TYPE_SKIP))
== (MB_TYPE_16x16|MB_TYPE_SKIP) ? 1 : 4;
@@ -439,13 +438,10 @@ static av_always_inline void filter_mb_dir(H264Context *h, int mb_x, int mb_y, u
(mb_type & (MB_TYPE_8x16 >> dir)) ? 1 : 0;
// how often to recheck mv-based bS when iterating along each edge
const int mask_par0 = mb_type & (MB_TYPE_16x16 | (MB_TYPE_8x16 >> dir));
+ int start = h->slice_table[mbm_xy] == 0xFFFF
+ || first_vertical_edge_done
+ || (h->deblocking_filter==2 && h->slice_table[mbm_xy] != h->slice_num);
- if (first_vertical_edge_done) {
- start = 1;
- }
-
- if (h->deblocking_filter==2 && h->slice_table[mbm_xy] != h->slice_num)
- start = 1;
if (FRAME_MBAFF && (dir == 1) && ((mb_y&1) == 0) && start == 0
&& !IS_INTERLACED(mb_type)