From 4d79cf28483013815cae7b4ce91ef5448bb770dc Mon Sep 17 00:00:00 2001 From: akallabeth Date: Fri, 24 May 2024 11:50:53 +0200 Subject: [PATCH] [client,common] add command line gfx frame-ack option expose the option to turn on or off the GFX frame ACK sending. --- client/common/cmdline.c | 9 +++++++++ client/common/cmdline.h | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/client/common/cmdline.c b/client/common/cmdline.c index 5b8fd5b2aae6..4f135f879855 100644 --- a/client/common/cmdline.c +++ b/client/common/cmdline.c @@ -2245,6 +2245,15 @@ static int parse_gfx_options(rdpSettings* settings, const COMMAND_LINE_ARGUMENT_ rc = COMMAND_LINE_ERROR; } } + else if (option_starts_with("frame-ack", val)) + { + const PARSE_ON_OFF_RESULT bval = parse_on_off_option(val); + if (bval == PARSE_FAIL) + rc = COMMAND_LINE_ERROR_UNEXPECTED_VALUE; + else if (!freerdp_settings_set_bool(settings, FreeRDP_GfxSuspendFrameAck, + bval != PARSE_OFF)) + rc = COMMAND_LINE_ERROR; + } } if ((rc == CHANNEL_RC_OK) && codecSelected) diff --git a/client/common/cmdline.h b/client/common/cmdline.h index 7bfb33726a6a..ad46ee7219f3 100644 --- a/client/common/cmdline.h +++ b/client/common/cmdline.h @@ -202,7 +202,7 @@ static const COMMAND_LINE_ARGUMENT_A global_cmd_args[] = { { "gfx", COMMAND_LINE_VALUE_OPTIONAL, "[[progressive[:on|off]|RFX[:on|off]|AVC420[:on|off]AVC444[:on|off]],mask:,small-" "cache[:on|off],thin-client[:on|off],progressive[:on|" - "off]]", + "off],frame-ack[:on|off]]", NULL, NULL, -1, NULL, "RDP8 graphics pipeline" }, #if defined(WITH_FREERDP_DEPRECATED_COMMANDLINE) { "gfx-h264", COMMAND_LINE_VALUE_OPTIONAL, "[[AVC420|AVC444],mask:]", NULL, NULL, -1,