Statistically defined game channel

Through the online game platform, users can define event attributes and statistical parameters, create and manage customized game channels, solve the problem of difficult to filter and watch interesting game events in online games, and improve users' interaction and sense of participation.

CN119158271APending Publication Date: 2024-12-20SONY INTERACTIVE ENTERTAINMENT LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411263398.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2018-02-28
Filing Date
2019-02-11
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

Non-professional players in online games have difficulty creating and managing game alliances of similar skill levels, and lack the ability to filter and watch interesting game video feeds based on user-defined statistical criteria.

Method used

It provides an online gaming platform that allows users to create customizable game channels by defining event attributes and statistical parameters, monitor and filter game game events in real time, and generate and provide relevant video streams to users.

Benefits of technology

Enhance the interactivity and engagement of online games by enabling users to create and manage customized game channels according to their own interests, and watch interesting game events in real time or delay.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119158271A_ABST
    Figure CN119158271A_ABST
Patent Text Reader

Abstract

The subject disclosure relates to creating channels providing customizable video feeds in an online gaming platform. In some aspects, a process of the disclosed technology may include steps for storing in a memory a set of criteria specifying statistical parameters of one or more attributes of events within a stream; evaluating a plurality of streams to identify one or more intra-stream events that meet statistical parameters specified by the set of criteria, wherein at least one of the streams is evaluated in real time; filtering the streams based on the identified intra-stream events that satisfy statistical parameters specified by the set of criteria, wherein a filtered set of the plurality of streams is identified as including the identified intra-stream events that satisfy the set of criteria; and generating a combined stream for provision to a user device over a communication network, the combined stream corresponding to the identified intra-stream events from the filtered set of streams. Systems and machine-readable media are also provided.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This patent application is a divisional application of the following invention patent applications:

[0002] Application number: 201910110368.6

[0003] Application date: February 11, 2019

[0004] Invention Title: Statistically defined gaming channels Technical Field

[0005] Aspects of the subject technology relate to an online gaming platform, and in particular, to a platform for facilitating users to create customizable gaming channels for viewing competitive gaming play. Background Art

[0006] Like any popular competitive activity (such as football, card games, and board games), online gaming has a large number of enthusiasts who appreciate competitive games and highly skilled players. As with other games, such enthusiasts also enjoy organized competitions between players of similar skill levels. For example, fantasy sports leagues and tournaments have become a widespread activity by encouraging a competitive atmosphere between evenly matched opponents. Although fantasy leagues for multiple sports are now widely popular, similar online gaming leagues are not readily available to non-professional players. Summary of the invention

[0007] Embodiments of the claimed invention include methods and systems for managing an online gaming league, and in particular, for implementing a customizable channel for viewing competitive gaming play.

[0008] A system for providing a game play channel includes: a user device that communicates via a communication network; and a non-transitory memory that is coupled to one or more processors, the memory including instructions stored therein, the instructions executable by the processor to perform operations including the following: storing a set of criteria in the memory, the set of criteria specifying statistical parameters of one or more attributes of in-stream events; evaluating multiple streams to identify one or more in-stream events that satisfy the statistical parameters specified by the set of criteria, wherein at least one of the streams is evaluated in real time; filtering streams based on the identified in-stream events that satisfy the statistical parameters specified by the set of criteria, wherein a filtered set of multiple streams is identified as including the identified in-stream events that satisfy the set of criteria; and generating a combined stream to be provided to the user device via the communication network, the combined stream corresponding to the identified in-stream events from the filtered set of streams.

[0009] Such a system may include a network interface configured to receive event attributes defining information about a game title and a gaming environment prerequisite required to initiate a video stream of an associated gaming session, such as entering a gaming channel organized and managed by a user. In some aspects, one or more processors of such a system may be configured to perform operations to perform steps for: receiving a first set of event attributes from a first user, the first set of event attributes including information identifying a first game title and a first gaming session event associated with the first game title; monitoring gaming of the first game title by a second user to detect an occurrence of the gaming session event; and automatically providing a video stream of the first game title to the first user in response to the detected occurrence of the first gaming session event. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] Certain features of the subject technology are set forth in the appended claims. However, the accompanying drawings, which are intended to provide a further understanding, illustrate the disclosed aspects and, together with the description, serve to explain the principles of the subject technology. In the drawings:

[0011] Figure 1 An example of a network environment is shown in which some aspects of the present technology may be implemented.

[0012] Figure 2 Conceptually illustrates various gaming channels that may be defined based on user-specified prerequisites (eg, events or event attributes).

[0013] Figure 3 Steps of an exemplary process are shown for defining a gaming channel and automatically providing video streams of selected gaming titles to users.

[0014] Figure 4 An example of an electronic system that can be used to implement some aspects of the subject technology is shown. DETAILED DESCRIPTION

[0015] The detailed description set forth below is intended as a description of various configurations of the subject technology and is not intended to represent the only configuration in which the subject technology can be practiced. The accompanying drawings are incorporated herein and constitute a part of the detailed description. The detailed description includes specific details to provide a more thorough understanding of the present technology. However, it is apparent that the present technology is not limited to the specific details set forth herein and can be implemented without these details. In some cases, structures and components are shown in block diagram form to avoid obscuring the concepts of the subject technology.

[0016] Competitive gaming, commonly referred to as e-sports or "esports," involves playing video games in a competitive environment. Video game competitions have been around almost as long as video games themselves. Early competitions were set up as league-style matches between players who focused on one specific game, often associated with new product releases. Eventually, competitive leagues and a steady stream of leagues evolved to provide a framework for the e-sports community. Now, players can choose to participate in a large number of professional and amateur competitions held in virtual competitions held in real places or online. Leagues and content providers (such as the American League of Competitive Gaming (MLG) and the Global StarCraft® League) provide opportunities to compete and find information about competitive games. Until recently, participation in competitive gaming has shown a gradually steady growth rate. However, competitive gaming is currently expanding rapidly in terms of participation and interest.

[0017] Unlike fantasy game leagues (such as fantasy football), non-professional players of online games have limited ability to create and manage their own leagues in which players of similar skill levels can compete. Online game players typically do not have access to centralized platforms that can be easily configured to perform player rankings or that can enable users to easily compare between different players or different game titles based on user-defined statistical criteria. Additionally, gamers (e.g., users / players) are typically spectators of games played by both professionals and non-professionals, but lack the ability to filter available game video feeds based on their own criteria.

[0018] The subject technology addresses the aforementioned limitations by providing a gaming alliance platform that facilitates the creation and management of customized gaming alliances, as well as a dashboard that enables players to define statistical criteria for selecting video feeds of games they wish to watch.

[0019] In some aspects, the gaming platform may enable players (spectators) to define event attributes that may be used to filter available game feeds. In some aspects, the filtered game feeds may be organized to form game channels that may be used by subscribing users / players. As used herein, event attributes may include any type of game identification information (e.g., title name or version) and player identification information (e.g., player name or online handle) associated with competitive gaming play. Event attributes may also include statistical parameters or prerequisites that may be used to filter the captured and provided game feeds (video feeds).

[0020] For example, a dashboard can be used to provide event attribute information to a gaming platform. Event attribute information can identify one or more game titles, one or more game players, and / or one or more statistical parameters that are prerequisites for video capture and streaming. In this way, players can conveniently "mark" potentially interesting game events, player rounds, or other phenomena in an online gaming environment for capture and viewing. Such features can enable players to watch (in real time) when potentially interesting game events are occurring, or capture interesting events for later viewing. In some aspects, players can combine feeds from multiple different games played simultaneously or asynchronously to create content channels based on their own predefined criteria. For example, user-defined event attribute information can be used to create a game mashup, such as for enabling users to watch speedrunning matches vs. pitcher duels vs. boxing fights, for example, so as to be able to create a customized game streaming channel, which was originally unavailable.

[0021] In some aspects, a user-selected game feed may be re-run or re-presented, for example, to provide a consuming user with a preferred viewing angle or other perspective for selecting and viewing interesting gaming events.

[0022] Figure 1 An example of a network environment 100 in which some aspects of the present technology may be implemented is shown. The environment 100 includes a public network 102, which may include one or more private networks such as a local area network (LAN), a wide area network (WAN), or a network of public / private networks such as the Internet. The public network 102 is communicatively coupled to a gaming network 104, which represents a network of computing resources configured for a gaming alliance management system 112 that implements the subject technology.

[0023] The public network 102 and the gaming network 104 allow players and developers to access the alliance management system 112. As shown, players 108, 109, and 110 are permitted to access the alliance management system 112 using respective client devices (e.g., 108A, 109A, and 110A). Although the client devices 108A, 109A, and 110A are depicted as personal computing devices, it should be understood that the client devices may include various types of processor-based systems, including, but not limited to, game consoles, smart phones, tablet computer systems, etc. Figure 4 Examples of hardware systems that may be used to implement client devices are discussed in greater detail.Similarly, developers (eg, 105, 106, and 107) are permitted access to the alliance management system through their respective computing systems (eg, 105A, 106A, and 107A).

[0024] It should be appreciated that a greater (or lesser) number of players and / or developers may participate in the environment 100 without departing from the scope of the present technology.

[0025] In practice, the management system 112 is configured to create and support tournament style competitions between various players and for multiple different game titles, and to provide the necessary interface (dashboard) to enable users / players to define parameters for game capture and playback. Thus, the management system 112 is configured to facilitate competition among players across game genres, as well as to facilitate the selection, capture, and distribution of competitive game play events.

[0026] Because the metrics used to evaluate player performance for a particular game can vary widely between game titles and genres, in some aspects, game developers are encouraged to provide indications of specific game performance attributes that should be used to evaluate player performance for the developer's game.

[0027] For example, developers 105, 106, and / or 107 may be developers of different game titles, each associated with a different genre. To facilitate competition in a league for their game, each developer may submit game performance attributes to the league, for example using respective computing systems 105A, 106A, and 107A. In a similar manner, the creation of game leagues and corresponding league parameters may be managed at the player level, for example by one or more of players 108, 109, and / or 110. That is, individual players or groups of players may provide specific game performance attributes that they want to achieve to build their own personalized league play.

[0028] While game performance attributes may include virtually any type of information that may be used in connection with the creation, execution, management, and / or promotion of a gaming league, in some aspects, game performance attribute information may include game characteristics, including, but not limited to, one or more of the following: "match type," "event information," and / or player access lists, etc. Game attribute information may also include game statistics, including, but not limited to, "high-level" player statistics, such as: win / loss records, game duration, levels achieved, scores, and / or ELO ratings, etc. In some aspects, game statistics include "low-level" player statistics, including, but not limited to: map location information, map path information, number of shots, time with rifle, kneeling time, running time, first fix time, time to acquire a target (e.g., a "quick draw" metric), and / or a measure of player / avatar health, etc.

[0029] Game performance attributes, including game characteristics and game play statistics, may be received and recorded by the league management system 112, for example, using an application programming interface (API) such as the API 114. The game performance attributes may then be passed from the API 114 to the statistics module 116 for use in player analysis. In a similar manner, game play statistics may be collected by the API 114 and passed to the statistics module 116.

[0030] Depending on the implementation, game play statistics may be collected through active monitoring of an online gaming environment, or received from one or more external systems, for example as part of a game performance dataset that includes information describing individual player performance for one or more game titles and / or genre categories.

[0031] As discussed above, monitoring of the gaming environment (e.g., for a single game title or for multiple game titles) may be performed based on user-defined event attributes that indicate when game capture will be performed and what aspects of the behavior / events will be recorded. In practice, the capture / streaming module 120 is configured to record and / or stream those portions of game play that are pre-selected via user-defined event attributes provided to a dashboard provided by the management system 112.

[0032] Figure 2 Conceptually illustrates a user creating a customized game streaming channel. Figure 2 In the example of , multiple users 206 are communicatively coupled to a gaming platform 204 via a network 202. The platform 204 may be configured to provide the dashboards and monitoring systems necessary to receive user-defined statistical variables (e.g., event attributes), and provide streaming video content of captured gaming events.

[0033] In the example shown, each of the users 206 subscribes to a different "channel", for example, which is defined based on different predetermined events, for example, as defined by respectively provided event attribute information. A Subscribe to channel 1 containing game feed based on events (event attributes) A, B and C; user 206 B Subscribes to channel 2 containing various game feeds based on events A, C, and D; and user 206 N Subscribe to channel N which includes a game feed based on events X, Y, and Z.

[0034] As discussed above, event attributes may define any characteristics associated with a game play environment, including, but not limited to, player parameters, title parameters, and / or event parameters, etc., upon which a corresponding game feed will be based. For example, event A may specify a selection of all game events played in a first-person shooter game for which each participating opponent has accumulated a total number of points (or "kills") exceeding a predetermined threshold. Event B may specify a racing game title in which the lap times of participating players are within 8 seconds of each other; event C may specify all events associated with 4 specific players in an online gaming environment, while event E may specify all game events associated with a soccer-related game. Thus, player 206 who subscribes to channel 1 may select the game event that is associated with the game. A will receive stream coverage for events A, B, and C, while player 206B A stream overlay of feeds from various game titles / players / environments matching the criteria of events A, C, and D will be received, etc. It should be understood that the scope of the present technology is not limited by the number of players / subscribers, and each channel can be defined based on virtually any number and type of user-defined characteristics or statistical attributes. In this way, each user / player can optionally create one or more channels that filter by highly specific game events, as well as player actions or achievements, etc.

[0035] Figure 3 Steps of an exemplary process 300 for defining a game channel and automatically providing a video stream of a selected game title to a user are shown. The process 300 begins with step 302, where a first set of event attributes is received, for example, at a game platform dashboard. As discussed above, the first set of event attributes may be received from a first user and may include information identifying a first game title and a first game play event associated with the first game title.

[0036] In step 304, game play of the first game title is monitored based on the first set of event attributes provided by the first user. Game play monitoring can be performed for the user who defined the event attributes (e.g., the first user) or for one or more other users (e.g., the second user) participating in the event title. In this way, the first user can "tag" a game play event for a particular game title for which a later notification or video stream will be provided.

[0037] In step 306, a video stream of the first game title is automatically provided to the first user in response to the detected occurrence of the first game play event. It should be understood that the provided video stream may include clips, highlights, or notifications extracted from one or more game titles being played simultaneously or asynchronously. That is, aspects of the present technology are not limited to monitoring a single game environment, a single game title, etc.

[0038] Figure 4 is an exemplary user device 400. User device 400 (eg, a desktop computer, laptop computer, tablet computer, mobile device, console gaming system) is a device that a user may use to facilitate performance of features of the present invention related to viewing third party content.

[0039] The user device 400 may include Figure 4 Various elements are shown. It should be noted that the elements are exemplary and other embodiments may incorporate more or fewer elements than shown. Figure 4, the user device 400 includes a main memory 402, a central processing unit (CPU) 404, at least one vector unit 406, an image processing unit 408, an input / output (I / O) processor 410, an I / O processor memory 412, a controller interface 414, a memory card 416, a universal serial bus (USB) interface 418, and an IEEE 1394 interface 420, an auxiliary (AUX) interface 422 for connecting a tracking device 424, but other bus standards and interfaces may be used. The user device 400 also includes an operating system read-only memory (OS ROM) 426, a sound processing unit 428, an optical disk control unit 430, and a hard disk drive 432 connected to the I / O processor 410 via a bus 434. The user device 400 also includes at least one tracking device 424.

[0040] Tracking device 424 can be a camera that includes eye tracking capabilities. The camera can be integrated into user device 400 or attached to user device 400 as a peripheral device. In a typical eye tracking device, infrared non-collimated light is reflected from the eye and sensed by a camera or optical sensor. The information is then analyzed to extract eye rotation from the reflection changes. Camera-based trackers focus on one or both eyes and record their movements as the viewer observes a certain type of stimulus. Camera-based eye trackers use the center of the pupil and light to create a corneal reflection (CR). The vector between the center of the pupil and the CR can be used to calculate the gaze point on the surface or gaze direction. Before using an eye tracker, a simple calibration process by the observer is usually required.

[0041] Instead, more sensitive trackers use reflections from the front of the cornea and reflections from the back of the eye lens as features to track over time. Even more sensitive trackers image features from inside the eye, including retinal blood vessels, and follow these features as the eye rotates.

[0042] Most eye tracking devices use a sampling rate of at least 30 Hz, but 50 / 60 Hz is the most common. Some trackers run at up to 1250 Hz, which is required to capture the details of extremely rapid eye movements.

[0043] A wide angle camera may alternatively be used with the present invention to capture gestures made by the user and enable facial recognition. Wide angle cameras are often used to capture and interpret specific gestures, which allow for hands-free control of the entertainment system. The present technology may use infrared projectors, cameras, depth sensors, and microchips to track the movement of objects and individuals in three dimensions. This user device may also employ a variation of image-based three-dimensional reconstruction.

[0044] Tracking device 424 may include a microphone integrated into user device 400 that captures voice data, or attached as a peripheral device to user device 400. The microphone may perform sound source localization and / or ambient noise suppression.

[0045] Alternatively, the tracking device 424 can be a controller for the user device 400. When pointed at an LED in a nearby sensor, attached to, or integrated into the console of an entertainment system, the controller can sense its position in 3D space using a combination of built-in accelerometers and infrared detection. This design allows the user to control functions of the user device 400 through physical gestures as well as button presses. The controller connects to the user device 400 using wireless technology that allows data exchange over short distances (e.g., 30 feet). The controller may additionally include a "rumble" feature (i.e., shaking of the controller during certain points in the game) and / or an internal speaker.

[0046] The controller may additionally or alternatively be designed to capture biometric readings using sensors in the remote control to record data including, for example, skin moisture, heart rate, and muscle movement.

[0047] As described above, user device 400 may be an electronic game console. Alternatively, user device 400 may be implemented as a general purpose computer, a set-top box, or a handheld gaming device. In addition, similar user devices may include more or fewer operating components.

[0048] The CPU 404, the vector unit 406, the graphics processing unit 408, and the I / O processor 410 communicate via the system bus 436. In addition, the CPU 404 communicates with the main memory 402 via a dedicated bus 438, while the vector unit 406 and the graphics processing unit 408 can communicate via a dedicated bus 440. The CPU 404 executes programs stored in the OS ROM 426 and the main memory 402. The main memory 402 may contain pre-stored programs and programs transferred from a CD-ROM, DVD-ROM, or other optical disk (not shown) through the I / O processor 410 using the optical disk control unit 432. The I / O processor 410 mainly controls data exchange between various devices of the user device 400, including the CPU 404, the vector unit 406, the graphics processing unit 408, and the controller interface 414.

[0049] The graphics processing unit 408 executes graphics instructions received from the CPU 404 and the vector unit 406 to generate images for display on a display device (not shown). For example, the vector unit 406 may convert an object from three-dimensional coordinates to two-dimensional coordinates and send the two-dimensional coordinates to the graphics processing unit 408. In addition, the sound processing unit 430 executes instructions to generate sound signals that are output to an audio device (not shown) such as a speaker.

[0050] The user of the entertainment system 400 provides instructions to the CPU 404 through the controller interface 414. For example, the user may instruct the CPU 404 to store certain information on the memory card 416, or instruct the user device 400 to perform some specified action.

[0051] Other devices may be connected to the user device 400 through the USB interface 418, the IEEE 1394 interface 420, and the AUX interface 422. Specifically, a tracking device 424 including a camera or a sensor may be connected to the user device 400 through the AUX interface 422, and a controller may be connected through the USB interface 418.

[0052] It should be understood that any particular order or hierarchy of steps in the disclosed process is an illustration of an exemplary method. Based on design preferences, it should be understood that the particular order or hierarchy of steps in the process can be rearranged, or only a portion of the steps shown can be performed. Some of the steps can be performed simultaneously. For example, in some cases, multitasking and parallel processing can be advantageous. In addition, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, but it should be understood that the described program components and systems can be integrated together in a single software product or packaged into multiple software products.

[0053] The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these configurations will be apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects. Therefore, the claims are not intended to be limited to the aspects shown herein, but are to be given the full scope consistent with the language claims, where reference to an element in the singular is not intended to mean "one and only one", unless specifically stated so, but rather to mean "one or more".

[0054] Phrases such as "aspects" do not mean that this aspect is essential to the subject technology or that this aspect applies to all configurations of the subject technology. Disclosures related to an aspect may apply to all configurations or one or more configurations. Phrases such as aspects may refer to one or more aspects and vice versa. Phrases such as "configurations" do not mean that this configuration is essential to the subject technology or that this configuration applies to all configurations of the subject technology. Disclosures related to a configuration may apply to all configurations or one or more configurations. Phrases such as configurations may refer to one or more configurations and vice versa.

[0055] The word “exemplary” is used herein to mean “serving as an example or illustration.” Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs.

Claims

1. A system for providing a game playing channel, the system include: A user device for communicating via a communication network; as well as a non-transitory memory coupled to one or more processors, the memory including instructions stored therein, the instructions executable by the processors to perform operations including: storing in the memory a set of criteria specifying statistical parameters of one or more attributes of events within the stream; evaluating a plurality of streams to identify one or more intra-stream events that satisfy statistical parameters specified by the set of criteria, wherein at least one of the streams is evaluated in real time; filtering the streams based on the identified intra-stream events satisfying statistical parameters specified by the set of criteria, wherein a filtered set of the plurality of streams is identified as including the identified intra-stream events satisfying the set of criteria; as well as A combined stream is generated for provision to the user device over the communication network, the combined stream corresponding to the identified in-stream events from the filtered set of streams.

2. The system according to claim 1, in, The set of criteria is defined based on a user of the user device.

3. The system according to claim 2, in, The set of criteria is defined based on marked intra-stream events within the plurality of streams.

4. The system according to claim 1, in, The one or more attributes identify one or more game titles, one or more game players, or one or more statistical parameters.

5. The system according to claim 4, in, The one or more properties are prerequisites for video capture.

6. The system of claim 1, further providing the combined stream to one or more other user devices via the communication network.

7. The system of claim 1, in, The combined stream is formed into a gaming channel to be provided over the communications network.

8. The system of claim 7, in, The game play channel is provided to one or more user devices that subscribe to the game play channel.

9. The system of claim 1, in, The combined stream corresponds to a preferred viewing angle for the identified event within the stream.

10. A method for providing a customized stream, the method include: storing in a memory a set of criteria specifying statistical parameters of one or more attributes of events within the stream; evaluating a plurality of streams to identify one or more intra-stream events that satisfy statistical parameters specified by the set of criteria, wherein at least one of the streams is evaluated in real time; filtering the streams based on the identified intra-stream events satisfying statistical parameters specified by the set of criteria, wherein a filtered set of the plurality of streams is identified as including the identified intra-stream events satisfying the set of criteria; as well as A combined stream is generated for provision to a user device over a communication network, the combined stream corresponding to the identified in-stream events from the filtered set of streams.

11. The method according to claim 10, in, The set of criteria is defined based on a user of the user device.

12. The method according to claim 11, in, The set of criteria is defined based on marked intra-stream events within the plurality of streams.

13. The method according to claim 10, in, The one or more attributes identify one or more game titles, one or more game players, or one or more statistical parameters.

14. The method according to claim 13, in, The one or more properties are prerequisites for video capture.

15. The method of claim 10, further providing the combined stream to one or more other user devices via the communication network.

16. The method of claim 10, in, The combined stream is formed into a gaming channel to be provided over the communications network.

17. The method of claim 16, in, The game play channel is provided to one or more user devices that subscribe to the game play channel.

18. The method of claim 10, in, The combined stream corresponds to a preferred viewing angle for the identified event within the stream.

19. A non-transitory computer-readable storage medium having embodied thereon a program executable by a processor to perform operations comprising: storing in a memory a set of criteria specifying statistical parameters of one or more attributes of events within the stream; evaluating a plurality of streams to identify one or more intra-stream events that satisfy statistical parameters specified by the set of criteria, wherein at least one of the streams is evaluated in real time; filtering the streams based on the identified intra-stream events satisfying statistical parameters specified by the set of criteria, wherein a filtered set of the plurality of streams is identified as including the identified intra-stream events satisfying the set of criteria; as well as A combined stream is generated for provision to a user device over a communication network, the combined stream corresponding to the identified in-stream events from the filtered set of streams.

20. The non-transitory computer-readable storage medium of claim 19, further providing the combined stream to one or more other user devices over the communication network.