Interactive video playing method, device, system, computer device and storage medium

CN116801011BActive Publication Date: 2026-10-16SHANGHAI BILIBILI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310922490.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-11-14
Publication Date
2026-10-16
Estimated Expiration
2039-11-14

AI Technical Summary

Technical Problem

[0006]本发明的目的是提供一种互动视频播放方法、装置、系统、计算机设备和存储介质,用于解决现有技术中互动视频播放准确性差的技术问题

Benefits of technology

[0055]The interactive video playback method, apparatus, system, computer equipment, and storage medium provided by this invention involve a terminal sending an interactive video playback command to a server based on a user's interactive video playback operation. The server receives the interactive video playback command, determines a video playback strategy based on the command, and then determines the playback content based on the video playback strategy and a first command time in the interactive video playback command. The server then sends the playback content to the terminal. The first command time is the server's system time when the terminal receives the interactive video playback operation. Therefore, on the server side, this first command time reflects the time when the terminal receives the interactive video playback operation, i.e., the time when the user operates the terminal. This avoids the influence of the interactive video playback command transmission on the validity judgment of the interactive video playback operation time. Furthermore, since the first command time is the server's system time, it reduces the impact of time differences on different terminals on the validity judgment of the interactive video playback operation time. Therefore, the server's determination of playback content based on this first command time improves the accuracy of interactive video playback.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116801011B_ABST
    Figure CN116801011B_ABST
Patent Text Reader

Abstract

The application provides an interactive video playing method, device, system, computer equipment and storage medium. The interactive video is a video playing different video contents according to the operation of a user at a branch node, the interactive video playing method comprises: receiving an interactive video playing operation, the interactive video playing operation comprises a plot selection operation or a character action selection operation; sending an interactive video playing instruction to a server, so that the server acquires a video playing strategy corresponding to the interactive video playing instruction, and determines playing content according to a first instruction time and the video playing strategy; receiving the playing content sent by the server and playing. Through the application, the accuracy of interactive video playing can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of video playback technology, and in particular to an interactive video playback method, apparatus, system, computer device, and storage medium. Background Technology

[0002] In existing technologies, on the one hand, the improved performance of video playback terminals and the clarity of the videos themselves have resulted in increasingly higher video playback quality. On the other hand, during video playback, viewers are no longer just passive viewers of the video content; they can also become participants in the video playback process through methods such as bullet comments, thereby increasing the interactivity of viewers during the video viewing process.

[0003] To further enhance viewers' engagement when watching videos, a new interactive video playback method has been proposed. Specifically, branch nodes are set in the interactive video. When the video plays to a preset position, branch nodes are provided for users to choose from. Different branch nodes selected by the user correspond to different video content to be played later.

[0004] However, during the interactive video playback process, the video content needs to be further determined based on user selections. Therefore, the timeliness of user instructions becomes a very important factor affecting the accurate playback of the video.

[0005] In summary, providing an interactive video playback method, apparatus, system, computer device, and storage medium to improve the accuracy of interactive video playback has become a pressing technical problem to be solved in this field. Summary of the Invention

[0006] The purpose of this invention is to provide an interactive video playback method, apparatus, system, computer device, and storage medium to solve the technical problem of poor accuracy in interactive video playback in the prior art.

[0007] On the one hand, in order to achieve the above objectives, the present invention provides an interactive video playback method.

[0008] This interactive video playback method is applied to a terminal, wherein the interactive video is a video that plays different video content based on the user's operations at a branch node, and the method includes:

[0009] Receive interactive video playback operations, including plot selection operations or character action selection operations;

[0010] Send an interactive video playback instruction to the server, wherein the interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation, so that the server can obtain the video playback strategy corresponding to the interactive video playback instruction and determine the playback content according to the first instruction time and the video playback strategy.

[0011] The system receives and plays the playback content sent by the server.

[0012] Furthermore, the video playback strategy is specifically as follows:

[0013] If the first instruction time is before the preset time, the playback content is determined to be A; if the first instruction time is after the preset time, the playback content is determined to be B. Then, based on the first instruction time and the video playback strategy, the playback content can be determined to be either A or B.

[0014] Furthermore, the step of receiving and playing the playback content sent by the server includes:

[0015] The system can receive and play video data streams sent by the server, or receive video data source addresses sent by the server and obtain and play video data based on the source addresses.

[0016] Furthermore, before sending the interactive video playback command to the server, the interactive video playback method further includes:

[0017] Send a time request command to the server;

[0018] Receive the calibration time sent by the server, wherein the calibration time is the system time of the server when the server receives the time request instruction;

[0019] Obtain the second instruction time, wherein the second instruction time is the system time of the terminal when the terminal receives the interactive video playback operation;

[0020] The second instruction time is calibrated to the first instruction time based on the calibration time.

[0021] Furthermore, the server is also configured to send an instruction reception feedback to the terminal after receiving the interactive video playback instruction, and the interactive video playback method further includes:

[0022] If no feedback is received within a preset time range after sending the interactive video playback command, return to the step of sending the interactive video playback command to the server.

[0023] On the other hand, to achieve the above objectives, the present invention provides another interactive video playback method.

[0024] This interactive video playback method is applied to the server. The interactive video is a video that plays different video content according to the user's operation at a branch node. The method includes: receiving an interactive video playback instruction sent by the terminal based on the user's interactive video playback operation, wherein the interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation, and the interactive video playback operation includes a plot selection operation or a character action selection operation.

[0025] Obtain the video playback strategy corresponding to the interactive video playback instruction, wherein the video playback strategy includes the correspondence between the playback content and the time of the first instruction;

[0026] The playback content is determined based on the received first instruction time and the video playback strategy;

[0027] The confirmed playback content is sent to the terminal.

[0028] Furthermore, the video playback strategy is specifically as follows:

[0029] If the first instruction time is before the preset time, the playback content is determined to be A; if the first instruction time is after the preset time, the playback content is determined to be B. Then, based on the first instruction time and the video playback strategy, the playback content can be determined to be either A or B.

[0030] Further, sending the determined playback content to the terminal includes:

[0031] The system can send a video data stream to the terminal for playback, or send the source address of the video data to the terminal, and the terminal can obtain the video data based on the source address for playback.

[0032] Furthermore, before receiving the interactive video playback instruction sent by the terminal, the interactive video playback method further includes:

[0033] Receive the time request instruction sent by the terminal;

[0034] Based on the terminal's request, a calibration time is sent to the terminal so that the terminal can calibrate the second instruction time to the first instruction time according to the calibration time. The second instruction time is the system time of the terminal when it receives the interactive video playback operation, and the calibration time is the system time of the server when it receives the time request instruction.

[0035] Furthermore, after receiving the interactive video playback instruction sent by the terminal, the interactive video playback method further includes:

[0036] The terminal sends an instruction and receives feedback. If the terminal does not receive feedback on the instruction within a preset time range after sending the interactive video playback instruction, it returns to the step of sending the interactive video playback instruction to the server.

[0037] On the other hand, in order to achieve the above objectives, the present invention provides an interactive video playback device.

[0038] This interactive video playback device is applied to a terminal. The interactive video is a video that plays different video content based on the user's operations at branch nodes. The device includes:

[0039] An interactive operation receiving module is used to receive interactive video playback operations, including plot selection operations or character action selection operations.

[0040] An interactive instruction sending module is used to send an interactive video playback instruction to the server. The interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation, so that the server can obtain the video playback strategy corresponding to the interactive video playback instruction and determine the playback content according to the first instruction time and the video playback strategy.

[0041] The playback content receiving module is used to receive the playback content sent by the server and play it.

[0042] On the other hand, in order to achieve the above objectives, the present invention provides another interactive video playback device.

[0043] This interactive video playback device is applied to the server side. The interactive video is a video that plays different video content based on the user's operations at branch nodes. The device includes:

[0044] An interactive instruction receiving module is used to receive an interactive video playback instruction sent by the terminal based on the user's interactive video playback operation. The interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation. The interactive video playback operation includes a plot selection operation or a character action selection operation.

[0045] A playback strategy acquisition module is used to acquire a video playback strategy corresponding to the interactive video playback instruction, wherein the video playback strategy includes the correspondence between the playback content and the time of the first instruction;

[0046] The playback content determination module is used to determine the playback content based on the received first instruction time and the video playback strategy;

[0047] The playback content sending module is used to send the determined playback content to the terminal.

[0048] On the other hand, in order to achieve the above objectives, the present invention provides an interactive video playback system.

[0049] The interactive video playback system includes a server and a terminal. The interactive video is a video that plays different video content based on the user's operations at branch nodes, wherein:

[0050] The terminal is used to receive interactive video playback operations and send interactive video playback instructions to the server. The interactive video playback instructions include a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation. The interactive video playback operation includes a plot selection operation or a character action selection operation.

[0051] The server is used to receive the interactive video playback instruction, obtain the video playback strategy corresponding to the interactive video playback instruction, determine the playback content according to the first instruction time and the video playback strategy, and send the playback content to the terminal. The video playback strategy includes the correspondence between the playback content and the first instruction time.

[0052] The terminal is also used to receive and play the playback content sent by the server.

[0053] To achieve the above objectives, the present invention also provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the above method.

[0054] To achieve the above objectives, the present invention also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the above method.

[0055] The interactive video playback method, apparatus, system, computer equipment, and storage medium provided by this invention involve a terminal sending an interactive video playback command to a server based on a user's interactive video playback operation. The server receives the interactive video playback command, determines a video playback strategy based on the command, and then determines the playback content based on the video playback strategy and a first command time in the interactive video playback command. The server then sends the playback content to the terminal. The first command time is the server's system time when the terminal receives the interactive video playback operation. Therefore, on the server side, this first command time reflects the time when the terminal receives the interactive video playback operation, i.e., the time when the user operates the terminal. This avoids the influence of the interactive video playback command transmission on the validity judgment of the interactive video playback operation time. Furthermore, since the first command time is the server's system time, it reduces the impact of time differences on different terminals on the validity judgment of the interactive video playback operation time. Therefore, the server's determination of playback content based on this first command time improves the accuracy of interactive video playback. Attached Figure Description

[0056] Figure 1 This is a flowchart of the interactive video playback method provided in Embodiment 1 of the present invention;

[0057] Figure 2 This is a flowchart of the interactive video playback method provided in Embodiment 2 of the present invention;

[0058] Figure 3 This is a block diagram of the interactive video playback device provided in Embodiment 3 of the present invention;

[0059] Figure 4 This is a block diagram of the interactive video playback device provided in Embodiment 4 of the present invention;

[0060] Figure 5 This is a block diagram of the interactive video playback system provided in Embodiment 5 of the present invention;

[0061] Figure 6 This is a hardware structure diagram of a computer device provided in Embodiment Six of the present invention. Detailed Implementation

[0062] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without inventive effort are within the scope of protection of this invention.

[0063] To improve the accuracy of interactive video playback, the inventors researched existing interactive video playback methods. The research revealed that when determining the time validity of an interactive video playback command, the server-side backend typically bases its judgment on the server's system time at the time the command is received. While this method is sufficient for situations with low timeliness requirements, it can lead to playback errors in situations with high timeliness constraints. For example, in an interactive video scenario where two end-users participate, the playback is based on their actions, and the content differs depending on the order of these actions. If one end-user receives the user's action before the other, but due to network issues, the server receives the playback command corresponding to the later action first, the judgment based on the server's system time at the time the command is received will misjudge the order of actions, resulting in the playback of incorrect content.

[0064] In summary, in scenarios with high timeliness requirements, determining the time of the interactive video playback operation based on the server's system time when the server receives the interactive video playback command may result in playback errors.

[0065] To address the aforementioned problems, this invention provides an interactive video playback method, apparatus, system, computer device, and storage medium. In the interactive video playback method provided by this invention, after receiving an interactive video playback operation, the terminal encapsulates an interactive video playback instruction and sends it to the server. The interactive video playback instruction includes an instruction identifier and a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation. Upon receiving the interactive video playback instruction, the server obtains a video playback strategy corresponding to the instruction identifier. This video playback strategy includes playback content and the first instruction time, with the playback content related to the first instruction time. Therefore, based on the first instruction time and the obtained video playback strategy, the playback can be... The playback content is determined and sent to the terminal. The terminal receives the playback content sent by the server and plays it. It can be seen that the playback content is determined based on a first instruction time, which is the server's system time when the terminal receives the interactive video playback operation. That is, the first instruction time is the time when the terminal receives the interactive video playback operation, accurately reflecting the time when the interactive video playback operation occurs. This avoids the influence of the interactive video playback instruction transmission on the validity of the interactive video playback operation time. Furthermore, this time uses the server's system time, which, for different terminals, uniformly adopts the server's system time, reducing the impact of time differences on different terminals on the validity of the interactive video playback operation time. Therefore, this invention provides an interactive video playback method, apparatus, system, computer device, and storage medium that can improve the accuracy of interactive video playback.

[0066] The specific implementation methods of the interactive video playback method, apparatus, system, computer equipment, and storage medium provided by the present invention will be described in detail below.

[0067] Example 1

[0068] Embodiment 1 of the present invention provides an interactive video playback method. This method is applied to a server and achieves interactive video playback through interaction with a terminal. Furthermore, this method can improve the accuracy of interactive video playback. Specifically, Figure 1 The flowchart of the interactive video playback method provided in Embodiment 1 of the present invention is as follows: Figure 1 As shown, the interactive video playback method provided in this embodiment includes the following steps S101 to S104.

[0069] Step S101: Receive the interactive video playback command sent by the terminal.

[0070] The interactive video playback instruction includes an instruction identifier and a first instruction time. The terminal sends the interactive video playback instruction when it receives the interactive video playback operation. The first instruction time is the server's system time when the terminal receives the interactive video playback operation.

[0071] In the interactive video playback method provided in this embodiment, the terminal can receive the user's interactive video playback operation, and upon triggering the interactive video playback operation, encapsulate the interactive video playback instruction and send it to the server. The server receives the interactive video playback instruction and parses it, and can parse the instruction identifier and the first instruction time. For example, in one scenario, the terminal receives the user's plot selection operation, which is a type of interactive video playback operation; in another scenario, the terminal receives the user's character action selection operation, which is also a type of interactive video playback operation.

[0072] Step S102: Obtain the video playback strategy corresponding to the instruction identifier.

[0073] The server sets up a mapping between video playback strategies and command identifiers. After receiving an interactive video playback command, it parses the interactive video playback command to obtain the command identifier. Furthermore, it can determine the video playback strategy based on the mapping between the video playback strategy and the command identifier, as well as the parsed command identifier. The video playback strategy includes the playback content and the first command time. The playback content is related to the first command time. That is, the playback content determined by the video playback strategy can be different based on the different first command times.

[0074] Step S103: Determine the playback content based on the first instruction time and the video playback strategy corresponding to the instruction identifier.

[0075] In this step, the server determines the playback content based on the first instruction time and the video playback strategy. For example, the video playback strategy is as follows: if the first instruction time is before a preset time, the playback content is determined to be A; if the first instruction time is after the preset time, the playback content is determined to be B. Therefore, the playback content can be determined to be either A or B based on the first instruction time and the video playback strategy.

[0076] Step S104: Send the confirmed playback content to the terminal.

[0077] After determining the content to be played, the server sends it to the terminal. The content to be played can be a video data stream or the source address of the video data. The terminal can obtain the video data and play it based on the source address.

[0078] In the interactive video playback method provided in this embodiment, the terminal sends an interactive video playback instruction to the server based on the user's interactive video playback operation. The server receives the interactive video playback instruction, determines the video playback strategy according to the instruction identifier in the interactive video playback instruction, and then determines the playback content according to the video playback strategy and the first instruction time in the interactive video playback instruction. The server then sends the playback content to the terminal. The first instruction time is the server's system time when the terminal receives the interactive video playback operation. Therefore, on the server side, the first instruction time reflects the time when the terminal receives the interactive video playback operation, that is, the time when the user operates the terminal. This avoids the influence of the transmission of the interactive video playback instruction on the validity judgment of the interactive video playback operation time. At the same time, the first instruction time is the server's system time, which can reduce the impact of time differences on different terminals on the validity judgment of the interactive video playback operation time. Therefore, the server's determination of playback content based on the first instruction time can improve the accuracy of interactive video playback. In existing technologies, when making decisions based on time validity, conventional techniques include using the terminal's system time when the terminal receives the user's operation, or using the server's system time when the server receives the terminal's instruction. However, in the interactive video playback application scenario of this invention, using the terminal's system time when the terminal receives the user's operation can lead to errors in the determined playback content due to significant differences in system time across different terminals. Similarly, using the server's system time when the server receives the terminal's instruction can also result in errors due to latency in sending instructions from the terminal to the server, as well as differences in latency between different terminals. In this embodiment, the first instruction time is the server's system time when the terminal receives the interactive video playback operation, thus simultaneously solving the problems associated with both conventional techniques.

[0079] Optionally, in one embodiment, the interactive video playback method further includes: receiving a time request instruction sent by a terminal; sending a calibration time to the terminal, wherein the terminal is used to calibrate a second instruction time to a first instruction time according to the calibration time, and the second instruction time is the system time of the terminal when the terminal receives the interactive video playback operation.

[0080] Specifically, before sending the interactive video playback command to the server, the terminal first sends a time request command to the server to request time calibration. Upon receiving the time request command, the server sends the calibration time to the terminal. This calibration time is used to calibrate the terminal's system time to the server's system time. In this embodiment, the terminal's system time when it receives the interactive video playback operation is the second command time, and the terminal calibrates this second command time to the first command time based on the calibration time.

[0081] In the interactive video playback method provided in this embodiment, the terminal obtains a calibration time from the server to calibrate the terminal's system time when it receives the interactive video playback operation to the server's system time when the terminal receives the interactive video playback operation. Therefore, by using the interactive video playback method provided in this embodiment, the terminal's system time when it receives the interactive video playback operation can be obtained conveniently and accurately. Then, the server's system time when the terminal receives the interactive video playback operation can be obtained through calibration. The method of determining the first instruction time is simple and accurate.

[0082] Optionally, in one embodiment, the calibration time is the server's system time when the time request instruction is received, and the terminal is used to calibrate the second instruction time to the first instruction time using the following formula: T1 = T2 + T0 - T a / 2-T b / 2, where: T1 is the first instruction time, T2 is the second instruction time, T0 is the calibration time, T a T is the system time of the terminal when it sends the time request command. b This is the system time of the terminal when it receives the calibration time.

[0083] Specifically, when performing time calibration, the terminal sends a time request command to the server and simultaneously records the terminal's system time as T when the time request command is sent. a When the server receives a time request command, it records the current time, i.e., the server's system time at the time of receiving the time request command, as the calibration time T0. This calibration time T0 is then sent to the terminal. When the terminal receives the calibration time T0, it records its current time, i.e., the terminal's system time at the time of receiving the calibration time, as T. b , (T b -T a ) / 2 represents the one-way time difference between the terminal and the server in transmitting instructions, where T is the terminal's system time when the terminal sends the time request instruction. a The difference between the terminal's system time T2 and the terminal's system time T2 when the terminal sends an interactive video playback command is T2-T a The difference between the server's system time T1 when the terminal sends the time request command and the server's system time when the terminal sends the interactive video playback command is T1 - T0 + (T b -T a The difference between the two time intervals is T2 / 2, regardless of how real-time the system time of the terminal and the server is. a =T1-T0+(T b -T a ) / 2, thus we can obtain T1=T2+T0-T a / 2-T b / 2.

[0084] Alternatively, in one embodiment, T b With T a The difference is less than or equal to the preset interval threshold.

[0085] Specifically, when performing time calibration, the terminal first calculates T. b With T a If the difference between T and T is less than or equal to a preset interval threshold, then T b With T a If the difference is greater than the preset interval threshold, it indicates that the instruction transmission time between the terminal and the server is too long, exceeding the normal transmission time. Therefore, only when T b With T a Only when the difference is less than or equal to a preset interval threshold will the terminal calibrate the second instruction time to the first instruction time, thereby improving the accuracy of the first instruction time.

[0086] Optionally, in one embodiment, the terminal is further configured to... b With T a When the difference is greater than the preset interval threshold, a time request command is sent to the server.

[0087] Specifically, when T b With T a When the difference is greater than the preset interval threshold, it indicates that the instruction transmission between the corresponding terminal and the server exceeds the normal transmission time. Therefore, the terminal resends the time request instruction to the server to obtain the calibration time again, thereby improving the accuracy of the first instruction time.

[0088] Optionally, in one embodiment, after receiving the interactive video playback instruction sent by the terminal, the interactive video playback method further includes: sending instruction and receiving feedback to the terminal, wherein the terminal is further configured to repeatedly send the interactive video playback instruction to the server if no instruction feedback is received within a preset time range after sending the interactive video playback instruction.

[0089] Specifically, after receiving the interactive video playback command from the terminal, the server returns a reception feedback to the terminal. If the terminal does not receive this reception feedback within a preset valid time range, it repeatedly sends the interactive video playback command to the server. Sending stops only when the valid time range is exceeded or when reception feedback has been received, thus improving the reliability of interactive video playback. The terminal can send the interactive video playback command to the server via the UDP protocol, sending it every 10 milliseconds. If it receives a reception feedback ACK from the server within 100ms, or if more than 100ms has passed, it stops sending.

[0090] Example 2

[0091] Embodiment 2 of the present invention provides an interactive video playback method. This method is applied to a terminal and achieves interactive video playback through interaction with a server. Furthermore, this method can improve the accuracy of interactive video playback. Specifically, Figure 2 This is a flowchart of the interactive video playback method provided in Embodiment 2 of the present invention, as follows: Figure 2 As shown, the interactive video playback method provided in this embodiment includes the following steps S201 to S203.

[0092] Step S201: Receive interactive video playback operation.

[0093] In the interactive video playback method provided in this embodiment, the terminal can receive interactive video playback operations from the user. For example, in one scenario, the terminal receives the user's plot selection operation, which is an interactive video playback operation; in another scenario, the terminal receives the user's character action selection operation, which is also an interactive video playback operation.

[0094] Step S202: Send the interactive video playback command to the server.

[0095] The interactive video playback instruction includes an instruction identifier and a first instruction time. The first instruction time is the server's system time when the terminal receives the interactive video playback operation. The server is used to obtain the video playback strategy corresponding to the instruction identifier and determine the playback content based on the first instruction time and the video playback strategy corresponding to the instruction identifier.

[0096] When triggered by an interactive video playback operation, the terminal encapsulates an interactive video playback command and sends it to the server. The server receives and parses the command, obtaining a command identifier and a first command time. The server establishes a mapping between video playback strategies and command identifiers. Upon receiving the interactive video playback command, it parses it to obtain the command identifier. Furthermore, based on the mapping between the video playback strategy and the command identifier, and the parsed command identifier, the server determines the video playback strategy. The video playback strategy includes playback content and a first command time. The playback content is related to the first command time; that is, the playback content determined by the video playback strategy can differ depending on the first command time.

[0097] The server determines the playback content based on the first instruction time and the video playback strategy. For example, the video playback strategy is as follows: if the first instruction time is before a preset time, the playback content is determined to be A; if the first instruction time is after the preset time, the playback content is determined to be B. Based on the first instruction time and the video playback strategy, the server can determine whether the playback content is A or B, and then send the determined playback content to the terminal.

[0098] Step S203: Receive and play the playback content sent by the server.

[0099] The playback content can be a video data stream, which the terminal plays directly; or the playback content can be the source address of the video data, which the terminal uses to obtain and play the video data.

[0100] In the interactive video playback method provided in this embodiment, the terminal sends an interactive video playback instruction to the server based on the user's interactive video playback operation. The server receives the interactive video playback instruction, determines the video playback strategy according to the instruction identifier in the interactive video playback instruction, and then determines the playback content according to the video playback strategy and the first instruction time in the interactive video playback instruction. The server then sends the playback content to the terminal. The first instruction time is the server's system time when the terminal receives the interactive video playback operation. Therefore, on the server side, the first instruction time reflects the time when the terminal receives the interactive video playback operation, that is, the time when the user operates the terminal. This avoids the influence of the transmission of the interactive video playback instruction on the validity judgment of the interactive video playback operation time. At the same time, the first instruction time is the server's system time, which can reduce the impact of time differences on different terminals on the validity judgment of the interactive video playback operation time. Therefore, the server's determination of playback content based on the first instruction time can improve the accuracy of interactive video playback.

[0101] Optionally, in one embodiment, before sending the interactive video playback instruction to the server, the interactive video playback method further includes: sending a time request instruction to the server; receiving a calibration time sent by the server; obtaining a second instruction time, wherein the second instruction time is the system time of the terminal when the terminal receives the interactive video playback operation; and calibrating the second instruction time to the first instruction time according to the calibration time.

[0102] Specifically, before sending the interactive video playback command to the server, the terminal first sends a time request command to the server to request time calibration. Upon receiving the time request command, the server sends the calibration time to the terminal. This calibration time is used to calibrate the terminal's system time to the server's system time. After receiving the calibration time from the server, the terminal receives the interactive video playback operation. At this time, the terminal records its system time at the time of receiving the interactive video playback operation as the second command time. After obtaining this second command time, the terminal can calibrate it to the first command time according to the calibration time.

[0103] In the interactive video playback method provided in this embodiment, the terminal obtains a calibration time from the server to calibrate the terminal's system time when it receives the interactive video playback operation to the server's system time when the terminal receives the interactive video playback operation. Therefore, by using the interactive video playback method provided in this embodiment, the terminal's system time when it receives the interactive video playback operation can be obtained conveniently and accurately. Then, the server's system time when the terminal receives the interactive video playback operation can be obtained through calibration. The method of determining the first instruction time is simple and accurate.

[0104] Optionally, in one embodiment, the calibration time is the server's system time when the server receives the time request instruction, and the second instruction time is calibrated to the first instruction time using the following formula: T1 = T2 + T0 - T a / 2-T b / 2, where: T1 is the first instruction time, T2 is the second instruction time, T0 is the calibration time, T a T is the system time of the terminal when it sends the time request command. b This is the system time of the terminal when it receives the calibration time.

[0105] Specifically, when performing time calibration, the terminal sends a time request command to the server and simultaneously records the terminal's system time as T when the time request command is sent. a When the server receives a time request command, it records the current time, i.e., the server's system time at the time of receiving the time request command, as the calibration time T0. This calibration time T0 is then sent to the terminal. When the terminal receives the calibration time T0, it records its current time, i.e., the terminal's system time at the time of receiving the calibration time, as T. b , (T b -T a ) / 2 represents the one-way time difference between the terminal and the server in transmitting instructions, where T is the terminal's system time when the terminal sends the time request instruction. a The difference between the terminal's system time T2 and the terminal's system time T2 when the terminal sends an interactive video playback command is T2-T a The difference between the server's system time T1 when the terminal sends the time request command and the server's system time when the terminal sends the interactive video playback command is T1 - T0 + (T b -T a The difference between the two time intervals is T2 / 2, regardless of how real-time the system time of the terminal and the server is. a =T1-T0+(T b -T a ) / 2, thus we can obtain T1=T2+T0-T a / 2-T b / 2.

[0106] Optionally, in one embodiment, after receiving the calibration time sent by the server and before calibrating the second instruction time to the first instruction time based on the calibration time, the interactive video playback method further includes: determining T b With T a Whether the difference is less than or equal to a preset interval threshold; where, when T b With T a When the difference is less than or equal to the preset interval threshold, the second instruction time is calibrated to the first instruction time according to the calibration time.

[0107] Specifically, before performing time calibration, the terminal first calculates T. b With T a If the difference between T and T is less than or equal to a preset interval threshold, then T b With T a If the difference is greater than the preset interval threshold, it indicates that the instruction transmission time between the terminal and the server is too long, exceeding the normal transmission time. Therefore, only when T b With T a Only when the difference is less than or equal to a preset interval threshold will the terminal calibrate the second instruction time to the first instruction time, thereby improving the accuracy of the first instruction time.

[0108] Optionally, in one embodiment, the interactive video playback method further includes: when T b With T a When the difference is greater than the preset interval threshold, a time request instruction is sent to the server.

[0109] Specifically, when T b With T a When the difference is greater than the preset interval threshold, it indicates that the instruction transmission between the corresponding terminal and the server exceeds the normal transmission time. Therefore, the terminal resends the time request instruction to the server to obtain the calibration time again, thereby improving the accuracy of the first instruction time.

[0110] Optionally, in one embodiment, the server is further configured to send instruction reception feedback to the terminal after receiving the interactive video playback instruction. The interactive video playback method further includes: if no instruction feedback is received within a preset time range after sending the interactive video playback instruction, repeatedly sending the interactive video playback instruction to the server.

[0111] Specifically, after receiving the interactive video playback command from the terminal, the server returns a reception feedback to the terminal. If the terminal does not receive this reception feedback within a preset valid time range, it repeatedly sends the interactive video playback command to the server. Sending stops only when the valid time range is exceeded or when reception feedback has been received, thus improving the reliability of interactive video playback. The terminal can send the interactive video playback command to the server via the UDP protocol, sending it every 10 milliseconds. If it receives a reception feedback ACK from the server within 100ms, or if more than 100ms has passed, it stops sending.

[0112] Example 3

[0113] Embodiment 3 of the present invention provides an interactive video playback device. This device is applied to a server and realizes interactive video playback through interaction with a terminal. Furthermore, this device can improve the accuracy of interactive video playback. It should be noted that each module in this device corresponds to the corresponding method steps in Embodiment 1, and the corresponding technical effects of specific technical features can be referred to Embodiment 1 above, which will not be repeated here. Specifically, Figure 3 This is a block diagram of the interactive video playback device provided in Embodiment 3 of the present invention, as shown below. Figure 3 As shown, the interactive video playback device provided in this embodiment includes an interactive instruction receiving module 301, a playback strategy acquisition module 302, a playback content determination module 303, and a playback content sending module 304.

[0114] The interactive instruction receiving module 301 is used to receive interactive video playback instructions sent by the terminal. The interactive video playback instruction includes an instruction identifier and a first instruction time. The terminal sends the interactive video playback instruction when it receives the interactive video playback operation. The first instruction time is the system time of the server when the terminal receives the interactive video playback operation. The playback strategy acquisition module 302 is used to acquire the video playback strategy corresponding to the instruction identifier. The video playback strategy includes playback content and the first instruction time. The playback content is related to the first instruction time. The playback content determination module 303 is used to determine the playback content according to the first instruction time and the video playback strategy corresponding to the instruction identifier. The playback content sending module 304 is used to send the determined playback content to the terminal.

[0115] Optionally, in one embodiment, the interactive video playback device further includes: a request instruction receiving module, configured to receive a time request instruction sent by the terminal; and a calibration time sending module, configured to send a calibration time to the terminal, wherein the terminal is configured to calibrate the second instruction time to the first instruction time according to the calibration time, and the second instruction time is the system time of the terminal when the terminal receives the interactive video playback operation.

[0116] Optionally, in one embodiment, the calibration time is the server's system time when the time request instruction is received, and the terminal is used to calibrate the second instruction time to the first instruction time using the following formula:

[0117] T1 = T2 + T0 - T a / 2-T b / 2,

[0118] Where: T1 is the first instruction time, T2 is the second instruction time, T0 is the calibration time, and T... a T is the system time of the terminal when it sends the time request command. b This is the system time of the terminal when it receives the calibration time.

[0119] Alternatively, in one embodiment, T b With T a The difference is less than or equal to the preset interval threshold.

[0120] Optionally, in one embodiment, the terminal is further configured to... b With T a When the difference is greater than the preset interval threshold, a time request command is sent to the server.

[0121] Optionally, in one embodiment, the interactive video playback device further includes: a feedback receiving module, configured to send instruction receiving feedback to the terminal after the interactive instruction receiving module 301 receives the interactive video playback instruction sent by the terminal, wherein the terminal is further configured to repeatedly send the interactive video playback instruction to the server if no instruction feedback is received within a preset time range after sending the interactive video playback instruction.

[0122] Example 4

[0123] Embodiment 4 of the present invention provides an interactive video playback device. This device is applied to a terminal and realizes interactive video playback through interaction with a server. Furthermore, this device can improve the accuracy of interactive video playback. It should be noted that each module in this device corresponds to the corresponding method steps in Embodiment 2, and the corresponding technical effects of the specific technical features can be referred to Embodiment 2 above, which will not be repeated here. Specifically, Figure 4 This is a block diagram of the interactive video playback device provided in Embodiment 4 of the present invention, as shown below. Figure 4 As shown, the interactive video playback device provided in this embodiment includes an interactive operation receiving module 401, an interactive instruction sending module 402, and a playback content receiving module 403.

[0124] The interactive operation receiving module 401 is used to receive interactive video playback operations; the interactive instruction sending module 402 is used to send interactive video playback instructions to the server, wherein the interactive video playback instruction includes an instruction identifier and a first instruction time, the first instruction time being the server's system time when the terminal receives the interactive video playback operation, the server is used to obtain the video playback strategy corresponding to the instruction identifier, and determine the playback content according to the first instruction time and the video playback strategy corresponding to the instruction identifier; the playback content receiving module 403 is used to receive the playback content sent by the server and play it.

[0125] Optionally, in one embodiment, the request instruction sending module is used to send a time request instruction to the server before the interactive instruction sending module 402 sends the interactive video playback instruction to the server; the calibration time receiving module is used to receive the calibration time sent by the server; and the instruction time calibration module is used to obtain the second instruction time and calibrate the second instruction time to the first instruction time according to the calibration time, wherein the second instruction time is the system time of the terminal when the terminal receives the interactive video playback operation.

[0126] Optionally, in one embodiment, the calibration time is the server's system time when the server receives the time request instruction, and the instruction time calibration module uses the following formula to calibrate the second instruction time to the first instruction time based on the calibration time:

[0127] T1 = T2 + T0 - T a / 2-T b / 2,

[0128] Where: T1 is the first instruction time, T2 is the second instruction time, T0 is the calibration time, and T... a T is the system time of the terminal when it sends the time request command. b This is the system time of the terminal when it receives the calibration time.

[0129] Optionally, in one embodiment, the interactive video playback device further includes: a judging module, configured to judge T after the calibration time receiving module receives the calibration time sent by the server and before the instruction time calibration module calibrates the second instruction time to the first instruction time based on the calibration time. b With T a Whether the difference is less than or equal to a preset interval threshold, where, when T b With T a When the difference is less than or equal to the preset interval threshold, the instruction time calibration module calibrates the second instruction time to the first instruction time according to the calibration time.

[0130] Optionally, in one embodiment, the request instruction sending module is further configured to, when T b With T aWhen the difference is greater than the preset interval threshold, a time request instruction is sent to the server.

[0131] Optionally, in one embodiment, the server is further configured to send instruction reception feedback to the terminal after receiving the interactive video playback instruction, and the interactive instruction sending module 402 is further configured to repeatedly send the interactive video playback instruction to the server if no instruction feedback is received within a preset time range after sending the interactive video playback instruction.

[0132] Example 5

[0133] Embodiment 5 of the present invention provides an interactive video playback system, which includes a terminal and a server. Interactive video playback is achieved through interaction between the terminal and the server, and this system can improve the accuracy of interactive video playback. It should be noted that the steps performed by the terminal and server in this system can be referred to Embodiments 1 and 2 above, and will not be repeated here. Specifically, Figure 5 This is a block diagram of the interactive video playback system provided in Embodiment 5 of the present invention, as shown below. Figure 5 As shown, the interactive video playback system provided in this embodiment includes a terminal 501 and a server 502.

[0134] Terminal 501 is used to receive interactive video playback operations and send interactive video playback instructions to server 502. The interactive video playback instructions include an instruction identifier and a first instruction time, which is the system time of server 502 when terminal 501 receives the interactive video playback operation. Server 502 is used to receive the interactive video playback instructions, obtain the video playback strategy corresponding to the instruction identifier, determine the playback content according to the first instruction time and the video playback strategy corresponding to the instruction identifier, and send the playback content to terminal 501. The video playback strategy includes the playback content and the first instruction time, and the playback content is related to the first instruction time. Terminal 501 is also used to receive the playback content sent by server 502 and play it.

[0135] Optionally, in one embodiment, before sending the interactive video playback instruction to the server 502, the terminal 501 is further configured to send a time request instruction to the server 502. The server 502 is further configured to send a calibration time value to the terminal 501 upon receiving the time request instruction. The terminal 501 is further configured to obtain a second instruction time after receiving the calibration time sent by the server 502, wherein the second instruction time is the system time of the terminal 501 when the terminal 501 receives the interactive video playback operation, and calibrate the second instruction time to the first instruction time according to the calibration time.

[0136] Optionally, in one embodiment, the calibration time is the system time of server 502 when server 502 receives the time request instruction, and terminal 501 is further configured to calibrate the second instruction time to the first instruction time using the following formula based on the calibration time: T1=T2+T0-T a / 2-T b / 2, where: T1 is the first instruction time, T2 is the second instruction time, T0 is the calibration time, T a The system time of terminal 501 when the time request command is sent is T. b The system time of terminal 501 when it receives the calibration time.

[0137] Optionally, in one embodiment, the terminal 501 is further configured to, after receiving the calibration time sent by the server 502, determine T based on the calibration time to calibrate the second instruction time to before the first instruction time. b With T a Whether the difference is less than or equal to a preset interval threshold, where, when T b With T a When the difference is less than or equal to the preset interval threshold, the terminal 501 calibrates the second instruction time to the first instruction time according to the calibration time.

[0138] Alternatively, in one embodiment, when T b With T a When the difference is greater than the preset interval threshold, the terminal 501 is also used to send a time request instruction to the server 502.

[0139] Optionally, in one embodiment, the server 502 is further configured to send instruction reception feedback to the terminal 501 after receiving the interactive video playback instruction, and the terminal 501 is further configured to repeatedly send the interactive video playback instruction to the server 502 if no instruction feedback is received within a preset time range after sending the interactive video playback instruction.

[0140] Example 6

[0141] Embodiment Six of the present invention also provides a computer device, such as a smartphone, tablet computer, laptop computer, desktop computer, rack server, blade server, tower server, or cabinet server (including a standalone server or a server cluster composed of multiple servers), etc., capable of executing programs. Figure 6 As shown, the computer device 01 in this embodiment includes, but is not limited to, a memory 011 and a processor 012 that can be interconnected via a system bus, such as... Figure 6 As shown. It should be noted that, Figure 3Only a computer device 01 with component memory 011 and processor 012 is shown; however, it should be understood that it is not required to implement all of the components shown, and more or fewer components may be implemented instead.

[0142] In this embodiment, the memory 011 (i.e., the readable storage medium) includes flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, disk, optical disk, etc. In some embodiments, the memory 011 may be an internal storage unit of the computer device 01, such as the hard disk or memory of the computer device 01. In other embodiments, the memory 011 may also be an external storage device of the computer device 01, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the computer device 01. Of course, the memory 011 may include both the internal storage unit and its external storage device of the computer device 01. In this embodiment, the memory 011 is typically used to store the operating system and various application software installed on the computer device 01, such as the program code of the interactive video playback device of the embodiment. In addition, memory 011 can also be used to temporarily store various types of data that have been output or will be output.

[0143] In some embodiments, processor 012 may be a central processing unit (CPU), controller, microcontroller, microprocessor, or other data processing chip. This processor 012 is typically used to control the overall operation of computer device 01. In this embodiment, processor 012 is used to run program code stored in memory 011 or process data, such as interactive video playback methods.

[0144] Example 7

[0145] This embodiment also provides a computer-readable storage medium, such as flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, disk, optical disk, server, app store, etc., which stores a computer program. When the program is executed by a processor, it implements the corresponding function. The computer-readable storage medium of this embodiment is used to store an interactive video playback device, and when executed by a processor, it implements the interactive video playback method of this embodiment.

[0146] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0147] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0148] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.

[0149] The above are merely preferred embodiments of the present invention and do not limit the scope of the patent. Any equivalent structural or procedural transformations made based on the description and drawings of the present invention, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of the present invention.

Claims

1. An interactive video playback method, characterized in that, Applied to a terminal, the interactive video is a video that plays different video content based on the user's operations at branch nodes. The interactive video playback method includes: Receive interactive video playback operations, including plot selection operations or character action selection operations; Send an interactive video playback instruction to the server, wherein the interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation, so that the server can obtain the video playback strategy corresponding to the interactive video playback instruction and determine the playback content according to the first instruction time and the video playback strategy. The system receives and plays the playback content sent by the server.

2. The interactive video playback method according to claim 1, characterized in that, The video playback strategy is as follows: If the first instruction time is before the preset time, the playback content is determined to be A; if the first instruction time is after the preset time, the playback content is determined to be B. Then, based on the first instruction time and the video playback strategy, the playback content can be determined to be either A or B.

3. The interactive video playback method according to claim 1, characterized in that, The step of receiving and playing the playback content sent by the server includes: The system can receive and play video data streams sent by the server, or receive video data source addresses sent by the server and obtain and play video data based on the source addresses.

4. The interactive video playback method according to claim 1, characterized in that, Before sending the interactive video playback command to the server, the interactive video playback method further includes: Send a time request command to the server; Receive the calibration time sent by the server, wherein the calibration time is the system time of the server when the server receives the time request instruction; Obtain the second instruction time, wherein the second instruction time is the system time of the terminal when the terminal receives the interactive video playback operation; The second instruction time is calibrated to the first instruction time based on the calibration time.

5. The interactive video playback method according to claim 1, characterized in that, The server is further configured to send instruction reception feedback to the terminal after receiving the interactive video playback instruction, and the interactive video playback method further includes: If no feedback is received within a preset time range after sending the interactive video playback command, return to the step of sending the interactive video playback command to the server.

6. An interactive video playback method, characterized in that, Applied to the server side, the interactive video is a video that plays different video content based on the user's actions at branch nodes. The interactive video playback method includes: The receiving terminal sends an interactive video playback instruction based on the user's interactive video playback operation, wherein the interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation, and the interactive video playback operation includes a plot selection operation or a character action selection operation. Obtain the video playback strategy corresponding to the interactive video playback instruction, wherein the video playback strategy includes the correspondence between the playback content and the time of the first instruction; The playback content is determined based on the received first instruction time and the video playback strategy; The confirmed playback content is sent to the terminal.

7. The interactive video playback method according to claim 6, characterized in that, The video playback strategy is as follows: If the first instruction time is before the preset time, the playback content is determined to be A; if the first instruction time is after the preset time, the playback content is determined to be B. Then, based on the first instruction time and the video playback strategy, the playback content can be determined to be either A or B.

8. The interactive video playback method according to claim 6, characterized in that, Sending the determined playback content to the terminal includes: The system can send a video data stream to the terminal for playback, or send the source address of the video data to the terminal, and the terminal can obtain the video data based on the source address for playback.

9. The interactive video playback method according to claim 6, characterized in that, Before receiving the interactive video playback instruction from the receiving terminal, the interactive video playback method further includes: Receive the time request instruction sent by the terminal; Based on the terminal's request, a calibration time is sent to the terminal so that the terminal can calibrate the second instruction time to the first instruction time according to the calibration time. The second instruction time is the system time of the terminal when it receives the interactive video playback operation, and the calibration time is the system time of the server when it receives the time request instruction.

10. The interactive video playback method according to claim 6, characterized in that, After receiving the interactive video playback command sent by the terminal, the interactive video playback method further includes: The terminal sends an instruction and receives feedback. If the terminal does not receive feedback on the instruction within a preset time range after sending the interactive video playback instruction, it returns to the step of sending the interactive video playback instruction to the server.

11. An interactive video playback device, characterized in that, Applied to a terminal, the interactive video is a video that plays different video content based on the user's operations at branch nodes. The interactive video playback device includes: An interactive operation receiving module is used to receive interactive video playback operations, including plot selection operations or character action selection operations. An interactive instruction sending module is used to send an interactive video playback instruction to the server. The interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation, so that the server can obtain the video playback strategy corresponding to the interactive video playback instruction and determine the playback content according to the first instruction time and the video playback strategy. The playback content receiving module is used to receive the playback content sent by the server and play it.

12. An interactive video playback device, characterized in that, Applied to the server side, the interactive video plays different video content based on the user's actions at branch nodes. The interactive video playback device includes: An interactive instruction receiving module is used to receive an interactive video playback instruction sent by the terminal based on the user's interactive video playback operation. The interactive video playback instruction includes a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation. The interactive video playback operation includes a plot selection operation or a character action selection operation. A playback strategy acquisition module is used to acquire a video playback strategy corresponding to the interactive video playback instruction, wherein the video playback strategy includes the correspondence between the playback content and the time of the first instruction; The playback content determination module is used to determine the playback content based on the received first instruction time and the video playback strategy; The playback content sending module is used to send the determined playback content to the terminal.

13. An interactive video playback system, characterized in that, Including both a server and a terminal, the interactive video is a video that plays different video content based on the user's actions at the branch node, wherein: The terminal is used to receive interactive video playback operations and send interactive video playback instructions to the server. The interactive video playback instructions include a first instruction time, which is the system time of the server when the terminal receives the interactive video playback operation. The interactive video playback operation includes a plot selection operation or a character action selection operation. The server is used to receive the interactive video playback instruction, obtain the video playback strategy corresponding to the interactive video playback instruction, determine the playback content according to the first instruction time and the video playback strategy, and send the playback content to the terminal. The video playback strategy includes the correspondence between the playback content and the first instruction time. The terminal is also used to receive and play the playback content sent by the server.

14. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 10.

15. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Video carousel method and device

    CN105245962A

  • Method and device for multi-channel video playback

    CN105262979A