diff --git a/vp9/encoder/vp9_onyx_if.c b/vp9/encoder/vp9_onyx_if.c
index 2e34b4a786f36e2e820205c7bf5e017abe30adbc..bfdde3dbab0264cfcdffb770d3b31f4e42beda16 100644
--- a/vp9/encoder/vp9_onyx_if.c
+++ b/vp9/encoder/vp9_onyx_if.c
@@ -170,17 +170,6 @@ void vp9_initialize_enc() {
   }
 }
 
-static void reset_segment_features(VP9_COMMON *cm) {
-  struct segmentation *const seg = &cm->seg;
-
-  // Set up default state for MB feature flags
-  seg->enabled = 0;
-  seg->update_map = 0;
-  seg->update_data = 0;
-  vpx_memset(seg->tree_probs, 255, sizeof(seg->tree_probs));
-  vp9_clearall_segfeatures(seg);
-}
-
 static void dealloc_compressor_data(VP9_COMP *cpi) {
   // Delete sementation map
   vpx_free(cpi->segmentation_map);
@@ -1192,7 +1181,7 @@ void vp9_change_config(VP9_PTR ptr, VP9_CONFIG *oxcf) {
   cm->refresh_frame_context = 1;
   cm->reset_frame_context = 0;
 
-  reset_segment_features(cm);
+  vp9_reset_segment_features(&cm->seg);
   set_high_precision_mv(cpi, 0);
 
   {
@@ -2952,7 +2941,7 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi,
   if (frame_is_intra_only(cm)) {
     vp9_setup_key_frame(cpi);
     // Reset the loop filter deltas and segmentation map.
-    reset_segment_features(cm);
+    vp9_reset_segment_features(&cm->seg);
 
     // If segmentation is enabled force a map update for key frames.
     if (seg->enabled) {
diff --git a/vp9/encoder/vp9_segmentation.c b/vp9/encoder/vp9_segmentation.c
index 4568e7a4c0c37aa4d763ddf4ebb09d0a2e0b326d..509717e0a90618db9d2f2d94a8c8afb71a4074f1 100644
--- a/vp9/encoder/vp9_segmentation.c
+++ b/vp9/encoder/vp9_segmentation.c
@@ -296,3 +296,12 @@ void vp9_choose_segmap_coding_method(VP9_COMP *cpi) {
     vpx_memcpy(seg->tree_probs, no_pred_tree, sizeof(no_pred_tree));
   }
 }
+
+void vp9_reset_segment_features(struct segmentation *seg) {
+  // Set up default state for MB feature flags
+  seg->enabled = 0;
+  seg->update_map = 0;
+  seg->update_data = 0;
+  vpx_memset(seg->tree_probs, 255, sizeof(seg->tree_probs));
+  vp9_clearall_segfeatures(seg);
+}
diff --git a/vp9/encoder/vp9_segmentation.h b/vp9/encoder/vp9_segmentation.h
index 03f14ea060f9e1d995dd194a6532b2acae100fe5..3c6eb7038e0e470f8b7d92243e37b79371b95224 100644
--- a/vp9/encoder/vp9_segmentation.h
+++ b/vp9/encoder/vp9_segmentation.h
@@ -43,4 +43,6 @@ void vp9_set_segment_data(VP9_PTR ptr, signed char *feature_data,
 
 void vp9_choose_segmap_coding_method(VP9_COMP *cpi);
 
+void vp9_reset_segment_features(struct segmentation *seg);
+
 #endif  // VP9_ENCODER_VP9_SEGMENTATION_H_