Live broadcast data synchronization method and device, electronic equipment and storage medium

By obtaining and aligning the game screen frames and timestamps of live games, the problem of mismatch between animation and game commentary and game screen in the prior art is solved, and the interactive experience of the audience is improved.

CN119815151APending Publication Date: 2025-04-11GUANGZHOU HUYA TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411939619.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

In the prior art, the animation and game commentary provided by the live broadcast platform cannot be fully matched with the game screen, resulting in a reduced interactive experience for the audience.

Method used

By obtaining several consecutive game screen frames of the live game and their in-game time, the game screen frame after the time changes occur, and the game data and game screen frames of the live game are aligned according to these timestamps.

Benefits of technology

It improves the synchronization accuracy of live interactive content and live broadcast screens, and enhances the audience's interactive experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119815151A_ABST
    Figure CN119815151A_ABST
Patent Text Reader

Abstract

The invention relates to the field of network live broadcast data processing, and particularly provides a live broadcast data synchronization method and device, electronic equipment and a storage medium, and the synchronization method comprises the steps: obtaining a plurality of continuous game picture frames of a live broadcast game and corresponding in-game time; obtaining a change picture frame after time change according to the time in the game; acquiring a change display timestamp of the change picture frame, and acquiring an initial display timestamp of the live broadcast game in combination with the time in the game; and acquiring game data and a data timestamp of the live game, and aligning the game data with the game picture frame in combination with the initial display timestamp. Compared with the prior art, the synchronous display timestamp of the live broadcast game is obtained by obtaining the data timestamp of the live broadcast game, matching correspondence of the game data and the live broadcast picture can be achieved according to the synchronous display timestamp, corresponding animation special effects and game commentary are accurately provided for audiences, and the user experience is improved. And the interaction experience of the audience watching the live broadcast is greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of network live broadcast data processing, and more specifically, to a live broadcast data synchronization method, device, electronic device and storage medium. Background Art

[0002] With the continuous development of online live broadcast technology, more and more people are beginning to watch live broadcasts as a way of daily leisure and entertainment, among which game live broadcasts are especially popular among young people and even middle-aged groups. When watching online live broadcasts, viewers usually expect to be able to interact with the anchor or other viewers in real time during the live broadcast, but it is difficult for the anchor itself to interact with all the viewers in the live broadcast room, especially game live broadcasts, which require the anchor to focus on the game content. Therefore, live broadcast platforms usually provide relevant animations and game commentary based on the content of the game live broadcast to enhance the audience's interactive experience. In the prior art, relevant animations and game commentary are usually provided based on the game data of the game nearby, which will result in the relevant animations and game commentary provided not being able to fully match the game screen, thereby reducing the audience's interactive experience. Summary of the invention

[0003] The present invention aims to overcome at least one defect of the above-mentioned prior art and provide a live broadcast data synchronization method, device, electronic device and storage medium for improving the synchronization accuracy of live broadcast interactive content and live broadcast images, thereby improving the interactive viewing experience of viewers.

[0004] According to one aspect of the present application, a live broadcast data synchronization method is provided, the synchronization method comprising:

[0005] Obtain several consecutive game screen frames of the live game;

[0006] Obtaining the in-game time of the game screen frame; the in-game time is the time information of the game screen frame recorded by the corresponding game system;

[0007] Acquire a game screen frame after the time change occurs according to the in-game time as a changed screen frame;

[0008] Obtaining a change display timestamp of the change picture frame, and obtaining a start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time;

[0009] The game data of the live game and the corresponding data timestamp are obtained, and the game data of the live game is aligned with the corresponding game screen frame according to the start display timestamp and the data timestamp.

[0010] Optionally, the acquiring, according to the in-game time, a game screen frame after the time change as a changed screen frame specifically includes:

[0011] According to the preset time unit, it is determined whether the in-game time of two consecutive game screen frames has changed. If the time change occurs, the changed game screen frame is used as the changed screen frame.

[0012] Optionally, judging whether the in-game time of two consecutive game screen frames has changed according to a preset time unit specifically includes:

[0013] Selecting the continuous game screen frames within a minimum time range; the minimum time range is greater than the unit time of the preset time unit;

[0014] It is determined whether the in-game time of two consecutive game screen frames in the selected game screen frames has changed based on the preset time unit.

[0015] Optionally, the determining whether the in-game time of two consecutive frames of the game screen frames in the acquired game screen frames has changed based on the preset time unit specifically includes:

[0016] Divide the selected game screen frame into two equal parts;

[0017] Determine whether the first frame of the game screen frame of the previous copy and the last frame of the game screen frame of the next copy have undergone the time change based on the preset time unit:

[0018] If the time change does not occur, it is determined that the time change does not occur in the selected game screen frames based on the preset time unit, and continuous game screen frames in the minimum time range are reselected to determine whether the time change occurs based on the preset time unit;

[0019] If the time change occurs, determine whether the time change occurs between the last frame of the previous game screen frame and the first frame of the next game screen frame based on the preset time unit: if the time change occurs, determine whether the time change occurs based on the preset time unit for the previous and next game screen frames respectively through binary search, until all the selected game screen frames are determined; if the time change does not occur, reselect the continuous game screen frames with the minimum time range to determine whether the time change occurs based on the preset time unit.

[0020] Optionally, acquiring the start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time specifically includes:

[0021] The difference between the change display timestamp of the change screen frame and the corresponding in-game time is obtained, and the difference is used as the start display timestamp.

[0022] Optionally, obtaining the game data of the live game and the corresponding data timestamp specifically includes:

[0023] Obtaining game data of the live game, as well as the game frame number of the game data and the frame duration of each frame;

[0024] The product of the game frame number and the frame duration is used as the data timestamp.

[0025] Optionally, aligning the game data of the live game with the corresponding game screen frame according to the start display timestamp and the data timestamp;

[0026] Obtaining a sum of the start display timestamp and the data timestamp, and using the sum as a synchronous display timestamp of the live game;

[0027] The game data is aligned with the corresponding game screen frame according to the synchronous display timestamp.

[0028] According to a second aspect of the present application, a live broadcast data synchronization device is provided, the synchronization device comprising:

[0029] A game screen acquisition module is used to acquire several consecutive game screen frames of a live game;

[0030] A game time acquisition module, used to acquire the in-game time of the game screen frame; the in-game time is the time information of the game screen frame recorded by the corresponding game system;

[0031] A change frame acquisition module, used for acquiring a game screen frame after a time change occurs according to the in-game time as a change screen frame;

[0032] A start time acquisition module, used to acquire a change display timestamp of the change picture frame, and acquire a start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time;

[0033] The synchronization time acquisition module is used to acquire the game data of the live game and the corresponding data timestamp, and align the game data of the live game with the corresponding game screen frame according to the start display timestamp and the data timestamp.

[0034] According to a third aspect of the present application, an electronic device is provided, including a memory and a processor, wherein the memory stores computer-readable instructions, and the processor executes the computer-readable instructions to implement a live broadcast data synchronization method described in the first aspect above.

[0035] According to a fourth aspect of the present application, a computer storage medium is provided, on which a computer-readable program is stored. When the computer-readable program is executed, a live broadcast data synchronization method described in the first aspect is implemented.

[0036] According to any one of the aspects provided above, a live broadcast data synchronization method provided by the present application obtains several consecutive game screen frames of the live broadcast game and the corresponding in-game time, and then can obtain the changing screen frame with time change according to the in-game time. The changing screen frame represents the game screen frame that has just undergone a time change. The starting display timestamp at the start of the live broadcast game can be calculated by the in-game time of the changing screen frame and the display timestamp of the changing screen frame. Then, the synchronous display timestamp of the live broadcast game can be obtained by obtaining the data timestamp of the live broadcast game. Then, according to the synchronous display timestamp, the game data in the live broadcast game can be matched with the live broadcast screen, accurately providing the audience with corresponding animation effects and game commentary, greatly improving the interactive experience of the audience watching the live broadcast. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0038] Figure 1 A schematic diagram of an application scenario of the synchronization method provided in this embodiment.

[0039] Figure 2 A flowchart of the steps of the synchronization method provided in this embodiment.

[0040] Figure 3 This is a structural diagram of the synchronization device provided in this embodiment.

[0041] Figure 4 This is a device structure diagram of the electronic device provided in this embodiment.

[0042] The accompanying drawings are marked with: server 100, terminal 200, game screen acquisition module 11, game time acquisition module 12, change frame acquisition module 13, start time acquisition module 14, synchronization time acquisition module 15, memory 21, processor 22, bus 23, communication interface 24. DETAILED DESCRIPTION

[0043] The drawings of this application are only used for illustrative purposes and should not be construed as limiting the present application. In order to better illustrate the following embodiments, some parts of the drawings may be omitted, enlarged or reduced, and do not represent the size of the actual product; it is understandable to those skilled in the art that some well-known structures and their descriptions in the drawings may be omitted.

[0044] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.

[0045] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0046] With the continuous development of online live broadcast technology, more and more people are starting to watch live broadcasts as a form of daily leisure and entertainment. Game live broadcasts are particularly popular among young people and even middle-aged groups. This trend not only reflects the changes in digital entertainment methods, but also reflects the changes in people's social methods. When watching online live broadcasts, viewers usually expect to be able to interact with the anchor or other viewers in real time during the live broadcast. This interactivity is an important feature that distinguishes live broadcasts from traditional video content. However, facing a large audience group, especially game live broadcasts that require the anchor to be highly focused on game operations, it is difficult for the anchor itself to effectively interact with all the viewers in the live broadcast room.

[0047] In order to make up for this lack of interaction, live broadcast platforms usually provide relevant animations and game commentary based on the content of the game live broadcast, so as to enhance the audience's interactive experience and viewing pleasure. Among them, the animation can include special effects animations such as real-time game settlement animation effects, and the game commentary can include game commentary such as analysis of the host's operation, so these animations and game commentary need to be highly real-time, that is, they can be well matched with the game live broadcast screen. The appearance of these animations and game commentary too early or too late will affect the audience's perception. In the prior art, these related animations and game commentary are usually provided based on the game data of the game, but the technical challenge is that there will be a certain delay in the game screen content collected by the live broadcast, and there will also be a certain delay in the acquisition of game data. These delays may be caused by various factors such as network transmission and data processing speed.

[0048] The existence of these delays means that the animations and game commentary provided based on the game data are often not completely synchronized with the game screen, and sometimes there is even an obvious misalignment. This not only affects the audience's sense of immersion, but also reduces the audience's interactive experience to a certain extent.

[0049] This embodiment provides a technical solution that can solve the above-mentioned prior art problems. The specific implementation of this embodiment is described in detail below in conjunction with the accompanying drawings.

[0050] For example, a schematic diagram of an application scenario of a live broadcast data synchronization method provided in an embodiment of the present application is provided. Figure 1 As shown, the application scenario includes at least a server 100 and a terminal 200 that can communicate with the server 100. The server 100 has an image processing function and can also have a data transmission function for video streams and audio streams; the terminal 200 has a streaming media playback function and can also have an image processing function.

[0051] It is understandable that the server 100 can be an independent electronic device or a cluster of multiple electronic devices; the terminal 200 can be a smart phone terminal, a personal computer, a tablet computer, a car terminal, etc., but is not limited thereto.

[0052] In an operative manner, the server 100 and the terminal 200 may respectively execute a live data synchronization method provided in an embodiment of the present application, or, optionally, the live data enhancement method provided in an embodiment of the present application is partially executed in the server 100 and partially executed in the terminal 200.

[0053] like Figure 2 As shown, this embodiment provides a live broadcast data synchronization method, and the synchronization method may specifically include:

[0054] S1: Acquire several consecutive game screen frames of the live game;

[0055] In this embodiment, the game screen frames are acquired by live broadcast software or video acquisition software, wherein the live broadcast software and video acquisition software may adopt existing video recording and live broadcast software, such as OBS (Open Broadcaster Software) Studio, and video recording and live broadcast software built by various live broadcast platforms for their platform anchors;

[0056] It is understandable that the several consecutive game screen frames are several frames of images with consecutive frame numbers in the audio and video formed after acquisition and encoding. By acquiring several consecutive game screen frames, it is possible to acquire how the game time changes with the game screen frames; preferably, the several consecutive game screen frames are acquired within a preset time unit at the start of the live game. It is understandable that the earlier the several consecutive game screen frames are acquired, the earlier the time relationship of the game screen frames of the live game can be determined, and thus the earlier the data synchronization of the live game can be achieved.

[0057] S2: Obtaining the in-game time of the game screen frame;

[0058] Wherein, the in-game time is the time information of the game screen frame recorded by the corresponding game system;

[0059] Specifically, in a specific implementation of this embodiment, the acquisition of the in-game time can be performed by identifying the time information in the game screen frame; in some of the live games, time information is set on the screen of the game itself, and this time information is recorded and generated by the game system according to the start or running time of the game;

[0060] In another specific implementation of this embodiment, for the live game that does not have time information set on the game screen itself, the in-game time can be obtained by querying the time information recorded by the game system, or setting a timer to identify the start of the game, and using the timer to count the time information of the live game running.

[0061] S3: acquiring a game screen frame after the time change occurs according to the in-game time as a changed screen frame;

[0062] Specifically, in this embodiment, obtaining the game screen frame after the time change occurs as the changed screen frame according to the in-game time may specifically include:

[0063] According to the preset time unit, it is determined whether the in-game time of two consecutive game screen frames has changed. If the time change occurs, the changed game screen frame is used as the changed screen frame.

[0064] It can be understood that the preset time unit is a pre-set time unit, such as hours, minutes, seconds or milliseconds, etc. Correspondingly, the unit time of the preset time unit is 1 hour, 1 minute, 1 second or 1 millisecond, which matches the preset time unit.

[0065] In this embodiment, specifically, if the preset time unit is set to seconds, then judging whether the in-game time of two consecutive frames of the game screen frames has changed in time according to the preset time unit can be understood as whether the in-game time of two frames of the game screen frames has changed from N seconds to N+1 seconds. In fact, since the duration of each frame of the game screen frame is small, which may be only tens of milliseconds, in this embodiment, the preset time unit is used to judge whether the time change has occurred, avoiding the conflict caused by different time statistics. Exemplarily, the preset time unit is seconds, and it is judged whether the time change has occurred in 3.1 seconds, 3.6 seconds and 4.1 seconds. Since the seconds of 3.1 seconds and 3.6 seconds are both 3, the preset time unit is used as a reference to judge that 3.1 seconds and 3.6 seconds "have not" changed in time; since the seconds of 3.6 seconds and 4.1 seconds are 3 and 4 respectively, the preset time unit is used as a reference to judge whether the time change has occurred in 3.6 seconds and 4.1 seconds.

[0066] Therefore, in this embodiment, judging whether the in-game time of two consecutive game screen frames has changed according to the preset time unit may specifically include:

[0067] Select the continuous game screen frames within a minimum time range; the minimum time range is greater than the unit time of the preset time unit; determine whether the in-game time of two consecutive game screen frames in the selected game screen frames has changed based on the preset time unit.

[0068] It is understandable that the minimum time range is set according to the preset time unit. For example, if the preset time unit is set to seconds, the unit time of the preset time unit is 1 second, and the corresponding minimum time range can be set to 1.1 seconds.

[0069] Because the time change is judged based on the preset time unit, setting the minimum time range larger than the unit time of the preset time unit can ensure as much as possible that the time change occurs in the in-game time in the continuous game screen frames selected according to the minimum time unit.

[0070] Taking the preset time unit as seconds and the minimum time range as 1.1 seconds as an example, in this embodiment, the step of determining whether the in-game time of two consecutive game screen frames in the selected game screen frame has changed based on the preset time unit may specifically include:

[0071] 1.1 seconds of continuous game screen frames are selected from the plurality of continuous game screen frames for identification, and whether a time change occurs in the selected game screen frames of 1.1 seconds based on the preset time unit is determined. Specifically, the selected game screen frames are equally divided into two parts, and firstly, it is determined whether a first frame of the game screen frame of the previous part and a last frame of the game screen frame of the latter part have a time change based on the preset time unit, such as a change from 5 seconds to 6 seconds; if the time change does not occur, it can be determined that the time change does not occur in the selected game screen frames based on the preset time unit, and then 1.1 seconds of continuous game screen frames are reselected to determine whether the time change occurs based on the preset time unit;

[0072] If the time change occurs, such as a change from 5 seconds to 6 seconds, further determine whether the last frame of the previous game screen frame and the first frame of the next game screen frame have undergone the time change based on the preset time unit; if no time change occurs, further determine whether the time change occurs based on the preset time unit for the previous and next game screen frames respectively through binary search, until all the selected game screen frames are determined; if no time change occurs, reselect 1.1 seconds of continuous game screen frames to determine whether the time change occurs based on the preset time unit; if it is determined that a time change occurs in the selected game screen frames, then in the process of determining whether a time change occurs through binary search, select the changed game screen frame as the changed screen frame, that is, the latter of the two game screen frames that have undergone time change.

[0073] S4: Obtaining a change display timestamp of the change picture frame, and obtaining a start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time;

[0074] It is understandable that the display timestamp is an important parameter for audio and video synchronization in multimedia technology, which is usually implemented by embedding or displaying the current date and time in multimedia such as audio and images. In this embodiment, the display timestamp is equivalent to the time reference, and the change display timestamp represents the reference time point of the change picture frame, which is equivalent to the real time.

[0075] In this embodiment, the acquired changing screen frame contains two time information, namely, the changing display timestamp and the in-game time, so the starting event point of the live game, namely, the starting display timestamp, can be acquired through the changing display timestamp of the changing screen frame and the in-game time. It is understandable that the starting display timestamp of the live game represents the display timestamp when the live game is started or running, corresponding to the first frame when the live game is started or running. The acquisition of the starting display timestamp may specifically include:

[0076] The difference between the change display timestamp of the change screen frame and the corresponding in-game time is obtained, and the difference is used as the start display timestamp. After the start display timestamp is obtained, the corresponding display timestamp can be accurately calculated when the time or frame number of the live game is obtained later.

[0077] S5: Acquire the game data of the live game and the corresponding data timestamp, and align the game data of the live game with the corresponding game screen frame according to the start display timestamp and the data timestamp.

[0078] It can be understood that the data timestamp of the live game indicates the timestamp when the game data of the live game is sent to the anchor terminal where the live game is located; specifically, the interaction of the live game can be divided into two parts: the game terminal and the game server, wherein the game terminal is the anchor terminal, and the game server is the game system server of the live game. When the anchor plays the live game, he operates on the game terminal and uploads the operation data of the live game to the game server, and the game server generates frame-synchronized game data according to the operation data of the live game, and sends the game data to the game terminal.

[0079] In this embodiment, specifically, the game data of the live game can be obtained from the game system server through the live broadcast server, and the game frame number and the frame duration of each frame of the live game can be extracted from the game data according to the frame synchronization situation, and then the product of the game frame number and the frame duration is used as the data timestamp.

[0080] It can be understood that the data timestamp represents the running time point of the live game at the data level. At the same time, the starting display timestamp of the live game is obtained in step S4. Therefore, taking the starting display timestamp of the live game as the starting point and combining it with the data timestamp of the live game, the specific real time point of each frame of game data of the live game can be obtained, and then the game data of the live game can be aligned with the corresponding game screen frame according to this real time point.

[0081] Therefore, in this embodiment, aligning the game data of the live game with the corresponding game screen frame according to the start display timestamp and the data timestamp may specifically include:

[0082] Obtaining a sum of the start display timestamp and the data timestamp, and using the sum as a synchronous display timestamp of the live game;

[0083] The game data is aligned with the corresponding game screen frame according to the synchronous display timestamp.

[0084] In this embodiment, it is understandable that the synchronous display timestamp represents the time point after the game data of the live game is aligned with the game screen to be displayed, so the relevant special effects animation and game commentary are accurately played according to the synchronous display timestamp and the game data, so that the game screen can be highly matched with the special effects animation and game commentary, thereby effectively improving the audience's interactive experience.

[0085] In a specific implementation of this embodiment, after acquiring the game data of the live game, the live server obtains the game timestamp of the game data corresponding to the live game by calculation, and sends the game timestamp to the live server; at the same time, the live server receives the live game screen sent by the anchor, calculates and obtains the start display timestamp of the live game, and sends the live game screen, the game timestamp and the start display timestamp to the client of the audience watching the live broadcast. The client receives the live game screen, the start display timestamp and the game timestamp sent by the live server, calculates the synchronous display timestamp, and realizes the synchronous alignment of the game screen and the game data on the audience client.

[0086] Based on the same inventive concept, this embodiment also provides a live data synchronization device, such as Figure 3 As shown, the synchronization device may specifically include:

[0087] A game screen acquisition module 11 is used to acquire a number of consecutive game screen frames of a live game;

[0088] In this embodiment, the game screen acquisition module 11 can be used to execute Figure 2 As shown in step S1, for the specific description of the game screen acquisition module 11, reference can be made to the description of step S1.

[0089] A game time acquisition module 12 is used to acquire the in-game time of the game screen frame; the in-game time is the time information of the game screen frame recorded by the corresponding game system;

[0090] In this embodiment, the game time acquisition module 12 can be used to execute Figure 2 As shown in step S2, for the specific description of the game time acquisition module 12, reference may be made to the description of step S2.

[0091] A change frame acquisition module 13 is used to acquire a game screen frame after the time change occurs according to the in-game time as a change screen frame;

[0092] In this embodiment, the change frame acquisition module 13 can be used to perform Figure 2 As shown in step S3, for the specific description of the change frame acquisition module 13, reference may be made to the description of step S3.

[0093] A start time acquisition module 14 is configured to acquire a change display timestamp of the change picture frame, and acquire a start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time;

[0094] In this embodiment, the start time acquisition module 14 can be used to perform Figure 2 As shown in step S4, for the detailed description of the start time acquisition module 14, reference may be made to the description of step S4.

[0095] The synchronization time acquisition module 15 acquires the data timestamp of the live game, and acquires the synchronization display timestamp of the live game on the viewer client according to the start display timestamp and the data timestamp.

[0096] In this embodiment, the synchronization time acquisition module 15 can be used to perform Figure 2 As shown in step S5, for the specific description of the synchronization time acquisition module 15, reference may be made to the description of step S5.

[0097] This embodiment also provides an electronic device, Figure 4 The structural diagram of the electronic device of this embodiment is shown, which includes a memory 21 and a processor 22. The memory 21 stores computer-readable instructions, and the processor 22 executes the computer-readable instructions to implement the live broadcast data synchronization method of this embodiment.

[0098] Preferably, the electronic device further includes a bus 23 and a communication interface 24 , and the processor 22 , the communication interface 24 and the memory 21 are connected via the bus 23 .

[0099] The memory 21 may include a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk memory. The communication connection between the system network element and at least one other network element is realized through at least one communication interface 24 (which may be wired or wireless), and the Internet, wide area network, local area network, metropolitan area network, etc. may be used. The bus 23 may be an ISA bus, a PCI bus, or an EISA bus, etc. The bus 23 may be divided into an address bus, a data bus, a control bus, etc. (not fully drawn in the figure).

[0100] The processor 22 may be an integrated circuit chip with signal processing capability. In the specific implementation process, each step in the above method embodiment may be completed by the hardware integrated logic circuit or software instructions in the processor 22. The above processor 22 may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, which may implement or execute the methods, steps, and logic diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or the processor 22 may also be any conventional processor 22, etc. The steps of the method disclosed in conjunction with the embodiments of the present invention may be directly embodied as being executed by a hardware decoding processor, or may be executed by a combination of hardware and software modules in a decoding processor. The software module may be located in a storage medium mature in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 21, and the processor 22 reads the information in the memory 21 and completes the steps of the method of the above embodiment in combination with its hardware.

[0101] An embodiment of the present invention further provides a computer-readable storage medium, which stores computer-executable instructions. When the computer-executable instructions are called and executed by the processor 22, the computer-executable instructions prompt the processor 22 to implement the above-mentioned live broadcast data synchronization method. The specific implementation can be found in the embodiment, which will not be repeated here.

[0102] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc., which can store program codes.

[0103] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the technical solution of the present invention, and are not intended to limit the specific implementation methods of the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the claims of the present invention shall be included in the protection scope of the claims of the present invention.

Claims

1. A live broadcast data synchronization method, characterized in that: The synchronization method comprises: Obtain several consecutive game screen frames of the live game; Obtaining the in-game time of the game screen frame; the in-game time is the time information of the game screen frame recorded by the corresponding game system; Acquire a game screen frame after the time change occurs according to the in-game time as a changed screen frame; Obtaining a change display timestamp of the change picture frame, and obtaining a start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time; The game data of the live game and the corresponding data timestamp are obtained, and the game data of the live game is aligned with the corresponding game screen frame according to the start display timestamp and the data timestamp.

2. A live broadcast data synchronization method according to claim 1, characterized in that: The acquiring, according to the in-game time, a game screen frame after the time change occurs as a changed screen frame specifically includes: According to the preset time unit, it is determined whether the in-game time of two consecutive game screen frames has changed. If the time change occurs, the changed game screen frame is used as the changed screen frame.

3. A live broadcast data synchronization method according to claim 2, characterized in that: The determining, according to the preset time unit, whether the in-game time of two consecutive game screen frames has changed specifically includes: Selecting the continuous game screen frames within a minimum time range; the minimum time range is greater than the unit time of the preset time unit; It is determined whether the in-game time of two consecutive game screen frames in the selected game screen frames has changed based on the preset time unit.

4. A live broadcast data synchronization method according to claim 3, characterized in that: The determining whether the in-game time of two consecutive frames of the game screen frames in the acquired game screen frames has changed based on the preset time unit specifically includes: Divide the selected game screen frame into two equal parts; Determine whether the first frame of the game screen frame of the previous copy and the last frame of the game screen frame of the next copy have undergone the time change based on the preset time unit: If the time change does not occur, it is determined that the time change does not occur in the selected game screen frames based on the preset time unit, and continuous game screen frames in the minimum time range are reselected to determine whether the time change occurs based on the preset time unit; If the time change occurs, determine whether the time change occurs between the last frame of the previous game screen frame and the first frame of the next game screen frame based on the preset time unit: if the time change occurs, determine whether the time change occurs based on the preset time unit for the previous and next game screen frames respectively through binary search, until all the selected game screen frames are determined; if the time change does not occur, reselect the continuous game screen frames with the minimum time range to determine whether the time change occurs based on the preset time unit.

5. A live broadcast data synchronization method according to any one of claims 1 to 4, characterized in that: The obtaining the start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time specifically includes: The difference between the change display timestamp of the change screen frame and the corresponding in-game time is obtained, and the difference is used as the start display timestamp.

6. A live broadcast data synchronization method according to any one of claims 1 to 4, characterized in that: The obtaining of the game data of the live game and the corresponding data timestamp specifically includes: Obtaining game data of the live game, as well as the game frame number of the game data and the frame duration of each frame; The product of the game frame number and the frame duration is used as the data timestamp.

7. A live broadcast data synchronization method according to claim 6, characterized in that: Aligning the game data of the live game with the corresponding game screen frame according to the start display timestamp and the data timestamp; Obtaining a sum of the start display timestamp and the data timestamp, and using the sum as a synchronous display timestamp of the live game; The game data is aligned with the corresponding game screen frame according to the synchronous display timestamp.

8. A live broadcast data synchronization device, characterized in that: The synchronization device comprises: A game screen acquisition module is used to acquire several consecutive game screen frames of a live game; A game time acquisition module, used to acquire the in-game time of the game screen frame; the in-game time is the time information of the game screen frame recorded by the corresponding game system; A change frame acquisition module, used for acquiring a game screen frame after a time change occurs according to the in-game time as a change screen frame; A start time acquisition module, used to acquire a change display timestamp of the change picture frame, and acquire a start display timestamp of the live game according to the change display timestamp of the change picture frame and the in-game time; The synchronization time acquisition module is used to acquire the game data of the live game and the corresponding data timestamp, and align the game data of the live game with the corresponding game screen frame according to the start display timestamp and the data timestamp.

9. An electronic device, comprising a memory and a processor, characterized in that: The memory stores computer-readable instructions, and the processor executes the computer-readable instructions to implement a live broadcast data synchronization method as described in any one of claims 1-7.

10. A computer storage medium, characterized in that: A computer-readable program is stored thereon, and when the computer-readable program is executed, a live broadcast data synchronization method as described in any one of claims 1-7 is implemented.