diff options
author | Mark Thompson <sw@jkqxz.net> | 2020-08-31 22:00:57 +0100 |
---|---|---|
committer | Mark Thompson <sw@jkqxz.net> | 2020-09-02 00:00:57 +0100 |
commit | 2a19232c1996fee52a3f4201fa379001627dcc89 (patch) | |
tree | 34b8fd71de9c5c2742c1625075dd4285a70487d2 | |
parent | cf6af829c2db8a8c55f49526f73e37b9da772c30 (diff) | |
download | ffmpeg-2a19232c1996fee52a3f4201fa379001627dcc89.tar.gz |
cbs_av1: Fill tile width/height values when uniform_tile_spacing_flag is set
They are not explicitly in the bitstream in this case, but it is helpful
to be able to use these values without always needing to check the flag
beforehand.
-rw-r--r-- | libavcodec/cbs_av1_syntax_template.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libavcodec/cbs_av1_syntax_template.c b/libavcodec/cbs_av1_syntax_template.c index 19b82bc3f8..2d2e240e3e 100644 --- a/libavcodec/cbs_av1_syntax_template.c +++ b/libavcodec/cbs_av1_syntax_template.c @@ -636,6 +636,15 @@ static int FUNC(tile_info)(CodedBitstreamContext *ctx, RWContext *rw, current->tile_rows_log2; current->tile_rows = (sb_rows + tile_height_sb - 1) / tile_height_sb; + for (i = 0; i < current->tile_cols - 1; i++) + infer(width_in_sbs_minus_1[i], tile_width_sb - 1); + infer(width_in_sbs_minus_1[i], + sb_cols - (current->tile_cols - 1) * tile_width_sb - 1); + for (i = 0; i < current->tile_rows - 1; i++) + infer(height_in_sbs_minus_1[i], tile_height_sb - 1); + infer(height_in_sbs_minus_1[i], + sb_rows - (current->tile_rows - 1) * tile_height_sb - 1); + } else { int widest_tile_sb, start_sb, size_sb, max_width, max_height; |