diff options
author | Jingning Han <jingning@google.com> | 2018-07-10 14:25:03 -0700 |
---|---|---|
committer | Jingning Han <jingning@google.com> | 2018-07-10 19:58:43 -0700 |
commit | 006dc3a224c8cad4be18d25ca1e282a8d6bb6bbd (patch) | |
tree | 912f10d6b4b60ef745a4a49d4a4dcc3395281961 /vp9/encoder/vp9_encoder.c | |
parent | 9364fc04f1e4e46e3e4c51560b532aab6e1649bc (diff) | |
download | libvpx-006dc3a224c8cad4be18d25ca1e282a8d6bb6bbd.tar libvpx-006dc3a224c8cad4be18d25ca1e282a8d6bb6bbd.tar.gz libvpx-006dc3a224c8cad4be18d25ca1e282a8d6bb6bbd.tar.bz2 libvpx-006dc3a224c8cad4be18d25ca1e282a8d6bb6bbd.zip |
Properly set the is_valid flag in tpl_frame
Use this flag to indicate the temporal dependency model for the
given frame is properly set up.
Use the pointer address to decide if the tpl_stats_ptr array needs
to be released.
Change-Id: I541fe098f51981010011ae0af2535d8a5762d254
Diffstat (limited to 'vp9/encoder/vp9_encoder.c')
-rw-r--r-- | vp9/encoder/vp9_encoder.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c index fc6c016ba..8afd87694 100644 --- a/vp9/encoder/vp9_encoder.c +++ b/vp9/encoder/vp9_encoder.c @@ -2350,7 +2350,7 @@ VP9_COMP *vp9_create_compressor(VP9EncoderConfig *oxcf, CHECK_MEM_ERROR(cm, cpi->tpl_stats[frame].tpl_stats_ptr, vpx_calloc(mi_rows * mi_cols, sizeof(*cpi->tpl_stats[frame].tpl_stats_ptr))); - cpi->tpl_stats[frame].is_valid = 1; + cpi->tpl_stats[frame].is_valid = 0; cpi->tpl_stats[frame].width = mi_cols; cpi->tpl_stats[frame].height = mi_rows; cpi->tpl_stats[frame].stride = mi_cols; @@ -2543,8 +2543,7 @@ void vp9_remove_compressor(VP9_COMP *cpi) { #endif for (frame = 0; frame < MAX_LAG_BUFFERS; ++frame) { - if (cpi->tpl_stats[frame].is_valid) - vpx_free(cpi->tpl_stats[frame].tpl_stats_ptr); + vpx_free(cpi->tpl_stats[frame].tpl_stats_ptr); cpi->tpl_stats[frame].is_valid = 0; } @@ -5567,6 +5566,7 @@ void init_tpl_stats(VP9_COMP *cpi) { memset(tpl_frame->tpl_stats_ptr, 0, tpl_frame->height * tpl_frame->width * sizeof(*tpl_frame->tpl_stats_ptr)); + tpl_frame->is_valid = 0; } } |