Methods, systems, and media for aggregating and presenting content relevant to a particular video game

Information

  • Patent Grant
  • 12170821
  • Patent Number
    12,170,821
  • Date Filed
    Monday, December 5, 2022
    2 years ago
  • Date Issued
    Tuesday, December 17, 2024
    5 days ago
Abstract
Methods, systems, and media for aggregating and presenting content relevant to a particular video game. In some embodiments, the method comprises: identifying videos related to a video game; selecting videos relevant to each of a plurality of categories; selecting videos based on popularity; receiving a request to present a user interface related to the video game; determining user subscription information for a user associated with the request; selecting videos based on user subscription information; causing the user interface to be presented including representations of: videos relevant to a first category in a first portion, videos selected based on popularity in a second portion, and videos selected based on the user subscription information in a third portion; receiving a request to present a video selected via the user interface; and causing the user device to present the requested video.
Description
TECHNICAL FIELD

The disclosed subject matter relates to methods, systems, and media for aggregating and presenting content relevant to a particular video game.


BACKGROUND

The amount of content accessible to consumers interested in a particular subject has never greater. However, in order to find relevant content about a particular subject, the consumer typically performs a search, and then parses through the search results to find the content that they are interested in. If the consumer is interested in different types of content related to the same product, they often perform different searches, and either navigate away from their previous search results, or open a new user interface, which can make it difficult to look back at the previous results that may have been related to a different type of content.


Accordingly, it is desirable to provide methods, systems, and media for aggregating and presenting content relevant to a particular video game.


SUMMARY

In accordance with various embodiments of the disclosed subject matter, methods, systems, and media for aggregating and presenting content relevant to a particular video game are provided.


In accordance with some embodiments of the disclosed subject matter, a method for presenting videos related to a common subject is provided, the method comprising: identifying, using a hardware processor, from a corpus of videos related to a variety of subjects that are available from a video sharing platform, a plurality of videos related to a video game; selecting, for each of a plurality of categories, from the plurality of videos one or more videos relevant to that category; selecting from the plurality of videos one or more videos based on popularity of each of the plurality of videos; receiving a request from a user device to present a user interface including representations of videos related to the video game; determining user subscription information for a user associated with the user device, wherein the user subscription information indicates that the user has subscribed to content from other users of the video sharing platform and which of the other users the user has subscribed to; in response to receiving the request to present the user interface, selecting one or more of the plurality of videos based on the user subscription information; causing the user device to present the user interface having a plurality of portions including at least a first portion that includes representations of videos relevant to a first of the plurality of categories, a second portion that includes representations of videos selected based on popularity, and a third portion that includes representations of videos selected based on the user subscription information; receiving a request to present a video selected via the user interface; and causing the user device to present the requested video.


In accordance with some embodiments of the disclosed subject matter, a system for presenting videos related to a common subject is provided, the system comprising: a hardware processor that is programmed to: identify, from a corpus of videos related to a variety of subjects that are available from a video sharing platform, a plurality of videos related to a video game; select, for each of a plurality of categories, from the plurality of videos one or more videos relevant to that category; select from the plurality of videos one or more videos based on popularity of each of the plurality of videos; receive a request from a user device to present a user interface including representations of videos related to the video game; determine user subscription information for a user associated with the user device, wherein the user subscription information indicates that the user has subscribed to content from other users of the video sharing platform and which of the other users the user has subscribed to; in response to receiving the request to present the user interface, select one or more of the plurality of videos based on the user subscription information; cause the user device to present the user interface having a plurality of portions including at least a first portion that includes representations of videos relevant to a first of the plurality of categories, a second portion that includes representations of videos selected based on popularity, and a third portion that includes representations of videos selected based on the user subscription information; receive a request to present a video selected via the user interface; and cause the user device to present the requested video.


In accordance with some embodiments of the disclosed subject matter, a non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for presenting videos related to a common subject is provided, the method comprising: identifying, from a corpus of videos related to a variety of subjects that are available from a video sharing platform, a plurality of videos related to a video game; selecting, for each of a plurality of categories, from the plurality of videos one or more videos relevant to that category; selecting from the plurality of videos one or more videos based on popularity of each of the plurality of videos; receiving a request from a user device to present a user interface including representations of videos related to the video game; determining user subscription information for a user associated with the user device, wherein the user subscription information indicates that the user has subscribed to content from other users of the video sharing platform and which of the other users the user has subscribed to; in response to receiving the request to present the user interface, selecting one or more of the plurality of videos based on the user subscription information; causing the user device to present the user interface having a plurality of portions including at least a first portion that includes representations of videos relevant to a first of the plurality of categories, a second portion that includes representations of videos selected based on popularity, and a third portion that includes representations of videos selected based on the user subscription information; receiving a request to present a video selected via the user interface; and causing the user device to present the requested video.


In accordance with some embodiments of the disclosed subject matter, a system for presenting videos related to a common subject is provided, the system comprising: means for identifying, from a corpus of videos related to a variety of subjects that are available from a video sharing platform, a plurality of videos related to a video game; means for selecting, for each of a plurality of categories, from the plurality of videos one or more videos relevant to that category; means for selecting from the plurality of videos one or more videos based on popularity of each of the plurality of videos; means for receiving a request from a user device to present a user interface including representations of videos related to the video game; means for determining user subscription information for a user associated with the user device, wherein the user subscription information indicates that the user has subscribed to content from other users of the video sharing platform and which of the other users the user has subscribed to; means, response to the means for receiving the request to present the user interface, for selecting one or more of the plurality of videos based on the user subscription information; means for causing the user device to present the user interface having a plurality of portions including at least a first portion that includes representations of videos relevant to a first of the plurality of categories, a second portion that includes representations of videos selected based on popularity, and a third portion that includes representations of videos selected based on the user subscription information; means for receiving a request to present a video selected via the user interface; and means for causing the user device to present the requested video.


In some embodiments, the plurality of categories includes at least one of the following categories: videos that include a review of the video game; videos uploaded by a publisher of the game; and videos that are currently being live streamed.


In some embodiments, the interface includes metadata related to the video game including a title of the game and one or more images related to the video game.


In some embodiments, the user interface includes a fourth portion that includes videos relevant to a second of the plurality of categories, and the user interface includes a plurality of user interface elements each corresponding to one of the plurality of portions such that selection of the user interface element corresponding to a particular portion causes representations of videos included in that portion to be presented via the user interface.


In some embodiments, the user interface includes a fifth portion that includes representations of at least one video from each of the first through fourth portions.


In some embodiments, the plurality of user interface elements are presented as tabs over an area of the user interface in which representations of videos from a selected tab are presented.


In some embodiments, each video presented in the first portion that is associated with a category of the plurality of categories is presented in association with an icon identifying the category associated with that video.





BRIEF DESCRIPTION OF THE DRAWINGS

Various objects, features, and advantages of the disclosed subject matter can be more fully appreciated with reference to the following detailed description of the disclosed subject matter when considered in connection with the following drawings, in which like reference numerals identify like elements.



FIG. 1 shows an example of a generalized schematic diagram of a system on which the mechanisms for aggregating and presenting content relevant to a particular video game as described herein can be implemented in accordance with some embodiments.



FIG. 2 shows an example of hardware that can be used to implement one or more of the user devices and servers depicted in FIG. 1 in accordance with some embodiments of the disclosed subject matter.



FIG. 3 shows an example of a process for aggregating and presenting content relevant to a particular video game in accordance with some embodiments of the disclosed subject matter.



FIG. 4 shows an example of a process for generating instructions for causing a user interface to be presented that is relevant to a particular video game in accordance with some embodiments of the disclosed subject matter.



FIGS. 5A and 5B show examples of user interfaces for presenting content relevant to a particular video game in accordance with some embodiments of the disclosed subject matter.



FIG. 6 shows an example of a user interface for presenting content relevant to a particular video game on a mobile device in accordance with some embodiments of the disclosed subject matter.



FIG. 7 shows an example of a data flow that can be used in conjunction with the processes described in connection with FIGS. 3 and/or 4 for aggregating and presenting content relevant to a particular video game as described herein can be implemented in accordance with some embodiments.





DETAILED DESCRIPTION

In accordance with various embodiments, mechanisms (which can include methods, systems, and/or media) for aggregating and presenting content relevant to a particular video game are provided.


In some embodiments, the mechanisms described herein can associate videos that are available via a video hosting platform with one or more categories, keywords and/or video games. For example, when a video is uploaded, the mechanisms described herein can determine what type of video it is, such as a review of a video game, video of a video game being played, a music video, a live stream of a video being played, a promotional video from a publisher of a video game, a funny video about the video game, etc. As another example, the mechanisms described herein can determine keywords that are to be associated with the video, which can be used when searching for the video. As yet another example, the mechanisms described herein can determine which video game or video games (if any) the video is related to. In a more particular example, when a user uploads a video and inputs various data about the video, such as a title, description, and a video game to which the video is related, the mechanisms described herein can use the user inputted data, as well as any other suitable information (such as information extracted from the content of the video) to determine that the video is a review of the video game “Cones of Dunshire” released in 2013, and can associate various other categories and/or keywords with the video.


In some embodiments, the mechanisms described herein can generate user interfaces for each video game that is associated with one or more videos such that if a user is interested in videos related to that video game, the user can request the user interface for that video game and browse through various videos that the mechanisms described herein (and/or any other suitable mechanisms) have identified as being related to that particular game. In a more particular example, the mechanisms described herein can cause a user interface for the video game “Cones of Dunshire” to include the newly uploaded review video when the user interface is presented to a user.


In some embodiments, the user interface for a particular game can include various information about the game, artwork related to the game, and various portions with different types of videos that are all related to that game. For example, the user interface can include a portion for videos about that game that are currently popular. As another example, the user interface can include a portion for videos that include reviews of the video game. As yet another example, the user interface can include a portion for videos that include video of the game being played. As still another example, the user interface can include a portion for videos that have been uploaded by another user that the user being presented with the user interface subscribes to. In a more particular example, the mechanisms described herein can cause the video review for the video game “Cones of Dunshire” to be presented in a portion of the user interface devoted to reviews.



FIG. 1 shows an example 100 of a generalized schematic diagram of a system on which the mechanisms for aggregating and presenting content relevant to a particular video game as described herein can be implemented in accordance with some embodiments. As illustrated, system 100 can include one or more user devices 110. User devices 110 can be local to each other or remote from each other. User devices 110 can be connected by one or more communications links 108 to a communication network 106 that can be linked to a server 102 via a communications link 104.


System 100 can include one or more servers 102. Server 102 can be any suitable server or servers for providing access to the mechanisms described herein for aggregating and presenting content relevant to a particular video game, such as a hardware processor, a computer, a data processing device, or any suitable combination of such devices. For example, the mechanisms for aggregating and presenting content relevant to a particular video game can be distributed into multiple backend components and multiple frontend components and/or user interfaces. In a more particular example, backend components, such as: mechanisms for determining a likelihood that a video is relevant to one or more categories, keywords and/or video games; mechanisms for associating a video with one or more categories, keywords and/or video games; mechanisms for selecting videos to be represented in a user interface associated with a particular video game; mechanisms for receiving requests for media content; etc., can be performed on one or more servers 102. In another more particular example, frontend components, such as presentation of a user interface, initiating requests for a user interface associated with a particular video game, presenting the user interface, initiating requests for media content, etc., can be performed on one or more user devices 110.


In some embodiments, each of user devices 110 and server 102 can be any of a general purpose device such as a computer or a special purpose device such as a client, a server, etc. Any of these general or special purpose devices can include any suitable components such as a hardware processor (which can be a microprocessor, a digital signal processor, a controller, etc.), memory, communication interfaces, display controllers, input devices, etc. For example, user device 110 can be implemented as a smartphone, a tablet computer, a mobile telephone, a wearable computer, a personal computer, a laptop computer, a digital media receiver, a set-top box, a smart television, a home entertainment system, a game console, any other suitable computing device, or any suitable combination thereof.


Communications network 106 can be any suitable computer network or combination of such networks including the Internet, an intranet, a wide-area network (WAN), a local-area network (LAN), a wireless network, a Wi-Fi network, a digital subscriber line (DSL) network, a frame relay network, an asynchronous transfer mode (ATM) network, a virtual private network (VPN), an intranet, etc. Each of communications links 104 and 108 can be any communications links suitable for communicating data among user devices 110, and servers 102, such as network links, dial-up links, wireless links, hard-wired links, any other suitable communications links, or any suitable combination of such links. Note that, in some embodiments, multiple servers 102 can be used to provide access to different mechanisms associated with the mechanisms described herein for aggregating and presenting content relevant to a particular video game. For example, system 100 can include a media content discovery server 102 that facilitates discovery of media content available from a media content platform using the mechanisms described herein, a media content delivery server 102 that responds to requests for the media content by causing the video content to be presented by a user device, a user interface generation server 102 that creates instructions for presenting a user interface associated with a particular video game, and/or any other suitable servers for performing any suitable functions of the mechanisms described herein.



FIG. 2 shows an example 200 of hardware that can be used to implement one or more of user devices 110 and servers 102 depicted in FIG. 1 in accordance with some embodiments of the disclosed subject matter. Referring to FIG. 2, user device 110 can include a hardware processor 212, a display 214, an input device 216, and memory 218, which can be interconnected. In some embodiments, memory 218 can include a storage device (such as a non-transitory computer-readable medium) for storing a computer program for controlling hardware processor 212.


Hardware processor 212 can use the computer program to execute the mechanisms described herein for initiating requests for a user interface associated with a particular video game, presenting the user interface, initiating requests for media content via the user interface, and/or to perform any other suitable functions in accordance with instructions received as a result of, for example, process 300 described below in connection with FIG. 3 and/or process 400 described below in connection with FIG. 4, and/or to send and receive data through communications link 108. In some embodiments, hardware processor 212 can send and receive data through communications link 108 or any other communications links using, for example, a transmitter, a receiver, a transmitter/receiver, a transceiver, and/or any other suitable communication device. Display 214 can include a touchscreen, a flat panel display, a cathode ray tube display, a projector, a speaker or speakers, and/or any other suitable display and/or presentation devices. Input device 216 can be a computer keyboard, a computer mouse, a touchpad, a voice recognition circuit, a touchscreen, and/or any other suitable input device.


Server 102 can include a hardware processor 222, a display 224, an input device 226, and memory 228, which can be interconnected. In some embodiments, memory 228 can include a storage device for storing data received through communications link 104 or through other links. The storage device can further include a server program for controlling hardware processor 222. In some embodiments, memory 228 can include information stored as a result of user activity (e.g., metadata input by a user, sharing of content by users, requests for content associated with users, etc.), and hardware processor 222 can receive requests to present a user interface associated with a particular video game from user devices 110. In some embodiments, the server program can cause hardware processor 222 to, for example, execute at least a portion of process 300 as described below in connection with FIG. 3, process 400 as described below in connection with FIG. 4 and/or processes describe in connection with FIG. 7.


Hardware processor 222 can use the server program to communicate with user devices 110 as well as provide access to and/or copies of the mechanisms described herein. It should also be noted that data received through communications link 104 or any other communications links can be received from any suitable source. In some embodiments, hardware processor 222 can send and receive data through communications link 104 or any other communications links using, for example, a transmitter, a receiver, a transmitter/receiver, a transceiver, and/or any other suitable communication device. In some embodiments, hardware processor 222 can receive commands and/or values transmitted by one or more user devices 110 and/or one or more users of server 102, such as a user that makes changes to adjust settings associated with the mechanisms described herein for aggregating and presenting content relevant to a particular video game. Display 224 can include a touchscreen, a flat panel display, a cathode ray tube display, a projector, a speaker or speakers, and/or any other suitable display and/or presentation devices. Input device 226 can be a computer keyboard, a computer mouse, a touchpad, a voice recognition circuit, a touchscreen, and/or any other suitable input device.


In some embodiments, server 102 can be implemented in one server or can be distributed as any suitable number of servers. For example, multiple servers 102 can be implemented in various locations to increase reliability and/or increase the speed at which the server can communicate with user devices 110. Additionally or alternatively, as described above in connection with FIG. 1, multiple servers 102 can be implemented to perform different tasks associated with the mechanisms described herein.


Turning to FIG. 3, an example 300 of a process for aggregating and presenting content relevant to a particular video game is shown in accordance with some embodiments of the disclosed subject matter. At 302, process 300 can receive and/or select a video to be classified as being relevant to one or more categories, keywords and/or video games. In some embodiments, process 300 can use any suitable technique or combination of techniques to receive and/or select a video to be classified. For example, process 300 can receive a video to be classified when that video is uploaded and/or shared to a media content platform such as a video hosting and/or sharing platform. As another example, process 300 can select a video to be classified from all videos or a subset of videos available from a video hosting and/or sharing platform.


In some embodiments, process 300 can select a video to be classified based on an amount of time that has passed since the video has been previously classified. For example, in some embodiments, when a video is initially uploaded (and/or shared) to a video hosting and/or sharing platform, process 300 can initially classify the video. In such an example, process 300 can select the video to be classified after a threshold period of time has elapsed since the video was initially classified, and can perform an updated classification on the selected video.


In some embodiments, process 300 can select a video to be classified based on a number of times that the video has been requested for presentation since the video has been previously classified. For example, in some embodiments, when a video is initially uploaded (and/or shared) to a video hosting and/or sharing platform, process 300 can initially classify the video. In such an example, process 300 can select the video to be classified after the video has been requested at least a predetermined number of times since the video was initially classified, and can perform an updated classification on the selected video.


In some embodiments, process 300 can update the classification of a particular video any suitable number of times and in response to any suitable factors. For example, process 300 can periodically update the classification for all videos based on available computing resources of a server or servers (e.g., server 102) executing process 300.


Note that, although the mechanisms described herein are generally described in connection with videos related to particular video games, the mechanisms described herein can be used with any suitable types of media content (e.g., text documents, audio, video, etc.) related to any particular media content item of any suitable type (e.g., a video game or a series of video games, a movie or a series of movies, a book or a series of books, a television series, a song, a collection of songs, etc.) and/or a collection of different types of media content items related to a single subject (e.g., movies and comic books about the same characters, books and television series about the same stories, etc.). Additionally, the mechanisms described herein can be used with any type of product and/or service that is not necessarily a type of media content, such as restaurants, consumer electronics, etc.


At 304, process 300 can identify information that is to be used in associating the video with one or more categories, keywords and/or video games. In some embodiments, process 300 can identify any suitable information to be used in associating the video with one or more categories, keywords and/or video games. For example, process 300 can identify metadata that was input by a user (e.g., a user that uploaded the video, a user that requested that the video be presented, etc.) as information that is to be used in associating the video with one or more categories, keywords and/or video games. As another example, process 300 can identify metadata associated with the video that may not have been input by a user, such as closed captioning information (which may have been automatically generated), metadata generated using one or more image analysis techniques to analyze the image content of the video, etc.


As yet another example, process 300 can identify information related to other videos that are often requested by and presented to users that also requested and were presented with the selected video. In such an example, the context in which the other videos and the selected video were requested and/or presented can also be identified. In a more particular example, if a user entered a search for a particular video game and watched another video that has been classified as relating to that game, and also watched the selected video, process 300 can identify this context as information that is to be used in associating the selected video with one or more categories, keywords and/or video games.


As still another example, process 300 can identify information related to other videos that are in a playlist of videos with the video received and/or selected at 302. In a more particular example, process 300 can identify whether the received and/or selected video is included in any playlists, and can identify information related to the other videos in those playlists.


At 306, process 300 can determine, based on the information identified at 304, a likelihood that the video is relevant to each of one or more categories, keywords and/or video games. Process 300 can use any suitable technique of combination of techniques to determine a likelihood that the video is relevant to each of the one or more categories, keywords and/or video games. For example, process 300 can use a trained classification model to determine a category or categories to which the video is likely to be relevant, and a likelihood or confidence associated with the determination. Similarly, in such an example, process 300 can use the same or a different trained classification model to determine a keyword or keywords to which the video is likely to be relevant, and/or to which video game or video games the video is likely to be relevant.


In some embodiments, a trained classification model can be trained using any suitable techniques, which can include presenting a video to a human oracle and requesting that the human oracle classify the video as being relevant to one or more categories, keywords and/or video games, presenting the video to the human oracle and requesting that the human oracle determine whether a classification by the trained classification model was made correctly, etc.


As another example, process 300 can use any other suitable technique to automatically and/or manually determine, based on the information identified at 304, a likelihood that the video is relevant to each of one or more categories, keywords and/or video games.


In some embodiments, process 300 can determine a likelihood that the video is relevant to any suitable categories such as music videos, comedy videos, movies, videos relevant to video games, etc. In some embodiments, process 300 can determine a likelihood that the received and/or selected video is relevant to each category and/or a subset of all categories (where the subset can be selected using any suitable technique or combination of techniques). Additionally, in some embodiments, process 300 can determine a likelihood that the video is relevant to any suitable sub-categories which are related to a broader category. For example, process 300 can determine the likelihood that the video is relevant to a video game category, and can also determine the likelihood that the video includes a review of a video game, game play of a video game, etc.


In some embodiments, process 300 can determine a likelihood that the contents of the video and/or metadata associated with the video is spam. If process 300 determines that the likelihood that the video is spam is over a threshold likelihood, process 300 can use this information to reduce the visibility of the video (e.g., make the video appear further down in lists of videos and/or search results than it otherwise would) and/or inhibit other classifications of the video (e.g., use the designation as spam to inhibit the designation that the video is relevant to a particular video game). Additionally, in some embodiments, process 300 can inform a user that uploaded the video that the video has been designated as spam and give that user feedback as to why the video was designated as spam.


In some embodiments, the categories for which process 300 makes a likelihood determination can include any suitable categories that are potentially relevant to all types of videos, such as live streaming content, review content, promotional content, interview content, etc. Additionally, in some embodiments, the categories for which process 300 makes a likelihood determination can include categories that are specific to games, such as game play videos, walkthroughs, hint videos, complete play through videos (e.g., a playlist of videos showing a relatively complete play of a game from beginning to an ending point), speed runs, etc.


In some embodiments, process 300 can determine that the likelihood that the video is promotional content from a publisher of a video game is relatively high if the video is determined to be related to a game from the published and the video was uploaded from an account that has been verified to be associated with the published.


In some embodiments, process 300 can determine a likelihood that the video is relevant to any suitable keywords which can identify people and/or characters in the video, a subject of the video, topics that are discussed or referenced in the video, a title of the video, and/or any other suitable keywords that may be relevant to the video. As another example, a keyword can be relevant to a video if the keyword is a term that a user searching for the video might enter in a search query. In some embodiments, process 300 can select the keywords for which a likelihood is to be determined using any suitable technique or combination of techniques.


In some embodiments, process 300 can determine the likelihood that the video is relevant to a particular video game or video games from a collection of video games. Such a collection of video games can be identified and/or constructed using any suitable technique or combination of techniques. In some embodiments, process 300 can determine a likelihood that the received and/or selected video is relevant to each video game of the collection and/or a subset of all video games of the collection (where the subset can be selected using any suitable technique or combination of techniques).


In some embodiments, in addition to determining the likelihood that a particular received and/or selected video is relevant to one or more categories, keywords and/or video games, process 300 can determine a likelihood that a group of multiple videos (e.g., videos in a playlist) is relevant to one or more categories, keywords and/or video games.


At 308, process 300 can associate the video received and/or selected at 302 with one or more categories, keywords and/or video games for which the likelihood that the video is relevant to those one or more categories, keywords and/or video games is over a threshold. In some embodiments, process 300 can use any suitable threshold in determining which categories, keywords and/or video games to which the video game is relevant. For example, if process 300 determines that it is more likely than not that the video is relevant to a particular category, process 300 can associate that category with the video. As another example, if process 300 determines that the video is relevant to a particular video game with ninety percent confidence, process 300 can associate the video with that video game. Note that the threshold likelihoods and/or confidence values are merely given as examples and any suitable threshold likelihoods and/or confidence values can be used in connection with the mechanisms described herein.


In some embodiments, process 300 can use different thresholds for different types of classifications, and/or different types of categories and/or keywords. For example, process 300 can determine which category or categories are to be associated with the video based on a lower threshold level of likelihood than when determining which video game is to be associated with the video (if any).


In some embodiments, process 300 can associate the video with a single video game to the exclusion of other video games to which the video may be relevant. For example, if process 300 determines that the likelihood that video is relevant to multiple video games over a threshold likelihood for each of the games, process 300 can nevertheless select a single video game to associate with the video. In some embodiments, process 300 can select the video game for which the video has the highest likelihood of being relevant.


At 310, process 300 can generate instructions for causing a user device to present a user interface for a particular video game, including at least a portion of videos associated with the video game. In some embodiments, process 300 can generate the instructions and/or a portion of the instructions at any suitable time and/or using any suitable technique or combination of techniques. For example, process 300 can generate the instructions in response to one or more videos initially being associated with a video game to which the user interface corresponds. As another example, process 300 can generate and/or update the instructions at regular and/or irregular intervals based on current classifications of videos that have been associated with one or more categories, keywords and/or video games at 308. In a more particular example, process 300 can generate updated instructions each time a video is newly associated with the video game to which the user interface corresponds. In another more particular example, process 300 can generate updated instruction each time the user interface is requested for presentation.


Additionally, in some embodiments, the user interface can include any suitable content and user interface elements, and/or can be arranged in any suitable configuration. For example, as described below in connection with FIGS. 5A, 5B and 6, the user interface can include metadata about the video game corresponding to the user interface and representations of one or more of the videos that have been associated with the video game.



FIG. 4 shows an example 400 of a process for generating instructions for causing a user interface to be presented that is relevant to a particular video game in accordance with some embodiments of the disclosed subject matter. In some embodiments, one or more portions of process 400 can be executed in connection with 310 described above in connection with FIG. 3. As shown in FIG. 4, process 400 can receive a request to present a user interface associated with a particular video game. Additionally, in some embodiments, the request can be received from a user device associated with a particular user (e.g., a user that has logged in to a service that provides that user interface). In some embodiments, process 400 can use any suitable technique or combination of techniques to receive the request and the request can be received at any suitable time.


At 404, process 400 can identify videos that are associated with the video game based on metadata related to videos that can potentially be presented using the requested user interface. In some embodiments, process 400 can identify videos associated with the video game at any suitable time and/or using any suitable technique or combination of techniques. For example, in some embodiments, process 400 can identify videos associated with the video game at regular and/or irregular intervals. In such an example, process 400 can identify videos associated with the video game at times that are unrelated to receiving requests for the user interface that is to be used to present representations of videos associated with the video game (e.g., not in response to the request received at 402). As another example, process 400 can identify videos associated with the video game in response to receiving the request to present the user interface associated with the video game at 402.


In some embodiments, another process (e.g., process 300) can associate videos with particular video games, and identifying videos associated with the video game can include querying a database for identifying information of videos that have been associated with the video game.


At 406, process 400 can determine if one or more of the videos identified at 404 is relevant to the user associated with the user device from which the request was received at 402. In some embodiments, process 400 can determine that a video is relevant to a user based on any suitable factor or combination of factors. For example, process 400 can determine that a particular video is relevant to the user if the user subscribes to videos from a user that uploaded the video (e.g., that the user subscribes to a channel on which the video has been uploaded). As another example, process 400 can determine that a particular video is relevant to the user if the video has been requested and/or enjoyed by a group of other users that watch and/or enjoy similar videos as the user. As yet another example, process 400 can determine that a particular video is relevant to the user if that video has been shared with the user (e.g., by another user that is a social connection of the requesting user), but not yet requested by the user and/or not presented for at least a threshold amount of time to the user.


If process 400 determines that one or more of the videos identified at 404 are relevant to the requesting user (“YES” at 406), process 400 can proceed to 408. At 408, process 400 can select one or more of the identified videos that are relevant to the user as videos that are to be represented in the user interface. Process 400 can use any suitable technique or combination of techniques to determine which of the videos relevant to the user to select for representation in the user interface. For example, process 400 can select the most recent videos that are relevant to the user. As another example, process 400 can select videos that have been determined (using any suitable process) to be videos that the user is likely to enjoy. As yet another example, process 400 can select videos based on the overall popularity of the videos.


Otherwise, if process 400 determines that none of the videos identified at 404 are relevant to the requesting user (“NO” at 406), process 400 can proceed to 410. At 410, process 400 can select one or more of the identified videos corresponding to each of a particular group of categories that are to be included in the user interface. As described above in connection with 408, process 400 can use any suitable technique or combination of techniques to select videos corresponding to each category, such as the most popular videos corresponding to those categories, the most recent videos corresponding to those categories, the videos corresponding to that category that are most likely to be relevant to that category, etc.


In some embodiments, the categories for which videos are selected can include any suitable categories that may be particularly relevant to video games (or whatever the topic is that the user interface represents). For example, the categories can include a category corresponding to videos that include a review of the video game (i.e., review videos). As yet another example, the categories can include a category corresponding to videos (e.g., game play videos) or groups of videos (e.g., let's play videos) that include game play from a portion of the game and/or a play through of the game. As still another example, the categories can include a category corresponding to impressive play through at least a portion of the game (e.g., speed runs, etc.). As a further example, the categories can include categories corresponding to commentary, interviews, music, etc., related to the game. As a still further example, the categories can include a category corresponding to live streamed content related to the game.


At 412, process 400 can select one or more of the identified videos based on the overall and/or trending popularity of the videos that are to be included in the user interface. In some embodiments, process 400 can select popular videos using any suitable technique or combination of techniques to determine which of the identified videos are more popular. For example, in some embodiments, process 400 can determine which of the identified videos are popular videos based on which videos have been requested the most times in any suitable period of time (e.g., up to and including since the service providing the video began operation). As another example, process 400 can determine which of the identified videos are popular videos based on which videos have received the most indications that the users requesting the video enjoyed it (e.g., videos that had the most “likes,” “thumbs ups,” “plusses,” etc.).


In some embodiments, the popular videos can be selected from videos that were not selected at 408 and/or 410. Alternatively, the popular videos can be selected from all identified videos, and the videos selected at 408 and/or 410 can be selected from among videos that were not selected at 412. As another alternative, selection of videos at 408, 410 and 412 can be partially or completely independent such that the same video may be selected at 408, 410 and 412 as being a video that is relevant to the user, a video that corresponds to a particular category, and a popular video, respectively.


In some embodiments, the number of videos that are selected at 408 from among videos relevant to the user, at 410 for each category, and/or at 412 based on popularity can be determined based on any suitable factor or factors. For example, the number can be set by a user (e.g., an administrator or programmer associated with process 400, a user selection via the user interface, etc.). As another example, the number can be determined based on a total number of videos related to the game. As yet another example, the selection of videos can include determining an order in which representations of the videos are to be presented in the user interface, and may not limit how many videos are presented in the user interface. In such an example, representations of all videos meeting certain criteria can be presented for browsing in the user interface upon navigation through the user interface (e.g., by scrolling, etc.).


Note that, in some embodiments, in addition to or in lieu of selecting videos at 408, 410 and/or 412, process 400 can select playlists of videos. Additionally, although process 400 is described in connection with videos, as described above, any suitable media content or combinations of types of media content can be selected using process 400 that is relevant to any suitable product or topic (e.g., not only video games).


At 414, process 400 can cause the user device that requested the user interface to present the user interface, including representations of the selected videos. In some embodiments, process 400 can cause the user interface to be presented using any suitable technique or combination of techniques. For example, process 400 can respond to the request to present the user interface with instructions (e.g., HTML code) that cause the user device to present a web page that includes the user interface. As another example, process 400 can provide identifying information that is to be used to populate a user interface with representations of videos selected using process 400. In such an example, the user device can present graphics associated with the user interface based on instructions that were received from another source, and can retrieve metadata for videos that are to be included in the user interface based on the received identifying information. In such an example, the graphics associated with the user interface can be a web page that was loaded by a web browser executing on the user device based on instructions received via a process other than process 400. Additionally or alternatively, the graphics associated with the user interface can be loaded by an application executing on the user device that can be used to browse for and/or present videos related to video games in accordance with the mechanisms described herein. Such an application can include instructions received from a server that are stored in memory and/or storage of the user device, and the user interface can be populated with representations of videos and/or other user interface elements based on the identifying information of videos provided by process 400.


Note that, in some embodiments, one or more portions of user interface 400 (e.g., 404, 410 and 412) can be executed at any suitable time (e.g., at regular and/or irregular intervals) as a background process and/or can be used to select videos for the user interface across a particular group of users (e.g., all users, users in a particular country or region, users that use a particular language, etc.). Additionally, in some embodiments, one or more portions of user interface 400 (e.g., 402, 406, 408 and 414) can be executed in response to communications from a user device.



FIG. 5A shows an example 500 of a user interface for presenting content relevant to a particular video game in accordance with some embodiments of the disclosed subject matter. As shown in FIG. 5A, user interface 500 can include metadata 502 related to the game such as a title (e.g., “Cones of Dunshire”), a release data (e.g., “2013”), cover art from the game, other image data related to the game (e.g., as a background for metadata 502), etc.


In some embodiments, user interface 500 can include a user interface element 504 that can be used to add or remove the game from a group of games that a user that is logged in has added to a list of favorites and/or games that they are interested in. In some embodiments, user interface 500 can include user interface elements 506 which can be tabs that each represent a different portion of user interface 500 which can be used to access and/or navigate to different portions of user interface 500. For example, as shown in FIG. 5, user interface 500 can include in tabs 506 a tab for “About” which can include further information about the game to which the user interface corresponds. As another example, user interface 500 can include in tabs 506 a tab for “All” which can include selected videos from other tabs. In such an example, the “All” tab may include videos from any or all of the other tabs and can include any suitable number of videos. As shown in FIG. 5A, the “All” tab is currently selected and presenting representations of videos that can be selected for presentation to a user that are each represented by video identifying information 508. As yet another example, user interface 500 can include any other suitable tabs in tabs 506, such as a tab for “Live” content (e.g., livestreaming content related to “Cones of Dunshire”), a tab for “Reviews” (e.g., videos that include a review of “Cones of Dunshire”), a tab for “Game Play” videos (e.g., videos that include game play such as a “let's play” playlist, a speed run, and/or any other game play that may not be a review of the game), a tab for videos “From the Publisher” (e.g., videos that were uploaded by an account associated with the publisher of “Cones of Dunshire”), a “Personalized” tab (e.g., videos that are relevant to the user, such as videos selected as described above in connection with 408 of FIG. 4).


In some embodiments, user interface 500 can include one or more videos represented by video identifying information 508. Such video identifying information can include any suitable information, such as video metadata (e.g., title, a screenshot representing the video, run time, number of videos for a playlist of videos, etc.), an icon 510 representing an uploader and/or channel associated with the video, and an icon 512 indicating a category with which the video is associated. The category represented by category icon 512 can, for example, represent whether the video is a popular video, a live video, a review, a gameplay video, etc. Note that, in some embodiments, a particular video may not be associated with a category icon 512. For example, category icons 512 can be restricted to a certain subset of categories and videos not associated with one of those categories may not include a category icon in video identifying information 508.


In some embodiments, user interface 500 can include one or more game icons 514 that can each represent a video game which the user has previously added to the user's games (e.g., using user interface element 504 to add the game). Any suitable number of game icons 514 can be shown, and an order in which game icons 514 are presented can be determined using any suitable technique or combination of techniques. In some embodiments, selection of a particular game icon 514 can cause a user interface for that game to be presented by a user device presenting user interface 500.


In some embodiments, user interface 500 can include one or more channel icons 516 that can each represent a channel to which the user has subscribed. Any suitable number of channel icons 516 can be shown, and an order in which channel icons 516 are presented can be determined using any suitable technique or combination of techniques. In some embodiments, selection of a particular channel icon 516 can cause a user interface for that channel to be presented by a user device presenting user interface 500.



FIG. 5B shows an example 550 of the user interface for presenting content relevant to a particular video game in accordance with some embodiments of the disclosed subject matter. As shown in FIG. 5B, the “Personalized” tab in tabs 506 has been selected, and the videos represented via video identifying information 508 have been changed to reflect videos that were selected based on relevance to a user (e.g., as described above in connection with 408 of FIG. 4).



FIG. 6 shows an example 600 of a user interface for presenting content relevant to a particular video game on a mobile device in accordance with some embodiments of the disclosed subject matter. As shown in FIG. 6, user interface 600 can include metadata 602 related to the game, which can include similar information to what is included in metadata 502 described above in connection with FIG. 5A, but formatted for a screen associated with user device 110.


In some embodiments, user interface 600 can include a user interface element 604 that can be used to add or remove the game from a group of games that a user that is logged in has added to a list of favorites and/or games that they are interested in. In some embodiments, user interface 600 can include user interface elements 606 which can be tabs that are similar to tabs 506 described above in connection with FIG. 5A, but formatted for operation using one or more input devices of user device 110 and/or formatted for the screen of user device 110.


In some embodiments, user interface 600 can include one or more videos represented by video identifying information 608, which can be similar to video identifying information 508 described above in connection with FIG. 5A, but formatted for the smaller screen size of user device 110. Similarly, user interface 600 can include, in some embodiments, an icon 612 indicating a category with which a video is associated, which can be similar to icon 512 described above in connection with FIG. 5A.



FIG. 7 shows an example 700 of a data flow that can be used in conjunction with the processes described above in connection with FIGS. 3 and/or 4 for aggregating and presenting content relevant to a particular video game as described herein can be implemented in accordance with some embodiments. At 702, a first user device 110-1 can upload a video related to a particular video game to a server or servers 102 associated with a video hosting and/or sharing service. In some embodiments, the video can be uploaded using any suitable technique or combination of techniques and using any suitable user interface.


At 704, user device 110-1 can receiver user input specifying video metadata associated with the video, which can include any suitable user identified information related to the video. For example, the video metadata specified by user input at 704 can include tags identifying things that the video may be relevant to, a title, descriptive information which may be input as narrative format, an indication of which video game or video games the video is related to (which may be chosen from a prefilled list or other predefined set of video games), and/or any other suitable metadata. In such an example, a user may be restricted to specifying a single video game to which the video is relevant.


At 706, server 102 can receive the uploaded video and/or the video metadata input to user device 110-1. In some embodiments, server 102 can receive the uploaded video and/or video metadata using any suitable technique or combination of techniques.


At 708, server 102 can associate the video with one or more categories, keywords and/or video games based on the received metadata and/or any other suitable information. For example, server 102 can use at least a portion of process 300 described above in connection with FIG. 3 to associate the video with one or more categories, keywords and/or video games.


At 710, a second user device 110-2 can request a user interface that includes videos that are related to the video game. In some embodiments, second user device 110-2 can cause such a request to be submitted to server 102 using any suitable technique such as by requesting content from a particular uniform resource locator (URL) using a web browser, requesting content associated with a particular video game using an application for presenting such content, etc.


At 712, server 102 can generate a user interface that is to be presented by user device 110-2 that requested videos related to the video game, and can cause the user interface to be presented by user device 110-2. In some embodiments, server 102 can generate the user interface and/or cause the user interface to be presented by user device 110-2, such as techniques described above in connection with 310 and/or 414 in connection with FIGS. 3 and 4, respectively.


At 714, user device 110-2 can present the user interface based on instructions and/or other information (e.g., identifying information for videos that are to be used to populate the user interface) received from server 102 in response to the request to present the user interface at 702. User device 110-2 can use any suitable application and technique or combination of techniques to present the user interface at 714, and can present any suitable user interface (e.g., user interface 500 or 600 described above in connection with FIGS. 6 and 7).


At 716, user device 110-2 can receive user input (e.g., via an input device such as a mouse, keyboard, touch screen, etc.) to request that a particular video represented in the user interface be presented by user device 110-2. For example, user device 110-2 can receive user input selecting identifying information of a video (e.g., video identifying information 508 or 608).


At 718, user device 110-2 can request presentation of the video selected at 716. In some embodiments, user device 110-2 can request presentation of the video using any suitable technique or combination of techniques.


At 720, server 102 can receive the request to present the selected video via the user interface, and at 722 can cause the video to be presented by user device 110-2 that requested presentation of the video. In some embodiments, server 102 can use any suitable technique or combination of techniques to receive the request for the video and/or to cause the video to be presented by user device 110-2.


At 724, user device 110-2 can present the requested video using any suitable user interface and/or at any suitable size. For example, user device 110-2 can present the video within the user interface used to present representations of the videos related to the video game. As another example, user device 110-2 can present the video in a new window and/or new tab that is used to present the video. As yet another example, user device 110-2 can navigate to a web page or other suitable user interface associated with the video and can present the video using that user interface. As still another example, user device 110-2 can present the video in a “full screen” mode in which the video takes up an entire screen and may be presented in lieu of another user interface.


In some embodiments, user device 110-2 can send feedback to server 102 in connection with presentation of the video by user device 110-2 at 724. Such feedback can include passive information such as how much of the video was presented or active information such as user input received by the user interface associated with presentation of the video indicating that the user enjoyed the content.


At 726, server 102 can receive feedback related to presentation of the video (and/or presentation of any other suitable videos). As described above, this feedback can include how much of the video was presented by a user device, as well as user input received at the user device indicating that the user enjoyed or did not enjoy the video, a user request to share the video with others (e.g., by sending a link, by posting the video to a social network, etc.), user input indicating that the video is incorrectly classified (e.g., that the video was associated with the wrong game), and/or any other suitable feedback.


At 728, server 102 can update the association of the one or more categories, keywords and/or video games based on the feedback related to presentation of the video. For example, server 102 can update the associations as described above in connection with FIG. 3.


In some embodiments, the mechanisms described herein can include server-side software, client-side software, server-side hardware, client-side hardware, firmware, or any suitable combination thereof. For example, these mechanisms can encompass one or more web pages or web page portions (e.g., via any suitable encoding, such as Hyper Text Markup Language (“HTML”), Dynamic Hyper Text Markup Language (“DHTML”), Extensible Markup Language (“XML”), JavaServer Pages (“JSP”), Active Server Pages (“ASP”), Cold Fusion, or any other suitable approaches). As another example, these mechanisms can encompass a computer program that causes a processor (such as hardware processor 112 and/or hardware processor 122) to execute the mechanisms described herein. For instance, these mechanisms can encompass a computer program written in a programming language recognizable by user device 110, and/or server 102 that is executing the mechanisms (e.g., a program written in a programming language, such as, Java, C, Objective-C, C++, C#, JavaScript, Visual Basic, HTML, XML, ColdFusion, any other suitable approaches, or any suitable combination thereof).


In situations in which the mechanisms described herein collect personal information about users, or can make use of personal information, the users can be provided with an opportunity to control whether programs or features collect user information (e.g., information about user actions stored on a user device 110, information about user actions stored on a remote device such as server 102, etc.), or to control whether and/or how to receive messages for promoting content. In addition, certain data can be treated in one or more ways before it is stored or used, so that personal information is removed. For example, a user's identity can be treated so that no personal information can be determined for the user, or a user's geographic location can be generalized where location information is obtained (such as to a city, ZIP code, or state level), so that a particular location of a user cannot be determined. Thus, the user can have control over how information is collected about the user and used by a content server.


In some embodiments, any suitable computer readable media can be used for storing instructions for performing the functions and/or processes described herein. For example, in some embodiments, computer readable media can be transitory or non-transitory. For example, non-transitory computer readable media can include media such as magnetic media (such as hard disks, floppy disks, etc.), optical media (such as compact discs, digital video discs, Blu-ray discs, etc.), semiconductor media (such as flash memory, electrically programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), etc.), any suitable media that is not fleeting or devoid of any semblance of permanence during transmission, and/or any suitable tangible media. As another example, transitory computer readable media can include signals on networks, in wires, conductors, optical fibers, circuits, any suitable media that is fleeting and devoid of any semblance of permanence during transmission, and/or any suitable intangible media.


In some embodiments of the disclosed subject matter, the above described steps of the processes of FIGS. 3, 4 and 7 can be executed or performed in any order or sequence not limited to the order and sequence shown and described in the figures. Also, some of the above steps of the processes of FIGS. 3, 4 and 7 can be executed or performed substantially simultaneously where appropriate or in parallel to reduce latency and processing times. Furthermore, it should be noted that FIGS. 3, 4 and 7 are provided as examples only. At least some of the steps shown in these figures may be performed in a different order than represented, performed concurrently, or omitted.


The provision of the examples described herein (as well as clauses phrased as “such as,” “e.g.,” “including,” and the like) should not be interpreted as limiting the claimed subject matter to the specific examples; rather, the examples are intended to illustrate only some of many possible aspects. It should also be noted that, as used herein, the term mechanism can encompass hardware, software, firmware, or any suitable combination thereof.


Accordingly, methods, systems, and media for aggregating and presenting content relevant to a particular video game are provided.


Although the invention has been described and illustrated in the foregoing illustrative embodiments, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the details of implementation of the invention can be made without departing from the spirit and scope of the invention, which is limited only by the claims that follow. Features of the disclosed embodiments can be combined and rearranged in various ways.

Claims
  • 1. A method comprising: receiving, using a hardware processor associated with a video sharing service, a plurality of videos;identifying, using the hardware processor, a first subset of videos from the plurality of videos that corresponds to livestream videos that are currently being live streamed;identifying, using the hardware processor, a second subset of videos from the plurality of videos that a plurality of users of the video sharing service watched subsequent to performing searches for a plurality of video games, wherein each video in the second subset of videos is associated with one or more categories of game play from a plurality of categories of game play, and wherein the plurality of categories of game play includes at least a category corresponding to speed runs of the plurality of video games and a category corresponding to complete play throughs of the plurality of video games;determining, using the hardware processor and for each given livestream video included in the first subset of videos, a respective video game of the plurality of video games corresponding to the given livestream video and a respective category of gameplay of the plurality of categories of game play corresponding to the given livestream video; andcausing, using the hardware processor, a user interface having a plurality of portions including at least a first portion and a second portion to be presented, wherein the first portion includes representations of one or more of the livestream videos included in the first subset of videos that are associated with a particular video game of the plurality of video games and a particular category of game play of the plurality of categories of game play and the second portion includes representations of one or more of the videos included in the second subset of videos that are associated with the same particular video game and the same particular category of game play as the one or more livestream videos included in the first portion, andwherein the user interface allows a user of a user device to select user interface elements to switch between the first portion, the second portion, and other portions from the plurality of portions.
  • 2. The method of claim 1, wherein determining the respective video game and the respective category of corresponding to each given livestream video included in the first subset of videos includes: determining, using the hardware processor, a likelihood that the given livestream video is relevant to a given video game from the plurality of video games based on identifying that one or more particular videos from the second subset of videos were watched by one or more of the plurality of users: subsequent to performing one or more of the searches for the given video game, andprior to watching the given livestream video.
  • 3. The method of claim 2, wherein determining the respective video game and the respective category of game play corresponding to each given livestream video included in the first subset of videos further includes: associating, using the hardware processor, the given livestream video with the respective video game and the respective category of game play based on the determined likelihood.
  • 4. The method of claim 1, wherein the method further comprises: receiving a request to present a particular video from the one or more livestream videos included in the first portion of the user interface or the one or more videos included in the second portion of the user interface in response to a user selection via the user interface; andcausing the user device to present the particular video in response to receiving the request to present the particular video selected via the user interface for the video game.
  • 5. The method of claim 1, wherein the method further comprises: receiving a corpus of videos related to a variety of subjects that are available from the video sharing service; andclassifying the corpus of videos related to the variety of subjects that are available from the video sharing platform to identify particular keywords that can be used for searching for one or more videos from the corpus of videos and which particular video game from the plurality of video games is associated with the one or more videos from the corpus of videos, wherein at least one video from the second subset of videos is identified further based on being included in a different video playlist of videos classified as associated with the particular video game.
  • 6. The method of claim 5, wherein the method further comprises selecting, from the plurality of videos, a third subset of popular videos that includes one or more videos based on popularity of each of the plurality of videos, wherein the popularity of each given video of the plurality of videos corresponds to a number of requesting users from the plurality of users that provided an indication of enjoying the given video.
  • 7. The method of claim 1, wherein the method further comprises: receiving a request from the user device to present the user interface including the representations of the livestream videos related to the particular video game and the representations of the videos from the second subset related to the particular video game; anddetermining particular videos from the plurality of videos that are relevant to the user device from which the request was received based on user subscription information for a user associated with the user device, wherein the user subscription information indicates that the user has subscribed to a plurality of channels on which each of the particular videos has been uploaded, wherein each of the plurality of channels contains a collection of user-selected video content associated with other users from the plurality of users of the video sharing platform.
  • 8. The method of claim 7, wherein the method further comprises: in response to receiving the request to present the user interface, selecting a third subset of videos from the plurality of videos that includes one or more of the particular videos based on the user subscription information; andcausing the user device to present the user interface having the plurality of portions including at least the first portion the second portion, and a third portion, wherein the third portion includes representations of the particular videos selected based on the user subscription information from the third subset of videos, and wherein the user interface allows the user of the user device to select the user interface elements to switch between the first portion, the second portion, and the third portion.
  • 9. The method of claim 8, wherein the user interface includes a fourth portion that includes videos relevant to a second category of game play of the plurality of categories of game play, and wherein the user interface includes a plurality of user interface elements each corresponding to one of the plurality of portions such that selection of a given user interface element corresponding to a particular portion causes representations of videos included in the particular portion to be presented via the user interface.
  • 10. The method of claim 9, wherein the user interface includes a fifth portion that includes representations of at least one video from each of the first through fourth portions.
  • 11. The method of claim 9, wherein the plurality of user interface elements are presented as tabs over an area of the user interface in which representations of videos from a selected tab are presented.
  • 12. The method of claim 9, wherein each respective video presented in a given portion of the user interface that is associated with a given category of the plurality of categories is presented in association with an icon identifying the given category associated with the respective video.
  • 13. The method of claim 1, wherein the plurality of categories of game play includes videos that include game play from a particular portion of the particular video game.
  • 14. The method of claim 1, wherein the plurality of categories of game play includes videos featuring game play that were uploaded by a publisher of the video game.
  • 15. The method of claim 1, wherein the user interface includes metadata related to the particular video game including a title of the particular video game and one or more images related to the particular video game.
  • 16. A system for presenting videos related to a common subject, the system comprising: a hardware processor that is programmed to: receive, by a video sharing service, a plurality of videos;identify a first subset of videos from the plurality of videos that corresponds to livestream videos that are currently being live streamed in;identify a second subset of videos from the plurality of videos that a plurality of users of the video sharing service watched subsequent to performing searches for a plurality of video games, wherein each video in the second subset of videos is associated with one or more categories of game play from a plurality of categories of game play, and wherein the plurality of categories of game play includes at least a category corresponding to speed runs of the plurality of video games and a category corresponding to complete play throughs of the plurality of video games;determine, for each given livestream video included in the first subset of videos, a respective video game of the plurality of video games corresponding to the given livestream video and a respective category of gameplay of the plurality of categories of game play corresponding to the given livestream video; andcause a user interface having a plurality of portions including at least a first portion and a second portion to be presented, wherein the first portion includes representations of one or more of the livestream videos included in the first subset of videos that are associated with a particular video game of the plurality of video games and a particular category of game play of the plurality of categories of game play and the second portion includes representations of one or more of the videos included in the second subset of videos that are associated with the same particular video game and the same particular category of game play as the one or more livestream videos included in the first portion, andwherein the user interface allows a user of a user device to select user interface elements to switch between the first portion, the second portion, and other portions from the plurality of portions.
  • 17. A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to: receive, by a video sharing service, a plurality of videos;identify a first subset of videos from the plurality of videos that corresponds to livestream videos that are currently being live streamed;identify a second subset of videos from the plurality of videos that a plurality of users of the video sharing service watched subsequent to performing searches for a plurality of video games, wherein each video in the second subset of videos is associated with one or more categories of game play from a plurality of categories of game play, and wherein the plurality of categories of game play includes at least a category corresponding to speed runs of the plurality of video games and a category corresponding to complete play throughs of the plurality of video games;determine, for each given livestream video included in the first subset of videos, a respective video game of the plurality of video games corresponding to the given livestream video and a respective category of gameplay of the plurality of categories of game play corresponding to the given livestream video; andcause a user interface having a plurality of portions including at least a first portion and a second portion to be presented, wherein the first portion includes representations of one or more of the livestream videos included in the first subset of videos that are associated with a particular video game of the plurality of video games and a particular category of game play of the plurality of categories of game play and the second portion includes representations of one or more of the videos included in the second subset of videos that are associated with the same particular video game and the same particular category of game play as the one or more livestream videos included in the first portion, andwherein the user interface allows a user of a user device to select user interface elements to switch between the first portion, the second portion, and other portions from the plurality of portions.
  • 18. The system of claim 16, wherein the hardware processor is further programmed to determine the respective video game and the respective category of game play corresponding to each given livestream video included in the first subset of videos based on causing the hardware processor to: determine a likelihood that the given livestream video is relevant to a given video game from the plurality of video games based on identifying that one or more particular videos from the second subset of videos were watched by one or more of the plurality of users: subsequent to performing one or more of the searches for the given video game, andprior to watching the given livestream video.
  • 19. The system of claim 18, wherein the hardware processor is further programmed to determine the respective video game and the respective category of game play corresponding to each given livestream video included in the first subset of videos further based on causing the hardware processor to: associate the given livestream video with the respective video game and the respective category of game play based on the determined likelihood.
  • 20. The non-transitory computer-readable medium of claim 17, further comprising additional instructions that, when executed by the processor, cause the processor to determine the respective video game and the respective category of game play corresponding to each given livestream video included in the first subset of videos based on causing the processor to: determine a likelihood that the given livestream video is relevant to a given video game from the plurality of video games based on identifying that one or more particular videos from the second subset of videos were watched by one or more of the plurality of users: subsequent to performing one or more of the searches for the given video game, andprior to watching the given livestream video.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 17/479,610, filed Sep. 20, 2021, which is a continuation of U.S. patent application Ser. No. 15/179,575, filed Jun. 10, 2016, which claims the benefit of U.S. Provisional Patent Application No. 62/174,482, filed Jun. 11, 2015, each of which is hereby incorporated by reference herein in its entirety.

US Referenced Citations (55)
Number Name Date Kind
7853622 Baluja et al. Dec 2010 B1
7988560 Heller et al. Aug 2011 B1
8555318 Whitehead Oct 2013 B2
8565228 Howard Oct 2013 B1
8706675 Samaniego Apr 2014 B1
9486698 Chung et al. Nov 2016 B2
10300394 Evans May 2019 B1
10863230 Pham Dec 2020 B1
11128918 Joyce et al. Sep 2021 B2
11523187 Joyce et al. Dec 2022 B2
11711579 Galep Jul 2023 B1
20030068046 Lindqvist et al. Apr 2003 A1
20040123320 Daily Jun 2004 A1
20060287105 Willis Dec 2006 A1
20070101375 Haberman May 2007 A1
20070283403 Eklund, II Dec 2007 A1
20080039967 Sherwood Feb 2008 A1
20080301260 Goldeen et al. Dec 2008 A1
20090118020 Koivisto May 2009 A1
20110312424 Burckart et al. Dec 2011 A1
20120260290 Friedlander et al. Oct 2012 A1
20120309511 Chung Dec 2012 A1
20130198770 Xiong et al. Aug 2013 A1
20130227013 Maskatia et al. Aug 2013 A1
20130260896 Miura Oct 2013 A1
20140179425 Perry et al. Jun 2014 A1
20140221087 Huang et al. Aug 2014 A1
20140323213 Wakeford et al. Oct 2014 A1
20150007231 Mule et al. Jan 2015 A1
20150020126 Kegel Jan 2015 A1
20150024839 Zahn et al. Jan 2015 A1
20150141140 Lampe May 2015 A1
20150296250 Casper Oct 2015 A1
20150312629 Bugajski et al. Oct 2015 A1
20150319509 Huang et al. Nov 2015 A1
20150379407 Woon et al. Dec 2015 A1
20160030841 Perlman Feb 2016 A1
20160127795 Mason et al. May 2016 A1
20160156983 Vong et al. Jun 2016 A1
20160316267 Johnson et al. Oct 2016 A1
20160317933 Shoshan Nov 2016 A1
20170001112 Gilmore Jan 2017 A1
20170001122 Leung Jan 2017 A1
20170003740 Verfaillie Jan 2017 A1
20170006074 Oates, III Jan 2017 A1
20170072321 Thompson et al. Mar 2017 A1
20170155939 Prasad et al. Jun 2017 A1
20170189809 Posin et al. Jul 2017 A1
20170199943 Steelberg et al. Jul 2017 A1
20170228600 Syed et al. Aug 2017 A1
20170246544 Agarwal Aug 2017 A1
20170270128 Smith Sep 2017 A1
20180117462 Miura May 2018 A1
20180176655 Whitlock et al. Jun 2018 A1
20180359041 Lee Dec 2018 A1
Foreign Referenced Citations (5)
Number Date Country
101689174 Mar 2010 CN
102591912 Jul 2012 CN
102884538 Jan 2013 CN
104144181 Nov 2014 CN
2009073800 Jun 2009 WO
Non-Patent Literature Citations (34)
Entry
Decision to Refuse a European Patent Application dated May 3, 2021 in EP Patent Application No. 16733781.5.
Examination Report dated Jun. 3, 2019 in EP Patent Application No. 16733781.5.
Examination Report dated Jul. 8, 2021 in GB Patent Application No. 1713667.2.
Examination Report dated Nov. 17, 2020 in GB Patent Application No. 1713667.2.
International Search Report and Written Opinion dated Aug. 12, 2016 in International Patent Application No. PCT/US2016/037031.
Notice of Allowance dated May 12, 2021 in U.S. Appl. No. 15/179,575.
Notice of Allowance dated Jul. 29, 2022 in U.S. Appl. No. 17/479,610.
Notice of Grant dated Dec. 3, 2021 in CN Patent Application No. 201680019886.1.
Office Action dated Jan. 15, 2021 in U.S. Appl. No. 15/179,575.
Office Action dated Jan. 18, 2018 in U.S. Appl. No. 15/179,575.
Office Action dated Jan. 18, 2019 in U.S. Appl. No. 15/179,575.
Office Action dated Feb. 27, 2020 in U.S. Appl. No. 15/179,575.
Office Action dated Apr. 19, 2022 in U.S. Appl. No. 17/479,610.
Office Action dated May 8, 2019 in U.S. Appl. No. 15/179,575.
Office Action dated Jun. 8, 2020 in U.S. Appl. No. 15/179,575.
Office Action dated Jul. 5, 2021 in CN Patent Application No. 201680019886.1.
Office Action dated Jul. 10, 2018 in U.S. Appl. No. 15/179,575.
Office Action dated Aug. 30, 2017 in U.S. Appl. No. 15/179,575.
Office Action dated Nov. 12, 2019 in U.S. Appl. No. 15/179,575.
Summons to Attend Oral Proceedings dated Apr. 29, 2020 in European Patent Application No. 16733781.5.
Waitelonis et al., “Towards Exploratory Video Search Using Linked Data”, in Multimedia Tools and Applications, Jan. 28, 2011, pp. 645-672.
Waitelonis et al., “Use What You Have: Yovisto Video Search Engine Takes a Semantic Turn”, in Semantic Multimedia, Dec. 1, 2010, pp. 173-185.
Communication pursuant to Rules 161(1) and 162 EPC from counterpart European Application No. 16733781.5 dated Jan. 18, 2018, 3 pp.
International Preliminary Report on Patentability dated Dec. 12, 2017 in International Patent Application No. PCT/US2016/037031, 10 pp.
Office Action, and translation thereof, from counterpart German Application No. 11 2016 001 594.1 dated Nov. 29, 2023, 18 pp.
Prosecution History from U.S. Appl. No. 15/179,575, now issued U.S. Pat. No. 11,128,918, dated Jun. 10, 2016 through Aug. 17, 2021, 361 pp.
Prosecution History from U.S. Appl. No. 17/479,610, now issued U.S. Pat. No. 11,523,187, dated Apr. 19, 2022 through Jul. 29, 2022, 54 pp.
Response to Communication pursuant to Article 94(3) EPC dated Jun. 3, 2019, from counterpart European Application No. 16733781.5 filed Nov. 12, 2019, 16 pp.
Response to Communication Pursuant to Rules 161(1) and 162 EPC dated Jan. 18, 2018, from counterpart European Application No. 16733781.5, filed Jul. 27, 2018, 25 pp.
Response to Summons to Attend Oral Proceedings dated Apr. 29, 2020, including Main Request, from European Patent Application No. 16733781.5, filed Mar. 16, 2021, 43 pp.
Waitelonis et al., “Towards exploratory video search using linked data.”, Multimedia Tools and Applications, vol. 59, No. 2, Springer Science+Business Media, LLC, Jan. 28, 2011, pp. 645-672.
Waitelonis et al., “Use What You Have: Yovisto Video Search Engine Takes a Semantic Turn. In: Semantic Multimedia”, 5th International Conference on Semantic and Digital Media Technologies, Springer, Dec. 1, 2010, pp. 173-185.
U.S. Appl. No. 15/179,575, filed Jun. 10, 2016 naming inventors Joyce et al.
U.S. Appl. No. 17/479,610, filed Sep. 20, 2021 naming inventors Joyce et al.
Related Publications (1)
Number Date Country
20230100286 A1 Mar 2023 US
Provisional Applications (1)
Number Date Country
62174482 Jun 2015 US
Continuations (2)
Number Date Country
Parent 17479610 Sep 2021 US
Child 18074932 US
Parent 15179575 Jun 2016 US
Child 17479610 US