Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/videolan/dav1d.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrik Gramner <gramner@twoorioles.com>2019-06-27 21:32:32 +0300
committerHenrik Gramner <henrik@gramner.com>2019-07-02 19:39:04 +0300
commit65ba279b5393382a98ddd6844e0c0753f63e749f (patch)
tree1dc1c28fb8048596c5215c738a3bba3e3d0ab05d /src/internal.h
parent0276455de73c4a520df12a3d6f80574b988d219a (diff)
Reduce the size of frame threading buffers
Avoid allocating significantly more memory than what is actually used.
Diffstat (limited to 'src/internal.h')
-rw-r--r--src/internal.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/internal.h b/src/internal.h
index 444e529..1fdb8e9 100644
--- a/src/internal.h
+++ b/src/internal.h
@@ -196,12 +196,12 @@ struct Dav1dFrameContext {
int16_t eob[3 /* plane */];
uint8_t txtp[3 /* plane */];
} *cbi;
- int8_t *txtp;
// indexed using (t->by >> 1) * (f->b4_stride >> 1) + (t->bx >> 1)
uint16_t (*pal)[3 /* plane */][8 /* idx */];
// iterated over inside tile state
uint8_t *pal_idx;
coef *cf;
+ int pal_sz, pal_idx_sz, cf_sz;
// start offsets per tile
int *tile_start_off;
} frame_thread;
@@ -217,10 +217,8 @@ struct Dav1dFrameContext {
int last_sharpness;
uint8_t lvl[8 /* seg_id */][4 /* dir */][8 /* ref */][2 /* is_gmv */];
uint8_t *tx_lpf_right_edge[2];
- pixel *cdef_line;
- pixel *cdef_line_ptr[2 /* pre, post */][3 /* plane */][2 /* y */];
- pixel *lr_lpf_line;
- pixel *lr_lpf_line_ptr[3 /* plane */];
+ pixel *cdef_line[2 /* pre, post */][3 /* plane */][2 /* y */];
+ pixel *lr_lpf_line[3 /* plane */];
// in-loop filter per-frame state keeping
int tile_row; // for carry-over at tile row edges