Problem when using "Windows 10 Enterprise for virtual desktop" as RDS

Andrey Kharmov 1 Reputation point
2023-09-06T14:17:53.32+00:00

I'm working on a web platform that allows a user to connect to RDS using the xfreeRDP library.
This platform receives screen data in h264 format.
So we need to decode and render this h264 data on the JavaScript side.
BTW, I've run into one problem.
It is that the platform receives too much short length h264 data (less than 100 bytes) from freeRDP, even though there is no screen change.
So, performance degradation occurs because the platform decodes and renders all short length h264 data.
I think this is not related to the screen change.
We use "Windows 10 Enterprise for virtual desktop" as RDS and this is configured to support multi-connection for a single user.
But we can't see weird h264 data on "Windows Server 2019" or "Windows Server 2020" and can see only on "Windows 10 Enterprise for virtual desktop".
And we use Azure cloud service.

What is the problem and how can I resolve this problem?
Is there a mistake in the server configuration?
What does these short length h264 data means?

Windows 10
Windows 10
A Microsoft operating system that runs on personal computers and tablets.
8,887 questions
Azure Virtual Machines
Azure Virtual Machines
An Azure service that is used to provision Windows and Linux virtual machines.
5,964 questions
Remote Desktop
Remote Desktop
A Microsoft app that connects remotely to computers and to virtual apps and desktops.
3,806 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Muhammad Binyameen 380 Reputation points
    2023-09-06T16:40:02.6833333+00:00

    The issue you're facing, where your web platform receives frequent short-length H264 data packets even when there is no screen change, can potentially lead to performance degradation due to the unnecessary decoding and rendering of this data.

    The reason for this behavior may not be directly related to the screen change itself but could be attributed to other factors such as the configuration of your RDS environment and the specific version of Windows being used.

    It's important to note that short-length H264 data packets are not abnormal in themselves and can occur for various reasons. One possibility is that the xfreeRDP library you're using may be sending incremental updates for small portions of the screen to minimize bandwidth usage. These incremental updates are typically referred to as "delta frames" and are sent even when there is no significant screen change to ensure a smooth visual transition.

    To resolve this problem, you can explore the following steps:

    1. Review RDS Configuration: Verify the configuration of your RDS environment, specifically focusing on any settings related to screen encoding and compression. Ensure that these settings are optimized for performance and bandwidth usage.
    2. Check xfreeRDP Library Configuration: Examine the configuration options of the xfreeRDP library to determine if there are any settings related to sending incremental updates or adjusting the frequency of data transmission. Experimenting with different settings may help reduce the amount of short-length H264 data being received.
    3. Update or Change Windows Version: Consider updating the version of "Windows 10 Enterprise for virtual desktop" to the latest available version or try using different versions such as "Windows Server 2019" or "Windows Server 2020" to see if the issue persists. It's possible that the particular version you're using may have some compatibility or configuration issues that are causing the abnormal H264 data behavior.
    4. Network Monitoring: Monitor the network traffic between the xfreeRDP library and the RDS server to gather more data about the nature of the short-length H264 data packets. This information can provide insights into the patterns and frequency of these packets, potentially uncovering any underlying causes or patterns.

    In summary, to resolve the issue of receiving excessive short-length H264 data on your web platform, you should review the configuration of your RDS environment, explore xfreeRDP library settings, consider updating or changing the version of "Windows 10 Enterprise for virtual desktop," and monitor network traffic to gather more data.