ref: d53645f4982bca27ec69ef41004c3d72ad1f6f22
parent: a0fa2841b87a357b85fc960837f49d0b0c37af0f
parent: b32cb9876c07158ca60e65c1484fa2f530c5cf90
author: Cheng Chen <chengchen@google.com>
date: Mon Jan 27 23:41:17 EST 2020
Merge "Add some description about partition info"
--- a/vp9/simple_encode.h
+++ b/vp9/simple_encode.h
@@ -145,6 +145,20 @@
int num_rows_4x4; // number of row units, in size of 4.
int num_cols_4x4; // number of column units, in size of 4.
// The pointer to the partition information of the frame.
+ // The frame is divided 4x4 blocks of |num_rows_4x4| rows and
+ // |num_cols_4x4| columns.
+ // Each 4x4 block contains the current pixel position (|row|, |column|),
+ // the start pixel position of the partition (|row_start|, |column_start|),
+ // and the |width|, |height| of the partition.
+ // Within the same partition, all 4x4 blocks have the same |row_start|,
+ // |column_start|, |width| and |height|.
+ // For example, if the frame is partitioned to a 32x32 block,
+ // starting at (0, 0). Then, there're 64 4x4 blocks within this partition.
+ // They all have the same |row_start|, |column_start|, |width|, |height|,
+ // which can be used to figure out the start of the current partition and
+ // the start of the next partition block.
+ // Horizontal next: |column_start| + |width|,
+ // Vertical next: |row_start| + |height|.
std::unique_ptr<PartitionInfo[]> partition_info;
};