See ticket:2029#comment:13 : using video encoders saves lots of bandwidth and isn't that much more expensive than "jpeg" or "webp". The only exception is NVENC (see #2022): those encoder contexts are expensive, so we don't want to use them unless we are certain that this is going to last.
See also #2046
#2043 would help so we could rely on the damage statistics.
gradual decrease in setup cost
With the patch above, nvenc doesn't get used for the first 20 or 30 frames. But it doesn't take into account the number of frames per second, which is more important than the raw number of frames. But this would require #2043
r21057 does this but using the current fps value: encoders with a high setup cost (ie: nvenc) won't be chosen until the framerate is high enough (defaults to 5fps)
See also #2048 which would alleviate nvenc's slow start.
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/2044