summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_encodeframe.c
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2014-03-14 17:10:32 -0700
committerJingning Han <jingning@google.com>2014-03-14 17:13:02 -0700
commit6affef728b052197f9f8a576205ea77ba7bec7c0 (patch)
tree04381bfb156bb819d08a36452cff187343af2851 /vp9/encoder/vp9_encodeframe.c
parent17d2394c43b6bef5b767a6f3e7f53398070c02ae (diff)
downloadlibvpx-6affef728b052197f9f8a576205ea77ba7bec7c0.tar
libvpx-6affef728b052197f9f8a576205ea77ba7bec7c0.tar.gz
libvpx-6affef728b052197f9f8a576205ea77ba7bec7c0.tar.bz2
libvpx-6affef728b052197f9f8a576205ea77ba7bec7c0.zip
Add bit-stream write flag to nonrd_use_partition
This is for the purpose to test variable partition choices for the same 64x64 block. Change-Id: I0fab7351a62e7d3dfccd667e908bccb996ee677e
Diffstat (limited to 'vp9/encoder/vp9_encodeframe.c')
-rw-r--r--vp9/encoder/vp9_encodeframe.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c
index 1609d582d..3e4abaa19 100644
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -2692,7 +2692,7 @@ static void nonrd_use_partition(VP9_COMP *cpi,
MODE_INFO **mi_8x8,
TOKENEXTRA **tp,
int mi_row, int mi_col,
- BLOCK_SIZE bsize,
+ BLOCK_SIZE bsize, int output_enabled,
int *totrate, int64_t *totdist) {
VP9_COMMON *const cm = &cpi->common;
MACROBLOCK *const x = &cpi->mb;
@@ -2751,10 +2751,10 @@ static void nonrd_use_partition(VP9_COMP *cpi,
*get_sb_index(x, subsize) = 0;
nonrd_use_partition(cpi, tile, mi_8x8, tp, mi_row, mi_col,
- subsize, totrate, totdist);
+ subsize, output_enabled, totrate, totdist);
*get_sb_index(x, subsize) = 1;
nonrd_use_partition(cpi, tile, mi_8x8 + hbs, tp,
- mi_row, mi_col + hbs, subsize,
+ mi_row, mi_col + hbs, subsize, output_enabled,
&rate, &dist);
if (rate != INT_MAX && dist != INT64_MAX &&
*totrate != INT_MAX && *totdist != INT64_MAX) {
@@ -2763,7 +2763,7 @@ static void nonrd_use_partition(VP9_COMP *cpi,
}
*get_sb_index(x, subsize) = 2;
nonrd_use_partition(cpi, tile, mi_8x8 + hbs * mis, tp,
- mi_row + hbs, mi_col, subsize,
+ mi_row + hbs, mi_col, subsize, output_enabled,
&rate, &dist);
if (rate != INT_MAX && dist != INT64_MAX &&
*totrate != INT_MAX && *totdist != INT64_MAX) {
@@ -2772,7 +2772,7 @@ static void nonrd_use_partition(VP9_COMP *cpi,
}
*get_sb_index(x, subsize) = 3;
nonrd_use_partition(cpi, tile, mi_8x8 + hbs * mis + hbs, tp,
- mi_row + hbs, mi_col + hbs, subsize,
+ mi_row + hbs, mi_col + hbs, subsize, output_enabled,
&rate, &dist);
if (rate != INT_MAX && dist != INT64_MAX &&
*totrate != INT_MAX && *totdist != INT64_MAX) {
@@ -2784,7 +2784,7 @@ static void nonrd_use_partition(VP9_COMP *cpi,
assert("Invalid partition type.");
}
- if (bsize == BLOCK_64X64)
+ if (bsize == BLOCK_64X64 && output_enabled)
encode_sb_rt(cpi, tile, tp, mi_row, mi_col, 1, bsize);
}
@@ -2816,7 +2816,7 @@ static void encode_nonrd_sb_row(VP9_COMP *cpi, const TileInfo *const tile,
else
set_fixed_partitioning(cpi, tile, mi_8x8, mi_row, mi_col, bsize);
- nonrd_use_partition(cpi, tile, mi_8x8, tp, mi_row, mi_col, BLOCK_64X64,
+ nonrd_use_partition(cpi, tile, mi_8x8, tp, mi_row, mi_col, BLOCK_64X64, 1,
&dummy_rate, &dummy_dist);
}
}