]> granicus.if.org Git - libvpx/commitdiff
Fix for copy-mode with segmentation
authorPeter de Rivaz <peter.derivaz@gmail.com>
Wed, 24 Jun 2015 08:18:36 +0000 (09:18 +0100)
committerPeter de Rivaz <peter.derivaz@gmail.com>
Wed, 24 Jun 2015 08:25:23 +0000 (09:25 +0100)
Change-Id: Icfc97826e494b856aa80fbefe4811dff99f3a0b4

vp9/encoder/vp9_rdopt.c

index 6b437eeab9aa8d76b9ed57e90a2c50150ccf4451..c3220d6b74a0f592ee0297a1130da09c94fa0146 100644 (file)
@@ -6071,6 +6071,7 @@ void vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x,
   int inter_ref_count;
   MB_MODE_INFO *inter_ref_list[18];
   int copy_mode_context = vp9_get_copy_mode_context(xd);
+  int orig_segment_id = mbmi->segment_id;
 #endif  // CONFIG_COPY_MODE
 #if CONFIG_PALETTE
   int best_n = 0, colors, palette_ctx;
@@ -7128,6 +7129,7 @@ void vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x,
 #endif  // CONFIG_EXT_TX
 
     *mbmi = *inter_ref_list[copy_mode - REF0];
+    mbmi->segment_id = orig_segment_id;
 #if CONFIG_INTERINTRA
     if (mbmi->ref_frame[1] == INTRA_FRAME)
       mbmi->ref_frame[1] = NONE;