Multi-User Display Proxy Server
First Claim
1. A method of transmitting data to remote computers, comprising:
- dividing video frames into subframes;
determining which subframes have been modified; and
for only the modified subframes;
determining a type of content contained in the modified subframes and selecting an encoding algorithm based on characteristic indicators of content within the subframes;
determining a size for each of the modified subframes during run-time as a multiple of a minimum pixel block size of the encoding algorithm;
encoding the modified subframes using the encoding algorithm; and
transmitting encoded subframes to corresponding remote computers.
1 Assignment
0 Petitions
Accused Products
Abstract
A multi-user host computer system comprises processor blades combined with terminal services blades to provide acceleration and proxy server functions for supporting a variety of remote terminals. For each remote terminal, the terminal services blade and proxy server functions may improve the video and graphics performance. This allows the multi-user host computer system to more efficiently support multiple users. The terminal services blade may include a graphics processor that manages a virtual display for each remote terminal and provides selective updates of sub frame data. Where appropriate, the sub frame data is encoded and transmitted over the network to the remote terminals. The terminal services processor also offloads and optimizes video data streams for the intended remote terminals and their respective network connections. Processor blades may include a baseboard management controller that utilizes advanced features for supporting remote KVM administration.
-
Citations
20 Claims
-
1. A method of transmitting data to remote computers, comprising:
-
dividing video frames into subframes; determining which subframes have been modified; and for only the modified subframes; determining a type of content contained in the modified subframes and selecting an encoding algorithm based on characteristic indicators of content within the subframes; determining a size for each of the modified subframes during run-time as a multiple of a minimum pixel block size of the encoding algorithm; encoding the modified subframes using the encoding algorithm; and transmitting encoded subframes to corresponding remote computers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing system comprising:
-
a computing device comprising at least one processor; a memory communicatively coupled to said processor when said system is operational;
said memory having stored therein computer instructions that upon execution by the at least one processor cause;dividing video frames into subframes; determining which subframes have been modified; and for only the modified subframes; determining a type of content contained in the modified subframes and selecting an encoding algorithm based on characteristic indicators of content within the subframes; determining a size for each of the modified subframes during run-time as a multiple of a minimum pixel block size of the encoding algorithm; encoding the modified subframes using the encoding algorithm; and transmitting encoded subframes to corresponding remote computers. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer-readable storage medium comprising computer-executable instructions for executing processes across multiple execution environments, the computer-executable instructions comprising instructions for:
-
dividing video frames into subframes; determining which subframes have been modified; and for only the modified subframes; determining a type of content contained in the modified subframes and selecting an encoding algorithm based on characteristic indicators of content within the subframes; determining a size for each of the modified subframes during run-time as a multiple of a minimum pixel block size of the encoding algorithm; encoding the modified subframes using the encoding algorithm; and transmitting encoded subframes to corresponding remote computers. - View Dependent Claims (18, 19, 20)
-
Specification