Bullet screen display method and device, equipment and storage medium
By switching between different bullet screen style attributes between video clips, the problem of plot comprehension caused by a large amount of bullet screen data is solved, the user experience is improved and the terminal resource consumption is reduced, and flexible and diverse display of bullet screen data is achieved.
Patent Information
- Application Number
- CN202610033674.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2026-02-17
AI Technical Summary
When watching video data, as the number of viewers increases, the large amount of bullet comments in the video data causes users to have difficulty understanding the plot, and also increases the consumption of terminal resources.
By switching between different bullet screen style attributes between video clips, bullet screen data in video clips with different plots can be displayed, including the first bullet screen style attribute, the transition bullet screen style attribute, and the second bullet screen style attribute, ensuring that the bullet screen data is smoothly connected when the plot changes.
It enhances users' perception of plot changes, reduces terminal resource consumption, avoids the need to replay videos multiple times to understand the plot, and improves the flexibility and diversity of bullet screen data display.
Smart Images

Figure CN121547652A_ABST
Abstract
Description
Technical Field
[0001] This application relates to fields such as Internet technology, and in particular to a method, apparatus, device, and storage medium for displaying bullet comments. Background Technology
[0002] With the continuous development of internet technology, the amount of video content online is also increasing. Users can interact with other viewers by sending bullet comments (danmu) to the videos. However, as the number of viewers increases, the amount of bullet comments can become overwhelming, hindering users' understanding of the video's plot. In practice, it has been found that users often need to replay videos multiple times to comprehend the story, increasing the resource consumption of their devices. Summary of the Invention
[0003] This application provides a method, apparatus, device, and storage medium for displaying bullet comments, which reduces the resource consumption of the terminal and helps users quickly understand the plot of the video data.
[0004] One embodiment of this application provides a method for displaying bullet comments, including: During the playback of the first video segment of the target video data, the bullet screen data in the first bullet screen set is displayed in the first video segment according to the first bullet screen style attribute; If the first video segment finishes playing, then the first video sub-segment of the second video segment in the target video data is played, and the display switches to the first video sub-segment to show the bullet screen data in the second bullet screen set according to the transition bullet screen style attribute; the plot of the first video segment is different from the plot of the second video segment; If the first video segment finishes playing, then the second video segment within the second video segment is played, and the player switches to displaying the bullet screen data from the second bullet screen set in the second video segment according to the second bullet screen style attribute; the first bullet screen style attribute, the transition bullet screen style attribute, and the second bullet screen style attribute are different.
[0005] One embodiment of this application provides a method for displaying bullet comments, including: During the playback of the first video segment of the target video data, the bullet screen data in the first bullet screen set is displayed in the first video segment according to the first bullet screen style attribute; the first video segment belongs to the first video segment in the target video data; If the first video segment finishes playing, then the second video segment in the first video segment is played, and the screen switches to display the barrage data in the first barrage set in the second video segment according to the transition barrage style attribute; If the second video segment finishes playing, then the second video segment in the target video data is played, and the display switches to the second video segment according to the second bullet screen style attribute, displaying the bullet screen data in the second bullet screen set; the first bullet screen style attribute, the transition bullet screen style attribute, and the second bullet screen style attribute are different; the plot of the first video segment is different from the plot of the second video segment.
[0006] One embodiment of this application provides a method for displaying bullet comments, including: During the playback of the first video segment of the target video data, the bullet screen data in the first bullet screen set is displayed in the first video segment according to the first bullet screen style attribute; If the first video segment finishes playing, the second video segment in the target video data is played, and the screen switches to display the barrage data in the second barrage set according to the second barrage style attribute in the second video segment. The transition barrage style attribute and the second barrage style attribute are different, and the plot of the first video segment is different from the plot of the second video segment.
[0007] One embodiment of this application provides a bullet screen display device, including: The first display module is used to display the barrage data in the first barrage set in the first video segment according to the first barrage style attribute during the playback of the first video segment of the target video data; The second display module is used to play a first video sub-segment of the second video segment in the target video data if the first video segment has finished playing, and switch to displaying the barrage data in the second barrage set in the first video sub-segment according to the transition barrage style attribute; the plot of the first video segment is different from the plot of the second video segment; The third display module is used to play the second video segment in the second video segment if the first video segment has finished playing, and switch to displaying the barrage data in the second barrage set in the second video segment according to the second barrage style attribute; the first barrage style attribute, the transition barrage style attribute and the second barrage style attribute are different.
[0008] One embodiment of this application provides a bullet screen display device, including: The first display module is used to display bullet screen data from the first bullet screen set in the first video sub-segment according to the first bullet screen style attribute during the playback of the first video sub-segment of the target video data; the first video sub-segment belongs to the first video segment in the target video data; The second display module is used to play the second video sub-segment in the first video segment if the first video sub-segment has finished playing, and switch to displaying the barrage data in the first barrage set in the second video sub-segment according to the transition barrage style attribute; The third display module is used to play the second video segment in the target video data when the second video sub-segment has finished playing, and switch to displaying the barrage data in the second barrage set in the second video segment according to the second barrage style attribute; the first barrage style attribute, the transition barrage style attribute and the second barrage style attribute are different; the plot of the first video segment is different from the plot of the second video segment.
[0009] One embodiment of this application provides a bullet screen display device, including: The first display module is used to display the barrage data in the first barrage set in the first video segment according to the first barrage style attribute during the playback of the first video segment of the target video data; The second display module is used to play the second video segment in the target video data if the first video segment has finished playing, and switch to displaying the bullet screen data in the second bullet screen set in the second video segment according to the second bullet screen style attribute; the plot of the first video segment is different from the plot of the second video segment, and the transition bullet screen style attribute and the second bullet screen style attribute are different.
[0010] One embodiment of this application provides a computer device, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps of the method described above.
[0011] One embodiment of this application provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the above-described method.
[0012] One embodiment of this application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the above-described method.
[0013] In this application, during the playback of the target video data, bullet screen data from different plot segments are displayed using different bullet screen style attributes (i.e., the first bullet screen style attribute and the second bullet screen style attribute). This prompts the user to recognize plot changes between the preceding and following video segments (i.e., the first video segment and the second video segment), enhancing the user's perception of plot changes and facilitating their rapid understanding of the target video data's plot. It also improves the flexibility and diversity of bullet screen data display. Furthermore, it avoids requiring users to repeatedly replay the video data to understand the plot, reducing terminal resource consumption (such as the resources required to load video data). Additionally, by displaying bullet screen data with transitional bullet screen attribute styles between preceding and following video segments, it avoids abrupt transitions such as blank screens (i.e., no bullet screen data) and other abrupt changes, ensuring smooth transitions between the bullet screen data displayed in the preceding and following video segments. Attached Figure Description
[0014] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0015] Figure 1 This is a schematic diagram of a bullet screen display system provided in this application; Figure 2 This is a flowchart illustrating a bullet screen display method provided in this application; Figure 3 This is a schematic diagram of an interactive scenario for a bullet screen display method provided in this application; Figure 4 This is a flowchart illustrating a bullet screen display method provided in this application; Figure 5 This is a schematic diagram of an interface for obtaining moments of plot change provided in this application; Figure 6 This is a schematic diagram of a display interface for bullet screen data provided in this application; Figure 7 This is a schematic diagram of a display interface for bullet screen data provided in this application; Figure 8 This is a schematic diagram of a bullet screen frame provided in this application; Figure 9 This is a schematic diagram illustrating the inheritance relationship between a track control component and a virtual track provided in this application; Figure 10 This is a configuration diagram of a bullet screen reversal provided in this application; Figure 11This is a schematic diagram of a display interface for bullet screen data provided in this application; Figure 12 This is a schematic diagram illustrating how to disable the switching of bullet screen style attributes, as provided in this application. Figure 13 This is a flowchart illustrating a bullet screen display method provided in this application; Figure 14 This is a flowchart illustrating a bullet screen display method provided in this application; Figure 15 This is a flowchart illustrating a bullet screen display method provided in this application; Figure 16 This is a schematic diagram of the structure of a bullet screen display device provided in an embodiment of this application; Figure 17 This is a schematic diagram of the structure of a bullet screen display device provided in an embodiment of this application; Figure 18 This is a schematic diagram of the structure of a bullet screen display device provided in an embodiment of this application; Figure 19 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation
[0016] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0017] First, the terms used in this application will be explained.
[0018] Bullet comment data refers to the personal comments and other messages posted by users while watching videos. These comments are displayed within the video content so users can see them. Other users watching the same video can also see the bullet comment data if their video playback application has the bullet comment function enabled.
[0019] Bullet comment movement direction: This refers to the direction in which bullet comment data moves on the video screen. The bullet comment movement direction can include the forward flow direction and the backward flow direction. The forward flow direction means that the bullet comment data moves from right to left on the video screen; the backward flow direction means that the bullet comment data moves from left to right on the video screen. Left refers to the left side of the user when facing the video screen, and right refers to the right side of the user when facing the video data. The video screen refers to the screen of the terminal that plays the video data.
[0020] The direction of the bullet comments (danmu) refers to the reading order of the text content. This can be either forward or reverse. Forward bullet comments are arranged from left to right, while reverse bullet comments are arranged from right to left. For example, if the bullet comment is "The main character in this drama is really beautiful," it can be arranged as "The main character in this drama is really beautiful" when the bullet comment is forward, and as "The main character in this drama is really beautiful" when the bullet comment is reversed.
[0021] Bullet comment movement speed: This refers to the movement speed of the bullet comment data. Bullet comment movement speed includes a general movement speed and an accelerated movement speed. The general movement speed is calculated based on a fixed display duration; that is, the general movement speed refers to the bullet comment data moving at a fixed speed. This general movement speed can be the default movement speed of the target application where the target video data is located. The accelerated movement speed is calculated based on a fixed acceleration, causing the bullet comment data to appear faster and faster on the video screen. Alternatively, the accelerated movement speed refers to a fixed movement speed greater than the general movement speed.
[0022] Bullet Comment Style Attributes: Bullet comment style attributes indicate whether bullet comment data is displayed statically or dynamically. Static display means the bullet comment data will be displayed in a fixed position, i.e., the bullet comment data will not move; dynamic display means the bullet comment data will move in a certain direction, and the position of the bullet comment data will change over time. Bullet comment style attributes include time parameters and spatial parameters of the bullet comment data. Time parameters include one or more of the following: start time, end time, and maximum display duration. The maximum display duration refers to the maximum duration for which the bullet comment data is displayed on the video screen; if the actual display duration exceeds this maximum display duration, the bullet comment data will end its display. Spatial parameters include one or more of the following: display position, bullet comment arrangement direction, bullet comment movement direction, bullet comment movement speed, font size, font type, color value, and transparency. Specifically, when bullet comment style attributes are used to indicate static display of bullet comment data, these attributes do not include the bullet comment movement direction and speed.
[0023] It should be noted that the first bullet comment style attribute, the second bullet comment style attribute, and the transition bullet comment style attribute in this application are all different bullet comment style attributes. The first bullet comment style attribute and the second bullet comment style attribute are used to display bullet comment data in video clips with different storylines, so as to distinguish video clips with different storylines. The transition bullet comment style attribute is used to display the bullet comment style of bullet comment data in intermediate video sub-segments. The intermediate video sub-segment can refer to the last n video frames in the playback order of the first video clip, or the intermediate video sub-segment can refer to the first m video frames in the playback order of the second video clip, where n and m are positive integers, or the intermediate video sub-segment can refer to both the last n video frames and the first m video frames mentioned above. The transition barrage style attribute is also used to balance the differences between the first and second barrage style attributes, ensuring smooth transitions between barrage data displayed in video clips with different storylines. Specifically, the first display difference between the first and second barrage style attributes is greater than the second display difference between the first and transition barrage style attributes, and the first display difference is greater than the third display difference between the second and transition barrage style attributes. The first display difference can refer to the difference between barrage data displayed according to the first barrage style attribute and barrage data displayed according to the second barrage style attribute; the second display difference can refer to the difference between barrage data displayed according to the first barrage style attribute and barrage data displayed according to the transition barrage style attribute; and the third display difference can refer to the difference between barrage data displayed according to the second barrage style attribute and barrage data displayed according to the transition barrage style attribute. The first, second, and third display differences are all calculated for barrage data with the same text content. The transition barrage style attribute can be considered a compromise between the first barrage style attribute and the second barrage style attribute.
[0024] In one embodiment, the transition barrage style attribute is used to indicate that barrage data is displayed in a static display mode, while both the first barrage style attribute and the second barrage style attribute indicate that barrage data is displayed in a dynamic display mode. The first barrage style attribute and the second barrage style attribute have one or more of the following differences: a) The movement direction of the first barrage in the first barrage style attribute is opposite to the movement direction of the second barrage in the second barrage style attribute, that is, the movement direction of the first barrage is the opposite direction of the movement direction of the second barrage; for example, the movement direction of the first barrage is from left to right, and the movement direction of the second barrage is from right to left; or, the movement direction of the first barrage is from right to left, and the movement direction of the second barrage is from left to right. b) The arrangement direction of the first barrage in the first barrage style attribute is opposite to the arrangement direction of the second barrage in the second barrage style attribute, that is, the arrangement direction of the first barrage is the opposite direction of the arrangement direction of the second barrage; for example, the arrangement direction of the first barrage is from left to right, and the arrangement direction of the second barrage is from right to left; or, the arrangement direction of the first barrage is from right to left, and the arrangement direction of the second barrage is from left to right. c. The first movement speed in the first bullet screen style attribute is different from the second movement speed in the second bullet screen style attribute. For example, the first movement speed (such as accelerated movement speed) is greater than the second movement speed (such as general movement speed), or the first movement speed (such as general movement speed) is less than the second movement speed (such as accelerated movement speed).
[0025] In one embodiment, the transition barrage style attribute, the first barrage style attribute, and the second barrage style attribute all indicate that barrage data is displayed dynamically. The transition barrage style attribute, the first barrage style attribute, and the second barrage style attribute have one or more of the following differences: 1. The barrage movement speeds included in the transition barrage style attribute, the first barrage style attribute, and the second barrage style attribute are all different, and the barrage movement speed in the transition barrage style attribute falls within a movement speed range, which is an open interval formed by the barrage movement speeds in the first barrage style attribute and the second barrage style attribute. 2. The color values included in the transition barrage style attribute, the first barrage style attribute, and the second barrage style attribute are all different, and the color value in the transition barrage style attribute falls within a color value range, which is an open interval formed by the color values in the first barrage style attribute and the second barrage style attribute. 3. The transparency values included in the transition barrage style attributes, the first barrage style attribute, and the second barrage style attribute are all different, and the transparency value in the transition barrage style attribute falls within a transparency range, which is the open interval formed by the transparency values in the first barrage style attribute and the second barrage style attribute. 4. The font sizes included in the transition barrage style attributes, the first barrage style attribute, and the second barrage style attribute are all different, and the font size value in the transition barrage style attribute falls within a font size range, which is the open interval formed by the font size value in the first barrage style attribute (i.e., the font size) and the second barrage style attribute. For example, the font size in the first barrage style attribute is 5, the font size in the second barrage style attribute is 14, and the font size in the transition barrage style attribute is 8. 5. The font types included in the transition barrage style attributes, the first barrage style attributes, and the second barrage style attributes are different from each other. For example, the font type in the transition barrage style attribute is SimSun, the font type in the first transition barrage style attribute is KaiTi, and the font type in the second transition barrage style attribute is HeiTi.
[0026] In one embodiment, the transition barrage style attribute, the first barrage style attribute, and the second barrage style attribute all indicate that the barrage data is displayed in a static manner. The font type, font size, color value, and transparency included in the transition barrage style attribute, the first barrage style attribute, and the second barrage style attribute are all different from each other.
[0027] Virtual tracks: The rows on the video screen used to display bullet comment data are abstracted into L virtual tracks, meaning one virtual track corresponds to one row. Virtual tracks carry one or more bullet comment data and maintain the mapping between the position, size, affine transformation, and other bullet comment style attributes on the virtual tracks and time. It is a function of spatial and temporal information, where L is a positive integer. Affine transformations can change the bullet comment style attributes, such as switching from the first bullet comment style attribute to a transitional bullet comment style attribute.
[0028] Storyline: This refers to the narrative of the video data. Classified by character, video data storylines include protagonist storylines, supporting character storylines, etc. Classified by scene, video data storylines include indoor storylines (storylines of video data shot indoors), outdoor storylines (storylines of video data shot outdoors), courtyard storylines (storylines of video clips from the courtyard), lawn storylines (storylines of video clips from the lawn), etc. Classified by timeline, video data storylines include time-reversal storylines and chronological storylines. Time-reversal storylines are presented in reverse chronological order. There are two types of time-reversal storylines: looping time-reversal storylines and non-looping time-reversal storylines. Looping time-reversal storylines involve replaying previously played video clips in reverse chronological order. That is, the content presented in a looping time-reversal storyline is the same as the content presented in the previously played video clip. For example, video clip 1 shows the growth of a sapling from January to December 2023, and video clip 2 shows the growth of a sapling from December to January 2023. Therefore, the storyline of video clip 2 can be called a looping time-reversal storyline. Non-looping time-reversal storylines refer to video clips where the content presented in the previous moment differs from that in the next moment, and the events in the previous clip occur later than those in the next. For example, video clip 3 shows the growth of a sapling in 2023, while video clip 4 shows its growth in 2022. The storyline of video clip 4 can be called a non-looping time-reversal storyline. Chronological sequence storylines refer to storylines presented in the order they occur. For example, in video clip 5, the first 1 second to the 10th second shows the growth of a sapling in June 2023, while the 11th to the 20th second shows its growth in July 2023. Therefore, the storyline of video clip 5 can be called a chronological sequence storyline.
[0029] To facilitate a clearer understanding of this application, the bullet screen display system that implements this application will be introduced first, such as... Figure 1 As shown, this bullet screen display system includes a server 10 and a terminal cluster. The terminal cluster can include one or more terminals; the number of terminals will not be limited here. Figure 1As shown, the terminal cluster may specifically include terminal 1, terminal 2, terminal 3, ..., terminal y; it can be understood that terminal 1, terminal 2, terminal 3, ..., terminal y can all connect to server 10 via the network so that each terminal can interact with server 10 via the network connection.
[0030] Understandably, a server can be a single physical server, a server cluster or distributed system consisting of at least two physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, Content Delivery Network (CDN), and big data and artificial intelligence platforms. A terminal can specifically refer to in-vehicle terminals, smartphones, tablets, laptops, desktop computers, smart speakers, speakers with screens, smart TVs, smartwatches, etc., but is not limited to these. Various terminals and servers can be directly or indirectly connected via wired or wireless communication. Furthermore, the number of terminals and servers can be one or at least two; this application does not impose any restrictions.
[0031] The terminal has one or more target applications installed. These target applications can refer to applications used to play video data, such as standalone applications, web applications, or mini-programs within a host application. The target application can be a live video application, a short video application, a video teaching application, a social application, a video playback application, or a video conferencing application. Server 10 refers to a device that provides backend services for the target applications in the terminal. For example, server 10 can be used to optimize and update the target applications in the terminal. In this application, server 10 can also be used to identify moments of plot change in the video data and send these moments to the terminal so that the terminal can divide the video data according to the moments of plot change, obtain multiple video segments, and adaptively display bullet screen data in the video segments.
[0032] For example, such as Figure 2As shown, the example of terminal 1 adaptively displaying bullet screen data in a video clip is used for illustration. This video clip can belong to target video data, which can be any video data in the target application installed on terminal 1. The process of terminal 1 adaptively displaying bullet screen data in a video clip can be achieved through interaction between terminal 1 and server 10. First, server 10 can identify the time of plot change, which reflects the time when the plot in the target video data changes. The time of plot change in the target video data can be obtained through any of the following three methods, which reflect the time when the plot in the target video data changes: Method 1: Server 10 can obtain the time of plot change in the target video data marked by the operator. Method Two: Server 10 can invoke a recognition model to identify the plot change moments in the target video data. Specifically, it invokes the recognition model to identify the plot change moments based on the bullet comment data in the target bullet comment set within the target video data. This recognition model can be a text recognition model, specifically including Convolutional Recurrent Neural Network (CRNN), Robust Text Recognizer with Automatic Rectification (RARE), etc. Method Three: Server 10 can invoke an image-text recognition model to identify the plot change moments in the target video data. This involves invoking the image-text recognition model to identify the plot change moments based on the script data of the target video data. The image-text recognition model is used to match video frames in the video data with the script data to identify plot change moments. For example, if the script data describes a courtyard and a lawn, the image recognition model can identify video clips showing the courtyard and the lawn from the target video data. The start time of the lawn video clip is considered the plot change moment. The image recognition model can refer to the Clip model, Multi-Modality Cross Attition (MMCA), etc.
[0033] Once server 10 obtains the plot change moment of the target video data, server 10 can execute a server-side response process, that is, server 10 can send the plot change moment to terminal 1. After receiving the plot change moment, terminal 1 displays and interacts with it. That is, terminal 1 can divide the target video data according to the plot change moment to obtain a first video segment and a second video segment. Furthermore, terminal 1 can switch one or more of the following for the bullet screen data in the second video segment: bullet screen movement direction, bullet screen arrangement direction, bullet screen movement speed, etc. When a trigger operation on the bullet screen style switching control is detected, terminal 1 can turn off the bullet screen switching, that is, display the bullet screen data according to the original bullet screen style attributes.
[0034] For example, such as Figure 3 As shown, taking the switching of bullet comment movement direction and bullet comment arrangement direction in the second video segment by terminal 1 as an example, the target video data is a video showing the growth of a kitten, and the plot change time is the 4th second (s) of the target video data. Therefore, the first video segment includes video frames in the target video data with playback time from 0s to 4s. The first video segment sequentially presents the growth of the kitten from 1 month to 12 months after birth, that is, the plot of the first video segment is a chronological plot. The second video segment consists of video frames in the target video data with playback time from 4s to 7s. The second video segment sequentially presents the growth of the kitten from 12 months to 1 month after birth, that is, the plot of the second video segment is a cyclical time-reversal plot. During the playback of the first video segment, terminal 1 can display bullet comment data in the first bullet comment set according to the first bullet comment style attribute. The bullet comment data in the first bullet comment set is the bullet comment data associated with the first video segment. Taking the first bullet screen style attributes, including the first bullet screen arrangement direction and the first bullet screen movement direction, as an example, the first bullet screen arrangement direction is from left to right, and the first bullet screen movement direction is from right to left. For example... Figure 3In the video frame 30a, the bullet comment display area 31a includes three bullet comment data from the first bullet comment set: "So cute," "I want to take it home," and "Petting the cat." Video frame 30a is the video frame with a playback time of 2 seconds in the first video segment. Similarly, the bullet comment display area 33a in video frame 32a includes three bullet comment data from the first bullet comment set: "I want to take it home," "Cats are cuter when they're small," and "The cat's eyes got bigger when it grew up." Video frame 32a is the video frame with a playback time of 4 seconds in the first video segment. Comparing video frames 30a and 32a, it can be seen that the bullet comment data in the first video segment moves from right to left. For example, the bullet comment data "I want to take it home" in video frame 30a is located on the left side of the bullet comment display area 31a, while the bullet comment data "I want to take it home" in video frame 32a is located on the right side of the bullet comment display area 33a. That is, the bullet comment data "I want to take it home" is moved from the left side of the video screen to the right side. As can be seen from video frames 30a and 32a, the bullet comments in the first video segment are arranged from left to right.
[0035] Furthermore, after the first video segment finishes playing, terminal 1 can play a first sub-segment of the second video segment, displaying the bullet comment data from the second bullet comment set within the first sub-segment according to the transition bullet comment style attributes. The first video sub-segment can be one or more video frames adjacent to the first video segment in the second video segment. The second bullet comment set refers to the bullet comment data associated with the second video segment. This second bullet comment set can be the same as the first bullet comment set, or it can have partially identical bullet comment data to the first bullet comment set, or the first bullet comment set and the second bullet comment set can be completely different. Figure 3 This example uses the second set of bullet comments to illustrate that it shares some data with the first set. Figure 3 The following explanation uses the transition barrage style attribute, which reflects the display of barrage data in a static display mode, as an example. Figure 3 In the target video data, the video frames with playback times from 4s to 4.8s are the first video sub-segment of the second video segment (excluding the video frame displayed at 4s). The second set of bullet comments includes the bullet comment data displayed on the last video frame in the playback order of the first video segment, such as "I want to take it home," "Cats are cuter when they're small," and "The cat's eyes have gotten bigger as it's grown up." Figure 3That is, the bullet screen display area 35a in the video frame 34a includes three bullet screen data in the second bullet screen set, namely, "Really want to take it home", "Cats are still cute when they are young", and "The eyes of cats become bigger when they grow up"; the video frame 34a is the video frame with a playback time of 4.8 s in the target video data. Comparing the video frame 34a in the first video sub - segment with the video frame 32a in the first video segment, it can be seen that the number of bullet screen data in the first video sub - segment remains unchanged, and the positions of the bullet screen data remain unchanged. That is, this transitional bullet screen style attribute indicates pausing the moving bullet screen data, and the duration of the pause is 0.8 s.
[0036] Next, after the first video sub - segment finishes playing, the terminal 1 can then play the second video sub - segment in the second video segment, and switch to displaying the bullet screen data in the second bullet screen set according to the second bullet screen style attribute; the second video sub - segment refers to the video frames in the second video segment whose playback order is after the first video sub - segment. This second video sub - segment includes the video frames in the target video data with a playback time from 4.8 s to 7 s (excluding the video frame with a playback time of 4.8 s; taking the second bullet screen style attribute including the second bullet screen arrangement direction and the second bullet screen moving direction as an example for illustration, the second bullet screen arrangement direction is from right to left, and the second bullet screen moving direction is from left to right. As Figure 3 That is, the bullet screen display area 37a in the video frame 36a includes three bullet screen data in the second bullet screen set, which are respectively "Aikehou when young" (which is part of "Aikehou when young is still..."), "The eyes have changed greatly" (which is part of "The eyes of the cat have changed greatly when it grows up"), and "Walking backwards bullet screen"; the video frame 36a is the video frame with a playback time of 5 s in the target video data. The bullet screen display area 39a in the video frame 38a includes three bullet screen data in the second bullet screen set, which are respectively "Aikehou when young is still...", "The eyes of the cat have changed greatly when it grows up", and "Backward flow empty time"; the video frame 38a is the video frame with a playback time of 7 s in the target video data. Comparing the video frame 36a and the video frame 38a in the second video sub - segment, it can be seen that the bullet screen moving direction of the bullet screen data in the second video sub - segment is from left to right. For example, the bullet screen data "Aikehou" in the video frame 36a is located on the right side of the bullet screen display area 37a, and this bullet screen data is located on the left side of the bullet screen display area 39a in the video frame 38a. That is, the bullet screen data "Aikehou" (or "Aikehou when young is still...") is moved from the right side of the video screen to the left side. From the video frame 36a and the video frame 38a, it can be seen that the bullet screen arrangement direction of the bullet screen data in the second video sub - segment is from right to left.
[0037] In summary, by switching the arrangement and movement directions of the bullet comments (danmu) data to indicate plot changes between video segments (i.e., the first and second video segments), the user's perception of these plot changes is enhanced, facilitating a faster understanding of the target video's storyline and increasing the flexibility and diversity of bullet comment display. Simultaneously, it avoids requiring users to replay video data multiple times to understand the plot, reducing terminal resource consumption (such as the resources needed to load video data). Furthermore, pausing the movement of bullet comments within intermediate video segments (i.e., the aforementioned first video segment) avoids abrupt transitions such as blank screens (i.e., no bullet comments) and other abrupt changes, ensuring a smooth transition between bullet comments displayed in the video segments.
[0038] Further, please see Figure 4 This is a flowchart illustrating a bullet screen display method provided in an embodiment of this application. Figure 4 As shown, this method can be derived from... Figure 1 It can be executed by any terminal in the terminal cluster, or by... Figure 1 The server in the middle can be used to execute it, or it can be executed by... Figure 1 The terminal cluster in the application uses terminals and servers to coordinate execution. That is, the device used to execute the bullet screen display method in this application can be a computer device, which can be a terminal or a server. In this embodiment, the computer device is described as a terminal. The method may include the following steps: S101. During the playback of the first video segment of the target video data, display the bullet screen data in the first bullet screen set in the first video segment according to the first bullet screen style attribute.
[0039] In this application, a computer device can play a first video segment from the target video data, and display the bullet screen data in the first bullet screen set in the first video segment according to the first bullet screen style attribute. The bullet screen data in the first bullet screen set is bullet screen data associated with the first video segment, such as the bullet screen data in the first bullet screen set including the comment data (also known as message data) posted by the viewer when watching the first video segment.
[0040] It should be noted that the first bullet screen style attribute indicates that the bullet screen data is displayed in a static display mode, or the first bullet screen style attribute indicates that the bullet screen data is displayed in a dynamic display mode; the first bullet screen style attribute includes the time parameter and spatial parameter mentioned above.
[0041] Optionally, when the first bullet screen style attribute indicates that the bullet screen data is displayed in a dynamic display mode, the first bullet screen style attribute includes a first bullet screen movement direction and a first bullet screen arrangement direction; the above-mentioned displaying the bullet screen data in the first bullet screen set in the first video segment according to the first bullet screen style attribute includes: the computer device can arrange the text content of the bullet screen data in the first bullet screen set according to the first bullet screen arrangement direction, and move and display the arranged bullet screen data in the first bullet screen set in the first video segment according to the first bullet screen movement direction.
[0042] It should be noted that the first bullet comment arrangement direction can refer to the bullet comment forward or backward direction mentioned above, and the first bullet comment movement direction can refer to the bullet comment forward or backward direction mentioned above.
[0043] Optionally, the first bullet screen style attribute may also include a first movement speed, which is the movement speed mentioned above or an accelerated movement speed. The computer device can move and display the bullet screen data arranged in the first bullet screen set in the first video segment according to the first bullet screen movement direction and the first movement speed, that is, continuously update the position of the bullet screen data arranged in the first bullet screen set in the first video segment according to the first bullet screen movement direction and the first movement speed.
[0044] Understandably, the computer device can acquire the first video segment and the second video segment from the target video data through any of the following three acquisition methods. Acquisition method one: The computer device can acquire the plot change time of the target video data marked by the operator, and divide the target video data according to the plot change time to obtain the first video segment and the second video segment. If the plot change time includes a start time point, and the start time point is the start time of the second video segment, then the computer device can take the video segment whose playback time is between the previous plot change time and the current plot change time as the first video segment, and the video segment whose playback time is between the current plot change time and the next plot change time as the second video segment. Alternatively, the plot change moment may include a start time and an end time. The start time can refer to the start time of the second video segment, which is also called the end time of the first video segment. The end time can be the end time of the second video segment. In this case, the computer device can determine the video segment in the target video data whose playback time is between the end time of the previous plot change moment and the start time of the current plot change moment as the first video segment; and determine the video segment in the target video data whose playback time is between the start time of the current plot change moment and the end time of the current plot change moment as the second video segment.
[0045] For example, such as Figure 5 As shown, the computer device can display a configuration interface 50a in response to a configuration operation for a plot change moment. This configuration interface 50a may include a start time point setting control 51a and an end time point setting control 52a for the plot change moment. In response to a trigger operation on the start time point setting control 51a, the device acquires the time point selected (or input) through the start time point setting control 51a as the start time point; in response to a trigger operation on the end time point setting control 52a, the device acquires the time point selected (or input) through the end time point setting control 52a as the end time point. The start time point and the end time point are determined as the plot change moment. Based on the plot change moment, the target video data is divided to obtain the first video segment and the second video segment. By allowing the user to set the plot change moment, the flexibility in acquiring the plot change moment is improved.
[0046] In the second acquisition method, the computer device can acquire the target bullet comment set from the target video data. The first bullet comment set and the second bullet comment set are subsets of the target bullet comment set, meaning the target bullet comment set includes bullet comment data from both the first and second bullet comment sets. The computer device can invoke a recognition model to perform text feature recognition on the bullet comment data in the target bullet comment set, obtaining the text features of the bullet comment data in the target bullet comment set. These text features reflect the semantics of the corresponding bullet comment data. Furthermore, based on the text features of the bullet comment data in the target bullet comment set, the target video data is divided to obtain the first video segment and the second video segment.
[0047] Optionally, the computer device can segment the target video data based on the text features of the bullet comment data in the target bullet comment set to obtain the first video segment and the second video segment. This can be achieved through segmentation methods one and two. In segmentation method one, the computer device can sequentially traverse the text features of the bullet comment data in the target bullet comment set according to the publication time of the bullet comment data. When the similarity of the text features of adjacent bullet comment data is less than a similarity threshold, the publication time of any one of the adjacent bullet comment data is determined as the moment of plot change in the target video data. The target video frames are then segmented based on this moment of plot change to obtain the first video segment and the second video segment. Here, adjacent bullet comment data can refer to the two bullet comment data with the closest publication times.
[0048] In the second segmentation method, the computer equipment can determine the text similarity between the text features of the bullet screen data in the target bullet screen set and the text features of plot change. The plot change text features can be obtained by feature extraction of text content reflecting plot changes, including timelines, past events, flashbacks, scene changes, replays, and rewinds. Further, the number of bullet screens in the target bullet screen set whose text similarity is greater than a similarity threshold within S release times is counted. These S release times are the times when the bullet screen data in the target bullet screen set is released, where S is a positive integer. From these S times, the moments when the number of bullet screens exceeds a threshold are selected as plot change moments. That is, when a large number of bullet screens reflecting plot changes appear at a certain moment, that moment is determined as a plot change moment. Then, based on the plot change moment, the target video data is segmented to obtain the first video segment and the second video segment.
[0049] For example, such as Figure 6 As shown, in the target video data, video frames with playback time from the 5th to the 6th second all display bullet screen data where the text similarity between text features and plot change text features is greater than the similarity threshold, such as... Figure 6 The bullet screen display area 61a in video frame 60a displays bullet screen data: time rewind, replay, the sapling has grown taller. That is, the text similarity between the text features of the bullet screen data: time rewind and replay and the text features of script change is greater than the similarity threshold. Video frame 60a is the video frame with a playback time of 5 seconds in the target video data. Figure 6 In video frame 62a, the bullet screen display area 63a displays bullet screen data: timeline, replay, and sapling. This means the text similarity between the text features of the bullet screen data (timeline and replay) and the script change text features is greater than the similarity threshold. Video frame 62a is the video frame in the target video data with a playback time of 6 seconds. Assuming a threshold of 4, 5 similar bullet screen data are counted from the video frames in the target video data with playback times from 5 seconds to 6 seconds. This means the similar bullet screen data are those whose text similarity between the text features and the script change text features is greater than the similarity threshold. Any moment in [5,6] seconds can be considered a plot change moment; for example, 5 seconds can be considered a plot change moment, 6 seconds can be considered a plot change moment, or 5.5 seconds can be considered a plot change moment.
[0050] Method 3: Computer devices can obtain the script data corresponding to the target video data from a webpage or local storage. Script data mainly consists of the dialogue and stage directions (i.e., scene descriptions) of the target video data, serving as the textual basis for theatrical art creation and the foundation for the performance of directors and actors. Then, the image recognition model mentioned above is used to extract object description information and the appearance time of the object description information from the script data corresponding to the target video data. Object description information refers to information used to describe objects (i.e., physical objects), which can include characters, buildings, plants, actions, etc. Further, based on the appearance time and the object description information itself, a set of script scene information associated with the target video data is determined. The script scene information set includes one or more script scene pieces, which reflect the scenes described in the script data. Scenes can include indoor scenes, outdoor scenes, lawn scenes, courtyard scenes, time-reversal scenes, chronological scenes, etc. Here, a time-reversal scene refers to a scenario where the plot described in text segment 1 of the script data occurs later than the plot described in text segment 2. Text segment 2 appears in the script data before text segment 1, meaning the scene described by text segment 2 is a time-reversal scene. Time-reversal scenes include cyclic time-reversal scenes and non-cyclic time-reversal scenes. For example, if text segment 2 describes a replay of the storyline of text segment 1, then the scene described by text segment 2 is a cyclic time-reversal scene. If text segment 2 describes a replay of the storyline that occurred before the storyline of text segment 1, then the scene described by text segment 2 is a non-cyclic time-reversal scene. After obtaining the script scene information set, the target video data can be divided according to the script scene information set to obtain the first video segment and the second video segment.
[0051] Optionally, the above-mentioned division of the target video data according to the script scene information set to obtain the first video segment and the second video segment includes: the computer device can call the image recognition model mentioned above to perform frame-by-frame traversal of the script scene information i in the script scene information set and the untraversed video frames in the target video data; i is less than or equal to F, where F is the number of script scene information in the script scene information set; if the matching degree between the traversed target video frame and the script scene information i is less than the matching degree threshold, the computer device can determine the playback time of the target video frame as the plot change moment of the target video data, and divide the target video data according to the plot change moment to obtain the first video segment and the second video segment.
[0052] S102. If the first video segment finishes playing, then play the first video sub-segment of the second video segment in the target video data, and switch to displaying the barrage data in the second barrage set in the first video sub-segment according to the transition barrage style attribute; the plot of the first video segment is different from the plot of the second video segment.
[0053] In this application, if the first video segment finishes playing, the computer device can play the first video sub-segment of the second video segment in the target video data, and switch to displaying the bullet screen data in the second bullet screen set in the first video sub-segment according to a fixed bullet screen style attribute. The first video sub-segment may refer to one or more video frames in the second video segment that are adjacent to the first video segment. The number of frames in the first video sub-segment may be determined according to the transition bullet screen style attribute. For example, if the transition bullet screen style attribute indicates that the moving bullet screen data is paused, and the duration of the pause is a preset duration, then the first video sub-segment is the first m video frames in the playback order of the second video segment, and the playback duration of the first m video frames can be the preset duration. The preset duration can also be referred to as the display duration for displaying the bullet screen data in the second bullet screen set according to the transition bullet screen style attribute.
[0054] It should be noted that the plots of the first and second video clips are different, specifically as follows: 1. In terms of characters, the first video clip's plot is the main character's story, while the second video clip's plot is a supporting character's story; or, the first video clip's plot is a supporting character's story, while the second video clip's plot is the main character's story. 2. In terms of setting, the first and second video clips' plots can be any of the following: indoor, outdoor, courtyard, lawn, etc. For example, the first video clip's plot is indoor, while the second video clip's plot is outdoor. 3. In terms of timeline, the first video clip's plot can be chronological, while the second video clip's plot is a time-reversed story; or, the first video clip's plot can be a time-reversed story, while the second video clip's plot is chronological. 4. Based on authenticity, the plot of the first video clip can be a real story, while the plot of the second video clip can be a fictional story; or, the plot of the first video clip can be a fictional story, while the plot of the second video clip can be a real story. A real story can refer to a real event, while a fictional story can be a story imagined by the actor in the target video data within the current context. For example, if the first video clip shows Xiao Wang making travel plans to location A, and the second video clip shows Xiao Wang imagining the food and scenery of location A during the process of making his travel plans, then the plot of the first video clip can be considered a real story, while the plot of the second video clip can be considered a fictional story.
[0055] It should be noted that the bullet comment data in the second bullet comment set may include bullet comment data associated with the second video segment, that is, the bullet comment data in the second bullet comment set includes the comment data (also known as message data) posted by viewers when watching the second video segment.
[0056] In one embodiment, the second set of bullet comments can be the same as the first set of bullet comments. For example, if the content described by the second video clip is the same as the content described by the first video clip, it indicates that the second video clip is a replay of the first video clip, that is, the plot of the second video clip is a looping time-reversal plot. In this case, the first set of bullet comments is the same as the second set of bullet comments, and the first set of bullet comments is associated with the first video clip, or the first set of bullet comments is associated with the second video clip; thus, the bullet comment data in the first set of bullet comments is displayed cyclically in the second video clip. At this time, both the first set of bullet comments and the second set of bullet comments include the bullet comment data posted by the viewer while watching the first video clip and the second video clip.
[0057] In one embodiment, the second set of bullet comments shares some of the same bullet comment data as the first set. For example, when the content described by the second video segment differs from that described by the first video segment, the second set of bullet comments includes the bullet comment data displayed in the last video frame of the first video segment from the first set, as well as bullet comment data associated with the second video segment. The first set of bullet comments includes the bullet comment data associated with the first video segment, and the last video frame is the last video frame in the playback order of the first video segment. In other words, the first set of bullet comments includes the bullet comment data posted by the viewer while watching the first video segment, and the second set of bullet comments includes the bullet comment data displayed in the last video frame of the first video segment from the first set, as well as the bullet comment data posted by the viewer while watching the second video segment. This facilitates smooth transitions between bullet comment data.
[0058] In one embodiment, the first set of bullet comments and the second set of bullet comments are completely different. For example, when the content described by the second video clip is different from the content described by the first video clip, the first set of bullet comments is associated with the first video clip, that is, the bullet comment data in the first set of bullet comments is associated with the first video clip; similarly, the second set of bullet comments is associated with the second video clip, that is, the bullet comment data in the second set of bullet comments is associated with the second video clip. Since the content described by the second video clip is different from the content described by the first video clip, the first set of bullet comments and the second set of bullet comments are different. In other words, when the content described by the video clips is different, the bullet comment data will also be updated according to the content change, ensuring that the bullet comment data read by the user changes in real time with the content described by the video clip, thereby improving the correlation between the bullet comment data and the video clip.
[0059] It's important to clarify that the first and second bullet comment sets are completely different. The first set includes bullet comments posted by viewers when watching the first video clip, while the second set includes bullet comments posted by viewers when watching the second video clip. However, the first and second sets may contain bullet comments with identical text content. For example, both sets might include the comment: "This show is so exciting!" Because the posting times are different, the "This show is so exciting!" in the first set and the "This show is so exciting!" in the second set would be considered different bullet comment data.
[0060] Optionally, the transition barrage style attribute is used to indicate that the barrage data is displayed in a static display mode, and the transition barrage style attribute includes the display duration; the above-mentioned switching to display the barrage data in the second barrage set in the first video sub-segment according to the transition barrage style attribute includes: the computer device can display the barrage data in the second barrage set at a fixed position in the first video sub-segment according to the display duration.
[0061] In one embodiment, when the second set of bullet comments is the same as the first set of bullet comments, or when the second set of bullet comments and the first set of bullet comments have partially identical bullet comment data, the computer device can obtain the bullet comment data displayed in the last video frame in the playback order of the first video segment (referred to as the last bullet comment data), and display the last bullet comment data at a fixed position in the first video sub-segment according to the display duration. Figure 3 As shown, the computer device can display the last bullet screen data at a fixed position in the video frame with a playback time of 4s to 4.8s in the target video data. The last bullet screen data is the bullet screen data displayed in the last video frame (i.e., video frame 32a) in the playback order of the first video segment, such as "I want to take it home", "The kitten is cuter", and "The cat's eyes have gotten bigger as it grows up".
[0062] In one embodiment, the first set of bullet comments is completely different from the second set of bullet comments. The computer device can obtain the bullet comment data associated with the first video segment from the second set of bullet comments, and display the bullet comment data associated with the first video segment at a fixed position in the first video segment according to the display duration. The bullet comment data associated with the first video segment refers to the bullet comment data posted by the viewer when watching the first video segment.
[0063] For example, such as Figure 7As shown, video frame 70a can be the last video frame in the playback order of the first video segment, and it can also be the video frame in the target video data with a playback time of 5 seconds. The bullet comment data displayed in the bullet comment display area 71a of video frame 70a includes: "Like a teacher", "I've read this book". Video frame 72a can be the first video frame in the playback order of the first video sub-segment, that is, video frame 72a can be the video frame in the target video data with a playback time of 5.1 seconds. The bullet comment data displayed in the bullet comment display area 73a of video frame 72a includes: "The protagonist appears", "Is anyone there?", "The protagonist is so beautiful". Comparing video frames 72a and 70a, it can be seen that the bullet comment data displayed in video frame 72a is different from that displayed in video frame 70a. Other video frames in the first video sub-segment will continue to display the bullet comment data in video frame 72a according to the display method in video frame 72a. Here, "other video frames" refers to video frames in the first video sub-segment other than video frame 72a.
[0064] Optionally, the aforementioned fixed position is determined based on the position of the bullet screen data displayed in the last video frame of the first video segment in the playback order. For example, the aforementioned fixed position refers to the position of the bullet screen data displayed in the last video frame of the first video segment in the playback order, which is conducive to smooth transition of bullet screen data.
[0065] Optionally, the fixed position can be any position in the bullet screen display area of the first video sub-segment.
[0066] S103. If the first video sub-segment has finished playing, then the second video sub-segment in the second video segment is played, and the display of the bullet screen data in the second bullet screen set is switched to the second video sub-segment according to the second bullet screen style attribute; the first bullet screen style attribute, the transition bullet screen style attribute and the second bullet screen style attribute are different.
[0067] In this application, if the first video sub-segment finishes playing, the second video sub-segment of the second video segment is played, and the display of the bullet screen data in the second bullet screen set is switched to the second video sub-segment according to the second bullet screen style attribute. The second video sub-segment includes video frames in the second video segment other than the first video segment.
[0068] It should be noted that the bullet comment data displayed in the first g video frames of the second video sub-segment is the same as the bullet comment data displayed in the first video sub-segment. Here, "same" means the same bullet comment data, and g can be a positive integer. In the video frames after the first g video frames of the second video sub-segment, bullet comment data that was not displayed in the second bullet comment set is displayed. That is, the bullet comment data displayed in the video frames after the first g video frames of the second video sub-segment is different from the bullet comment data displayed in the first video sub-segment.
[0069] It should be noted that the second bullet screen style attribute indicates whether the bullet screen data is displayed in a static display mode or in a dynamic display mode; the second bullet screen style attribute includes the time parameter and spatial parameter mentioned above.
[0070] It should be noted that when both the first and second bullet screen style attributes indicate that bullet screen data is displayed dynamically, the first bullet screen style attribute includes the first bullet screen movement direction, the first bullet screen arrangement direction, and the first movement speed; the second bullet screen style attribute includes the second bullet screen movement direction, the second bullet screen arrangement direction, and the second movement speed. The first and second bullet screen style attributes have one or more of the following differences: a) the first bullet screen movement direction is the opposite of the second bullet screen movement direction; b) the first bullet screen arrangement direction is the opposite of the second bullet screen arrangement direction; c) the first movement speed and the second movement speed are different.
[0071] Optionally, the second bullet comment movement direction included in the second bullet comment style attribute is different from the first bullet comment movement direction included in the first bullet comment style attribute; the above-mentioned displaying the bullet comment data in the second bullet comment set in the second video sub-segment according to the second bullet comment style attribute includes: the computer device can move and display the bullet comment data in the second bullet comment set in the second video sub-segment according to the second bullet comment movement direction. By switching the bullet comment movement direction, the user is prompted that the plot of the video segment has changed, improving the user's perception of plot changes and enhancing the user's ability to interpret the plot.
[0072] Optionally, the second bullet screen style attribute also includes a second movement speed. The aforementioned movement and display of bullet screen data in the second video sub-segment according to the second bullet screen movement direction includes: moving and displaying bullet screen data in the second bullet screen set according to the second bullet screen movement direction and the second movement speed in the second video sub-segment. The second movement speed can be determined based on the switching speed of video frames in the second video segment. Similarly, the first movement speed in the first bullet screen attribute style can be determined based on the switching speed of video frames in the first video segment. Therefore, when the switching speed of video frames in the second video sub-segment is equal to the switching speed of video frames in the first video segment, the second movement speed is equal to the first movement speed; when the switching speed of video frames in the second video sub-segment is less than the switching speed of video frames in the first video segment, the second movement speed is less than the first movement speed. When the switching speed of video frames in the second video sub-segment is greater than the switching speed of video frames in the first video segment, the second movement speed is greater than the first movement speed. By adaptively adjusting the movement speed of the bullet screen data through the switching speed of video frames, the display flexibility of the bullet screen data is increased.
[0073] For example, if the plot of the second video segment is a time-reversal story, and the switching speed of the video frames in the second video sub-segment is less than or equal to the switching speed threshold, the plot of the second video segment is usually a non-looping time-reversal story, meaning the video screen presents a slow, natural time-reversal effect. In this case, the second movement speed can be a general movement speed, and the computer device can move and display the arranged bullet screen data in the second bullet screen set according to the second bullet screen movement direction and the general movement speed, displaying the effect of normally moving bullet screen data. If the switching speed of the video frames in the second video sub-segment is greater than the switching speed threshold, the plot of the second video segment is usually a looping time-reversal story, meaning the video screen presents a fast reversal (i.e., playback) effect. In this case, the second movement speed can be an accelerated movement speed, and the computer device can move and display the arranged bullet screen data in the second bullet screen set according to the second bullet screen movement direction and the accelerated movement speed, displaying the effect of accelerated moving bullet screen data. That is, by increasing the movement speed of the bullet screen data, the effect of fast reversal of the video screen can be matched.
[0074] Similarly, if the switching speed of the video frames of the first video sub-segment is less than or equal to the switching speed threshold, the first movement speed may refer to the general movement speed mentioned above; if the switching speed of the video frames of the first video sub-segment is greater than the switching speed threshold, the first movement speed may refer to the accelerated movement speed mentioned above.
[0075] Optionally, the first movement speed and the second movement speed can be preset, such as the first movement speed being a general movement speed and the second movement speed being an accelerated movement speed; or the first movement speed being an accelerated movement speed and the second movement speed being a general movement speed.
[0076] In one embodiment, the second bullet comment arrangement direction included in the aforementioned second bullet comment style attribute is different from the first bullet comment arrangement direction included in the first bullet comment style attribute; for example, the first bullet comment arrangement direction is the forward bullet comment direction, and the second bullet comment arrangement direction is the reverse bullet comment direction. The aforementioned displaying the bullet comment data in the second bullet comment set in the second video sub-segment according to the second bullet comment style attribute includes: the computer device can arrange the text content of the bullet comment data in the second bullet comment set according to the second bullet comment arrangement direction; and display the arranged bullet comment data in the second bullet comment set in the second video sub-segment. By switching the bullet comment arrangement direction, the user is prompted that the plot of the video segment has changed, improving the user's perception of plot changes and enhancing the user's ability to interpret the plot.
[0077] In one embodiment, the second movement speed included in the second bullet screen style attribute is different from the first movement speed included in the first bullet screen style attribute; for example, the first movement speed is greater than the second movement speed, or the second movement speed is greater than the first movement speed, such as the first movement speed being a general movement speed and the second movement speed being an accelerated movement speed; the above-mentioned displaying bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen style attribute includes: the computer device can display the bullet screen data in the second bullet screen set in the second video sub-segment according to the second movement speed. By switching the bullet screen movement speed, the user is prompted that the plot of the video segment has changed, improving the user's perception of plot changes and enhancing the user's ability to interpret the plot.
[0078] In one embodiment, the second bullet screen style attribute includes a second bullet screen movement direction and a second movement speed; the second bullet screen movement direction is the opposite direction of the first bullet screen movement direction, and the second movement speed is different from the first movement speed. Displaying the bullet screen data in the second bullet screen set according to the second bullet screen style attribute in the second video sub-segment includes: the computer device can display the bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen movement direction and the second movement speed. By switching the bullet screen movement direction and speed, the user is prompted that the plot of the video segment is changing, improving the user's perception of plot changes and enhancing the user's ability to interpret the plot.
[0079] Optionally, the second bullet screen style attribute includes a second bullet screen movement direction and a second bullet screen arrangement direction; the second bullet screen movement direction is the opposite of the first bullet screen movement direction, and the second bullet screen arrangement direction is the opposite of the first bullet screen arrangement direction. Displaying the bullet screen data in the second bullet screen set according to the second bullet screen style attribute in the second video sub-segment includes: the computer device can arrange the text content of the bullet screen data in the second bullet screen set according to the second bullet screen arrangement direction, and move and display the arranged bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen movement direction, that is, continuously updating the position of the arranged bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen movement direction. By displaying bullet screen data in video segments with different plots using different bullet screen style attributes, the user is prompted that there are plot changes between the preceding and following video segments (i.e., the first video segment and the second video segment), which helps improve the user's perception of plot changes, helps the user quickly understand the plot of the target video data, and improves the display flexibility and diversity of bullet screen data. By switching the arrangement and movement directions of the bullet comments, the user is alerted to changes in the plot of the video clip, enhancing the impact of the reminder, improving the user's perception of plot changes, and strengthening their ability to interpret the plot. Optionally, when the second bullet comment style attribute indicates that the bullet comment data is displayed dynamically, the second bullet comment style attribute may also include a second movement speed. This second movement speed is different from the first movement speed mentioned above; it is either the general movement speed or the accelerated movement speed mentioned earlier. The computer device can move and display the arranged bullet comment data in the second bullet comment set within the second video sub-segment according to the second bullet comment movement direction and the second movement speed. That is, the position of the arranged bullet comment data in the second bullet comment set is continuously updated within the second video sub-segment according to the second bullet comment movement direction and the second movement speed. By switching the bullet comment movement speed, arrangement, and movement direction, the user is alerted to changes in the plot of the video clip, enhancing the impact of the reminder, improving the user's perception of plot changes, and strengthening their ability to interpret the plot.
[0080] In one embodiment, this application provides a bullet screen frame, such as Figure 8As shown, the bullet screen framework includes an interface layer, a track and distribution layer, and a bullet screen rendering layer. The interface layer includes a facade class, which provides the interface to the outside world. The facade class includes a bullet screen facade management component and bullet screen style attributes. The bullet screen facade management component integrates other components within the entire bullet screen framework, providing external calling methods and bullet screen event callbacks. External calling methods include methods for adding and deleting virtual tracks, and methods for starting, pausing, and clearing the screen when moving bullet screen data. For example, the track control component can call the external calling methods in the bullet screen facade management class to perform operations such as adding a track (i.e., adding a single virtual track), deleting a track (i.e., deleting a single virtual track), deleting all tracks (i.e., deleting all virtual tracks, i.e., turning off the bullet screen display function), inserting attributes, and adding a track collection (i.e., adding multiple virtual tracks). Inserting attributes refers to updating the bullet screen style attributes of the bullet screen data. Bullet screen event callbacks include event callbacks for bullet screen data creation, entering the bullet screen display area, and leaving the bullet screen display area. The bullet screen style attributes are used to control how bullet screen data is displayed, including attributes such as the limited display duration, position, start display time, and end display time of bullet screen data.
[0081] The track and distribution layer can include a bullet screen distribution component, a track control component, a bullet screen track set, a bullet screen clock, a timer, a distribution strategy, queue management, and track management. The track control component is used to maintain the bullet screen data that has been displayed and is waiting to be displayed on the virtual track, as well as for track management (i.e., managing virtual tracks), such as maintenance (e.g., adding and deleting) of virtual tracks. The bullet screen distribution component (dispatcher) is used to add bullet screen data to the virtual track according to the distribution strategy. A bullet screen distribution component usually manages multiple virtual tracks and has a built-in bullet screen queue to store bullet screen data. The bullet screen distribution component is also used for queue management. For example, driven by the bullet screen clock, the bullet screen distribution component continuously queries for idle virtual tracks. When a virtual track meets the idleness requirements of a threshold and the distribution strategy, the bullet screen data at the head of the bullet screen queue will be added to this virtual track. The idle time of a virtual track can be determined based on the amount of bullet comment data. The distribution strategy can refer to the conditions used to indicate how bullet comment data is distributed to the virtual track. For example, the distribution strategy might indicate that bullet comment data is only added to the virtual track if no bullet comment data with a text length less than a certain threshold exists. The bullet comment clock records the update time and addition time of bullet comment data and is the driver for changes in bullet comment style attributes. The bullet comment track set refers to the collection of all virtual tracks. The rendering layer includes rendering components, which are components used to render bullet screen data and video data according to bullet screen style attributes. These rendering components can be Open Graphics Library (OpenGL), Matal, and native draw, etc.
[0082] It should be noted that the bullet screen framework is managed in layers: interface layer, track and distribution layer, and bullet screen rendering layer. The layers are loosely coupled, and the virtual track design is flexible, which can easily and efficiently achieve the effect of moving bullet screen data on multiple virtual tracks.
[0083] In one embodiment, the inheritance relationship between the track control component and the track is as follows: Figure 9 As shown, since this application abstracts a virtual track (Track), such a track control component (TrackController) can be used with one or more virtual tracks to achieve various movement effects of bullet screen data. Therefore, this application provides a virtual track that can support bidirectional (bullet screen forward flow direction and bullet screen backward flow direction) movement of bullet screen data. Figure 9As can be seen from the inheritance relationship, the base class of the track control component is VBDanmuAbstractTrackController. This base class describes the general functions of the track control component, including adding and deleting virtual tracks. The track control component can include a bullet screen movement controller VBDanmuBaseMoveTrackController, a bullet screen forward movement controller VBDanmuHorizontalMoveTrackController, and a bullet screen bidirectional movement controller VBDanmuHorizontalBidirectionalMoveTrackController. The bullet screen movement controller describes the track control component's ability to move bullet screen data. The bullet screen forward movement controller describes the track control component's ability to move bullet screen data along the forward flow direction. The bullet screen reverse movement controller describes the track control component's ability to move bullet screen data along the reverse flow direction. The bullet screen bidirectional movement controller, through its inheritance relationship with the bullet screen reverse movement controller and the bullet screen forward movement controller, extends the ability to move bullet screen data along the reverse flow direction while retaining the original ability to move bullet screen data forward (along the forward flow direction). The base class for virtual tracks is VBDanmuAbstractTrack. This base class describes the general functionality of virtual tracks, including the ability to carry bullet screen data. Virtual tracks include VBDanmuHorizontalMoveTrack, which supports forward movement (i.e., bullet screen data moving along the forward flow direction), and VBDanmuHorizontalBidirectionalMove Track, which supports bidirectional movement (i.e., bullet screen data moving along both the forward and reverse flow directions). The bidirectional movement virtual track allows the track control component to distinguish between forward and reverse bullet screen movement directions using the backflow field value in the bullet screen display configuration response file. A value of 0 or NO indicates forward flow (moving from right to left), while a non-zero value indicates reverse flow. For an introduction to the bullet screen display configuration response file, please refer to [link to relevant documentation]. Figure 10 The virtual track that supports bidirectional movement allows the track control component to update the remaining display time of the bullet comments after the bullet comment movement direction is updated.
[0084] In one embodiment, to achieve the effect of reverse-flowing bullet comments, which refers to the bullet comment data moving in the reverse direction as mentioned above, the computer device can configure the bullet comment style attributes of the target video data. Specifically, for example... Figure 10As shown, the computer device can receive a bullet screen display configuration request file for target video data. This file includes the video ID of the target video data, where the video ID is a string (vid:string). The bullet screen display configuration request file is used to request the configuration of bullet screen style attributes for the target video data. The computer device can detect whether the bullet screen style attributes of the target video data meet the configuration conditions, such as whether the playback length of the target video data is greater than a playback duration threshold. If the playback length of the target video data is greater than the playback duration threshold, it is determined that the bullet screen style attributes of the target video data meet the configuration conditions. If the playback length of the target video data is less than or equal to the playback duration threshold, it is determined that the bullet screen style attributes of the target video data do not meet the configuration conditions. If the bullet screen style attributes of the target video data do not meet the configuration conditions, the computer device can generate a bullet screen display configuration response file carrying an error code (errorCode), where the errorCode is an integer (int). If the bullet comment style attributes of the target video data meet the configuration conditions, the computer device can display a display list. This display list includes a bullet comment display configuration item (DMDisplayEgg), which is used to configure the attribute ID (id:string), start time (startTime:int), end time (endTime:int), and attribute list (effectArray:List) of the bullet comment style attributes. The start time and end time reflect the usage time of the configured bullet comment style attributes, and the attribute ID reflects the identifier of the configured bullet comment style attributes. The attribute list (effectArray:List) can include bullet comment display effects (DMDisplayEffect), which refers to the options used to configure the attributes in the bullet comment style attributes. If the computer device responds to an operation triggered for the bullet comment attribute effect, it can display the attribute type. Attribute types include reverse flow attributes, font attributes, etc. Reverse flow attributes are used to configure the bullet comment arrangement direction, bullet comment movement direction, and bullet comment movement speed. Font attributes are used to configure the font size, font type, etc. of the bullet comment data.
[0085] Furthermore, the computer device can obtain the user's configuration results for the bullet screen style attributes of the bullet screen data, and generate a bullet screen display configuration response file based on the configuration results. If the configuration result indicates that the user has configured the reverse flow attribute, the value of the reverse flow information field (backFlowInfo:DMBackFlowInfo) in the bullet screen display configuration response file can be set to a valid value. If it is a non-zero value, the default value of the reverse flow information field is 0, indicating that the user has not configured the reverse flow attribute. If the configuration result indicates that the user has configured the bullet screen arrangement direction of the bullet screen data to be the reverse flow direction, the value of the text inverted field (textInverted:bool) in the bullet screen display configuration response file can be set to a valid value. If the configuration result indicates that the user has configured the bullet screen movement direction of the bullet screen data to be the reverse flow direction, the value of the reverse flow field (backFlow: bool) in the bullet screen display configuration response file can be set to a valid value. The default value of the reverse flow field is NO, indicating that the default bullet screen movement direction of the bullet screen data is the forward flow direction. If the configuration result instructs the user to configure the bullet screen movement speed to be accelerated, then the value of the acceleration field (acclerate:bool) in the bullet screen display configuration response file can be set to a valid value. When the value of the acceleration field is valid, the acceleration factor configured by the user can be obtained and added to the bullet screen display configuration response file. The acceleration factor refers to the amount of increase in the bullet screen movement speed.
[0086] It should be noted that the first bullet screen style attribute in this application can be the default bullet screen style attribute in the target application corresponding to the target video data. The computer device can determine the bullet screen style attribute indicated in the bullet screen display configuration response file as the second bullet screen style attribute. It is understood that the second bullet screen style attribute can be configured by the viewer, or it can be configured by the operator.
[0087] In one embodiment, the above-mentioned displaying the bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen style attribute includes: the computer device can display the bullet screen data in the second bullet screen set on L virtual tracks in the second video sub-segment according to the second bullet screen style attribute; which is beneficial to presenting one or more lines of bullet screen data to the user. Optionally, the second bullet screen movement direction included in the second bullet screen style attribute is different from the first bullet screen movement direction included in the first bullet screen style attribute; the L virtual tracks are the aforementioned virtual tracks that support bidirectional movement. For example, the computer device can query the field value of the reverse flow field in the bullet screen display configuration response file. If the field value of the reverse flow field is valid, then the second bullet screen movement direction is determined to be the bullet screen reverse flow direction. The bidirectional movement controller of the bullet screen in the track control component can be called to move and display the bullet screen data in the second bullet screen set on the L virtual tracks in the second video sub-segment according to the bullet screen reverse flow direction. That is, on the L virtual tracks in the second video sub-segment, the position of the bullet screen data in the second bullet screen set is updated from left to right. If the value of the reverse flow field is invalid, such as NO, then the second bullet screen movement direction is determined to be the bullet screen forward flow direction. The computer device can call the bullet screen bidirectional movement controller in the track control component to move and display the bullet screen data in the second bullet screen set on the L virtual tracks in the second video sub-segment according to the bullet screen forward flow direction. That is, on the L virtual tracks in the second video sub-segment, the position of the bullet screen data in the second bullet screen set is updated in the direction from right to left.
[0088] Optionally, the bullet screen display configuration response file configures the start time t1 and end time t2 for using the second bullet screen style attribute, that is, the usage time interval of the second bullet screen style attribute is [t1, t2]. During the playback of the second video segment in the target video data, the computer device can detect whether the playback time hits this interval. If the playback time hits the usage time interval, the computer device can read the second bullet screen style attribute from the bullet screen display configuration response file and display the bullet screen data in the second bullet screen set according to the second bullet screen style attribute on the L virtual tracks in the second video segment.
[0089] Optionally, the bullet screen data in the second bullet screen set is displayed on L virtual tracks in the second video sub-segment according to the second bullet screen style attribute; L is a positive integer, including: the computer device can display x bullet screen data in the second bullet screen set on L virtual tracks in the second video sub-segment according to the second bullet screen style attribute; x is a positive integer less than or equal to Q, where Q is the number of bullet screens in the second bullet screen set; if the time reaches the bullet screen update time, the track control component is invoked to update and display x bullet screen data in the second bullet screen set according to the second bullet screen style attribute. The bullet screen update time here is determined according to the bullet screen update time interval, which can be preset. In other words, the computer device can first display a portion of the bullet screen data (i.e., x bullet screen data) on L virtual tracks, and periodically update the bullet screen data on L virtual tracks according to time, which is beneficial for displaying more bullet screen data to the user. Optionally, if the time reaches the bullet screen update time, the track control component is invoked to update and display x bullet screen data in the second bullet screen set according to the second bullet screen style attributes. This includes: the computer device removing some bullet screen data from L virtual tracks and adding new bullet screen data to the virtual tracks. Specifically, if the time reaches the bullet screen update time, the computer device can invoke the track control component to update the remaining display duration of the x bullet screen data, obtaining the updated remaining display duration of the x bullet screen data. This updated remaining display duration is the maximum duration that the x bullet screen data can be displayed on the video screen. The updated remaining display duration of the x bullet screen data can be the same or different, and is determined based on the start display time, text content, etc. of the corresponding bullet screen data. Therefore, the computer device can invoke the bullet screen facade management component to remove bullet screen data from the L virtual tracks whose updated remaining display duration is less than or equal to the duration threshold. The duration threshold can be preset, such as being 0. The track control component is invoked, and according to the second bullet screen style attribute, valid bullet screen data from the x bullet screen data are displayed on the L virtual tracks. The valid bullet screen data consists of bullet screen data whose remaining display duration is greater than the duration threshold. Next, the track control component is invoked again, and the remaining bullet screen data is displayed on the L virtual tracks according to the second bullet screen style attribute. The remaining bullet screen data consists of bullet screen data in the second bullet screen set excluding the x bullet screen data. By removing bullet screen data with a duration less than or equal to the duration threshold, new bullet screen data can be added to the L virtual tracks, presenting more bullet screen data to the user.
[0090] Optionally, the above-mentioned invocation of the track control component to display the valid bullet screen data from the x bullet screen data on the L virtual tracks according to the second bullet screen style attribute includes: when the second bullet screen style attribute is used to indicate a dynamic display mode for bullet screen data, the computer device can invoke the track control component to update the position of the valid bullet screen data from the x bullet screen data on the L virtual tracks according to the second bullet screen movement speed and the second bullet screen movement direction contained in the second bullet screen style attribute; that is, the product between the bullet screen update interval and the second bullet screen movement speed is the movement distance, and the valid bullet screen data is moved along the second bullet screen movement direction on the L tracks, and the movement distance is the product of the bullet screen update interval and the second bullet screen movement speed. When the second bullet screen style attribute is used to indicate a static display mode for bullet screen data, the computer device can invoke the track control component to display the valid bullet screen data on the L virtual tracks according to the current position of the valid bullet screen data.
[0091] Optionally, if the x bullet comment data have already been displayed in the first video segment according to the first bullet comment style attribute, such as if the first bullet comment set and the second bullet comment set are the same, or partially the same, or if some bullet comment data in the second bullet comment set are first displayed in the first video segment and then displayed in the first and second video sub-segments, the computer device can obtain the remaining display duration of the x bullet comment data in the following way. Specifically, the computer device can call the track control component to determine the display duration of the x bullet comment data in the first video segment as the remaining display duration of the x bullet comment data; further, obtain the interval between the start time of displaying the x bullet comment data in the second video segment and the bullet comment update time; calculate the difference between the remaining display duration of the x bullet comment data and the interval duration to obtain the remaining display duration of the x bullet comment data. By updating the remaining display duration of the bullet comment data, the position of the bullet comment data can be updated for a long time, such as when the bullet comment data has moved outside the video screen, and the position of the bullet comment data is still being updated, resulting in wasted resources.
[0092] It should be noted that the display duration of the bullet comment data in the second bullet comment set when displayed with the transition bullet comment style attribute affects the remaining display duration of the bullet comment data. In other words, the display duration of the bullet comment data in the second bullet comment set when displayed with the transition bullet comment style attribute is not used to update the remaining display duration of the bullet comment data. The display duration of the bullet comment data in the second bullet comment set when displayed with the transition bullet comment style attribute is determined by the transition bullet comment style attribute, such as 0.8s.
[0093] For example, Figure 11As shown, assuming the display duration of the bullet screen data is limited to 0.5 seconds, and assuming the bullet screen movement direction in the first bullet screen style is the forward flow direction, and the bullet screen movement direction in the second bullet screen style is the reverse flow direction, the transition bullet screen style attribute indicates a pause in the movement of bullet screen data, and the pause duration is 0.8 seconds. The example is that the movement speed of the first bullet screen in the first bullet screen style is the same as the movement speed of the second bullet screen in the second bullet screen style. The bullet screen data in the second bullet screen set: "I really want to take it home," is displayed for 0.4 seconds in the bullet screen display area 101a of video frame 100a in the first video segment. The computer device can continue to display the bullet screen data in video frame 100a at a fixed position in the first video segment. After 0.8 seconds, the computer device can display the bullet screen data in the reverse flow direction (i.e., display the bullet screen data in the bullet screen display area 103a of video frame 102a): "I really want to take it home." Since the comment "I really want to take you home" was displayed for 0.4 seconds in the first video clip, changing the direction of the comment movement would require 0.4 seconds to move the comment data off the video screen. Therefore, the display duration of the comment "I really want to take you home" in the first video clip is determined as the remaining display duration of the comment "I really want to take you home".
[0094] It should be noted that if the first set of bullet comments is not the same as the second set of bullet comments, or if x bullet comments are displayed later in the second set, these x bullet comments will not be displayed in the first video segment according to the first bullet comment style attribute. In this case, the computer device can obtain the remaining display time of the bullet comment data update in the following way: The computer device can determine the limited display time of the x bullet comments as the remaining display time of the x bullet comments, obtain the interval between the start time of displaying the x bullet comments in the second video segment and the bullet comment update time; calculate the difference between the remaining display time of the x bullet comments and the interval to obtain the remaining display time of the x bullet comments. By updating the remaining display time of the bullet comments, the position of the bullet comments can be updated for a long time, such as when the bullet comments have moved outside the video screen, which would lead to a waste of resources.
[0095] For example, a computer device can use the following formula (1) to calculate the remaining display time of the bullet screen data: newCurrentAliveTime = attributes.totalAliveTime -attributes.currentAliveTime (1) In formula (1), attribute.totalAliveTime is called the total display time (i.e., the total survival time), also known as the limited display time mentioned above. attribute.currentAliveTime represents the current survival time of the bullet screen data, i.e. the interval time. newCurrentAliveTime is the updated remaining display time, also known as the updated survival time.
[0096] Optionally, the above-mentioned invocation of the track control component to display remaining bullet screen data on the L virtual tracks according to the second bullet screen style attribute includes: the computer device can invoke a bullet screen distribution component to determine, from the L virtual tracks, a virtual track with an idle degree greater than an idle degree threshold as a target virtual track. The idle degree of this virtual track can be determined based on the number of bullet screen data currently displayed on the virtual track. The computer device can then invoke the bullet screen distribution component to read the remaining bullet screen data from the second bullet screen set in the bullet screen queue and add the remaining bullet screen data to the target virtual track. Then, the computer device can invoke the track control component to display the remaining bullet screen data on the target virtual track according to the second bullet screen style attribute.
[0097] Optionally, the first movement speed included in the first bullet screen style attribute is different from the second movement speed included in the second bullet screen style attribute; the above-mentioned displaying bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen style attribute includes: the computer device can call the track control component to obtain the total display duration of the bullet screen data in the second bullet screen set; the total display duration is determined based on the first movement speed; the computer device can obtain the speed ratio between the second movement speed and the first movement speed; the speed ratio is the amount of increase in movement speed. The computer device can divide the total display duration by the speed ratio to obtain the limited display duration of the x bullet screen data. For example, assuming the speed ratio is 1.5 and the second movement speed is V2, V2 / 1.5 (V2 divided by 1.5) can be used as the limited display duration of the x bullet screen data. Then, according to the limited display duration and the second movement speed, the bullet screen data in the second bullet screen set is displayed in the second video sub-segment. When the movement speed of the bullet comments changes, the movement effect of the bullet comment data can be achieved by updating the display duration of the bullet comment data.
[0098] It's important to note that, assuming the first movement speed is V1 and the second movement speed is V2, the speed ratio is V2 / V1; that is, V2 divided by V1. When the first movement speed is less than the second movement speed, the speed ratio is greater than 1. This speed ratio can be called the acceleration factor mentioned above; that is, as the second movement speed increases, the limited display time calculated based on the second movement speed decreases. In other words, when the movement speed of the bullet comments increases, the bullet comment movement effect can be achieved by shortening the bullet comment movement time. When the first movement speed is greater than the second movement speed, the speed ratio is less than 1. This speed ratio can be called the deceleration factor; that is, as the second movement speed decreases, the limited display time calculated based on the second movement speed increases. In other words, when the movement speed of the bullet comments decreases, the bullet comment movement effect can be achieved by extending the bullet comment movement time. Optionally, the first bullet screen style attribute includes a first bullet screen arrangement direction that is the opposite of the second bullet screen arrangement direction included in the second bullet screen style attribute; the above-mentioned displaying the bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen style attribute includes: the computer device can call a bullet screen rendering component to update the initial bullet screen rendering order according to the second bullet screen arrangement direction to obtain an updated bullet screen rendering order; the initial bullet screen rendering order is determined according to the first bullet screen arrangement direction; the bullet screen rendering component is a component (functional module) used to render bullet screen data, and renders the bullet screen data in the second bullet screen set according to the updated bullet screen rendering order; the rendered bullet screen data is displayed in the second video sub-segment.
[0099] For example, the first bullet screen style attribute indicates that the bullet screen data is displayed in the forward direction, and the second bullet screen style attribute indicates that the bullet screen data is displayed in the reverse direction. The computer device can call the bullet screen rendering component, update the initial bullet screen rendering order using the reverse direction, and obtain the updated bullet screen rendering order; according to the updated bullet screen rendering order (i.e., according to the reverse direction), the bullet screen data in the second bullet screen set is rendered sequentially; in the second video sub-segment, the rendered bullet screen data is displayed, that is, the rendered bullet screen data is displayed sequentially according to the reverse order.
[0100] In one embodiment, in response to a closing operation of the barrage style attribute switching control, the computer device can display barrage data in the second barrage set in the second video segment according to the first barrage style attribute. In other words, the user can manually turn off the barrage style attribute switching function to meet the user's personalized needs.
[0101] For example, the first bullet comment style attribute indicates that the bullet comment data is displayed in a forward-aligned order, and the second bullet comment style attribute indicates that the bullet comment data is displayed in a reverse-aligned order. Figure 12 As shown, the bullet screen display area 111a of video frame 110a in the second video sub-segment displays bullet screen data: "Ai Ke Hou Shi Xiao Mao Shi Hao", "Liao Bian Jing Yan De Mao De Hou Da Chang", "Zhao Liu Kong Shi". The computer device can respond to a trigger operation on the bullet screen toolbox and display the bullet screen toolbox, which is a setting page for bullet screen style attributes. The bullet screen toolbox 112a includes a bullet screen style attribute control (i.e., restore default settings). Responding to a trigger operation on the bullet screen style attribute control, the bullet screen data in the second bullet screen set can be displayed in the second video segment according to the bullet screen's forward direction. For example... Figure 12 In the second video sub-segment, the bullet screen display area 114a of video frame 113a displays bullet screen data: "Cats are cuter when they are young", "Cats' eyes are bigger when they grow up", "Time travel".
[0102] Further, please see Figure 13 This is a flowchart illustrating a bullet screen display method provided in an embodiment of this application. Figure 13 As shown, this method can be derived from... Figure 1 It can be executed by any terminal in the terminal cluster, or by... Figure 1 The server in the middle can be used to execute it, or it can be executed by... Figure 1 The terminal cluster in the application uses terminals and servers to coordinate execution. That is, the device used to execute the bullet screen display method in this application can be a computer device, which can be a terminal or a server. In this embodiment, the computer device is described as a terminal. The method may include the following steps: S201. During the playback of the first video sub-segment of the target video data, the bullet screen data in the first bullet screen set is displayed in the first video sub-segment according to the first bullet screen style attribute; the first video sub-segment belongs to the first video segment in the target video data.
[0103] In this application, a computer device can play a first video sub-segment of target video data, and display the barrage data in the first barrage set in the first video sub-segment according to the first barrage style attribute. The first video sub-segment contains the video frames that are the first h in the playback order of the first video segment.
[0104] S202. If the first video sub-segment has finished playing, then play the second video sub-segment in the first video segment, switch to displaying the barrage data in the first barrage set in the second video sub-segment according to the transition barrage style attribute.
[0105] In this application, if the first video segment finishes playing, a second video segment within the first video segment can be played, switching to display the bullet screen data from the first bullet screen set in the second video segment according to the transition bullet screen style attributes. The second video segment may include video frames from the first video segment other than the first video segment.
[0106] S203. If the second video sub-segment has finished playing, then play the second video segment in the target video data, and switch to displaying the barrage data in the second barrage set in the second video segment according to the second barrage style attribute; the first barrage style attribute, the transition barrage style attribute and the second barrage style attribute are different; the plot of the first video segment is different from the plot of the second video segment.
[0107] In this application, if the second video sub-segment finishes playing, the computer device can play the second video segment in the target video data and switch to displaying the bullet screen data in the second bullet screen set in the second video segment according to the second bullet screen style attribute.
[0108] It should be noted that, Figure 13 and Figure 4 The difference is: Figure 4 In the second video clip, the bullet screen data is displayed using a transitional bullet screen style attribute. Figure 13 The bullet screen data is displayed in the first video segment using a transitional bullet screen style attribute. Therefore, the specific description of step S201 in this application can be referred to step S101 above, the specific description of step S202 can be referred to step S102 above, and the specific description of step S203 can be referred to step S103 above. Repeated descriptions will not be repeated.
[0109] Further, please see Figure 14 This is a flowchart illustrating a bullet screen display method provided in an embodiment of this application. Figure 14 As shown, this method can be derived from... Figure 1 It can be executed by any terminal in the terminal cluster, or by... Figure 1 The server in the middle can be used to execute it, or it can be executed by... Figure 1 The terminal cluster in the application uses terminals and servers to coordinate execution. That is, the device used to execute the bullet screen display method in this application can be a computer device, which can be a terminal or a server. In this embodiment, the computer device is described as a terminal. The method may include the following steps: S301. During the playback of the first video segment of the target video data, display the bullet screen data in the first bullet screen set in the first video segment according to the first bullet screen style attribute.
[0110] In one embodiment, step S301 includes: during the playback of a first video sub-segment of a first video segment of the target video data, displaying bullet screen data from a first bullet screen set in the first video sub-segment of the first video segment according to a first bullet screen style attribute; if the first video sub-segment of the first video segment finishes playing, then playing a second video sub-segment of the first video segment, switching to displaying bullet screen data from the first bullet screen set in the second video sub-segment of the first video segment according to a transition bullet screen style attribute. That is, by displaying bullet screen data in the second video sub-segment of the first video segment using a transition bullet screen style, situations such as blank screens (i.e., no bullet screen data) or abrupt transitions in the second video sub-segment of the first video segment can be avoided, ensuring smooth transitions between the bullet screen data displayed in the preceding and following video segments.
[0111] S302. If the first video segment has finished playing, then play the second video segment in the target video data, switch to displaying the bullet screen data in the second bullet screen set in the second video segment according to the second bullet screen style attribute; the plot of the first video segment is different from the plot of the second video segment.
[0112] In one embodiment, step S302 includes: if the first video segment has finished playing, then playing a first video sub-segment of the second video segment in the target video data, switching to displaying the bullet screen data in the second bullet screen set in the first video sub-segment according to the transition bullet screen style attribute; if the first video sub-segment has finished playing, then playing a second video sub-segment of the second video segment, switching to displaying the bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen style attribute. That is, by displaying bullet screen data in the first video sub-segment of the second video segment using a transition bullet screen style, situations such as blank screens (i.e., no bullet screen data) or abrupt transitions in the second video segment can be avoided, ensuring a smooth transition between the bullet screen data displayed in the preceding and following video segments.
[0113] It should be noted that the descriptions of steps S301 and S302 in this application can refer to the descriptions of the relevant steps above. For example, the description of step S301 can refer to the description of step S101 above, and the description of step S302 can refer to steps S102 and S103 above. Repeated parts will not be repeated.
[0114] In this application, when there are plot changes in the target video data, the display of bullet screen data is achieved by switching different bullet screen style attributes. This helps improve the user's perception of plot changes, helps the user quickly understand the plot of the target video data, and improves the display flexibility and diversity of bullet screen data. At the same time, it can avoid the user having to replay the video data multiple times to understand the plot of the video data, and can reduce the resource consumption of the terminal (such as the resources required to load the video data).
[0115] In one embodiment, the bullet screen display method may include, for example: Figure 15Steps 140b to 165b are shown as follows: 140b, Enable bullet comments; 141b, Enable timer; 142b, Pre-request logic; 143b, Format conversion; 144b, Playback status; 145b, Add bullet comment data to bullet comment library; 146b, Send to bullet comment distribution component; 147b, High priority status; 148b, Exceed maximum quantity; 149b, Exceed maximum quantity; 150b, Add to tail of bullet comment queue; 151b, Pre-draw texture; 152b, Reclaim resources; 153b, Add to tail of bullet comment queue; 154b, Sort by weight. Steps 140b to 154b are called the bullet comment placement stage. Specifically, when the computer device is detected to have enabled bullet comments (i.e., enabled bullet comment display function), a timer can be started. This timer is used for the playback time of the target video data. The pre-request logic is received, which includes initial bullet comment data. The format of this bullet comment data can be based on an HTTP segmented request format. The computer device can convert the initial bullet screen data to obtain bullet screen data in the format of the target application corresponding to the target video data. It then checks if the target video data is playing. If so, the computer device can send the bullet screen data to the bullet screen facade management component. This component adds the bullet screen data to the bullet screen library and sends it to the bullet screen distribution component. The bullet screen distribution component determines the priority of the bullet screen data, which can be based on the correlation between the bullet screen data and the target video data, the publisher's level in the target application, and the number of times the bullet screen data has been sent. It then determines if the bullet screen data is of high priority (a priority greater than a priority threshold). If it is high priority, the bullet screen distribution component checks if the number of bullet screen data in the bullet screen queue exceeds the maximum. If the number does not exceed the maximum, the bullet screen data can be added to the end of the queue, and a pre-made texture can be applied to it. If the bullet comment data is not of high priority, the bullet comment distribution component can determine whether the number of bullet comment data in the bullet comment queue exceeds the maximum number. If the number of bullet comment data in the bullet comment queue exceeds the maximum number, the bullet comment data can be reclaimed and deleted. If the number of bullet comment data in the bullet comment queue does not exceed the maximum number, the bullet comment data can be added to the end of the bullet comment queue and sorted according to the weight of the bullet comment data to obtain the display order of the bullet comment data. Bullet comment data with a higher display order moves to the head of the bullet comment queue, and bullet comment data with a lower display order moves to the tail of the bullet comment queue. The weight of the bullet comment data can be determined according to the priority of the bullet comment data.
[0116] The steps are as follows: 155b, Start Displaying; 156b, Start the Bullet Screen Timer; 157b, Bullet Screen Management Component; 158b, Track Control Component; 159b, Update Position and Remaining Display Time; 160b, Check if Remaining Display Time is Less Than or Equal to the Duration Threshold; 161b, Bullet Screen Distribution Component; 162b, Check if a Suitable Track (Virtual Track) is Found; 163b, Read Bullet Screen Data from the Bullet Screen Queue; 164b, Pre-draw Texture; 165b, Track Control Component Uploads Texture to Rendering Component. Steps 155b to 165b are called the Bullet Screen Update Stage. Specifically, the computer device can start displaying the bullet screen data in the bullet screen queue. According to the first bullet screen style attribute, the bullet screen data located at the head of the queue is displayed in the first video segment of the target video data. That is, the bullet screen data located at the head of the queue is called the bullet screen data in the first bullet screen set. A bullet screen timer is started to record the update time of bullet screen data. The bullet screen facade management component is called to retrieve the time from the timer, calculate the time interval between the current time and the last bullet screen update time, and send this time interval to the track control component and the bullet screen distribution component. After receiving the time interval, the track control component updates the remaining display time of the bullet screen data displayed in the virtual track by subtracting the time interval from the remaining display time. If the remaining display time of the updated bullet screen data is greater than the time limit, the position of the bullet screen data in the virtual track is updated. After receiving the time interval, the bullet screen distribution component traverses all virtual tracks to determine if a suitable virtual track is found, i.e., whether there is a virtual track with an idle time greater than the idle time limit. If a virtual track with an idle time greater than the idle time limit is found, bullet screen data can be read from the bullet screen queue and added to the virtual track with an idle time greater than the idle time limit. The track control component can add the view of the added bullet screen data to the bullet screen display area. Specifically, if it is texture bullet screen data, the texture will be pre-drawn, uploaded to the rendering component, rendered by the rendering component to obtain the view of the bullet screen data, and then added to the bullet screen display area.
[0117] Optionally, the bullet screen display method also includes a bullet screen unloading phase. Specifically, when the remaining display time for updating bullet screen data is less than or equal to a duration threshold, the track control component can remove the view of the bullet screen data from the bullet screen display area and remove information stored about the bullet screen data (such as location information). The bullet screen facade management component can call the unloading callback function to remove the bullet screen data and its attributes (such as priority).
[0118] Optionally, this bullet screen display method also includes a bullet screen distribution stage. Specifically, the bullet screen facade management component typically includes a bullet screen distribution component. This component usually manages multiple virtual tracks and has a built-in bullet screen queue to store bullet screen data. Driven by a bullet screen clock, the bullet screen facade management component continuously queries for available virtual tracks. When a virtual track meets both the availability requirement and the allocation strategy, the bullet screen data at the head of the bullet screen queue is added to that virtual track. The specific process is as follows: The bullet screen facade management component calls the `insertNewAttributes` method to insert bullet screen data (danmuattribute) into the bullet screen queue. Driven by the bullet screen clock, the component calls the `dispatchNewAttributesToFreeTracks` method to add new attributes to available virtual tracks. It selects available virtual tracks that meet the allocation strategy from the available tracks and adds the bullet screen data at the head of the bullet screen queue to those tracks. The track control component then displays the added bullet screen data.
[0119] Optionally, this bullet screen display method also includes a bullet screen movement phase, combined with... Figure 14 The basic process in the game involves the movement of bullet screen data. Driven by the bullet screen clock, new bullet screen data is gradually added to the screen, and the position of the bullet screen data changes according to predetermined rules. In the industry, bullet screen data usually appears from the right edge of the video screen as the video data is played, and moves at a constant speed to the left edge of the video screen until it disappears from the left. In this example, the corresponding virtual track represents the animation of moving at a constant speed from the right edge of the video screen to the left edge of the video screen until it goes off the screen. The duration of this process is the limited display duration TotalTime specified in the bullet screen style attribute of this bullet screen data. With the bullet screen clock periodically callback (usually the bullet screen clock callback interval depends on the screen refresh rate. If the refresh rate is 60 frames per second, then the callback interval is 0.0167), the track control component receives a callback of a short period of time (i.e., the interval duration), and then performs the following steps: (1) Iterate through all bullet screen data on the current virtual track, add the time interval to the display duration of each bullet screen data, and get the updated display duration; (2) If the updated display duration of this bullet screen data exceeds the limited display duration after adding this time interval, this bullet screen data will be put into an unload function and unloaded in the unload function. (3) If, after adding this time interval, the update display duration of this bullet screen data does not reach the limit display duration, the track control component calls the virtual track to update the position of this bullet screen data. Of course, the track control component can unload the bullet screen data and update its position based on the remaining display duration of the bullet screen data mentioned above.
[0120] Optionally, this bullet screen display method also includes a reverse bullet screen configuration stage. To support the reverse bullet screen effect, the bullet screen display configuration response file specifies the usage time interval [t1, t2] for the reverse bullet screen. During the playback of the target video data, when the track control component receives the interval duration, it can detect whether the usage time interval is hit. If the usage time interval is hit, it checks whether the reverse information field in the bullet screen display configuration response file is a valid value. If it is a valid value, it obtains the reverse attribute from the bullet screen display configuration response file. If the playback time of the target video data exceeds the usage time interval, the bullet screen style attribute switching can be turned off, and the default bullet screen effect of the target application can be restored, that is, the default bullet screen style attribute can be restored.
[0121] Optionally, this bullet screen display method also includes a reverse bullet screen stage. For a description of the reverse bullet screen, please refer to the above text, which will not be repeated here.
[0122] Optionally, the bullet screen display method also includes a reverse bullet screen stage. After receiving the bullet screen reverse flow configuration, if the value of the textInverted field in the bullet screen display configuration response file is true (a valid value), the bullet screen rendering component can update the rendering order of the bullet screen data and render the bullet screen data according to the updated rendering order.
[0123] Optionally, the bullet screen display method also includes a bullet screen acceleration stage. After receiving the bullet screen rewind configuration, if the value of the acceleration field "acclerate" in the bullet screen display configuration response file is found to be true, the movement speed of the bullet screen data is accelerated, which means that the limited display time of the bullet screen data is reduced. The accelerated movement of the bullet screen data can be achieved by reducing the limited display time of the bullet screen data. The display time of the bullet screen data can be updated according to the acceleration factor in the bullet screen display configuration response file, thus achieving the bullet screen acceleration effect.
[0124] Please see Figure 16 This is a schematic diagram of the structure of a bullet screen display device provided in an embodiment of this application. Figure 16 As shown, the bullet screen display device may include: The first display module 161 is used to display the barrage data in the first barrage set in the first video segment according to the first barrage style attribute during the playback of the first video segment of the target video data. The second display module 162 is used to play a first video sub-segment of the second video segment in the target video data if the first video segment has finished playing, and switch to displaying the barrage data in the second barrage set in the first video sub-segment according to the transition barrage style attribute; the plot of the first video segment is different from the plot of the second video segment; The third display module 163 is used to play the second video sub-segment in the second video segment if the first video sub-segment has finished playing, and switch to displaying the barrage data in the second barrage set in the second video sub-segment according to the second barrage style attribute; the first barrage style attribute, the transition barrage style attribute and the second barrage style attribute are different.
[0125] Optionally, the transition barrage style attribute is used to indicate that the barrage data is displayed in a static display mode, and the transition barrage style attribute includes the display duration; The second display module 162 is used to display the bullet screen data in the second bullet screen set at a fixed position in the first video sub-segment according to the display duration.
[0126] Optionally, the fixed position is determined based on the position of the bullet screen data displayed in the last video frame in the playback order of the first video segment; or, the fixed position is any position in the bullet screen display area of the first video sub-segment.
[0127] Optionally, the second bullet screen movement direction included in the second bullet screen style attribute is different from the first bullet screen movement direction included in the first bullet screen style attribute; the third display module 163 is used to move and display the bullet screen data in the second bullet screen set in the second video sub-segment according to the second bullet screen movement direction.
[0128] The third display module 163 is used to move and display the barrage data in the second barrage set in the second video sub-segment according to the second barrage movement direction and the second movement speed.
[0129] Optionally, the second bullet screen arrangement direction included in the second bullet screen style attribute is different from the first bullet screen arrangement direction included in the first bullet screen style attribute; the third display module 163 is used to arrange the text content of the bullet screen data in the second bullet screen set according to the second bullet screen arrangement direction; and to display the arranged bullet screen data in the second bullet screen set in the second video sub-segment.
[0130] Optionally, the second movement speed included in the second bullet screen style attribute is different from the first movement speed included in the first bullet screen style attribute; the third display module 163 is used to display the bullet screen data in the second bullet screen set in the second video sub-segment according to the second movement speed.
[0131] Optionally, if the content described by the second video segment is the same as the content described by the first video segment, then the first set of bullet comments is the same as the second set of bullet comments, and the first set of bullet comments is associated with the first video segment; or, the first set of bullet comments is associated with the second video segment. If the content described by the second video segment is different from the content described by the first video segment, then the first set of bullet comments is associated with the first video segment, and the second set of bullet comments is associated with the second video segment.
[0132] The first display module 161 is further configured to respond to the closing operation of the barrage style attribute switching control and display the barrage data in the second barrage set in the second video segment according to the first barrage style attribute.
[0133] Optionally, the third display module 163 is configured to, if the second bullet screen style attribute indicates that the bullet screen data is moved in the reverse direction, display the bullet screen data in the second bullet screen set on L virtual tracks in the second video sub-segment in the reverse direction; and if the second bullet screen style attribute indicates that the bullet screen data is moved in the forward direction, display the bullet screen data in the second bullet screen set on L virtual tracks in the second video sub-segment in the forward direction. L is a positive integer. Optionally, the third display module 163 is used to display x bullet screen data from the second bullet screen set on L virtual tracks of the second video sub-segment according to the second bullet screen style attribute; x is a positive integer less than or equal to Q, Q is the number of bullet screens in the second bullet screen set; L is a positive integer; If the time reaches the bullet screen update time, the track control component is invoked to update and display x bullet screen data in the second bullet screen set according to the second bullet screen style attribute.
[0134] Optionally, the third display module 163 is configured to, if the time reaches the barrage update time, call the track control component to update the remaining display duration of the x barrage data, thereby obtaining the updated remaining display duration of the x barrage data; call the barrage facade management component to remove barrage data from the L virtual tracks whose updated remaining display duration is less than or equal to a duration threshold; call the track control component to display valid barrage data from the x barrage data on the L virtual tracks according to the second barrage style attribute; the valid barrage data is the barrage data from the x barrage data whose updated remaining display duration is greater than the duration threshold; call the track control component to display the remaining barrage data on the L virtual tracks according to the second barrage style attribute; the remaining barrage data is the barrage data in the second barrage set excluding the x barrage data.
[0135] Optionally, the bullet movement direction included in the first bullet screen style attribute is opposite to the bullet movement direction included in the second bullet screen style attribute; optionally, the third display module 163 is used to, if the x bullet screen data have been displayed in the first video segment according to the first bullet screen style attribute, call the track control component to determine the display duration of the x bullet screen data in the first video segment as the remaining display duration of the x bullet screen data; obtain the interval duration from the start time of displaying the x bullet screen data in the second video segment to the bullet screen update time; and calculate the difference between the remaining display duration of the x bullet screen data and the interval duration to obtain the remaining display duration of the x bullet screen data.
[0136] Optionally, the third display module 163 is used to call the bullet screen distribution component to determine, from the L virtual tracks, a virtual track with an idle degree greater than an idle degree threshold, as the target virtual track; call the bullet screen distribution component to add the undisplayed remaining bullet screen data belonging to the second bullet screen set in the bullet screen queue to the target virtual track; and call the track control component to display the remaining bullet screen data on the target virtual track according to the second bullet screen style attribute.
[0137] Optionally, the first movement speed included in the first bullet screen style attribute is different from the second movement speed included in the second bullet screen style attribute; Optionally, the third display module 163 is used to call the track control component to obtain the total display duration of the bullet screen data in the second bullet screen set; the total display duration is determined based on the first movement speed; obtain the speed ratio between the second movement speed and the first movement speed; divide the total display duration by the speed ratio to obtain the limited display duration of the x bullet screen data; and display the bullet screen data in the second bullet screen set in the second video sub-segment according to the limited display duration and the second movement speed.
[0138] Optionally, the first bullet screen style attribute includes a first bullet screen arrangement direction that is the opposite of the second bullet screen arrangement direction included in the second bullet screen style attribute; Optionally, the third display module 163 is used to call the bullet screen rendering component, update the initial bullet screen rendering order according to the second bullet screen arrangement direction, and obtain the updated bullet screen rendering order; the initial bullet screen rendering order is determined according to the first bullet screen arrangement direction; the bullet screen data in the second bullet screen set is rendered according to the updated bullet screen rendering order; and the rendered bullet screen data is displayed in the second video sub-segment.
[0139] Optionally, the segmentation module 164 is used to display a configuration interface in response to a configuration operation for a plot change moment; obtain the plot change moment input in the configuration interface; and segment the target video data according to the plot change moment to obtain the first video segment and the second video segment.
[0140] Optionally, the segmentation module 164 is used to obtain the target bullet screen set in the target video data; the first bullet screen set and the second bullet screen set are subsets of the target bullet screen set; Text feature recognition is performed on the bullet screen data in the target bullet screen set to obtain the text features of the bullet screen data in the target bullet screen set; Based on the text features of the bullet screen data in the target bullet screen set, the target video data is divided to obtain the first video segment and the second video segment.
[0141] Optionally, the segmentation module 164 is used to determine the text similarity between the text features of the bullet screen data in the target bullet screen set and the text features of plot change; count the number of bullet screens in the target bullet screen set whose text similarity is greater than a similarity threshold within S release times; the S release times are the release times of the bullet screen data in the target bullet screen set, where S is a positive integer; select the times from the S times where the number of bullet screens is greater than the number threshold as plot change times; and segment the target video data according to the plot change times to obtain the first video segment and the second video segment.
[0142] Optionally, the segmentation module 164 is used to obtain script data corresponding to the target video data; extract object description information and the occurrence time of the object description information from the script data corresponding to the target video data; and determine a set of script scene information associated with the target video data based on the occurrence time of the object description information and the object description information. The target video data is divided according to the script scene information set to obtain the first video segment and the second video segment.
[0143] Optionally, the segmentation module 164 is used to: perform frame-by-frame traversal of script scene information i in the script scene information set and untraversed video frames in the target video data; i is less than or equal to F, where F is the number of script scene information in the script scene information set; if the matching degree between the target video frame and the script scene information i is less than the matching degree threshold, then the target video data is segmented according to the playback time of the target video frame to obtain the first video segment and the second video segment.
[0144] It should be noted that the bullet screen display device in this application can be used to execute the bullet screen display method described in the corresponding embodiments above. When the bullet screen display device executes the bullet screen display method described above, the beneficial effects can be referred to the beneficial effects described in the corresponding embodiments of the bullet screen display method above, and will not be repeated here.
[0145] In this application, during the playback of the target video data, bullet screen data from different plot segments are displayed using different bullet screen style attributes (i.e., the first bullet screen style attribute and the second bullet screen style attribute). This prompts the user to recognize plot changes between the preceding and following video segments (i.e., the first video segment and the second video segment), enhancing the user's perception of plot changes and facilitating their rapid understanding of the target video data's plot. It also improves the flexibility and diversity of bullet screen data display. Furthermore, it avoids requiring users to repeatedly replay the video data to understand the plot, reducing terminal resource consumption (such as the resources required to load video data). Additionally, by displaying bullet screen data with transitional bullet screen attribute styles between preceding and following video segments, it avoids abrupt transitions such as blank screens (i.e., no bullet screen data) and other abrupt changes, ensuring smooth transitions between the bullet screen data displayed in the preceding and following video segments.
[0146] Please see Figure 17 This is a schematic diagram of the structure of a bullet screen display device provided in an embodiment of this application. Figure 17 As shown, the bullet screen display device may include: The first display module 171 is used to display the barrage data in the first barrage set in the first video segment according to the first barrage style attribute during the playback of the first video segment of the target video data. The second display module 172 is used to play a first video sub-segment of the second video segment in the target video data if the first video segment has finished playing, and switch to displaying the barrage data in the second barrage set in the first video sub-segment according to the transition barrage style attribute; the plot of the first video segment is different from the plot of the second video segment; The third display module 173 is used to play the second video sub-segment in the second video segment if the first video sub-segment has finished playing, and switch to displaying the barrage data in the second barrage set in the second video sub-segment according to the second barrage style attribute; the first barrage style attribute, the transition barrage style attribute and the second barrage style attribute are different.
[0147] It should be noted that the bullet screen display device in this application can be used to execute the bullet screen display method described in the corresponding embodiments above. When the bullet screen display device executes the bullet screen display method described above, the beneficial effects can be referred to the beneficial effects described in the corresponding embodiments of the bullet screen display method above, and will not be repeated here.
[0148] In this application, during the playback of the target video data, bullet screen data from different plot segments are displayed using different bullet screen style attributes (i.e., the first bullet screen style attribute and the second bullet screen style attribute). This prompts the user to recognize plot changes between the preceding and following video segments (i.e., the first video segment and the second video segment), enhancing the user's perception of plot changes and facilitating their rapid understanding of the target video data's plot. It also improves the flexibility and diversity of bullet screen data display. Furthermore, it avoids requiring users to repeatedly replay the video data to understand the plot, reducing terminal resource consumption (such as the resources required to load video data). Additionally, by displaying bullet screen data with transitional bullet screen attribute styles between preceding and following video segments, it avoids abrupt transitions such as blank screens (i.e., no bullet screen data) and other abrupt changes, ensuring smooth transitions between the bullet screen data displayed in the preceding and following video segments.
[0149] Please see Figure 18 This is a schematic diagram of the structure of a bullet screen display device provided in an embodiment of this application. Figure 18 As shown, the bullet screen display device may include: The first display module 181 is used to display the barrage data in the first barrage set in the first video segment according to the first barrage style attribute during the playback of the first video segment of the target video data. The second display module 182 is used to play the second video segment in the target video data if the first video segment has finished playing, and switch to displaying the bullet screen data in the second bullet screen set in the second video segment according to the second bullet screen style attribute; the plot of the first video segment is different from the plot of the second video segment, and the first bullet screen style attribute, the transition bullet screen style attribute and the second bullet screen style attribute are different.
[0150] It should be noted that the bullet screen display device in this application can be used to execute the bullet screen display method described in the corresponding embodiments above. When the bullet screen display device executes the bullet screen display method described above, the beneficial effects can be referred to the beneficial effects described in the corresponding embodiments of the bullet screen display method above, and will not be repeated here.
[0151] In this application, during the playback of the target video data, bullet screen data from different plot segments are displayed using different bullet screen style attributes (i.e., the first bullet screen style attribute and the second bullet screen style attribute). This prompts the user to recognize plot changes between the preceding and following video segments (i.e., the first video segment and the second video segment), enhancing the user's perception of plot changes and facilitating their rapid understanding of the target video data's plot. It also improves the flexibility and diversity of bullet screen data display. Furthermore, it avoids requiring users to repeatedly replay the video data to understand the plot, reducing terminal resource consumption (such as the resources required to load video data). Additionally, by displaying bullet screen data with transitional bullet screen attribute styles between preceding and following video segments, it avoids abrupt transitions such as blank screens (i.e., no bullet screen data) and other abrupt changes, ensuring smooth transitions between the bullet screen data displayed in the preceding and following video segments.
[0152] Please see Figure 19 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Figure 19 As shown, the aforementioned computer device 1000 can refer to a terminal or server, including: a processor 1001, a network interface 1004, and a memory 1005. Furthermore, the aforementioned computer device 1000 may also include: a user interface 1003, and at least one communication bus 1002. The communication bus 1002 is used to implement communication between these components. In some embodiments, the user interface 1003 may include a display screen and a keyboard; optionally, the user interface 1003 may also include a standard wired interface or a wireless interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface). The memory 1005 may be high-speed RAM or non-volatile memory, such as at least one disk storage device. The memory 1005 may also optionally be at least one storage device located remotely from the aforementioned processor 1001. Figure 19 As shown, the memory 1005, which is a computer-readable storage medium, may include an operating system, a network communication module, a user interface module, and a device control application.
[0153] exist Figure 19In the computer device 1000 shown, the network interface 1004 provides network communication functionality; the user interface 1003 is mainly used to provide an input interface; and the processor 1001 can be used to call the computer program stored in the memory 1005 to execute the description of the above-described bullet screen display method in the corresponding embodiments above, or to execute the description of the above-described bullet screen display device in the corresponding embodiments above, which will not be repeated here. Furthermore, the beneficial effects brought about by the processor 1001 executing the description of the bullet screen display method above, or by the processor 1001 executing the description of the bullet screen display device above, can be referred to the beneficial effects described in the embodiments corresponding to the bullet screen display method above, which will not be repeated here either.
[0154] Furthermore, it should be noted that this application also provides a computer-readable storage medium storing a computer program executed by the aforementioned bullet screen display device. This computer program includes program instructions, which, when executed by the processor, enable the execution of the bullet screen display method described in the corresponding embodiments above. Therefore, these descriptions will not be repeated here. Additionally, the beneficial effects of using the same method will also not be repeated. For technical details not disclosed in the computer-readable storage medium embodiments of this application, please refer to the description of the method embodiments of this application.
[0155] As an example, the above program instructions can be deployed and executed on a computer device, or deployed and executed on at least two computer devices in one location, or executed on at least two computer devices distributed in at least two locations and interconnected by a communication network. At least two computer devices distributed in at least two locations and interconnected by a communication network can form a blockchain network.
[0156] The aforementioned computer-readable storage medium can be the bullet screen display device provided in any of the foregoing embodiments or the central storage unit of the aforementioned computer device, such as the hard disk or central storage of the computer device. The computer-readable storage medium can also be an external storage device of the computer device, such as a plug-in hard disk, smart memory card (SMC), secure digital (SD) card, flash memory card, etc., provided on the computer device. Furthermore, the computer-readable storage medium may include both the central storage unit of the computer device and external storage devices. The computer-readable storage medium is used to store the computer program and other programs and data required by the computer device. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0157] The terms "first," "second," etc., in the specification, claims, and drawings of this application are used to distinguish content in different media, rather than to describe a specific order. Furthermore, the term "comprising," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, apparatus, product, or device that includes a series of steps or units is not limited to the listed steps or modules, but may optionally include steps or modules not listed, or may optionally include other step units inherent to these processes, methods, apparatuses, products, or devices.
[0158] In practice, the collection and processing of data in this application should strictly comply with the requirements of relevant national laws and regulations, obtain the informed consent or separate consent of the data subject, and carry out subsequent data use and processing within the scope of laws and regulations and the authorization of the data subject.
[0159] This application also provides a computer program product, including a computer program. When executed by a processor, the computer program implements the descriptions of the bullet screen display method and decoding method in the preceding embodiments, and therefore will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated. For technical details not disclosed in the embodiments of the computer program product involved in this application, please refer to the description of the method embodiments of this application.
[0160] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.
[0161] The methods and related apparatus provided in this application are described with reference to the method flowcharts and / or structural diagrams provided in this application. Specifically, each block of the method flowchart and / or structural diagram, as well as combinations of blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable network-connected device to create a machine, such that the instructions, which execute via the processor of the computer or other programmable network-connected device, generate instructions for implementing the process. Figure 1 A schematic diagram of one or more processes and / or structures. Figure 1The computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable network-connected device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 A schematic diagram of one or more processes and / or structures. Figure 1 The functions specified in one or more boxes. These computer program instructions may also be loaded onto a computer or other programmable network-connected device to cause a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable device for implementing the process. Figure 1 A process or multiple processes and / or structures illustrate the steps of the functions specified in one or more boxes.
[0162] The above-disclosed embodiments are merely preferred embodiments of this application and should not be construed as limiting the scope of this application. Therefore, any equivalent variations made in accordance with the claims of this application shall still fall within the scope of this application.
Claims
1. A method for displaying bullet comments, characterized in that, include: During the playback of the first video segment of the target video data, the bullet screen data in the first bullet screen set is displayed in the first video segment according to the first bullet screen style attribute; If the first video segment finishes playing, then the first video sub-segment of the second video segment in the target video data is played, and the display switches to the first video sub-segment of the second video segment according to the transition barrage style attribute, displaying the barrage data in the second barrage set; the plot of the first video segment is different from the plot of the second video segment; the transition barrage style attribute is used to indicate that the barrage data is displayed in a static display mode, and the switching to the first video sub-segment of the second video segment according to the transition barrage style attribute to display the barrage data in the second barrage set includes: displaying the barrage data in the second barrage set at a fixed position in the first video sub-segment of the second video segment; If the first video sub-segment of the second video segment finishes playing, then the second video sub-segment of the second video segment is played, and the player switches to the second video sub-segment of the second video segment according to the second bullet screen style attribute, displaying the bullet screen data in the second bullet screen set; the first bullet screen style attribute, the transition bullet screen style attribute, and the second bullet screen style attribute are different.
2. The method as described in claim 1, characterized in that, The fixed position is determined based on the position of the bullet comment data displayed in the last video frame in the playback order of the first video segment; or, The fixed position is any position in the bullet screen display area of the first video sub-segment.
3. The method as described in claim 1, characterized in that, During the playback of the first video segment of the target video data, displaying the bullet comment data from the first bullet comment set in the first video segment according to the first bullet comment style attribute includes: During the playback of the first video segment of the target video data, the bullet screen data in the first bullet screen set is displayed in the first video sub-segment of the first video segment according to the first bullet screen style attribute; If the first video sub-segment of the first video segment finishes playing, then the second video sub-segment of the first video segment is played, and the bullet screen data in the first bullet screen set is displayed at a fixed position in the second video sub-segment of the first video segment. The step of playing a first video sub-segment of the second video segment in the target video data if the first video segment has finished playing includes: If the second video sub-segment of the first video segment finishes playing, then the first video sub-segment of the second video segment in the target video data is played.
4. The method as described in claim 1, characterized in that, The second bullet comment style attribute includes a second bullet comment movement direction that is different from the first bullet comment style attribute includes a first bullet comment movement direction; or, The second bullet screen style attribute includes a second bullet screen arrangement direction that is different from the first bullet screen style attribute includes a first bullet screen arrangement direction. or, The second movement speed included in the second bullet screen style attribute is different from the first movement speed included in the first bullet screen style attribute; or, The color values included in the second bullet screen style attribute are different from the color values included in the first bullet screen style attribute; or, The transparency included in the second bullet screen style attribute is different from the transparency included in the first bullet screen style attribute; or, The font types included in the second bullet screen style attribute are different from the font types included in the first bullet screen style attribute.
5. The method as described in claim 1, characterized in that, If the content described by the second video segment is the same as the content described by the first video segment, then the first set of bullet comments is the same as the second set of bullet comments, and the first set of bullet comments is associated with the first video segment; or, the first set of bullet comments is associated with the second video segment. If the content described by the second video segment is different from the content described by the first video segment, then the first set of bullet comments is associated with the first video segment, and the second set of bullet comments is associated with the second video segment.
6. The method as described in claim 1, characterized in that, The method further includes: In response to the closing operation of the barrage style attribute switching control, the barrage data in the second barrage set is displayed in the second video segment according to the first barrage style attribute.
7. The method as described in claim 1, characterized in that, The second bullet screen movement direction included in the second bullet screen style attribute is different from the first bullet screen movement direction included in the first bullet screen style attribute; The step of displaying the bullet comment data from the second bullet comment set in the second video sub-segment of the second video segment according to the second bullet comment style attribute includes: If the second bullet screen moves in the reverse direction, then the bullet screen data in the second bullet screen set will be displayed on L virtual tracks in the second video sub-segment of the second video segment, moving in the reverse direction of the bullet screen; L is a positive integer. If the second bullet screen moves in the same direction as the bullet screen's forward flow, then the bullet screen data in the second bullet screen set will be displayed on L virtual tracks in the second video sub-segment of the second video segment, moving in the same direction as the forward flow of the bullet screen.
8. The method as described in claim 1, characterized in that, The step of displaying the bullet comment data from the second bullet comment set in the second video sub-segment of the second video segment according to the second bullet comment style attribute includes: On the L virtual tracks of the second video sub-segment of the second video segment, x bullet screen data from the second bullet screen set are displayed according to the second bullet screen style attribute; x is a positive integer less than or equal to Q, Q is the number of bullet screens in the second bullet screen set, and L is a positive integer; If the time reaches the bullet screen update time, the track control component is invoked to update and display x bullet screen data in the second bullet screen set according to the second bullet screen style attribute.
9. The method as described in claim 8, characterized in that, If the time reaches the bullet screen update time, the track control component is invoked to update and display x bullet screen data in the second bullet screen set according to the second bullet screen style attributes, including: If the time reaches the bullet screen update time, the track control component is invoked to update the remaining display time of the x bullet screen data, thus obtaining the remaining display time of the x bullet screen data. Call the bullet screen management component to remove bullet screen data from the L virtual tracks and update the remaining display time of the x bullet screen data to the bullet screen data that is less than or equal to the duration threshold. The track control component is invoked to display valid bullet screen data from the x bullet screen data on the L virtual tracks according to the second bullet screen style attribute; the valid bullet screen data are the bullet screen data from the x bullet screen data whose updated remaining display time is greater than the time threshold. The track control component is invoked to display the remaining bullet screen data on the L virtual tracks according to the second bullet screen style attribute; the remaining bullet screen data is the bullet screen data in the second bullet screen set excluding the x bullet screen data.
10. The method as described in claim 9, characterized in that, The direction of bullet movement included in the first bullet style attribute is opposite to the direction of bullet movement included in the second bullet style attribute; The step of calling the track control component to update the remaining display time of the x bullet screen data, and obtaining the updated remaining display time of the x bullet screen data, includes: If the x bullet screen data have been displayed in the first video segment according to the first bullet screen style attribute, then the track control component is invoked to determine the display duration of the x bullet screen data in the first video segment as the remaining display duration of the x bullet screen data; Obtain the interval between the start time of displaying the x bullet comments in the second video segment and the time of bullet comment update; The remaining display time of the x bullet screen data is obtained by subtracting the interval time from the remaining display time of the x bullet screen data.
11. The method as described in claim 9, characterized in that, The invocation of the track control component to display the remaining bullet screen data on the L virtual tracks according to the second bullet screen style attribute includes: The bullet screen distribution component is invoked to determine the virtual track with an idle degree greater than the idle degree threshold from the L virtual tracks, and this track is used as the target virtual track. The bullet screen distribution component is invoked to add the remaining undisplayed bullet screen data belonging to the second bullet screen set in the bullet screen queue to the target virtual track; The track control component is invoked to display the remaining bullet screen data on the target virtual track according to the second bullet screen style attribute.
12. The method as described in claim 1, characterized in that, The first movement speed included in the first bullet screen style attribute is different from the second movement speed included in the second bullet screen style attribute; The step of displaying the bullet comment data from the second bullet comment set in the second video sub-segment of the second video segment according to the second bullet comment style attribute includes: The track control component is invoked to obtain the total display duration of the bullet screen data in the second bullet screen set; the total display duration is determined based on the first movement speed. Obtain the speed ratio between the second moving speed and the first moving speed; The total display duration is divided by the speed ratio to obtain the limited display duration of the x bullet screen data. According to the specified display duration and the second movement speed, the bullet screen data in the second bullet screen set is displayed in the second video sub-segment of the second video segment.
13. The method as described in claim 1, characterized in that, The first bullet screen style attribute includes a first bullet screen arrangement direction, which is the opposite direction of the second bullet screen arrangement direction included in the second bullet screen style attribute; The step of displaying the bullet comment data from the second bullet comment set in the second video sub-segment of the second video segment according to the second bullet comment style attribute includes: The bullet screen rendering component is invoked to update the initial bullet screen rendering order according to the second bullet screen arrangement direction, thereby obtaining the updated bullet screen rendering order; the initial bullet screen rendering order is determined based on the first bullet screen arrangement direction. Render the bullet screen data in the second bullet screen set according to the updated bullet screen rendering order; In the second video sub-segment of the second video segment, the rendered bullet screen data is displayed.
14. The method as described in claim 1, characterized in that, The method further includes: Obtain the target bullet comment set from the target video data; the first bullet comment set and the second bullet comment set are subsets of the target bullet comment set; Text feature recognition is performed on the bullet screen data in the target bullet screen set to obtain the text features of the bullet screen data in the target bullet screen set; Based on the text features of the bullet screen data in the target bullet screen set, the target video data is divided to obtain the first video segment and the second video segment.
15. The method as described in claim 14, characterized in that, The step of dividing the target video data into the first video segment and the second video segment based on the text features of the bullet screen data in the target bullet screen set includes: Determine the text similarity between the text features of the bullet screen data in the target bullet screen set and the text features of plot changes; Within S publishing times, count the number of bullet comments in the target bullet comment set whose text similarity is greater than a similarity threshold; the S publishing times are the publishing times of the bullet comment data in the target bullet comment set, and S is a positive integer; Select the moments from the S moments when the number of bullet comments is greater than the threshold number, and use these moments as the moments when the plot changes. The target video data is divided according to the time of the plot change to obtain the first video segment and the second video segment.
16. The method as described in claim 1, characterized in that, The method further includes: Obtain the script data corresponding to the target video data; Extract object description information and the occurrence time of the object description information from the script data corresponding to the target video data; Based on the occurrence time of the object description information and the object description information, determine the set of script scene information associated with the target video data; The script scene information i in the script scene information set is traversed frame by frame with the untraversed video frames in the target video data; i is less than or equal to F, and F is the number of script scene information in the script scene information set. If the matching degree between the target video frame and the script scene information i is less than the matching degree threshold, the target video data is divided according to the playback time of the target video frame to obtain the first video segment and the second video segment.
17. A method for displaying bullet comments, characterized in that, include: During the playback of the first video sub-segment of the first video segment in the target video data, the bullet screen data in the first bullet screen set is displayed in the first video sub-segment of the first video segment according to the first bullet screen style attribute; If the first video sub-segment of the first video segment finishes playing, then the second video sub-segment of the first video segment is played, and the player switches to displaying the bullet screen data from the first bullet screen set in the second video sub-segment of the first video segment according to the transition bullet screen style attribute; the transition bullet screen style attribute is used to indicate that the bullet screen data is displayed in a static display mode, and the step of switching to displaying the bullet screen data from the first bullet screen set in the second video sub-segment of the first video segment according to the transition bullet screen style attribute includes: displaying the bullet screen data from the first bullet screen set at a fixed position in the second video sub-segment of the first video segment; If the second video sub-segment of the first video segment finishes playing, then the second video segment in the target video data is played, and the display switches to the second video segment according to the second bullet screen style attribute, displaying the bullet screen data in the second bullet screen set; the first bullet screen style attribute, the transition bullet screen style attribute, and the second bullet screen style attribute are different; the plot of the first video segment is different from the plot of the second video segment.
18. The method as described in claim 17, characterized in that, The fixed position is determined based on the position of the bullet screen data displayed in the last video frame of the first video sub-segment in the playback order of the first video segment; or, The fixed position is any position in the bullet screen display area of the second video sub-segment of the first video segment.
19. The method as described in claim 17, characterized in that, The second bullet comment style attribute includes a second bullet comment movement direction that is different from the first bullet comment style attribute includes a first bullet comment movement direction; or, The second bullet screen style attribute includes a second bullet screen arrangement direction that is different from the first bullet screen style attribute includes a first bullet screen arrangement direction. or, The second movement speed included in the second bullet screen style attribute is different from the first movement speed included in the first bullet screen style attribute; or, The color values included in the second bullet screen style attribute are different from the color values included in the first bullet screen style attribute; or, The transparency included in the second bullet screen style attribute is different from the transparency included in the first bullet screen style attribute; or, The font types included in the second bullet screen style attribute are different from the font types included in the first bullet screen style attribute.
20. The method as described in claim 17, characterized in that, If the content described by the second video segment is the same as the content described by the first video segment, then the first set of bullet comments is the same as the second set of bullet comments, and the first set of bullet comments is associated with the first video segment; or, the first set of bullet comments is associated with the second video segment. If the content described by the second video segment is different from the content described by the first video segment, then the first set of bullet comments is associated with the first video segment, and the second set of bullet comments is associated with the second video segment.
21. The method as described in claim 17, characterized in that, The method further includes: In response to the closing operation of the barrage style attribute switching control, the barrage data in the second barrage set is displayed in the second video segment according to the first barrage style attribute.
22. A bullet screen display device, characterized in that, include: The first display module is used to display the barrage data in the first barrage set in the first video segment according to the first barrage style attribute during the playback of the first video segment of the target video data; The second display module is configured to, if the first video segment has finished playing, play a first video sub-segment of the second video segment in the target video data, and switch to displaying bullet screen data from the second bullet screen set in the first video sub-segment of the second video segment according to the transition bullet screen style attribute; the plot of the first video segment is different from the plot of the second video segment; the transition bullet screen style attribute is used to indicate that the bullet screen data is displayed in a static display mode; the step of switching to displaying bullet screen data from the second bullet screen set in the first video sub-segment of the second video segment according to the transition bullet screen style attribute includes: displaying bullet screen data from the second bullet screen set at a fixed position in the first video sub-segment of the second video segment; The third display module is used to play the second video sub-segment of the second video segment when the first video sub-segment of the second video segment has finished playing, and switch to display the bullet screen data in the second bullet screen set in the second video sub-segment of the second video segment according to the second bullet screen style attribute; the first bullet screen style attribute, the transition bullet screen style attribute and the second bullet screen style attribute are different.
23. A bullet screen display device, characterized in that, include: The first display module is used to display the barrage data in the first barrage set in the first video sub-segment of the first video segment according to the first barrage style attribute during the playback of the first video segment of the target video data; The second display module is configured to, if the first video sub-segment of the first video segment has finished playing, play the second video sub-segment of the first video segment and switch to displaying the bullet screen data in the first bullet screen set in the second video sub-segment of the first video segment according to the transition bullet screen style attribute; the transition bullet screen style attribute is used to indicate that the bullet screen data is displayed in a static display mode, and the step of switching to displaying the bullet screen data in the first bullet screen set in the second video sub-segment of the first video segment according to the transition bullet screen style attribute includes: displaying the bullet screen data in the first bullet screen set at a fixed position in the second video sub-segment of the first video segment; The third display module is used to play the second video segment in the target video data when the second video sub-segment of the first video segment has finished playing, and switch to displaying the barrage data in the second barrage set in the second video segment according to the second barrage style attribute; the first barrage style attribute, the transition barrage style attribute and the second barrage style attribute are different; the plot of the first video segment is different from the plot of the second video segment.
24. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the method of any one of claims 1 to 21.
25. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program adapted to be loaded and executed by a processor to cause a computer device having the processor to perform the method of any one of claims 1 to 21.