System and method for stream recommendation
The system optimizes live streaming by matching broadcasters with suitable viewers based on parameter thresholds, enhancing engagement and streamer rewards through targeted stream recommendations.
Patent Information
- Application Number
- JP2023191156
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-08
- Publication Date
- 2025-05-20
- Estimated Expiration
- 2043-11-08
AI Technical Summary
Existing live streaming platforms struggle to effectively expose broadcasters to the right audience, leading to suboptimal engagement and rewards for streamers, and lack efficient methods to recommend streams based on viewer and broadcaster parameters.
A system and method for stream recommendation that determines viewer and broadcaster parameters relative to thresholds, recommending streams to viewers based on their engagement levels and broadcaster attractiveness, using a server and user terminals to facilitate two-way communication and interactive live streaming.
Enhances viewer engagement by matching broadcasters with appropriate audiences, improving platform operations and streamer rewards through targeted stream recommendations.
Smart Images

Figure 2025078527000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to stream recommendation, and in particular to live streaming recommendation. [Background technology]
[0002] As exemplified by live streaming services, real-time communication over the Internet has become a part of everyday life. A variety of platforms and providers offer live streaming services, and competition is fierce. It is important for platforms to provide services that users want.
[0003] Japanese Patent Publication No. 2019-164617 discloses a system that recommends live video to users. Summary of the Invention
[0004] A method according to one embodiment of the present invention is a method for stream recommendation executed by one or more computers, comprising steps of determining whether a first parameter of a distributor is higher or lower than a first threshold, determining that a first viewer has a second parameter higher than a second threshold for a stream recommended to the first viewer, determining that a second viewer has a second parameter lower than the second threshold for a stream recommended to the second viewer, and recommending a stream of the distributor to the first viewer or the second viewer based on the result of determining whether the first parameter is higher or lower than the first threshold.
[0005] A system according to one embodiment of the present invention is a system for stream recommendation, including one or more processors, the one or more computer processors executing machine-readable instructions to perform the following steps: determining whether a first parameter of a broadcaster is higher or lower than a first threshold; determining that a first viewer has a second parameter higher than a second threshold for a stream recommended to the first viewer; determining that a second viewer has a second parameter lower than the second threshold for a stream recommended to the second viewer; and recommending a stream of the broadcaster to the first viewer or the second viewer based on the determination result of whether the first parameter is higher or lower than the first threshold.
[0006] A non-transitory computer-readable medium including a program for stream recommendation, the program causing one or more computers to execute the steps of: determining whether a first parameter of a distributor is higher or lower than a first threshold; determining that a first viewer has a second parameter higher than a second threshold for a stream recommended to the first viewer; determining that a second viewer has a second parameter lower than the second threshold for a stream recommended to the second viewer; and recommending a stream of the distributor to the first viewer or the second viewer based on a result of the determination of whether the first parameter is higher or lower than the first threshold. [Brief description of the drawings]
[0007] [Figure 1] FIG. 1 is a schematic diagram showing a configuration of a live streaming system 1 according to some embodiments of the present invention. [Diagram 2] 2 is a block diagram illustrating the functionality and configuration of user terminal 30 of FIG. 1 in accordance with some embodiments of the present invention. [Diagram 3] 2 is a block diagram illustrating the functionality and configuration of the server of FIG. 1 in accordance with some embodiments of the present invention. [Figure 4] 4 is a table showing an example data structure of the stream DB 310 of FIG. 3. [Diagram 5] 4 is a table illustrating an example data structure of the user DB 312 of FIG. 3. [Figure 6] 4 is a table showing an example data structure of the gift DB 314 of FIG. 3. [Figure 7] 4 is a table showing an example data structure of the broadcaster attractiveness score DB 330 of FIG. 3. [Figure 8] 4 is a table showing an example data structure of the viewer search score DB 332 of FIG. 3. [Figure 9] 4 is a table showing an example data structure of the stream position priority DB 334 of FIG. 3. [Figure 10] An example of a recommendation page (or Spotlight Recommended section) on a viewer's user device. [Figure 11] 1 is an exemplary flow chart according to some embodiments of the present invention. [Figure 12] 4 is an example of display position adjustment according to some embodiments of the present invention. [Figure 13] 1 is a block diagram showing an example of a hardware configuration of an information processing device according to some embodiments of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0008] Hereinafter, the same or similar components, parts, steps, or signals shown in each drawing will be denoted by the same reference numerals in all drawings, and duplicated explanations will be omitted as appropriate. In addition, some parts that are not important in the explanation of each drawing will be omitted.
[0009] Broadcasters (or streamers) on streaming platforms want to engage with as many viewers as possible in order to earn higher rewards. Exposing different types of broadcasters to the right audience is important to support broadcasters and improve the operation of the platform.
[0010] FIG. 1 is a schematic diagram showing a configuration of a live streaming system 1 according to some embodiments of the present invention. The live streaming system 1 provides a live streaming service for streaming streamers (also called live streamers, anchors, distributors, and live streamers) LV and viewers (also called audiences) AU (AU1, AU2, ...) to interact or communicate in real time. As shown in FIG. 1, the live streaming system 1 includes a server 10, a user terminal 20, and a user terminal 30 (30a, 30b, ...). In some embodiments, the streamers and viewers may be collectively referred to as users. The server 10 may include one or more information processing devices connected to a network NW. The user terminals 20 and 30 may be, for example, mobile terminal devices such as smartphones, tablets, notebook PCs, recorders, portable game consoles, and wearable terminals, or stationary devices such as desktop PCs. The server 10, the user terminals 20, and the user terminals 30 are connected to each other so as to be able to communicate with each other via various wired or wireless networks NW.
[0011] The live streaming system 1 includes a distributor LV, a viewer AU, and an administrator (or an app provider, not shown) who manages the server 10. The distributor LV is a person who distributes the content in real time by recording the content on his / her user terminal 20 and uploading it directly or indirectly to the server 10. Examples of the content may be the distributor's own song, talk, performance, game play, or any other content. The administrator provides a platform for live streaming the content on the server 10, and mediates or manages real-time interactions between the distributor LV and the viewer AU. The viewer AU accesses the platform with his / her user terminal 30, selects and watches desired content. During the live streaming of the selected content, the viewer AU performs operations such as sending comments, cheers, and gifts via the user terminal 30. The distributor LV who distributes the content may respond to those comments, cheers, or gifts. The response is transmitted to the viewer AU by video and / or audio, and two-way communication is established.
[0012] The term "live streaming" may refer to a data transmission mode that allows the content recorded by the user terminal 20 of the distributor LV to be played back and viewed by the user terminal 30 of the viewer AU in substantially real time, or may refer to a live broadcast realized by such a transmission mode. The live streaming may be realized by utilizing existing live streaming technologies such as HTTP live streaming, CMAF (Common Media Application Format), WebRTC (Web Real-Time Communications), RTMP (Real-Time Messaging Protocol), and the like. Live streaming includes a transmission mode that allows the viewer AU to view the content with a certain delay at the same time as the content is recorded by the distributor LV. The length of the delay may be such that the distributor LV and the viewer AU can communicate with each other. Note that the live streaming is distinguished from so-called on-demand distribution, in which all recorded data of the content is stored once on the server and then provided to the user from the server upon the user's request.
[0013] The term "video data" as used herein refers to data including image data (also called video data) generated using the imaging function of the user terminal 20 or 30, and audio data generated using the audio input function of the user terminal 20 or 30. The video data is played on the user terminal 20, 30 so that the user can view the content. In some embodiments, it is assumed that the video data is subjected to a process such as compression, decompression, encoding, decoding, transcoding, etc., to change its format, size, or data specifications between the generation of the video data on the distributor's user terminal and the playback of the video data on the viewer's user terminal. However, since the content (e.g., video and audio) represented by the video data does not substantially change before and after such a process, the video data after such a process is expressed in this specification as being the same as the video data before such a process. In other words, when video data is generated at the distributor's user terminal and then played at the viewer's user terminal via the server 10, the video data generated at the distributor's user terminal, the video data passing through the server 10, and the video data received and played at the viewer's user terminal are all the same video data.
[0014] In the example shown in Fig. 1, the distributor LV provides live streaming data. The user terminal 20 of the distributor LV records video and audio of the distributor LV to generate the streaming data, and the generated data is transmitted to the server 10 via the network NW. At the same time, the user terminal 20 displays the recorded video VD of the distributor LV on the display of the user terminal 20, allowing the user to check the live streaming content currently being provided by the distributor LV.
[0015] The user terminals 30a, 30b of the viewers AU1, AU2 who have requested the platform to view the live streaming of the distributor LV receive video data related to the live streaming (hereinafter, may be referred to as "live streaming video data") via the network NW, play the received video data, display the videos VD1, VD2 on the display, and output audio from the speaker. The videos VD1, VD2 displayed on the user terminals 30a, 30b are substantially the same as the video VD captured by the user terminal 20 of the distributor LV, and the audio output from the user terminals 30a, 30b is substantially the same as the audio recorded by the user terminal 20 of the distributor LV.
[0016] The recording of video and audio on the user terminal 20 of the distributor LV and the playback of video data on the user terminals 30a and 30b of the viewers AU1 and AU2 are performed substantially simultaneously. When the viewer AU1 inputs a comment on the content provided by the distributor LV to the user terminal 30a, the server 10 displays the comment on the user terminal 20 of the distributor LV in real time, and also displays the comment on the user terminals 30a and 30b of the viewers AU1 and AU2. When the distributor LV reads the comment and develops a talk corresponding to the comment, the video and audio of the talk are displayed on the user terminals 30a and 30b of the viewers AU1 and AU2, respectively. This interactive operation is recognized as a conversation being established between the distributor LV and the viewer AU1. As a result, the live streaming system 1 realizes live streaming that enables two-way communication, not one-way communication.
[0017] 2 is a block diagram showing the functions and configuration of the user terminal 30 of FIG. 1 according to some embodiments of the present invention. The user terminal 20 has the same or similar functions and configuration as the user terminal 30. Each block of FIG. 2 and the following block diagrams may be realized by hardware elements such as a computer CPU or a mechanical device, or by software elements such as a computer program. The functional blocks may be realized by the cooperation of these elements. Therefore, it will be understood by those skilled in the art that these functional blocks may be realized in various forms by combining hardware and software.
[0018] The distributor LV and the viewer AU may download a live streaming application program (hereinafter, referred to as a live streaming application) from a download site via the network NW and install it on the user terminals 20 and 30. Alternatively, the live streaming application may be pre-installed on the user terminals 20 and 30. When the live streaming application is executed on the user terminals 20 and 30, the user terminals 20 and 30 communicate with the server 10 via the network NW and implement or execute various functions. Hereinafter, functions implemented by the user terminals 20 and 30 (processors such as CPUs) on which the live streaming application is executed will be described as functions of the user terminals 20 and 30. These functions are actually realized by the live streaming application on the user terminals 20 and 30. In some embodiments, these functions may be realized by a computer program written in a programming language such as HTML (HyperText Markup Language), transmitted from the server 10 to a web browser of the user terminals 20 and 30 via the network NW, and executed by the web browser.
[0019] The user terminal 30 includes a distribution unit 100 and a viewing unit 200. The distribution unit 100 generates video data in which the video and audio of the user (or the user side) are recorded, and provides the video data to the server 10. The viewing unit 200 receives the video data from the server 10 and plays the video data. The user starts the distribution unit 100 when performing live streaming, and starts the viewing unit 200 when the user watches a video. The user terminal on which the distribution unit 100 is started is the terminal of the distributor, i.e., the user terminal that generates the video data. The user terminal on which the viewing unit 200 is started is the terminal of the viewer, i.e., the user terminal on which the video data is reproduced and played.
[0020] The delivery unit 100 includes an imaging control unit 102, an audio control unit 104, a video transmission unit 106, and a distributor-side UI control unit 108. The imaging control unit 102 is connected to a camera (not shown in FIG. 2) and controls imaging performed by the camera. The imaging control unit 102 acquires image data from the camera. The audio control unit 104 is connected to a microphone (not shown in FIG. 2) and controls audio input from the microphone. The audio control unit 104 acquires the audio data from the microphone. The video transmission unit 106 transmits the image data acquired by the imaging control unit 102 and the video data including the audio data acquired by the audio control unit 104 to the server 10 via the network NW. The video data is transmitted in real time by the video transmission unit 106. That is, the generation of the video data by the imaging control unit 102 and the audio control unit 104 and the transmission of the generated video data by the video transmission unit 106 are performed substantially simultaneously. The distributor's UI control unit 108 controls the UI (user interface) of the distributor. The distributor's UI control unit 108 may be connected to a display (not shown in FIG. 2) and displays a video on the display by playing the video data transmitted by the video transmission unit 106. The distributor's UI control unit 108 may display an operation object or an instruction permission object on the display and accept an input from the distributor who taps on the object.
[0021] The viewing unit 200 includes a viewer-side UI control unit 202, an overlay information generating unit 204, and an input information transmitting unit 206. The viewing unit 200 receives video data related to live streaming in which the distributor, the viewer who is the user of the user terminal 30, and other viewers participate from the server 10 via the network NW. The viewer-side UI control unit 202 controls the UI of the viewer. The viewer-side UI control unit 202 is connected to a display and a speaker (not shown in FIG. 2), plays the received video data, displays the video on the display, and outputs the audio from the speaker. The state in which the video is output to the display and the audio is output from the speaker can be called a "video data is being played" state. The viewer-side UI control unit 202 is also connected to an input means (not shown in FIG. 2) such as a touch panel, a keyboard, a display, etc., and acquires a user's input via the input means. The overlay information generating unit 204 overlays a predetermined frame image on an image generated from video data from the server 10. The frame image includes various user interface objects (hereinafter simply referred to as "objects") for receiving input from the user, comments entered by the viewer, and / or information acquired from the server 10. The input information transmitting unit 206 transmits the user input acquired by the viewer-side UI control unit 202 to the server 10 via the network NW.
[0022] 3 is a block diagram showing the functions and configurations of the server 10 of FIG. 1 according to some embodiments of the present invention. The server 10 includes a broadcast information providing unit 302, a relay unit 304, a gift processing unit 306, a payment processing unit 308, a stream DB 310, a user DB 312, a gift DB 314, an acquisition unit 320, a determination unit 322, a recommendation unit 324, a broadcaster attractiveness score DB 330, a viewer search score DB 332, and a stream position priority DB 334.
[0023] When a notification or request to start live streaming is received from the user terminal 20 on the distributor side via the network NW, the distribution information providing unit 302 registers in the stream DB 310 a stream ID for identifying the live streaming and the distributor ID of the distributor performing the live streaming.
[0024] When the distribution information providing unit 302 receives a request for providing information about live streams from the viewing unit 200 of the user terminal 30 on the viewer side via the network NW, the distribution information providing unit 302 obtains or checks currently available live streams from the stream DB 310, and creates a list of available live streams. The distribution information providing unit 302 transmits the created list to the requesting user terminal 30 via the network NW. The viewer side UI control unit 202 of the requesting user terminal 30 generates a live stream selection screen based on the received list, and displays it on the display of the user terminal 30.
[0025] When the input information sending unit 206 of the user terminal 30 receives the selection result of the viewer on the live stream selection screen, the input information sending unit 206 generates a delivery request including the stream ID of the selected live stream and sends the request to the server 10 via the network NW. The delivery information providing unit 302 starts providing the live stream specified by the stream ID included in the received delivery request to the requesting user terminal 30. The delivery information providing unit 302 updates the stream DB 310 so that the viewer ID of (or the corresponding) the stream ID includes the user ID of the viewer of the requesting user terminal 30.
[0026] The relay unit 304 relays the video data from the user terminal 20 on the distributor side to the user terminal 30 on the viewer side in the live streaming started by the distribution information providing unit 302. The relay unit 304 receives a signal representing a user input by a viewer from the input information transmitting unit 206 during the live streaming or during playback of the video data. The signal representing the user input may be an object designation signal that designates an object displayed on the display of the user terminal 30. The object designation signal may include a viewer ID of the viewer, a distributor ID of the distributor of the live stream that the viewer is viewing, and an object ID that identifies the object. When the object is a gift, the object ID is a gift ID. Similarly, the relay unit 304 receives a signal representing a user input made by a distributor during playback (or live streaming) of the video data from the distribution unit 100 of the user terminal 20. The signal may be an object designation signal.
[0027] Furthermore, the signal representing the user input may be a comment input signal including a comment input by a viewer to the user terminal 30 and the viewer ID of the viewer. Upon receiving the comment input signal, the relay unit 304 transmits the comment and the viewer ID included in the signal to the user terminal 20 of the distributor and the user terminals 30 of other viewers. In these user terminals 20, 30, the viewer-side UI control unit 202 and the overlay information generation unit 204 display the received comment on a display associated with the viewer ID that has also been received.
[0028] The gift processing unit 306 increases the points of the distributor based on the points of the gift specified by the gift ID included in the object designation signal, and updates the user DB 312. Specifically, the gift processing unit 306 refers to the gift DB 314 to specify the points to be given to the gift ID included in the received object designation signal. Then, the gift processing unit 306 updates the user DB 312 and adds the specified points to the points of the distributor ID (or corresponding to the distributor ID) included in the object designation signal.
[0029] In response to receiving the object designation signal, the payment processing unit 308 processes the payment of the gift from the viewer. Specifically, the payment processing unit 308 refers to the gift DB 314 to determine the price points of the gift identified by the gift ID included in the object designation signal. Then, the payment processing unit 308 updates the user DB 312 and subtracts the determined price points from the points of the viewer identified by the viewer ID included in the object designation signal.
[0030] FIG. 4 is a table showing an exemplary data structure of the stream DB 310 of FIG. 3. The stream DB 310 holds information about a live stream currently being performed. The stream DB 310 stores a stream ID, a broadcaster ID, and a viewer ID in a mutually associated manner. The stream ID is an ID for identifying a live stream in a live streaming platform provided by the live streaming system 1. The broadcaster ID is a user ID for identifying a broadcaster providing the live stream. The viewer ID is a user ID for identifying a viewer of the live stream. In a live streaming platform provided by the live streaming system 1 according to some embodiments, when a user starts a live stream, the user becomes a broadcaster, and when the same user watches a live stream broadcasted by another user, the user also becomes a viewer. Therefore, the distinction between a broadcaster and a viewer is not fixed, and a user ID registered as a broadcaster ID at one time may be registered as a viewer ID at another time.
[0031] FIG. 5 is a table showing an exemplary data structure of the user DB 312 of FIG. 3. The user DB 312 holds information about users. The user DB 312 stores the user ID and the points in a mutually associated manner. The user ID identifies a user. The points correspond to points held by the corresponding user. The points are electronic values circulating within the live streaming platform. In some embodiments, when a broadcaster receives a gift from a viewer during a live broadcast, the broadcaster's points increase by a value corresponding to the gift. The points are used, for example, to determine the amount of compensation (such as money) that the broadcaster receives from the administrator of the live streaming platform. In some embodiments, when the broadcaster receives a gift from a viewer, an amount corresponding to the gift may be given instead of the points.
[0032] FIG. 6 is a table showing an exemplary data structure of the gift DB 314 of FIG. 3. The gift DB 314 holds information about gifts available to the viewer during the live streaming. Gifts are electronic data. Gifts may be purchased with points or money, or may be provided free of charge. Gifts may be given to the broadcaster by the viewer. Giving a gift to the broadcaster is also called using a gift, sending a gift, throwing a gift, etc. Some gifts can be used immediately after purchase, while others can be used at any time after purchase by the viewer who purchased the gift. When a viewer gives a gift to a broadcaster, the broadcaster is given an amount of points corresponding to the gift. When a gift is used, an effect related to the gift may occur as a result of the use. For example, an effect (such as a visual effect or an auditory effect) corresponding to the gift is displayed on the live streaming screen.
[0033] The gift DB 314 stores a gift ID, an assignment point, and a price point in association with each other. The gift ID is for identifying a gift. The assignment point is the amount of points that is assigned to a broadcaster when the gift is given to the broadcaster. The price point is the amount of points paid for the use (purchase) of the gift. A viewer can give a desired gift to a broadcaster by paying the price points of the desired gift while watching a live stream. The payment of the price points can be made by an appropriate electronic payment means. For example, the viewer may pay the price points to the administrator. Alternatively, payment by bank transfer or credit card may be used. The administrator can arbitrarily set the relationship between the assignment points and the price points. For example, it may be set as assignment points = price points. Alternatively, it may be set as the price points obtained by multiplying the assignment points by a predetermined coefficient such as 1.2, or as the price points obtained by adding a predetermined fee point to the assignment points.
[0034] Fig. 7 is a table showing an example data structure of the distributor attractiveness score DB 330 in Fig. 3. The distributor attractiveness score DB 330 stores a distributor ID, a stream ID, the number of recommended viewers, the number of selected viewers, a stream attractiveness score, and a distributor attractiveness score in association with each other.
[0035] The number of recommended viewers refers to the number of viewers to whom the corresponding stream was recommended (or displayed). For example, stream S21 was recommended or displayed to 100 viewers. In some embodiments, the viewers may be new viewers who have not previously viewed the corresponding stream (or past streams) of the broadcaster.
[0036] The number of selected viewers refers to the number of viewers who selected the corresponding stream among the number of viewers who received the recommendation. For example, 60 viewers out of 100 recommended viewers selected (or clicked or tapped) stream S21.
[0037] The stream attractiveness score is the ratio of the "number of selected viewers" to the "number of recommended viewers". In this embodiment, the streamer attractiveness score is calculated by averaging the stream attractiveness scores of the streamers. The streamer attractiveness score may be calculated in various ways. In some embodiments, the streamer attractiveness score increases with an increase in the stream attractiveness score. In some embodiments, the streamer attractiveness score may be calculated based on all streams performed by the streamer within a certain period of time. In some embodiments, the calculation of the values in the streamer attractiveness score DB330 may be performed by a calculation unit in the server 10 or the determination unit 324.
[0038] A higher streamer attractiveness score indicates that the streamer (or the streamer's stream, or thumbnails of the streamer's stream) is more attractive and a higher percentage of viewers who were recommended the streamer's stream (or new viewers to the streamer) chose to watch the streamer's stream.
[0039] Fig. 8 is a table showing an exemplary data structure of the viewer search score DB 332 in Fig. 3. The viewer search score DB 332 stores a viewer ID, the number of recommended streams, the number of selected streams, and a viewer search score in association with each other.
[0040] The number of recommended streams indicates the number of streams that have been recommended to the viewer, e.g., within a certain time period. For example, 50 streams are recommended to viewer V1. In some embodiments, the streams may be "new to viewer" streams, i.e., the streams are from a streamer that the viewer has not seen before.
[0041] The number of selected streams indicates the number of streams selected by the viewer out of the number of recommended streams. For example, viewer V1 selected and viewed 40 of the 50 recommended streams.
[0042] The viewer exploration score is the ratio of “number of selected streams” to “number of recommended streams.” In some embodiments, calculation of the values in the viewer exploration score DB 332 may be performed by a calculation unit in the server 10 or the determining unit 324.
[0043] A higher viewer exploration score indicates that the viewer is more likely or inclined to explore streams (or streams from streamers new to that viewer) and a higher percentage of streams recommended (or displayed) to that viewer are selected and viewed by that viewer.
[0044] The acquisition unit 320 is configured to acquire requests (or spotlight requests) from broadcasters to be recommended. In some embodiments, the acquisition unit 320 is configured to acquire data from databases inside or outside the server 10 and store the data in the broadcaster attractiveness score DB 330, the viewer search score DB 332, and / or the stream position priority DB 334. The data may include the number of recommended viewers, the number of selected viewers, the number of recommended streams, and / or the number of selected streams.
[0045] The determining unit 322 is configured to determine whether a streamer is eligible to request to be recommended. In some embodiments, a streamer must meet certain requirements before requesting to be recommended. For example, to request to be recommended, the streamer must earn a certain number of points or rewards within a certain period of time. The determining unit 322 may be configured to compare the streamer's reward with a required reward threshold. This is to ensure the quality of the streamer's eligible to request to be recommended.
[0046] The determining unit 322 is configured to determine whether the parameter of the streamer is higher or lower than a threshold. For example, the determining unit 322 determines whether the streamer's streamer attractiveness score is higher or lower than an attractiveness score threshold. In some embodiments, if the streamer's streamer attractiveness score is higher than the attractiveness score threshold, the streamer is referred to as a high-attractive streamer. In some embodiments, if the streamer's streamer attractiveness score is lower than the attractiveness score threshold, the streamer is referred to as a low-attractive streamer. The attractiveness score threshold may be set according to practical operations and various purposes.
[0047] The determining unit 322 is configured to determine whether a viewer has a parameter higher or lower than a threshold for a stream recommended to the viewer. For example, the determining unit 322 determines whether the viewer exploration score of a viewer is higher or lower than an exploration score threshold for a stream recommended to the viewer. In some embodiments, if the viewer exploration score of the viewer is higher than the exploration score threshold, the viewer is referred to as an active explorer. In some embodiments, if the viewer exploration score of the viewer is lower than the exploration score threshold, the viewer is referred to as a passive explorer. The exploration score threshold may be set according to practical operations and various purposes.
[0048] The recommendation unit 324 is configured to recommend streams of broadcasters to viewers. In some embodiments, the recommendation unit 324 is configured to recommend streams of broadcasters to viewers based on whether the broadcaster is a highly attractive broadcaster or a less attractive broadcaster and / or based on whether the viewer is an active explorer or a passive explorer. In some embodiments, the recommendation unit 324 recommends streams of less attractive broadcasters to viewers who are active explorers so that the streams are selected by more viewers (even if the broadcaster is a less attractive broadcaster due to, for example, an unattractive thumbnail).
[0049] In some embodiments, the recommendation unit 324 recommends streams from highly attractive broadcasters to viewers who are passive explorers. Because the broadcasters are highly attractive (e.g., the broadcasters have attractive thumbnails), the streams may be selected by many passive explorers. Furthermore, when the number of active explorers is limited, it is desirable to recommend streams from less attractive broadcasters to the active explorers to optimize the selection of all streams on the streaming platform. When streams from less attractive broadcasters are recommended to passive explorers, the selection may be low.
[0050] In some embodiments, recommending a stream to a viewer refers to displaying the stream on a recommendation page on the screen of the user terminal of the viewer. In some embodiments, the distribution information providing unit 302 may be involved in the recommendation process.
[0051] Fig. 9 is a table showing an example data structure of the stream position priority DB 334 in Fig. 3. The stream position priority DB 334 stores a distributor ID, a stream ID, a number of recommended viewers, a number of selected viewers, a number of target selected viewers, an achievement score, and a position priority score in association with each other.
[0052] The number of recommended viewers refers to the number of viewers to whom the corresponding stream was recommended (or displayed). For example, stream S17 was recommended or displayed to 200 viewers. In some embodiments, the viewers may be new viewers who have not previously viewed the corresponding streamer's stream.
[0053] The number of selected viewers refers to the number of viewers who selected the corresponding stream among the number of viewers who received the recommendation. For example, 50 viewers out of 200 recommended viewers selected (or clicked or tapped) stream S17.
[0054] The target number of selected viewers is the target number of viewers to be reached (or selected and watched) for the corresponding broadcaster. For example, 100 is the target number of selected viewers expected to select and watch the stream of broadcaster D1.
[0055] The achievement score indicates how close the number of selected viewers is to the target number of selected viewers. The achievement score is the ratio of the "number of selected viewers" to the "target number of selected viewers." A high achievement score indicates a high rate of achievement.
[0056] The location priority score indicates a display priority (or display order) for the corresponding stream when it is recommended to a viewer. A higher score indicates a higher display priority on the screen of the user terminal of the recommended viewer. In this embodiment, the location priority score correlates with the fulfillment score. In some embodiments, as the fulfillment score increases, the location priority score decreases.
[0057] In some embodiments, when the attractiveness of the broadcaster is low, the corresponding recommended viewers are active explorers. In some embodiments, when the attractiveness of the broadcaster is high, the corresponding recommended viewers are passive explorers.
[0058] FIG. 10 is an example of a recommendation page (or Spotlight Recommendations section) on a viewer's user terminal.
[0059] In this embodiment, since the viewer is an active explorer, the streams recommended to the viewer are streams from less attractive broadcasters. The display order is determined based on the position priority score of each stream. For example, stream LS1 (displayed in slot 1) has a higher position priority score than stream LS2 (displayed in slot 2), which has a higher position priority score than stream LS3 (displayed in slot 3), which has a higher position priority score than stream LS4 (displayed in slot 4), which has a higher position priority score than stream LS5 (displayed in slot 5), which has a higher position priority score than stream LS6 (displayed in slot 6).
[0060] In another embodiment, if the viewer is a passive seeker, the streams LS1, LS2, LS3, LS4, LS5, and LS6 are streams from highly attractive broadcasters, and the display order is again determined based on the positional priority score of each stream.
[0061] FIG. 11 illustrates an exemplary flow chart according to some embodiments of the present invention.
[0062] In step S1100, the determining unit 322 determines (or updates) the broadcaster who is eligible to request the spotlight function. The spotlight function places the broadcaster's stream on a recommendation page to gain more viewers. The stream may be a live stream that is being broadcast when the spotlight function is requested by the broadcaster. The criteria for becoming an eligible broadcaster may be set based on various practices. In some embodiments, a broadcaster needs to obtain a certain number of points to become an eligible broadcaster. In some embodiments, a tag regarding whether a broadcaster is an eligible broadcaster or not is stored in the user DB 312.
[0063] In step S1102, the low attractiveness and / or high attractiveness of the broadcaster is determined (or updated) by, for example, the determining unit 322 based on the broadcaster attractiveness score DB 330. The determination result may be stored, for example, in the broadcaster attractiveness score DB 330 or the user DB 312.
[0064] In step S1104, active seekers and / or passive seekers are determined (or updated) by, for example, the determining unit 322 based on the viewer search score DB 332. The determination result may be stored, for example, in the viewer search score DB 332 or the user DB 312.
[0065] In step S1106, the acquiring unit 320 acquires spotlight requests from eligible distributors D1.
[0066] In step S1108, the determining unit 322 determines whether the broadcaster D1 is a broadcaster with low attractiveness based on the result of step S1102. If "yes," the flow proceeds to step S1110. If "no," the flow proceeds to step S1112.
[0067] In step S1110, it is determined that the stream is to be recommended to active seekers.
[0068] In step S1112, it is determined that the stream is to be recommended to passive explorers.
[0069] In step S1114, the display position of the stream on the recommendation page is determined based on the stream position priority DB 334. The stream is displayed to the viewer on the recommendation page.
[0070] Flow then returns to steps S1100, S1102, and S1104. The determination / updating of the eligible broadcasters, the less attractive and more attractive broadcasters, and the active and passive seekers may be performed periodically or in real time.
[0071] In some embodiments, streams from new eligible distributors are displayed with the highest priority, such as slot 1 or slot 2 on the recommendation page. In some embodiments, streams from new eligible distributors are recommended to all corresponding viewers (all active seekers or all passive seekers) to increase exposure. In some embodiments, streams from other (non-new) eligible distributors are displayed in slot 3 or other subsequent slots, and the order may be determined based on the stream position priority DB 334.
[0072] In some embodiments, if the broadcaster is a broadcaster with low attractiveness and the stream is recommended to an active explorer, the position where the stream is displayed on the screen of the user terminal of an active explorer is determined based on the number of other active explorers who have selected the stream. Similarly, if the broadcaster is a broadcaster with high attractiveness and the stream is recommended to a passive explorer, the position where the stream is displayed on the screen of the user terminal of a passive explorer is determined based on the number of other passive explorers who have selected the stream. Streams selected by fewer viewers are displayed with a higher priority. Streams selected by more viewers are displayed with a lower priority. This can improve the selection rate for all streams. Or, the spotlight function can help all streams achieve the target number of selected viewers.
[0073] In some embodiments, once a stream achieves the target number of selected viewers in the stream position priority DB 334 (i.e., the achievement score reaches 1), the stream is removed from the Spotlight Recommendations section because the Spotlight feature has reached a sufficient audience. In some embodiments, the target number of selected viewers is a guaranteed number of viewers guaranteed by the Spotlight feature. As long as the target number of selected viewers has not been reached, the stream will be displayed in the Spotlight section (or the Recommendations page) to reach a larger audience.
[0074] In some embodiments, the recommended viewership and / or the target selected viewership is set higher if the broadcaster has a higher level or has earned more points in past streams, so broadcasters of all levels can be motivated to achieve the criteria to make a spotlight claim to further increase their exposure.
[0075] 12 shows an example of display position adjustment according to some embodiments of the present invention. R1 is a recommendation page for viewer V1 at timing t1. R2 is a recommendation page for viewer V1 at timing t2.
[0076] At time t1, stream LS4 is displayed to viewer V1 with a higher priority than stream LS6. Stream LS4 achieves a higher achievement score than stream LS6. Therefore, at a later time t2, streams LS4 and LS6 are swapped to improve the exposure of stream LS6.
[0077] In another embodiment, R2 is a recommendation page for another viewer V2 at time t2, and the recommendation page for viewer V1 at time t2 may be the same as that at time t1. For example, streams LS1 to LS6 are streams from less attractive broadcasters, and are therefore recommended to active explorers in the order shown in R1, including viewer V1 at time t0 (before t1). At time t1, calculations show that stream LS4 has achieved a higher achievement score than stream LS6. Thus, when another active explorer V2 enters the recommendation page at time t2 (on the user terminal of V2), streams LS4 and LS6 are swapped in the recommendation page for viewer V2, improving the exposure of stream LS6.
[0078] The hardware configuration of the information processing device will be described with reference to Fig. 13. Fig. 13 is a block diagram showing an example of the hardware configuration of an information processing device based on some embodiments of the present invention. The information processing device 900 shown in the figure can realize, for example, the server 10 and / or the user terminals 20 and 30 in some embodiments.
[0079] The information processing device 900 includes a CPU 901, a ROM (read only memory) 903, and a RAM (random access memory) 905. The information processing device 900 may also include a host bus 907, a bridge 909, an external bus 911, an interface 913, an input device 915, an output device 917, a storage device 919, a drive 921, a connection port 925, and a communication device 929. The information processing device 900 further includes an imaging device such as a camera (not shown). The information processing device 900 may also include a DSP (digital signal processor) or an ASIC (application specific integrated circuit) in addition to or instead of the CPU 901.
[0080] The CPU 901 functions as an arithmetic processing device and a control device, and controls all or part of the operation of the information processing device 900 according to various programs stored in the ROM 903, the RAM 905, the storage device 919, or the removable recording medium 923. For example, the CPU 901 controls the overall operation of each functional unit included in the server 10 and the user terminals 20 and 30 in some embodiments. The ROM 903 stores programs and arithmetic parameters used by the CPU 901. The RAM 905 functions as a main storage device that stores programs used when the CPU 901 is executed, parameters that change appropriately during execution, and the like. The CPU 901, the ROM 903, and the RAM 905 are interconnected by a host bus 907, which may be an internal bus such as a CPU bus. Furthermore, the host bus 907 is connected to an external bus 911 such as a PCI (Peripheral Component Interconnect / Interface) bus via a bridge 909.
[0081] The input device 915 may be a device operated by a user, such as a mouse, a keyboard, a touch panel, a button, a switch, or a lever, or a device that converts a physical quantity into an electric signal, such as a sound sensor represented by a microphone, an acceleration sensor, a tilt sensor, an infrared sensor, a depth sensor, a temperature sensor, or a humidity sensor. The input device 915 may be, for example, a remote control device that uses radio waves such as infrared rays, or an external connection device 927 such as a mobile phone that supports the operation of the information processing device 900. The input device 915 includes an input control circuit that generates an input signal based on information input by the user or a detected physical quantity and outputs the input signal to the CPU 901. The user operates the input device 915 to input various data to the information processing device 900 and instruct the information processing device 900 to operate.
[0082] The output device 917 is a device that can visually or audibly notify the user of acquired information. The output device 917 may be, for example, a display such as an LCD, a PDP, or an OLED, an audio output device such as a speaker or a headphone, or a printer. The output device 917 outputs the processing result by the information processing device 900 as a video such as text or an image, or an audio such as a voice.
[0083] The storage device 919 is a data storage device and is configured as an example of a storage unit of the information processing device 900. The storage device 919 is, for example, a magnetic storage device such as a hard disk drive (HDD), a semiconductor storage device, an optical storage device, or a magneto-optical storage device. The storage device 919 stores the programs executed by the CPU 901, various data, various data acquired from the outside, and the like.
[0084] The drive 921 is a reader / writer of a removable recording medium 923 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and is built into or externally attached to the information processing device 900. The drive 921 reads out information recorded on the attached removable recording medium 923, and outputs it to the RAM 905. Furthermore, the drive 921 writes information to the attached removable recording medium 923.
[0085] The connection port 925 is a port for directly connecting a device to the information processing device 900. The connection port 925 may be, for example, a USB (Universal Serial Bus) port, an IEEE 1394 port, or a SCSI (Small Computer System Interface) port. Furthermore, the connection port 925 may be an RS-232C port, an optical audio terminal, an HDMI (High Definition Multimedia Interface) port, or the like. By connecting the external connection device 927 to the connection port 925, various data can be exchanged between the information processing device 900 and the external connection device 927.
[0086] The communication device 929 is, for example, a communication interface formed by a communication device for connecting to the network NW. The communication device 929 may be, for example, a communication card for a wired or wireless local area network (LAN), Bluetooth (trademark), or wireless USB (WUSB). Furthermore, the communication device 929 may be a router for optical communication, a router for ADSL (asymmetric digital subscriber line), or a modem for various communications. The communication device 929 transmits and receives signals, etc., on the Internet or between other communication devices using a predetermined protocol such as TCP / IP. The communication network NW connected to the communication device 929 is a network connected by wire or wirelessly, for example, the Internet, a home LAN, infrared communication, radio wave communication, satellite communication, etc. The communication device 929 realizes a function as a communication device.
[0087] The imaging device (not shown) is a device that captures an image of real space using an imaging element such as a CCD (charge-coupled device) or a CMOS (complementary metal-oxide semiconductor) and various members such as a lens for controlling the formation of a subject image on the imaging element, and generates a captured image. The imaging device may capture still images or moving images.
[0088] The configuration and operation of the live streaming system 1 according to this embodiment have been described above. This embodiment is merely an example, and it will be understood by those skilled in the art that various modifications are possible with respect to the combination of each component and each process, and that such modifications are also within the scope of the present invention.
[0089] The processes and procedures described in the present invention can be realized by software, hardware, or any combination thereof, in addition to those explicitly described. For example, the processes and procedures described herein can be realized by implementing logic corresponding to the processes and procedures in a medium such as an integrated circuit, a volatile memory, a non-volatile memory, a non-transitory computer-readable medium, a magnetic disk, etc. Furthermore, the processes and procedures described herein can be realized as a computer program corresponding to the processes and procedures, and can be executed by various computers.
[0090] Furthermore, the system or method described in the above embodiments may be integrated into a program stored in a non-transitory computer-readable medium such as a solid-state storage device, an optical disk storage device, a magnetic disk storage device, etc. Alternatively, the program may be downloaded from a server via the Internet and executed by a processor.
[0091] Although the technical contents and features of the present invention have been described above, those skilled in the art can still make many variations and modifications without departing from the teachings and disclosure of the present invention. Therefore, the scope of the present invention is not limited to the embodiments already disclosed, but is within the scope of the claims, including other variations and modifications that do not depart from the present invention. [Explanation of symbols]
[0092] 1. Communication Systems 10 Server 20 User terminal 30, 30a, 30b User terminal LV Streamer AU1, AU2 viewers VD, VD1, VD2 Video NW Network 30 User terminal 100 Delivery Units 102 Imaging control unit 104 Audio control unit 106 Video Transmission Unit 108 Provider UI Control Unit 200 viewing units 202 Viewer side UI control unit 204 Superposition Information Generation Unit 206 Input information transmission unit 302 Distribution Information Unit 304 Relay unit 306 Gift Processing Unit 308 Payment Processing Unit 310 Stream DB 312 User DB 314 Gift DB 320 Acquired Units 322 Judgment Unit 324 Recommendation Unit 330 Streamer Attractiveness Score DB 332 Viewer Search Score DB 334 Stream Position Priority DB 900 Information processing device 901 CPU 903 ROM 905 RAM 907 Host Bus 909 Bridge 911 External Bus 913 Interface 915 Input Device 917 Output Device 919 Storage Device 921 Drive 923 Removable Recording Media 925 Connection Port 927 External connection device 929 Communication Equipment
Claims
1. 1. A method for stream recommendation performed by a server, comprising: determining whether a first parameter of the distributor is above or below a first threshold; determining that a first viewer has a second parameter for a stream recommended to the first viewer that is greater than a second threshold; determining that a second viewer has a second parameter for a stream recommended to the second viewer that is lower than the second threshold; recommending a stream of the distributor to the first viewer or the second viewer based on a result of determining whether the first parameter is higher or lower than the first threshold; 16. A method for stream recommendation comprising:
2. moreover, determining that the first parameter of the distributor is lower than the first threshold; recommending the stream of the distributor to the first viewer; The method for stream recommendation according to claim 1 , comprising:
3. moreover, determining that the first parameter of the distributor is greater than the first threshold; recommending the stream of the distributor to the second viewer; The method for stream recommendation according to claim 1 , comprising:
4. 2. The method for stream recommendation of claim 1, further comprising determining the first parameter of the broadcaster based on a number of viewers to whom the broadcaster's streams have been recommended and a number of viewers who selected the broadcaster's stream.
5. 2. The method for stream recommendation of claim 1, further comprising determining the second parameter of the first viewer based on a number of streams recommended for the first viewer and a number of streams selected by the first viewer.
6. moreover, determining that the publisher is eligible to request to be recommended; obtaining the request from the distributor; The method for stream recommendation according to claim 1 , comprising:
7. moreover, determining that a first group of viewers has a second parameter for streams recommended to the first group of viewers that is higher than the second threshold; recommending the stream of the distributor to the first group of viewers; determining a position at which the stream of the distributor is to be displayed on a screen of a user terminal of the first viewer based on the number of viewers who have selected the stream of the distributor among the first viewer group; The method for stream recommendation according to claim 2, comprising:
8. 8. The method for stream recommendation according to claim 7, characterized in that the priority of the position for displaying the stream on the screen of the user terminal of the first viewer decreases as the number of viewers among the first group of viewers who select the stream increases.
9. 1. A system for streaming, comprising: one or more processors, the one or more processors executing machine-readable instructions to: determining whether a first parameter of the distributor is above or below a first threshold; determining that a first viewer has a second parameter for a stream recommended to the first viewer that is greater than a second threshold; determining that a second viewer has a second parameter for a stream recommended to the second viewer that is lower than the second threshold; recommending a stream of the distributor to the first viewer or the second viewer based on a result of determining whether the first parameter is higher or lower than the first threshold; A system comprising:
10. A non-transitory computer-readable medium including a program for streaming, the program being configured to: determining whether a first parameter of the distributor is above or below a first threshold; determining that a first viewer has a second parameter for a stream recommended to the first viewer that is greater than a second threshold; determining that a second viewer has a second parameter for a stream recommended to the second viewer that is lower than the second threshold; recommending a stream of the distributor to the first viewer or the second viewer based on a result of determining whether the first parameter is higher or lower than the first threshold; 23. A non-transitory computer-readable medium for causing a computer to execute a program.
Citation Information
Patent Citations
Server and method
JP7246055B1
System, method, and computer-readable medium for recommending live streams
JP7302804B1
System, method, and computer-readable medium for recommendations
JP7371844B1
System, method, and computer-readable medium for recommendations
JP7376035B1