summaryrefslogtreecommitdiffstats
path: root/third_party/dav1d
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/dav1d')
-rw-r--r--third_party/dav1d/src/decode.c13
-rw-r--r--third_party/dav1d/src/internal.h2
2 files changed, 8 insertions, 7 deletions
diff --git a/third_party/dav1d/src/decode.c b/third_party/dav1d/src/decode.c
index b4853088e2..945ccdfc0f 100644
--- a/third_party/dav1d/src/decode.c
+++ b/third_party/dav1d/src/decode.c
@@ -2637,7 +2637,7 @@ static void setup_tile(Dav1dTileState *const ts,
const Dav1dFrameContext *const f,
const uint8_t *const data, const size_t sz,
const int tile_row, const int tile_col,
- const int tile_start_off)
+ const unsigned tile_start_off)
{
const int col_sb_start = f->frame_hdr->tiling.col_start_sb[tile_col];
const int col_sb128_start = col_sb_start >> !f->seq_hdr->sb128;
@@ -2988,15 +2988,16 @@ int dav1d_decode_frame_init(Dav1dFrameContext *const f) {
const uint8_t *const size_mul = ss_size_mul[f->cur.p.layout];
const int hbd = !!f->seq_hdr->hbd;
if (c->n_fc > 1) {
+ const unsigned sb_step4 = f->sb_step * 4;
int tile_idx = 0;
for (int tile_row = 0; tile_row < f->frame_hdr->tiling.rows; tile_row++) {
- int row_off = f->frame_hdr->tiling.row_start_sb[tile_row] *
- f->sb_step * 4 * f->sb128w * 128;
- int b_diff = (f->frame_hdr->tiling.row_start_sb[tile_row + 1] -
- f->frame_hdr->tiling.row_start_sb[tile_row]) * f->sb_step * 4;
+ const unsigned row_off = f->frame_hdr->tiling.row_start_sb[tile_row] *
+ sb_step4 * f->sb128w * 128;
+ const unsigned b_diff = (f->frame_hdr->tiling.row_start_sb[tile_row + 1] -
+ f->frame_hdr->tiling.row_start_sb[tile_row]) * sb_step4;
for (int tile_col = 0; tile_col < f->frame_hdr->tiling.cols; tile_col++) {
f->frame_thread.tile_start_off[tile_idx++] = row_off + b_diff *
- f->frame_hdr->tiling.col_start_sb[tile_col] * f->sb_step * 4;
+ f->frame_hdr->tiling.col_start_sb[tile_col] * sb_step4;
}
}
diff --git a/third_party/dav1d/src/internal.h b/third_party/dav1d/src/internal.h
index b5fd1e18ef..e47bb75e10 100644
--- a/third_party/dav1d/src/internal.h
+++ b/third_party/dav1d/src/internal.h
@@ -293,7 +293,7 @@ struct Dav1dFrameContext {
int prog_sz;
int pal_sz, pal_idx_sz, cf_sz;
// start offsets per tile
- int *tile_start_off;
+ unsigned *tile_start_off;
} frame_thread;
// loopfilter