diff options
author | Marco <marpan@google.com> | 2016-03-08 16:29:54 -0800 |
---|---|---|
committer | Marco <marpan@google.com> | 2016-03-09 10:15:15 -0800 |
commit | 11bf7ea354cb69755e1f0e1a71351b166ae30677 (patch) | |
tree | cbd0c3a5cccda8207910d3c2da158880d4419944 /vp9/encoder | |
parent | 268ec8dcfbbd23339eea06805aff68a28510a3cd (diff) | |
download | libvpx-11bf7ea354cb69755e1f0e1a71351b166ae30677.tar libvpx-11bf7ea354cb69755e1f0e1a71351b166ae30677.tar.gz libvpx-11bf7ea354cb69755e1f0e1a71351b166ae30677.tar.bz2 libvpx-11bf7ea354cb69755e1f0e1a71351b166ae30677.zip |
vp9-svc: Fix to frame dropping in svc mode.
Don't advance the svc frame counters on dropped frame,
since this can break the referencing scheme and lead
to a crash/assert.
Updated svc-datarate unittest to add a lower bitrate test.
Change only affects 1 pass cbr svc, with frame dropper enabled.
Change-Id: Ibb7530b7a587a9344d46898d9286fd9e2ef0779c
Diffstat (limited to 'vp9/encoder')
-rw-r--r-- | vp9/encoder/vp9_encoder.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c index ac7c6deee..9ebc3a482 100644 --- a/vp9/encoder/vp9_encoder.c +++ b/vp9/encoder/vp9_encoder.c @@ -3999,8 +3999,12 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, ++cm->current_video_frame; cpi->ext_refresh_frame_flags_pending = 0; cpi->svc.rc_drop_superframe = 1; - if (cpi->use_svc) - vp9_inc_frame_in_layer(cpi); + // TODO(marpan): Advancing the svc counters on dropped frames can break + // the referencing scheme for the fixed svc patterns defined in + // vp9_one_pass_cbr_svc_start_layer(). Look into fixing this issue, but + // for now, don't advance the svc frame counters on dropped frame. + // if (cpi->use_svc) + // vp9_inc_frame_in_layer(cpi); return; } } |