shithub: libvpx

Download patch

ref: 150fbfc7b68ac7236225fbe11251692e03c239d6
parent: f13b3d1e08ef4d5842e283c1113f8d67f3960b37
author: Tom Finegan <tomfinegan@google.com>
date: Tue Jan 14 13:04:35 EST 2014

vpxenc: Warn on lagged encoding with real time.

Restore warning when attempting to use lagged encoding with real time mode.

Change-Id: I109026db64566906f288f42d2686084ae5c13500

--- a/warnings.c
+++ b/warnings.c
@@ -78,9 +78,17 @@
     add_warning(quantizer_warning_string, warning_list);
 }
 
+static void check_lag_in_frames_realtime_deadline(
+    int lag_in_frames,
+    int deadline,
+    struct WarningList *warning_list) {
+  if (deadline == VPX_DL_REALTIME && lag_in_frames != 0)
+    add_warning(lag_in_frames_with_realtime, warning_list);
+}
+
 void check_encoder_config(int disable_prompt,
                           const struct VpxEncoderConfig *global_config,
-                          struct vpx_codec_enc_cfg *stream_config) {
+                          const struct vpx_codec_enc_cfg *stream_config) {
   int num_warnings = 0;
   struct WarningListNode *warning = NULL;
   struct WarningList warning_list = {0};
@@ -88,10 +96,9 @@
   check_quantizer(stream_config->rc_min_quantizer,
                   stream_config->rc_max_quantizer,
                   &warning_list);
-
-  if (global_config->deadline == VPX_DL_REALTIME)
-    stream_config->g_lag_in_frames = 0;
-
+  check_lag_in_frames_realtime_deadline(stream_config->g_lag_in_frames,
+                                        global_config->deadline,
+                                        &warning_list);
   /* Count and print warnings. */
   for (warning = warning_list.warning_node;
        warning != NULL;
--- a/warnings.h
+++ b/warnings.h
@@ -20,6 +20,6 @@
  */
 void check_encoder_config(int disable_prompt,
                           const struct VpxEncoderConfig *global_config,
-                          struct vpx_codec_enc_cfg *stream_config);
+                          const struct vpx_codec_enc_cfg *stream_config);
 
 #endif  // WARNINGS_H_
--