summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_bitstream.c
diff options
context:
space:
mode:
authorPaul Wilkins <paulwilkins@google.com>2013-06-07 14:59:53 +0100
committerPaul Wilkins <paulwilkins@google.com>2013-06-07 21:42:22 +0100
commit340c7a48e6b1f199d93ce7888a961acf5f13d701 (patch)
tree0e589989616da5288817f8f1209ab68c9fab1caf /vp9/encoder/vp9_bitstream.c
parent747f76fc999a0fc6cd38b5a5e5aee512302dacc7 (diff)
downloadlibvpx-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.c14
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