summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vp10/encoder/aq_complexity.c2
-rw-r--r--vp10/encoder/aq_variance.c2
-rw-r--r--vp10/encoder/segmentation.c3
3 files changed, 4 insertions, 3 deletions
diff --git a/vp10/encoder/aq_complexity.c b/vp10/encoder/aq_complexity.c
index 0de044cf9..2506a4e55 100644
--- a/vp10/encoder/aq_complexity.c
+++ b/vp10/encoder/aq_complexity.c
@@ -51,7 +51,7 @@ void vp10_setup_in_frame_q_adj(VP10_COMP *cpi) {
// Make SURE use of floating point in this function is safe.
vpx_clear_system_state();
- if (cm->frame_type == KEY_FRAME ||
+ if (frame_is_intra_only(cm) || cm->error_resilient_mode ||
cpi->refresh_alt_ref_frame ||
(cpi->refresh_golden_frame && !cpi->rc.is_src_frame_alt_ref)) {
int segment;
diff --git a/vp10/encoder/aq_variance.c b/vp10/encoder/aq_variance.c
index e8e88c3b6..bed5162fb 100644
--- a/vp10/encoder/aq_variance.c
+++ b/vp10/encoder/aq_variance.c
@@ -47,7 +47,7 @@ void vp10_vaq_frame_setup(VP10_COMP *cpi) {
struct segmentation *seg = &cm->seg;
int i;
- if (cm->frame_type == KEY_FRAME ||
+ if (frame_is_intra_only(cm) || cm->error_resilient_mode ||
cpi->refresh_alt_ref_frame ||
(cpi->refresh_golden_frame && !cpi->rc.is_src_frame_alt_ref)) {
vp10_enable_segmentation(seg);
diff --git a/vp10/encoder/segmentation.c b/vp10/encoder/segmentation.c
index 6a20ee47d..677910fa3 100644
--- a/vp10/encoder/segmentation.c
+++ b/vp10/encoder/segmentation.c
@@ -273,7 +273,7 @@ void vp10_choose_segmap_coding_method(VP10_COMMON *cm, MACROBLOCKD *xd) {
no_pred_cost = cost_segmap(no_pred_segcounts, no_pred_tree);
// Key frames cannot use temporal prediction
- if (!frame_is_intra_only(cm)) {
+ if (!frame_is_intra_only(cm) && !cm->error_resilient_mode) {
// Work out probability tree for coding those segments not
// predicted using the temporal method and the cost.
calc_segtree_probs(t_unpred_seg_counts, t_pred_tree, segp->tree_probs);
@@ -300,6 +300,7 @@ void vp10_choose_segmap_coding_method(VP10_COMMON *cm, MACROBLOCKD *xd) {
// Now choose which coding method to use.
if (t_pred_cost < no_pred_cost) {
+ assert(!cm->error_resilient_mode);
seg->temporal_update = 1;
#if !CONFIG_MISC_FIXES
memcpy(segp->tree_probs, t_pred_tree, sizeof(t_pred_tree));