Computer program, method, and server device
The system addresses the issue of reduced viewer interest due to streamer departure by storing collaborative streaming data and dynamically adjusting avatars or game parameters to sustain engagement.
Patent Information
- Application Number
- JP2024110291
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-07-09
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2040-06-23
AI Technical Summary
When multiple streamers collaborate in a game streaming session, the departure of one streamer can lead to a significant decrease in viewer interest, affecting the overall engagement and viewership of the remaining streamer's subsequent streams.
A system that stores data on collaborative streaming partners and adjusts the avatar or game parameters based on this data to maintain viewer engagement, even if a streamer leaves, by incorporating user data to change avatar parameters or display additional avatars in the video.
Maintains viewer interest and engagement by ensuring continuous interaction and engagement, even when a streamer leaves, through dynamic adjustments to the streaming content.
Smart Images

Figure 0007720599000001 
Figure 0007720599000002 
Figure 0007720599000003
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a computer program, a method, and a server device used to distribute video related to a game from a distributor's terminal to each viewer's terminal. [Background technology]
[0002] A service called Mirrativ (Non-Patent Document 1) is known as a service used to distribute video related to games from a distributor's terminal to each viewer's terminal.
[0003] With this service, a broadcaster can use a terminal to broadcast videos including avatar animations generated based on motion data related to the broadcaster's movements, and video related to a game generated based on operation data related to the broadcaster's operations, to multiple viewers' terminals. Non-Patent Document 1 is incorporated herein by reference in its entirety. [Prior art documents] [Patent documents]
[0004] [Non-Patent Document 1] "Mirrativ", [online], August 16, 2019, Mirrativ, Inc., [Retrieved December 23, 2019], Internet (https: / / apps.apple.com / jp / app / mirrativ-Mirrativ-Easy-Game-Distribution-on-Smartphone / id1028944599) Summary of the Invention [Problem to be solved by the invention]
[0005] Here, when a video is streamed featuring avatars from multiple streamers (e.g., a first streamer and a second streamer) appearing together or a video in which the multiple streamers play a game together, the number of viewers may be higher when the first streamer streams together with the second streamer than when the first streamer streams alone. In this case, if the second streamer who streams together with the first streamer stops streaming and leaves, the number of viewers may decrease due to the impact of the departure, which may reduce the interest of the game when the first streamer later streams the game. Therefore, it is desirable to configure the game so as to minimize the interest of the game that will be streamed later by the first streamer, even if the second streamer who streams together with the first streamer stops streaming and leaves.
[0006] Therefore, the present disclosure provides a computer program, a method, and a server device that reduce the possibility of the interest of the game being diminished. [Means for solving the problem]
[0007] A computer program according to one embodiment broadcasts a first video, including action data relating to the actions of a first broadcaster or an animation of the first broadcaster's avatar generated based on the action data, and a second video relating to a game generated using a received web page based on operation data relating to the first broadcaster's operations, to a viewer terminal of at least one viewer via a communication line; stores first data relating to at least one user who jointly broadcasted the game with the first broadcaster before the game is played; determines whether a first condition is met after the first broadcaster and the at least one user jointly broadcast the game; and if it is determined that the first condition is met, extracts second data relating to at least one of the at least one user based on the first data; and, during or after the game is played, changes at least one current parameter of the first broadcaster's avatar based on the second data; or causes the processor to display the avatar of the first broadcaster and an avatar of at least one of the at least one user in the second video based on the first data.
[0008] A method according to one embodiment includes the steps of: by executing instructions by a processor, broadcasting a first video including action data regarding the actions of a first broadcaster or an animation of an avatar of the first broadcaster generated based on the action data, and a second video regarding a game generated using a received web page based on operation data regarding the operation of the first broadcaster, to a viewer terminal of at least one viewer via a communication line; storing first data regarding at least one user who jointly broadcast with the first broadcaster before the game is executed; after the first broadcaster and the at least one user jointly broadcast, determining whether a first condition is met; if it is determined that the first condition is met, extracting second data related to at least one of the at least one user based on the first data; and during or after the game is executed, changing at least one current parameter of the avatar of the first broadcaster based on the second data, or displaying the avatar of the first broadcaster and an avatar of at least one of the at least one user in the second video based on the second data.
[0009] A method according to one embodiment includes the steps of: executing instructions by a processor to receive, via a communication line, a first video including motion data regarding the motion of a first broadcaster or an animation of an avatar of the first broadcaster generated based on the motion data; and a second video regarding a game generated using a received web page based on operation data regarding the operation of the first broadcaster; determining whether a first condition is met after the first broadcaster and the at least one user jointly broadcast, and if it is determined that the first condition is met, receiving a first video in which at least one current parameter of the avatar of the first broadcaster is changed based on second data extracted related to at least one of the at least one users based on first data regarding the at least one user who jointly broadcast with the first broadcaster before the game was played, or receiving a second video displaying the avatar of the first broadcaster and an avatar of at least one of the at least one user based on the second data.
[0010] In one embodiment, a server device has a processor that transmits a first video including action data regarding the actions of a first broadcaster or an animation of the first broadcaster's avatar generated based on the action data, and a second video regarding a game generated using a received web page based on operation data regarding the first broadcaster's operations, to a viewer terminal of at least one viewer via a communication line, stores first data regarding at least one user who jointly broadcast with the first broadcaster before the game is played, determines whether a first condition is met after the first broadcaster and the at least one user jointly broadcast, and if it is determined that the first condition is met, extracts second data related to at least one of the at least one users based on the first data, and changes at least one current parameter of the first broadcaster's avatar based on the second data during or after the game is played, or displays the avatar of the first broadcaster and an avatar of at least one of the at least one user in the second video based on the second data.
[0011] A server device according to one aspect of the present invention transmits a web page including a computer program via a communication line to a broadcaster terminal of a broadcaster configured to broadcast, via a communication line, a first video including action data related to the actions of a first broadcaster or an animation of an avatar of the first broadcaster generated based on the action data, and a second video related to a game generated based on operation data related to the operation of the first broadcaster using the received web page to at least one viewer terminal of the first broadcaster, and the computer program is configured to connect the broadcaster terminal of the first broadcaster to at least one viewer terminal of the first broadcaster who jointly broadcast the game with the first broadcaster before the game is played. and stores first data related to the users of the first broadcaster and the at least one user, and after the first broadcaster and the at least one user jointly broadcast, determines whether a first condition is met, and if it is determined that the first condition is met, extracts second data related to at least one of the at least one users based on the first data, and during or after the game is played, changes at least one current parameter of an avatar of the first broadcaster based on the second data, or causes the processor to display the avatar of the first broadcaster and an avatar of at least one of the at least one user in the second video based on the second data. [Brief explanation of the drawings]
[0012] [Figure 1] FIG. 1 is a block diagram showing an example of the configuration of a video distribution system 1 according to an embodiment. [Figure 2] FIG. 2 is a block diagram schematically illustrating an example of a hardware configuration of the terminal 10 (server device 20) shown in FIG. [Figure 3] FIG. 3 is a block diagram schematically illustrating an example of the functions of the terminal 10 illustrated in FIG. [Figure 4] FIG. 4 is a block diagram schematically illustrating an example of the functions of the server device 20 shown in FIG. [Figure 5A]FIG. 5A is a flow diagram showing an example of the operation performed in the video distribution system 1 shown in FIG. [Figure 5B] FIG. 5B is a flow diagram showing an example of the operation performed in the video distribution system 1 shown in FIG. DETAILED DESCRIPTION OF THE INVENTION
[0013] Various embodiments of the present disclosure will be described below with reference to the accompanying drawings. Note that common components in the drawings are designated by the same reference numerals. It should also be noted that components depicted in one drawing may be omitted in another drawing for the sake of clarity. It should also be noted that the accompanying drawings are not necessarily drawn to scale.
[0014] 1. Video distribution system configuration Briefly, the video distribution system of the present disclosure enables a user who distributes videos (hereinafter referred to as a "distributor") to use his / her terminal to distribute, via a communication line, a first video including animation of an avatar (avatar object) generated based on motion data related to the distributor's motion, and a second video related to a game generated based on operation data related to the distributor's operation, to the terminals of users who watch the videos (hereinafter referred to as "viewers"). The first example will be described below with reference to Figures 1 to 5B.
[0015] Fig. 1 is a block diagram showing an example of the configuration of a video distribution system according to an embodiment. As shown in Fig. 1, the video distribution system 1 can include a plurality of terminals 10 connected to a communication line (communication network) (not shown), and one or more server devices 20 connected to the communication line. Each terminal 10 can be connected to one or more server devices 20 via the communication line.
[0016] 1 shows, as multiple terminals 10, for example, a first broadcaster terminal 11A, a second broadcaster terminal 11B, a viewer terminal 12A, a viewer terminal 12B, and a viewer terminal 12C, but one or more other terminals 10 may be used as well. In the following description, the first broadcaster terminal 11A and the second broadcaster terminal 11B may be collectively referred to as broadcaster terminals 11, and the viewer terminals 12A to 12C may be collectively referred to as viewer terminals 12. In addition, in FIG. 1, as one or more server devices 20, for example, server devices 20A and 20B are shown, but one or more other server devices 20 may be used as well. Communication lines (not shown) may include, but are not limited to, a mobile phone network, a wireless LAN, a fixed-line telephone network, the Internet, an intranet, and / or Ethernet (registered trademark), etc.
[0017] Furthermore, in one embodiment, the video distribution system 1 may also include one or more studio units 30 connected to a communication network. Each studio unit 30 may be connected to one or more server devices 20 or multiple terminals 10 via a communication line. Note that while FIG. 1 shows studio units 30A and 30B as the one or more studio units 30, one or more studio units 30 other than these may be used in the same manner. Each studio unit 30 may have the same functions as the terminal 10 or server device 20 described below.
[0018] For simplicity of explanation, the following description focuses on a case where one or more server devices 20 transmit and receive moving images, etc. to and from each terminal 10. Alternatively or in addition to this, as will be described later, one or more server devices 20 can transmit and receive moving images, etc. to and from each studio unit 30. Furthermore, alternatively or in addition to this, as will be described later, it is also possible for the studio unit 30 to transmit and receive moving images, etc. to and from each terminal 10.
[0019] 1-1. Terminal 10 The multiple terminals 10 may include, for example, multiple broadcaster terminals 11 (e.g., first broadcaster terminal 11A and second broadcaster terminal 11B) and one or more viewer terminals 12 (e.g., viewer terminals 12A-12C). The broadcaster corresponding to first broadcaster terminal 11A will be referred to as the first broadcaster, and the broadcaster corresponding to second broadcaster terminal 11B will be referred to as the second broadcaster. In the following description, if first broadcaster terminal 11A of the multiple broadcaster terminals 11 is broadcasting a game alone, second broadcaster terminal 11B may not function as a terminal that broadcasts a game, and may be configured to function in the same way as viewer terminal 12, for example.
[0020] Each terminal 10 has a common configuration and can function as either a terminal for distributing moving images (distributor terminal 11) or a terminal for viewing moving images (viewer terminal 12).
[0021] Furthermore, when each terminal 10 operates as a terminal for distributing moving images (distributor's terminal), it executes an installed moving image distribution application (which may be middleware or a combination of an application and middleware; the same applies below) to acquire motion data related to the distributor's motion, and transmits a first moving image, including animation of a virtual character (avatar object) changed according to the acquired data, to server device 20 (distribution server system 20A1) via a communication line. Such first moving image is distributed by server device 20 (distribution server system 20A1) via a communication line to a terminal for receiving moving images (viewer terminal) 12. Such viewer terminal 12 can receive moving images by executing an installed moving image viewing application (which may be middleware or a combination of an application and middleware; the same applies below).
[0022] Furthermore, when each terminal 10 operates as a distributor's terminal, it can receive a web page (HTML document) from the server device 20 (web server system 20B) and execute a game program included in the web page by executing a browser function incorporated in the installed video distribution application and / or by executing an installed web browser application. By executing this game program, each terminal 10 can generate a second video in which at least one game object is operated based on operation data related to the distributor's operation.
[0023] Furthermore, when each terminal 10 operates as a distributor's terminal, it can transmit the second moving image thus generated to server device 20 (distribution server system 20A) via a communication line by executing the moving image distribution application. Such second moving image is also distributed by server device 20 (distribution server system 20A) via a communication line to a terminal (viewer terminal) 10 for receiving moving images that executes an installed moving image viewing application.
[0024] Furthermore, when each terminal 10 operates as a distributor's terminal, by executing the above-mentioned video distribution application, it can receive gift information indicating that a gift will be given to the distributor and / or comment information indicating that a comment will be sent to the distributor from a viewer terminal 12 watching the second video (distributed by this distributor terminal 11) via the server device 20 (distribution server system 20A).
[0025] On the other hand, when each terminal 10 operates as a terminal for viewing videos (viewer terminal), it can receive the first video and / or the second video distributed by the distributor terminal 11 via the server device 20 (distribution server system 20A) by executing the installed video viewing application.
[0026] Furthermore, when each terminal 10 operates as a viewer terminal, it can execute a video viewing application to send gift information indicating that a gift will be given to the broadcaster, and / or comment information indicating that a comment will be sent to the broadcaster, to the first broadcaster terminal 11A via the server device 20 (distribution server system 20A).
[0027] The above-described video distribution application and video viewing application may be installed and executed on each terminal 10 as a single integrated application, or as separate applications.
[0028] Each terminal 10 is any terminal capable of performing such operations, and may include, but is not limited to, a smartphone, a tablet, a mobile phone (feature phone), and / or a personal computer, etc. Furthermore, each terminal 10 is configured to be capable of performing, for example, collaborative distribution (joint distribution or collaborative distribution).
[0029] In the following description, collaborative streaming refers to, for example, a stream conducted jointly by multiple streamers using their respective devices. This collaborative streaming may include, for example, video streaming using the avatar of a first streamer and the avatars of other streamers, and game streaming conducted by the first streamer and other streamers. The game streamed through this game streaming is, for example, a live game. In addition, in a game streamed through collaborative streaming, users who stream and / or watch the game can input operation information and / or voice into their own devices 10, and transmit the input information to the devices 10 operated by other users, enabling users to communicate with each other.
[0030] Furthermore, when a collaborative broadcast is performed, for example, multiple broadcasters may be treated separately. For example, one of the multiple broadcasters may be treated as, for example, the host broadcaster, and the remaining broadcasters may be treated as, for example, guests. Specifically, for example, when two broadcasters (a first broadcaster and a second broadcaster) perform a collaborative broadcast, the first broadcaster may be treated as the host broadcaster, and the second broadcaster may be treated as a guest. In this case, when the collaborative broadcast ends, the first broadcaster continues the broadcast, and the second broadcaster can no longer continue the broadcast. Note that, even if the second broadcaster can no longer continue the broadcast, for example, the broadcast may be configured to be viewable as a viewer.
[0031] Furthermore, when multiple broadcasters are treated separately, for example, the display content displayed on the display screen of the device operated by the host broadcaster may be configured to be different from the display content displayed on the display screen of the device operated by the guest. Furthermore, when multiple broadcasters are treated separately, for example, the number of commands that the host broadcaster can operate may be configured to be greater than the number of commands that the guest can operate.
[0032] The above describes an example in which multiple broadcasters are treated separately when performing collaborative broadcasting, but the present invention is not limited to this example, and the configuration may be such that multiple broadcasters are treated without distinction when performing collaborative broadcasting.
[0033] 1-2. Server device 20 As shown in FIG. 1, the server device 20 includes, for example, a distribution server system 20A and a web server system 20B.
[0034] The distribution server system 20A can distribute the first video and / or the second video transmitted by each terminal (each broadcaster terminal) 10 to each terminal (each viewer terminal) 10. The distribution server system 20A can also transmit to the broadcaster terminal 11 gift information transmitted by each terminal (each viewer terminal) 10 indicating that a gift will be given to a certain broadcaster and / or comment information indicating that a comment will be sent to a certain broadcaster.
[0035] In order to perform such operations, in one embodiment, the distribution server system 20A may include a distribution server device 20A1, a database (DB) server device 20A2, a game API server device 20A3, and a collaboration server device 20A4, which are connected to each other via communication lines (including wireless lines and / or wired lines not shown).
[0036] The distribution server device 20A1 can distribute the first video and / or the second video transmitted by each distributor terminal 11 to each terminal 10. Furthermore, the distribution server device 20A1 can store gift information and / or comment information transmitted by each viewer terminal 12 in the DB server device 20A2.
[0037] The DB server device 20A2 stores gift information and / or comment information received from the distribution server device 20A1, and can read out and transmit to the game API server device 20A3 the gift information and / or comment information inquired about by the game API server device 20A3.
[0038] When the game API server device 20A3 receives an inquiry about gift information and / or comment information from each broadcaster terminal 11, it can read the gift information and / or comment information for the broadcaster terminal 11 from the DB server device 20A2 and transmit it to that broadcaster terminal 11. In addition, in order to determine a user with whom to perform a collaborative broadcast, the game API server device 20A3 obtains information about candidate users other than the first broadcaster and stores it in the DB server device 20A2. Here, "candidate users other than the first broadcaster" are, for example, the second broadcaster or viewers.
[0039] For example, during collaboration distribution, the collaboration server device 20A4 communicates voice data and / or motion data with each terminal 10. For example, during collaboration distribution, if a first broadcaster makes a sound to the first broadcaster terminal 11A, the collaboration server device 20A4 receives data related to the sound from the first broadcaster terminal 11A and transmits the data related to the sound to the second broadcaster terminal 11B and / or the viewer terminal 12. Also, for example, during collaboration distribution, if a second broadcaster makes a sound to the second broadcaster terminal 11B, the collaboration server device 20A4 receives data related to the sound from the second broadcaster terminal 11B and transmits the data related to the sound to the first broadcaster terminal 11A and / or the viewer terminal 12.
[0040] 1, for the purpose of distributing the load, the distribution server system 20A is shown to have four server devices, namely, a distribution server device 20A1, a DB server device 20A2, a game API server device 20A3, and a collaboration server device 20A4. However, at least one of these four server devices may be integrated with at least one of the remaining server devices.
[0041] As shown in FIG. 1, the web server system 20B includes, for example, a game server device 20B1 and a content server device 20B2.
[0042] The game server device 20B1 transmits a web page (a document created in accordance with HTML, for example HTML5) incorporating a game program to each accessing distributor terminal 11. This game program allows the terminal 10 that receives and decodes it to execute various operations related to video distribution, including the operations exemplified in (a) to (c) below. (a) The act of running a game (b) Operation of transmitting a game screen generated in association with the execution of the game to the distribution server system 20A (distribution server device 20A1) (c) An operation of obtaining gift information and / or comment information sent to this distributor from the distribution server system 20A (game API server device 20A3).
[0043] For example, when a game is distributed through collaborative distribution, the game server device 20B1 manages operation information for the game and performs game logic calculations. Furthermore, for example, when a game is distributed through collaborative distribution, the game server device 20B1 transmits and receives game operation information and / or calculation information to and from terminals 10 operated by users who distribute and / or watch the game. During collaborative distribution, the game server device 20B1 stores data related to the second broadcaster and / or viewers of the game distributed through collaborative distribution. The data stored by the game server device 20B1 can be used to determine the content of a predetermined process at S324, described below.
[0044] The content server device 20B2 is a device that stores, for example, data related to a game (for example, live game content) and provides game rendering data to the terminals 10 operated by users who broadcast and / or watch the game.
[0045] 1-3. Studio Unit 30 The studio unit 30 may be placed in a studio, room, hall, or the like where a performer (distributor) distributes a video. As described above, the studio unit 30 is capable of performing the same functions as the terminal 10 and / or the server device 20. In FIG. 1, dashed lines indicate that data can be communicated between the studio unit 30 and other devices, and solid lines indicate that data can be communicated between other devices.
[0046] 2. Hardware configuration of each device Next, an example of the hardware configuration of each of the terminal 10, the server device 20, and the studio unit 30 will be described.
[0047] 2-1. Hardware configuration of terminal 10 An example of the hardware configuration of each terminal 10 will be described with reference to Fig. 2. Fig. 2 is a block diagram that schematically shows an example of the hardware configuration of the terminal 10 (server device 20) shown in Fig. 1 (note that in Fig. 2, reference numerals in parentheses are those described in relation to the server device 20, as will be described later).
[0048] 2, each terminal 10 mainly includes a central processing unit 14, a main memory device 15, an input / output interface device 16, an input device 17, an auxiliary memory device 18, and an output device 19. These devices are connected to each other by a data bus and / or a control bus.
[0049] The central processing unit 14 is referred to as a "CPU" and performs operations on instructions and data stored in the main memory 15 and stores the results of the operations in the main memory 15. Furthermore, the central processing unit 14 can control an input device 17, an auxiliary memory device 18, an output device 19, etc. via an input / output interface device 16. The terminal 10 can include one or more such central processing units 14.
[0050] The main memory device 15 is referred to as "memory" and stores instructions and data received from the input device 17, the auxiliary memory device 18, and the communication line 30 (such as the server device 20) via the input / output interface device 16, as well as the results of calculations by the central processing unit 14. The main memory device 15 may include, but is not limited to, RAM (random access memory), ROM (read only memory), and / or flash memory.
[0051] The auxiliary storage device 18 is a storage device having a larger capacity than the main storage device 15. It can store instructions and data (computer programs) that constitute the above-mentioned specific applications (video distribution applications, video viewing applications, etc.), web browser applications, etc. Furthermore, the auxiliary storage device 18 can transmit these instructions and data (computer programs) to the main storage device 15 via the input / output interface device 16 by being controlled by the central processing unit 14. The auxiliary storage device 18 can include, but is not limited to, a magnetic disk device and / or an optical disk device, etc.
[0052] The input device 17 is a device that inputs data from the outside, and includes, but is not limited to, a touch panel, a button, a keyboard, a mouse, and / or a sensor. As will be described later, the sensor may include, but is not limited to, one or more cameras and / or one or more microphones.
[0053] The output device 19 may include, but is not limited to, a display device, a touch panel, and / or a printer device.
[0054] In such a hardware configuration, the central processing unit 14 sequentially loads instructions and data (computer programs) constituting a specific application stored in the auxiliary storage device 18 into the main storage device 15, and by performing operations on the loaded instructions and data, it is possible to control the output device 19 via the input / output interface device 16, or to send and receive various information to and from other devices (e.g., a server device 20, other terminals 10 and / or a studio unit 30, etc.) via the input / output interface device 16 and the communication line 2.
[0055] As a result, the terminal 10 can execute at least one of the following operations (a) to (d) by executing the installed specific application. (a) Operations necessary for distributing the first video and / or the second video; (b) Operations necessary for receiving gift information and / or comment information sent to the terminal 10 by another terminal 10; (c) Operations necessary for receiving the first video and / or the second video distributed by another terminal 10; (d) Operations necessary for sending gift information and / or comment information to the other terminal 10.
[0056] It should be noted that the terminal 10 may include one or more microprocessors and / or graphics processing units (GPUs) instead of or in addition to the central processing unit 14.
[0057] 2-2. Hardware configuration of server device 20 An example of the hardware configuration of each server device 20 will be described again with reference to Fig. 2. The hardware configuration of each server device 20 (distribution server device 20A1, DB server device 20A2, game API server device 20A3, game server device 20B1, and content server device 20B2) may be the same as the hardware configuration of each terminal 10 described above. Therefore, reference numerals for the components of each server device 20 are shown in parentheses in Fig. 2.
[0058] 2, each server device 20 mainly includes a central processing unit 24, a main memory device 25, an input / output interface device 26, an input device 27, an auxiliary memory device 28, and an output device 29. These devices are connected to each other by a data bus and / or a control bus.
[0059] The central processing unit 24, main memory 25, input / output interface unit 26, input device 27, auxiliary memory 28, and output device 29 can be approximately the same as the central processing unit 14, main memory 15, input / output interface unit 16, input device 17, auxiliary memory 18, and output device 19 included in each terminal 10 described above, respectively.
[0060] In such a hardware configuration, the central processing unit 24 sequentially loads instructions and data (computer programs) constituting a specific application stored in the auxiliary storage device 28 into the main storage device 25, and by performing operations on the loaded instructions and data, it is possible to control the output device 29 via the input / output interface device 26, or to send and receive various information to and from other devices (e.g., each terminal 10 and / or studio unit 30, etc.) via the input / output interface device 26 and the communication line 2.
[0061] This allows the server device 20 to perform operations necessary to distribute the first video and / or second video sent by each broadcaster terminal 11 to each viewer terminal 12, operations necessary to send gift information and / or comment information sent by each viewer terminal 12 to a certain broadcaster terminal 11 to that broadcaster terminal 11, etc. (including various operations described in detail later).
[0062] Note that the server device 20 may include one or more microprocessors and / or a graphics processing unit (GPU) instead of or in addition to the central processing unit 24.
[0063] 2-3.Hardware configuration of Studio Unit 30 As described above, the studio unit 30 can perform the same functions as the terminal 10 and / or the server device 20. Therefore, the studio unit 30 can have the same hardware configuration as the terminal 10 or the server device 20 described above.
[0064] 3. Functions of each device Next, an example of the functions of the terminal 10, the server device 20, and the studio unit 30 will be described.
[0065] 3-1. Functions of Terminal 10 An example of the functions of the terminal 10 will be described with reference to Fig. 3. Fig. 3 is a block diagram schematically showing an example of the functions of the terminal 10 shown in Fig. 1.
[0066] As shown in FIG. 3, the terminal 10 may mainly include a first video generation unit 100, a second video generation unit 110, a communication unit 120, a display unit 130, a memory unit 140, a user interface unit 150, and a gift processing unit 160.
[0067] (1) First moving image generator 100 The first moving image generating unit 100 can generate a first moving image including animation of an avatar object of the broadcaster based on motion data related to the broadcaster's motion. To achieve this, the first moving image generating unit 100 can include, for example, an acquiring unit 102 and a processing unit 104.
[0068] The acquisition unit 102 may include one or more first sensors 102a (not shown) that acquire data related to the broadcaster's body, and one or more second sensors 102b (not shown) that acquire audio data related to speaking and / or singing uttered by the broadcaster.
[0069] In a preferred embodiment, the first sensor 102a may include an RGB camera for capturing visible light and a near-infrared camera for capturing near-infrared light, such as the TrueDepth camera included in the iPhone X. The second sensor 102b may include a microphone for recording audio.
[0070] First, with regard to the first sensor 102a, the acquisition unit 102 captures an image of the streamer's body using the first sensor 102a placed close to the streamer's body. This allows the acquisition unit 102 to generate data (e.g., an MPEG file) in which the images acquired by the RGB camera are associated with a time code (a code indicating the time of acquisition) and recorded over a unit time. Furthermore, the acquisition unit 102 can generate data (e.g., a TSV file) in which a predetermined number (e.g., 51) of depth-indicating values (e.g., floating-point values) acquired by the near-infrared camera are associated with the time code and recorded over a unit time. A TSV file is a file format in which multiple pieces of data are recorded, separated by tabs.
[0071] Regarding the near-infrared camera, specifically, a dot projector emits an infrared laser that forms a dot pattern onto the performer's body, and the near-infrared camera captures the infrared dots projected and reflected from the performer's body, generating an image of the captured infrared dots. The acquisition unit 102 compares a pre-registered image of the dot pattern emitted by the dot projector with an image captured by the near-infrared camera, and calculates the depth of each point (feature point) (e.g., the distance between each point and the near-infrared camera) using the positional deviation of each point (feature point) (e.g., each of 51 points) in both images. The acquisition unit 102 can generate data that associates the calculated depth values with the time code as described above and records them over a unit time.
[0072] Next, with regard to the second sensor 102b, the acquisition unit 102 acquires audio related to the speaking and / or singing uttered by the streamer using the second sensor 102b arranged close to the streamer's body. This allows the acquisition unit 100 to generate data (e.g., an MPEG file) recorded over a unit time period in association with a time code. In one embodiment, the acquisition unit 102 can acquire audio data related to the speaking and / or singing uttered by the streamer using the second sensor 102b, while simultaneously acquiring data related to the streamer's body using the first sensor 102a. In this case, the acquisition unit 102 can generate data (e.g., an MPEG file) recorded over a unit time period in association with the same time code, including the image acquired by the RGB camera and the audio data related to the speaking and / or singing uttered by the streamer using the second sensor 102b.
[0073] The acquisition unit 102 can output the data generated in this manner regarding the broadcaster's body (MPEG files, TSV files, etc.) and / or audio data regarding the speaking and / or singing uttered by the broadcaster (MPEG files, etc.) to the processing unit 104.
[0074] Here, the case where the first sensor 102a includes an RGB camera and an infrared camera has been described, but the first sensor 102a can also include, for example, any of the following (A) to (C). (A) A camera that detects infrared light emitted by an infrared laser and reflected off the performer's face. (B) Multiple RGB cameras capturing visible light (C) A single camera capturing visible light
[0075] In the case of (A) above, the acquisition unit 102 can calculate the depth of each feature point on the streamer's body using the same method as described above. In the case of (B) above, the acquisition unit 102 can calculate the depth of each feature point on the streamer's body using multiple images captured by multiple RGB cameras. In the case of (C) above, the acquisition unit 102 can calculate the depth of each feature point on the streamer's body from images captured by a single camera using deep learning or the like. In addition, in the case of (C) above, the acquisition unit 102 may calculate the depth of each feature point on the performer's body by performing an analysis process (image processing, etc.) on images captured by a single camera.
[0076] The processing unit 104 can generate moving images including animation of a virtual character (an avatar object of the broadcaster) based on data related to the broadcaster's body from the acquisition unit 102. With regard to the moving images of the virtual character itself, the processing unit 104 can generate moving images of the virtual character by causing a rendering unit (not shown) to perform rendering using various information (e.g., geometry information, bone information, texture information, shader information, blend shape information, etc.) stored in a character data storage unit (not shown).
[0077] Furthermore, the processing unit 104 can use data about the broadcaster's body from the acquisition unit 102 (data about the depth of each feature point on the performer's body) to generate a video in which the facial expression of the avatar object is changed (for example, a video in which the facial expression of the avatar object changes in synchronization with the movement of the performer's mouth and eyes, i.e., a video in which the facial expression of the avatar object changes in lip-sync and eye-tracking to the performer's face) using various well-known techniques.
[0078] It should be noted that any other known technique may be used to generate the first video including animation of the avatar object of the broadcaster based on motion data relating to the broadcaster's motion.
[0079] (2) Second moving image generator 110 The second moving image generating unit 110 can generate a second moving image related to the game based on operation data related to the distributor's operation using the web page received from the web server system 20B.
[0080] Specifically, second moving image generation unit 110 executes a game program embedded in a web page received from web server system 20 B. This enables second moving image generation unit 110 to render a second moving image (game moving image) relating to a game in which at least one game object operates, based on operation data indicating an operation of the distributor input via user interface unit 150.
[0081] Furthermore, the second moving image generation unit 110 can control at least one game object to be displayed in the second moving image based on gift information generated by the viewer terminal of each viewer watching the second moving image and transmitted to the user (distributor) of the terminal 10. The gift information is information indicating that a gift will be given to the distributor.
[0082] (3) Communications Department 120 The communication unit 120 can communicate various information required for video distribution and / or viewing between the distribution server system 20A and the web server system 20B. For example, when the terminal 10 operates as a broadcaster terminal 11, the communication unit 120 can access the web server system 20B and receive a web page (HTML document) containing a game program required for game execution, etc. When the terminal 10 operates as a broadcaster terminal, the communication unit 120 can transmit the first video and / or the second video to the distribution server system 20A and receive gift information and / or comment information sent to the broadcaster from the distribution server system 20A.
[0083] Furthermore, when the terminal 10 operates as a viewer terminal, the communication unit 120 can receive the first video and / or the second video transmitted by the broadcaster terminal 11 from the distribution server system 20A, and transmit gift information and / or comment information to the broadcaster to the distribution server system 20A.
[0084] (4) Display section 130 The display unit 130 can display various information required for distribution and / or viewing of videos. For example, the display unit 130 can display the first video and / or the second video to be distributed and / or the first video and / or the second video that has been received.
[0085] (5) Storage section 140 The storage unit 140 can store various information required for distribution and / or viewing of moving images.
[0086] (6) User Interface Unit 150 The user interface unit 150 can input various information required for streaming and / or viewing of videos through user operations. For example, the user interface unit 150 can input operation data from the streamer indicating the content of the streamer's operations when playing a game, and output the operation data to the second video generation unit 110.
[0087] (7) Gift Processing Unit 160 The gift processing unit 160 can process gift information transmitted and received in connection with the distribution and / or viewing of videos. For example, when the terminal 10 operates as a distributor terminal 11, the gift processing unit 160 can process gift information sent to the distributor. When the terminal 10 operates as a viewer terminal 12, the gift processing unit 160 can process gift information to be sent by the viewer.
[0088] 3-2. Functions of the server device 20 An example of the functions of server device 20 will be described with reference to Fig. 4. Fig. 4 is a block diagram schematically showing an example of the functions of server device 20 shown in Fig. 1. As shown in Fig. 4, server device 20 includes, for example, a communication unit 200, a storage unit 210, a gift processing unit 220, a determination unit 230, and an extraction unit 240.
[0089] (1) Communications Department 200 The communication unit 200 can communicate various information required for distribution and / or viewing of videos between the distributor terminal 11 and / or the viewer terminal 12. For example, when the server device 20 operates as a distribution server system 20A, it can receive a first video and / or a second video from each distributor terminal 11 and distribute it to each viewer terminal 12. When the server device 20 operates as a web server system 20B, it can transmit a web page incorporating a game program to each distributor terminal 11 that accesses it.
[0090] (2) Storage section 210 The storage unit 210 can store various information required for streaming and / or viewing of videos. The storage unit 210 stores, for example, data indicating the association between a first broadcaster and other broadcasters and / or viewers. The storage unit 210 stores, for example, data related to the streaming history of collaborative broadcasts conducted by the first broadcaster with other broadcasters. The data stored in the storage unit 210 is updated, for example, each time the terminal 10 broadcasts and / or views the broadcast. Note that, among the data stored in the storage unit 210, data related to at least one user who has conducted a collaborative broadcast with the first broadcaster may be referred to as first data. The first data is, for example, data related to users who have previously streamed games together with the first broadcaster and / or users who have streamed videos using their own avatar together with the avatar of the first broadcaster.
[0091] The data stored in the memory unit 210 includes, for example, information regarding at least one of "collaboration information," "broadcast time / viewing time," "game progress status," "match history," "number of followers," "special skills," and "gift information."
[0092] "Collaboration information" includes, for example, information indicating parameters of games previously broadcast or viewed by other broadcasters who have broadcast games in collaboration with the first broadcaster. "Collaboration information" may also include, for example, information regarding video broadcasts using the avatar of the first broadcaster and the avatar of the other broadcaster. "Broadcast time / viewing time" refers to the time that users operating each terminal 10 have previously broadcast or viewed games. The storage unit 210 stores, for example, the cumulative time that each user has previously broadcast and / or viewed each game.
[0093] "Game progress" indicates the progress of a game that a broadcaster has previously broadcast. "Match history" indicates, for example, the number of wins, losses, and draws for users who participated in the game when the game being played is a competitive game. "Match history" may be, for example, a ranking of users who participated in the game when the game being played is a competitive game. "Match history" may be a numerical value calculated by assigning a predetermined weight to each win, loss, draw, and ranking.
[0094] The "number of followers" is the number equivalent to the number of other users who follow a user. The more followers a user has, the more users are interested in that user. The "special skill" refers to a skill (special move) possessed by the broadcaster's avatar. If the game being played is a competitive game, the special skill includes, for example, a special move that can be used in the game to inflict damage on the opponent. Note that the special move inflicts greater damage on the opponent than that caused by a normal attack. Furthermore, the special move exerts a greater effect than that caused by a normal attack. The memory unit 210 stores, for example, the name of the special skill, the conditions for using the special skill, etc.
[0095] "Gift information" refers to, for example, the number of gifts, gift value, gift type, gift level, etc., quantified according to a predetermined table, and the total value of each gift is listed. Furthermore, for example, "gift information" may include at least one of the time, frequency, and number of times gifts were given (sent) from viewer terminal 12 to broadcaster terminal 11. The number of gifts refers to the number of gifts given by viewers to the first broadcaster. Here, "gift value" refers to, for example, the price of a gift if it is paid, or the points consumed for the gift if it is free. Furthermore, "gift value" may be determined based on, for example, the usable time of the gift, the display time of the gift, and / or the number of people who can simultaneously use the gift, or the total number of gifts available in the game. A shorter usable time of the gift indicates a higher value of the gift. A longer usable time of the gift indicates a lower value of the gift. A longer display time of the gift indicates a higher value of the gift. A shorter display time of the gift indicates a lower value of the gift. Also, the fewer the number of people who can use a gift at the same time, the higher the value of the gift. Also, the more the number of people who can use a gift at the same time, the lower the value of the gift. Also, the smaller the total number of gifts available in the game, the higher the value of the gift. Also, the larger the total number of gifts available in the game, the higher the value of the gift.
[0096] (3) Gift Processing Unit 220 The gift processing unit 220 can process gift information sent from each viewer to each broadcaster. Note that, when the server device 20 operates as the web server system 20B, the gift processing unit 220 may be omitted.
[0097] (4) Judgment unit 230 The determination unit 230 determines various conditions, for example, whether a condition for starting the collaborative distribution has been met (S314 described below), whether a first condition has been met (S318 described below), and whether a predetermined time has elapsed (S326 described below). Note that the first condition is a condition for determining whether to end the collaborative distribution.
[0098] (5) Extraction section 240 The extraction unit 240 extracts second data used to determine the processing details in S324 (described later) during or after the collaborative distribution. After the collaborative distribution ends, the extraction unit 240 extracts second data related to at least one user among at least one user related to the first broadcaster, based on first data related to at least one user who has previously performed a collaborative distribution with the first broadcaster.
[0099] 3-3. Functions of Studio Unit 30 As described above, the studio unit 30 can perform the same functions as the terminal 10 and / or the server device 20. Therefore, the studio unit 30 can have the functions of the terminal 10 described with reference to Fig. 3 and / or the functions of the server device 30 described with reference to Fig. 4.
[0100] 4. Overall operation of video distribution system 1 Next, the overall operation performed in the video distribution system 1 having the above configuration will be described with reference to Figures 5A and 5B. Figures 5A and 5B are flow diagrams showing an example of the operation performed in the video distribution system 1 shown in Figure 1. Note that in this embodiment, for example, the following description will be given assuming that there is a single user (second distributor) who collaborates with the first distributor to distribute, but there may be multiple users who collaborate with the first distributor instead of a single user.
[0101] First, referring to FIG. 5A, in S302, in accordance with the operation of the distributor (first distributor), the terminal 10 (first distributor terminal 11A) starts and executes a video distribution application.
[0102] In S304, the first broadcaster terminal 11A generates a first video including an animation of the first broadcaster's avatar object based on the motion data related to the motion of the first broadcaster. As a result, the first video including the animation of the first broadcaster's avatar object is displayed on the display unit 130 of the first broadcaster terminal 11A. Then, the first broadcaster terminal 11A transmits the generated first video to the distribution server device 20A1 of the distribution server system 20A. The distribution server device 20A1 distributes the first video received from the first broadcaster terminal 11A to each viewer terminal 12 running a video viewing application. As a result, the first video is also displayed on the display unit 130 of the viewer terminal 12 of each viewer.
[0103] In S306, when the first distributor taps or otherwise performs an action such as tapping on the "Game" icon 406 (not shown) displayed on the display unit 130 of the first distributor terminal 11A, the first distributor terminal 11A executes the browser function included in the video distribution application. As a result, in S308, the first distributor terminal 11A, while executing the video distribution application (i.e., after distributing the first video to each viewer terminal 12), can access the web server system 20B and receive an HTML5 document incorporating a game program.
[0104] In S310, the first broadcaster terminal 11A executes the game program embedded in the received HTML5 document, thereby generating a video related to the game (second video).
[0105] In S312, the first broadcaster terminal 11A transmits the second video (game screen) generated in S310 to the distribution server device 20A1 of the distribution server system 20A. The distribution server device 20A1 distributes the second video received from the first broadcaster terminal 11A to each viewer terminal 12 running a video viewing application. This allows the second video to be displayed on the display unit 130 of each viewer terminal 12. For example, after the process of S312 is executed, for example, after a predetermined time has elapsed, the process of S314 is executed.
[0106] In S314, the server device 20 determines whether or not the conditions for starting the collaborative distribution have been met. If the server device 20 determines in S314 whether or not the conditions for starting the collaborative distribution have been met (YES in S314), the process proceeds to S316. On the other hand, if the server device 20 determines in S314 that the conditions for starting the collaborative distribution have not been met (NO in S314), the process of S314 is performed again.
[0107] The subject of processing S314 to S326 is, for example, the game API server device 20A3 or the game server device 20B1 of the server device 20, but is not limited to this and may be, for example, another device of the server device 20.
[0108] The start condition for a collaborative broadcast is satisfied, for example, when the first broadcaster terminal 11A is broadcasting with the collaboration broadcast mode displayed on the display unit 130 enabled (ON), another terminal 10 sends data related to a collaborative broadcast application to the first broadcaster terminal 11A via the server device 20, and the first broadcaster approves the application by operating the first broadcaster terminal 11A. The first broadcaster can switch the collaboration broadcast mode between enabled (ON) and disabled (OFF) by operating the first broadcaster terminal 11A.
[0109] In S316, the server device 20 starts the collaborative distribution. After the collaborative distribution has started, for example, when a predetermined time has elapsed, the processing of S318 is performed. By starting the collaborative distribution in S316, a second video including an animation of the avatar object of the first broadcaster and an animation of the avatar object of a user other than the first broadcaster (for example, a second broadcaster) is displayed on the display unit 130 of the terminal 10 operated by a user who will broadcast and / or watch the game through the collaborative distribution.
[0110] After the server device 20 starts the collaborative distribution in S316, the users who are distributing and / or watching the game through the collaborative distribution can input operation information and / or voice into their own terminals 10 to change the display content on the display screen of the terminals 10 and / or communicate voice to users operating other terminals 10. After the server device 20 starts the collaborative distribution in S316, the terminals 10 of the users who are distributing and / or watching the game through the collaborative distribution can read data such as live game content stored in the content server device 20B2.
[0111] Furthermore, in S316, after the server device 20 starts the collaborative distribution, operation information and / or voice input by users who are distributing and / or viewing the game through the collaborative distribution to their own terminals 10 may be stored in the server device 20 (for example, the game server device 20B1). The data stored in this manner may be used to determine the content of a predetermined process in S324, which will be described later.
[0112] Furthermore, in S316, after server device 20 starts the collaborative distribution, server device 20 may configure the display content on the display unit 130 of terminal 10 operated by users who will distribute and / or watch the game through the collaborative distribution so that the display content is the same, or may configure the display content on the display unit 130 of terminal 10 operated by users who will distribute and / or watch the game through the collaborative distribution so that the display content is different. Note that when the display content on the display unit 130 of multiple broadcaster terminals 11 is configured to be different from each other, a viewer who uses terminal 10 to watch the game through the collaborative distribution may configure the display content on the display unit 130 of their own terminal 10 to display the display content related to any broadcaster among the multiple broadcasters.
[0113] In addition, in S316, an example in which the first and second broadcasters jointly broadcast a game has been described, but this is not limited to this, and any broadcast may be made by the first broadcaster and another broadcaster. For example, in S316, instead of the first and second broadcasters jointly broadcasting a game, a video in which the avatar of the first broadcaster and the avatar of the second broadcaster appear together may be broadcast.
[0114] In S318, the server device 20 determines whether or not the first condition is satisfied. If the server device 20 determines in S318 that the first condition is satisfied (YES in S318), the collaborative distribution ends and S322 shown in Fig. 5B is executed. On the other hand, if the server device 20 determines in S318 that the first condition is not satisfied (NO in S318), the processing of S318 is repeated.
[0115] The first condition may be, for example, a condition that is satisfied when third data, which is data requesting the end of the collaboration broadcast, is transmitted from a terminal 10 operated by a user who is performing and / or viewing the collaboration broadcast, or a condition that is satisfied when a predetermined time (first time) has elapsed since the start of the collaboration broadcast, or a condition that corresponds to the satisfaction of a condition in a game played through the collaboration broadcast. Here, the above-mentioned "request to end the collaboration broadcast" refers to, for example, a request made by the first broadcaster (host broadcaster) or the second broadcaster (guest) when a collaboration broadcast is being performed using the avatar of the first broadcaster and the avatar of the second broadcaster. Furthermore, the above-mentioned "condition in the game" refers to, for example, a condition such as defeating a character other than the character being controlled in a stage provided in the game, obtaining a predetermined item in the stage, moving the character being controlled in the stage to a predetermined position, or a parameter of the character being controlled in the stage being equal to or lower than a predetermined value. Defeating a character other than the controlled character in a stage provided in the game, obtaining a predetermined item in that stage, or moving the controlled character to a predetermined position in that stage may correspond to clearing that stage. Furthermore, the controlled character's parameters in that stage exceeding or falling below a predetermined value may correspond to the controlled character's death.
[0116] Furthermore, when the determination in S318 is YES and the collaborative distribution ends, for example, the first distributor terminal 11A may be configured to allow the first distributor to continue the distribution, and the second distributor terminal 11B may be configured to prevent the second distributor from continuing the distribution. In this case, the second distributor terminal 11B may be configured to allow the second distributor to continue viewing the distribution content related to the distribution as a viewer.
[0117] In S322, the server device 20 extracts second data related to users other than the first broadcaster based on the first data. The first data is data related to at least one user who has previously performed a collaborative broadcast with the first broadcaster, and is stored, for example, in the storage unit 210. The second data includes, for example, at least one of data indicating parameters of games previously broadcast or viewed by users other than the first broadcaster, and data indicating an association between the first broadcaster and users other than the first broadcaster.
[0118] At S324, the server device 20 executes a predetermined process based on the second data extracted from the first data. Specifically, at S324, the server device 20 changes at least one current parameter of the avatar of the first broadcaster based on the second data, or displays the avatar of the first broadcaster and avatars of users other than the first broadcaster in the second video based on the second data. More specifically, for example, based on the second data related to the second broadcaster, the server device 20 changes the parameters of the avatar of the first broadcaster to the parameters of the avatar of the second broadcaster, or displays the avatar of the first broadcaster and the avatar of the second broadcaster in the second video instead of displaying only the avatar of the first broadcaster in the second video.
[0119] In S324, when the current parameters of the first broadcaster's avatar are changed to predetermined parameters (first parameters) based on the second data, the first parameters are parameters that are more advantageous in terms of game progression than the current parameters. Specifically, when the second data indicates parameters related to a specific user, and the parameters of the specific user's avatar are more advantageous in terms of game progression than the parameters of the first broadcaster, the current parameters of the first broadcaster's avatar are changed to the parameters of the specific user's avatar. Instead of changing the current parameters of the first broadcaster's avatar to the parameters of the specific user's avatar, some of the parameters of the specific user's avatar may be assigned to the first broadcaster's avatar.
[0120] Also, in S324, when the avatar of the first broadcaster and the avatar of a user other than the first broadcaster are displayed in the second video based on the second data, the user in question is the user who has broadcast games together with the first broadcaster the most number of times, the user who has broadcast games together with the first broadcaster the longest cumulative time, the user who has watched games previously broadcast by the first broadcaster the most number of times, the user who has watched games previously broadcast by the first broadcaster the longest cumulative time, or the user with the highest level in the game.
[0121] Furthermore, in S324, when the avatar of the first distributor and the avatars of users other than the first distributor are displayed in the second video based on the second data, for example, the first distributor terminal 11A distributes the second video including the avatar of the first distributor and the avatars of users other than the first distributor to each viewer terminal 12. Note that the specific processing is the same as that in S304.
[0122] Next, in S326, the server device 20 determines whether or not to continue the predetermined processing executed in S324. If the server device 20 determines in S326 to continue the predetermined processing executed in S324 (YES in S326), the processing of S326 is repeated. If the server device 20 determines in S326 not to continue the predetermined processing executed in S324 (NO in S326), the series of processing shown in Figures 5A and 5B ends. Note that if the result in S326 is NO, the series of processing shown in Figures 5A and 5B may not end, and any of the processing shown in Figures 5A and 5B (for example, the processing of S314) may be performed.
[0123] As described above, according to the present disclosure, first data related to at least one user who jointly streamed with a first broadcaster is stored before a game is played. After the first broadcaster and the at least one user jointly stream, whether or not a first condition is met is determined. If it is determined that the first condition is met, second data related to at least one of the at least one user is extracted based on the first data. During or after the game is played, at least one current parameter of the first broadcaster's avatar is changed based on the second data, or the avatar of the first broadcaster and at least one of the at least one user's avatars can be displayed in a second video based on the second data. Therefore, even if a second broadcaster who streams videos with the first broadcaster stops streaming and leaves the game, the interest of a game subsequently streamed by the first broadcaster is less likely to be diminished. In particular, the effect of processing S324 is expected to be even greater when viewers are more interested in the second broadcaster who jointly streamed with the first broadcaster than in the first broadcaster.
[0124] 5. Variations In S324, if at least one current parameter of the avatar of the first broadcaster is changed based on the second data, or if the avatar of the first broadcaster and an avatar of a user other than the first broadcaster are displayed in the second video based on the second data, parameters of the avatar of the user (helper) may be changed. This parameter change may mean, for example, changing the parameters to parameters that are more advantageous in progressing through the game than the current parameters. Instead of changing the parameters of the user's avatar, a gift may be given to the user. In this way, the user may be rewarded for being selected in S322 and S324. The degree of change in the parameters and the content of the gift are determined according to the degree of contribution of the user (helper). For example, the higher the degree of contribution of the user (helper), the greater the degree of change in the parameters may be, so as to be more advantageous in progressing through the game. For example, the higher the degree of contribution of the user (helper), the greater the number of gifts, the higher the value of the gifts, the greater the variety of gifts, and / or the higher the level of the gifts.
[0125] Furthermore, while the example in which the process of S322 is executed when S318 returns YES and then the process of S324 is executed has been described, the server device 20 may count the number of viewers of the game streamed by the first broadcaster alone when S318 returns YES and before S322 is executed, or after S322 is executed and before S324 is executed. The server device 20 may then determine whether the number of viewers of the game streamed by the first broadcaster alone is equal to or greater than a predetermined number, and execute the subsequent process (S322 or S324) only if it is less than the predetermined number. Alternatively, the server device 20 may determine whether the number of viewers of the game streamed by the first broadcaster alone is smaller by at least a predetermined number than the number of viewers during the collaborative broadcast, and execute the subsequent process (S322 or S324) only if it is smaller by at least the predetermined number. The number of viewers during the collaborative broadcast may be, for example, the maximum number of viewers, the minimum number of viewers, or the average number of viewers during the collaborative broadcast.
[0126] In the above description, an example has been described in which the predetermined processing described in S324 is performed based on the second data when a second broadcaster who was broadcasting together with the first broadcaster stops broadcasting and leaves in S316, and the first broadcaster is broadcasting alone. However, this is not limiting. For example, if there are multiple broadcasters (guests) broadcasting together with the first broadcaster in S316, and at least one of the multiple guests stops broadcasting and leaves, and the first broadcaster and the remaining guests are both broadcasting a game, the processing of S322 and S324 may be performed.
[0127] Furthermore, in the above description, an example has been described in which steps S302 to S318 shown in FIG. 5A are executed in order, but this is not limiting, and at least one of the processes from S304 to S312 may be omitted.
[0128] Furthermore, in the various embodiments described above, the case has been described in which distributor terminal 11 receives an HTML (particularly HTML5) document incorporating a game program from web server system 20B in order to generate a video related to a game (second video). However, instead of receiving an HTML document incorporating a game program from web server system 20B, distributor terminal 11 can also generate a second video including a screen related to a game by executing an installed video distribution application and receiving necessary information from a data server device (not shown) (or some other server device (not shown) included in distribution server system 20A).
[0129] Furthermore, in the various embodiments described above, the distributor terminal 11 may be a smartphone or the like used by a general user, or may be a dedicated terminal installed in a studio, etc. In this case, at least one server device among the distribution server device 20A1, DB server device 20A2, and game API server device 20A3 (and further, web server system 20B) included in the distribution server system 20A may be installed together with the dedicated terminal in the studio, etc.
[0130] Furthermore, in the various embodiments described above, the case has been described in which the broadcaster terminal 11 generates a video including an animation that includes an avatar object of the broadcaster based on action data related to the broadcaster's actions and audio data related to the broadcaster's voice, and transmits this video to the server device 20. However, the broadcaster terminal 11 may transmit action data related to the broadcaster's actions and audio data related to the broadcaster's voice to the server device 20, and the server device 20 may generate a video based on this action data and audio data and transmit it to each viewer terminal 12. This reduces the amount of information transmitted from the broadcaster terminal 11 to the server device 20.
[0131] Alternatively, the distributor terminal 11 may transmit motion data relating to the distributor's motion and audio data relating to the distributor's audio to a separately provided server device, and the separate server device may generate a video based on the motion data and audio data and return the video to the distributor terminal 11, which may then transmit the received video to the server device 20. This may reduce the amount of information transmitted from the distributor terminal 11 to the separately provided server device 20.
[0132] Furthermore, the distributor terminal 11 may transmit motion data relating to the distributor's motions and audio data relating to the distributor's audio to each viewer terminal 12 via the server device 20 or the separately provided server device, and each viewer terminal 12 may generate (render) and display a video based on the received motion data and audio data. This reduces the amount of information transmitted from the server device 20 or the separately provided server device to each viewer terminal 12.
[0133] In either of the above cases, the generation of a moving image based on the motion data and audio data transmitted by the distributor terminal 11 may be shared among at least two of the server device 20, the separate server device, and each viewer terminal 12. In either case, the device responsible for generating the moving image can receive and store information (images, etc.) about the avatar object to be operated from, for example, the server device 20, etc.
[0134] Furthermore, in the various embodiments described above, the operations of each terminal 10 described above can be similarly executed by a studio unit 30 having a configuration similar to that of the terminal 10. In this case, the studio unit 30A illustrated in FIG. 1 can have the same functions as the terminal 10 for distributing videos. Similarly, the studio unit 30B illustrated in FIG. 1 can have the same functions as the terminal 10 for viewing videos. Furthermore, the operations of each server device 20 described above can also be similarly executed by a studio unit 30 having the same configuration as that of the server device 20.
[0135] Furthermore, the various embodiments described above can be used in combination with one another as long as no contradiction or inconvenience occurs.
[0136] The technology of the present disclosure is also applicable to, for example, role-playing games, simulation games, shooting games, action games, card games, mahjong, Go, Othello, puzzle games, quiz games, sports games, and / or board games. Here, the user (helper) related to the second data extracted in S324 may support the first broadcaster when playing a game, for example, as follows. For example, when the first broadcaster plays a role-playing game, a simulation game, and / or a shooting game, the user shows the first broadcaster an example of how to play the game. For example, when the first broadcaster plays an action game and in a scene in which the first broadcaster fights a predetermined character in the action game, the user participates in the battle to support the first broadcaster. For example, when the first broadcaster plays a card game, the first broadcaster can use a special skill that the user possesses. For example, when the first broadcaster plays a sports game and in a scene in which the first broadcaster fights a predetermined opponent (team) in the sports game, the user participates in the game to support the first broadcaster. Also, for example, if the first broadcaster plays a role-playing game, a simulation game, a shooting game, an action game, a card game, mahjong, Go, Othello, a puzzle game, a quiz game, a sports game, and / or a board game, the user provides information such as hints to help the first broadcaster play the game to his or her advantage.
[0137] In the second example, the first broadcaster terminal 11A of the first broadcaster executes the installed game application and accesses the distribution server system 20A, which also functions as a game server device, to broadcast the screen of the game being executed to each viewer's terminal device 10 via the distribution server system 20A. In the first and second examples, the first broadcaster terminal 11A of the first broadcaster can generate a second video using viewing parameters received from the distribution server system 20A, as in the various embodiments described above.
[0138] Furthermore, in a third example, in the first or second example, the first broadcaster terminal 11A of the first broadcaster can transmit the operation data of the first broadcaster to the web server device 20B or the distribution server system 20A without generating a game screen. In this case, the web server device 20B or the distribution server system 20A can generate a game screen using the operation data, and the distribution server system 20A can distribute a second video including the generated game screen to each viewer's terminal device 10. In this third example, when the web server device 20B generates the game screen, the web server device 20B can use the viewing parameters received from the distribution server system 20A. When the distribution server system 20A generates the game screen, the distribution server system 20A can use the viewing parameters that it manages.
[0139] 6. Various Aspects The computer program of the first aspect is a program that, when executed by at least one processor, causes the processor to function as follows: "When executed by at least one processor, the program causes the processor to broadcast a first video, which includes action data related to the actions of a first broadcaster or an animation of the first broadcaster's avatar generated based on the action data, and a second video related to a game, which is generated using a received web page based on operation data related to the first broadcaster's operations, to a viewer terminal of at least one viewer via a communication line; before the game is played, the program causes the processor to function as follows: first data related to at least one user who jointly broadcasted with the first broadcaster; after the first broadcaster and the at least one user jointly broadcast, the program causes the processor to function as follows: The computer program of the second aspect is the same as that of the first aspect, in which "the first data is data relating to at least one of at least one user who collaborated with the first broadcaster to broadcast a game, and at least one user who collaborated with the first broadcaster to broadcast using the first broadcaster's avatar and their own avatar." The computer program of the third aspect is, in the first or second aspect above, "causing the processor to function so that the second data includes at least one of data indicating parameters of games that the at least one user has previously streamed or watched, and data indicating the relationship between the at least one user and the first streamer." The computer program of the fourth aspect is, in any of the first to third aspects, that "when the avatar of the first broadcaster and the avatar of at least one of the at least one user are displayed in the second video based on the second data, at least one of the at least one user is the user of the at least one user who has jointly broadcast with the first broadcaster the most number of times, the user who has jointly broadcast with the first broadcaster the longest cumulative time, the user who has watched the most broadcasts by the first broadcaster, the user who has watched the longest cumulative time watching broadcasts by the first broadcaster, or the user with the highest level in the game." The computer program of the fifth aspect is, in any of the first to fourth aspects, that "causes the processor to function so that the first condition is a condition indicating that third data has been transmitted from a broadcaster terminal of the first broadcaster or a broadcaster terminal of a broadcaster other than the first broadcaster, or a condition indicating that a first time has elapsed since the first broadcaster and the at least one user jointly started broadcasting." The computer program of the sixth aspect is the same as in the fifth aspect above, in that "the third data causes the processor to function so that it includes data requesting that an avatar of at least one of the at least one user be displayed in the second video together with an avatar of the first broadcaster." The computer program of the seventh aspect is, in any of the first to sixth aspects, "causing the processor to function to change parameters related to the avatar of the at least one user when at least one current parameter of the avatar of the first broadcaster is changed based on the second data, or when an avatar of at least one user among the avatar of the first broadcaster and the at least one user is displayed in the second video based on the second data." The computer program of the eighth aspect is, in any of the first to seventh aspects, "causing the processor to function such that when the current parameter is changed to a first parameter based on the second data, the first parameter is a parameter that is more advantageous in the progression of the game than the current parameter." A computer program according to a ninth aspect causes the processor to function as follows: "When executed by at least one processor, the computer program causes the processor to: receive, via a communication line, a first video including motion data related to the motions of a first broadcaster or an animation of the first broadcaster's avatar generated based on the motion data; and a second video related to a game generated using the received web page based on operation data related to the first broadcaster's operations; after the first broadcaster and the at least one user jointly broadcast, determine whether a first condition is met; and if it is determined that the first condition is met, receive a first video in which at least one current parameter of the first broadcaster's avatar is changed based on second data extracted related to at least one of the at least one users based on first data related to the at least one user who jointly broadcast with the first broadcaster before the game was played; or receive a second video displaying the first broadcaster's avatar and at least one of the at least one user's avatar based on the second data." A computer program according to a tenth aspect is any one of the first to ninth aspects, wherein "the communication line includes the Internet." The computer program of the eleventh aspect is any one of the first to tenth aspects, wherein "the at least one processor includes a central processing unit (CPU), a microprocessor, and / or a graphics processing unit (GPU)." The computer program of the 12th aspect is one in which "the at least one processor is installed in a server device, a smartphone, a tablet, a mobile phone, or a personal computer" in any of the first to 11th aspects. The method according to the thirteenth aspect is a method executed by at least one processor that executes computer-readable instructions, the method including the steps of: distributing, by the processor executing the instructions, a first video including action data related to the action of a first broadcaster or an animation of an avatar of the first broadcaster generated based on the action data; and a second video related to a game generated based on operation data related to the operation of the first broadcaster using a received web page, to a viewer terminal of at least one viewer via a communication line; and storing first data related to at least one user who jointly broadcasted the game with the first broadcaster before the game was played. a step of determining whether a first condition is met after the first broadcaster and the at least one user have jointly broadcast, and if it is determined that the first condition is met, a step of extracting second data related to at least one of the at least one users based on the first data, and a step of changing at least one current parameter of an avatar of the first broadcaster based on the second data during or after the game is played, or displaying an avatar of the first broadcaster and an avatar of at least one of the at least one user in the second video based on the second data." The method of the 14th aspect is "a method executed by at least one processor that executes computer-readable instructions, the method including the steps of: receiving, via a communication line, a first video including motion data related to the motion of a first broadcaster or an animation of an avatar of the first broadcaster generated based on the motion data, and a second video related to a game generated using the received web page based on operation data related to the operation of the first broadcaster; determining whether a first condition is met after the first broadcaster and the at least one user have jointly broadcasted; and, if it is determined that the first condition is met, receiving a first video in which at least one current parameter of the avatar of the first broadcaster has been changed based on second data extracted related to at least one of the at least one users based on first data related to the at least one user who jointly broadcasted with the first broadcaster before the game was played, or receiving a second video displaying the avatar of the first broadcaster and an avatar of at least one of the at least one user based on the second data." A method according to a fifteenth aspect is the method according to the thirteenth or fourteenth aspect, wherein "the communication line includes the Internet." The method according to the 16th aspect is any of the 13th to 15th aspects, wherein "the at least one processor includes a central processing unit (CPU), a microprocessor, and / or a graphics processing unit (GPU)." The server device of the 17th aspect includes "at least one processor, wherein the processor transmits a first video including action data related to the actions of a first broadcaster or an animation of the first broadcaster's avatar generated based on the action data, and a second video related to a game generated using the received web page based on operation data related to the first broadcaster's operations, to a viewer terminal of at least one viewer via a communication line; stores first data related to at least one user who jointly broadcasted with the first broadcaster before the game is played; after the first broadcaster and the at least one user jointly broadcast, determines whether a first condition is met; and if it is determined that the first condition is met, extracts second data related to at least one of the at least one user based on the first data; and during or after the game is played, changes at least one current parameter of the first broadcaster's avatar based on the second data, or displays the avatar of the first broadcaster and an avatar of at least one of the at least one user in the second video based on the second data." The server device according to the eighteenth aspect is described as including at least one processor, wherein the processor transmits a web page including a computer program to a broadcaster terminal of the broadcaster configured to broadcast, via a communication line, a first video including action data related to the action of a first broadcaster or an animation of an avatar of the first broadcaster generated based on the action data, and a second video related to a game generated based on operation data related to the operation of the first broadcaster using the received web page, to a viewer terminal of at least one viewer, and the computer program controls the broadcaster terminal of the first broadcaster to broadcast the game in collaboration with the first broadcaster before the game is played. and storing first data related to at least one user selected from the first broadcaster and the at least one user, determining whether a first condition is met after the first broadcaster and the at least one user have jointly broadcast, and if it is determined that the first condition is met, extracting second data related to at least one of the at least one users based on the first data, and during or after the game is played, modifying at least one current parameter of an avatar of the first broadcaster based on the second data, or causing the processor to display an avatar of the first broadcaster and an avatar of at least one of the at least one user in the second video based on the second data. The server device according to the 19th aspect is the server device according to the 17th or 18th aspect, wherein "the communication line includes the Internet." The server device according to the 20th aspect is any one of the 17th to 19th aspects, wherein "the at least one processor includes a central processing unit (CPU), a microprocessor, and / or a graphics processing unit (GPU)."
[0140] In this way, the technology disclosed herein can provide a computer program, a method, and a server device that reduce the possibility of the game losing its appeal. [Explanation of symbols]
[0141] 1. Video distribution system 10 devices 11 Streamer terminal 11A First broadcaster terminal 11B Second broadcaster terminal 12, 12A, 12B, 12C viewer terminals 20 Server device 20A Distribution Server System 20A1 Distribution server device 20A2 DB server device 20A3 Game API server device 20A4 Collaboration Server Device 20B Web Server System 20B1 Game server device 20B2 Content server device 30, 30A, 30B Studio Unit
Claims
1. When executed by at least one processor, storing first data relating to at least one user who jointly broadcasted the game with the first user before the game was played; a video relating to a game using a character object of the first user and a character object of at least one third user who is cooperating with the first user to distribute the game is made viewable on a second user terminal of at least one second user via a communication line; determining whether or not a condition that the at least one third user has finished the game distribution is satisfied, and if it is determined that the condition is satisfied, extracting second data related to at least one user of the at least one user; causing the processor to function to display a character object of at least one of the users in the video based on the second data; Computer program.
2. the first data is data relating to at least one of at least one user who has collaborated with the first user to stream a game, and at least one user who has collaborated with the first user to stream using the first user's character object and their own character object; 2. The computer program of claim 1.
3. causing the processor to function so that the second data includes at least one of data indicating parameters of a game that the at least one user has previously distributed or viewed, and data indicating a relationship between the at least one user and the first user; 2. The computer program of claim 1.
4. causing the processor to function so as to change parameters relating to the character object of the at least one user when the character object of the at least one user is displayed in the video based on the second data; 2. The computer program of claim 1.
5. When executed by at least one processor, storing first data relating to at least one user who jointly broadcasted the game with the first user before the game was played; receiving, via a communication line, video of a game using a character object of the first user and a character object of at least one third user who is cooperating with the first user in game distribution; determining whether or not a condition that the at least one third user has finished the game distribution is satisfied, and if it is determined that the condition is satisfied, receiving a video displaying a character object of the at least one user based on second data extracted in relation to at least one user of the at least one user; Computer program.
6. The communication line includes the Internet.
6. A computer program according to claim 1 or 5.
7. the at least one processor comprises a central processing unit (CPU), a microprocessor, and / or a graphics processing unit (GPU); 6. A computer program according to claim 1 or 5.
8. the at least one processor: It is installed in a server device, a smartphone, a tablet, a mobile phone, or a personal computer.
6. A computer program according to claim 1 or 5.
9. 1. A method performed by at least one processor executing computer readable instructions, comprising: The processor executes the instructions to storing first data relating to at least one user who jointly broadcasted the game with the first user before the game was played; a step of making a video relating to a game using a character object of the first user and a character object of at least one third user who is jointly distributing the game with the first user viewable on a second user terminal of at least one second user via a communication line; determining whether the at least one third user has completed the game distribution; extracting second data related to at least one user of the at least one user when it is determined that the condition is satisfied; and displaying a character object of at least one of the users in the video based on the second data. method.
10. 1. A method performed by at least one processor executing computer readable instructions, comprising: The processor executes the instructions to storing first data relating to at least one user who jointly broadcasted the game with the first user before the game was played; receiving, via a communication line, video of a game using a character object of the first user and a character object of at least one third user who is cooperating with the first user to distribute the game; determining whether or not a condition that the at least one third user has finished the game distribution is satisfied, and if it is determined that the condition is satisfied, receiving a video displaying a predetermined character object based on second data extracted in relation to at least one user of the at least one third user, method.
11. The communication line includes the Internet.
11. The method according to claim 9 or 10.
12. the at least one processor comprises a central processing unit (CPU), a microprocessor, and / or a graphics processing unit (GPU); 11. The method according to claim 9 or 10.
13. at least one processor; the processor: storing first data relating to at least one user who jointly broadcasted the game with the first user before the game was played; transmitting a video relating to a game using the character object of the first user and the character object of at least one third user who is cooperating with the first user to distribute the game to a second user terminal of at least one second user via a communication line; determining whether or not a condition that the at least one third user has finished the game distribution is satisfied, and if it is determined that the condition is satisfied, extracting second data related to at least one user of the at least one user; displaying a character object of at least one of the users in the video based on the second data; Distribution server.
14. The communication line includes the Internet. The distribution server according to claim 13.
15. the at least one processor comprises a central processing unit (CPU), a microprocessor, and / or a graphics processing unit (GPU); The distribution server according to claim 13.
Citation Information
Patent Citations
Information presentation system, information presentation device and program
JP2017021799A
Computer program, method and server device
JP2022002692A
JPP6668549B
Video distribution system, video distribution method, and video distribution program
WO2020121909A1