CN112866755B - Video playing method and device, electronic equipment and storage medium - Google Patents

Video playing method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN112866755B
CN112866755B CN202011626099.8A CN202011626099A CN112866755B CN 112866755 B CN112866755 B CN 112866755B CN 202011626099 A CN202011626099 A CN 202011626099A CN 112866755 B CN112866755 B CN 112866755B
Authority
CN
China
Prior art keywords
video
played
playing
progress
playing progress
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011626099.8A
Other languages
Chinese (zh)
Other versions
CN112866755A (en
Inventor
罗彬�
魏春旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gaotu Education Technology Group Co ltd
Original Assignee
Gaotu Education Technology Group Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gaotu Education Technology Group Co ltd filed Critical Gaotu Education Technology Group Co ltd
Priority to CN202011626099.8A priority Critical patent/CN112866755B/en
Publication of CN112866755A publication Critical patent/CN112866755A/en
Application granted granted Critical
Publication of CN112866755B publication Critical patent/CN112866755B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/08Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

The embodiment of the application provides a video playing method, a video playing device, electronic equipment and a storage medium, wherein the video playing method comprises the following steps: sending a video playing request aiming at a video to be played to a server; receiving a description file of the video to be played fed back by the server in response to the video playing request from the server, wherein the description file comprises a storage address of the video to be played; determining the current playing progress of the video to be played; acquiring a video stream of the video to be played according to the storage address, and playing the video stream from the current playing progress; and in the playing process, determining video correction parameters at preset time intervals, and correcting the current playing progress of the video to be played based on the video correction parameters. By adopting the technical scheme provided by the application, the traditional RTMP mode can be replaced, the access is simple, the stability of live video broadcast is improved, and the network cost is reduced.

Description

Video playing method and device, electronic equipment and storage medium
Technical Field
The present invention relates to the field of video playing technologies, and in particular, to a video playing method, a device, an electronic apparatus, and a storage medium.
Background
With the rise of the online education industry, the efficiency of online education is greatly improved by means of the energization of the technology, and under the background, the AI pseudo live class starts to rise and is commonly adopted by online education companies. The traditional pseudo live broadcast can record live broadcast video in advance, and the live broadcast push server pushes the video stream to the client through live broadcast protocols such as RTMP and the like until a live broadcast time point, and a user watches the video through the live broadcast device. The cost of the prior art is higher, the problem of blocking is also serious, and the live broadcasting stability is low and the watching experience of a user is seriously influenced due to the fact that the live broadcasting stability is low due to the fact that the live broadcasting stability is easy to be interfered by the problems of network jitter and the like in the continuous real-time plug flow process.
Disclosure of Invention
In order to overcome the defects in the prior art, the invention aims to provide a video playing method, a video playing device, electronic equipment and a storage medium, which can perform pseudo live broadcast by determining the current live broadcast progress to locate the pseudo live broadcast video, thereby being beneficial to improving the live broadcast stability and reducing the live broadcast network broadband cost.
According to one aspect of the present application, a video playing method is provided, which is applied to a video live client, and the video playing method includes:
sending a video playing request aiming at a video to be played to a server;
receiving a description file of the video to be played fed back by the server in response to the video playing request from the server, wherein the description file comprises a storage address of the video to be played;
determining the current playing progress of the video to be played;
acquiring a video stream of the video to be played according to the storage address, and playing the video stream from the current playing progress;
and in the playing process, determining video correction parameters at preset time intervals, and correcting the current playing progress of the video to be played based on the video correction parameters.
In some embodiments, the description file may further include a current timestamp and a play start timestamp of the video to be played, where determining the current play progress of the video to be played may include: determining the time difference between the current time stamp and the play start time stamp of the video to be played; and determining the time difference as the current playing progress of the video to be played.
In some embodiments, the video correction parameters may be determined by: determining the actual playing progress of the video to be played; determining the theoretical playing progress of the video to be played; and determining the absolute value of the time difference between the actual playing progress and the theoretical playing progress of the video to be played as the video correction parameter.
In some embodiments, the correcting the current playing progress of the video to be played based on the video correction parameter may include: comparing the video correction parameter with a set time threshold; if the video correction parameter is not greater than the set time threshold, not correcting the current playing progress of the video to be played; and if the video correction parameter is larger than the set time threshold, correcting the current playing progress of the video to be played based on the video correction parameter.
In some embodiments, the correcting the current playing progress of the video to be played based on the video correction parameter may include: determining whether the time difference between the actual playing progress and the theoretical playing progress of the video to be played is greater than zero; if the time difference is greater than zero, the current playing progress of the video to be played is slowed down according to the video correction parameters; and if the time difference is not greater than zero, the current playing progress of the video to be played is adjusted according to the video correction parameters.
In some embodiments, the actual playing progress is a video progress recorded by a video live client; and determining the theoretical playing progress as the video progress controlled to be played by the client.
According to another aspect of the present application, there is provided a video playing device applied to a video live client, the video playing device including:
the request sending module sends a video playing request aiming at the video to be played to the server;
the file receiving module is used for receiving a description file of the video to be played, which is fed back by the server in response to the video playing request, from the server, wherein the description file comprises a storage address of the video to be played;
the progress determining module is used for determining the current playing progress of the video to be played;
the video playing module acquires the video stream of the video to be played according to the storage address and plays the video stream from the current playing progress;
in the playing process, the progress determining module determines video correction parameters at preset time intervals, and corrects the current playing progress of the video to be played based on the video correction parameters.
In some embodiments, the description file further includes a current timestamp and a play start timestamp of the video to be played, wherein the progress determination module determines a time difference between the current timestamp and the play start timestamp of the video to be played; and determining the time difference as the current playing progress of the video to be played.
According to another aspect of the present application, there is also provided an electronic apparatus including: the video playing method comprises a processor, a memory and a bus, wherein the memory stores machine-readable instructions executable by the processor, when the electronic device runs, the processor and the memory are communicated through the bus, and the processor executes the machine-readable instructions to execute the steps of the video playing method.
According to another aspect of the present application, there is also provided a computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of the video playing method described above.
The video playing method provided by the embodiment of the application is applied to a video live client, and comprises the following steps: sending a video playing request aiming at a video to be played to a server; receiving a description file of the video to be played fed back by the server in response to the video playing request from the server, wherein the description file comprises a storage address of the video to be played; determining the current playing progress of the video to be played; acquiring a video stream of the video to be played according to the storage address, and playing the video stream from the current playing progress; and in the playing process, determining video correction parameters at preset time intervals, and correcting the current playing progress of the video to be played based on the video correction parameters.
Compared with the prior art, the invention has the following beneficial effects:
according to the video playing method provided by the invention, the video is played by capturing the current playing progress of the video to be played. Therefore, the video playing can be triggered according to the current time information, the traditional RTMP pseudo live broadcasting mode is replaced, the access is simple, the video preloading is easier to realize at the video live broadcasting client, the live broadcasting opening speed is improved, the pseudo live broadcasting time delay problem is solved, the user experience is improved, and the use cost of the broadband is greatly reduced.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings that are needed in the embodiments will be briefly described below, it being understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and other related drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a flowchart of a video playing method according to an embodiment of the present application;
fig. 2 is a flowchart of another video playing method according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of a video playing device according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are some, but not all embodiments of the invention.
Thus, the following detailed description of the embodiments of the invention, as presented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
It should be noted that: like reference numerals and letters denote like items in the following figures, and thus once an item is defined in one figure, no further definition or explanation thereof is necessary in the following figures.
In order to enable those skilled in the art to use the present application, the following embodiments are presented in connection with a specific application scenario of "online education, online lectures". It will be apparent to those having ordinary skill in the art that the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present application. Although the present application is primarily described in the context of video online live lessons, it should be understood that this is but one exemplary embodiment.
One aspect of the present application relates to a video playback method. According to the method, the video to be played can be positioned according to the video playing progress to realize pseudo live broadcast, the blocking rate is reduced, the phenomenon of video packet loss is avoided, and the video stability is improved.
It is noted that, before the application is filed in the application, the traditional pseudo live broadcast mode is to record live broadcast video in advance, when the live broadcast time point is reached, the live broadcast push server pushes the video stream to the client through a live broadcast protocol such as RTMP, and the user watches the video through the live broadcast device.
However, the video playing method provided by the application discards the scheme of traditional RTMP push stream, and adopts a mode of determining the video playing progress to position and play the video, thereby improving the video stability and reducing the broadband cost.
Referring to fig. 1, a flowchart of a video playing method according to an embodiment of the present invention is shown. The method is applied to a video live client, namely, the video playing method is a method for controlling the playing progress of a video to be played at the video live client, and the specific flow is as follows:
step S101, a video playing request for a video to be played is sent to a server.
In an optional embodiment, the video playing method can be applied to scenes such as online education, online teaching, online listening and the like, and corresponding videos can be played in the scenes in a live broadcast mode.
In addition, the corresponding video can be played in the scene in a pseudo live broadcast mode. Here, the pseudo live broadcast refers to playing a video recorded in advance in a live broadcast mode. At this time, the video to be played may refer to a pseudo live video. For example, the pseudo live video is pre-stored in a server, the time when the pseudo live video starts is recorded in the server, and the server sends corresponding description files according to the time when different video live clients enter a live interface, wherein the description files are used for determining the video live progress of the different video live clients, so that the effect of pseudo live video is achieved. For example, the starting playing time of the pseudo live video is 9 am, if a video live client enters the live interface at 9 am at 5 am and sends a video playing request, the video live client can directly start playing from the 5 th minute of the pseudo live video, that is, the videos seen by all video live clients are synchronous.
For example, the video live client may first enter a live interface that includes a plurality of live programs (e.g., a plurality of online courses), and when a user selection of any of the plurality of live programs is received, a video play request is generated and sent to the server.
Here, any selected direct-play program is the video to be played, and the generated video playing request is the video playing request aiming at the video to be played.
Step S102, a description file of the video to be played fed back by the server in response to the video playing request is received from the server. Here, the description file may include a storage address of the video to be played so that the video stream applied to the video live client can acquire the video to be played based on the storage address.
For example, the video playing request may carry relevant information of the video to be played, where the relevant information may include, but is not limited to, one or more of the following: the name of the video to be played and the content label of the video to be played.
After receiving the video playing request, the server analyzes the video playing request to obtain related information of the video to be played, and determines a description file of the video to be played based on the related information.
That is, after the live video client enters live video, the live video client sends a video playing request for the video to be played to the server, and then the live video client receives a description file of the video to be played, which is fed back by the server in response to the video playing request.
Step S103, determining the current playing progress of the video to be played.
In the embodiment of the present application, the description file may further include a current timestamp and a play start timestamp of the video to be played, in addition to the storage address of the video to be played.
Here, the current timestamp may refer to the total seconds from the greenwich time 1970, 01, 00 minutes, 00 seconds (Beijing time 1970, 01, 08, 00 minutes, 00 seconds) to the current live time, and the play start timestamp of the video to be played may refer to the start time of the video to be played, for example, when the video to be played is a learning video for a mathematical course of online education, the play start timestamp of the video to be played may refer to the start time of the learning video. The current playing progress of the video to be played is the current live broadcast progress.
In this case, in this step, a time difference between the current time stamp and the play start time stamp of the video to be played may be determined, and the time difference is determined as the current play progress of the video to be played.
Step S104, the video stream of the video to be played is obtained according to the storage address, and the video is played from the current playing progress.
In the video playing method, in the playing process, video correction parameters are determined at preset time intervals, and the current playing progress of the video to be played is corrected based on the video correction parameters.
Here, the video correction parameter is used for correcting the current playing progress of the video to be played by the video live client, that is, the video correction parameter is determined based on the judging result of whether the actual playing progress of the video to be played is consistent with the theoretical playing progress, so as to correct the current playing progress of the video to be played.
In this embodiment, the server stores the pre-recorded video to be played, and records the video playing time (i.e., the playing progress) of the video to be played from the time when the video to be played starts to be played. When the video live client enters live broadcast at a certain moment, the video live client acquires the current playing progress of the video to be played from the server, and the video live client positions the video to be played to the progress to play the video.
Referring to fig. 2, a flowchart of another video playing method provided in an embodiment of the present application is shown, where the method may be executed by a live video client, and the specific execution process is as follows:
step S201, a video playing request for a video to be played is sent to a server.
Step S202, a description file of the video to be played fed back by the server in response to the video playing request is received from the server. Here, the description file includes a storage address of the video to be played.
Step S203, determining the current playing progress of the video to be played.
Step S204, the video stream of the video to be played is obtained according to the storage address, and the video is played from the current playing progress.
The descriptions of steps S201 to S204 may refer to the descriptions of steps S101 to S104 shown in fig. 1, and the same technical effects can be achieved, which will not be described in detail.
For example, the description file may be parsed to obtain a storage address of the video to be played, where the storage address is located at the on-demand server, so that a video stream of the video to be played is obtained according to the storage address for playing.
For various courses in online education, the server packages video to be played (pre-recorded pseudo live video) into video-on-demand streams during playing, and the video-on-demand streams are actively pulled by the video live client to achieve the same live effect as that of traditional RTMP live broadcast. The video live client starts to preload the video before live broadcasting starts, when a user starts to watch, the actual video is preloaded, the video can be watched directly without any loading process, so that the opening time of a first frame of the video is almost 0 millisecond, the playing process can flexibly buffer the length, the problem of pseudo live broadcasting delay is avoided, and the phenomenon of blocking is easier to avoid.
In step S205, during the playing process, video correction parameters are determined at predetermined time intervals to correct the current playing progress of the video to be played based on the video correction parameters.
In an alternative embodiment, the video correction parameters (as represented by δ) may be determined by: determining the actual playing progress of the video to be played; determining a theoretical playing progress of a video to be played; and determining the absolute value of the time difference between the actual playing progress and the theoretical playing progress of the video to be played as a video correction parameter.
Here, the actual playing progress of the video to be played is the live time progress recorded by the live video client, the theoretical playing progress is the difference value between the current timestamp and the live start timestamp, wherein the current timestamp and the play start timestamp (i.e., the live start timestamp) of the video to be played can be obtained by analyzing the description file obtained from the server by the live video client for the first time, the live video client records the difference value between the current timestamp of the server and the local current timestamp of the live video client, and then the theoretical playing progress is calculated without obtaining from the server, and the sum value of the difference value and the local current timestamp can be determined as the current timestamp.
As an example, the predetermined time interval may be set to 5S, but the present application is not limited thereto, and the value of the predetermined time interval may be set as needed by those skilled in the art, which is not limited thereto. In an embodiment, the video correction parameter δ is determined once every 5S to determine whether the current playing progress of the video to be played needs to be corrected.
Step S206, judging whether the video correction parameter is larger than the set time threshold.
If the video correction parameter is greater than the set time threshold, step S206 is performed: and correcting the current playing progress of the video to be played based on the video correction parameters.
As an example, in this step, it may be determined whether the time difference between the actual playing progress of the video to be played and the theoretical playing progress is greater than zero; if the time difference is greater than zero, the current playing progress of the video to be played is slowed down according to the video correction parameters, for example, the difference value between the current playing progress and the video correction parameters is determined to be a new playing progress, and the new playing progress is positioned to the playing progress for playing. If the time difference is smaller than zero, the current playing progress of the video to be played is adjusted according to the video correction parameters, for example, the sum of the current playing progress and the video correction parameters is determined to be a new playing progress, and the new playing progress is positioned to the playing progress for playing.
For example, the current video playing progress is recorded, and the step S203 is executed in a return manner, so that the live video client obtains a new start position of the video stream according to the current playing progress time stamp and the data position information (the MP4 format video stream) stored in the video, corrects the new start position, and redraws the new video stream from the server.
As an example, the set time threshold may be set to 5S, but the present application is not limited thereto, and the magnitude of the set time threshold may be set as needed by those skilled in the art, which is not limited thereto.
For the above-listed example, if δ is not greater than 5S, the current playing progress of the video to be played is not modified; if delta is larger than 5S, the video live client obtains a new starting position of the video stream according to the current playing progress time stamp and the time stamp and data position information (MP 4 format video stream) stored in the video head, and the new video stream is pulled again from the server, so that the time progress of the video to be played is corrected according to the parameter.
Because the current live progress is inconsistent with the expected pseudo live progress due to network or other reasons, video correction parameters are determined at preset time intervals in the playing process, and the correction parameters are compared with a set time threshold value, so that live progress verification is performed.
If the video correction parameter is not greater than the set time threshold, the current playing progress of the video to be played is not corrected, and the step S207 is continuously executed: and judging whether the video to be played is finished or not.
Here, whether the video to be played is ended may be broken based on the current playing progress of the video to be played and the total video duration of the video to be played. For example, if the difference between the total video duration of the video to be played and the current playing progress of the video to be played is zero, the video to be played is indicated to be played to be finished, and if the difference between the total video duration of the video to be played and the current playing progress of the video to be played is not zero, the video to be played is indicated to be not played to be finished.
If the video playing to be played is not finished, the step S203 is executed again to continue playing the video.
If the video to be played has been played, the playing of the video is ended, for example, the video live client may exit live.
Based on the same inventive concept, the embodiment of the present application further provides a video playing device corresponding to the video playing method shown in fig. 1, and since the principle of solving the problem of the device in the embodiment of the present application is similar to that of the service pushing method in the embodiment of the present application, the implementation of the device may refer to the implementation of the method, and the repetition is omitted.
Referring to fig. 3, which is a schematic diagram of a video playing device according to an embodiment of the present application, the video playing device 300 includes: a request sending module 310, a file receiving module 320, a progress determining module 330, and a video playing module 340; wherein, the liquid crystal display device comprises a liquid crystal display device,
the request transmitting module 310 transmits a video play request for a video to be played to the server.
The file receiving module 320 receives a description file of a video to be played, which is fed back by the server in response to the video playing request, from the server. Here, the description file includes a storage address of the video to be played.
The progress determination module 330 determines the current progress of playing the video to be played.
The video playing module 340 obtains the video stream of the video to be played according to the storage address, and plays the video stream from the current playing progress.
During the playing process, the progress determination module 330 determines video correction parameters at predetermined time intervals, and corrects the current playing progress of the video to be played based on the video correction parameters.
In a possible implementation manner, the description file may include a storage address of the video to be played, a current timestamp, and a play start timestamp of the video to be played, in which case, the progress determining module 330 may determine a current play progress of the video to be played, and determine a time difference between the current timestamp and the play start timestamp of the video to be played; and determining the time difference as the current playing progress of the video to be played.
Referring to fig. 4, fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present application. As shown in fig. 4, the electronic device 400 includes a processor 410, a memory 420, and a bus 430.
The memory 420 stores machine-readable instructions executable by the processor 410, when the electronic device 400 is running, the processor 410 communicates with the memory 420 through the bus 430, and when the machine-readable instructions are executed by the processor 410, the steps of the video playing method in the method embodiments shown in fig. 1 and 2 can be executed, and specific implementation manners can refer to the method embodiments and are not repeated herein.
The embodiment of the present application further provides a computer readable storage medium, where a computer program is stored on the computer readable storage medium, and when the computer program is executed by a processor, the steps of the video playing method in the method embodiment shown in the foregoing fig. 1 and fig. 2 may be executed, and a specific implementation manner may refer to the method embodiment and will not be described herein.
In summary, the video playing method, the device, the electronic device and the storage medium provided in the embodiment perform live video playing by positioning the current playing progress of the video to be played. Therefore, the mode replaces the traditional RTMP pseudo live broadcast mode, has simple access, is beneficial to preloading video at the client, improves the stability, solves the problem of pseudo live broadcast delay, reduces the click-through rate, and greatly enhances the user experience.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
It will be evident to those skilled in the art that the invention is not limited to the details of the foregoing illustrative embodiments, and that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive, the scope of the invention being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. Any reference sign in a claim should not be construed as limiting the claim concerned.

Claims (6)

1. The video playing method is characterized by being applied to a video live client, and comprises the following steps:
sending a video playing request aiming at a video to be played to a server;
receiving a description file of the video to be played fed back by the server in response to the video playing request from the server, wherein the description file comprises a storage address of the video to be played, and the server sends corresponding description files according to the time when different video live clients enter a live interface, and the description files are used for determining video live progress of different video live clients;
determining the current playing progress of the video to be played, wherein the description file further comprises a current time stamp and a playing start time stamp of the video to be played;
acquiring a video stream of the video to be played according to the storage address, and playing the video stream from the current playing progress;
during playing, determining video correction parameters at preset time intervals, and correcting the current playing progress of the video to be played based on the video correction parameters;
the determining the current playing progress of the video to be played includes:
determining the time difference between the current time stamp and the play start time stamp of the video to be played;
determining the time difference as the current playing progress of the video to be played;
the video correction parameters are determined by:
determining the actual playing progress of the video to be played, wherein the actual playing progress is the video progress recorded by the video live broadcast client;
determining the theoretical playing progress of the video to be played, wherein the theoretical playing progress is the video progress controlled to be played by a server side;
and determining the absolute value of the time difference between the actual playing progress and the theoretical playing progress of the video to be played as the video correction parameter.
2. The video playing method according to claim 1, wherein said correcting the current playing progress of the video to be played based on the video correction parameter comprises:
comparing the video correction parameter with a set time threshold;
if the video correction parameter is not greater than the set time threshold, not correcting the current playing progress of the video to be played;
and if the video correction parameter is larger than the set time threshold, correcting the current playing progress of the video to be played based on the video correction parameter.
3. The video playing method according to claim 1 or 2, wherein said correcting the current playing progress of the video to be played based on the video correction parameter includes:
determining whether the time difference between the actual playing progress and the theoretical playing progress of the video to be played is greater than zero;
if the time difference is greater than zero, the current playing progress of the video to be played is slowed down according to the video correction parameters;
and if the time difference is smaller than zero, the current playing progress of the video to be played is adjusted according to the video correction parameters.
4. A video playback device for use with a video live client, the video playback device comprising:
the request sending module sends a video playing request aiming at the video to be played to the server;
the file receiving module is used for receiving the description file of the video to be played fed back by the server in response to the video playing request, wherein the description file comprises a storage address of the video to be played, and the server is used for sending corresponding description files according to the time of different video live client sides entering a live interface, and the description files are used for determining video live progress of different video live client sides;
the progress determining module is used for determining the current playing progress of the video to be played, wherein the description file further comprises a current time stamp and a playing start time stamp of the video to be played;
the video playing module acquires the video stream of the video to be played according to the storage address and plays the video stream from the current playing progress;
in the playing process, a progress determining module determines video correction parameters at preset time intervals, and corrects the current playing progress of the video to be played based on the video correction parameters;
wherein, progress determination module is still used for:
determining the time difference between the current time stamp and the play start time stamp of the video to be played;
determining the time difference as the current playing progress of the video to be played;
the video playing module is further configured to:
determining the actual playing progress of the video to be played, wherein the actual playing progress is the video progress recorded by the video live broadcast client;
determining the theoretical playing progress of the video to be played, wherein the theoretical playing progress is the video progress controlled to be played by a server side;
and determining the absolute value of the time difference between the actual playing progress and the theoretical playing progress of the video to be played as the video correction parameter.
5. An electronic device, comprising: a processor, a memory and a bus, the memory storing machine-readable instructions executable by the processor, the processor and the memory in communication over the bus when the electronic device is running, the processor executing the machine-readable instructions to perform the steps of the method of any one of claims 1 to 3.
6. A computer-readable storage medium, characterized in that it has stored thereon a computer program which, when executed by a processor, performs the steps of the method according to any of claims 1 to 3.
CN202011626099.8A 2020-12-31 2020-12-31 Video playing method and device, electronic equipment and storage medium Active CN112866755B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011626099.8A CN112866755B (en) 2020-12-31 2020-12-31 Video playing method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011626099.8A CN112866755B (en) 2020-12-31 2020-12-31 Video playing method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112866755A CN112866755A (en) 2021-05-28
CN112866755B true CN112866755B (en) 2023-06-23

Family

ID=75999488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011626099.8A Active CN112866755B (en) 2020-12-31 2020-12-31 Video playing method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112866755B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114125536A (en) * 2021-11-26 2022-03-01 北京字跳网络技术有限公司 In-game live broadcast interaction method and device, computer equipment and storage medium
CN114827746B (en) * 2022-03-30 2024-05-10 神力视界(深圳)文化科技有限公司 Video playing control method, device, electronic equipment, medium and program product

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103648010A (en) * 2013-11-28 2014-03-19 陕西千山航空电子有限责任公司 Synchronous flight data and multi-channel video and audio data playback method
CN106572358A (en) * 2016-11-11 2017-04-19 青岛海信宽带多媒体技术有限公司 Live broadcast time shift method and client
CN106993239A (en) * 2017-03-29 2017-07-28 广州酷狗计算机科技有限公司 Method for information display during live
CN108174229A (en) * 2017-12-29 2018-06-15 北京奇虎科技有限公司 The determining method and apparatus of delay are broadcast live
WO2019140747A1 (en) * 2018-01-19 2019-07-25 深圳市沃特沃德股份有限公司 Method for synchronous playing of multiple playing devices, and playing device
CN111294634A (en) * 2020-02-27 2020-06-16 腾讯科技(深圳)有限公司 Live broadcast method, device, system, equipment and computer readable storage medium
CN112073791A (en) * 2020-08-03 2020-12-11 上海商泰汽车信息系统有限公司 Playing synchronization method and device, storage medium and user side

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170171605A1 (en) * 2015-12-15 2017-06-15 Le Holdings (Beijing) Co., Ltd. Method and Electronic Device for Switching Live Broadcast to On-Demand Unicast

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103648010A (en) * 2013-11-28 2014-03-19 陕西千山航空电子有限责任公司 Synchronous flight data and multi-channel video and audio data playback method
CN106572358A (en) * 2016-11-11 2017-04-19 青岛海信宽带多媒体技术有限公司 Live broadcast time shift method and client
CN106993239A (en) * 2017-03-29 2017-07-28 广州酷狗计算机科技有限公司 Method for information display during live
CN108174229A (en) * 2017-12-29 2018-06-15 北京奇虎科技有限公司 The determining method and apparatus of delay are broadcast live
WO2019140747A1 (en) * 2018-01-19 2019-07-25 深圳市沃特沃德股份有限公司 Method for synchronous playing of multiple playing devices, and playing device
CN111294634A (en) * 2020-02-27 2020-06-16 腾讯科技(深圳)有限公司 Live broadcast method, device, system, equipment and computer readable storage medium
CN112073791A (en) * 2020-08-03 2020-12-11 上海商泰汽车信息系统有限公司 Playing synchronization method and device, storage medium and user side

Also Published As

Publication number Publication date
CN112866755A (en) 2021-05-28

Similar Documents

Publication Publication Date Title
US11272232B2 (en) Synchronizing multiple over the top streaming clients
US8505058B2 (en) Synchronization and automation in an ITV environment
US10880620B2 (en) Playback synchronization across playback devices
US9015785B2 (en) Terminal apparatus, server apparatus, information processing method, program, and linking application supply system
US20150089552A1 (en) System and Method for Providing Synchronized Events to a Television Application
CN112866755B (en) Video playing method and device, electronic equipment and storage medium
EP2665261A1 (en) Content reproduction device, content reproduction method, delivery system, content reproduction program, recording medium, and data structure
JP2011526123A (en) Interval-based ad insertion used for video stream delivery
US20130117778A1 (en) Method and apparatus for temporal correlation of content-specific metadata with content obtained from disparate sources
JP2018530257A (en) Media content tag data synchronization
US20150033277A1 (en) Method of buffer management for synchronization of correlated media presentations
CN106470352B (en) Live channel playing method, device and system
CN109714622B (en) Video data processing method and device and electronic equipment
US9319731B2 (en) Methods and apparatuses for resuming paused media
CN109698961B (en) Monitoring method and device and electronic equipment
CN110072123B (en) Video recovery playing method, video playing terminal and server
US20180206004A1 (en) Enhanced restart tv
WO2016090916A1 (en) Code stream transmission method and device
JP2016149802A (en) Interval based advertisement insertion used for delivery of video streams
CN108366291B (en) Audio decoding strategy in audio playing
US20230217060A1 (en) Systems, methods, and apparatuses for buffer management
CN101771576A (en) Test method, device and system
WO2017220564A1 (en) Media streaming method, client application, media client and media server for validation of a preset control condition

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210803

Address after: 100094 W102, 1 / F, building 7, east yard, No.10, xibeiwangdong Road, Haidian District, Beijing

Applicant after: Gaotu Education Technology Group Co.,Ltd.

Address before: 100082 room 101-401, 4th floor, building 21, East District, yard 10, northwest Wangdong Road, Haidian District, Beijing

Applicant before: Beijing Xiaozao Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant