Web Browser Remote Desktop Video Stream Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional remote presentation sessions using web browsers experience low frame rates and jerky motions due to the subdivision of remote desktop images into tiles, leading to a poor user experience compared to dedicated remote presentation session applications.

Innovation Solution

Implementing a client with a web browser configured to display video and receive user input, establishing an Ajax connection with the server for authentication, and asynchronously sending user input as XML or JSON, with the server encoding graphical output as video for display via the web browser.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the remote desktop image is subdivided into tiles and sent to the client via web browser, then the client can access remote desktop without dedicated application, but the frame rate becomes low and motions become jerky

Engineering Contradiction:
Improvebrowser-based accessVSAvoidframe rate
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent replaces the traditional tile-based image transmission mechanism with a video stream transmission mechanism. Instead of sending individual image tiles that require assembly and updating, the system captures the remote desktop output as a continuous video stream, encodes it using video compression algorithms, and transmits it to the client for playback. This substitution of the transmission mechanism fundamentally improves frame rate and motion smoothness while maintaining web browser accessibility.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Speed

If dedicated remote presentation session application is installed on client, then high frame rate and smooth motion are achieved, but client accessibility is limited

Engineering Contradiction:
Improveframe rateVSAvoidclient accessibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent makes the video stream transmission mechanism universally compatible with any web browser that supports HTML5 video playback, eliminating the need for dedicated remote presentation applications. The server component handles video capture and encoding, while the client component uses standard web browser capabilities to receive and display the video stream. This multi-functional approach allows the same system to serve both high-performance remote desktop needs and broad client accessibility requirements.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Speed

If video stream is used for remote desktop transmission, then frame rate and user experience are improved, but network bandwidth consumption increases

Engineering Contradiction:
Improveframe rateVSAvoidnetwork bandwidth
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The patent dynamically adjusts video encoding parameters such as resolution, bitrate, frame rate, and compression level based on network conditions, client capabilities, and content characteristics. The system can switch between different video quality levels and encoding formats to optimize the balance between frame rate performance and network bandwidth consumption. This parameter adjustment allows the system to maintain high frame rates when bandwidth is available while reducing bandwidth usage when network conditions are constrained.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP2719148B1Web-browser based desktop and application remoting solution
Publication Date: 2021.05.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2719148B1 patent drawingFigure 1
  • EP2719148B1 patent drawingFigure 2
  • EP2719148B1 patent drawingFigure 3

AI summary

An invention is disclosed for conducting a remote presentation session with a client that uses a web browser to conduct the session. In embodiments, a proxy server exists between the remote presentation server and the client. The proxy server establishes a HTTP session with the client and a remote presentation session with the client. The server generates graphics encoded with a remote presentation protocol and sends them to the proxy, which re-encodes them as video and sends them to the client for display in the web browser. The client captures user input at the web browser and sends it to the proxy, which encodes it with the remote presentation protocol and sends it to the server to be processed.