summaryrefslogtreecommitdiffstats
path: root/player/client.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-06-20 21:40:47 +0200
committerwm4 <wm4@nowhere>2015-06-20 21:40:47 +0200
commit23b83c6676c17963a59febeac72fdc73a4198769 (patch)
treeac79ca8400a0a7e2c45819fb71362783bb114462 /player/client.c
parent34fce974c60177444d23ab1b658545b32046785f (diff)
downloadmpv-23b83c6676c17963a59febeac72fdc73a4198769.tar.bz2
mpv-23b83c6676c17963a59febeac72fdc73a4198769.tar.xz
client API: allow using msg-level option for log messages
Client API users can enable log output with mpv_request_log_messages(). But you can enable only a single log level. This is normally enough, but the --msg-level option (which controls the terminal log level) provides more flexibility. Due to internal complexity, it would be hard to provide the same flexibility for each client API handle. But there's a simple way to achieve basically the same thing: add an option that sends log messages to the API handle, which would also be printed to the terminal as by --msg-level. The only change is that we don't disable this logic if the terminal is disabled. Instead we check for this before the message is output, which in theory can lower performance if messages are being spammed. It could be handled with some more effort, but the gain would be negligible.
Diffstat (limited to 'player/client.c')
-rw-r--r--player/client.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/player/client.c b/player/client.c
index 71a8f5acbf..a23456510f 100644
--- a/player/client.c
+++ b/player/client.c
@@ -1523,6 +1523,9 @@ int mpv_request_log_messages(mpv_handle *ctx, const char *min_level)
break;
}
}
+ if (strcmp(min_level, "terminal-default") == 0)
+ level = MP_LOG_BUFFER_MSGL_TERM;
+
if (level < 0 && strcmp(min_level, "no") != 0)
return MPV_ERROR_INVALID_PARAMETER;