NVENC 4:2:0 chroma subsampling shouldn't be hardcoded
On g-r-d 42.1.1 with NVIDIA GPU a 4:2:0 subsampling is used that makes red text much harder to read and could be really bad for working remotely (which I think is the most common use of a remote desktop).
I used RDP before version 42 and it was much better for my use.
To work around this I built my own g-r-d to use 4:4:4 subsampling with this patch:
--- a/src/grd-hwaccel-nvidia.c
+++ b/src/grd-hwaccel-nvidia.c
@@ -309,7 +309,7 @@ grd_hwaccel_nvidia_create_nvenc_session (GrdHwAccelNvidia *hwaccel_nvidia,
encode_config.rcParams.maxBitRate = 0;
encode_config.rcParams.targetQuality = 22;
encode_config.encodeCodecConfig.h264Config.idrPeriod = NVENC_INFINITE_GOPLENGTH;
- encode_config.encodeCodecConfig.h264Config.chromaFormatIDC = 1;
+ encode_config.encodeCodecConfig.h264Config.chromaFormatIDC = 3;
init_params.version = NV_ENC_INITIALIZE_PARAMS_VER;
init_params.encodeGUID = NV_ENC_CODEC_H264_GUID;
It's working perfectly on my RTX2060 but looking at NVENC Capabilities I suspect Kepler doesn't support 4:4:4 so the hardware should be queried and the parameter set accordingly.
Thank you for your work, I really like g-r-d!