US20100317443A1 - Distributed Network Game System - Google Patents

Distributed Network Game System Download PDF

Info

Publication number
US20100317443A1
US20100317443A1 US12/483,025 US48302509A US2010317443A1 US 20100317443 A1 US20100317443 A1 US 20100317443A1 US 48302509 A US48302509 A US 48302509A US 2010317443 A1 US2010317443 A1 US 2010317443A1
Authority
US
United States
Prior art keywords
network
gaming server
expansion card
server
game
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/483,025
Inventor
Michael J. Cook
James S. Poder
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Comcast Cable Communications LLC
Original Assignee
Comcast Cable Communications LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Comcast Cable Communications LLC filed Critical Comcast Cable Communications LLC
Priority to US12/483,025 priority Critical patent/US20100317443A1/en
Assigned to COMCAST CABLE COMMUNICATIONS, LLC reassignment COMCAST CABLE COMMUNICATIONS, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: COOK, MICHAEL J., PODER, JAMES S.
Priority to EP10164360A priority patent/EP2261809A1/en
Priority to CA2706158A priority patent/CA2706158A1/en
Publication of US20100317443A1 publication Critical patent/US20100317443A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/32Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
    • A63F13/323Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections between game devices with different hardware characteristics, e.g. hand-held game devices connectable to game consoles or arcade machines
    • A63F13/12
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • A63F13/235Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console using a wireless connection, e.g. infrared or piconet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1025Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection
    • A63F2300/1031Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection using a wireless connection, e.g. Bluetooth, infrared connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/206Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/538Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering

Definitions

  • This disclosure relates generally to networked computing and computer games. More specifically, the disclosure provides a networked gaming server that generates and sends video streams to remotely located gaming clients, thereby negating the need to generate video at the gaming clients.
  • MMOGs Massively multiplayer online games
  • MMOGs are commonplace, and often include millions of players in a single game.
  • MMOGs are commonly played using a convention computer, e.g., a desktop computer, or a computer specifically designed for game play and including high-end processing and graphics capabilities.
  • Current generation game consoles also provide sophisticated network gaming abilities whereby users can easily locate others and connect to games being played across a network.
  • game consoles and computers designed specifically for gaming are expensive, and often a consumer is precluded from upgrading his or her hardware based on the cost of doing so.
  • the network game server may transcode the gaming display output to H.264 media, which is then sent to a set top box (STB) over an IP network.
  • STB may run a client application to render or display the gaming media stream to the television.
  • There may be a reverse channel to forward user input commands generated from peripheral devices (e.g., game controllers) to the gaming server.
  • Session management and media streaming may be performed using session initiation protocol (SIP), real-time transport protocol (RTP), and/or real-time streaming protocol (RTSP), or through Digital Living Network Alliance (DLNA) services.
  • SIP session initiation protocol
  • RTP real-time transport protocol
  • RTSP real-time streaming protocol
  • DLNA Digital Living Network Alliance
  • an expansion card may act as a gateway for a device to connect to a network gaming server.
  • the expansion card may connect to the network gaming server through a local wireless network and may provide the received transcoded (i.e., pre-rendered) stream to the media player or other device in which the expansion card is inserted.
  • the card may also have a Bluetooth (or other short-range wireless) connection capability to connect to a gaming controller. Commands from the gaming controller may be sent to the expansion card, which may then relay the commands to the game server.
  • the game controller may send user input commands to the network game server without routing through the expansion card, whereas the gaming server may still route the transcoded media to the media player through a wireless enabled expansion card while maintaining the session with both the game controller and the expansion card.
  • a first aspect may include an expansion card that has a microprocessor controlling operations of the expansion card, a wireless networking module for wirelessly connecting to a network, a relay module for relaying a transcoded media stream received from a network gaming server to a device in which the expansion card is seated or with which the expansion card is otherwise associated (e.g., via an adapter or other direct or indirect communication), and control logic configuring the expansion card to maintain a session with the network gaming server, as further described herein.
  • Still another aspect may provide a method of playing network game media by detecting that an expansion card executing the method has been inserted into a media player, receiving user input indicating a desire to play a networked video game, initiating a session with a network gaming server by sending a session initiation message to the network gaming server via a wireless networking module of the expansion card, and receiving a transcoded media stream from the network gaming server, where the transcoded media stream is in a format renderable or displayable by the media player, and where the media stream provides audio and video output of the video game executing on the network gaming server based on user input provided by a user to the network gaming server.
  • the expansion card may then relay the transcoded media stream to the media player for output via a display and speaker of the media player.
  • FIG. 1 illustrates a network and system architecture that may be used to implement one or more illustrative aspects described herein.
  • FIG. 2 illustrates a system architecture that may be used according to one or more illustrative aspects.
  • FIG. 3 illustrates a method and data flow for establishing a gaming session using SIP according to one or more illustrative aspects.
  • FIG. 4 illustrates a method and data flow for establishing a gaming session using DLNA according to one or more illustrative aspects.
  • FIG. 5 illustrates a system architecture that may be used according to one or more illustrative aspects.
  • FIG. 6 illustrates a method and data flow for establishing a gaming session using the architecture shown in FIG. 5 .
  • FIG. 7 illustrates a hardware architecture that may be used according to one or more illustrative aspects using an expansion card.
  • FIG. 8 illustrates a method of playing a network-based game according to one or more illustrative aspects described herein.
  • FIG. 9 illustrates a system architecture according to one or more illustrative aspects described herein.
  • FIG. 1 illustrates one example of a network architecture and data processing device that may be used to implement one or more illustrative aspects.
  • Various network nodes 103 , 105 , 107 , 109 , and 140 may be interconnected via a wide area network (WAN) 101 , such as the Internet, a cable distribution network, or the like.
  • WAN wide area network
  • Other networks may also or alternatively be used, including private intranets, corporate networks, LANs, wireless networks, personal networks (PAN), etc.
  • Network 101 is for illustration purposes and may be replaced with fewer or additional computer networks.
  • a local area network (LAN) such as LAN 104 may have one or more of any known LAN topology and may use one or more of a variety of different protocols, such as Ethernet.
  • Devices 103 , 105 , 107 , 109 , 140 and other devices may be connected to one or more of the networks via twisted pair wires, coaxial cable, fiber optics, radio waves, infrared, or other communication media.
  • network refers not only to systems in which remote storage devices are coupled together via one or more communication paths, but also to stand-alone devices that may be coupled, from time to time, to such systems that have storage capability. Consequently, the term “network” includes not only a “physical network” but also a “content network,” which is comprised of the data—attributable to an entity—which resides across all physical networks.
  • the components may include data server 103 , web server 105 , and client devices 107 , 109 , 140 .
  • Data server 103 provides overall access, control and administration of databases and control software for performing one or more illustrative aspects as described herein.
  • Data server 103 may be connected to web server 105 through which users interact with and obtain data as requested. Alternatively, data server 103 may act as a user-accessible server itself and be directly connected to the WAN 101 .
  • Data server 103 may be connected to web server 105 through the network 101 (e.g., the Internet), via direct or indirect connection, or via some other network, e.g., a LAN.
  • Users may interact with the data server 103 using remote devices 107 , 109 , 140 , e.g., using a web browser to connect to the data server 103 via one or more externally exposed web sites hosted by web server 105 .
  • Client devices 107 , 109 , 140 may be used in concert with data server 103 to access data stored therein, or may be used for other purposes.
  • a user may access web server 105 using an Internet browser, as is known in the art, or by executing a software application that communicates with web server 105 and/or data server 103 over a computer network (such as the Internet).
  • FIG. 1 illustrates just one example of a network architecture that may be used, and those of skill in the art will appreciate that the specific network architecture and data processing devices used may vary, and are secondary to the functionality that they provide, as further described herein. For example, services provided by web server 105 and data server 103 may be combined on a single server.
  • Each component 103 , 105 , 107 , 109 , 140 may be any type of known computer, server, or other data processing device.
  • Data server 103 e.g., may include a processor 111 controlling overall operation of the data server 103 .
  • Data server 103 may further include RAM 113 , ROM 115 , network interface 117 , input/output interfaces 119 (e.g., keyboard, mouse, display, printer, etc.), and memory 121 .
  • I/O 119 may include a variety of interface units and drives for reading, writing, displaying, and/or printing data or files.
  • Memory 121 may further store operating system software 123 for controlling overall operation of the data processing device 103 , control logic 125 for instructing data server 103 to perform aspects as described herein, and other application software 127 providing secondary, support, and/or other functionality which may or may not be used in conjunction with various aspects described herein.
  • the control logic may also be referred to herein as the data server software 125 .
  • Functionality of the data server software may refer to operations or decisions made automatically based on rules coded into the control logic, made manually by a user providing input into the system, and/or a combination of automatic processing based on user input (e.g., queries, data updates, etc.).
  • Memory 121 may also store data used in performance of one or more aspects of the disclosure, including a first database 129 and a second database 131 .
  • the first database may include the second database (e.g., as a separate table, report, etc.). That is, the information can be stored in a single database, or separated into different logical, virtual, or physical databases, depending on system design.
  • Devices 105 , 107 , 109 , 140 may have similar or different architecture as described with respect to device 103 .
  • data processing device 103 or device 105 , 107 , 109 , or 140 ) as described herein may be spread across multiple data processing devices, for example, to distribute processing load across multiple computers, to segregate transactions based on geographic location, user access level, quality of service (QoS), etc.
  • QoS quality of service
  • One or more aspects of the disclosure may be embodied in computer-usable or readable data and/or computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices as described herein.
  • program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device.
  • the modules may be written in a source code programming language that is subsequently compiled for execution, or may be written in a scripting language such as (but not limited to) HTML or XML.
  • the computer executable instructions may be stored on a computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, RAM, etc.
  • the functionality of the program modules may be combined or distributed as desired in various embodiments.
  • the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA), and the like.
  • Particular data structures may be used to more effectively implement one or more aspects, and such data structures are contemplated within the scope of computer executable instructions and computer-usable data described herein.
  • one or more client devices may include a portable device 140 , e.g., a portable media player, smartphone, handheld internet browser, ultra-mobile PC, or the like.
  • Portable device 140 may be configured to receive an expansion card 141 providing functionality according to one or more aspects as described herein.
  • Expansion card 141 may include, e.g., CompactFlash Type I, CompactFlash Type II, SD SecureDigital Card, SDHC, miniSD, MultiMediaCard, RS-MMC, Memory Stick, Memory Stick PRO, Memory Stick Duo, Memory Stick PRO Duo, SmartMedia, xD-PictureCard, xD-PictureCard Type M, or other expansion cards now known or later developed.
  • Portable device 140 may communicate wirelessly with game controller 142 , as further explained below.
  • Client device 107 may include a cable decoder as part of a set top box or integrated into a television set. Decoder 107 may be configured to receive a PCMCIA CableCARD 108 providing functionality according to one or more aspects as described herein. Other system architectures may be used, based on the following description of various aspects described herein. For example, where WAN 101 comprises a cable distribution system, server 103 may represent or include functionality performed by a cable headend system.
  • a video game refers to any interactive entertainment, including but not limited to computer games, arcade games, casual games, video slot machines, and the like.
  • an embodiment may include a game server 203 (e.g., similar to server 103 ), network 201 (e.g., Internet, cable distribution system, fiber optic network, or a combination), decoder 207 (e.g., a set top box, STB), television 208 , wireless access point 205 , and game controller 209 .
  • Wireless access point and decoder 207 may alternatively be on the same LAN.
  • Game controller 209 may communicate with decoder 207 , which then forwards game input back to gaming server 203 , or game controller 209 may alternatively communicate directly with gaming server 203 via wireless access point 205 .
  • Decoder 207 may alternatively be integrated within TV 208 to form integrated device 206 .
  • decoder 207 and TV 208 may be integrated within other types of devices, e.g., as a digital media player or digital media recorder having both audio and video capabilities.
  • a digital media player may provide integrated audiovisual capabilities, as well as user input controls provided by game controller 209 .
  • game controller 209 may include its own internal wireless access point.
  • Decoder 207 may provide support for Digital Living Network Alliance (DLNA) protocols and specifications.
  • DLNA Digital Living Network Alliance
  • Session initiation protocol (SIP), real-time transport protocol (RTP), and/or real-time streaming protocol (RTSP) may also or alternatively be used.
  • SIP Session initiation protocol
  • RTP real-time transport protocol
  • RTSP real-time streaming protocol
  • decoder 207 may initiate a game session using DLNA or SIP responsive to user input requesting a particular game.
  • Game server 203 may transcode the video game output (i.e., audio and video) into H.264 media, and send the media to decoder/STB 207 for display on TV 208 .
  • Decoder 207 may execute a client application to display the gaming media stream on the TV or other display device.
  • Game controller 209 may communicate user commands back to server 203 via a reverse channel through wireless access point 205 and network 201 . Server 203 then processes the received commands in accordance with the game being played, and generates responsive video for transmission to decoder 207 .
  • decoder 207 or any other local device to store software specific to a particular game. Rather, video game software is stored at and executed by gaming server 203 , which pre-renders the video game output and sends the media stream to decoder 207 for display on a locally attached display device 208 . Less hardware is therefore necessary at the consumer location than previously necessary. In addition, the hardware that is required at the consumer location is less costly, e.g., a game controller as opposed to an entire game console or PC.
  • FIG. 3 illustrates a method and data flow for playing a game in accordance with the architecture shown in FIG. 2 , using session initiation protocol (SIP).
  • SIP session initiation protocol
  • a user provides input, e.g., via game controller 209 , to initiate a game session, and decoder 207 sends a SIP Invite command to gaming server 203 .
  • gaming server 203 responds with a message in which gaming server 203 provides the session parameters, e.g., server port ID, reverse channel port ID, etc., as required by SIP.
  • Gaming server 203 in step 305 provides SIP OK message ( 200 ) acknowledging the SIP invite message received from step 301 .
  • Decoder 207 in step 307 sends an ACK message back to the gaming server, at which time the game is initiated.
  • gaming server 203 provides a transcoded video stream to decoder/TV 207 / 208 in a format directly usable by decoder/TV 207 / 208 , i.e., a format that may be output directly to the display without further processing.
  • a user is providing user input to game controller 209 based on the audio and video information presented on TV 208 , and game controller 209 forwards the user input to gaming server 203 via the previously established reverse channel. That is, the game controller may route commands via a wireless connection with a wireless access point, as shown, or may route commands via a wireless connection with decoder 207 (not shown).
  • step 311 When the game is over, or when the user decides he or she is done playing the game, the user provides input to game controller 209 or decoder 207 to stop game play, and decoder 207 in step 311 sends a BYE message to gaming server 203 .
  • step 313 gaming server ceases operation of the game, and sends an SIP OK message ( 200 ) back to the decoder to indicate that the game play session has ended, and the decoder then resumes other operations as desired.
  • FIG. 4 illustrates a method and data flow for playing a game in accordance with the architecture shown in FIG. 2 , using Digital Living Network Alliance (DLNA) protocols.
  • the decoder 207 sends a DLNA discovery request to gaming server 203 , in response to which the gaming server 203 sends a DLNA device description message back to decoder 207 in step 403 .
  • Gaming server 203 also sends a DLNA service description message to decoder 207 in steps 405 .
  • the service description message may include advertising of session parameters, server port ID, reverse channel port ID, etc.
  • the decoder 207 subscribes to the gaming service by sending an event message to gaming server 203 , and in step 409 the gaming server accepts the subscription and begins rendering and transcoding the gaming media.
  • gaming server 203 provides the transcoded video stream to decoder/TV 207 / 208 in a format directly usable by decoder/TV 207 / 208 , i.e., a format that may be output directly to the display without further processing.
  • a user is providing user input via game controller 209 based on the audio and video information presented on TV 208 , and game controller 209 or decoder 207 forwards the user input to gaming server 203 via the previously established reverse channel. That is, the game controller may route commands via a wireless connection with a wireless access point, as shown, or may route commands via a wireless connection with decoder 207 (not shown).
  • step 413 when the game ends or the user decides to cease playing, the decoder 207 sends an unsubscribe message to gaming server 203 , and in step 415 the gaming server 203 terminates the game session, at which time the decoder resumes other operations.
  • an embodiment may include a game server 503 (e.g., similar to server 103 ), network 501 (e.g., Internet, cable distribution system, fiber optic network, or combination), decoder 507 , television 508 , wireless access point 505 , and portable device 509 .
  • Decoder 507 may alternatively be integrated within TV 508 as integrated device 206 .
  • Portable device 509 , server 503 , and other applicable components may provide support for Digital Living Network Alliance (DLNA) protocols and specification. Session initiation protocol (SIP), real-time transport protocol (RTP), and/or real-time streaming protocol (RTSP) may also or alternatively be used.
  • portable device 509 may include game controller functionality, e.g., via one or more user inputs, buttons, sliders, joysticks, etc.
  • control logic 513 may initiate a game session using DLNA or SIP responsive to user input requesting a particular game.
  • Game server 503 may transcode the video game output (i.e., audio and video) into H. 264 media, and send the media to decoder/STB 507 for display on TV 508 .
  • Decoder 507 may execute a client application to display the gaming media stream.
  • Portable device 509 may communicate user commands back to server 503 via a reverse channel through wireless access point 505 and network 501 .
  • Server 503 then processes the received commands in accordance with the game being played, and generates responsive video for transmission to decoder 507 .
  • FIG. 6 illustrates a method and data flow for playing a game in accordance with the architecture shown in FIG. 5 , using session initiation protocol (SIP).
  • portable device 509 under control of control logic 513 , receives user input to initiate a game session, and sends a SIP Invite command to gaming server 503 .
  • gaming server 503 responds with a message in which gaming server 503 provides the session parameters, e.g., server port ID, reverse channel port ID, etc., as required by SIP.
  • Gaming server 503 in step 605 provides SIP OK message ( 200 ) acknowledging the SIP invite message from step 601 .
  • Portable device 509 in step 607 sends an ACK message back to the gaming server, at which time the game is initiated.
  • gaming server 503 provides a transcoded video stream to decoder/TV 507 / 508 in a format directly usable by decoder/TV 507 / 508 , i.e., may be output directly to the display without further processing.
  • a user is providing user input to portable device 509 based on the audio and video information presented on TV 508 , and portable device 509 forwards the user input to gaming server 503 via the previously established reverse channel.
  • step 611 When the game is over, or when the user decides he or she is done playing the game, the user provides input to portable device to stop game play, and portable device 509 in step 611 sends a BYE message to gaming server 503 .
  • step 613 gaming server 503 ceases operation of the game, and sends an SIP OK message ( 200 ) back to the portable device 509 to indicate that the game play session has ended.
  • functions and services necessary to communicate with the game server may be provided by a computer memory, microprocessor, or application specific integrated circuit within an expansion card 701 , which may be similar to expansion card 108 or 141 ( FIG. 1 ).
  • Card 701 may include control logic 711 for controlling card 701 as described herein when processed by microprocessor 712 .
  • control logic may define an address of the network gaming server, or may provide instructions regarding how to learn the address of the network gaming server.
  • Control logic 711 may also serve as an intermediation device providing setup and teardown of sessions as well as ongoing events between the player and the media server.
  • Card 701 may further include a wireless access point 713 , command relay 715 , and Bluetooth controller 717 (controller 717 may alternatively be replaced with any suitable short-range wireless communications controller).
  • Card 701 may be in communication with gaming server 703 , media player 705 , and optionally also in communication with game controller 707 when media player 705 does not provide the required user inputs or game controls. Stated differently, game controller 707 may be integrated within media player 705 .
  • Card 701 acts as a gateway to gaming server 703 for devices that are not otherwise equipped to communicate with server 703 , and card 701 may be used to make older devices compatible with gaming server 703 provided the older device has an expansion card slot of the same format as card 701 (e.g., and older media player may have an SD Card slot, and expansion card 701 may be an SD Card).
  • card 701 may be used to make older devices compatible with gaming server 703 provided the older device has an expansion card slot of the same format as card 701 (e.g., and older media player may have an SD Card slot, and expansion card 701 may be an SD Card).
  • Wifi access point 713 allows card 701 to communicate with gaming server 703 via a local wireless network, e.g., using 802.11 or later developed protocols and schemas.
  • Card 701 may use the wifi connection to forward user input commands to game server 703 via the reverse channel, and may also receive the transcoded media from gaming server 703 over the wifi connection.
  • Bluetooth controller 717 may be used to communicate with game controller 707 , e.g., to receive user inputs during game play responsive to the transcoded media output by media player 705 .
  • Card 701 may relay the user inputs top gaming server 703 via the relay module 715 .
  • Card 701 may also relay the transcoded media received from gaming server 703 to media player 705 via relay module 715 .
  • the functionality of relay module 715 may be included within control logic 711 .
  • game controller 707 may have integrated wireless capability and be in communication with game server 703 without relaying through card 701 .
  • the game server 703 maintains a session between itself, the game controller 707 , and card 701 .
  • Card 701 still provides SIP or DLNA support as needed, and attendant media rendering/displaying capabilities.
  • the gaming server 703 transcodes the gameplay video and sends the transcoded stream to the card 701 for display on media player 705 .
  • Game controller 707 sends user commands directly to the gaming server 703 via the wireless connection.
  • the gaming server 703 provides session management.
  • FIG. 8 illustrates a method of playing network game media according to one or more illustrative aspects based on the architecture illustrated in FIG. 7 .
  • the expansion card is activated when inserted into a compatible receiving device, e.g., in a media player or set top box.
  • the expansion card initializes the various modules and establishes communications with external devices, if available, e.g., with the game controller and wireless access point.
  • the expansion card receives user input indicating a desire of the user to play a networked game.
  • the user input may be received from the game controller or from the media player, based on which of the two is providing user input and game controller functionality.
  • step 805 the expansion card initiates a game session with the network gaming server, e.g., by sending a SIP or DLNA session initiation message to the network gaming server. Transmission and/or receipt of additional messages may be required, e.g., ACK messages and other handshaking messages, as defined by the specific protocol in use.
  • the expansion card begins receiving a media stream transcoded by the network gaming server in a format renderable by the device with which the expansion card is associated, e.g., in H.264 format.
  • the media stream represents the audio and video output of the video game executing on the network gaming server based on user input provided by the user and relayed to the network gaming server by the expansion card (or sent independently to the network gaming server, according to some embodiments described herein). That is, user input is sent from the game controller (or media player device) to the network gaming server executing the video game.
  • the network gaming server based on the video game software, interprets the user input according to the video game software, e.g., to cause a character to run, jump, fight, etc., and modifies the media stream accordingly.
  • step 809 the expansion card relays the transcoded media stream to the device with which the card is associated for output via a display and speaker(s) of the device.
  • step 811 the expansion card determines if the game is over and, if so, terminates the session in step 813 . If the game is not over, the expansion card continues to receive and relay the transcoded media stream according to the user input.
  • FIG. 9 illustrates a sample system architecture that may be used, regardless of whether the gaming services are provided by a decoder, an expansion card, or some other module or node.
  • FIG. 9 illustrates sample components in a gaming client application 901 (regardless of hardware used) and the communicatively corresponding components in network gaming server 903 .
  • Gaming client application 901 includes a session client 905 for managing the gaming connection or session, a media renderer 907 for receiving the transcoded media and forwarding it to the appropriate hardware for display, search services 909 to search for DLNA or otherwise advertised games, and command communication service 911 to receive user input from the game controller and forward the user commands back to the network gaming server 903 over the reverse channel.
  • Network gaming server 903 may include a session manager 913 for managing sessions with one or more gaming client applications; service broker 915 to render the media output and send the transcoded media stream to the gaming client application 901 ; digital media server (DMS) 917 to advertise available games or other media; and command execution module 919 , which receives the user input from the reverse channel and inputs the user commands to the game for further execution.
  • session manager 913 for managing sessions with one or more gaming client applications
  • service broker 915 to render the media output and send the transcoded media stream to the gaming client application 901
  • digital media server (DMS) 917 to advertise available games or other media
  • command execution module 919 which receives the user input from the reverse channel and inputs the user commands to the game for further execution.
  • gaming client application 901 and/or network gaming server may be included within a single piece of hardware, or may be spread out among multiple pieces of hardware.
  • a media player may include modules 905 , 907 , 909
  • a separate game controller may include command communication server 911 .
  • Other modifications may also be made based on the specific implementation hardware used.
  • the above embodiments may be used to provide gaming capabilities on otherwise non-networked devices, provided the device has an expansion slot of a suitable format.
  • the expansion card is a PCMCIA CableCard
  • high-resolution network gaming capabilities may be added to millions of preexisting set top boxes already in users' homes simply by inserting the expansion card described herein to each set top box.
  • aspects described above may be used to provide more than just gaming entertainment. Indeed, aspects described herein may be used to provide any sort of interactive media content, including interactive movies or videos, choose-your-own-adventure style games or books, television shows, movies, and the like.

Abstract

Methods and systems for providing network-based games to otherwise non-networked devices are provided herein. A network server may provide video game execution and rendering capabilities in accordance with video game software on the server, and may transcode video game output into a media stream for sending to a remotely located media player in use by a user playing the video game. The transcoded media stream is in a format displayable by the media player. The media player may include an expansion card providing wireless network access to the media player for communication with the network gaming server, and may further relay the transcoded media stream received from the network gaming server to the media player, as well as relay user input from a game controller back to the network gaming server. Alternatively, the game controller may communicate directly with the network gaming server.

Description

    FIELD
  • This disclosure relates generally to networked computing and computer games. More specifically, the disclosure provides a networked gaming server that generates and sends video streams to remotely located gaming clients, thereby negating the need to generate video at the gaming clients.
  • BACKGROUND
  • Network gaming has dramatically increased in popularity in recent years. Massively multiplayer online games (MMOGs) are commonplace, and often include millions of players in a single game. MMOGs are commonly played using a convention computer, e.g., a desktop computer, or a computer specifically designed for game play and including high-end processing and graphics capabilities. Current generation game consoles also provide sophisticated network gaming abilities whereby users can easily locate others and connect to games being played across a network. However, game consoles and computers designed specifically for gaming are expensive, and often a consumer is precluded from upgrading his or her hardware based on the cost of doing so.
  • There is an existing installed base of millions of media player devices that do not provide any sort of network gaming capabilities. For example, portable media players such as iPods®, Zunes®, Archos®, Creative Zens®, set top boxes, and other multimedia devices allow a user to listen to music or watch videos, but do not provide network gaming capabilities, and often provide no gaming capabilities at all. In addition, these devices are incompatible with the gaming networks to which current generation game consoles are connected, and do not have integrated networking so they also cannot connect to networked games accessible by conventional computers.
  • BRIEF SUMMARY
  • The following presents a simplified summary in order to provide a basic understanding of some aspects described herein. This summary is not an extensive overview, and is not intended to identify key or critical elements or to delineate the scope of the claims. The following summary merely presents some concepts in a simplified form as a prelude to the more detailed description provided below.
  • To overcome limitations in the prior art described above, and to overcome other limitations that will be apparent upon reading and understanding the present specification, aspects described herein are directed to a new solution for playing video game and media content on various media players otherwise not-enabled for network-based game play. A network server may provide media server capability, and may transcode media prior to sending the transcoded media to the media player, thereby alleviating the need of the media player to perform video generation, and also alleviating the need for gaming software to be resident on the media player or other device on which the game is rendered or displayed (other than to provide minimal administrative functions).
  • According to some aspects, when playing a game on a television, the network game server may transcode the gaming display output to H.264 media, which is then sent to a set top box (STB) over an IP network. The STB may run a client application to render or display the gaming media stream to the television. There may be a reverse channel to forward user input commands generated from peripheral devices (e.g., game controllers) to the gaming server. Session management and media streaming may be performed using session initiation protocol (SIP), real-time transport protocol (RTP), and/or real-time streaming protocol (RTSP), or through Digital Living Network Alliance (DLNA) services. Again, in this manner, the STB is not required to run or execute any software specific to a particular video game, but rather acts as a conduit for a pre-rendered video stream.
  • According to other aspects, an expansion card (e.g., an SD card or PCMCIA CableCard) may act as a gateway for a device to connect to a network gaming server. The expansion card may connect to the network gaming server through a local wireless network and may provide the received transcoded (i.e., pre-rendered) stream to the media player or other device in which the expansion card is inserted. The card may also have a Bluetooth (or other short-range wireless) connection capability to connect to a gaming controller. Commands from the gaming controller may be sent to the expansion card, which may then relay the commands to the game server. Alternatively, where the game controller includes wireless network technology, the game controller may send user input commands to the network game server without routing through the expansion card, whereas the gaming server may still route the transcoded media to the media player through a wireless enabled expansion card while maintaining the session with both the game controller and the expansion card.
  • For example, a first aspect may include an expansion card that has a microprocessor controlling operations of the expansion card, a wireless networking module for wirelessly connecting to a network, a relay module for relaying a transcoded media stream received from a network gaming server to a device in which the expansion card is seated or with which the expansion card is otherwise associated (e.g., via an adapter or other direct or indirect communication), and control logic configuring the expansion card to maintain a session with the network gaming server, as further described herein.
  • Another aspect may provide a network gaming server that has a processor controlling operations of the server according to control logic stored at the network gaming sever, a transcoder module for transcoding a media stream into a format displayable by a gaming client device, where the transcoding is based on output from a user-selected video game executing on the network gaming server, and a network interface for communicating with the gaming client device and a game controller. The control logic may configure the network gaming server to receive a session initiation message from the gaming client device, transcode the media stream based on output from the user-selected video game in accordance with received video game user input, send the transcoded media stream to the gaming client device, and repeat the transcoding and sending steps during game play of the user-selected video game.
  • Still another aspect may provide a method of playing network game media by detecting that an expansion card executing the method has been inserted into a media player, receiving user input indicating a desire to play a networked video game, initiating a session with a network gaming server by sending a session initiation message to the network gaming server via a wireless networking module of the expansion card, and receiving a transcoded media stream from the network gaming server, where the transcoded media stream is in a format renderable or displayable by the media player, and where the media stream provides audio and video output of the video game executing on the network gaming server based on user input provided by a user to the network gaming server. The expansion card may then relay the transcoded media stream to the media player for output via a display and speaker of the media player.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • A more complete understanding and advantages resulting therefrom may be acquired by referring to the following description in consideration of the accompanying drawings, in which like reference numbers indicate like features, and wherein:
  • FIG. 1 illustrates a network and system architecture that may be used to implement one or more illustrative aspects described herein.
  • FIG. 2 illustrates a system architecture that may be used according to one or more illustrative aspects.
  • FIG. 3 illustrates a method and data flow for establishing a gaming session using SIP according to one or more illustrative aspects.
  • FIG. 4 illustrates a method and data flow for establishing a gaming session using DLNA according to one or more illustrative aspects.
  • FIG. 5 illustrates a system architecture that may be used according to one or more illustrative aspects.
  • FIG. 6 illustrates a method and data flow for establishing a gaming session using the architecture shown in FIG. 5.
  • FIG. 7 illustrates a hardware architecture that may be used according to one or more illustrative aspects using an expansion card.
  • FIG. 8 illustrates a method of playing a network-based game according to one or more illustrative aspects described herein.
  • FIG. 9 illustrates a system architecture according to one or more illustrative aspects described herein.
  • DETAILED DESCRIPTION
  • In the following description of the various embodiments, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration various embodiments in which aspects may be practiced. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope of the present disclosure.
  • FIG. 1 illustrates one example of a network architecture and data processing device that may be used to implement one or more illustrative aspects. Various network nodes 103, 105, 107, 109, and 140 may be interconnected via a wide area network (WAN) 101, such as the Internet, a cable distribution network, or the like. Other networks may also or alternatively be used, including private intranets, corporate networks, LANs, wireless networks, personal networks (PAN), etc. Network 101 is for illustration purposes and may be replaced with fewer or additional computer networks. A local area network (LAN) such as LAN 104 may have one or more of any known LAN topology and may use one or more of a variety of different protocols, such as Ethernet. Devices 103, 105, 107, 109, 140 and other devices (not shown) may be connected to one or more of the networks via twisted pair wires, coaxial cable, fiber optics, radio waves, infrared, or other communication media.
  • The term “network” as used herein and depicted in the drawings refers not only to systems in which remote storage devices are coupled together via one or more communication paths, but also to stand-alone devices that may be coupled, from time to time, to such systems that have storage capability. Consequently, the term “network” includes not only a “physical network” but also a “content network,” which is comprised of the data—attributable to an entity—which resides across all physical networks.
  • The components may include data server 103, web server 105, and client devices 107, 109, 140. Data server 103 provides overall access, control and administration of databases and control software for performing one or more illustrative aspects as described herein. Data server 103 may be connected to web server 105 through which users interact with and obtain data as requested. Alternatively, data server 103 may act as a user-accessible server itself and be directly connected to the WAN 101. Data server 103 may be connected to web server 105 through the network 101 (e.g., the Internet), via direct or indirect connection, or via some other network, e.g., a LAN. Users may interact with the data server 103 using remote devices 107, 109, 140, e.g., using a web browser to connect to the data server 103 via one or more externally exposed web sites hosted by web server 105. Client devices 107, 109, 140 may be used in concert with data server 103 to access data stored therein, or may be used for other purposes. For example, from client device 109 a user may access web server 105 using an Internet browser, as is known in the art, or by executing a software application that communicates with web server 105 and/or data server 103 over a computer network (such as the Internet).
  • Servers and applications may be combined on the same physical machines, and retain separate virtual or logical addresses, or may reside on separate physical machines. FIG. 1 illustrates just one example of a network architecture that may be used, and those of skill in the art will appreciate that the specific network architecture and data processing devices used may vary, and are secondary to the functionality that they provide, as further described herein. For example, services provided by web server 105 and data server 103 may be combined on a single server.
  • Each component 103, 105, 107, 109, 140 may be any type of known computer, server, or other data processing device. Data server 103, e.g., may include a processor 111 controlling overall operation of the data server 103. Data server 103 may further include RAM 113, ROM 115, network interface 117, input/output interfaces 119 (e.g., keyboard, mouse, display, printer, etc.), and memory 121. I/O 119 may include a variety of interface units and drives for reading, writing, displaying, and/or printing data or files. Memory 121 may further store operating system software 123 for controlling overall operation of the data processing device 103, control logic 125 for instructing data server 103 to perform aspects as described herein, and other application software 127 providing secondary, support, and/or other functionality which may or may not be used in conjunction with various aspects described herein. The control logic may also be referred to herein as the data server software 125. Functionality of the data server software may refer to operations or decisions made automatically based on rules coded into the control logic, made manually by a user providing input into the system, and/or a combination of automatic processing based on user input (e.g., queries, data updates, etc.).
  • Memory 121 may also store data used in performance of one or more aspects of the disclosure, including a first database 129 and a second database 131. In some embodiments, the first database may include the second database (e.g., as a separate table, report, etc.). That is, the information can be stored in a single database, or separated into different logical, virtual, or physical databases, depending on system design. Devices 105, 107, 109, 140 may have similar or different architecture as described with respect to device 103. Those of skill in the art will appreciate that the functionality of data processing device 103 (or device 105, 107, 109, or 140) as described herein may be spread across multiple data processing devices, for example, to distribute processing load across multiple computers, to segregate transactions based on geographic location, user access level, quality of service (QoS), etc.
  • One or more aspects of the disclosure may be embodied in computer-usable or readable data and/or computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices as described herein. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device. The modules may be written in a source code programming language that is subsequently compiled for execution, or may be written in a scripting language such as (but not limited to) HTML or XML. The computer executable instructions may be stored on a computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, RAM, etc. As will be appreciated by one of skill in the art, the functionality of the program modules may be combined or distributed as desired in various embodiments. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA), and the like. Particular data structures may be used to more effectively implement one or more aspects, and such data structures are contemplated within the scope of computer executable instructions and computer-usable data described herein.
  • As shown in FIG. 1, one or more client devices may include a portable device 140, e.g., a portable media player, smartphone, handheld internet browser, ultra-mobile PC, or the like. Portable device 140 may be configured to receive an expansion card 141 providing functionality according to one or more aspects as described herein. Expansion card 141 may include, e.g., CompactFlash Type I, CompactFlash Type II, SD SecureDigital Card, SDHC, miniSD, MultiMediaCard, RS-MMC, Memory Stick, Memory Stick PRO, Memory Stick Duo, Memory Stick PRO Duo, SmartMedia, xD-PictureCard, xD-PictureCard Type M, or other expansion cards now known or later developed. Portable device 140 may communicate wirelessly with game controller 142, as further explained below.
  • Client device 107 may include a cable decoder as part of a set top box or integrated into a television set. Decoder 107 may be configured to receive a PCMCIA CableCARD 108 providing functionality according to one or more aspects as described herein. Other system architectures may be used, based on the following description of various aspects described herein. For example, where WAN 101 comprises a cable distribution system, server 103 may represent or include functionality performed by a cable headend system.
  • Aspects described herein provide systems and methods of playing video game media content on various media players and devices by using a network gaming server that generates the audio and video for the video game. As used herein, a video game refers to any interactive entertainment, including but not limited to computer games, arcade games, casual games, video slot machines, and the like.
  • With reference to FIG. 2, an embodiment may include a game server 203 (e.g., similar to server 103), network 201 (e.g., Internet, cable distribution system, fiber optic network, or a combination), decoder 207 (e.g., a set top box, STB), television 208, wireless access point 205, and game controller 209. Wireless access point and decoder 207 may alternatively be on the same LAN. Game controller 209 may communicate with decoder 207, which then forwards game input back to gaming server 203, or game controller 209 may alternatively communicate directly with gaming server 203 via wireless access point 205. Decoder 207 may alternatively be integrated within TV 208 to form integrated device 206. In another alternative, decoder 207 and TV 208 may be integrated within other types of devices, e.g., as a digital media player or digital media recorder having both audio and video capabilities. For example, a digital media player may provide integrated audiovisual capabilities, as well as user input controls provided by game controller 209. In one or more arrangements, game controller 209 may include its own internal wireless access point.
  • Decoder 207, server 203, and other applicable components may provide support for Digital Living Network Alliance (DLNA) protocols and specifications. Session initiation protocol (SIP), real-time transport protocol (RTP), and/or real-time streaming protocol (RTSP) may also or alternatively be used.
  • When a user desires to play a game on TV 208, decoder 207 may initiate a game session using DLNA or SIP responsive to user input requesting a particular game. Game server 203 may transcode the video game output (i.e., audio and video) into H.264 media, and send the media to decoder/STB 207 for display on TV 208. Decoder 207 may execute a client application to display the gaming media stream on the TV or other display device. Game controller 209 may communicate user commands back to server 203 via a reverse channel through wireless access point 205 and network 201. Server 203 then processes the received commands in accordance with the game being played, and generates responsive video for transmission to decoder 207.
  • Using the architecture shown in FIG. 2 alleviates the need for decoder 207 or any other local device to store software specific to a particular game. Rather, video game software is stored at and executed by gaming server 203, which pre-renders the video game output and sends the media stream to decoder 207 for display on a locally attached display device 208. Less hardware is therefore necessary at the consumer location than previously necessary. In addition, the hardware that is required at the consumer location is less costly, e.g., a game controller as opposed to an entire game console or PC.
  • FIG. 3 illustrates a method and data flow for playing a game in accordance with the architecture shown in FIG. 2, using session initiation protocol (SIP). In step 301 a user provides input, e.g., via game controller 209, to initiate a game session, and decoder 207 sends a SIP Invite command to gaming server 203. In step 303 gaming server 203 responds with a message in which gaming server 203 provides the session parameters, e.g., server port ID, reverse channel port ID, etc., as required by SIP. Gaming server 203 in step 305 provides SIP OK message (200) acknowledging the SIP invite message received from step 301. Decoder 207 in step 307 sends an ACK message back to the gaming server, at which time the game is initiated.
  • During gameplay, in step 309, gaming server 203 provides a transcoded video stream to decoder/TV 207/208 in a format directly usable by decoder/TV 207/208, i.e., a format that may be output directly to the display without further processing. Also in step 309 a user is providing user input to game controller 209 based on the audio and video information presented on TV 208, and game controller 209 forwards the user input to gaming server 203 via the previously established reverse channel. That is, the game controller may route commands via a wireless connection with a wireless access point, as shown, or may route commands via a wireless connection with decoder 207 (not shown).
  • When the game is over, or when the user decides he or she is done playing the game, the user provides input to game controller 209 or decoder 207 to stop game play, and decoder 207 in step 311 sends a BYE message to gaming server 203. In step 313, gaming server ceases operation of the game, and sends an SIP OK message (200) back to the decoder to indicate that the game play session has ended, and the decoder then resumes other operations as desired.
  • FIG. 4 illustrates a method and data flow for playing a game in accordance with the architecture shown in FIG. 2, using Digital Living Network Alliance (DLNA) protocols. In step 401 the decoder 207 sends a DLNA discovery request to gaming server 203, in response to which the gaming server 203 sends a DLNA device description message back to decoder 207 in step 403. Gaming server 203 also sends a DLNA service description message to decoder 207 in steps 405. The service description message may include advertising of session parameters, server port ID, reverse channel port ID, etc. In step 407 the decoder 207 subscribes to the gaming service by sending an event message to gaming server 203, and in step 409 the gaming server accepts the subscription and begins rendering and transcoding the gaming media.
  • During gameplay, in step 411, gaming server 203 provides the transcoded video stream to decoder/TV 207/208 in a format directly usable by decoder/TV 207/208, i.e., a format that may be output directly to the display without further processing. Also in step 411 a user is providing user input via game controller 209 based on the audio and video information presented on TV 208, and game controller 209 or decoder 207 forwards the user input to gaming server 203 via the previously established reverse channel. That is, the game controller may route commands via a wireless connection with a wireless access point, as shown, or may route commands via a wireless connection with decoder 207 (not shown).
  • In step 413, when the game ends or the user decides to cease playing, the decoder 207 sends an unsubscribe message to gaming server 203, and in step 415 the gaming server 203 terminates the game session, at which time the decoder resumes other operations.
  • With reference to FIG. 5, an embodiment may include a game server 503 (e.g., similar to server 103), network 501 (e.g., Internet, cable distribution system, fiber optic network, or combination), decoder 507, television 508, wireless access point 505, and portable device 509. Decoder 507 may alternatively be integrated within TV 508 as integrated device 206. Portable device 509, server 503, and other applicable components may provide support for Digital Living Network Alliance (DLNA) protocols and specification. Session initiation protocol (SIP), real-time transport protocol (RTP), and/or real-time streaming protocol (RTSP) may also or alternatively be used. As illustrated in FIG. 5, portable device 509 may include game controller functionality, e.g., via one or more user inputs, buttons, sliders, joysticks, etc.
  • When a user desires to play a game on TV 508, control logic 513 may initiate a game session using DLNA or SIP responsive to user input requesting a particular game. Game server 503 may transcode the video game output (i.e., audio and video) into H.264 media, and send the media to decoder/STB 507 for display on TV 508. Decoder 507 may execute a client application to display the gaming media stream. Portable device 509 may communicate user commands back to server 503 via a reverse channel through wireless access point 505 and network 501. Server 503 then processes the received commands in accordance with the game being played, and generates responsive video for transmission to decoder 507.
  • FIG. 6 illustrates a method and data flow for playing a game in accordance with the architecture shown in FIG. 5, using session initiation protocol (SIP). In step 601 portable device 509, under control of control logic 513, receives user input to initiate a game session, and sends a SIP Invite command to gaming server 503. In step 603 gaming server 503 responds with a message in which gaming server 503 provides the session parameters, e.g., server port ID, reverse channel port ID, etc., as required by SIP. Gaming server 503 in step 605 provides SIP OK message (200) acknowledging the SIP invite message from step 601. Portable device 509 in step 607 sends an ACK message back to the gaming server, at which time the game is initiated.
  • During gameplay, in step 609, gaming server 503 provides a transcoded video stream to decoder/TV 507/508 in a format directly usable by decoder/TV 507/508, i.e., may be output directly to the display without further processing. Also in step 609 a user is providing user input to portable device 509 based on the audio and video information presented on TV 508, and portable device 509 forwards the user input to gaming server 503 via the previously established reverse channel.
  • When the game is over, or when the user decides he or she is done playing the game, the user provides input to portable device to stop game play, and portable device 509 in step 611 sends a BYE message to gaming server 503. In step 613, gaming server 503 ceases operation of the game, and sends an SIP OK message (200) back to the portable device 509 to indicate that the game play session has ended.
  • According to one aspect, with reference to FIG. 7, functions and services necessary to communicate with the game server (e.g., with game server 103) may be provided by a computer memory, microprocessor, or application specific integrated circuit within an expansion card 701, which may be similar to expansion card 108 or 141 (FIG. 1). Card 701 may include control logic 711 for controlling card 701 as described herein when processed by microprocessor 712. For example, control logic may define an address of the network gaming server, or may provide instructions regarding how to learn the address of the network gaming server. Control logic 711 may also serve as an intermediation device providing setup and teardown of sessions as well as ongoing events between the player and the media server.
  • Card 701 may further include a wireless access point 713, command relay 715, and Bluetooth controller 717 (controller 717 may alternatively be replaced with any suitable short-range wireless communications controller). Card 701 may be in communication with gaming server 703, media player 705, and optionally also in communication with game controller 707 when media player 705 does not provide the required user inputs or game controls. Stated differently, game controller 707 may be integrated within media player 705.
  • Card 701 acts as a gateway to gaming server 703 for devices that are not otherwise equipped to communicate with server 703, and card 701 may be used to make older devices compatible with gaming server 703 provided the older device has an expansion card slot of the same format as card 701 (e.g., and older media player may have an SD Card slot, and expansion card 701 may be an SD Card).
  • Wifi access point 713 allows card 701 to communicate with gaming server 703 via a local wireless network, e.g., using 802.11 or later developed protocols and schemas. Card 701 may use the wifi connection to forward user input commands to game server 703 via the reverse channel, and may also receive the transcoded media from gaming server 703 over the wifi connection.
  • Bluetooth controller 717 may be used to communicate with game controller 707, e.g., to receive user inputs during game play responsive to the transcoded media output by media player 705. Card 701 may relay the user inputs top gaming server 703 via the relay module 715. Card 701 may also relay the transcoded media received from gaming server 703 to media player 705 via relay module 715. Alternatively, the functionality of relay module 715 may be included within control logic 711.
  • In an alternative embodiment, shown by optional connection 721, game controller 707 may have integrated wireless capability and be in communication with game server 703 without relaying through card 701. The game server 703 maintains a session between itself, the game controller 707, and card 701. Card 701 still provides SIP or DLNA support as needed, and attendant media rendering/displaying capabilities. The gaming server 703 transcodes the gameplay video and sends the transcoded stream to the card 701 for display on media player 705. Game controller 707 sends user commands directly to the gaming server 703 via the wireless connection. The gaming server 703 provides session management.
  • FIG. 8 illustrates a method of playing network game media according to one or more illustrative aspects based on the architecture illustrated in FIG. 7. In step 801, the expansion card is activated when inserted into a compatible receiving device, e.g., in a media player or set top box. The expansion card initializes the various modules and establishes communications with external devices, if available, e.g., with the game controller and wireless access point. In step 803, the expansion card receives user input indicating a desire of the user to play a networked game. The user input may be received from the game controller or from the media player, based on which of the two is providing user input and game controller functionality.
  • In step 805 the expansion card initiates a game session with the network gaming server, e.g., by sending a SIP or DLNA session initiation message to the network gaming server. Transmission and/or receipt of additional messages may be required, e.g., ACK messages and other handshaking messages, as defined by the specific protocol in use.
  • Once the session is established, in step 807 the expansion card begins receiving a media stream transcoded by the network gaming server in a format renderable by the device with which the expansion card is associated, e.g., in H.264 format. The media stream represents the audio and video output of the video game executing on the network gaming server based on user input provided by the user and relayed to the network gaming server by the expansion card (or sent independently to the network gaming server, according to some embodiments described herein). That is, user input is sent from the game controller (or media player device) to the network gaming server executing the video game. The network gaming server, based on the video game software, interprets the user input according to the video game software, e.g., to cause a character to run, jump, fight, etc., and modifies the media stream accordingly.
  • In step 809 the expansion card relays the transcoded media stream to the device with which the card is associated for output via a display and speaker(s) of the device. In step 811 the expansion card determines if the game is over and, if so, terminates the session in step 813. If the game is not over, the expansion card continues to receive and relay the transcoded media stream according to the user input.
  • FIG. 9 illustrates a sample system architecture that may be used, regardless of whether the gaming services are provided by a decoder, an expansion card, or some other module or node. FIG. 9 illustrates sample components in a gaming client application 901 (regardless of hardware used) and the communicatively corresponding components in network gaming server 903. Gaming client application 901 includes a session client 905 for managing the gaming connection or session, a media renderer 907 for receiving the transcoded media and forwarding it to the appropriate hardware for display, search services 909 to search for DLNA or otherwise advertised games, and command communication service 911 to receive user input from the game controller and forward the user commands back to the network gaming server 903 over the reverse channel.
  • Network gaming server 903 may include a session manager 913 for managing sessions with one or more gaming client applications; service broker 915 to render the media output and send the transcoded media stream to the gaming client application 901; digital media server (DMS) 917 to advertise available games or other media; and command execution module 919, which receives the user input from the reverse channel and inputs the user commands to the game for further execution.
  • The components of gaming client application 901 and/or network gaming server may be included within a single piece of hardware, or may be spread out among multiple pieces of hardware. For example, a media player may include modules 905, 907, 909, whereas a separate game controller may include command communication server 911. Other modifications may also be made based on the specific implementation hardware used.
  • The above embodiments may be used to provide gaming capabilities on otherwise non-networked devices, provided the device has an expansion slot of a suitable format. For example, in an embodiment where the expansion card is a PCMCIA CableCard, high-resolution network gaming capabilities may be added to millions of preexisting set top boxes already in users' homes simply by inserting the expansion card described herein to each set top box. In addition, aspects described above may be used to provide more than just gaming entertainment. Indeed, aspects described herein may be used to provide any sort of interactive media content, including interactive movies or videos, choose-your-own-adventure style games or books, television shows, movies, and the like.
  • Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (20)

1. An expansion card comprising:
a microprocessor configured to control operations of the expansion card;
a wireless networking module configured to wirelessly connect to a network;
a relay module configured to relay a transcoded media stream received from a network gaming server to a device with which the expansion card is associated; and
control logic configuring the expansion card to maintain a session with the network gaming server.
2. The expansion card of claim 1, further comprising a short-range wireless communication module configured to communicate with a game controller, and wherein the relay module is configured to relay user input commands received from the game controller to the network gaming server via the wireless networking module.
3. The expansion card of claim 1, comprising a Secure Digital(SD) Card.
4. The expansion card of claim 1, comprising a Personal Computer Memory Card International Association (PCMCIA) CableCard.
5. A network gaming server comprising:
a processor configured to control operations of the server according to control logic stored at the gaming sever;
a transcoder module configured to transcode a media stream into a format displayable by a gaming client device, based on output from a user-selected video game executing on the network gaming server; and
a network interface configured to communicate with the gaming client device and a game controller;
said control logic, when executed by the processor, configuring the network gaming server to perform:
receiving a session initiation message from the gaming client device;
transcoding the media stream based on output from the user-selected video game in accordance with received video game user input;
sending the transcoded media stream to the gaming client device; and
repeating the transcoding and sending steps during game play of the user-selected video game.
6. The network gaming server of claim 5, wherein the gaming client device is an expansion card.
7. The network gaming server of claim 6, wherein the expansion card is an SD Card.
8. The network gaming server of claim 6, wherein the expansion card is a PCMCIA CableCard.
9. The network gaming server of claim 5, wherein the received video game input is received from a game controller communicating through the gaming client device.
10. The network gaming server of claim 5, wherein the received video game input is received from a game controller communicating independently of the gaming client device.
11. A method of playing network game media, comprising steps of:
detecting that an expansion card executing the method has been inserted into a media player;
receiving user input indicating a desire to play a networked video game;
initiating a session with a network gaming server by sending a session initiation message to the network gaming server via a wireless networking module of the expansion card;
receiving a transcoded media stream from the network gaming server, wherein the transcoded media stream is in a format displayable by the media player, and wherein the media stream provides audio and video output of the video game executing on the network gaming server based on user input provided by a user to the network gaming server; and
relaying the transcoded media stream to the media player for output via the media player.
12. The method of claim 11, further comprising:
receiving, via a short-range wireless communication module, user input from a game controller; and
relaying the user input to the network gaming server for further processing in accordance with the video game executing on the network gaming server.
13. The method of claim 12, wherein relaying the user input is over a reverse channel established between the expansion card and the network gaming server.
14. The method of claim 12, wherein the expansion card is an SD Card.
15. The method of claim 12, wherein the expansion card is a PCMCIA CableCard.
16. The method of claim 12, wherein the transcoded media stream is in H.264 format.
17. The method of claim 12, wherein the session initiation message conforms to one of session initiation protocol (SIP) and digital living network alliance (DLNA).
18. A system comprising:
an expansion card comprising:
a microprocessor configured to control operations of the expansion card;
a wireless networking module configured to wirelessly connect to a network;
a short-range wireless communication module configured to communicate with a game controller;
a relay module configured to relay a transcoded media stream received from a network gaming server to a device with which the expansion card is associated, and configured to relay commands received from the game controller to the network gaming server;
control logic configuring the expansion card to maintain a session with the network gaming server, and
the game controller comprising a plurality of user inputs for interacting with a video game executing on the network gaming server.
19. The system of claim 18, wherein the expansion card is an SD Card.
20. The system of claim 18, wherein the expansion card is a card adapted for insertion in a set top box.
US12/483,025 2009-06-11 2009-06-11 Distributed Network Game System Abandoned US20100317443A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/483,025 US20100317443A1 (en) 2009-06-11 2009-06-11 Distributed Network Game System
EP10164360A EP2261809A1 (en) 2009-06-11 2010-05-28 Distributed network game system
CA2706158A CA2706158A1 (en) 2009-06-11 2010-06-01 Distributed network game system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/483,025 US20100317443A1 (en) 2009-06-11 2009-06-11 Distributed Network Game System

Publications (1)

Publication Number Publication Date
US20100317443A1 true US20100317443A1 (en) 2010-12-16

Family

ID=42272479

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/483,025 Abandoned US20100317443A1 (en) 2009-06-11 2009-06-11 Distributed Network Game System

Country Status (3)

Country Link
US (1) US20100317443A1 (en)
EP (1) EP2261809A1 (en)
CA (1) CA2706158A1 (en)

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110077086A1 (en) * 2009-09-29 2011-03-31 Cleversafe, Inc. Interactive gaming utilizing a dispersed storage network
US20110107388A1 (en) * 2009-11-02 2011-05-05 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
US20120004042A1 (en) * 2008-12-15 2012-01-05 David Perry Intelligent Game Loading
US20120005316A1 (en) * 2008-12-15 2012-01-05 David Perry Dual-Mode Program Execution
US20120137102A1 (en) * 2010-11-30 2012-05-31 Ramkumar Perumanam Consumer approach based memory buffer optimization for multimedia applications
US20120236930A1 (en) * 2011-03-16 2012-09-20 Verizon Patent And Licensing, Inc. Mpeg-w decoder
US8506402B2 (en) 2009-06-01 2013-08-13 Sony Computer Entertainment America Llc Game execution environments
US20130210522A1 (en) * 2012-01-12 2013-08-15 Ciinow, Inc. Data center architecture for remote graphics rendering
US8560331B1 (en) 2010-08-02 2013-10-15 Sony Computer Entertainment America Llc Audio acceleration
JP2014512199A (en) * 2011-02-08 2014-05-22 ムスタファ.アワイス I Method and system for providing video game content
US8888592B1 (en) 2009-06-01 2014-11-18 Sony Computer Entertainment America Llc Voice overlay
US8968087B1 (en) 2009-06-01 2015-03-03 Sony Computer Entertainment America Llc Video game overlay
US9349201B1 (en) 2006-08-03 2016-05-24 Sony Interactive Entertainment America Llc Command sentinel
US9426502B2 (en) 2011-11-11 2016-08-23 Sony Interactive Entertainment America Llc Real-time cloud-based video watermarking systems and methods
US9498714B2 (en) 2007-12-15 2016-11-22 Sony Interactive Entertainment America Llc Program mode switching
WO2017044205A1 (en) * 2015-09-08 2017-03-16 Microsoft Technology Licensing, Llc Wireless control of a streaming computing device
US9635073B1 (en) * 2015-11-04 2017-04-25 Ubitus Inc. Interactive applications implemented in video streams
US20170142201A1 (en) * 2015-11-12 2017-05-18 Nvidia Corporation System and method for network coupled cloud gaming
US9878240B2 (en) 2010-09-13 2018-01-30 Sony Interactive Entertainment America Llc Add-on management methods
CN110354491A (en) * 2019-08-05 2019-10-22 网易(杭州)网络有限公司 The whole world is same to take game system, method of data synchronization, electronic equipment and medium
CN110523079A (en) * 2012-12-21 2019-12-03 索尼电脑娱乐美国公司 The trivial games for cloud game suggestion are automatically generated based on the game play recorded
US20200139231A1 (en) * 2018-11-05 2020-05-07 Sony Interactive Entertainment LLC Systems and Methods for Establishing Direct Communication Between a Server System and a Video Game Controller
CN112074330A (en) * 2018-04-02 2020-12-11 谷歌有限责任公司 Method, equipment and system for interactive cloud game
US11027199B2 (en) * 2015-11-12 2021-06-08 Nvidia Corporation System and method for network coupled gaming
US11045731B1 (en) * 2020-10-08 2021-06-29 Playtika Ltd. Systems and methods for combining a computer story game with a computer non-story game
US11161038B2 (en) * 2018-08-06 2021-11-02 Amazon Technologies, Inc. Systems and devices for controlling network applications
CN116036578A (en) * 2023-01-28 2023-05-02 腾讯科技(深圳)有限公司 Data processing method and device and related equipment
US11872476B2 (en) 2018-04-02 2024-01-16 Google Llc Input device for an electronic system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2491819A (en) * 2011-06-08 2012-12-19 Cubicspace Ltd Server for remote viewing and interaction with a virtual 3-D scene
US10135892B2 (en) 2015-07-28 2018-11-20 Google Llc Independent control of interactive streaming media

Citations (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5191410A (en) * 1987-08-04 1993-03-02 Telaction Corporation Interactive multimedia presentation and communications system
US5664778A (en) * 1994-04-01 1997-09-09 Fujitsu Limited Network service system and communication unit for game machine and game machine capable of using said network service system
US5851149A (en) * 1995-05-25 1998-12-22 Tech Link International Entertainment Ltd. Distributed gaming system
US6263503B1 (en) * 1999-05-26 2001-07-17 Neal Margulis Method for effectively implementing a wireless television system
US20020034980A1 (en) * 2000-08-25 2002-03-21 Thomas Lemmons Interactive game via set top boxes
US20020086734A1 (en) * 2001-01-03 2002-07-04 Aditya Krishnan Set-top box storage of games for games for game console
US20020147047A1 (en) * 2000-11-01 2002-10-10 Howard Letovsky Method and system for remote gaming
US20030135860A1 (en) * 2002-01-11 2003-07-17 Vincent Dureau Next generation television receiver
US6692358B2 (en) * 1999-10-05 2004-02-17 Mediaone Group, Inc. Interactive television system and remote control unit
US20050104889A1 (en) * 2002-03-01 2005-05-19 Graham Clemie Centralised interactive graphical application server
US6929549B1 (en) * 1999-11-02 2005-08-16 Sony Corporation Game machine system with server device, display device, and game executing device connected by external communication line and method of using the system
US6942575B2 (en) * 2001-12-08 2005-09-13 Koninklijke Philips Electronics N.V. Server and units
US20050246747A1 (en) * 2003-03-31 2005-11-03 Matsushita Electric Industrial Co., Ltd. Utilization of data broadcasting technology with handheld control apparatus
US20060068917A1 (en) * 2004-09-21 2006-03-30 Snoddy Jon H System, method and handheld controller for multi-player gaming
US20060095401A1 (en) * 2004-06-07 2006-05-04 Jason Krikorian Personal media broadcasting system with output buffer
US20060294568A1 (en) * 2005-06-24 2006-12-28 Sbc Knowledge Ventures, L.P. Video game console modular card and method thereof
US20070003224A1 (en) * 2005-06-30 2007-01-04 Jason Krikorian Screen Management System for Media Player
US20070022328A1 (en) * 2005-06-30 2007-01-25 Raghuveer Tarra Firmware Update for Consumer Electronic Device
US20070094700A1 (en) * 2005-10-25 2007-04-26 Jason Wolfe Game delivery system
US20070099694A1 (en) * 2005-10-31 2007-05-03 Sbc Knowledge Ventures L.P. System and method to deliver video games
US20070100981A1 (en) * 2005-04-08 2007-05-03 Maria Adamczyk Application services infrastructure for next generation networks including one or more IP multimedia subsystem elements and methods of providing the same
US20070155507A1 (en) * 2005-12-02 2007-07-05 Cyberscan Technology, Inc. In-room gaming
US20070165144A1 (en) * 2006-01-17 2007-07-19 Bennett James D Parallel television based media interaction
US20070250872A1 (en) * 2006-03-21 2007-10-25 Robin Dua Pod module and method thereof
US20070265094A1 (en) * 2006-05-10 2007-11-15 Norio Tone System and Method for Streaming Games and Services to Gaming Devices
US20070293320A1 (en) * 2006-05-31 2007-12-20 Igt Broadcast gaming
US20070298885A1 (en) * 2006-06-12 2007-12-27 Tran Bao Q Mesh network game controller with voice transmission, search capability, motion detection, and/or position detection
US20080028434A1 (en) * 2005-01-12 2008-01-31 Electra Entertainment Limited Memory card handling for enhancing interactive television services
US20080077722A1 (en) * 2006-09-26 2008-03-27 Xinyue Tang Extending secure digital input ouput capability on a controller bus
US20080081699A1 (en) * 2006-09-29 2008-04-03 Sbc Knowledge Ventures, L.P. Interactive games on a television via internet protocol
US20080139118A1 (en) * 2006-12-11 2008-06-12 Sanguinetti Louie J Wireless communications circuitry with simultaneous receive capabilities for handled electronic devices
US20080195797A1 (en) * 2007-02-13 2008-08-14 Itay Sherman Interface for extending functionality of memory cards
US20080220859A1 (en) * 2007-03-09 2008-09-11 At&T Knowledge Ventures, L.P. Console game purchase and downloading through an internet protocol television system to a console device
US20080256485A1 (en) * 2007-04-12 2008-10-16 Jason Gary Krikorian User Interface for Controlling Video Programs on Mobile Computing Devices
US20080261686A1 (en) * 2007-04-19 2008-10-23 James Carlton Bedingfield Systems, methods and computer products for IPTV network game control
US20080268947A1 (en) * 2006-11-28 2008-10-30 Verizon Services Organization Inc. Cross platform gaming
US20080307477A1 (en) * 2007-06-09 2008-12-11 Apple Inc. Systems and methods for server-side filtering
US20090119737A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for collaborative conferencing using streaming interactive video
US7849491B2 (en) * 2002-12-10 2010-12-07 Onlive, Inc. Apparatus and method for wireless video gaming

Patent Citations (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5191410A (en) * 1987-08-04 1993-03-02 Telaction Corporation Interactive multimedia presentation and communications system
US5664778A (en) * 1994-04-01 1997-09-09 Fujitsu Limited Network service system and communication unit for game machine and game machine capable of using said network service system
US5851149A (en) * 1995-05-25 1998-12-22 Tech Link International Entertainment Ltd. Distributed gaming system
US6263503B1 (en) * 1999-05-26 2001-07-17 Neal Margulis Method for effectively implementing a wireless television system
US6692358B2 (en) * 1999-10-05 2004-02-17 Mediaone Group, Inc. Interactive television system and remote control unit
US6929549B1 (en) * 1999-11-02 2005-08-16 Sony Corporation Game machine system with server device, display device, and game executing device connected by external communication line and method of using the system
US20020034980A1 (en) * 2000-08-25 2002-03-21 Thomas Lemmons Interactive game via set top boxes
US20020147047A1 (en) * 2000-11-01 2002-10-10 Howard Letovsky Method and system for remote gaming
US20020086734A1 (en) * 2001-01-03 2002-07-04 Aditya Krishnan Set-top box storage of games for games for game console
US6942575B2 (en) * 2001-12-08 2005-09-13 Koninklijke Philips Electronics N.V. Server and units
US20030135860A1 (en) * 2002-01-11 2003-07-17 Vincent Dureau Next generation television receiver
US20050104889A1 (en) * 2002-03-01 2005-05-19 Graham Clemie Centralised interactive graphical application server
US7849491B2 (en) * 2002-12-10 2010-12-07 Onlive, Inc. Apparatus and method for wireless video gaming
US20090119737A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for collaborative conferencing using streaming interactive video
US20050246747A1 (en) * 2003-03-31 2005-11-03 Matsushita Electric Industrial Co., Ltd. Utilization of data broadcasting technology with handheld control apparatus
US20060095401A1 (en) * 2004-06-07 2006-05-04 Jason Krikorian Personal media broadcasting system with output buffer
US20060068917A1 (en) * 2004-09-21 2006-03-30 Snoddy Jon H System, method and handheld controller for multi-player gaming
US20080028434A1 (en) * 2005-01-12 2008-01-31 Electra Entertainment Limited Memory card handling for enhancing interactive television services
US20070100981A1 (en) * 2005-04-08 2007-05-03 Maria Adamczyk Application services infrastructure for next generation networks including one or more IP multimedia subsystem elements and methods of providing the same
US20060294568A1 (en) * 2005-06-24 2006-12-28 Sbc Knowledge Ventures, L.P. Video game console modular card and method thereof
US20070003224A1 (en) * 2005-06-30 2007-01-04 Jason Krikorian Screen Management System for Media Player
US20070022328A1 (en) * 2005-06-30 2007-01-25 Raghuveer Tarra Firmware Update for Consumer Electronic Device
US20070094700A1 (en) * 2005-10-25 2007-04-26 Jason Wolfe Game delivery system
US20070099694A1 (en) * 2005-10-31 2007-05-03 Sbc Knowledge Ventures L.P. System and method to deliver video games
US20070155507A1 (en) * 2005-12-02 2007-07-05 Cyberscan Technology, Inc. In-room gaming
US20070165144A1 (en) * 2006-01-17 2007-07-19 Bennett James D Parallel television based media interaction
US20070250872A1 (en) * 2006-03-21 2007-10-25 Robin Dua Pod module and method thereof
US20070265094A1 (en) * 2006-05-10 2007-11-15 Norio Tone System and Method for Streaming Games and Services to Gaming Devices
US20070293320A1 (en) * 2006-05-31 2007-12-20 Igt Broadcast gaming
US20070298885A1 (en) * 2006-06-12 2007-12-27 Tran Bao Q Mesh network game controller with voice transmission, search capability, motion detection, and/or position detection
US20080077722A1 (en) * 2006-09-26 2008-03-27 Xinyue Tang Extending secure digital input ouput capability on a controller bus
US20080081699A1 (en) * 2006-09-29 2008-04-03 Sbc Knowledge Ventures, L.P. Interactive games on a television via internet protocol
US20080268947A1 (en) * 2006-11-28 2008-10-30 Verizon Services Organization Inc. Cross platform gaming
US20080139118A1 (en) * 2006-12-11 2008-06-12 Sanguinetti Louie J Wireless communications circuitry with simultaneous receive capabilities for handled electronic devices
US20080195797A1 (en) * 2007-02-13 2008-08-14 Itay Sherman Interface for extending functionality of memory cards
US20080220859A1 (en) * 2007-03-09 2008-09-11 At&T Knowledge Ventures, L.P. Console game purchase and downloading through an internet protocol television system to a console device
US20080256485A1 (en) * 2007-04-12 2008-10-16 Jason Gary Krikorian User Interface for Controlling Video Programs on Mobile Computing Devices
US20080261686A1 (en) * 2007-04-19 2008-10-23 James Carlton Bedingfield Systems, methods and computer products for IPTV network game control
US20080307477A1 (en) * 2007-06-09 2008-12-11 Apple Inc. Systems and methods for server-side filtering

Cited By (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130102395A1 (en) * 2005-09-30 2013-04-25 Cleversafe, Inc. Interactive gaming utilizing a dispersed storage network
US8882599B2 (en) * 2005-09-30 2014-11-11 Cleversafe, Inc. Interactive gaming utilizing a dispersed storage network
US9349201B1 (en) 2006-08-03 2016-05-24 Sony Interactive Entertainment America Llc Command sentinel
US9498714B2 (en) 2007-12-15 2016-11-22 Sony Interactive Entertainment America Llc Program mode switching
US11027198B2 (en) 2007-12-15 2021-06-08 Sony Interactive Entertainment LLC Systems and methods of serving game video for remote play
US8613673B2 (en) * 2008-12-15 2013-12-24 Sony Computer Entertainment America Llc Intelligent game loading
US8840476B2 (en) * 2008-12-15 2014-09-23 Sony Computer Entertainment America Llc Dual-mode program execution
US20120005316A1 (en) * 2008-12-15 2012-01-05 David Perry Dual-Mode Program Execution
US20120004042A1 (en) * 2008-12-15 2012-01-05 David Perry Intelligent Game Loading
US9723319B1 (en) 2009-06-01 2017-08-01 Sony Interactive Entertainment America Llc Differentiation for achieving buffered decoding and bufferless decoding
US9203685B1 (en) 2009-06-01 2015-12-01 Sony Computer Entertainment America Llc Qualified video delivery methods
US10912997B2 (en) 2009-06-01 2021-02-09 Sony Interactive Entertainment LLC Game execution environments
US9584575B2 (en) 2009-06-01 2017-02-28 Sony Interactive Entertainment America Llc Qualified video delivery
US8968087B1 (en) 2009-06-01 2015-03-03 Sony Computer Entertainment America Llc Video game overlay
US8888592B1 (en) 2009-06-01 2014-11-18 Sony Computer Entertainment America Llc Voice overlay
US8506402B2 (en) 2009-06-01 2013-08-13 Sony Computer Entertainment America Llc Game execution environments
US20110077086A1 (en) * 2009-09-29 2011-03-31 Cleversafe, Inc. Interactive gaming utilizing a dispersed storage network
US8357048B2 (en) * 2009-09-29 2013-01-22 Cleversafe, Inc. Interactive gaming utilizing a dispersed storage network
US10440065B2 (en) * 2009-11-02 2019-10-08 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
US20170013027A1 (en) * 2009-11-02 2017-01-12 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
US9264670B2 (en) * 2009-11-02 2016-02-16 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
US9473744B2 (en) 2009-11-02 2016-10-18 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
US20110107388A1 (en) * 2009-11-02 2011-05-05 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
US8560331B1 (en) 2010-08-02 2013-10-15 Sony Computer Entertainment America Llc Audio acceleration
US8676591B1 (en) 2010-08-02 2014-03-18 Sony Computer Entertainment America Llc Audio deceleration
US9878240B2 (en) 2010-09-13 2018-01-30 Sony Interactive Entertainment America Llc Add-on management methods
US10039978B2 (en) 2010-09-13 2018-08-07 Sony Interactive Entertainment America Llc Add-on management systems
US20120137102A1 (en) * 2010-11-30 2012-05-31 Ramkumar Perumanam Consumer approach based memory buffer optimization for multimedia applications
JP2014512199A (en) * 2011-02-08 2014-05-22 ムスタファ.アワイス I Method and system for providing video game content
US20120236930A1 (en) * 2011-03-16 2012-09-20 Verizon Patent And Licensing, Inc. Mpeg-w decoder
US8837578B2 (en) * 2011-03-16 2014-09-16 Verizon Patent And Licensing Inc. MPEG-W decoder
US9426502B2 (en) 2011-11-11 2016-08-23 Sony Interactive Entertainment America Llc Real-time cloud-based video watermarking systems and methods
US20130210522A1 (en) * 2012-01-12 2013-08-15 Ciinow, Inc. Data center architecture for remote graphics rendering
CN110523079A (en) * 2012-12-21 2019-12-03 索尼电脑娱乐美国公司 The trivial games for cloud game suggestion are automatically generated based on the game play recorded
US10462201B2 (en) 2015-09-08 2019-10-29 Microsoft Technology Licensing, Llc Wireless control of streaming computing device
WO2017044205A1 (en) * 2015-09-08 2017-03-16 Microsoft Technology Licensing, Llc Wireless control of a streaming computing device
US9813468B2 (en) 2015-09-08 2017-11-07 Microsoft Technology Licensing, Llc Wireless control of streaming computing device
US9635073B1 (en) * 2015-11-04 2017-04-25 Ubitus Inc. Interactive applications implemented in video streams
US20170142201A1 (en) * 2015-11-12 2017-05-18 Nvidia Corporation System and method for network coupled cloud gaming
US10630773B2 (en) * 2015-11-12 2020-04-21 Nvidia Corporation System and method for network coupled cloud gaming
US11027199B2 (en) * 2015-11-12 2021-06-08 Nvidia Corporation System and method for network coupled gaming
CN112074330A (en) * 2018-04-02 2020-12-11 谷歌有限责任公司 Method, equipment and system for interactive cloud game
US11872476B2 (en) 2018-04-02 2024-01-16 Google Llc Input device for an electronic system
US11161038B2 (en) * 2018-08-06 2021-11-02 Amazon Technologies, Inc. Systems and devices for controlling network applications
US11045722B2 (en) * 2018-11-05 2021-06-29 Sony Interactive Entertainment LLC Systems and methods for establishing direct communication between a server system and a video game controller
CN113056921A (en) * 2018-11-05 2021-06-29 索尼互动娱乐有限责任公司 System and method for establishing direct communication between a server system and a video game controller
US20200139231A1 (en) * 2018-11-05 2020-05-07 Sony Interactive Entertainment LLC Systems and Methods for Establishing Direct Communication Between a Server System and a Video Game Controller
US10773156B2 (en) * 2018-11-05 2020-09-15 Sony Interactive Entertainment LLC Systems and methods for establishing direct communication between a server system and a video game controller
CN110354491A (en) * 2019-08-05 2019-10-22 网易(杭州)网络有限公司 The whole world is same to take game system, method of data synchronization, electronic equipment and medium
CN110354491B (en) * 2019-08-05 2023-08-08 网易(杭州)网络有限公司 Global co-service game system, data synchronization method, electronic equipment and medium
US11045731B1 (en) * 2020-10-08 2021-06-29 Playtika Ltd. Systems and methods for combining a computer story game with a computer non-story game
CN116036578A (en) * 2023-01-28 2023-05-02 腾讯科技(深圳)有限公司 Data processing method and device and related equipment

Also Published As

Publication number Publication date
EP2261809A1 (en) 2010-12-15
CA2706158A1 (en) 2010-12-11

Similar Documents

Publication Publication Date Title
US20100317443A1 (en) Distributed Network Game System
US11590419B2 (en) Web-based game controller
US11471762B2 (en) Program mode transition
CN109906107B (en) Cloud game based on browser
US9066144B2 (en) Interactive remote participation in live entertainment
US8840476B2 (en) Dual-mode program execution
US8926435B2 (en) Dual-mode program execution
US20130344960A1 (en) Massive Multi-Player Online (MMO) Games Server and Methods for Executing the Same
US20120004042A1 (en) Intelligent Game Loading
US20070115933A1 (en) Method for maintaining continuity of a multimedia session between media devices
US9044681B2 (en) System and method for television-based services
CN109152955A (en) User in cloud game saves data management
KR20150070243A (en) A system and method for managing playback of streaming digital content
US20220347565A1 (en) Massive Multi-Player Online (MMO) Games Server and Methods for Executing the Same
KR20150067351A (en) A system and method for managing playback of streaming digital content
CN109005430A (en) A kind of order method, system, device and the storage medium of audio/video content
US10130877B2 (en) Remote gaming and projection
US20230201714A1 (en) Web-Based Game Controller
CN101184208A (en) Background music playing method
KR100813109B1 (en) Method for Providing Multi-play Game Service in On-line Flash Game and Readable Medium for the Same
US11943516B1 (en) System and method for interactive web-browsing via user equipment
JP2024012147A (en) Method and system for cloud gaming
WO2023200917A1 (en) Systems and methods for efficient management of resources for streaming interactive multimedia content
KR20090111076A (en) Method and system for contats download in using p2p service
KR20070052734A (en) Method for providing multi-play game service in on-line flash game and readable medium for the same

Legal Events

Date Code Title Description
AS Assignment

Owner name: COMCAST CABLE COMMUNICATIONS, LLC, PENNSYLVANIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:COOK, MICHAEL J.;PODER, JAMES S.;SIGNING DATES FROM 20090610 TO 20090611;REEL/FRAME:022818/0927

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION