WO2002003645A2 - Method and apparatus to synchronize audio and visual application data presentation - Google Patents
Method and apparatus to synchronize audio and visual application data presentation Download PDFInfo
- Publication number
- WO2002003645A2 WO2002003645A2 PCT/US2001/020411 US0120411W WO0203645A2 WO 2002003645 A2 WO2002003645 A2 WO 2002003645A2 US 0120411 W US0120411 W US 0120411W WO 0203645 A2 WO0203645 A2 WO 0203645A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- snac
- server
- client
- data
- transmitting
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/215—Input arrangements for video game devices characterised by their sensors, purposes or types comprising means for detecting acoustic signals, e.g. using a microphone
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/33—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
- A63F13/332—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using wireless networks, e.g. cellular phone networks
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
- A63F13/424—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving acoustic input signals, e.g. by using the results of pitch or rhythm extraction or voice recognition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/44—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment involving timing of operations, e.g. performing an action within a time slot
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/54—Controlling the output signals based on the game progress involving acoustic signals, e.g. for simulating revolutions per minute [RPM] dependent engine sounds in a driving game or reverberation against a virtual wall
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/85—Providing additional services to players
- A63F13/87—Communicating with other players during game play, e.g. by e-mail or chat
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/10—Features 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/1081—Input via voice recognition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/20—Features 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/206—Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/40—Features 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 platform network
- A63F2300/406—Transmission via wireless network, e.g. pager or GSM
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features 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
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features 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/55—Details of game data or player data management
- A63F2300/5526—Game data structure
- A63F2300/554—Game data structure by saving game or status data
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features 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/57—Features 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 game services offered to the player
- A63F2300/572—Communication between players during game play of non game information, e.g. e-mail, chat, file transfer, streaming of audio and streaming of video
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/6063—Methods for processing data by generating or executing the game program for sound processing
- A63F2300/6072—Methods for processing data by generating or executing the game program for sound processing of an input signal, e.g. pitch and rhythm extraction, voice recognition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/6063—Methods for processing data by generating or executing the game program for sound processing
- A63F2300/6081—Methods for processing data by generating or executing the game program for sound processing generating an output signal, e.g. under timing constraints, for spatialization
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/63—Methods for processing data by generating or executing the game program for controlling the execution of the game in time
- A63F2300/638—Methods for processing data by generating or executing the game program for controlling the execution of the game in time according to the timing of operation or a time limit
Definitions
- This invention relates non-real-time transmittal of multimedia data with application data, and more particularly to a method of transmitting voice data with application data and simultaneous presentation of the voice and application data on a client device.
- Common use radio channels have provided an alternate medium by which multiple people could speak and contribute, although not at a common location.
- the one who transmitted on a channel with the strongest signal, and/or nearest location would drown out any other voices contending for the channel.
- IP telephony has provided an amenable substitute for analog phone conversations, mainly due to the real-time transmittal of full-duplex speech using protocols such as H.232.
- Such services require that the intermediate routers provide assured levels of delay, which comes at a cost of relegating other traffic to queues in routers and increasing the attendant delays for competing application traffic. Consequently, the costs of establishing and maintaining traffic for such real-time communications using packet networks is high for a one-to-one interface of people compared to the typical pattern of packet data usage. There is corresponding geometric progression in traffic use for each increment of one person who participates in the voice chat or IP telephone conference.
- Some shared mediums are particularly costly to maintain, e.g. the wireless bands supporting mobile phone and wireless data use. These bands must be allocated to functions associated with paging, call-setup and tear-down, roaming, handovers and power control, among others.
- the prospect of transmitting video over such mediums will make the radio bands more highly contended for, and increase the cost and value of this vital asset to wireless carriers.
- video and voice traffic by this medium is often very bursty, which leaves a valuable resource partially used for intermittent and largely random intervals. Consequently, there is available bandwidth for applications or services that can tolerate random delays while waiting for gaps in use by high priority traffic.
- Some such applications tolerant to delays are social game playing, and question and answer sessions between e.g. lecturers, and e.g.
- An embodiment of the invention provides a server-based mechanism for transmitting audio information paired with contextual application data, e.g. game status, to one or client devices that have subscribed or joined to the conversation hosted on a server.
- client devices will be operated by persons or users.
- the paired audio and contextual information also known as Serialized Network Asynchronous Communication (SNAC)
- SNAC Serialized Network Asynchronous Communication
- the server stores each SNAC, and filters or modifies it according to any rules of the application, which may be a game program.
- the server transmits the SNAC.
- An embodiment of the invention is a server device that mediates delivery of one or more Serialized Network Asynchronous Communications (SNAC).
- the server device receives a SNAC from a client device.
- the server stores the SNAC in storage.
- the server filters the SNAC according to the rules of an application to produce a second SNAC having application data and audio data.
- the server transmits the second SNAC via a packet switched network to at least one requesting client device.
- the server is responsive to 'request' commands made by client devices that have previously successfully ordered a 'join' command to the server. With each request, the server may provide a SNAC that has been modified in accordance with an application.
- Applications may be any kind of group interaction that depends on audio for part of its entertainment or educational value.
- a request may be for a SNAC that is expected but not yet stored at the server.
- a server typically does not send a SNAC as a response to a 'request' if the SNAC was also authored via the client device that is making the 'request'.
- a second embodiment of the invention is a wireless client device that presents audio data of a SNAC and application data of a SNAC.
- the client device wirelessly receives a SNAC transported by at least two packets.
- the client renders the audio data.
- the client renders the application data, which could represent cards in game play, at about the same time the audio data is presented, delaying rendering of application data if necessary.
- the client device may perform filtering of the audio data to alter its duration, among other things.
- the client may be built using a suitable environment or operating system, such as, for example, the Wireless Application Environment (WAE).
- WAE Wireless Application Environment
- the client may depend upon drivers or a Wireless Application Protocol (WAP) stack to operate as an interface to a wireless transceiver for purposes of packet assembly and disassembly, as well as selection of at least one bearer service.
- WAP Wireless Application Protocol
- Devices such as speakers and microphones may provide means to record and playback audio information of a SNAC in conjunction with a COder and DECoder (CODEC).
- a display which may be a flat panel, ray-tube, or solid-state display, may provide a output for the display of aspects of the application data.
- one or more of the disclosed embodiments provides a way to couple the manipulation of application data so that the application data is presented at the same time that audio data is rendered.
- the application data may be data elements representing game-pieces, or conversation contexts.
- a way to store audio data that may arrive considerably delayed and at a rate slower than real-time so that low-speed bearer service may be used is disclosed.
- Another advantage provided by one or more embodiments includes the ability to maintain time based ordered relationships between the various parties involved in a group interaction. This may be accomplished by sorting at a server various SNACs that apply to a conversation based on a time-stamp of when the SNAC was sent or received.
- Another advantage provided by one or more embodiments is that by coupling audio tightly with application data presentation, a quick, yet not real-time way of authoring, transmitting and presenting human inputs to a group is accomplished without the intensive use of bearer resources that might accompany a duplex audio conversation. That is, an exchange amongst identically sized groups may be accomplished more economically using an embodiment of the invention, than through real-time duplexed communications, and not suffer any confusion for certain applications, such as game playing.
- the competing cellular telephone audio data sent using a vox-limited CODEC is of comparable size ⁇ unlike typical digital cellular coding schemes of today, the audio of the embodiments may be sent piecemeal, as packets, without the high-speed requirements of low latency and low jitter associated with cellular telephony.
- any digital signal processor (DSP) that is running a CODEC on the client embodiment may operate in a less than real-time speed. It is permissible to have the network be a bottleneck for data flow at some times, and the DSP to be a bottleneck at other times. Reduced speeds and data throughput can operate to conserve battery life in a embodiment of the invention, which is particularly helpful if the client device embodiment has, as a primary function, full duplex, voice telephony functions too. In other words, the embodiment of the invention may be embedded in a device that performs voice telephony in a wireless manner.
- This invention makes appropriate use of scarce resources, such as wireless bandwidth, to deliver multi- modal application data, which might otherwise be deemed cost ineffective.
- the invention is in the area of optimized, cost-tuned, multimedia delivery in bandwidth limited environments and makes good use of a packet transmission medium that is subject to rapid variations in delivery speed.
- Fig. 1 shows a server embodiment of the invention and how the embodiment might interact with client devices
- Fig. 2 shows a Serialized Network Asynchronous Communication (SNAC) record used to store information in an embodiment
- Fig. 3 is a diagram of communications in an example of how a game application may function within a server embodiment of the invention
- Fig. 4 is a diagram of communications in an example of progress of a conversation or game
- Fig. 5 is a block diagram of a client device embodiment
- Fig. 6 shows a state machine implementation of the SNAC protocol operating on a client device embodiment.
- a central aspect of the embodiments of the invention is the ability to store, transmit, receive and present the data stored in a Serialized Network Asynchronous Communication (SNAC).
- the SNAC may carry both application data and audio, wherein one or more are compressed.
- a SNAC may be stored on a device as a record, which may be on non-volatile or volatile memory.
- the audio data will be the predominate data of the SNAC record.
- Transmission of a SNAC record may be according to a packet switched protocol. Use of such a protocol may be slower than use of a circuit switched protocol.
- an application data part of a SNAC may be received by a device well in advance of an audio portion.
- a device that is memory frugal may transmit a SNAC, and reallocate memory in steps as the transmission facilities of the network indicate to the device that proper transmittal of portions of the SNAC.
- the SNAC may exist in part a) in memory of the transmitting device; b) as packets transmitted by a packet switching network; and c) in memory of the receiving device.
- a group of SNACs may be organized at a server into a conversation.
- a conversation is a set of SNACs that exist in furtherance of an application, such as a game, or a discussion.
- Fig. 1 shows an embodiment of the invention and how the embodiment might interact with wireless clients, S1 191, S2 192, S3 193 and S4 194.
- wireless clients tend to be always on, and also tend to be nearer at hand more frequently, than, for example, a desk-bound computer. Consequently, a greater population of ready, willing and able game players will likely be available through such devices.
- a server 100 device including a CPU, provides facilities for program operation in support of client devices.
- Fig. 1 illustrates such a server.
- Serialized Network Asynchronous Communication (SNAC) protocol 101 operates as a data port to a packet network.
- the packet network may provide connectivity to a. wireless data server, such as a Wireless Application Protocol (WAP) server, for reception and transmission of SNAC packets and packet series.
- WAP server may be addressable over a wide area network of, e.g. a cellular telephone system.
- the WAP server may be a resource addressable via the Internet.
- WAP server may forward the SNAC to a wireless transceiver.
- Wireless transceiver transmits SNAC over a wireless carrier to a wireless client device.
- the SNAC protocol 101 handles matters such as determining to which conversation an incoming SNAC belongs, and providing opportunities to create new conversations.
- SNAC protocol 101 provides for limitations in the number of clients that enter a conversation, e.g. to limit the clients participating in a conversation to those allowed by the application specific logic 109.
- SNAC Protocol 101 also provides a data port for receiving SNACs over a packet network, as well as for sending SNACs over a packet network.
- SNAC protocol 101 places a received SNAC into a queue or other data structure or queue 103, by use of a pointer 105 to the next open space in memory.
- memory may be in the form of RAM, disk storage, magnetic storage and need not be located on-site with the SNAC protocol 101.
- the queue may hold information for as long as needed, and once the information has been disseminated to al) members of the conversation/game, the memory allocated to it may be freed. Alternatively, data could simply reach a certain age after its creation, and that may trigger reallocation of the memory.
- a SNAC contains no sound data
- such an instance may be represented as null pointers, or other symbol in the data structure or queue103.
- Application specific logic (ASL) 109 may make use of a data structure to track game-piece inventory, placement, points accrued and properties owned, among other things.
- ASL may be one of several processes operating on a CPU of the server. Changes may be such that a visual indication should be sent to one or more of the players to indicate game or conversation progress.
- application visualization 111 may provide the needed formatting of the changed conditions for each of the affected players. Such formatting may be in the form of XML, HTML, WML or raw text such that output of application visualization 111 is formatted data.
- Application visualization 111 presents formatted data to multi-modal synchronization 113.
- Multi-modal synch ronizationl 13 checks the data structure or queue 103 for any sound data associated with the formatted data.
- the sound data associated with the formatted data will be in the last SNAC received, however, a player, who operates a client, may have designated a default sound data to be associated with one or more types of moves. In the latter case, a sound data could be repetitively selected from every instance where a player plays a card on a game surface in a card game application.
- a SNAC may have no sound data stored in the data structure or queue 103, and so no voice data is retrieved by sound byte selection 115. Sound byte selection 115 may be a collection of pointers, one for each client that has joined the conversation or game. The queue may be arranged so that SNACs are in order for oldest to youngest.
- a 'next' position in the queue 115 is a position'that is younger and more recent in time than the current position.
- the fact that there is no sound data associated with an application data as modified by ASL is transmitted to multi-modal synchronization 113.
- a player, who is making a request for a SNAC, may have selected not to receive the sound portion. If that is the case, the multi-modal synchronization may be set to ignore the sound byte selection 115 and transmit only formatted data.
- a number of rules may be set up controlling whether sound data should be ignored or modified. Such rules operating on the multi-modal synchronization 113 effectively filter a SNAC stored at the server 100.
- One example of an application that could be supported by the embodiment is an application of a four player card game.
- Each player operates a client device, which may be a wireless device.
- the data structure or queue 103 of fig. 1 illustrates an example of game setup and play. The queue is filled from top to bottom as time progresses. A sound byte for player S1 121 is made first. Some modest pleasantries occur by player S2 122, S1 123 and S4 124, none accompanied by application data. Other SNACs may be stored during this prelude stage 120, such as joining the conversation, or designating a player to go first, which need not have a sound byte component.
- a game play phase 130 proceeds after prelude 120.
- Player, S3, issues a SNAC bearing application data 133.
- the application data is also routed to application specific logic 109 and processed.
- Application specific logic 109 may operate as a kind of data filter - keeping some cards hidden from some players - by adjusting the application data according to the rules of a conversation, such as, in this case, a game.
- player S4 makes a move 134, which includes application data. Similar processing occurs.
- Player S3 follows with a simple comment at SNAC 135. Such a comment may be selected by sound byte selection 115, and processed by multi- modal synchronization 113 to be dispatched as a SNAC without application data.
- Player S1 moves 151.
- Player S2 moves 152.
- Player S2 perhaps after a moment of thought, makes a follow-up SNAC, 155.
- the embodiment may interact with a digital bearer network 160, such as one provided by a cellular carrier, e.g. Global System for Mobiles (GSM), Cellular Packet Data Protocol (CPDP) provider, an internet service provider or a combination thereof.
- GSM Global System for Mobiles
- CPDP Cellular Packet Data Protocol
- the digital bearer network 160 may support a non-real-time traffic class, wherein preference is given to packets marked for real-time routing.
- a non-real-time traffic class is the traffic supported by Short Text Messaging (SMS) on a GSM network, as compared to traffic carried on a channel of a full duplex voice communication on the GSM network.
- SMS Short Text Messaging
- any SMS traffic routed through the transceiver is queued.
- the transport layer that carries a SNAC may prioritize the SNAC traffic as low priority traffic, which may be transmitted only when no full duplex voice is contending for the same radio resource, e.g. a frequency.
- a non-real-time delivery of a SNAC is suitable. Tolerance of delay between interactions is a function of the application environment, however, it is known that data services of a digital cellular telephone network compete with the real-time voice services, and so delays may be sufficiently low during off-peak real-time voice use. Fortuitously, the interest by users in entertainment use rises during the after-hours period from 6PM to 12PM on most cellular networks, which avoids the time of peak usage of full duplex voice-traffic during business hours.
- Fig. 2 shows an example of how a SNAC record might appear, either at the server, or on the client device.
- a sequence number 201 may provide an indication of the order the SNAC arrived in a conversation or game. The sequence number may be used as an index into the SNAC queue at the server.
- a request from a client may specify the sequence number for purposes of requesting SNACs in a non-linear order. Alternatively, a request from a client may indicate a relative sequence number, i.e. indicating that the requested SNAC is one more than the one previously sent to the client.
- Command 203 may be a command of a client, such as to only send a SNAC; send and request next SNAC; or a request to filter SNACs sent to the client.
- Timestamp 205 may be a time that the SNAC was sent. Timestamp 205 may include the time that a SNAC is received at either a client device or a server device. The timestamp 205 may serve as a guide to determine which SNAC is older and which SNAC is younger in the queue.
- ClientlD 207 may be a unique identifier of the client that is the source for the SNAC. It can operate as a key upon which a process filters SNACs.
- GrouplD 209 is a unique identifier for the instance of the conversation or game that the SNAC is relates to. Note, that for a given application, e.g. poker, there may be multiple games in progress on a server.
- ApplD 211 is an identifier of which application the SNAC relates to.
- An alternative embodiment of the SNAC could combine grouplD and applD into a single field.
- Applen 213 may be an indicator of the size of the following field, App Data 215.
- App data 215 may be a non-voice semantic command that is specific to the application. If the application were one of playing chess, the app data might be "pawn, to queen's rook 4", or a binary representation of such a move.
- SBLen 217 may be an indicator of the size of the following field, Sound Byte Data 219.
- Sound byte data 219 may be voice, or other audio input that is compressed according to a codec, which may be a standard codec. A SNAC having no associated sound data, would have a SBLen 217 of zero.
- a SNAC that includes voice or other audio data is called a sound byte (SB).
- a SNAC that lacks voice or audio data is called a data only SNAC (DOS).
- Fig. 3 shows a communication diagram of the creation of a conversation or game.
- the players operate through four clients: client 1 301 , client 2 302, client 3 303, and client 4 304.
- the server 309 operates to modify SNACs, in some cases to reflect game progress by providing new information as app data, and in other cases to also insert selected sound byte data.
- the server 309 may filter SNACs according to previous instructions of a client, wherein those instructions may be to mute a game-player that is disagreeable to the client, or to apply distortion or other sound effects on a sound byte.
- a conversation may be a game. Game players may logon or otherwise select the electronic address of a server, which may have a WAP interface.
- client 2 302 issues a command in a SNAC which includes the command to "create or join", which may be represented by a bit pattern, or a toggled bit in a position of significance.
- the SNAC may be created with attendant voice.
- the choice of whether to send voice may be controlled using a user interface at the client.
- Server 309 receives the "create or join" command 311 and sends an acknowledgement 313 back to client 2 302.
- the acknowledgement 313 may include an indication of whether the client has any special privileges, i.e. to moderate communications of the group.
- acknowledgement 313 may include current status information of the group. Coordination of the start of a conversation or game may take place by more conventional means, such as over the telephone, by email, or through instant messaging. Such applications may be integrated into a client device with an embodiment of the invention.
- Client 2 302 sends a SNAC including a command to "modify group parameters" 315, which includes a timeout value setting.
- the timeout may operate as the time duration that all commands sent to the group will remain in force. I.e. a command may operate to prospectively operate on any next SNAC to be delivered to the server 309 relating to the conversation. If a timer indicates that the timeout period has expired after the timestamp of the SNAC bearing the command, then the command is no longer in force.
- Fig. 4 shows an example of progress of a conversation or game.
- the client 2 402 records voice or other audio data into a SNAC.
- a user interface which may include a button
- the client 2 performs the SEND 411 operation, of the SNAC, which may include transmitting the SNAC over a wireless carrier to a server 409.
- Client 1 performs similar steps to make a second SNAC, which is sent to server 409 using the SEND 413 operation.
- Client 1 is the source client device for the second SNAC.
- Client 3 403 makes a request 415, which may be a packet dispatched wirelessly from the client upon actuation of an input of a user interface.
- Client 3 is the requesting client device for the request 415, and any SNAC provided by the server 409 in response thereto.
- the request 415 is directed to the server 409.
- the server 409 has a pointer or other reference to a SNAC associated with client 3403. Since, in this case, the client has not requested any SNACs until now, the pointer refers to the SNAC that is oldest in time in the data structure of the server.
- Server 409 looks up the SNAC, and does a SEND 417 of the SNAC1. The server 409 may advance the pointer associated with client 3 along the queue to the next SNAC in the data structure, if one exists.
- Client 4 404 makes a REQUEST 419 in a similar manner.
- the pointer associated with client 4 points to SNAC1 , so the server 409 performs a SEND 421 operation on the SNAC1. Notice that this is the same SNAC that was sent by the SEND 417 that was responsive to client 3 403.
- a subsequent REQUEST 423 from client 4 404 generates a SEND 425 of SNAC2 in return, reflecting the new position of the pointer associated with client 4 404.
- Client 1 401 makes a send with request, SENDwR 427.
- the SENDwR has dual functionality: it commands the client to send a SNAC over a wireless carrier, and it commands the server 409 to reply with a SNAC as soon as a SNAC is available using the pointer associated with the client. Since client 1 401 has obtained no SNACs yet, server 409 has a pointer to SNAC1 associated with client 1 401. Server 409 performs the SEND operation 429 to send SNAC1 to client 1 401.
- Client 1 401 is the source client device for the SNAC carries the SENDwR 427 command.
- Client 1 401 is the requesting client device for any SNAC referred to at the server by a pointer associated with client 1 401.
- Client 4 404 continues with a SENDwR 431 , thereby delivering SNAC4 for storage at the server 409 in the server SNAC data structure.
- Server 409 replies by sending the SNAC that the pointer associated with client 4 points to, SNAC3.
- the server advances the pointer associated with client 4, but not to SNAC4, since the client 4404 is well aware of its contents.
- the server may have a sound byte selection pointer point to null, to indicate that the server 409 is awaiting a fresh SNAC, not sourced from client 4 404.
- a subsequent REQUEST 435 by client 4404 causes a countdown of time to be initiated with respect to client 4 at the server 409.
- a SNAC from any other client appears in the data structure of server 409, before expiration of the timer, then the REQUEST 435 is fulfilled by the server 409 performing SEND on the SNAC.
- Fig. 4 illustrates the occurrence of the timer expiring, according to the timeout value previously set.
- a negative acknowledgement (NAK) 437 may be transmitted from server 409 to client 4 404 to indicate this has occurred.
- NAK negative acknowledgement
- server 409 delivers SNACs to vicarious clients, i.e. clients that, in relation to the SNAC, are not the source of the SNAC.
- the server 409 filters out SNACs from the SNAC queue so that with respect to sending SNACs to a first client, only SNACs originating from other clients are transmitted to the first client.
- client 2 402 makes a REQUEST 439.
- the server initiated a pointer associated with client 2 when SNAC2 was received.
- a pointer associated with a client may not refer to a SNAC that was received from the client. This leads to greater efficiency in utilization of the common media of the wireless spectrum, or the common media of a wired WAN or other wired network bandwidth.
- Server 409 does a SEND operation 441 to transmit SNAC2 to client 2 403.
- Fig. 5 shows the operation of a client according to an embodiment of the invention.
- the client 500 may be a wireless device having a CPU and local memory.
- the client may have a user input device 501 through which sound bytes may be recorded.
- the input device 501 may include a microphone.
- a keypad may also be provided as part of the input device for input of application data.
- Speaker, or other sound transducer 503, provides sound output, on, for example, received SNACs.
- Speaker 503 may also provide a playback facility for stored voice data.
- Visual rendering 507 may be a display capable of providing visual indications. At its most basic level, visual rendering may be LEDs that indicate the application data. Alternatively, LCDs capable of handling graphic images and icons may be used as visual rendering 507.
- Receipt of a SNAC may be received by a radio frequency transceiver 518 also known as a wireless interface.
- the transceiver 518 may receive and transmit packets encoded on a wireless carrier to a WAP gateway 519.
- the transceiver provides baseband data to a WAP stack 517 within the client.
- WAP stack 517 provides transport layer support to the filtering and application functions, which may include packet assembly and disassembly.
- SNAC Protocol 515 may be a program that operates as a state machine to format SNAC packets based on user-made commands.
- SNAC Protocol 515 may also handle the queuing of SNACs, which may include embedded commands, to the WAP stack and from the WAP stack.
- Filtering 513 is programmable by the user of the client device 500 to reduce some of the content of incoming SNACs.
- a user may desire that sound bytes are not played, or otherwise truncated, and thus program the filter 513 accordingly. This might be helpful if another player has started to transmit objectionable voice or noise.
- the filter 513 may be programmable to exclude playback of audio portions of SNACs that relate to questions, as may occur, e.g. in an application supporting a lecture given by a teacher.
- Application 509 is a program selected by the user of the client 500 to entertain or instruct.
- Application 509 must be compatible to the ALS 109 of Fig. 1 , i.e., application 509 must have a common set of rules for display, game-play, scoring, to name a few.
- Application runs on a CPU local to client 500, and may provide for localized feedback to input by a user by controlling the visual rendering 507.
- Application 509 may be set to quickly pass the audio portion of sound bytes to the sound rendering 505, or to queue a sound byte in the event that one is already being played by the sound rendering 505. Sound rendering is paused when a sound byte is being recorded for transmittal from the client.
- the application data may be similarly paused from being presented until the sound data associated therewith is presented.
- the Wireless Application Environment (WAE) 511 provides the language application environment for execution.
- the application may be steps of a program written for interpretation by WAE into machine instructions native to the CPU of the client.
- the program may be written in Java or wireless mark-up language (WML).
- Fig. 6 shows the state machine implementation of the SNAC protocol on the client.
- the initial state is IDLE 601.
- an initial command of "Create or Join” is a send 607 command, which places the client into a SENDING state 609. Completion of the send returns the client to a loop between COMMAND INTERPRET 605 and IDLE 601.
- a command that is a "send with request” (SENDwReq) causes transition to the REQUEST 615. Transitions from REQUEST 615 may be a response from the server 619 or a timeout 621 of any previously set or default timeout period.
- client When the server responds, the client shifts to a RECEIVING state 625.
- client may enter a loop between COMMAND INTERPRET 605 and IDLE 601.
- the occurrence of a request 629 command transitions the client from COMMAND INTERPRET 605 to REQUEST 615.
- the application process may await a signal from the client protocol state machine that occurs when a complete SNAC is received 627. At that moment, the application may retrieve from storage, the audio portion of a received SB and the data portion of the SB, and provide the data portion to the visual rendering application and the audio portion to the sound rendering application nearly simultaneously. In so doing, the client synergistically depicts progress in the conversation or game through nearly simultaneous changes in a display and sound output.
- the client embodiments may operate within a number of different packages, e.g., a mobile phone, pager, or electronic organizer.
- the server may support client programmable filters, wherein the activity of selecting out or censoring of SNACs occurs at the server side, rather than the client. Such filtering naturally would be responsive to the commands of a client.
- the underlying wireless channel that may carry a SNAC as a bearer service may be one based on frequency division multiple access; time division multiple access or code division multiple access.
- a stream of packets that carry a SNAC may first be carried by a first wireless channel, and then changed to second wireless channel during the wireless transmission of the stream.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2001271514A AU2001271514A1 (en) | 2000-06-30 | 2001-06-27 | Method and apparatus to synchronize audio and visual application data presentation |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US60771800A | 2000-06-30 | 2000-06-30 | |
US09/607,718 | 2000-06-30 |
Publications (3)
Publication Number | Publication Date |
---|---|
WO2002003645A2 true WO2002003645A2 (en) | 2002-01-10 |
WO2002003645A3 WO2002003645A3 (en) | 2002-12-12 |
WO2002003645A9 WO2002003645A9 (en) | 2003-03-06 |
Family
ID=24433416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/020411 WO2002003645A2 (en) | 2000-06-30 | 2001-06-27 | Method and apparatus to synchronize audio and visual application data presentation |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU2001271514A1 (en) |
WO (1) | WO2002003645A2 (en) |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1740279A2 (en) * | 2004-02-17 | 2007-01-10 | International Business Machines Corporation | Sip based voip multiplayer network games |
CN103508322A (en) * | 2012-06-21 | 2014-01-15 | 宝山钢铁股份有限公司 | Safety prompt voice comprehensive device for bridge type port machine |
US10099140B2 (en) | 2015-10-08 | 2018-10-16 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
US10118099B2 (en) | 2014-12-16 | 2018-11-06 | Activision Publishing, Inc. | System and method for transparently styling non-player characters in a multiplayer video game |
US10137376B2 (en) | 2012-12-31 | 2018-11-27 | Activision Publishing, Inc. | System and method for creating and streaming augmented game sessions |
US10179289B2 (en) | 2016-06-21 | 2019-01-15 | Activision Publishing, Inc. | System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching |
US10213682B2 (en) | 2015-06-15 | 2019-02-26 | Activision Publishing, Inc. | System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game |
US10226703B2 (en) | 2016-04-01 | 2019-03-12 | Activision Publishing, Inc. | System and method of generating and providing interactive annotation items based on triggering events in a video game |
US10232272B2 (en) | 2015-10-21 | 2019-03-19 | Activision Publishing, Inc. | System and method for replaying video game streams |
US10245509B2 (en) | 2015-10-21 | 2019-04-02 | Activision Publishing, Inc. | System and method of inferring user interest in different aspects of video game streams |
US10284454B2 (en) | 2007-11-30 | 2019-05-07 | Activision Publishing, Inc. | Automatic increasing of capacity of a virtual space in a virtual world |
US10286314B2 (en) | 2015-05-14 | 2019-05-14 | Activision Publishing, Inc. | System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session |
US10286326B2 (en) | 2014-07-03 | 2019-05-14 | Activision Publishing, Inc. | Soft reservation system and method for multiplayer video games |
US10315113B2 (en) | 2015-05-14 | 2019-06-11 | Activision Publishing, Inc. | System and method for simulating gameplay of nonplayer characters distributed across networked end user devices |
US10376781B2 (en) | 2015-10-21 | 2019-08-13 | Activision Publishing, Inc. | System and method of generating and distributing video game streams |
US10376793B2 (en) | 2010-02-18 | 2019-08-13 | Activision Publishing, Inc. | Videogame system and method that enables characters to earn virtual fans by completing secondary objectives |
US10421019B2 (en) | 2010-05-12 | 2019-09-24 | Activision Publishing, Inc. | System and method for enabling players to participate in asynchronous, competitive challenges |
US10471348B2 (en) | 2015-07-24 | 2019-11-12 | Activision Publishing, Inc. | System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks |
US10500498B2 (en) | 2016-11-29 | 2019-12-10 | Activision Publishing, Inc. | System and method for optimizing virtual games |
US10561945B2 (en) | 2017-09-27 | 2020-02-18 | Activision Publishing, Inc. | Methods and systems for incentivizing team cooperation in multiplayer gaming environments |
US10573065B2 (en) | 2016-07-29 | 2020-02-25 | Activision Publishing, Inc. | Systems and methods for automating the personalization of blendshape rigs based on performance capture data |
US10627983B2 (en) | 2007-12-24 | 2020-04-21 | Activision Publishing, Inc. | Generating data for managing encounters in a virtual world environment |
US10650539B2 (en) | 2016-12-06 | 2020-05-12 | Activision Publishing, Inc. | Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional |
US10765948B2 (en) | 2017-12-22 | 2020-09-08 | Activision Publishing, Inc. | Video game content aggregation, normalization, and publication systems and methods |
US10974150B2 (en) | 2017-09-27 | 2021-04-13 | Activision Publishing, Inc. | Methods and systems for improved content customization in multiplayer gaming environments |
US10981069B2 (en) | 2008-03-07 | 2021-04-20 | Activision Publishing, Inc. | Methods and systems for determining the authenticity of copied objects in a virtual environment |
US11040286B2 (en) | 2017-09-27 | 2021-06-22 | Activision Publishing, Inc. | Methods and systems for improved content generation in multiplayer gaming environments |
US11097193B2 (en) | 2019-09-11 | 2021-08-24 | Activision Publishing, Inc. | Methods and systems for increasing player engagement in multiplayer gaming environments |
US11185784B2 (en) | 2015-10-08 | 2021-11-30 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
US11351466B2 (en) | 2014-12-05 | 2022-06-07 | Activision Publishing, Ing. | System and method for customizing a replay of one or more game events in a video game |
US11351459B2 (en) | 2020-08-18 | 2022-06-07 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values |
US11524234B2 (en) | 2020-08-18 | 2022-12-13 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically modified fields of view |
US11679330B2 (en) | 2018-12-18 | 2023-06-20 | Activision Publishing, Inc. | Systems and methods for generating improved non-player characters |
US11712627B2 (en) | 2019-11-08 | 2023-08-01 | Activision Publishing, Inc. | System and method for providing conditional access to virtual gaming items |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995010911A1 (en) * | 1993-10-12 | 1995-04-20 | Intel Corporation | Method and system for multicasting related data streams on a computer network |
US5878220A (en) * | 1994-11-21 | 1999-03-02 | Oracle Corporation | Method and apparatus for storing and transferring data on a network |
WO1999037057A2 (en) * | 1998-01-15 | 1999-07-22 | Apple Computer, Inc. | Method and apparatus for media data transmission |
-
2001
- 2001-06-27 AU AU2001271514A patent/AU2001271514A1/en not_active Abandoned
- 2001-06-27 WO PCT/US2001/020411 patent/WO2002003645A2/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995010911A1 (en) * | 1993-10-12 | 1995-04-20 | Intel Corporation | Method and system for multicasting related data streams on a computer network |
US5878220A (en) * | 1994-11-21 | 1999-03-02 | Oracle Corporation | Method and apparatus for storing and transferring data on a network |
WO1999037057A2 (en) * | 1998-01-15 | 1999-07-22 | Apple Computer, Inc. | Method and apparatus for media data transmission |
Cited By (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1740279A4 (en) * | 2004-02-17 | 2010-08-18 | Ibm | Sip based voip multiplayer network games |
US7985138B2 (en) | 2004-02-17 | 2011-07-26 | International Business Machines Corporation | SIP based VoIP multiplayer network games |
US8070601B2 (en) | 2004-02-17 | 2011-12-06 | International Business Machines Corporation | SIP based VoIP multiplayer network games |
EP1740279A2 (en) * | 2004-02-17 | 2007-01-10 | International Business Machines Corporation | Sip based voip multiplayer network games |
US11972086B2 (en) | 2007-11-30 | 2024-04-30 | Activision Publishing, Inc. | Automatic increasing of capacity of a virtual space in a virtual world |
US10284454B2 (en) | 2007-11-30 | 2019-05-07 | Activision Publishing, Inc. | Automatic increasing of capacity of a virtual space in a virtual world |
US10627983B2 (en) | 2007-12-24 | 2020-04-21 | Activision Publishing, Inc. | Generating data for managing encounters in a virtual world environment |
US10981069B2 (en) | 2008-03-07 | 2021-04-20 | Activision Publishing, Inc. | Methods and systems for determining the authenticity of copied objects in a virtual environment |
US11957984B2 (en) | 2008-03-07 | 2024-04-16 | Activision Publishing, Inc. | Methods and systems for determining the authenticity of modified objects in a virtual environment |
US10376793B2 (en) | 2010-02-18 | 2019-08-13 | Activision Publishing, Inc. | Videogame system and method that enables characters to earn virtual fans by completing secondary objectives |
US10421019B2 (en) | 2010-05-12 | 2019-09-24 | Activision Publishing, Inc. | System and method for enabling players to participate in asynchronous, competitive challenges |
CN103508322A (en) * | 2012-06-21 | 2014-01-15 | 宝山钢铁股份有限公司 | Safety prompt voice comprehensive device for bridge type port machine |
CN103508322B (en) * | 2012-06-21 | 2015-04-01 | 宝山钢铁股份有限公司 | Safety prompt voice comprehensive device for bridge type port machine |
US10905963B2 (en) | 2012-12-31 | 2021-02-02 | Activision Publishing, Inc. | System and method for creating and streaming augmented game sessions |
US10137376B2 (en) | 2012-12-31 | 2018-11-27 | Activision Publishing, Inc. | System and method for creating and streaming augmented game sessions |
US12201912B2 (en) | 2012-12-31 | 2025-01-21 | Activision Publishing, Inc. | System and method for creating and streaming augmented game sessions |
US11446582B2 (en) | 2012-12-31 | 2022-09-20 | Activision Publishing, Inc. | System and method for streaming game sessions to third party gaming consoles |
US10286326B2 (en) | 2014-07-03 | 2019-05-14 | Activision Publishing, Inc. | Soft reservation system and method for multiplayer video games |
US10322351B2 (en) | 2014-07-03 | 2019-06-18 | Activision Publishing, Inc. | Matchmaking system and method for multiplayer video games |
US10376792B2 (en) | 2014-07-03 | 2019-08-13 | Activision Publishing, Inc. | Group composition matchmaking system and method for multiplayer video games |
US10857468B2 (en) | 2014-07-03 | 2020-12-08 | Activision Publishing, Inc. | Systems and methods for dynamically weighing match variables to better tune player matches |
US11351466B2 (en) | 2014-12-05 | 2022-06-07 | Activision Publishing, Ing. | System and method for customizing a replay of one or more game events in a video game |
US12059627B2 (en) | 2014-12-05 | 2024-08-13 | Activision Publishing, Inc. | System and method for customizing a replay of one or more game events in a video game |
US10118099B2 (en) | 2014-12-16 | 2018-11-06 | Activision Publishing, Inc. | System and method for transparently styling non-player characters in a multiplayer video game |
US10668381B2 (en) | 2014-12-16 | 2020-06-02 | Activision Publishing, Inc. | System and method for transparently styling non-player characters in a multiplayer video game |
US11420119B2 (en) | 2015-05-14 | 2022-08-23 | Activision Publishing, Inc. | Systems and methods for initiating conversion between bounded gameplay sessions and unbounded gameplay sessions |
US11896905B2 (en) | 2015-05-14 | 2024-02-13 | Activision Publishing, Inc. | Methods and systems for continuing to execute a simulation after processing resources go offline |
US10315113B2 (en) | 2015-05-14 | 2019-06-11 | Activision Publishing, Inc. | System and method for simulating gameplay of nonplayer characters distributed across networked end user devices |
US10286314B2 (en) | 2015-05-14 | 2019-05-14 | Activision Publishing, Inc. | System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session |
US11524237B2 (en) | 2015-05-14 | 2022-12-13 | Activision Publishing, Inc. | Systems and methods for distributing the generation of nonplayer characters across networked end user devices for use in simulated NPC gameplay sessions |
US10213682B2 (en) | 2015-06-15 | 2019-02-26 | Activision Publishing, Inc. | System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game |
US10668367B2 (en) | 2015-06-15 | 2020-06-02 | Activision Publishing, Inc. | System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game |
US10835818B2 (en) | 2015-07-24 | 2020-11-17 | Activision Publishing, Inc. | Systems and methods for customizing weapons and sharing customized weapons via social networks |
US10471348B2 (en) | 2015-07-24 | 2019-11-12 | Activision Publishing, Inc. | System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks |
US10099140B2 (en) | 2015-10-08 | 2018-10-16 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
US11185784B2 (en) | 2015-10-08 | 2021-11-30 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
US10376781B2 (en) | 2015-10-21 | 2019-08-13 | Activision Publishing, Inc. | System and method of generating and distributing video game streams |
US11310346B2 (en) | 2015-10-21 | 2022-04-19 | Activision Publishing, Inc. | System and method of generating and distributing video game streams |
US10232272B2 (en) | 2015-10-21 | 2019-03-19 | Activision Publishing, Inc. | System and method for replaying video game streams |
US10245509B2 (en) | 2015-10-21 | 2019-04-02 | Activision Publishing, Inc. | System and method of inferring user interest in different aspects of video game streams |
US11679333B2 (en) | 2015-10-21 | 2023-06-20 | Activision Publishing, Inc. | Methods and systems for generating a video game stream based on an obtained game log |
US10898813B2 (en) | 2015-10-21 | 2021-01-26 | Activision Publishing, Inc. | Methods and systems for generating and providing virtual objects and/or playable recreations of gameplay |
US12161940B2 (en) | 2015-10-21 | 2024-12-10 | Activision Publishing, Inc. | Methods and systems for enabling users to experience previously hidden information during a playable recreation of a video game session |
US10300390B2 (en) | 2016-04-01 | 2019-05-28 | Activision Publishing, Inc. | System and method of automatically annotating gameplay of a video game based on triggering events |
US11439909B2 (en) | 2016-04-01 | 2022-09-13 | Activision Publishing, Inc. | Systems and methods of generating and sharing social messages based on triggering events in a video game |
US10226703B2 (en) | 2016-04-01 | 2019-03-12 | Activision Publishing, Inc. | System and method of generating and providing interactive annotation items based on triggering events in a video game |
US12023593B2 (en) | 2016-04-01 | 2024-07-02 | Activision Publishing, Inc. | System and method of generating and providing interactive annotation items based on triggering events in a video game |
US10179289B2 (en) | 2016-06-21 | 2019-01-15 | Activision Publishing, Inc. | System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching |
US10586380B2 (en) | 2016-07-29 | 2020-03-10 | Activision Publishing, Inc. | Systems and methods for automating the animation of blendshape rigs |
US11189084B2 (en) | 2016-07-29 | 2021-11-30 | Activision Publishing, Inc. | Systems and methods for executing improved iterative optimization processes to personify blendshape rigs |
US10573065B2 (en) | 2016-07-29 | 2020-02-25 | Activision Publishing, Inc. | Systems and methods for automating the personalization of blendshape rigs based on performance capture data |
US10500498B2 (en) | 2016-11-29 | 2019-12-10 | Activision Publishing, Inc. | System and method for optimizing virtual games |
US10987588B2 (en) | 2016-11-29 | 2021-04-27 | Activision Publishing, Inc. | System and method for optimizing virtual games |
US11423556B2 (en) | 2016-12-06 | 2022-08-23 | Activision Publishing, Inc. | Methods and systems to modify two dimensional facial images in a video to generate, in real-time, facial images that appear three dimensional |
US10650539B2 (en) | 2016-12-06 | 2020-05-12 | Activision Publishing, Inc. | Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional |
US10991110B2 (en) | 2016-12-06 | 2021-04-27 | Activision Publishing, Inc. | Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional |
US10561945B2 (en) | 2017-09-27 | 2020-02-18 | Activision Publishing, Inc. | Methods and systems for incentivizing team cooperation in multiplayer gaming environments |
US10974150B2 (en) | 2017-09-27 | 2021-04-13 | Activision Publishing, Inc. | Methods and systems for improved content customization in multiplayer gaming environments |
US11040286B2 (en) | 2017-09-27 | 2021-06-22 | Activision Publishing, Inc. | Methods and systems for improved content generation in multiplayer gaming environments |
US11986734B2 (en) | 2017-12-22 | 2024-05-21 | Activision Publishing, Inc. | Video game content aggregation, normalization, and publication systems and methods |
US11413536B2 (en) | 2017-12-22 | 2022-08-16 | Activision Publishing, Inc. | Systems and methods for managing virtual items across multiple video game environments |
US10765948B2 (en) | 2017-12-22 | 2020-09-08 | Activision Publishing, Inc. | Video game content aggregation, normalization, and publication systems and methods |
US10864443B2 (en) | 2017-12-22 | 2020-12-15 | Activision Publishing, Inc. | Video game content aggregation, normalization, and publication systems and methods |
US11679330B2 (en) | 2018-12-18 | 2023-06-20 | Activision Publishing, Inc. | Systems and methods for generating improved non-player characters |
US11097193B2 (en) | 2019-09-11 | 2021-08-24 | Activision Publishing, Inc. | Methods and systems for increasing player engagement in multiplayer gaming environments |
US11712627B2 (en) | 2019-11-08 | 2023-08-01 | Activision Publishing, Inc. | System and method for providing conditional access to virtual gaming items |
US11524234B2 (en) | 2020-08-18 | 2022-12-13 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically modified fields of view |
US11351459B2 (en) | 2020-08-18 | 2022-06-07 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values |
Also Published As
Publication number | Publication date |
---|---|
WO2002003645A3 (en) | 2002-12-12 |
AU2001271514A1 (en) | 2002-01-14 |
WO2002003645A9 (en) | 2003-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2002003645A2 (en) | Method and apparatus to synchronize audio and visual application data presentation | |
EP2082616B1 (en) | System and method for regulating overlapping media messages | |
US10335691B2 (en) | System and method for managing audio and video channels for video game players and spectators | |
US10987597B2 (en) | System and method for managing audio and video channels for video game players and spectators | |
US7090582B2 (en) | Use of multiple player real-time voice communications on a gaming device | |
US8185143B1 (en) | Selectively buffering voice data at a server during a voice communication session | |
CN101064890B (en) | Mobile terminal and method for transmitting voice message | |
US5889764A (en) | Low-latency multi-party audio chat | |
US20050181872A1 (en) | SIP based VoIP multiplayer network games | |
CN107911361A (en) | Support voice management method, apparatus, terminal device and the storage medium of more sessions | |
US7764973B2 (en) | Controlling playback of recorded media in a push-to-talk communication environment | |
CN100499843C (en) | Method for processing PTT audo flow for WAP network | |
Schmandt et al. | Mediated voice communication via mobile IP | |
JP2006020321A (en) | Information-providing type oscillation mode | |
US7146152B2 (en) | Apparatus for using a modified queue to facilitate group communications | |
CN106960677A (en) | A kind of synchronous playing system | |
WO2007099558A2 (en) | A method and system for message-based multi-user conference through wireless communication devices | |
WO2020170946A1 (en) | Voice output control device, voice output control system, voice output control method and program | |
CN118113249A (en) | A method for processing audio data, a related device, an equipment and a storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
COP | Corrected version of pamphlet |
Free format text: PAGES 1/6-6/6, DRAWINGS, REPLACED BY NEW PAGES 1/4-4/4; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase |
Ref country code: JP |