US20080182665A1 - Video game to web site upload utility - Google Patents
Video game to web site upload utility Download PDFInfo
- Publication number
- US20080182665A1 US20080182665A1 US11/699,673 US69967307A US2008182665A1 US 20080182665 A1 US20080182665 A1 US 20080182665A1 US 69967307 A US69967307 A US 69967307A US 2008182665 A1 US2008182665 A1 US 2008182665A1
- Authority
- US
- United States
- Prior art keywords
- media
- user
- game
- computer
- visual entertainment
- 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
Links
Images
Classifications
-
- 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/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- A63F13/12—
-
- 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
-
- 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/70—Game security or game management aspects
- A63F13/71—Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
-
- 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/70—Game security or game management aspects
- A63F13/73—Authorising game programs or game devices, e.g. checking authenticity
-
- 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/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
-
- 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/552—Details of game data or player data management for downloading to client devices, e.g. using OS version, hardware or software profile of the client device
Definitions
- Interactive audio-visual entertainment devices such as video game consoles and the video games themselves, are designed to provide entertainment by engaging one or more users in an interactive experience having one or more goals.
- video games based on sports engage users by providing an interactive experience in which the user attempts to win within the context of the sport on which the game is based.
- interactive audio-visual entertainment devices traditionally require the user to improve various skills, thereby engaging the user throughout the time that the user attempts to improve their skills.
- Increasingly skilled users are rewarded with aspects of the interactive entertainment that are generally not provided to less skilled users.
- video games based on combat situations can provide skilled users the opportunity to use more potent weapons and travel to more exotic destinations.
- interactive audio-visual entertainment device offer an increasingly rich audio visual experience.
- many video games feature high resolution graphics and multi-channel audio, both of which are supported by modern video game consoles. Consequently, interactive audio-visual entertainment may be entertaining, not only to those interacting with it, but also to spectators.
- Spectators in addition to enjoying a rich audio visual experience, often seek to learn by merely observing others' interactions. For example, some video games enable users to receive special privileges once a specific series of actions are performed in a specific manner. Users can learn of those actions by observing other users interacting with the game.
- users may seek to demonstrate their prowess by inviting others to observe either the user interacting with the game directly, or a listing of the most successful tallies accumulated by the user. For example, users interacting with a video game simulating a race can share various race times as evidence of their respective successes.
- interactive audio-visual entertainment options increase, the reasons for which one user may seek to share their experiences with others likewise increase.
- modern video games often provide advanced customization options that are, in some respects, tangential to the purpose of the game. Nevertheless, such customization provides users with yet another reason to share their gaming experiences.
- Audio aspects can be captured into an audio file encoded using standard audio encoding schemes and video can be captured into an image file encoded using standard image encoding schemes or into a movie file, again encoded using standardized mechanisms.
- Some interactive audio-visual entertainment devices provide no mechanisms by which an aspect of the interactive experience can be captured into a transportable and shareable format. For example, while some video games provide the user with the ability to capture specific elements of the game, those elements are only saved within the context of the game itself and cannot be removed from the game.
- a server program can receive raw data from a game, representing game-related media, such as media directed to presenting an aspect of the game, together with a header packet identifying the information. Subsequently, the server can parse out relevant elements from the header packet, such as information identifying the game, the user, or other relevant information. The information obtained by the server can subsequently be used to store the received game-related media in an appropriate manner, such as by storing it in a sub-location based on the game and entitling the data based on unique identifying information.
- a service can monitor specific locations for particular types of data.
- a single service can monitor specific locations for multiple types of data, including movie data, picture data or audio data.
- multiple services can monitor specific locations, with each service being directed to specific types of data, such as one service being directed to movie data, a second service to picture data and a third service to audio data.
- the service can validate the naming structure of the container file, and identify or derive further relevant information, such as identifying information.
- the service can then create an appropriate set of related data, such as thumbnails, to enable more efficient access and sharing of the game-related media. Such information can be provided to a website hosting the game-related media. To enhance security, remaining metadata that is not used can be removed.
- a website hosting game-related media can require identifying information from users seeking to access the website.
- the identifying information can be used to associate a user of the website with a user of one or more games. Consequently, the website can present the user with the game-related media that is relevant to that user, such as game-related media captured by that user, or game-related media sent to that user by another user.
- the user can further download the game-related media, which can be presented in standardized formats to enable further sharing.
- FIG. 1 is a diagram of an exemplary environment for sharing media from interactive audio-visual entertainment
- FIG. 2 is a block diagram of an exemplary computing device
- FIG. 3 is an exemplary flow chart illustrating the receipt of media from interactive audio-visual entertainment
- FIG. 4 is an exemplary flow chart illustrating the organization of media from interactive audio-visual entertainment.
- FIG. 5 is an exemplary flow chart illustrating the sharing of media from interactive audio-visual entertainment.
- Back end server computing devices can host processes that interface with existing mechanisms in interactive audio-visual entertainment, thereby enabling the export of media from that audio-visual entertainment.
- the hosted processes can comprise a server program for receiving and storing game-related media, a service process for obtaining information about the game-related media that aids in its identification and for removing unneeded metadata, and a hosting process that provides user-specific access to the game-related media.
- the techniques described herein focus on the mechanisms by which media from interactive audio-visual entertainment can be obtained, categorized, and provided to one or more users.
- One such mechanism comprises a server process that can receive data from interactive audio-visual entertainment and store the data in a predefined manner.
- Another mechanism comprises a service that retrieves the stored data and prepares it for presentation, including the generation of thumbnails, and the removal of unused, and potentially harmful metadata.
- a further mechanism comprises a hosting process that identifies users and provides user-specific data for browsing and downloading.
- This manipulation transforms the data or maintains it at locations in memory, which reconfigures or otherwise alters the operation of the computing device or peripherals in a manner well understood by those skilled in the art.
- the data structures where data is maintained are physical locations that have particular properties defined by the format of the data.
- program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types.
- the computing devices need not be limited to conventional personal computers and conventional personal electronics devices, and can include other devices capable of computation, including hand-held devices, multi-processor systems, other microprocessor based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like.
- the computing devices need not be limited to a stand-alone device, as the mechanisms may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network.
- program modules may be located in both local and remote memory storage devices.
- the exemplary environment 99 includes interactive audio-visual entertainment hardware, such as an entertainment computing device 10 , and interactive audio-visual entertainment software, such as a game 11 for use on the entertainment computing device 10 .
- the exemplary environment 99 also comprises a personal computing device 40 having a web browser 41 .
- the personal computing device 40 and the entertainment computing device 10 are co-located such that media from the entertainment computing device 10 generated by a user will be accessed by that same user on the personal computing device 40 .
- the exemplary environment 99 further comprises an upload server computing device 20 and a website host computing device 30 .
- the upload server computing device 20 hosts a server program 21 and a service 22
- the website host computing device 30 hosts a website 31 and a database 32 .
- the upload server computing device 20 and the website host computing device 30 are physically distinct computing devices as illustrated in FIG. 1 .
- the upload server computing device 20 and the website host computing device 30 can be a single computing device hosting the server program 21 , the service 22 , the website 31 and the database 32 .
- FIG. 1 refers to a website 31 , hosted by a website host computing device 30 , and a web browser 41 executing on a personal computing device 40 .
- the described mechanisms in no way require the use of either the HyperText Transfer Protocol (HTTP), nor the HyperText Markup Language (HTML).
- HTTP HyperText Transfer Protocol
- HTTP HyperText Markup Language
- the described mechanisms can be equally implemented via a File Transfer Protocol (FTP) site and any FTP client program.
- FTP File Transfer Protocol
- the described mechanisms could be implemented using Really Simple Syndication (RSS) server software and RSS readers or aggregators.
- RSS Really Simple Syndication
- a user interacting with the entertainment computing device 10 can select game-related media for upload to the upload server computing device 20 .
- the game 11 can provide users with the ability to capture still images from the game, or to capture a sequence of events as a movie.
- the game 11 could likewise provide users with the ability to record various audio aspects of the game as a sound, or otherwise capture game-related media.
- Such images, movies, sounds, or other game-related media would traditionally be stored and accessible only from within the game 11 itself.
- the game 11 could provide for a media gallery that would enable users interacting with the game to view previously captured media.
- the game 11 can be modified to upload previously captured media to another computing device, such as the upload server computing device 21 as indicated by the arrow 51 of FIG. 1 .
- Such modifications can leverage the networking abilities present in many modern games, such as games which enable users to interact with, or compete with, other users over a networked connection. Often, games which enable multiple users to interact over a network connection do so by leveraging a server computing device to facilitate the maintenance and exchange of information common to all of the users.
- a server computing device can itself act as the upload server computing device 20 , or it can redirect communications 51 to another computing device acting as the upload server computing device 20 .
- Uploaded game-related media can be received by the server program 21 running on the upload server computing device 20 .
- the server program 21 conforms to standard file transfer protocols, such as the Hyper Text Transfer Protocol (HTTP) or the File Transfer Protocol (FTP).
- HTTP Hyper Text Transfer Protocol
- FTP File Transfer Protocol
- the server program 21 can parse out relevant information that can have been included with the game-related media by the entertainment computing device or the game 11 .
- relevant information can include an identifier of the game 11 , an identifier of the user, a name the user selected for themselves within the context of the game or within the context of the server computing device used to exchange information common to all of the users (commonly referred to as a “gamer tag”), or other identifying or otherwise pertinent information.
- such information can be stored in a header, such as an HTTP header packet.
- the server program 21 can store, or otherwise persist, the received game-related media on the upload server computing device 20 or on another computing device communicationally connected to the upload server computing device.
- the game-related media is stored in a folder, or other type of storage partition, based on the game 11 that uploaded the game-related media.
- the game identifier provided with the game-related media can be associated with a common name for the game 11
- the folder into which the server program 21 stores the game-related media can be identified with the same common name of the game 11 .
- the folder into which the server program 21 stores the game-related media can be identified with the game identifier itself, without requiring the server program 21 to lookup an associated common name of the game 11 .
- the server program 21 can generate a file name for the file containing the game-related media.
- the server program 21 can generate a random identifier based, at least in part, on the identifier of the user, the user's gamer tag, or some combination thereof. The randomness of the identifier can distinguish between multiple game-related media uploaded by the same user.
- a service 22 can detect the storage of the game-related media and can further process the game related media to prepare it for sharing.
- the service 22 can continually monitor one or more storage locations on the upload server computing device 20 , or on another computing device communicationally connected to the upload server computing device 20 .
- the service 22 can first perform one or more verifications to ensure that the detected file was properly stored. For example, the service 22 can verify that the file name is properly constructed.
- the service 22 which can access the algorithm used by the server program 21 to generate the file name, can reverse that algorithm to extract information from the file name, such as the user's gamer tag or identifier.
- Information identifying the game 11 can be obtained by the service 22 from the folder in which the game-related media was stored.
- the name of the folder can be a game identifier or the common name of the game 11 , as indicated above.
- the service 22 can also prepare the game-related media for sharing, such as through a web server.
- the service 22 can create one or more appropriate thumbnails for the game-related media. For example, if the game-related media comprises images or video, the service 22 can generate a smaller, lower resolution image or a still frame image to act as a thumbnail for the game-related media. Likewise, if the game-related media comprises audio, the service 22 can generate a shorter, lower bit rate recording to act as a thumbnail for the game-related media.
- the service 22 can remove unneeded meta-data from the game-related media.
- some media files can comprise a substantial amount of meta-data, which can be used to exploit security weaknesses. Since the meta-data referenced by, or otherwise used by, the service 22 is limited, the remaining meta-data can be removed by the service 22 to enhance the security of the sharing of game-related media.
- the service 22 can transfer, via communications 52 , the game-related media to a website host computing device 30 , on which a website 31 is executing.
- the website host computing device 30 can be co-located with the upload server computing device 20 , such that the server program 21 , the service 22 and the website 31 are all being executed by the same computing device.
- the website host computing device 30 can be a distinct computing device in the manner illustrated in FIG. 1 .
- the transfer 52 of the game-related media from the service 22 to the website host computing device 30 includes the transfer of thumbnails generated by the service and any other data augmenting the game-related media data itself.
- the transfer 52 likewise includes categorizing information extracted by the service 22 , such as the identifier of the game 11 , the common name of the game, the identifier of the user, the user's gamer tag, or other information that can be used to categorize the game-related media for easier access through the website 31 .
- the website host computing device 30 upon receipt of the categorized and augmented game-related media, can store the received information into a database 32 .
- the game-related media itself can be related to the categorizing information provided by the service 22 and it can further be related to the thumbnail likewise provided by the service 22 . Consequently, the game-related media can be searched for based on any one of the categorizing information provided, including, for example, the identifier of the game 11 , the common name of the game, the identifier of the user or the gamer tag.
- the game-related media can likewise be searched for via the thumbnails provided by the service 22 .
- the website 31 can enable the user to download one or more game-related media as indicated by communication 53 .
- the website 31 can present to the user for downloading any of the game-related media stored in the database 32 .
- Such a presentation can comprise the creation of one or more web pages comprising thumbnails, identifying information, or some combination thereof.
- Such a selection can be communicated back to the website 31 in a known manner, which can reference the database 32 to obtain the game-related media selected by the user, and provide that media, via communication 53 , to the web browser 41 .
- the game-related media can be shared by the user in the same manner as any other media on the personal computing device.
- the website 31 can require users to authenticate themselves, such as by providing a user name and a password.
- the authentication information provided can identify a particular user of the game 11 . More specifically, the user name provided by the user to the website 31 can be associated with a user identifier or a gamer tag. Such as association can either be maintained by the website host computing device 30 , or on a separate computing device or system. With such an association, the website 31 can present to the authenticated user only the game-related media that is associated with that user in the database, such as via the user's identifier or gamer tag.
- the website 31 provides, to authenticated users, one or more web pages comprising thumbnails, identifying information, or some combination thereof corresponding only to game-related media captured by that user.
- the website 31 provides, to authenticated users, not only access to the game-related media captured by that user, but also to game-related media captured by other users and shared by those other users with the current user.
- the user can select one or more game-related media for download by selecting a corresponding thumbnail or other identifying information that was presented through the web browser 41 .
- Such a selection can be communicated back to the website 31 in a known manner, which can reference the database 32 to obtain the game-related media selected by the user, and provide that media, via communication 53 , to the web browser 41 .
- the game-related media is stored on the personal computing device 40 , it can be shared in the same manner as any other media on the personal computing device.
- FIG. 2 an exemplary computing device 100 is illustrated.
- the term “computing device,” as used herein, includes consumer entertainment devices, such a video game consoles, digital video recorders, and content provider interfaces such as the ubiquitous “cable box.”
- the exemplary computing device 100 can be representative of any of the computing devices shown in FIG. 1 , including the entertainment computing device 10 , the upload server computing device 20 , the website host computing device 30 , the personal computing device 40 , or any combination thereof since, as previously indicated, the computing devices of FIG. 1 do not have to be physically distinct from one another.
- the exemplary computing device 100 can include, but is not limited to, one or more central processing units (CPUs) 120 , a system memory 130 , and a system bus 121 that couples various system components including the system memory to the processing unit 120 .
- the system bus 121 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
- the computing device 100 can include graphics hardware, including, but not limited to, a graphics hardware interface 190 and a display device 191 .
- the computing device 100 also typically includes computer readable media, which can include any available media that can be accessed by computing device 100 and includes both volatile and nonvolatile media and removable and non-removable media.
- computer readable media may comprise computer storage media, communication media or combinations thereof.
- Computer storage media includes media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
- Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
- the system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132 .
- ROM read only memory
- RAM random access memory
- BIOS basic input/output system
- RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 120 .
- FIG. 2 illustrates operating system 134 , other program modules 135 , and program data 136 .
- the computing device 100 may also include other removable/non-removable, volatile/nonvolatile computer storage media.
- FIG. 2 illustrates a hard disk drive 141 that reads from or writes to nonvolatile magnetic media.
- Other removable/non-removable, volatile/nonvolatile computer storage media that can be used with the exemplary computing device include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like.
- the hard disk drive 141 is typically connected to the system bus 121 through an interface such as non-volatile memory interface 140 .
- hard disk drive 141 is illustrated as storing operating system 144 , other program modules 145 , and program data 146 . Note that these components can either be the same as or different from operating system 134 , other program modules 135 and program data 136 . Operating system 144 , other program modules 145 and program data 146 are given different numbers hereto illustrate that, at a minimum, they are different copies.
- the computing device 100 may operate in a networked environment using logical connections to one or more remote computers.
- the computing device 100 is shown in FIG. 2 to be connected to the network 90 .
- the computing device 100 is not limited to any particular network or networking protocols.
- the network connection depicted in FIGS. 1 and 2 is a general network connection 171 that can be a local area network (LAN), a wide area network (WAN) or other networks.
- the computing device 100 is connected to the general network connection 171 through a network interface or adapter 170 which is, in turn, connected to the system bus 121 .
- program modules depicted relative to the computing device 100 may be stored in the memory of one or more other computing devices that are communicatively coupled to the computing device 100 through the general network connection 171 .
- the network connections shown are exemplary and other means of establishing a communications link between computing devices may be used.
- the general network connection 171 to the network 90 can be used to communicate with one or more other computing devices that are likewise connected to the network.
- Communications 51 , 52 and 53 illustrated in FIG. 1 , are shown as proceeding directly between computing devices 10 , 20 , 30 and 40 , and bypassing network 90 , only for simplicity of illustration. Instead, more accurately, communications 51 , 52 and 53 are exchanged between the computing devices 10 , 20 , 30 and 40 through the network 90 in a manner well known to those skilled in the art.
- Communication 51 can comprise the transmission of game-related media from a game 11 to a server program 21 designed to receive such game-related media.
- Communication 52 can comprise the transmission of categorized and augmented game-related media to a website host computing device 30
- communication 53 can comprise the transmission of game-related media to the personal computing device 40 .
- FIGS. 3 , 4 and 5 illustrate flow diagrams corresponding to processes that either trigger or receive these communications.
- FIG. 3 illustrates an exemplary process performed by the server program 21 upon receipt of communication 51
- FIG. 4 illustrates an exemplary process performed by the service 22 prior to the transmission of communication 52
- FIG. 5 illustrates an exemplary process performed by the website 31 prior to the transmission 53 .
- a flow diagram 300 begins with the receipt of the game-related media at step 310 .
- the game-related media can be sent by a game 11 executing on an entertainment computing device 10 .
- the game 11 comprises mechanisms for enabling a user to capture game-related media, such as a picture, movie, audio, or other media.
- the game 11 can further comprise mechanisms for enabling the user to view previously captured game-related media within the context of the game, such as through a “gallery” generated by the game.
- network communication capability sufficient to encapsulate such previously captured game-related media can be added, either to the game 11 itself, or to the entertainment computing device 10 .
- the network communication capability can transmit one or more previously captured game-related media to the upload server computing device 20 by constructing one or more network packets comprising some or all of the game-related media.
- the transmitted game-related media can be selected by the user of the game 11 , such as through the gallery.
- the network packets include a header packet having a user data section for transmitting information about the game-related media, such as the name of the game 11 from which the game-related media was obtained, a unique identifier for the game 11 , a unique identifier for the user of the game that captured the game-related media, the user's gamer tag, or other information that can further identify the game-related media.
- information about the game-related media such as the name of the game 11 from which the game-related media was obtained, a unique identifier for the game 11 , a unique identifier for the user of the game that captured the game-related media, the user's gamer tag, or other information that can further identify the game-related media.
- Such information can be stored as a string in the header packet, with appropriate separators, such as a “#” symbol, dividing the individual elements of data.
- the above information can be stored in separate elements within the header packet or can be otherwise transmitted in an appropriate manner.
- the server program 21 When the server program 21 receives the game-related media at step 310 , it can, at step 320 , parse the header packet, separating out the individual elements of data, as delineated by the separators. As part of the parsing step 320 , the server program 21 can further encode each of the individual elements into strings, or other appropriate data structures, for subsequent processing. One aspect of such subsequent processing can be the identification of a “common” name of the game 11 , such as the name by which the game is marketed, at step 330 . If the information provided in the header packet did not already comprise the name of the game 11 , but instead comprised a unique identifier, the server program 21 can use the unique game identifier to look up the common name of the game. A correlation between game identifiers and game names can be maintained by the upload server computing device 20 , or it can be maintained by another computing device connected to the network 90 .
- Step 330 can additionally verify that the game 11 sending the game-related media is valid. For example, if the identifier provided in the header packet does not correspond to any common name, the game 11 may not be a game that is to be allowed to upload game-related media. In such a case, the server program 21 need not perform any further operations with respect to the received game-related media. In an alternative embodiment, however, the server program 21 can provide an error message back to the game 11 to provide troubleshooting information, should it be needed. In a further alternative embodiment, the server program 21 can perform additional verifications beyond game identification, such as verifying that the game-related media is encoded in an acceptable format, such as a standard image, movie, or audio format.
- an acceptable format such as a standard image, movie, or audio format.
- the server program 21 can create a random Globally Unique IDentifier (GUID) for the game-related media received at step 310 .
- GUID Globally Unique IDentifier
- the GUID can be created and subsequently combined with the user's identifier, gamer tag, or some combination thereof to create a unique combination.
- the GUID can also be combined with, or otherwise related to, the time when the game-related media was captured or the time when it was received at step 310 .
- a continually changing parameter such as a time parameter, the generated GUID can remain unique even when the same user uploads multiple game-related media from the same game within a narrow span of time.
- the server program 21 can, at step 350 , assign a name to the file comprising the combination.
- the file name can further comprise additional elements that identify the user or the game or both.
- the file comprising the game-related media can be stored in a folder by the server program at step 360 .
- the folder and the file comprising the game-related media can be stored either locally on the upload server computing device 20 , or they can stored on one or more remote computing devices connected to the network 90 .
- the folder can be named after, or otherwise associated with, the game 11 from which the game-related media was received. In one embodiment, the folder can simply have the same name as the name of the game. In an alternative embodiment, the name of the folder can include the name of the game, the game identifier or some combination therefore, while in a still further alternative embodiment, the folder name can comprise additional information as well.
- FIG. 4 a flow diagram 400 is shown representing exemplary processing performed by the service 22 of FIG. 1 .
- the processing performed by service 22 can, at step 410 , monitor selected storage locations.
- Such monitored storage locations can coincide with the storage locations in which the server program 21 stores the received game-related media and, as indicated previously, can be local to the upload server computing device 20 , or they can be located on one or more remote computing devices connected to the network 90 .
- the service 22 detects the creation of a file within the monitored storage locations, as indicated by step 420 , the service 22 can further process the game-related media and prepare it for sharing via the website 31 .
- the service 22 can verify the name of the file to ensure that it is a file that the service should be addressing, and not merely a file accidentally saved to the monitored storage location.
- the file name verification of step 430 can include extracting, from the file name, information such as the identifier of the user or the user's gamer tag. If the file is not verified at step 430 , it can be stored in an appropriate location for further review, such as by an administrator of the upload server computing device 20 .
- the service 22 can further identify or derive additional information regarding the game-related media at step 440 . More specifically, once the file name has been validated at step 430 , the service 22 can read the file from the monitored storage location and can acquire any of the metadata associated with the file.
- the service 22 can perform further processing with respect to the information obtained from the file name. For example, if the service 22 was only able to derive a user's gamer tag from the file name, the service can match the gamer tag to a user identifier using either a local or remote database associating user identifiers with the gamer tags those users selected within the context of specific games, such as game 11 .
- the service 22 can, at step 450 , create thumbnails of the game-related media.
- thumbnails comprise smaller, lower resolution media that is analogous to the game-related media.
- the service 22 can create a smaller, lower resolution version of the image at step 450 to act as a thumbnail.
- a still image can likewise act as a thumbnail if the game-related media was a video segment.
- Audio media can be likewise compressed in both duration and quality to yield a thumbnail for an audio-only game-related media.
- the service 22 can remove any of the metadata associated with the file comprising the game-related media that the service is not using or referencing.
- some media file formats can comprise a large amount of metadata that can harbor malicious code. Consequently, in one embodiment, the service 22 can remove such metadata. Any metadata that is left by the service 22 can be limited, for security reasons, to character data.
- the service 22 can, at step 470 , store the game-related media, as well as some or all of the additional information identified, derived or created by the service, in the database 32 .
- additional information can include the thumbnail, the identifier of the game 11 , the common name of the game, the identifier of the user, the gamer tag of the user, or any other relevant information, or any combination thereof.
- a flow diagram 500 illustrates exemplary processing performed by the website 31 .
- the website 31 can wait for a user at step 530 .
- the website 31 can limit users to accessing only the game-related media that was captured and uploaded by that user, or game-related media that the user has been granted permission to access.
- the website 31 can eschew such limitations, and can provide any user access to all of the game-related media stored in the database 32 . In the case of the latter, steps 540 and 550 can be skipped, and processing can proceed to step 560 , which will be described below.
- the website 31 limits access to the game-related media, it can check, at step 540 , if a user has provided identification and password. If the user has provided authenticating information, the website 31 can authenticate the user at step 550 .
- the process of authenticating a user at step 550 can comprise associating a user's gamer tag or user identifier with the identification provided at step 540 .
- Such an association can be stored locally on the website host computing device 30 , or it can be stored remotely on one or more computing devices connected to the network 90 .
- the user identification and password provided at step 540 are part of a network “passport” that the user can use to log on to additional websites.
- a “passport” can be maintained in a central location that can comprise information linking the user's passport to other relevant information about the user, including the user's name and address, billing information and, of relevance to the descriptions below, the user's gamer tag or other game-related identifying information.
- the website 31 can, as part of the process of authenticating the user at step 550 , reference the centralized passport database to determine the user's game-related identifier or gamer tag based on the information provided at step 540 .
- the website 31 can present thumbnails of the game-related media, other information identifying the game-related media, or some combination thereof, to the user. If the website 31 only allowed a user to access game-related media that the user generated, or game-related media to which the user was specifically granted access, then the game-related media that is relevant to that user will be limited. However, if the website 31 provided any user access to any game-related media, then all of the game-related media in the database 32 is relevant to any user.
- the database can be searched based on user identifiers, including a user's game-related identifier and a user's gamer tag. Consequently, in presenting the thumbnails at step 560 , the website 31 can, once it has authenticated the user at step 550 , search the database 32 for the game-related media associated with that user's gamer tag or game-related identifier. Once the relevant game-related media has been identified by the website 31 , the website can request the associated thumbnails for presentation to the user.
- the thumbnails can be presented to the user by generating one or more web pages, comprising those thumbnails, for display by the browser 41 in a manner well known to those skilled in the art.
- the website 31 can receive a notification of such a selection from the browser 41 , and can provide the requested game-related media to the browser at step 580 .
- the game-related media can be saved on the personal computing device 40 and can be shared in the same manner as any other media stored on the personal computing device. Consequently, once the website 31 has provided the selected game-related media to the browser 41 at step 580 , it an end at step 590 .
- the website 31 can continue to present the web pages, at step 560 , comprising thumbnails or other information identifying the relevant game-related media.
- the website 31 can also perform various maintenance tasks not illustrated in FIG. 5 .
- the website 31 can enable users to add additional data about the game-related media into the database 32 . Users can, thereby, attach notes to various game-related media, or the users could grant access to another user, causing the website 31 to modify the database 32 to associate the user to whom access was granted with the appropriate game-related media.
- the website 31 can periodically discard game-related media that is older than a selected threshold.
- game-related media can be identified based on a time stamp that the service 22 can add into the database 32 and associated with game-related media when the game-related media is stored at step 470 .
- the website 31 can periodically discard game-related media associated with a particular user that exceeds that user's quota.
- the website 31 can further discard game-related media when instructed by the user to do so, such as through commands entered into the web browser 41 .
- the website 31 can first verify that the user has the authority to discard the game-related media, such as if the user was the one who originally generated the game-related media.
- game-related media can be uploaded from an entertainment computing device to a server computing device, where it can be processed and ultimately presented, through an appropriate user interface, such as a web page, to one or more users who can download and share the game-related media.
- an appropriate user interface such as a web page
Abstract
A user of an interactive entertainment computing device can capture media representing aspects of the interactive entertainment. The media can be uploaded to a server that can extract appropriate information from the media, including identifiers of the user and the interactive entertainment. The media can then be presented to a user through a user interface, enabling the user to download and share the media. The presented media can be tailored to the user based on a relationship between authentication information used to access the media and a user identifier from within the context of the interactive entertainment.
Description
- Interactive audio-visual entertainment devices, such as video game consoles and the video games themselves, are designed to provide entertainment by engaging one or more users in an interactive experience having one or more goals. For example, video games based on sports engage users by providing an interactive experience in which the user attempts to win within the context of the sport on which the game is based. To provide an engaging experience, interactive audio-visual entertainment devices traditionally require the user to improve various skills, thereby engaging the user throughout the time that the user attempts to improve their skills. Increasingly skilled users are rewarded with aspects of the interactive entertainment that are generally not provided to less skilled users. For example, video games based on combat situations can provide skilled users the opportunity to use more potent weapons and travel to more exotic destinations.
- To provide a more engaging experience, interactive audio-visual entertainment device offer an increasingly rich audio visual experience. For example, many video games feature high resolution graphics and multi-channel audio, both of which are supported by modern video game consoles. Consequently, interactive audio-visual entertainment may be entertaining, not only to those interacting with it, but also to spectators. Spectators, in addition to enjoying a rich audio visual experience, often seek to learn by merely observing others' interactions. For example, some video games enable users to receive special privileges once a specific series of actions are performed in a specific manner. Users can learn of those actions by observing other users interacting with the game.
- Often, especially for competitive interactive audio-visual entertainment, such as video games that maintain a running tally, users may seek to demonstrate their prowess by inviting others to observe either the user interacting with the game directly, or a listing of the most successful tallies accumulated by the user. For example, users interacting with a video game simulating a race can share various race times as evidence of their respective successes. As interactive audio-visual entertainment options increase, the reasons for which one user may seek to share their experiences with others likewise increase. For example, modern video games often provide advanced customization options that are, in some respects, tangential to the purpose of the game. Nevertheless, such customization provides users with yet another reason to share their gaming experiences.
- Aspects of an interactive audio-visual experience are most easily shared if the user captures the aspect they want to share into a transportable and shareable format. Audio aspects can be captured into an audio file encoded using standard audio encoding schemes and video can be captured into an image file encoded using standard image encoding schemes or into a movie file, again encoded using standardized mechanisms. Some interactive audio-visual entertainment devices provide no mechanisms by which an aspect of the interactive experience can be captured into a transportable and shareable format. For example, while some video games provide the user with the ability to capture specific elements of the game, those elements are only saved within the context of the game itself and cannot be removed from the game.
- To enable the export of aspects of an interactive audio-visual experience, a server program can receive raw data from a game, representing game-related media, such as media directed to presenting an aspect of the game, together with a header packet identifying the information. Subsequently, the server can parse out relevant elements from the header packet, such as information identifying the game, the user, or other relevant information. The information obtained by the server can subsequently be used to store the received game-related media in an appropriate manner, such as by storing it in a sub-location based on the game and entitling the data based on unique identifying information.
- A service can monitor specific locations for particular types of data. In one embodiment, a single service can monitor specific locations for multiple types of data, including movie data, picture data or audio data. In an another embodiment multiple services can monitor specific locations, with each service being directed to specific types of data, such as one service being directed to movie data, a second service to picture data and a third service to audio data. Once the game-related media is detected, the service can validate the naming structure of the container file, and identify or derive further relevant information, such as identifying information. The service can then create an appropriate set of related data, such as thumbnails, to enable more efficient access and sharing of the game-related media. Such information can be provided to a website hosting the game-related media. To enhance security, remaining metadata that is not used can be removed.
- A website hosting game-related media can require identifying information from users seeking to access the website. The identifying information can be used to associate a user of the website with a user of one or more games. Consequently, the website can present the user with the game-related media that is relevant to that user, such as game-related media captured by that user, or game-related media sent to that user by another user. The user can further download the game-related media, which can be presented in standardized formats to enable further sharing.
- This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
- Additional features and advantages will be made apparent from the following detailed description that proceeds with reference to the accompanying drawings.
- The following detailed description may be best understood when taken in conjunction with the accompanying drawings, of which:
-
FIG. 1 is a diagram of an exemplary environment for sharing media from interactive audio-visual entertainment; -
FIG. 2 is a block diagram of an exemplary computing device; -
FIG. 3 is an exemplary flow chart illustrating the receipt of media from interactive audio-visual entertainment; -
FIG. 4 is an exemplary flow chart illustrating the organization of media from interactive audio-visual entertainment; and -
FIG. 5 is an exemplary flow chart illustrating the sharing of media from interactive audio-visual entertainment. - The following description relates to the obtaining of media from interactive audio-visual entertainment, such as a video game, for sharing with others outside of the confines of the interactive entertainment itself. Back end server computing devices can host processes that interface with existing mechanisms in interactive audio-visual entertainment, thereby enabling the export of media from that audio-visual entertainment. The hosted processes can comprise a server program for receiving and storing game-related media, a service process for obtaining information about the game-related media that aids in its identification and for removing unneeded metadata, and a hosting process that provides user-specific access to the game-related media.
- The techniques described herein focus on the mechanisms by which media from interactive audio-visual entertainment can be obtained, categorized, and provided to one or more users. One such mechanism comprises a server process that can receive data from interactive audio-visual entertainment and store the data in a predefined manner. Another mechanism comprises a service that retrieves the stored data and prepares it for presentation, including the generation of thumbnails, and the removal of unused, and potentially harmful metadata. A further mechanism comprises a hosting process that identifies users and provides user-specific data for browsing and downloading.
- Although not required, the description below will be in the general context of instructions being executed by a device having computational abilities. Such “computing devices” include both traditional computers and consumer-electronic devices having computational abilities, such as those provided by a central processing unit. Thus, the description below will be in the general context of “computer-executable instructions,” such as program modules, that are capable of being executed by a such a “computing device.” More specifically, the description will reference acts and symbolic representations of operations that are performed by one or more computing devices or peripherals, unless indicated otherwise. As such, it will be understood that such acts and operations, which are at times referred to as being computer-executed, include the manipulation by a processing unit of electrical signals representing data in a structured form. This manipulation transforms the data or maintains it at locations in memory, which reconfigures or otherwise alters the operation of the computing device or peripherals in a manner well understood by those skilled in the art. The data structures where data is maintained are physical locations that have particular properties defined by the format of the data.
- Generally, program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the computing devices need not be limited to conventional personal computers and conventional personal electronics devices, and can include other devices capable of computation, including hand-held devices, multi-processor systems, other microprocessor based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Similarly, the computing devices need not be limited to a stand-alone device, as the mechanisms may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
- With reference to
FIG. 1 , anexemplary environment 99 for sharing aspects of interactive audio-visual entertainment is illustrated. Theexemplary environment 99 includes interactive audio-visual entertainment hardware, such as anentertainment computing device 10, and interactive audio-visual entertainment software, such as agame 11 for use on theentertainment computing device 10. Theexemplary environment 99 also comprises apersonal computing device 40 having aweb browser 41. In one embodiment, thepersonal computing device 40 and theentertainment computing device 10 are co-located such that media from theentertainment computing device 10 generated by a user will be accessed by that same user on thepersonal computing device 40. - The
exemplary environment 99 further comprises an uploadserver computing device 20 and a websitehost computing device 30. The uploadserver computing device 20 hosts aserver program 21 and aservice 22, while the websitehost computing device 30 hosts awebsite 31 and adatabase 32. In one embodiment, the uploadserver computing device 20 and the websitehost computing device 30 are physically distinct computing devices as illustrated inFIG. 1 . In an alternative embodiment, however, the uploadserver computing device 20 and the websitehost computing device 30 can be a single computing device hosting theserver program 21, theservice 22, thewebsite 31 and thedatabase 32. - For simplicity,
FIG. 1 , and the descriptions below, refer to awebsite 31, hosted by a websitehost computing device 30, and aweb browser 41 executing on apersonal computing device 40. However, the described mechanisms in no way require the use of either the HyperText Transfer Protocol (HTTP), nor the HyperText Markup Language (HTML). For example, the described mechanisms can be equally implemented via a File Transfer Protocol (FTP) site and any FTP client program. Likewise, the described mechanisms could be implemented using Really Simple Syndication (RSS) server software and RSS readers or aggregators. Thus, it is to be understood that, while the descriptions below will refer to a website, a website hosting computing device, and a web browser, that such descriptions are equally applicable to any network communication hosting program and associated network communication client program. - Returning to
FIG. 1 , a user interacting with theentertainment computing device 10, specifically via the mechanisms provided for by thegame 11, can select game-related media for upload to the uploadserver computing device 20. For example, thegame 11 can provide users with the ability to capture still images from the game, or to capture a sequence of events as a movie. Thegame 11 could likewise provide users with the ability to record various audio aspects of the game as a sound, or otherwise capture game-related media. Such images, movies, sounds, or other game-related media would traditionally be stored and accessible only from within thegame 11 itself. For example, thegame 11 could provide for a media gallery that would enable users interacting with the game to view previously captured media. - In one embodiment, the
game 11 can be modified to upload previously captured media to another computing device, such as the uploadserver computing device 21 as indicated by thearrow 51 ofFIG. 1 . Such modifications can leverage the networking abilities present in many modern games, such as games which enable users to interact with, or compete with, other users over a networked connection. Often, games which enable multiple users to interact over a network connection do so by leveraging a server computing device to facilitate the maintenance and exchange of information common to all of the users. Such a server computing device can itself act as the uploadserver computing device 20, or it can redirectcommunications 51 to another computing device acting as the uploadserver computing device 20. - Uploaded game-related media can be received by the
server program 21 running on the uploadserver computing device 20. In one embodiment, theserver program 21 conforms to standard file transfer protocols, such as the Hyper Text Transfer Protocol (HTTP) or the File Transfer Protocol (FTP). Upon receipt of the game-related media from anentertainment computing device 10, theserver program 21 can parse out relevant information that can have been included with the game-related media by the entertainment computing device or thegame 11. Such relevant information can include an identifier of thegame 11, an identifier of the user, a name the user selected for themselves within the context of the game or within the context of the server computing device used to exchange information common to all of the users (commonly referred to as a “gamer tag”), or other identifying or otherwise pertinent information. In one embodiment, such information can be stored in a header, such as an HTTP header packet. - Once the
server program 21 has parsed out the relevant information, it can store, or otherwise persist, the received game-related media on the uploadserver computing device 20 or on another computing device communicationally connected to the upload server computing device. In one embodiment, the game-related media is stored in a folder, or other type of storage partition, based on thegame 11 that uploaded the game-related media. For example, the game identifier provided with the game-related media can be associated with a common name for thegame 11, and the folder into which theserver program 21 stores the game-related media can be identified with the same common name of thegame 11. Alternatively, the folder into which theserver program 21 stores the game-related media can be identified with the game identifier itself, without requiring theserver program 21 to lookup an associated common name of thegame 11. - To identify the game-related media when it is stored, the
server program 21 can generate a file name for the file containing the game-related media. In one embodiment, theserver program 21 can generate a random identifier based, at least in part, on the identifier of the user, the user's gamer tag, or some combination thereof. The randomness of the identifier can distinguish between multiple game-related media uploaded by the same user. - Once the
server program 21 has stored the game-related media as a file on the uploadserver computing device 20, aservice 22 can detect the storage of the game-related media and can further process the game related media to prepare it for sharing. In one embodiment, theservice 22 can continually monitor one or more storage locations on the uploadserver computing device 20, or on another computing device communicationally connected to the uploadserver computing device 20. When theservice 22 detects the storage of new game-related media, it can first perform one or more verifications to ensure that the detected file was properly stored. For example, theservice 22 can verify that the file name is properly constructed. In addition, theservice 22, which can access the algorithm used by theserver program 21 to generate the file name, can reverse that algorithm to extract information from the file name, such as the user's gamer tag or identifier. Information identifying thegame 11, which generated the game-related media, can be obtained by theservice 22 from the folder in which the game-related media was stored. For example, the name of the folder can be a game identifier or the common name of thegame 11, as indicated above. - The
service 22 can also prepare the game-related media for sharing, such as through a web server. In one embodiment, theservice 22 can create one or more appropriate thumbnails for the game-related media. For example, if the game-related media comprises images or video, theservice 22 can generate a smaller, lower resolution image or a still frame image to act as a thumbnail for the game-related media. Likewise, if the game-related media comprises audio, theservice 22 can generate a shorter, lower bit rate recording to act as a thumbnail for the game-related media. - To enhance the security of game-related media that is shared, the
service 22 can remove unneeded meta-data from the game-related media. As will be known by those skilled in the art, some media files can comprise a substantial amount of meta-data, which can be used to exploit security weaknesses. Since the meta-data referenced by, or otherwise used by, theservice 22 is limited, the remaining meta-data can be removed by theservice 22 to enhance the security of the sharing of game-related media. - Once the
service 22 has completed its processing, it can transfer, viacommunications 52, the game-related media to a websitehost computing device 30, on which awebsite 31 is executing. In one embodiment, the websitehost computing device 30 can be co-located with the uploadserver computing device 20, such that theserver program 21, theservice 22 and thewebsite 31 are all being executed by the same computing device. In another embodiment, the websitehost computing device 30 can be a distinct computing device in the manner illustrated inFIG. 1 . - The
transfer 52 of the game-related media from theservice 22 to the websitehost computing device 30 includes the transfer of thumbnails generated by the service and any other data augmenting the game-related media data itself. Thetransfer 52 likewise includes categorizing information extracted by theservice 22, such as the identifier of thegame 11, the common name of the game, the identifier of the user, the user's gamer tag, or other information that can be used to categorize the game-related media for easier access through thewebsite 31. - The website
host computing device 30, upon receipt of the categorized and augmented game-related media, can store the received information into adatabase 32. For example, using a relational database, the game-related media itself can be related to the categorizing information provided by theservice 22 and it can further be related to the thumbnail likewise provided by theservice 22. Consequently, the game-related media can be searched for based on any one of the categorizing information provided, including, for example, the identifier of thegame 11, the common name of the game, the identifier of the user or the gamer tag. The game-related media can likewise be searched for via the thumbnails provided by theservice 22. - When a user accesses the
website 31, such as with aweb browser 41 onpersonal computing device 40, the website can enable the user to download one or more game-related media as indicated bycommunication 53. In one embodiment, thewebsite 31 can present to the user for downloading any of the game-related media stored in thedatabase 32. Such a presentation can comprise the creation of one or more web pages comprising thumbnails, identifying information, or some combination thereof. Once thepersonal computing device 40 has received these web pages, and they have been displayed to the user by theweb browser 41, the user can select one or more game-related media for download by selecting a corresponding thumbnail or other identifying information through the web browser. Such a selection can be communicated back to thewebsite 31 in a known manner, which can reference thedatabase 32 to obtain the game-related media selected by the user, and provide that media, viacommunication 53, to theweb browser 41. Once stored on thepersonal computing device 40, the game-related media can be shared by the user in the same manner as any other media on the personal computing device. - In an alternative embodiment, the
website 31 can require users to authenticate themselves, such as by providing a user name and a password. The authentication information provided can identify a particular user of thegame 11. More specifically, the user name provided by the user to thewebsite 31 can be associated with a user identifier or a gamer tag. Such as association can either be maintained by the websitehost computing device 30, or on a separate computing device or system. With such an association, thewebsite 31 can present to the authenticated user only the game-related media that is associated with that user in the database, such as via the user's identifier or gamer tag. In one embodiment, thewebsite 31 provides, to authenticated users, one or more web pages comprising thumbnails, identifying information, or some combination thereof corresponding only to game-related media captured by that user. In an alternative embodiment, thewebsite 31 provides, to authenticated users, not only access to the game-related media captured by that user, but also to game-related media captured by other users and shared by those other users with the current user. In either case, the user can select one or more game-related media for download by selecting a corresponding thumbnail or other identifying information that was presented through theweb browser 41. Such a selection can be communicated back to thewebsite 31 in a known manner, which can reference thedatabase 32 to obtain the game-related media selected by the user, and provide that media, viacommunication 53, to theweb browser 41. As before, once the game-related media is stored on thepersonal computing device 40, it can be shared in the same manner as any other media on the personal computing device. - Turning to
FIG. 2 , anexemplary computing device 100 is illustrated. As indicated previously, the term “computing device,” as used herein, includes consumer entertainment devices, such a video game consoles, digital video recorders, and content provider interfaces such as the ubiquitous “cable box.” Thus, theexemplary computing device 100 can be representative of any of the computing devices shown inFIG. 1 , including theentertainment computing device 10, the uploadserver computing device 20, the websitehost computing device 30, thepersonal computing device 40, or any combination thereof since, as previously indicated, the computing devices ofFIG. 1 do not have to be physically distinct from one another. - The
exemplary computing device 100 can include, but is not limited to, one or more central processing units (CPUs) 120, asystem memory 130, and asystem bus 121 that couples various system components including the system memory to theprocessing unit 120. Thesystem bus 121 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. Thecomputing device 100 can include graphics hardware, including, but not limited to, agraphics hardware interface 190 and adisplay device 191. - The
computing device 100 also typically includes computer readable media, which can include any available media that can be accessed by computingdevice 100 and includes both volatile and nonvolatile media and removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media, communication media or combinations thereof. Computer storage media includes media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. - The
system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132. A basic input/output system 133 (BIOS), containing the basic routines that help to transfer information between elements withincomputing device 100, such as during start-up, is typically stored inROM 131.RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processingunit 120. By way of example, and not limitation,FIG. 2 illustratesoperating system 134,other program modules 135, and program data 136. - The
computing device 100 may also include other removable/non-removable, volatile/nonvolatile computer storage media. By way of example only,FIG. 2 illustrates ahard disk drive 141 that reads from or writes to nonvolatile magnetic media. Other removable/non-removable, volatile/nonvolatile computer storage media that can be used with the exemplary computing device include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. Thehard disk drive 141 is typically connected to thesystem bus 121 through an interface such asnon-volatile memory interface 140. - The drives and their associated computer storage media discussed above and illustrated in
FIG. 2 , provide storage of computer readable instructions, data structures, program modules and other data for thecomputing device 100. InFIG. 2 , for example,hard disk drive 141 is illustrated as storingoperating system 144,other program modules 145, andprogram data 146. Note that these components can either be the same as or different fromoperating system 134,other program modules 135 and program data 136.Operating system 144,other program modules 145 andprogram data 146 are given different numbers hereto illustrate that, at a minimum, they are different copies. - Of relevance to the descriptions below, the
computing device 100 may operate in a networked environment using logical connections to one or more remote computers. For simplicity of illustration, and in conformance with theexemplary system 99 ofFIG. 1 , thecomputing device 100 is shown inFIG. 2 to be connected to thenetwork 90. Thecomputing device 100 is not limited to any particular network or networking protocols. The network connection depicted inFIGS. 1 and 2 is ageneral network connection 171 that can be a local area network (LAN), a wide area network (WAN) or other networks. Thecomputing device 100 is connected to thegeneral network connection 171 through a network interface oradapter 170 which is, in turn, connected to thesystem bus 121. In a networked environment, program modules depicted relative to thecomputing device 100, or portions or peripherals thereof, may be stored in the memory of one or more other computing devices that are communicatively coupled to thecomputing device 100 through thegeneral network connection 171. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between computing devices may be used. - The
general network connection 171 to thenetwork 90 can be used to communicate with one or more other computing devices that are likewise connected to the network.Communications FIG. 1 , are shown as proceeding directly betweencomputing devices network 90, only for simplicity of illustration. Instead, more accurately,communications computing devices network 90 in a manner well known to those skilled in the art. -
Communication 51, as explained previously, can comprise the transmission of game-related media from agame 11 to aserver program 21 designed to receive such game-related media.Communication 52, in turn, can comprise the transmission of categorized and augmented game-related media to a websitehost computing device 30, andcommunication 53 can comprise the transmission of game-related media to thepersonal computing device 40. As described below,FIGS. 3 , 4 and 5 illustrate flow diagrams corresponding to processes that either trigger or receive these communications. In particular,FIG. 3 illustrates an exemplary process performed by theserver program 21 upon receipt ofcommunication 51,FIG. 4 illustrates an exemplary process performed by theservice 22 prior to the transmission ofcommunication 52, andFIG. 5 illustrates an exemplary process performed by thewebsite 31 prior to thetransmission 53. - Turning to
FIG. 3 , a flow diagram 300 begins with the receipt of the game-related media atstep 310. As described previously, the game-related media can be sent by agame 11 executing on anentertainment computing device 10. Thegame 11 comprises mechanisms for enabling a user to capture game-related media, such as a picture, movie, audio, or other media. Thegame 11 can further comprise mechanisms for enabling the user to view previously captured game-related media within the context of the game, such as through a “gallery” generated by the game. In one embodiment, network communication capability sufficient to encapsulate such previously captured game-related media can be added, either to thegame 11 itself, or to theentertainment computing device 10. The network communication capability can transmit one or more previously captured game-related media to the uploadserver computing device 20 by constructing one or more network packets comprising some or all of the game-related media. The transmitted game-related media can be selected by the user of thegame 11, such as through the gallery. - In one embodiment, the network packets include a header packet having a user data section for transmitting information about the game-related media, such as the name of the
game 11 from which the game-related media was obtained, a unique identifier for thegame 11, a unique identifier for the user of the game that captured the game-related media, the user's gamer tag, or other information that can further identify the game-related media. Such information can be stored as a string in the header packet, with appropriate separators, such as a “#” symbol, dividing the individual elements of data. In an alternative embodiment, the above information can be stored in separate elements within the header packet or can be otherwise transmitted in an appropriate manner. - When the
server program 21 receives the game-related media atstep 310, it can, atstep 320, parse the header packet, separating out the individual elements of data, as delineated by the separators. As part of the parsingstep 320, theserver program 21 can further encode each of the individual elements into strings, or other appropriate data structures, for subsequent processing. One aspect of such subsequent processing can be the identification of a “common” name of thegame 11, such as the name by which the game is marketed, atstep 330. If the information provided in the header packet did not already comprise the name of thegame 11, but instead comprised a unique identifier, theserver program 21 can use the unique game identifier to look up the common name of the game. A correlation between game identifiers and game names can be maintained by the uploadserver computing device 20, or it can be maintained by another computing device connected to thenetwork 90. - Step 330 can additionally verify that the
game 11 sending the game-related media is valid. For example, if the identifier provided in the header packet does not correspond to any common name, thegame 11 may not be a game that is to be allowed to upload game-related media. In such a case, theserver program 21 need not perform any further operations with respect to the received game-related media. In an alternative embodiment, however, theserver program 21 can provide an error message back to thegame 11 to provide troubleshooting information, should it be needed. In a further alternative embodiment, theserver program 21 can perform additional verifications beyond game identification, such as verifying that the game-related media is encoded in an acceptable format, such as a standard image, movie, or audio format. - If the verifications do not detect a problem, then at
step 340, theserver program 21 can create a random Globally Unique IDentifier (GUID) for the game-related media received atstep 310. In one embodiment, the GUID can be created and subsequently combined with the user's identifier, gamer tag, or some combination thereof to create a unique combination. In addition, the GUID can also be combined with, or otherwise related to, the time when the game-related media was captured or the time when it was received atstep 310. By using a continually changing parameter, such as a time parameter, the generated GUID can remain unique even when the same user uploads multiple game-related media from the same game within a narrow span of time. Once theserver program 21 has generated a GUID atstep 340 and combined it with the above listed information, it can, atstep 350, assign a name to the file comprising the combination. In another embodiment, the file name can further comprise additional elements that identify the user or the game or both. - The file comprising the game-related media can be stored in a folder by the server program at
step 360. The folder and the file comprising the game-related media can be stored either locally on the uploadserver computing device 20, or they can stored on one or more remote computing devices connected to thenetwork 90. The folder can be named after, or otherwise associated with, thegame 11 from which the game-related media was received. In one embodiment, the folder can simply have the same name as the name of the game. In an alternative embodiment, the name of the folder can include the name of the game, the game identifier or some combination therefore, while in a still further alternative embodiment, the folder name can comprise additional information as well. Once the folder has been created and named, if it was not already present, and once the file comprising the received game-related media has been stored therein, the processing performed by theserver program 21 can end atstep 370. - Turning to
FIG. 4 , a flow diagram 400 is shown representing exemplary processing performed by theservice 22 ofFIG. 1 . As illustrated by flow diagram 400, the processing performed byservice 22 can, atstep 410, monitor selected storage locations. Such monitored storage locations can coincide with the storage locations in which theserver program 21 stores the received game-related media and, as indicated previously, can be local to the uploadserver computing device 20, or they can be located on one or more remote computing devices connected to thenetwork 90. Once theservice 22 detects the creation of a file within the monitored storage locations, as indicated bystep 420, theservice 22 can further process the game-related media and prepare it for sharing via thewebsite 31. - Initially, at
step 430, theservice 22 can verify the name of the file to ensure that it is a file that the service should be addressing, and not merely a file accidentally saved to the monitored storage location. The file name verification ofstep 430 can include extracting, from the file name, information such as the identifier of the user or the user's gamer tag. If the file is not verified atstep 430, it can be stored in an appropriate location for further review, such as by an administrator of the uploadserver computing device 20. Theservice 22 can further identify or derive additional information regarding the game-related media atstep 440. More specifically, once the file name has been validated atstep 430, theservice 22 can read the file from the monitored storage location and can acquire any of the metadata associated with the file. In addition, theservice 22 can perform further processing with respect to the information obtained from the file name. For example, if theservice 22 was only able to derive a user's gamer tag from the file name, the service can match the gamer tag to a user identifier using either a local or remote database associating user identifiers with the gamer tags those users selected within the context of specific games, such asgame 11. - To facilitate the identification of the game-related media, the
service 22 can, atstep 450, create thumbnails of the game-related media. As will be known by those skilled in the art, thumbnails comprise smaller, lower resolution media that is analogous to the game-related media. For example, if the game-related media was a high definition image from thegame 11, theservice 22 can create a smaller, lower resolution version of the image atstep 450 to act as a thumbnail. A still image can likewise act as a thumbnail if the game-related media was a video segment. Audio media can be likewise compressed in both duration and quality to yield a thumbnail for an audio-only game-related media. - At
step 460, theservice 22 can remove any of the metadata associated with the file comprising the game-related media that the service is not using or referencing. As will be known by those skilled in the art, some media file formats can comprise a large amount of metadata that can harbor malicious code. Consequently, in one embodiment, theservice 22 can remove such metadata. Any metadata that is left by theservice 22 can be limited, for security reasons, to character data. - Once the file comprising the game-related media has been cleaned of potentially malicious elements, the
service 22 can, atstep 470, store the game-related media, as well as some or all of the additional information identified, derived or created by the service, in thedatabase 32. Such additional information can include the thumbnail, the identifier of thegame 11, the common name of the game, the identifier of the user, the gamer tag of the user, or any other relevant information, or any combination thereof. After storing the game-related media atstep 470, theservice 22 can end atstep 480. - Turning to
FIG. 5 , a flow diagram 500 illustrates exemplary processing performed by thewebsite 31. As shown, thewebsite 31 can wait for a user atstep 530. In one embodiment, thewebsite 31 can limit users to accessing only the game-related media that was captured and uploaded by that user, or game-related media that the user has been granted permission to access. In an alternative embodiment, thewebsite 31 can eschew such limitations, and can provide any user access to all of the game-related media stored in thedatabase 32. In the case of the latter, steps 540 and 550 can be skipped, and processing can proceed to step 560, which will be described below. However, if thewebsite 31 limits access to the game-related media, it can check, atstep 540, if a user has provided identification and password. If the user has provided authenticating information, thewebsite 31 can authenticate the user atstep 550. - The process of authenticating a user at
step 550 can comprise associating a user's gamer tag or user identifier with the identification provided atstep 540. Such an association can be stored locally on the websitehost computing device 30, or it can be stored remotely on one or more computing devices connected to thenetwork 90. In one embodiment, the user identification and password provided atstep 540 are part of a network “passport” that the user can use to log on to additional websites. Such a “passport” can be maintained in a central location that can comprise information linking the user's passport to other relevant information about the user, including the user's name and address, billing information and, of relevance to the descriptions below, the user's gamer tag or other game-related identifying information. In such a case, thewebsite 31 can, as part of the process of authenticating the user atstep 550, reference the centralized passport database to determine the user's game-related identifier or gamer tag based on the information provided atstep 540. - Subsequently, at
step 560, thewebsite 31 can present thumbnails of the game-related media, other information identifying the game-related media, or some combination thereof, to the user. If thewebsite 31 only allowed a user to access game-related media that the user generated, or game-related media to which the user was specifically granted access, then the game-related media that is relevant to that user will be limited. However, if thewebsite 31 provided any user access to any game-related media, then all of the game-related media in thedatabase 32 is relevant to any user. - The database can be searched based on user identifiers, including a user's game-related identifier and a user's gamer tag. Consequently, in presenting the thumbnails at
step 560, thewebsite 31 can, once it has authenticated the user atstep 550, search thedatabase 32 for the game-related media associated with that user's gamer tag or game-related identifier. Once the relevant game-related media has been identified by thewebsite 31, the website can request the associated thumbnails for presentation to the user. The thumbnails can be presented to the user by generating one or more web pages, comprising those thumbnails, for display by thebrowser 41 in a manner well known to those skilled in the art. - If the user selects one or more thumbnails at
step 570, thewebsite 31 can receive a notification of such a selection from thebrowser 41, and can provide the requested game-related media to the browser atstep 580. Once downloaded by thebrowser 41, the game-related media can be saved on thepersonal computing device 40 and can be shared in the same manner as any other media stored on the personal computing device. Consequently, once thewebsite 31 has provided the selected game-related media to thebrowser 41 atstep 580, it an end atstep 590. However, if the user does not select a thumbnail atstep 570, thewebsite 31 can continue to present the web pages, atstep 560, comprising thumbnails or other information identifying the relevant game-related media. - In one embodiment, the
website 31 can also perform various maintenance tasks not illustrated inFIG. 5 . For example, thewebsite 31 can enable users to add additional data about the game-related media into thedatabase 32. Users can, thereby, attach notes to various game-related media, or the users could grant access to another user, causing thewebsite 31 to modify thedatabase 32 to associate the user to whom access was granted with the appropriate game-related media. - Other maintenance tasks can also be performed by the
website 31. For example, thewebsite 31 can periodically discard game-related media that is older than a selected threshold. Such game-related media can be identified based on a time stamp that theservice 22 can add into thedatabase 32 and associated with game-related media when the game-related media is stored atstep 470. Alternatively, thewebsite 31 can periodically discard game-related media associated with a particular user that exceeds that user's quota. To enable users to manage such a quota, thewebsite 31 can further discard game-related media when instructed by the user to do so, such as through commands entered into theweb browser 41. Before discarding game-related media at the user's request, thewebsite 31 can first verify that the user has the authority to discard the game-related media, such as if the user was the one who originally generated the game-related media. - As can be seen from the above descriptions, game-related media can be uploaded from an entertainment computing device to a server computing device, where it can be processed and ultimately presented, through an appropriate user interface, such as a web page, to one or more users who can download and share the game-related media. In view of the many possible variations of the subject matter described herein, we claim as our invention all such embodiments as may come within the scope of the following claims and equivalents thereto.
Claims (20)
1. One or more computer-readable media comprising computer-executable instructions for sharing media generated by, and captured within a context of, interactive audio-visual entertainment, the computer-executable instructions directed to steps comprising:
receiving media from interactive audio-visual entertainment representing an aspect of the audio-visual entertainment;
validating the received media;
identifying a user of the interactive audio-visual entertainment who captured the media; and
associating the identified user with the media.
2. The computer-readable media of claim 1 , comprising further computer-executable instructions directed to generating a thumbnail of the media, wherein the presenting the media comprises presenting the thumbnail.
3. The computer-readable media of claim 1 , comprising further computer-executable instructions directed to identifying the interactive audio-visual entertainment and associating the identified interactive audio-visual entertainment with the media.
4. The computer-readable media of claim 1 , wherein the interactive audio-visual entertainment is a video game.
5. The computer-readable media of claim 1 , wherein the associating the identified user with the media comprises naming a file comprising the media with a name derived from a combination of a random value and an identifier of the user.
6. The computer-readable media of claim 1 , wherein the associating the identified user with the media comprises storing the received media in a database.
7. The computer-readable media of claim 1 , wherein the computer-executable instructions are directed to further steps comprising: removing unneeded meta-data from the received media.
8. The computer-readable media of claim 1 , wherein the identifying the user comprises obtaining a gamer tag associated with the user in the context of the interactive audio-visual entertainment.
9. A system for sharing media generated by, and captured within the context of, interactive audio-visual entertainment, the system comprising:
a first server program performing steps comprising: receiving media from interactive audio-visual entertainment representing an aspect of the audio-visual entertainment;
a service performing steps comprising: identifying a user of the interactive audio-visual entertainment who captured the media and associating the identified user with the media, and transmitting the media; and
a second server program performing steps comprising: receiving user authentication information, associating the user authentication information with the identified user, and presenting, for download, the media associated with the identified user.
10. The system of claim 9 , wherein the second server program performs further steps comprising generating a thumbnail of the media.
11. The system of claim 9 , wherein the first server program performs further steps comprising identifying the interactive audio-visual entertainment and associating the identified interactive audio-visual entertainment with the media.
12. The system of claim 9 , wherein the first server program performs further steps comprising verifying that the received media is from proper interactive audio-visual entertainment.
13. The system of claim 9 , wherein the second server program performs further steps comprising transmitting the media in response to a user request to download the media.
14. The system of claim 9 , wherein the transmitting the media comprises transmitting information regarding the identified user and transmitting a thumbnail of the media; and wherein the receiving the media comprises receiving the information regarding the identified user and receiving the thumbnail of the media.
15. The system of claim 9 , wherein the service performs further steps comprising storing the media in a database associating the media with identifying information.
16. One or more computer-readable media comprising computer-executable instructions for sharing media generated by, and captured within a context of, interactive audio-visual entertainment, the computer-executable instructions directed to steps comprising:
receiving user authentication information;
associating the user authentication information with a user identifier that identifies the user within the context of the interactive audio-visual entertainment; and
presenting, for download, media that represents an aspect of the audio-visual entertainment, and that is associated with the user identifier.
17. The method of claim 16 , further comprising the step of generating a thumbnail of the media, wherein the presenting the media comprises presenting the thumbnail.
18. The method of claim 16 , further comprising the step of transmitting the media in response to a user request to download the media.
19. The method of claim 16 , wherein the interactive audio-visual entertainment is a video game.
20. The method of claim 16 , wherein the received user authentication comprises an online passport that authenticates the user at multiple sites.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/699,673 US20080182665A1 (en) | 2007-01-30 | 2007-01-30 | Video game to web site upload utility |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/699,673 US20080182665A1 (en) | 2007-01-30 | 2007-01-30 | Video game to web site upload utility |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080182665A1 true US20080182665A1 (en) | 2008-07-31 |
Family
ID=39668629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/699,673 Abandoned US20080182665A1 (en) | 2007-01-30 | 2007-01-30 | Video game to web site upload utility |
Country Status (1)
Country | Link |
---|---|
US (1) | US20080182665A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100016074A1 (en) * | 2008-03-20 | 2010-01-21 | Gdi Game Domain International Plc | Apparatus and methods for game conversion |
US20100070887A1 (en) * | 2008-09-15 | 2010-03-18 | Apple Inc. | Method and apparatus for providing an application canvas framework |
US20130005471A1 (en) * | 2011-06-28 | 2013-01-03 | United Video Properties, Inc. | Systems and methods for generating video hints for segments within an interactive video gaming environment |
US8498722B2 (en) | 2011-05-31 | 2013-07-30 | United Video Properties, Inc. | Systems and methods for generating media based on player action in an interactive video gaming environment |
US8657680B2 (en) | 2011-05-31 | 2014-02-25 | United Video Properties, Inc. | Systems and methods for transmitting media associated with a measure of quality based on level of game play in an interactive video gaming environment |
US11247135B2 (en) * | 2007-12-05 | 2022-02-15 | Sony Interactive Entertainment LLC | System and method for storing program code and data within an application hosting center |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6383080B1 (en) * | 2000-05-09 | 2002-05-07 | Nintendo Co., Ltd. | Kiosk for printing and communicating video game images |
US6583799B1 (en) * | 1999-11-24 | 2003-06-24 | Shutterfly, Inc. | Image uploading |
US20030220145A1 (en) * | 2002-05-22 | 2003-11-27 | Erickson Craig S. | Digital camera and networking accessories for a portable video game device |
US20040010693A1 (en) * | 2002-06-25 | 2004-01-15 | Yukinori Noguchi | Image data management apparatus |
US20040146272A1 (en) * | 2003-01-09 | 2004-07-29 | Kessel Kurt A. | System and method for managing video evidence |
US20040174434A1 (en) * | 2002-12-18 | 2004-09-09 | Walker Jay S. | Systems and methods for suggesting meta-information to a camera user |
US20050015712A1 (en) * | 2003-07-18 | 2005-01-20 | Microsoft Corporation | Resolving metadata matched to media content |
US20050033758A1 (en) * | 2003-08-08 | 2005-02-10 | Baxter Brent A. | Media indexer |
US20050102375A1 (en) * | 2003-10-23 | 2005-05-12 | Kivin Varghese | An Internet System for the Uploading, Viewing and Rating of Videos |
US20050113062A1 (en) * | 2003-11-20 | 2005-05-26 | Pelaez Mariana B. | Method and system for processing adjustments to the type and quality of multimedia communication sessions |
US20050246752A1 (en) * | 1999-08-03 | 2005-11-03 | Gad Liwerant | Method and system for sharing video over a network |
US20060012813A1 (en) * | 1999-12-01 | 2006-01-19 | Silverbrook Research Pty Ltd | Retrieving video data via a coded surface |
US20060155645A1 (en) * | 2005-01-10 | 2006-07-13 | Art.Com, Inc. | Image uploading and print-on demand system and method, namely for art and photographs |
US7117519B1 (en) * | 2000-07-26 | 2006-10-03 | Fotomedia Technologies Llc | Method and system for selecting actions to be taken by a server when uploading images |
US20060252519A1 (en) * | 2003-03-03 | 2006-11-09 | Walker Jay S | Method and apparatus for payouts determined based on a set completion game |
US20070060114A1 (en) * | 2005-09-14 | 2007-03-15 | Jorey Ramer | Predictive text completion for a mobile communication facility |
US20070179995A1 (en) * | 2005-11-28 | 2007-08-02 | Anand Prahlad | Metabase for facilitating data classification |
-
2007
- 2007-01-30 US US11/699,673 patent/US20080182665A1/en not_active Abandoned
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050246752A1 (en) * | 1999-08-03 | 2005-11-03 | Gad Liwerant | Method and system for sharing video over a network |
US6583799B1 (en) * | 1999-11-24 | 2003-06-24 | Shutterfly, Inc. | Image uploading |
US20060015201A1 (en) * | 1999-12-01 | 2006-01-19 | Silverbrook Research Pty Ltd | Retrieving audio data via a coded surface |
US20060012813A1 (en) * | 1999-12-01 | 2006-01-19 | Silverbrook Research Pty Ltd | Retrieving video data via a coded surface |
US6383080B1 (en) * | 2000-05-09 | 2002-05-07 | Nintendo Co., Ltd. | Kiosk for printing and communicating video game images |
US7117519B1 (en) * | 2000-07-26 | 2006-10-03 | Fotomedia Technologies Llc | Method and system for selecting actions to be taken by a server when uploading images |
US20030220145A1 (en) * | 2002-05-22 | 2003-11-27 | Erickson Craig S. | Digital camera and networking accessories for a portable video game device |
US20040010693A1 (en) * | 2002-06-25 | 2004-01-15 | Yukinori Noguchi | Image data management apparatus |
US20040174434A1 (en) * | 2002-12-18 | 2004-09-09 | Walker Jay S. | Systems and methods for suggesting meta-information to a camera user |
US20040146272A1 (en) * | 2003-01-09 | 2004-07-29 | Kessel Kurt A. | System and method for managing video evidence |
US20060252519A1 (en) * | 2003-03-03 | 2006-11-09 | Walker Jay S | Method and apparatus for payouts determined based on a set completion game |
US20050015712A1 (en) * | 2003-07-18 | 2005-01-20 | Microsoft Corporation | Resolving metadata matched to media content |
US20050033758A1 (en) * | 2003-08-08 | 2005-02-10 | Baxter Brent A. | Media indexer |
US20050102375A1 (en) * | 2003-10-23 | 2005-05-12 | Kivin Varghese | An Internet System for the Uploading, Viewing and Rating of Videos |
US20050113062A1 (en) * | 2003-11-20 | 2005-05-26 | Pelaez Mariana B. | Method and system for processing adjustments to the type and quality of multimedia communication sessions |
US20060155645A1 (en) * | 2005-01-10 | 2006-07-13 | Art.Com, Inc. | Image uploading and print-on demand system and method, namely for art and photographs |
US20070060114A1 (en) * | 2005-09-14 | 2007-03-15 | Jorey Ramer | Predictive text completion for a mobile communication facility |
US20070179995A1 (en) * | 2005-11-28 | 2007-08-02 | Anand Prahlad | Metabase for facilitating data classification |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11247135B2 (en) * | 2007-12-05 | 2022-02-15 | Sony Interactive Entertainment LLC | System and method for storing program code and data within an application hosting center |
US20100016074A1 (en) * | 2008-03-20 | 2010-01-21 | Gdi Game Domain International Plc | Apparatus and methods for game conversion |
US20100070887A1 (en) * | 2008-09-15 | 2010-03-18 | Apple Inc. | Method and apparatus for providing an application canvas framework |
US9223548B2 (en) * | 2008-09-15 | 2015-12-29 | Apple Inc. | Method and apparatus for providing an application canvas framework |
US8498722B2 (en) | 2011-05-31 | 2013-07-30 | United Video Properties, Inc. | Systems and methods for generating media based on player action in an interactive video gaming environment |
US8657680B2 (en) | 2011-05-31 | 2014-02-25 | United Video Properties, Inc. | Systems and methods for transmitting media associated with a measure of quality based on level of game play in an interactive video gaming environment |
US9486698B2 (en) | 2011-05-31 | 2016-11-08 | Rovi Guides, Inc. | Systems and methods for transmitting media associated with a measure of quality based on level of game play in an interactive video gaming environment |
US20130005471A1 (en) * | 2011-06-28 | 2013-01-03 | United Video Properties, Inc. | Systems and methods for generating video hints for segments within an interactive video gaming environment |
US8628423B2 (en) * | 2011-06-28 | 2014-01-14 | United Video Properties, Inc. | Systems and methods for generating video hints for segments within an interactive video gaming environment |
US20140100040A1 (en) * | 2011-06-28 | 2014-04-10 | United Video Properties, Inc. | Systems and methods for generating video hints for segments within an interactive video gaming environment |
US9597600B2 (en) * | 2011-06-28 | 2017-03-21 | Rovi Guides, Inc. | Systems and methods for generating video hints for segments within an interactive video gaming environment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8417776B2 (en) | Online evidence collection | |
US8959202B2 (en) | Generating statistics of popular content | |
US8726355B2 (en) | Identity verification via selection of sensible output from recorded digital data | |
US20070289022A1 (en) | Apparatus and method for the protected distribution of electronic documents | |
US20080182665A1 (en) | Video game to web site upload utility | |
CN112468520B (en) | Data detection method, device and equipment and readable storage medium | |
CN109643319A (en) | The system and method for matching content for identification | |
US20130268679A1 (en) | Information processing apparatus, information processing method, and program | |
US20110099618A1 (en) | Single sign-on authentication | |
CN104364762A (en) | Systems and methods for controlling a local application through a web page | |
US20140020079A1 (en) | Method for providing network service and apparatus thereof | |
EP1947586A1 (en) | Data providing system, data receiving system, computer-readable recording medium storing data providing program, and computer-readable recording medium storing data receiving program | |
CN116432247A (en) | Infringement evidence method and device based on blockchain | |
CN101635715A (en) | Method and system for improving network application safety | |
CN108260015B (en) | Voting data processing method and device and electronic equipment | |
US20160277306A1 (en) | Data Stream Identifying Method and Device | |
CN107911381A (en) | Access method, system, server-side and the client of application programming interface | |
JP2017023348A (en) | Game system, score processing program, management device for game system and score processing method | |
CN114616795A (en) | Security mechanism for preventing retry or replay attacks | |
CN108650526B (en) | Identification method, computer equipment and storage medium | |
JP4740706B2 (en) | Fraud image detection apparatus, method, and program | |
US11233844B2 (en) | Distribution network providing customized content at delivery | |
CN104737121B (en) | Video playing is multiplexed and is demultiplexed in a browser | |
CN110866196A (en) | Printer network information acquisition method and device and electronic equipment | |
CN109698863A (en) | A kind of method, apparatus, equipment and the storage medium of determining HTTP message safety |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHARPS, MICHAEL;GRAF, JASON;CONN, ROBERT J., II;AND OTHERS;REEL/FRAME:018932/0920;SIGNING DATES FROM 20070125 TO 20070129 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034542/0001 Effective date: 20141014 |