Fix deblocking of transform boundaries.

This fixes issues with inter. Deblocking works now.
This commit is contained in:
Ari Koivula 2014-03-21 10:42:41 +02:00
parent c42b25054a
commit 0f492c7680

View file

@ -180,11 +180,12 @@ void filter_deblock_edge_luma(encoder_control *encoder,
int8_t strength = 0; int8_t strength = 0;
{ {
// Don't do anything if there is no PU or TU edge here. // Return if called with a coordinate which is not at CU or TU boundary.
int cu_width = LCU_WIDTH >> cu_q->depth; // TODO: Add handling for asymmetric inter CU boundaries which do not coincide
if (dir == EDGE_HOR && ypos % cu_width != 0) { // with transform boundaries.
return; const int tu_width = LCU_WIDTH >> cu_q->tr_depth;
} if (dir == EDGE_HOR && (ypos & (tu_width - 1))) return;
if (dir == EDGE_VER && (xpos & (tu_width - 1))) return;
} }