Abstract:
A system and machine-implemented method are described for adjusting communication with a first distributed-input-distributed-output (DIDO) client. For example, a method according to one embodiment of the invention comprises: applying DIDO weights to one or more data streams to generate one or more DIDO precoded data streams; receiving input channel quality information (CQI) and/or channel state information (CSI) related to DIDO communication channels over which the DIDO precoded data streams are to be transmitted; determining a power scaling factor based on the CQI and/or CSI; and applying the power scaling factor to each of the DIDO precoded data streams.
Abstract:
A system and method for entering text within a video game application are described. For example, a system according to one embodiment of the invention comprises: a video game hosting service to execute a video game in response to user input; a client device to communicate with the video game hosting service over a first communication channel, wherein the client device has a first user input device communicatively coupled thereto, and wherein control signals for the video game are generated in response to input from the first user input device and transmitted from the client device to the video game hosting service over the first communication channel, the video game hosting service controlling a video game in response to receipt of the control signals; a display device communicatively coupled to the client device, the display device to display video of the video game; wherein the video game hosting service further includes program code to open a second communication channel to receive text input, the second communication channel being separate and independent from the first communication channel and usable by a data processing device capable of generating text input, wherein in response to receipt of text input over the second communication channel, the video game hosting service causes the text input to be displayed on the display device communicatively coupled to the client device.
Abstract:
A computer-implemented system and method are described for managing audio chat for an online video game or application. For example, a system according to one embodiment comprises: an online video game or application execution engine to execute an online video game or application in response to input from one or more users of the video game or application and to responsively generate audio and video of the video game or application; and a chat subsystem to establish audio chat sessions with the one or more users and one or more spectators to the video game or application, the chat subsystem establishing a plurality of audio chat channels including a spectator channel over which the spectators participate in audio chat and a user channel over which the users participate in audio chat.
Abstract:
A computer-implemented system and method are described for performing video compression. For example, a method according to one embodiment comprises: encoding a plurality of video frames or portions thereof according to a first encoding format; transmitting the plurality of encoded video frames or portions to a client device; receiving feedback information from the client device, the feedback information usable to determine whether data contained in the video frames or portions has not been successfully received and/or decoded; in response to detecting that a video frame or portion thereof has not been successfully received and/or decoded, encoding a video frame or portion thereof according to a second encoding format; and transmitting the video frames or portions thereof to the client device.
Abstract:
An apparatus is described comprising a Power-over-Ethernet interface, a High-Definition Media Interface (HDMI), a Bluetooth interface, a means for decompressing low-latency streaming interactive video and audio from an Internet-based hosting service and outputting the decompressed audio and video through HDMI, and a means for transmitting to the Internet-based hosting service user control information and statistics from received packets. Further, the apparatus is able to receive two interleaved streams of low-latency streaming interactive video.
Abstract:
A computer-implemented system and method are described for performing video compression. For example, a method according to one embodiment comprises: encoding a plurality of video frames or portions thereof according to a first encoding format; transmitting the plurality of encoded video frames or portions to a client device; receiving feedback information from the client device, the feedback information usable to determine whether data contained in the video frames or portions has not been successfully received and/or decoded; in response to detecting that one or more video frames or portions thereof have not been successfully received and/or decoded, then either encoding a new video frame or portion thereof according to a second encoding format or encoding the new video frame to be dependent on the last video frame or portion thereof known to have been successfully received and/or decoded, and: (1) if no forward error correction (FEC) coding is used to transmit the plurality of encoded video frames or portions, then encoding a new video frame or portion thereof using FEC coding; or (2) if a first FEC coding is used to transmit the plurality of encoded video frames or portions, then encoding a new video frame or portion thereof using a second FEC coding, the second FEC coding being a relatively stronger FEC coding than the first FEC coding; and transmitting the new video frame or portion thereof to the client device.
Abstract:
A computer-implemented system and method for streaming video from a server to a client are described. For example, a method according to one embodiment comprises: receiving at the server a request for video content from the client; in response to the request, determining the hardware/software configuration of the client; generating and/or selecting a temporary decoder based on the hardware/software configuration of the client; transmitting the temporary decoder to the client, the client installing the temporary decoder; encoding and streaming the requested video content from the server to the client, the video content being encoded based on the capabilities of the temporary decoder, the video content being decoded by the temporary decoder and rendered on the client; detecting that the client has ended the session with the server; and in response to detecting that the client has ended the session, temporarily disabling and/or removing the temporary decoder from the client.
Abstract:
A machine-implemented system and method are described for removing interference between adjacent distributed-input-distributed-output (DIDO) clusters comprising. For example, a method according to one embodiment comprises: detecting signal strength at a first client from a main DIDO cluster; detecting interference signal strength at the first client from an interfering DIDO cluster; if the signal strength from the main DIDO cluster reaches a specified value relative to the value of the interference signal strength from the interfering DIDO cluster, then generating channel state information (CSI) defining channel state between one or more antennas of the first client and one or more antennas of the interfering DIDO cluster; transmitting the CSI from the first client to a base transceiver station (BTS) in the interfering DIDO cluster; and implementing DIDO precoding with inter-DIDO-cluster interference (IDCI) cancellation at the BTS in the interfering DIDO cluster to avoid RF interference at the first client.
Abstract:
A computer-implemented method includes receiving a request by a hosting service center from a remote user to loin a multiplayer interactive twitch game or application already in progress, the multiplayer interactive twitch game or application running on a first server of the hosting service center and being played remotely by other players via first compressed streaming interactive video. Following a determination that the user may join the multiplayer interactive twitch game or application based on a set of criteria, an inbound routing network transfers control signals received from the remote user to the first server. Compression of the first compressed streaming interactive video is then synchronized as between the remote user and the other players such that the remote user has the perception that the multiplayer interactive twitch game or application is responding instantly to the request.
Abstract:
A touch-screen apparatus and method are described for controlling an online video game. For example, one embodiment of a touch-screen apparatus comprises: a touch-screen display for displaying images and receiving user input in response to a user touching the touch screen display; a network interface for establishing a network connection with a gaming server executing a video game in response to user input from the apparatus, the gaming server compressing video output from the video game to generate interactive compressed streaming video, and transmitting the interactive compressed streaming video generated by the video game over the network connection to the touch-screen apparatus; a memory for storing program code and a processor for processing the program code to generate a touch-screen graphical user interface (GUI) comprising: a plurality of user input elements providing user input in response to the user selecting the user input elements on the touch screen display; wherein the user input is transmitted from the touch-screen apparatus to the gaming server to control the execution of the video game.