Patent ID: 8478855

Claim:
A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising: code that executes an application in a virtualized computing device in a hosted environment, the virtualized computing device including a first input device and a first output device that are virtualized for the application; code that encodes a video signal and an audio signal that are generated by the application into a media stream; code that sends the media stream to a client through a data communications network; code that obtains input data from the client through the data communications network, the input data being generated in a second input device of the client; code that provides a translated form of the input data to the application through the first input device, the input data being translated from a control set associated with the second input device into a translated control set that is associated with the first input device; code that obtains output data from the application through the first output device; code that sends the output data to the client through the data communications network, the output data being encoded for presentation in the client through a second output device of the client; wherein the first input device and the second input device correspond to different types of input devices, and the first output device and the second output device correspond to different types of output devices; and wherein the input data is translated according to a hierarchy of control input mappings.