]> granicus.if.org Git - libvpx/commitdiff
Adding vp9_inc_frame_in_layer() function.
authorDmitry Kovalev <dkovalev@google.com>
Wed, 9 Apr 2014 01:59:09 +0000 (18:59 -0700)
committerDmitry Kovalev <dkovalev@google.com>
Wed, 9 Apr 2014 17:26:32 +0000 (10:26 -0700)
Change-Id: Idf612c772440158cd1645623241c51ab0d57405c

vp9/encoder/vp9_onyx_if.c
vp9/encoder/vp9_svc_layercontext.c
vp9/encoder/vp9_svc_layercontext.h

index 67df4351500c0ffe400b3319808b32834cafd0dc..3619ec89e8e81eb61296dbbc4bcf101fa9fe530a 100644 (file)
@@ -2756,15 +2756,8 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi,
     // Don't increment frame counters if this was an altref buffer
     // update not a real frame
     ++cm->current_video_frame;
-    if (cpi->use_svc) {
-      LAYER_CONTEXT *lc;
-      if (cpi->svc.number_temporal_layers > 1) {
-        lc = &cpi->svc.layer_context[cpi->svc.temporal_layer_id];
-      } else {
-        lc = &cpi->svc.layer_context[cpi->svc.spatial_layer_id];
-      }
-      ++lc->current_video_frame_in_layer;
-    }
+    if (cpi->use_svc)
+      vp9_inc_frame_in_layer(&cpi->svc);
   }
 
   // restore prev_mi
index 4cae753000f6c0ed737a461035fc483ce628a6bb..c2b6263f0fb6f3edd2d15447103bef26e1b0bb12 100644 (file)
@@ -215,3 +215,10 @@ void vp9_init_second_pass_spatial_svc(VP9_COMP *cpi) {
   }
   svc->spatial_layer_id = 0;
 }
+
+void vp9_inc_frame_in_layer(SVC *svc) {
+  LAYER_CONTEXT *const lc = (svc->number_temporal_layers > 1)
+      ? &svc->layer_context[svc->temporal_layer_id]
+      : &svc->layer_context[svc->spatial_layer_id];
+  ++lc->current_video_frame_in_layer;
+}
index e859a2fd52ad07ce86122c99c1a7ab4d07f4b6ed..2abed3055cb6c41cdb8458be073e77a3db4791be 100644 (file)
@@ -70,6 +70,9 @@ void vp9_save_layer_context(struct VP9_COMP *const cpi);
 // Initialize second pass rc for spatial svc.
 void vp9_init_second_pass_spatial_svc(struct VP9_COMP *cpi);
 
+// Increment number of video frames in layer
+void vp9_inc_frame_in_layer(SVC *svc);
+
 #ifdef __cplusplus
 }  // extern "C"
 #endif