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
This commit is contained in:
		@@ -2692,7 +2692,7 @@ static void nonrd_use_partition(VP9_COMP *cpi,
 | 
				
			|||||||
                                MODE_INFO **mi_8x8,
 | 
					                                MODE_INFO **mi_8x8,
 | 
				
			||||||
                                TOKENEXTRA **tp,
 | 
					                                TOKENEXTRA **tp,
 | 
				
			||||||
                                int mi_row, int mi_col,
 | 
					                                int mi_row, int mi_col,
 | 
				
			||||||
                                BLOCK_SIZE bsize,
 | 
					                                BLOCK_SIZE bsize, int output_enabled,
 | 
				
			||||||
                                int *totrate, int64_t *totdist) {
 | 
					                                int *totrate, int64_t *totdist) {
 | 
				
			||||||
  VP9_COMMON *const cm = &cpi->common;
 | 
					  VP9_COMMON *const cm = &cpi->common;
 | 
				
			||||||
  MACROBLOCK *const x = &cpi->mb;
 | 
					  MACROBLOCK *const x = &cpi->mb;
 | 
				
			||||||
@@ -2751,10 +2751,10 @@ static void nonrd_use_partition(VP9_COMP *cpi,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
      *get_sb_index(x, subsize) = 0;
 | 
					      *get_sb_index(x, subsize) = 0;
 | 
				
			||||||
      nonrd_use_partition(cpi, tile, mi_8x8, tp, mi_row, mi_col,
 | 
					      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;
 | 
					      *get_sb_index(x, subsize) = 1;
 | 
				
			||||||
      nonrd_use_partition(cpi, tile, mi_8x8 + hbs, tp,
 | 
					      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);
 | 
					                          &rate, &dist);
 | 
				
			||||||
      if (rate != INT_MAX && dist != INT64_MAX &&
 | 
					      if (rate != INT_MAX && dist != INT64_MAX &&
 | 
				
			||||||
          *totrate != INT_MAX && *totdist != 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;
 | 
					      *get_sb_index(x, subsize) = 2;
 | 
				
			||||||
      nonrd_use_partition(cpi, tile, mi_8x8 + hbs * mis, tp,
 | 
					      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);
 | 
					                          &rate, &dist);
 | 
				
			||||||
      if (rate != INT_MAX && dist != INT64_MAX &&
 | 
					      if (rate != INT_MAX && dist != INT64_MAX &&
 | 
				
			||||||
          *totrate != INT_MAX && *totdist != 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;
 | 
					      *get_sb_index(x, subsize) = 3;
 | 
				
			||||||
      nonrd_use_partition(cpi, tile, mi_8x8 + hbs * mis + hbs, tp,
 | 
					      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);
 | 
					                          &rate, &dist);
 | 
				
			||||||
      if (rate != INT_MAX && dist != INT64_MAX &&
 | 
					      if (rate != INT_MAX && dist != INT64_MAX &&
 | 
				
			||||||
          *totrate != INT_MAX && *totdist != INT64_MAX) {
 | 
					          *totrate != INT_MAX && *totdist != INT64_MAX) {
 | 
				
			||||||
@@ -2784,7 +2784,7 @@ static void nonrd_use_partition(VP9_COMP *cpi,
 | 
				
			|||||||
      assert("Invalid partition type.");
 | 
					      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);
 | 
					    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
 | 
					    else
 | 
				
			||||||
      set_fixed_partitioning(cpi, tile, mi_8x8, mi_row, mi_col, bsize);
 | 
					      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);
 | 
					                        &dummy_rate, &dummy_dist);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user