summaryrefslogtreecommitdiff
path: root/libavcodec/h264_mb.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2015-01-17 22:28:46 +0100
committerAnton Khirnov <anton@khirnov.net>2015-03-21 11:27:12 +0100
commit8b00f4df20f4a8ab0656fdaf7d00233a6515a052 (patch)
treed38eecad62cb1b7881766f1103a24804864017bd /libavcodec/h264_mb.c
parent4bd5ac200d15b4f458a50f66006549825f9fc865 (diff)
h264: move some neighbour information into the per-slice context
Diffstat (limited to 'libavcodec/h264_mb.c')
-rw-r--r--libavcodec/h264_mb.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libavcodec/h264_mb.c b/libavcodec/h264_mb.c
index e26f5c9f70..1515bc800d 100644
--- a/libavcodec/h264_mb.c
+++ b/libavcodec/h264_mb.c
@@ -496,7 +496,8 @@ static av_always_inline void prefetch_motion(H264Context *h, int list,
}
}
-static av_always_inline void xchg_mb_border(H264Context *h, uint8_t *src_y,
+static av_always_inline void xchg_mb_border(H264Context *h, H264SliceContext *sl,
+ uint8_t *src_y,
uint8_t *src_cb, uint8_t *src_cr,
int linesize, int uvlinesize,
int xchg, int chroma444,
@@ -519,7 +520,7 @@ static av_always_inline void xchg_mb_border(H264Context *h, uint8_t *src_y,
if (h->deblocking_filter == 2) {
deblock_topleft = h->slice_table[h->mb_xy - 1 - h->mb_stride] == h->slice_num;
- deblock_top = h->top_type;
+ deblock_top = sl->top_type;
} else {
deblock_topleft = (h->mb_x > 0);
deblock_top = (h->mb_y > !!MB_FIELD(h));