Patent ID: 8539039

Claim:
A method of viewing and controlling a computer display remotely on a client device comprising: configuring a computer with at least one processing module and at least one input device configured for receiving user input of a first type; modifying the computer resolution to reduce the encoding effort and scaling for displaying on the client; capturing at least one computer image stream at a first frame rate using said at least one processing module; packaging said at least one image stream for transmission to at least one client device using said at least one processing module; encoding a packaged image stream, on a frame-by-frame basis, using said at least one processing module; transmitting an encoded image stream to a client device using said processing module and a computer network interface via at least one network; receiving a transmitted image stream on said at least one client device using a client network interface; decoding a received image stream, on a frame-by-frame basis, using a decoding module on said at least one client device; determining that a threshold period has lapsed, thereby triggering a second display mode comprising: selectively skipping frames of said received image stream, thereby building an image stream buffer; and displaying, in said second display mode, said decoded image stream at said first frame rate minus said skipped frames on a display of said at least one client device; receiving at least one client input of a second input type on said at least one client device, thereby triggering a reversion to said first display mode; catching up to a current frame of said received transmitted image stream, thereby discarding said buffer; displaying a decoded image stream at said first frame rate on a display of said at least one client device; receiving at least one client input of a second input type on said at least one client device; translating said at least one client input of a second input type into a translated input of a first input type, thereby forming at least one control instruction transmitting said at least one client input of a second input type from at least one client device to said computer via said at least one network interface and via said at least one network; receiving said at least one client input of a second input type by said computer network interface; and controlling said computer using said at least one control instruction.