summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_encoder.c
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2015-09-28 16:25:28 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-09-28 16:25:28 +0000
commitcc5dd3ec10e6b7765ae69a81a82e4ad4786552fd (patch)
treeb127e26b2c832c8e7e466d32699d7d055ecdd669 /vp9/encoder/vp9_encoder.c
parent3db5721e213640295a37d3d574639916c2ab1b64 (diff)
parent812945a8f143df6a627cb292ec7a77a4ed6509f0 (diff)
downloadlibvpx-cc5dd3ec10e6b7765ae69a81a82e4ad4786552fd.tar
libvpx-cc5dd3ec10e6b7765ae69a81a82e4ad4786552fd.tar.gz
libvpx-cc5dd3ec10e6b7765ae69a81a82e4ad4786552fd.tar.bz2
libvpx-cc5dd3ec10e6b7765ae69a81a82e4ad4786552fd.zip
Merge "vp9/10: improve support for render_width/height."
Diffstat (limited to 'vp9/encoder/vp9_encoder.c')
-rw-r--r--vp9/encoder/vp9_encoder.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index b4c712191..202c11242 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -1509,8 +1509,13 @@ void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) {
cm->interp_filter = cpi->sf.default_interp_filter;
- cm->render_width = cpi->oxcf.width;
- cm->render_height = cpi->oxcf.height;
+ if (cpi->oxcf.render_width > 0 && cpi->oxcf.render_height > 0) {
+ cm->render_width = cpi->oxcf.render_width;
+ cm->render_height = cpi->oxcf.render_height;
+ } else {
+ cm->render_width = cpi->oxcf.width;
+ cm->render_height = cpi->oxcf.height;
+ }
if (last_w != cpi->oxcf.width || last_h != cpi->oxcf.height) {
cm->width = cpi->oxcf.width;
cm->height = cpi->oxcf.height;
@@ -3824,6 +3829,8 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi,
cm->frame_to_show = get_frame_new_buffer(cm);
cm->frame_to_show->color_space = cm->color_space;
cm->frame_to_show->color_range = cm->color_range;
+ cm->frame_to_show->render_width = cm->render_width;
+ cm->frame_to_show->render_height = cm->render_height;
// Pick the loop filter level for the frame.
loopfilter_frame(cpi, cm);