vp9: disable postproc buffer alloc when unnecessary
the buffer is only used in encoding and only when CONFIG_INTERNAL_STATS or CONFIG_VP9_POSTPROC is enabled. a future change should decouple this from the frame buffer allocation and make it conditional based on runtime flags when the above config options are enabled. reduces decode heap usage by at least 12% Change-Id: Id0b97620d4936afefa538d3aadf32106743d9caf
This commit is contained in:
Родитель
715b8d3bef
Коммит
44472cde55
|
@ -127,12 +127,15 @@ void vp9_free_context_buffers(VP9_COMMON *cm) {
|
|||
int vp9_resize_frame_buffers(VP9_COMMON *cm, int width, int height) {
|
||||
const int aligned_width = ALIGN_POWER_OF_TWO(width, MI_SIZE_LOG2);
|
||||
const int aligned_height = ALIGN_POWER_OF_TWO(height, MI_SIZE_LOG2);
|
||||
#if CONFIG_INTERNAL_STATS || CONFIG_VP9_POSTPROC
|
||||
const int ss_x = cm->subsampling_x;
|
||||
const int ss_y = cm->subsampling_y;
|
||||
|
||||
// TODO(agrange): this should be conditionally allocated.
|
||||
if (vp9_realloc_frame_buffer(&cm->post_proc_buffer, width, height, ss_x, ss_y,
|
||||
VP9_DEC_BORDER_IN_PIXELS, NULL, NULL, NULL) < 0)
|
||||
goto fail;
|
||||
#endif
|
||||
|
||||
set_mb_mi(cm, aligned_width, aligned_height);
|
||||
|
||||
|
@ -199,9 +202,11 @@ int vp9_alloc_frame_buffers(VP9_COMMON *cm, int width, int height) {
|
|||
|
||||
init_frame_bufs(cm);
|
||||
|
||||
#if CONFIG_INTERNAL_STATS || CONFIG_VP9_POSTPROC
|
||||
if (vp9_alloc_frame_buffer(&cm->post_proc_buffer, width, height, ss_x, ss_y,
|
||||
VP9_ENC_BORDER_IN_PIXELS) < 0)
|
||||
goto fail;
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче