ffprobe: only use custom logging callback if -show_log is set
authorMarton Balint <cus@passwd.hu>
Wed, 5 Apr 2017 18:17:48 +0000 (20:17 +0200)
committerMarton Balint <cus@passwd.hu>
Wed, 12 Apr 2017 18:21:11 +0000 (20:21 +0200)
The custom callback can cause significant CPU usage on Windows for some large
files with many index entries for some reason.

v2: Move check after parsing options.

Signed-off-by: Marton Balint <cus@passwd.hu>
ffprobe.c

index 0a9ba14..72f5ed7 100644 (file)
--- a/ffprobe.c
+++ b/ffprobe.c
@@ -3458,8 +3458,6 @@ int main(int argc, char **argv)
         goto end;
     }
 #endif
-    av_log_set_callback(log_callback);
-
     av_log_set_flags(AV_LOG_SKIP_REPEATED);
     register_exit(ffprobe_cleanup);
 
@@ -3475,6 +3473,9 @@ int main(int argc, char **argv)
     show_banner(argc, argv, options);
     parse_options(NULL, argc, argv, options, opt_input_file);
 
+    if (do_show_log)
+        av_log_set_callback(log_callback);
+
     /* mark things to show, based on -show_entries */
     SET_DO_SHOW(CHAPTERS, chapters);
     SET_DO_SHOW(ERROR, error);