Bullet screen motion control method, device and server

By determining and controlling the starting and ending positions of the barrage motion channel in the live broadcast scene, the problem that the prior art cannot support the barrage tilt angle movement is solved, and rich barrage effects and improved live broadcast interactivity are achieved.

CN115767167BActive Publication Date: 2025-02-25GUANGZHOU HUYA TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211533863.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-02
Publication Date
2025-02-25
Estimated Expiration
2042-12-02

AI Technical Summary

Technical Problem

The prior art cannot support barrage movement at an inclined angle in live broadcast scenes, and cannot meet some special barrage movement needs.

Method used

By determining the barrage motion channel extending along the preset motion track direction, and determining the starting position and ending position of the channel based on the relative position relationship between the barrage motion channel and the barrage display area, the barrage is controlled in the barrage display area. Move with a preset trajectory.

Benefits of technology

The barrage motion control with any preset trajectory movement direction is realized, which enriches the barrage gameplay and improves the live interactive effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115767167B_ABST
    Figure CN115767167B_ABST
Patent Text Reader

Abstract

The barrage motion control method, device and server provided in the embodiments of the present application relate to the field of video live broadcast technology. First, determine the barrage motion channel extending along the preset trajectory direction; then, based on the relative position relationship between the barrage motion channel and the barrage display area, determine the starting position and ending position of the barrage motion channel in the barrage display area; finally, assign the barrage to the corresponding barrage motion channel, and control the barrage to move in the barrage motion channel. The above scheme can design the barrage motion track based on the preset trajectory direction, and based on the starting position and ending position of the barrage motion track in the barrage display area, control the barrage assigned to the barrage motion track to move from the starting position to the ending position. Compared with the prior art, it is possible to realize the barrage motion control in any preset trajectory motion direction, realize various cool barrage effects, enrich the gameplay of barrage, and improve the interactive effect of live broadcast.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of video live broadcast technology, and more specifically, to a bullet screen motion control method, device and server. Background Art

[0002] In the field of live video broadcasting, viewers often interact with the anchor by posting commentary subtitles in bullet screens. In the existing technology, in live broadcasting scenes, only horizontal movement is supported, such as movement from right to left in the horizontal direction, and some special bullet screen movement requirements cannot be supported, such as movement in the bullet screen display area at a certain tilt angle like a meteor shower. Summary of the invention

[0003] In order to solve the above technical problems, the present application provides a bullet screen motion control method, device and server.

[0004] In a first aspect, an embodiment of the present application provides a method for controlling bullet screen motion, the method comprising:

[0005] Determine a bullet screen motion channel extending along a preset motion trajectory direction, wherein the position coordinates of the bullet screen motion channel change along the extension direction of the bullet screen motion channel, or the position coordinates and channel direction of the bullet screen motion channel change along the extension direction of the bullet screen motion channel;

[0006] Based on the relative position relationship between the bullet screen movement channel and the bullet screen display area, determining the starting position and the ending position of the bullet screen movement channel in the bullet screen display area;

[0007] The barrage is allocated to a corresponding barrage movement channel, and the barrage is controlled to move along the corresponding barrage movement channel in the barrage display area starting from the starting position of the corresponding barrage movement channel until the ending position of the corresponding barrage movement channel.

[0008] In a possible implementation, the step of determining a bullet screen motion channel extending along a preset motion trajectory direction includes:

[0009] Determine the number of bullet comments that can be accommodated at the same time on the bullet comment sending starting line;

[0010] Determine on the bullet screen sending start line a dividing point for dividing the bullet screen sending start line into a plurality of equal parts equal to the number of bullet screens;

[0011] A plurality of trajectory lines extending along a preset motion trajectory direction are produced with the endpoints of the bullet screen sending start line and the equally divided points as starting points, and the bullet screen motion channel is defined by adjacent trajectory lines.

[0012] In a possible implementation, the step of determining the starting position and the ending position of the barrage movement channel in the barrage display area based on the relative position relationship between the barrage movement channel and the barrage display area includes:

[0013] Based on the relative position relationship between the bullet screen movement channel and the bullet screen display area, determining the intersection points of the bullet screen movement channel and each side of the bullet screen display area;

[0014] The intersection point of the barrage movement channel and each side of the barrage display area that is close to the barrage sending start line is used as the barrage starting point, and the intersection point of the barrage movement channel and each side of the barrage display area that is far from the barrage sending start line is used as the barrage ending point;

[0015] The starting position of the barrage movement channel is determined by the barrage starting point, and the ending position of the barrage movement channel is determined by the barrage ending point.

[0016] In a possible implementation, after the step of determining the starting position and the ending position of the barrage movement channel in the barrage display area based on the relative position relationship between the barrage movement channel and the barrage display area, the method further includes:

[0017] Calculate the length of the bullet screen movement channel in the bullet screen display area based on the starting position and the ending position of the bullet screen movement channel;

[0018] Detecting whether there is a bullet screen movement channel whose length in the bullet screen display area is less than a preset bullet screen display length threshold;

[0019] When the length of the barrage movement channel in the barrage display area is less than the preset barrage display length threshold, the positional relationship between the barrage sending start line and the barrage display area is adjusted so that the length of the barrage movement channel determined by the adjusted barrage sending start line in the barrage display area is greater than the preset barrage display length threshold.

[0020] In a possible implementation, the method further includes:

[0021] Obtain the length of different bullet screen movement channels in the bullet screen display area;

[0022] Taking the longest bullet screen movement channel in the bullet screen display area as a reference bullet screen movement channel, and taking the movement speed of the bullet screen in the reference bullet screen movement channel as a reference speed;

[0023] The barrage movement speed of the other barrage movement channels is determined based on the length of the other barrage movement channels in the barrage display area, the length of the reference barrage movement channel in the barrage display area and the reference speed.

[0024] In a possible implementation, the step of allocating the barrage to the corresponding barrage movement channel, and controlling the barrage to move along the corresponding barrage movement channel in the barrage display area from the starting position of the corresponding barrage movement channel as the starting point until the end position of the corresponding barrage movement channel includes:

[0025] The barrage is assigned to the corresponding barrage motion channel, and based on the barrage motion speed of the corresponding barrage motion channel, the barrage is controlled to move along the corresponding barrage motion channel in the barrage display area starting from the starting position of the corresponding barrage motion channel until the ending position of the corresponding barrage motion channel.

[0026] In a possible implementation, the bullet screen display area is a rectangular area, and when the preset motion trajectory is a straight line from the upper right of the bullet screen display area to the lower left of the bullet screen display area, the method further includes a step of determining a starting line for sending the bullet screen, which step includes:

[0027] Based on the right side line of the bullet screen display area, determining a line segment of a preset length overlapping the right side line;

[0028] Translate the line segment upwards in the bullet screen display area;

[0029] After translating a preset distance, the translated straight line is rotated relative to the upper right vertex of the bullet screen display area, and the rotated line segment is used as the starting line for sending the bullet screen.

[0030] In a second aspect, an embodiment of the present application further provides a bullet screen motion control device, the device comprising:

[0031] A first determining module is used to determine a bullet screen motion channel extending along a preset motion trajectory direction, wherein the position coordinates of the bullet screen motion channel change with the extension direction of the bullet screen motion channel, or the position coordinates and the channel direction of the bullet screen motion channel change with the extension direction of the bullet screen motion channel;

[0032] A second determining module is used to determine the starting position and the ending position of the barrage movement channel in the barrage display area based on the relative position relationship between the barrage movement channel and the barrage display area;

[0033] The control module is used to allocate the barrage to the corresponding barrage movement channel, and control the barrage to move along the corresponding barrage movement channel in the barrage display area starting from the starting position of the corresponding barrage movement channel until the ending position of the corresponding barrage movement channel.

[0034] In the third aspect, an embodiment of the present application also provides a server, which includes a processor, a communication unit and a computer-readable storage medium, wherein the processor, the communication unit and the computer-readable storage medium are connected via a bus system, the communication unit is used to connect to a client to realize data interaction between the server and the client, the computer-readable storage medium is used to store programs, instructions or codes, and the processor is used to execute the programs, instructions or codes in the computer-readable storage medium to realize the barrage motion control method in any possible implementation method of the first aspect.

[0035] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores instructions. When the instructions are executed, the computer executes the barrage motion control method in the above-mentioned first aspect or any possible implementation method of the first aspect.

[0036] In the technical solution provided in the above embodiment, first, determine the barrage movement channel extending along the preset trajectory direction; then, based on the relative position relationship between the barrage movement channel and the barrage display area, determine the starting position and ending position of the barrage movement channel in the barrage display area; finally, assign the barrage to the corresponding barrage movement channel, and control the barrage to move in the barrage movement channel. The above scheme can design the barrage movement track based on the preset trajectory direction, and based on the starting position and ending position of the barrage movement track in the barrage display area, control the barrage assigned to the barrage movement track to move from the starting position to the ending position. Compared with the prior art, it is possible to realize the barrage movement control in any preset trajectory movement direction, realize various cool barrage effects, enrich the gameplay of barrage, and improve the live interactive effect. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.

[0038] Figure 1 A schematic diagram of an interactive scenario of a live video broadcast system provided in an embodiment of the present application;

[0039] Figure 2 One of the flow charts of the bullet screen motion control method provided in the embodiment of the present application;

[0040] Figure 3 Implementation provided for the embodiments of this application Figure 2 A possible flow chart of step S21 in FIG.

[0041] Figure 4 Implementation provided for the embodiments of this application Figure 2 A possible flow chart of step S22 in FIG.

[0042] Figure 5 The second flowchart of the bullet screen motion control method provided in the embodiment of the present application;

[0043] Figure 6 One of the position relationship diagrams of the bullet screen movement channel and the bullet screen display area provided in the embodiment of the present application;

[0044] Figure 7 The second diagram of the position relationship between the bullet screen movement channel and the bullet screen display area provided in the embodiment of the present application;

[0045] Figure 8 A functional module diagram of a bullet screen motion control device provided in an embodiment of the present application;

[0046] Fig. 9 A schematic diagram of a possible structure of a server provided in an embodiment of the present application. DETAILED DESCRIPTION

[0047] To make the purpose, technical scheme and advantages of the embodiment of the present application clearer, the technical scheme in the embodiment of the present application will be clearly and completely described below in conjunction with the drawings in the embodiment of the present application. It should be understood that the drawings in the present application only serve the purpose of explanation and description and are not used to limit the scope of protection of the present application. In addition, it should be understood that the schematic drawings are not drawn in real proportion. The flowchart used in this application shows the operations implemented according to some embodiments of the embodiment of the present application. It should be understood that the operations of the flowchart can be implemented out of sequence, and the steps without logical context can be reversed in order or implemented simultaneously. In addition, those skilled in the art can add one or more other operations to the flowchart under the guidance of the content of the present application, or remove one or more operations from the flowchart.

[0048] In addition, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. The components of the embodiments of the present application described and shown in the drawings here can be arranged and designed in various configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the application claimed for protection, but merely represents the selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present application.

[0049] In order to solve the above-mentioned technical problems existing in the background technology, an embodiment of the present application provides a barrage motion control solution. In order to facilitate the understanding of the present application solution, the video live broadcast system that may be applied to the present application is first introduced. It can be understood that the video live broadcast system introduced below is only to illustrate the possible application scenarios of the present application solution. The present application solution can also be applied to other application scenarios besides the following scenarios.

[0050] Please refer to Figure 1 , Figure 1 A possible interactive scenario diagram of a video live broadcast system provided by the present application is shown. The video live broadcast system 10 may include a server 100, an anchor terminal 200 and an audience terminal 300 that are in communication connection, and the server 100 may provide video image processing support for the anchor terminal 200.

[0051] In the embodiment of the present application, the host terminal 200 and the audience terminal 300 may be, but are not limited to, a smart phone, a personal digital assistant, a tablet computer, a personal computer, a laptop computer, a virtual reality terminal device, an augmented reality terminal device, etc. In the specific implementation process, there may be multiple host terminals 200 and audience terminals 300 connected to the server 100. Figure 1 Only one host terminal 200 and two viewer terminals 300 are shown. Among them, the host terminal 200 and the viewer terminal 300 can be installed with a live broadcast service program, for example, the service program can be an application APP or a small program related to Internet live broadcast used in a computer or a smart phone.

[0052] In the embodiment of the present application, the server 100 may be a single physical server or a server group consisting of one or more physical servers for performing different data processing functions. The server group may be centralized or distributed (for example, the server 100 may be a distributed system). In some possible implementations, if the server 100 uses a single physical server, different logical server components may be allocated to the physical server based on different business functions.

[0053] Understandably, Figure 1The video live broadcast scene shown is only a feasible example. In other feasible embodiments, the video live broadcast scene may also include only Figure 1 Some of the components shown may also include other components.

[0054] Combine the following Figure 1 The application scenario shown is an exemplary description of the bullet screen motion control method provided in the embodiment of the present application. Figure 2 The barrage motion control method provided in the embodiment of the present application can be executed by the aforementioned server 100. The order of some steps in the barrage motion control method in the embodiment of the present application can be exchanged with each other according to actual needs, or some of the steps can be omitted or deleted. The detailed steps of the barrage motion control method executed by the server 100 are introduced as follows.

[0055] Step S21, determining a bullet screen motion channel extending along a preset motion trajectory direction.

[0056] The barrage movement channel is the channel through which the barrage moves in the live display screen. In the live broadcast room, the barrage moves in the barrage movement channel in the form of a bitmap. In this step, the position coordinates of the barrage movement channel change with the extension direction of the barrage movement channel, or the position coordinates and channel direction of the barrage movement channel change with the extension direction of the barrage movement channel. Exemplarily, the preset motion trajectory includes a curve (for example, a parabola) and a straight line with a certain inclination angle, etc. The specific selection of the preset motion trajectory can be determined according to the preferences of the audience end 300 or the settings of the anchor end 200.

[0057] Step S22, based on the relative position relationship between the bullet screen movement channel and the bullet screen display area, determine the starting position and the ending position of the bullet screen movement channel in the bullet screen display area.

[0058] The barrage will only be displayed in the barrage display area set in the live broadcast screen. Determining the starting and ending positions of the barrage movement channel in the barrage display area can facilitate the subsequent control of the barrage to move in the barrage movement channel located in the barrage display area.

[0059] Step S23, assigning the barrage to the corresponding barrage movement channel, and controlling the barrage to move along the corresponding barrage movement channel in the barrage display area starting from the starting position of the corresponding barrage movement channel until the ending position of the corresponding barrage movement channel.

[0060] In this embodiment, after determining the starting position and ending position of the barrage movement channel, the position coordinates where the barrage should appear in the barrage movement channel when the barrage is refreshed at a preset time interval can be calculated based on the starting position, ending position, movement speed of the barrage, and the function expression corresponding to the preset motion trajectory. At each refresh, the barrage is moved to the corresponding position coordinates until it moves to the ending position of the barrage movement channel, so that the barrage can be controlled to move in the barrage display area.

[0061] The solution provided above can realize the barrage motion control in any preset trajectory direction, achieve various cool barrage effects, enrich the gameplay of barrage, and improve the live interactive effect.

[0062] For further information, please refer to Figure 3 In this embodiment, step S21 can be implemented in the following manner.

[0063] Step S211, determine the number of barrages that can be accommodated simultaneously on the barrage sending starting line.

[0064] The bullet screen sending start line is a position line formed by the starting position of the bullet screen. In this embodiment, the bullet screen sending start line can be located in the bullet screen display area or outside the bullet screen display area. The bullet screen sending start line can be used for multiple bullet screens to be sent from this position.

[0065] Step S212, determining equal division points on the bullet screen sending start line for dividing the bullet screen sending start line into a number of equal parts as the number of bullet screens.

[0066] Generally speaking, the display width of the barrage is the same, so the length of the barrage starting position accommodating different barrages in the barrage sending starting line is equal. In this step, after determining the number of barrages that can be accommodated, the barrage sending starting line can be divided into multiple equal parts equal to the number of barrages, and the corresponding equal division points are obtained.

[0067] Step S213, using the endpoints and the equally divided points of the bullet screen sending start line as starting points to create multiple trajectory lines extending along the preset motion trajectory direction, and the bullet screen motion channels are defined by adjacent trajectory lines.

[0068] Taking the endpoints and the equally divided points of the bullet screen sending start line as the starting points, multiple trajectory lines extending along the preset motion trajectory direction are created. The multiple trajectory lines are parallel to each other. The area between the first trajectory line and the second trajectory line is used as the first bullet screen motion channel, and the area between the second trajectory line and the third trajectory line is used as the second bullet screen motion channel, and so on, to determine multiple bullet screen motion channels.

[0069] Furthermore, in this embodiment, the bullet screen sending start line may be located outside the bullet screen display area. The bullet screen movement channel determined based on the bullet screen sending start line is partially located outside the bullet screen display area. The bullet screen will not be displayed when it moves in this part of the bullet screen movement channel outside the bullet screen display area. The audience needs to wait for a while before they can see the bullet screen. In order to avoid the above situation, please refer to Figure 4 In this embodiment, step S22 can be implemented in the following manner.

[0070] Step S221, based on the relative position relationship between the bullet screen movement channel and the bullet screen display area, determine the intersection points of the bullet screen movement channel and each side of the bullet screen display area.

[0071] Step S222, the intersection point of the barrage movement channel and each side of the barrage display area close to the barrage sending start line is used as the barrage starting point, and the intersection point of the barrage movement channel and each side of the barrage display area far from the barrage sending start line is used as the barrage ending point.

[0072] Step S223, the starting position of the bullet screen movement channel is determined by the bullet screen starting point, and the ending position of the bullet screen movement channel is determined by the bullet screen ending point.

[0073] Through the above method, the starting position and the ending position of the bullet screen movement channel are determined in the bullet screen display area, so that the bullet screen can be directly displayed in the bullet screen display area, avoiding the audience waiting for a long time for the appearance of the bullet screen.

[0074] Furthermore, in order to avoid the situation where the length of the bullet screen movement channel in the bullet screen display area is too short, causing the bullet screen to flash by and the audience cannot perceive the content of the bullet screen well. Figure 5 In this embodiment, after step S22, the bullet screen motion control method provided in this embodiment also includes the following steps.

[0075] Step S24, calculating the length of the bullet screen movement channel in the bullet screen display area based on the starting position and the ending position of the bullet screen movement channel.

[0076] Step S25, detecting whether there is a bullet screen movement channel in the bullet screen display area whose length is less than a preset bullet screen display length threshold.

[0077] Step S26, when the length of the barrage movement channel in the barrage display area is less than the preset barrage display length threshold, adjust the positional relationship between the barrage sending start line and the barrage display area so that the length of the barrage movement channel determined by the adjusted barrage sending start line in the barrage display area is greater than the preset barrage display length threshold.

[0078] Through the above implementation method, each barrage movement channel can have a certain length in the barrage display area, ensuring that when the barrage is assigned to different barrage movement channels, it can be displayed in the barrage display area for a certain length of time (for example, 10 seconds).

[0079] Furthermore, in this embodiment, in order to avoid that different barrage motion channels have inconsistent lengths in the barrage display area, resulting in different display times for the barrages assigned to different barrage motion channels, the barrage motion control method provided in this embodiment also includes the following steps.

[0080] First, obtain the lengths of different bullet screen motion channels in the bullet screen display area.

[0081] Next, the longest bullet screen movement channel in the bullet screen display area is used as a reference bullet screen movement channel, and the movement speed of the bullet screen in the reference bullet screen movement channel is used as a reference speed.

[0082] Then, based on the length of other barrage motion channels in the barrage display area, the length of the reference barrage motion channel in the barrage display area and the reference speed, the barrage motion speed of the other barrage motion channels is determined.

[0083] Exemplarily, in this embodiment, step S23 may be implemented in the following manner.

[0084] The barrage is assigned to the corresponding barrage motion channel, and based on the barrage motion speed control of the corresponding barrage motion channel, the barrage moves along the corresponding barrage motion channel in the barrage display area starting from the starting position of the corresponding barrage motion channel until the ending position of the corresponding barrage motion channel.

[0085] The above method can ensure that the bullet screens assigned to different bullet screen movement channels have the same display time, and avoid high-quality bullet screens being ignored by the anchor due to the short display time when they are assigned to a shorter bullet screen movement channel, thereby affecting the live interactive effect.

[0086] The above scheme is described below by taking the bullet screen display area as a rectangular area and the preset motion trajectory as a straight line from the upper right side of the bullet screen display area to the lower left side of the bullet screen display area as an example.

[0087] like Figure 6As shown, a coordinate system is established with the upper left corner vertex of the barrage display area as the origin o, the left side as the Y axis, and the upper side as the X axis. Suppose now that the barrage is allowed to move from the upper right corner of the barrage display area toward the lower left corner of the barrage display area (tilt angle θ), then the X coordinate of the barrage needs to decrease by a each time, and the Y coordinate increases by a*tanθ each time. Conversely, if the barrage is to be moved from the lower right corner of the barrage display area toward the upper left corner of the barrage display area (tilt angle θ), then the X coordinate of the barrage needs to decrease by a each time, and the Y coordinate needs to decrease by a*tanθ. Similarly, for other motion trajectories (such as parabolas), the change relationship of the position coordinates can also be determined based on the motion trajectory function combined with the above principles.

[0088] Please refer again Figure 6 , when the barrage moves from the upper right of the barrage display area to the lower left of the barrage display area at an angle of 45 degrees, if the barrage sending start line coincides with the right side of the barrage display area, the barrage will all be concentrated in the lower right area, which will cause part of the barrage to be unable to be displayed in the barrage display area. In order to overcome the above problems, the direction of the barrage sending start line can be adjusted. For example, the width of the barrage display area is defined as w, the height is defined as h, the starting point of the barrage sending start line is A, the end point is B, and its intersection with the X-axis is C, where offsetX=offsetX', offsetY=offsetY', offsetY=offsetX*tanθ, and when the tilt angle θ increases, offsetY will also increase accordingly. When the tilt angle θ reaches 90 degrees, offsetY becomes the height of the visible area h. When the tilt angle θ is 0, offsetY should theoretically be 0. Therefore, offsety and θ are in a linear relationship, but when the tilt angle θ is very small, such as 1 degree, in order to ensure that the bullet screen does not flash by, offsetY needs a minimum value to guarantee the bottom line, for example, 1 / 3 of the height h of the bullet screen display area. The value can be determined according to the actual situation. Specifically, it can be determined by adjusting the position relationship between the bullet screen sending start line AB and the bullet screen display area (for example, by translation or relative rotation). When the tilt angle θ is determined, offsetx and offsety are also determined. Next, the length of the bullet screen sending start line AB can be calculated, AB=AC+BC=(w-offsetx)*sinθ+(h-offsetY)*cosθ. In this embodiment, the starting line for sending the barrage can be determined in the following way: first, based on the right side line of the barrage display area, a line segment of a preset length overlapping with the right side line is determined; then, the line segment is translated a certain length toward the top of the barrage display area; then, after translating a preset distance, the translated straight line is rotated relative to the upper right vertex of the barrage display area, and the rotated line segment is used as the starting line for sending the barrage.

[0089] After determining the length of the bullet screen sending start line AB, the bullet screen sending start line AB can be divided into multiple equal parts based on the number of bullet screens that the bullet screen sending start line AB can accommodate. For example, Figure 7 As shown, multiple trajectory lines (straight lines) with an inclination angle of θ are made using the two endpoints and equally divided points (M1 to M4) on the bullet screen sending starting line AB, and a bullet screen movement channel is formed between adjacent trajectory lines.

[0090] Since the barrage sending starting line AB is outside the barrage display area, this will cause some barrage movement channels to be partially not located in the barrage display area, and the barrage will need to wait for a while after being sent before it appears in the barrage display area. For this reason, the intersection points of each barrage movement channel and the barrage display area can be calculated, which are T1~T6 and T1'~T6', respectively. Among them, the intersection points T1~T6 correspond to the intersection points close to the barrage sending starting line AB, and the intersection points T1'~T6' are the intersection points far from the barrage sending starting line AB. In this way, the intersection points T1~T6 can be used as the barrage starting point, and the intersection points T1'~T6' can be used as the barrage ending point. The line segment between adjacent barrage starting points is used as the starting position, and the line segment between adjacent barrage ending points is used as the ending position. For example, the line segment T1T2 is the starting position of the first barrage movement channel, and the line segment T1'T2' is the ending position of the first barrage movement channel.

[0091] For further information, please refer to Figure 8 , Figure 8 A functional module diagram of a bullet screen motion control device 400 provided in an embodiment of the present application, the embodiment of the present application can divide the functional modules of the bullet screen motion control device 400 according to the method embodiment executed by the server, that is, the following functional modules corresponding to the bullet screen motion control device 400 can be used to execute the above-mentioned various method embodiments. Among them, the bullet screen motion control device 400 can include a first determination module 410, a second determination module 420 and a control module 430. The functions of each functional module of the bullet screen motion control device 400 are described in detail below.

[0092] The first determining module 410 is used to determine a bullet screen motion channel extending along a preset motion trajectory direction.

[0093] The barrage movement channel is the channel through which the barrage moves in the display screen. In the live broadcast room, the barrage moves in the barrage movement channel in the form of a bitmap. In this embodiment, the position coordinates of the barrage movement channel change with the extension direction of the barrage movement channel, or the position coordinates and channel direction of the barrage movement channel change with the extension direction of the barrage movement channel. Exemplarily, the preset motion trajectory includes a curve (for example, a parabola) and a straight line with a certain inclination angle, etc. The specific selection of the preset motion trajectory can be determined according to the preferences of the audience end 300 or the settings of the anchor end 200.

[0094] In this embodiment, the first determination module 410 may be used to execute the above step S21. The detailed implementation of the first determination module 410 may refer to the above detailed description of step S21.

[0095] The second determining module 420 is used to determine the starting position and the ending position of the bullet screen movement channel in the bullet screen display area based on the relative position relationship between the bullet screen movement channel and the bullet screen display area.

[0096] The barrage will only be displayed in the barrage display area set in the live broadcast screen. Determining the starting and ending positions of the barrage movement channel in the barrage display area can facilitate the subsequent control of the barrage to move in the barrage movement channel located in the barrage display area.

[0097] In this embodiment, the second determination module 420 can be used to execute the above step S22. The detailed implementation of the second determination module 420 can refer to the detailed description of the above step S22.

[0098] The control module 430 is used to allocate the barrage to the corresponding barrage movement channel, and control the barrage to move along the corresponding barrage movement channel in the barrage display area starting from the starting position of the corresponding barrage movement channel until the end position of the corresponding barrage movement channel.

[0099] After determining the starting position and the ending position of the bullet screen movement channel, the control module 430 can calculate the position coordinates where the bullet screen should appear in the bullet screen movement channel when the bullet screen is refreshed at a preset time interval based on the starting position, the ending position, the movement speed of the bullet screen, and the function expression corresponding to the preset movement trajectory. At each refresh, the control module 430 moves the bullet screen to the corresponding position coordinates until the bullet screen moves to the ending position of the bullet screen movement channel, so that the bullet screen can be controlled to move in the bullet screen display area.

[0100] In this embodiment, the control module 430 can be used to execute the above step S23. The detailed implementation of the control module 430 can refer to the detailed description of the above step S23.

[0101] It should be noted that it should be understood that the division of the various modules in the above device or system is only a division of logical functions. In actual implementation, they can be fully or partially integrated into one physical entity, or they can be physically separated. And these modules can all be implemented in the form of software (for example, open source software) that can be called by the processor; they can also be implemented in the form of hardware; some modules can also be implemented in the form of software called by the processor, and some modules can be implemented in the form of hardware. As an example, the control module 430 can be implemented by running a separate processor, and can be stored in the memory of the above device or system in the form of program code. The functions of the above control module 430 are called and executed by a processor of the above device or system. The implementation of other modules is similar to it, which will not be repeated here. In addition, these modules can be fully or partially integrated together, or they can be implemented independently. The processor described here can be an integrated circuit with signal processing capabilities. In the implementation process, each step or each module in the above technical solution can be completed by an integrated logic circuit in the processor or by executing a software program.

[0102] Please refer to Fig. 9 , Fig. 9 FIG. 1 shows a hardware structure diagram of a server 100 for implementing the above-mentioned bullet screen motion control method provided by an embodiment of the present disclosure. Fig. 9 As shown, the server 100 may include a processor 110 , a computer-readable storage medium 120 , a bus 130 , and a communication unit 140 .

[0103] In a specific implementation process, the processor 110 executes the computer-executable instructions (eg, Figure 8 The various modules in the barrage motion control device 400 shown in the figure) enable the processor 110 to execute the barrage motion control method of the above method embodiment, wherein the processor 110, the computer-readable storage medium 120 and the communication unit 140 can be connected via the bus 130.

[0104] The specific implementation process of the processor 110 can refer to the various method embodiments executed by the above-mentioned server 100. The implementation principles and technical effects are similar, and the embodiments of the present application will not be repeated here.

[0105] The computer readable storage medium 120 may be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable read-only memory (EEPROM), etc. Among them, the memory 111 is used to store programs or data.

[0106] The bus 130 can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, the buses in the drawings of the present application are not limited to only one bus or one type of bus.

[0107] In the interactive scenario provided in the embodiment of the present application, the communication unit 140 can be used to communicate with the anchor terminal 200 and the audience terminal 300 to realize data interaction between the server 100 and the anchor terminal 200 and the audience terminal 300.

[0108] In addition, an embodiment of the present application also provides a readable storage medium, in which computer execution instructions are stored. When a processor executes the computer execution instructions, the barrage motion control method as described above is implemented.

[0109] In summary, the barrage motion control method, device and server provided in the embodiments of the present application first determine the barrage motion channel extending along the preset trajectory direction; then, based on the relative position relationship between the barrage motion channel and the barrage display area, determine the starting position and ending position of the barrage motion channel in the barrage display area; finally, assign the barrage to the corresponding barrage motion channel, and control the barrage to move in the barrage motion channel. The above scheme can design the barrage motion track based on the preset trajectory direction, and based on the starting position and ending position of the barrage motion track in the barrage display area, control the barrage assigned to the barrage motion track to move from the starting position to the ending position. Compared with the prior art, it is possible to realize barrage motion control in any preset trajectory motion direction, realize various cool barrage effects, enrich the gameplay of barrage, and improve the interactive effect of live broadcast.

[0110] The embodiments described above are only some embodiments of the present application, rather than all embodiments. The components of the embodiments of the present application generally described and shown in the drawings can be arranged and designed in various configurations. Therefore, the detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of protection of the present application, but merely represents the selected embodiments of the present application. Based on this, the scope of protection of the present application shall be based on the scope of protection of the claims. In addition, based on the embodiments of the present application, all other embodiments that can be obtained by those skilled in the art without making creative work should belong to the scope of protection of the present application.

Claims

1. A method for controlling barrage motion, characterized in that: The method comprises: Determine a bullet screen motion channel extending along a preset motion trajectory direction, wherein the position coordinates of the bullet screen motion channel change along the extension direction of the bullet screen motion channel, or the position coordinates and channel direction of the bullet screen motion channel change along the extension direction of the bullet screen motion channel; Based on the relative position relationship between the bullet screen movement channel and the bullet screen display area, determining the starting position and the ending position of the bullet screen movement channel in the bullet screen display area; Calculate the length of the barrage movement channel in the barrage display area based on the starting position and the ending position of the barrage movement channel; detect whether there is a barrage movement channel in the barrage display area whose length is less than a preset barrage display length threshold; when there is a barrage movement channel in the barrage display area whose length is less than the preset barrage display length threshold, adjust the positional relationship between the barrage sending start line and the barrage display area, so that the length of the barrage movement channel determined by the adjusted barrage sending start line in the barrage display area is greater than the preset barrage display length threshold; The barrage is allocated to a corresponding barrage movement channel, and the barrage is controlled to move along the corresponding barrage movement channel in the barrage display area starting from the starting position of the corresponding barrage movement channel until the ending position of the corresponding barrage movement channel.

2. The bullet screen motion control method according to claim 1, characterized in that: The step of determining a bullet screen motion channel extending along a preset motion trajectory direction comprises: Determine the number of bullet comments that can be accommodated at the same time on the bullet comment sending starting line; Determine on the bullet screen sending start line a dividing point for dividing the bullet screen sending start line into a plurality of equal parts equal to the number of bullet screens; A plurality of trajectory lines extending along a preset motion trajectory direction are produced with the endpoints of the bullet screen sending start line and the equally divided points as starting points, and the bullet screen motion channel is defined by adjacent trajectory lines.

3. The bullet screen motion control method according to claim 2, characterized in that: The step of determining the starting position and the ending position of the barrage movement channel in the barrage display area based on the relative position relationship between the barrage movement channel and the barrage display area comprises: Based on the relative position relationship between the bullet screen movement channel and the bullet screen display area, determining the intersection points of the bullet screen movement channel and each side of the bullet screen display area; The intersection point of the barrage movement channel and each side of the barrage display area that is close to the barrage sending start line is used as the barrage starting point, and the intersection point of the barrage movement channel and each side of the barrage display area that is far from the barrage sending start line is used as the barrage ending point; The starting position of the barrage movement channel is determined by the barrage starting point, and the ending position of the barrage movement channel is determined by the barrage ending point.

4. The bullet screen motion control method according to claim 1, characterized in that: The method further comprises: Obtain the length of different bullet screen movement channels in the bullet screen display area; Taking the longest bullet screen movement channel in the bullet screen display area as a reference bullet screen movement channel, and taking the movement speed of the bullet screen in the reference bullet screen movement channel as a reference speed; The barrage movement speed of the other barrage movement channels is determined based on the length of the other barrage movement channels in the barrage display area, the length of the reference barrage movement channel in the barrage display area and the reference speed.

5. The bullet screen motion control method according to claim 4, characterized in that: The step of allocating the bullet screen to the corresponding bullet screen movement channel, and controlling the bullet screen to move along the corresponding bullet screen movement channel in the bullet screen display area from the starting position of the corresponding bullet screen movement channel as the starting point until the end position of the corresponding bullet screen movement channel comprises: The barrage is assigned to the corresponding barrage motion channel, and based on the barrage motion speed of the corresponding barrage motion channel, the barrage is controlled to move along the corresponding barrage motion channel in the barrage display area starting from the starting position of the corresponding barrage motion channel until the ending position of the corresponding barrage motion channel.

6. The bullet screen motion control method according to claim 1, characterized in that: The bullet screen display area is a rectangular area, and when the preset motion trajectory is a straight line from the upper right of the bullet screen display area to the lower left of the bullet screen display area, the method further includes a step of determining a starting line for sending the bullet screen, which step includes: Based on the right side line of the bullet screen display area, determining a line segment of a preset length overlapping the right side line; Translate the line segment upwards in the bullet screen display area; After translating a preset distance, the translated straight line is rotated relative to the upper right vertex of the bullet screen display area, and the rotated line segment is used as the starting line for sending the bullet screen.

7. A bullet screen motion control device, characterized in that: The device comprises: A first determining module is used to determine a bullet screen motion channel extending along a preset motion trajectory direction, wherein the position coordinates of the bullet screen motion channel change with the extension direction of the bullet screen motion channel, or the position coordinates and the channel direction of the bullet screen motion channel change with the extension direction of the bullet screen motion channel; A second determining module is used to determine the starting position and the ending position of the barrage movement channel in the barrage display area based on the relative position relationship between the barrage movement channel and the barrage display area; An adjustment module is used to calculate the length of the barrage movement channel in the barrage display area based on the starting position and the ending position of the barrage movement channel; detect whether there is a barrage movement channel in the barrage display area whose length is less than a preset barrage display length threshold; when there is a barrage movement channel in the barrage display area whose length is less than the preset barrage display length threshold, adjust the positional relationship between the barrage sending start line and the barrage display area, so that the length of the barrage movement channel determined by the adjusted barrage sending start line in the barrage display area is greater than the preset barrage display length threshold; The control module is used to allocate the barrage to the corresponding barrage movement channel, and control the barrage to move along the corresponding barrage movement channel in the barrage display area starting from the starting position of the corresponding barrage movement channel until the ending position of the corresponding barrage movement channel.

8. A server, characterized in that: The server includes a processor, a communication unit and a computer-readable storage medium. The processor and the computer-readable storage medium are connected via a bus system. The communication unit is used to connect to a terminal device to realize data interaction between the server and the terminal device. The computer-readable storage medium is used to store programs, instructions or codes. The processor is used to execute the programs, instructions or codes in the computer-readable storage medium to realize the barrage motion control method described in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores instructions which, when executed, enable the computer to execute the bullet screen motion control method described in any one of claims 1-6.

Citation Information

Patent Citations

  • Anchor and audience interaction method and system in improved network live broadcasting process

    CN105872612A

  • Barrage processing method, terminal equipment, electronic equipment and medium

    CN110465085A