Remove check for identical neighboring mv field in WARPED_MOTION
This will allow us decode motion mode without knowing motion vectors
in the neighborhood.
Improves the performance by 0.3% (1.1->1.4)
Change-Id: Ie18ee2b02b1d2f89615bc8fa423beb1f9bd9a678
diff --git a/av1/common/mvref_common.c b/av1/common/mvref_common.c
index 5946b5e..b5881a6 100644
--- a/av1/common/mvref_common.c
+++ b/av1/common/mvref_common.c
@@ -1104,8 +1104,6 @@
int up_available = xd->up_available;
int left_available = xd->left_available;
int i, mi_step, np = 0;
- int mvasint[100];
- int mvnumber = 0;
int global_offset_c = mi_col * MI_SIZE;
int global_offset_r = mi_row * MI_SIZE;
@@ -1128,9 +1126,6 @@
int j;
int pixelperblock = SAMPLES_PER_NEIGHBOR;
- mvasint[mvnumber] = mbmi->mv[0].as_int;
- mvnumber++;
-
for (j = 0; j < pixelperblock; j++) {
int x = cc_offset + j % 2 + global_offset_c;
int y = cr_offset + j / 2 + global_offset_r;
@@ -1171,9 +1166,6 @@
int j;
int pixelperblock = SAMPLES_PER_NEIGHBOR;
- mvasint[mvnumber] = mbmi->mv[0].as_int;
- mvnumber++;
-
for (j = 0; j < pixelperblock; j++) {
int x = cc_offset + j % 2 + global_offset_c;
int y = cr_offset + j / 2 + global_offset_r;
@@ -1210,9 +1202,6 @@
int j;
int pixelperblock = SAMPLES_PER_NEIGHBOR;
- mvasint[mvnumber] = mbmi->mv[0].as_int;
- mvnumber++;
-
for (j = 0; j < pixelperblock; j++) {
int x = cc_offset + j % 2 + global_offset_c;
int y = cr_offset + j / 2 + global_offset_r;
@@ -1233,11 +1222,7 @@
}
assert(2 * np <= SAMPLES_ARRAY_SIZE);
- for (i = 0; i < (mvnumber - 1); ++i) {
- if (mvasint[i] != mvasint[i + 1]) break;
- }
-
- if (np == 0 || i == (mvnumber - 1)) {
+ if (np == 0) {
return 0;
} else {
MODE_INFO *mi = xd->mi[0];