vp8_recon_write_yuv_frame("recon.yuv", cm->frame_to_show);
#endif
-
vp8_clear_system_state();
#if CONFIG_ERROR_CONCEALMENT
const unsigned char *partitions[MAX_PARTITIONS];
unsigned int partition_sizes[MAX_PARTITIONS];
unsigned int num_partitions;
-
+#if CONFIG_SEGMENTATION
unsigned char *segmentation_map;
+#endif
#if CONFIG_MULTITHREAD
/* variable for threading */
VP8_COMMON *const pc = & cpi->common;
vp8_writer *const w = & cpi->bc;
const MV_CONTEXT *mvc = pc->fc.mvc;
- MACROBLOCKD *xd = &cpi->mb.e_mbd;
#if CONFIG_SEGMENTATION
+ MACROBLOCKD *xd = &cpi->mb.e_mbd;
+ int left_id, above_id;
+ int i;
int sum;
int index = 0;
#endif
xd->mb_to_right_edge = ((pc->mb_cols - 1 - mb_col) * 16) << 3;
xd->mb_to_top_edge = -((mb_row * 16)) << 3;
xd->mb_to_bottom_edge = ((pc->mb_rows - 1 - mb_row) * 16) << 3;
+#if CONFIG_SEGMENTATION
xd->up_available = (mb_row != 0);
xd->left_available = (mb_col != 0);
+#endif
#ifdef ENTROPY_STATS
active_section = 9;
#endif
}
else
vp8_start_encode(bc, cx_data);
-
+#if CONFIG_SEGMENTATION
xd->update_mb_segmentation_map = 1;
-
+#endif
// Signal whether or not Segmentation is enabled
vp8_write_bit(bc, (xd->segmentation_enabled) ? 1 : 0);
// Increment the activity mask pointers.
x->mb_activity_ptr++;
- /* Test code
+#if CONFIG_SEGMENTATION
if ((xd->mode_info_context->mbmi.mode == ZEROMV) && (xd->mode_info_context->mbmi.ref_frame == LAST_FRAME))
xd->mode_info_context->mbmi.segment_id = 0;
else
xd->mode_info_context->mbmi.segment_id = 1;
- */
-
+#endif
/* save the block info */
for (i = 0; i < 16; i++)
xd->mode_info_context->bmi[i] = xd->block[i].bmi;
vp8cx_frame_init_quantizer(cpi);
+ vp8_initialize_rd_consts(cpi, cm->base_qindex + cm->y1dc_delta_q);\r
vp8cx_initialize_me_consts(cpi, cm->base_qindex);
if(cpi->oxcf.tuning == VP8_TUNE_SSIM)