diff options
author | Jerome Jiang <jianj@google.com> | 2019-03-04 15:51:22 -0800 |
---|---|---|
committer | Jerome Jiang <jianj@google.com> | 2019-03-07 15:20:13 -0800 |
commit | 3529526e114d34ba6be0fab94a9d36abb512bee4 (patch) | |
tree | d3458e7c82be516b288d21652d2ec13b833848cd /vp9/encoder/vp9_encoder.c | |
parent | d64e328624e09cbc36e7077598bf0ff367dcdb4c (diff) | |
download | libvpx-3529526e114d34ba6be0fab94a9d36abb512bee4.tar libvpx-3529526e114d34ba6be0fab94a9d36abb512bee4.tar.gz libvpx-3529526e114d34ba6be0fab94a9d36abb512bee4.tar.bz2 libvpx-3529526e114d34ba6be0fab94a9d36abb512bee4.zip |
vp9 svc: add simulcast mode when inter-layer pred is off.
Force all upper spatial layers to be key frame if the base layer is key.
Mode only works for inter-layer pred=off and non-flexible mode.
Add flag to write out bitstream for each spatial layer in example
encoder.
Change-Id: I5db4543cf8697544ae49464f2157e692640d5256
Diffstat (limited to 'vp9/encoder/vp9_encoder.c')
-rw-r--r-- | vp9/encoder/vp9_encoder.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c index ec52d745a..72e72176f 100644 --- a/vp9/encoder/vp9_encoder.c +++ b/vp9/encoder/vp9_encoder.c @@ -3093,7 +3093,11 @@ static void update_ref_frames(VP9_COMP *cpi) { } void vp9_update_reference_frames(VP9_COMP *cpi) { - update_ref_frames(cpi); + if (cpi->svc.simulcast_mode && is_one_pass_cbr_svc(cpi) && + cpi->common.frame_type == KEY_FRAME) + vp9_svc_update_ref_frame_key_simulcast(cpi); + else + update_ref_frames(cpi); #if CONFIG_VP9_TEMPORAL_DENOISING vp9_denoiser_update_ref_frame(cpi); |