diff options
author | Paul Wilkins <paulwilkins@google.com> | 2013-06-07 14:59:53 +0100 |
---|---|---|
committer | Paul Wilkins <paulwilkins@google.com> | 2013-06-07 21:42:22 +0100 |
commit | 340c7a48e6b1f199d93ce7888a961acf5f13d701 (patch) | |
tree | 0e589989616da5288817f8f1209ab68c9fab1caf /vp9/encoder/vp9_bitstream.c | |
parent | 747f76fc999a0fc6cd38b5a5e5aee512302dacc7 (diff) | |
download | libvpx-340c7a48e6b1f199d93ce7888a961acf5f13d701.tar libvpx-340c7a48e6b1f199d93ce7888a961acf5f13d701.tar.gz libvpx-340c7a48e6b1f199d93ce7888a961acf5f13d701.tar.bz2 libvpx-340c7a48e6b1f199d93ce7888a961acf5f13d701.zip |
Change to segment ref frame feature.
Simplify feature to only support a single reference frame
instead of a mask.
Change-Id: I5dd3a98c7a224aafb35708850ab82e2f220e68fb
Diffstat (limited to 'vp9/encoder/vp9_bitstream.c')
-rw-r--r-- | vp9/encoder/vp9_bitstream.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/vp9/encoder/vp9_bitstream.c b/vp9/encoder/vp9_bitstream.c index 28e107b55..55ed2a450 100644 --- a/vp9/encoder/vp9_bitstream.c +++ b/vp9/encoder/vp9_bitstream.c @@ -483,18 +483,9 @@ static void encode_ref_frame(VP9_COMP *cpi, vp9_writer *bc) { const int segment_id = mi->segment_id; int seg_ref_active = vp9_segfeature_active(xd, segment_id, SEG_LVL_REF_FRAME); - int seg_ref_count = 0; - - if (seg_ref_active) { - seg_ref_count = vp9_check_segref(xd, segment_id, INTRA_FRAME) + - vp9_check_segref(xd, segment_id, LAST_FRAME) + - vp9_check_segref(xd, segment_id, GOLDEN_FRAME) + - vp9_check_segref(xd, segment_id, ALTREF_FRAME); - } - // If segment level coding of this signal is disabled... // or the segment allows multiple reference frame options - if (!seg_ref_active || (seg_ref_count > 1)) { + if (!seg_ref_active) { // does the feature use compound prediction or not // (if not specified at the frame/segment level) if (pc->comp_pred_mode == HYBRID_PREDICTION) { @@ -517,7 +508,8 @@ static void encode_ref_frame(VP9_COMP *cpi, vp9_writer *bc) { } } else { assert(mi->ref_frame[1] <= INTRA_FRAME); - assert(vp9_check_segref(xd, segment_id, mi->ref_frame[0])); + assert(vp9_get_segdata(xd, segment_id, SEG_LVL_REF_FRAME) == + mi->ref_frame[0]); } // if using the prediction mdoel we have nothing further to do because |