GUACAMOLE-1302: Add RDP support for forcing lossless compression.
This commit is contained in:
parent
c2b7e2d039
commit
18a0362dab
@ -435,6 +435,10 @@ static int guac_rdp_handle_connection(guac_client* client) {
|
|||||||
rdp_client->settings->width,
|
rdp_client->settings->width,
|
||||||
rdp_client->settings->height);
|
rdp_client->settings->height);
|
||||||
|
|
||||||
|
/* Use lossless compression only if requested (otherwise, use default
|
||||||
|
* heuristics) */
|
||||||
|
guac_common_display_set_lossless(rdp_client->display, settings->lossless);
|
||||||
|
|
||||||
rdp_client->current_surface = rdp_client->display->default_surface;
|
rdp_client->current_surface = rdp_client->display->default_surface;
|
||||||
|
|
||||||
rdp_client->available_svc = guac_common_list_alloc();
|
rdp_client->available_svc = guac_common_list_alloc();
|
||||||
|
@ -128,6 +128,8 @@ const char* GUAC_RDP_CLIENT_ARGS[] = {
|
|||||||
"wol-broadcast-addr",
|
"wol-broadcast-addr",
|
||||||
"wol-udp-port",
|
"wol-udp-port",
|
||||||
"wol-wait-time",
|
"wol-wait-time",
|
||||||
|
|
||||||
|
"force-lossless",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -639,6 +641,12 @@ enum RDP_ARGS_IDX {
|
|||||||
*/
|
*/
|
||||||
IDX_WOL_WAIT_TIME,
|
IDX_WOL_WAIT_TIME,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* "true" if all graphical updates for this connection should use lossless
|
||||||
|
* compresion only, "false" or blank otherwise.
|
||||||
|
*/
|
||||||
|
IDX_FORCE_LOSSLESS,
|
||||||
|
|
||||||
RDP_ARGS_COUNT
|
RDP_ARGS_COUNT
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -779,6 +787,11 @@ guac_rdp_settings* guac_rdp_parse_args(guac_user* user,
|
|||||||
settings->height,
|
settings->height,
|
||||||
settings->resolution);
|
settings->resolution);
|
||||||
|
|
||||||
|
/* Lossless compression */
|
||||||
|
settings->lossless =
|
||||||
|
guac_user_parse_args_boolean(user, GUAC_RDP_CLIENT_ARGS, argv,
|
||||||
|
IDX_FORCE_LOSSLESS, 0);
|
||||||
|
|
||||||
/* Domain */
|
/* Domain */
|
||||||
settings->domain =
|
settings->domain =
|
||||||
guac_user_parse_args_string(user, GUAC_RDP_CLIENT_ARGS, argv,
|
guac_user_parse_args_string(user, GUAC_RDP_CLIENT_ARGS, argv,
|
||||||
|
@ -192,6 +192,12 @@ typedef struct guac_rdp_settings {
|
|||||||
*/
|
*/
|
||||||
int resolution;
|
int resolution;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whether all graphical updates for this connection should use lossless
|
||||||
|
* compression only.
|
||||||
|
*/
|
||||||
|
int lossless;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether audio is enabled.
|
* Whether audio is enabled.
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user