summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_rd.c
diff options
context:
space:
mode:
authorAdrian Grange <agrange@google.com>2015-03-04 10:54:10 -0800
committerGerrit Code Review <gerrit@gerrit.golo.chromium.org>2015-03-04 10:54:10 -0800
commita34a04261547a29527ab0eac5d0d5482c98f8061 (patch)
tree02f1b12236517a7d2f97d33de3a50e529c23cde1 /vp9/encoder/vp9_rd.c
parent50c06052e9c7cdb9b2ccec678e4e457b1b137599 (diff)
parent3807dd82ab48f9f85da6df225709877778b2f3f8 (diff)
downloadlibvpx-a34a04261547a29527ab0eac5d0d5482c98f8061.tar
libvpx-a34a04261547a29527ab0eac5d0d5482c98f8061.tar.gz
libvpx-a34a04261547a29527ab0eac5d0d5482c98f8061.tar.bz2
libvpx-a34a04261547a29527ab0eac5d0d5482c98f8061.zip
Merge "Make encoder buffer allocation dynamic"
Diffstat (limited to 'vp9/encoder/vp9_rd.c')
-rw-r--r--vp9/encoder/vp9_rd.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/vp9/encoder/vp9_rd.c b/vp9/encoder/vp9_rd.c
index 0b6d11eca..5cc980cf7 100644
--- a/vp9/encoder/vp9_rd.c
+++ b/vp9/encoder/vp9_rd.c
@@ -532,13 +532,14 @@ int16_t* vp9_raster_block_offset_int16(BLOCK_SIZE plane_bsize,
return base + vp9_raster_block_offset(plane_bsize, raster_block, stride);
}
-const YV12_BUFFER_CONFIG *vp9_get_scaled_ref_frame(const VP9_COMP *cpi,
- int ref_frame) {
+YV12_BUFFER_CONFIG *vp9_get_scaled_ref_frame(const VP9_COMP *cpi,
+ int ref_frame) {
const VP9_COMMON *const cm = &cpi->common;
- const int ref_idx = cm->ref_frame_map[get_ref_frame_idx(cpi, ref_frame)];
const int scaled_idx = cpi->scaled_ref_idx[ref_frame - 1];
- return (scaled_idx != ref_idx) ?
- &cm->buffer_pool->frame_bufs[scaled_idx].buf : NULL;
+ const int ref_idx = get_ref_frame_buf_idx(cpi, ref_frame);
+ return
+ (scaled_idx != ref_idx && scaled_idx != INVALID_IDX) ?
+ &cm->buffer_pool->frame_bufs[scaled_idx].buf : NULL;
}
int vp9_get_switchable_rate(const VP9_COMP *cpi, const MACROBLOCKD *const xd) {