CN112019916A - Video downloading method, device, server and storage medium - Google Patents

Video downloading method, device, server and storage medium Download PDF

Info

Publication number
CN112019916A
CN112019916A CN202010874383.0A CN202010874383A CN112019916A CN 112019916 A CN112019916 A CN 112019916A CN 202010874383 A CN202010874383 A CN 202010874383A CN 112019916 A CN112019916 A CN 112019916A
Authority
CN
China
Prior art keywords
video
played
code rate
playing
downloading
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.)
Granted
Application number
CN202010874383.0A
Other languages
Chinese (zh)
Other versions
CN112019916B (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.)
Bigo Technology Singapore Pte Ltd
Original Assignee
Guangzhou Baiguoyuan Information Technology 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 Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN202010874383.0A priority Critical patent/CN112019916B/en
Publication of CN112019916A publication Critical patent/CN112019916A/en
Application granted granted Critical
Publication of CN112019916B publication Critical patent/CN112019916B/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/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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level

Abstract

The embodiment of the invention discloses a method, a device, a server and a storage medium for downloading videos. Wherein, the method comprises the following steps: responding to the situation that the current network state of a video to be played does not support smooth playing of the video to be played at a pre-download code rate, and selecting a corresponding target code rate gear when the video to be played simultaneously meets the playing index requirement and the playing performance requirement from code rate gears matched with the current network state; and downloading the video to be played by adopting the target code rate gear. According to the technical scheme provided by the embodiment of the invention, code rate reselection when the video to be played cannot be smoothly played at the pre-download code rate is realized, so that the video to be played can be downloaded and played at the target code rate gear, and the playing index requirement and the playing performance requirement can be simultaneously met, thereby ensuring the rapid playing of the video to be played and improving the playing smoothness of the video to be played on the basis of avoiding the playing jam of the video to be played.

Description

Video downloading method, device, server and storage medium
Technical Field
The embodiment of the invention relates to the technical field of video processing, in particular to a method, a device, a server and a storage medium for video downloading.
Background
With the rapid development of internet technology, high-definition real-time video has become an important way for people to communicate and entertain. At this time, when a user continuously watches each video with high definition, if the network transmission rate is unstable or the network bandwidth is insufficient, the user needs to wait for a certain buffer time from the moment when the user clicks the played video, and the video can be played.
At present, in order to speed up video playing, if the current video is downloaded in the playing process of the current video, part of the contents of several videos behind the current video (not all the contents are downloaded) are usually downloaded in advance based on the current network state, so that the subsequent videos can be played quickly. However, since there is always a certain delay between the actual playing time point and the pre-downloading time point of the video and the network fluctuates in real time, if the network bandwidth of the currently played video during actual playing is suddenly reduced relative to the network bandwidth during pre-downloading, when the remaining content of the currently played video except the pre-downloading content is downloaded in the current network state, the remaining downloading speed is far from the playing speed of the currently played video, so that the currently played video is jammed.
Disclosure of Invention
The embodiment of the invention provides a video downloading method, a video downloading device, a server and a storage medium, which are used for realizing code rate reselection when a video to be played cannot be smoothly played under a pre-downloading code rate and avoiding the playing jam of the video to be played.
In a first aspect, an embodiment of the present invention provides a method for downloading a video, where the method includes:
responding to the situation that the current network state of a video to be played does not support smooth playing of the video to be played at a pre-download code rate, and selecting a corresponding target code rate gear when the video to be played simultaneously meets the playing index requirement and the playing performance requirement from code rate gears matched with the current network state;
and downloading the video to be played by adopting the target code rate gear.
In a second aspect, an embodiment of the present invention provides an apparatus for downloading a video, where the apparatus includes:
the code rate gear reselection module is used for responding that the current network state of the video to be played does not support the smooth playing of the video to be played at the pre-downloading code rate, and selecting a corresponding target code rate gear which enables the video to be played to simultaneously meet the playing index requirement and the playing performance requirement from the code rate gears matched with the current network state;
and the video downloading module is used for downloading the video to be played by adopting the target code rate gear.
In a third aspect, an embodiment of the present invention provides a server, where the server includes:
one or more processors;
storage means for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement a method for video downloading as described in any of the embodiments of the invention.
In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements a method for video downloading according to any embodiment of the present invention.
The method, the device, the server and the storage medium for downloading the video, provided by the embodiment of the invention, firstly need to judge whether the current network state of the video to be played supports the smooth playing of the video to be played at the pre-downloading code rate, if the current network state does not support the smooth playing of the video to be played at the pre-downloading code rate, the playing of the video to be played is unsmooth if the pre-downloading code rate is still adopted to continue downloading the residual content in the video to be played, so that the corresponding target code rate gear needs to be selected again from the code rate gears matched with the current network state to re-download the video to be played, thereby realizing the code rate reselection when the video to be played can not be played smoothly at the pre-downloading code rate, so that the video to be played at the target code rate gear can be downloaded and played simultaneously meet the requirements of the start-playing index and the playing performance, therefore, on the basis of avoiding the playing jam of the video to be played, the fast playing of the video to be played is ensured, and the playing smoothness of the video to be played is improved.
Drawings
Other features, objects and advantages of the invention will become more apparent upon reading of the detailed description of non-limiting embodiments made with reference to the following drawings:
fig. 1A is a flowchart of a video downloading method according to an embodiment of the present invention;
fig. 1B is a schematic diagram of a video downloading process according to an embodiment of the present invention;
fig. 2A is a flowchart of a video downloading method according to a second embodiment of the present invention;
fig. 2B is a schematic diagram of a video downloading process according to a second embodiment of the present invention;
fig. 3 is a schematic structural diagram of a video downloading apparatus according to a third embodiment of the present invention;
fig. 4 is a schematic structural diagram of a server according to a fourth embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures. In addition, the embodiments and features of the embodiments in the present invention may be combined with each other without conflict.
Example one
Fig. 1A is a flowchart of a video downloading method according to an embodiment of the present invention, which is applicable to a situation where multiple videos are sequentially played in any service scene. The method for downloading video provided by this embodiment may be performed by a device for downloading video provided by the embodiment of the present invention, where the device may be implemented in a software and/or hardware manner, and is integrated in a server for performing the method, where the server may be a background server participating in downloading video data.
Specifically, referring to fig. 1A, the method may include the steps of:
and S110, responding to the fact that the current network state of the video to be played does not support smooth playing of the video to be played at the pre-download code rate, and selecting a corresponding target code rate gear when the video to be played simultaneously meets the playing index requirement and the playing performance requirement from the code rate gears matched with the current network state.
Optionally, at present, in order to ensure fast playing of a video, part of contents of several videos to be played after the current video (not all downloading is completed) are usually downloaded in advance in the playing process of the current video, so that a certain delay always exists between the actual playing time point and the pre-downloading time point of each video, at this time, because the network shakes in real time, if the network bandwidth of the video to be played during actual playing is suddenly reduced relative to the network bandwidth during pre-downloading, when the remaining contents in the video to be played are downloaded in the current network state, the remaining downloading speed is far from the playing speed of the video to be played, and thus the video to be played is blocked. Meanwhile, for the video which is not subjected to the pre-downloading, when the video is played at the current moment, the code rate gear matched with the current network state is directly selected for complete downloading, and the problem of playing pause caused by delay between the actual playing time point and the pre-downloading time point is not considered, so that the video to be played in the embodiment mainly can be the video which is indicated to be played at present and is subjected to the pre-downloading, and the pre-downloading code rate is the code rate gear actually adopted by the video to be played during the pre-downloading.
At this time, in order to avoid the playing jam of the video to be played in the playing process, when a playing instruction of the video to be played which has been downloaded in advance is received, and a client indicates that the video to be played needs to be played at the current time, because the pre-download code rate of the video to be played is matched with the network state at the pre-download time, and the network state changes in real time, the current network state of the video to be played needs to be determined, and then whether the current network state supports the smooth playing of the video to be played at the pre-download code rate is judged, and the smooth playing of the video to be played at the pre-download code rate can require that the video content which needs to be played at each playing time of the video to be played is downloaded by using the pre-download code rate at the network state at a certain previous time, that is, when the remaining content of the video to be played except the pre-download content is downloaded by using the pre-download code rate at the current network state of the video to, the residual downloading time length of the residual content is less than or equal to the playing time length of the video to be played; meanwhile, if the pre-download code rate of the video to be played is the lowest code rate gear in the code rate gear list corresponding to the video to be played, even if playing is stopped, the video to be played cannot be converted to be downloaded at a lower code rate gear; therefore, referring to the above two descriptions, it can be understood that, in this embodiment, the case that the current network state of the video to be played does not support smooth playing of the video to be played at the pre-download bitrate may be: and under the current network state of the video to be played, the residual downloading time length when the residual content except the pre-downloaded content in the video to be played is downloaded by adopting the pre-downloading code rate is greater than the playing time length of the video to be played, and the pre-downloading code rate is greater than the lowest code rate gear corresponding to the video to be played.
Further, if the current network state of the video to be played does not support smooth playing of the video to be played at the pre-download bitrate, a new target bitrate gear matched with the current network state needs to be reselected from a bitrate gear list corresponding to the video to be played, as shown in fig. 1B, to re-download the video to be played completely, and meanwhile, in order to improve the performance requirements of the video to be played at the playing stage and the playing stage, when the video to be played is also required to be downloaded by adopting the reselected target bitrate gear, the video to be played can simultaneously meet the playing index requirement and the playing performance requirement, the playing index requirement can be that when the video to be played is downloaded at the target bitrate gear, the video to be played can be guaranteed to be played successfully within the playing duration acceptable by the user, and the playing performance requirement can be that when the video to be played is required to be downloaded at the target bitrate gear, the video to be played can be guaranteed not exist in the actual playing process The playing is blocked, and playing characteristics preset according to actual playing requirements can be achieved, for example, the playing quality of the video to be played at the target code rate gear is required to be optimal, or the downloading rate of the video to be played at the target code rate gear is required to be fastest, so that code rate reselection when the video to be played cannot be played smoothly at the pre-downloading code rate is achieved, the video to be played at the target code rate gear can be downloaded and played simultaneously according to the playing index requirement and the playing performance requirement, rapid playing of the video to be played is guaranteed on the basis of avoiding the video to be played from being blocked, and the playing smoothness of the video to be played is improved.
It should be noted that, in order to avoid that the video to be played is played in a jammed state, in this embodiment, a code rate gear matched with the current network state may be a code rate gear of which a code rate value in the code rate gear list of the video to be played is smaller than or equal to a code rate gear of a network bandwidth in the current network state, so that the video to be played can be guaranteed to be downloaded quickly in the current network state.
In addition, referring to the determination condition in this embodiment for determining whether the current network state of the video to be played supports the smooth playing of the video to be played at the pre-download code rate, before determining whether the current network state of the video to be played supports the smooth playing of the video to be played at the pre-download code rate, the method may further include: and calculating the residual downloading time length of the video to be played in the current network state according to the playing time length of the video to be played, the pre-downloading code rate and the residual occupation ratio of the residual content except the pre-downloading content in the video to be played.
Specifically, by searching for the video characteristics corresponding to the video to be played and the pre-download condition of the video to be played, it can be determined that the playing time of the video to be played is l, the pre-download code rate is br, and the pre-download ratio of the pre-download content in the video to be played is p, and then the remaining download time of the video to be played in the current network state can be calculated as
Figure BDA0002651247760000061
Wherein lreBwe is the current network of the video to be played for the remaining download durationThe state of the collaterals. At this time, it can be determined that the judgment condition that the current network state of the video to be played does not support smooth playing of the video to be played at the pre-download code rate is as follows:
Figure BDA0002651247760000062
wherein br0The lowest bit rate gear corresponding to the video to be played.
And S120, downloading the video to be played by adopting the target code rate gear.
Optionally, after the current network state of the video to be played does not support smooth playing of the video to be played at the pre-download code rate, and the corresponding target code rate gear which enables the video to be played to simultaneously meet the playing index requirement and the playing performance requirement is selected from the code rate gears matched with the current network state, the target code rate gear can be directly adopted to completely download the video to be played again in the current network state, and the video to be played is played synchronously, so that the playing smoothness of the video to be played is ensured.
In the technical scheme provided by this embodiment, for the video to be played after the pre-downloading is completed, it needs to be determined whether the current network state of the video to be played supports the smooth playing of the video to be played at the pre-downloading bitrate, and if the current network state does not support the smooth playing of the video to be played at the pre-downloading bitrate, it indicates that if the pre-downloading bitrate is still used to continue downloading the remaining content in the video to be played, the playing of the video to be played is stuck, so that the corresponding target bitrate is selected again from the bitrate gears matched with the current network state to re-download the video to be played, thereby realizing the bitrate reselection when the video to be played cannot be played smoothly at the pre-downloading bitrate, so that the video to be played is downloaded and played at the target bitrate gears, and can meet the requirements of the start playing index and the playing performance simultaneously, thereby avoiding the occurrence of playing stuck of the video to be played, the fast playing of the video to be played is ensured, and the playing smoothness of the video to be played is improved.
Example two
Fig. 2A is a flowchart of a video downloading method according to a second embodiment of the present invention, and fig. 2B is a schematic diagram of a video downloading process according to the second embodiment of the present invention. The embodiment is optimized on the basis of the embodiment. Specifically, as shown in fig. 2A, this embodiment explains in detail a specific process of selecting a target code rate step from code rate steps matched with a current network state.
Optionally, as shown in fig. 2A, the present embodiment may include the following steps:
s210, estimating the current network state of the video to be played according to the change of the corresponding historical network state of the historical video played forward when the historical video is actually downloaded.
Optionally, since when the video to be played is played at the current time, the plurality of historical videos played before the video to be played have already finished downloading and playing, and the real-time change of the network state has a certain change rule, so the embodiment firstly carries out forward search on the video to be played, further searching a plurality of historical videos which are played forward by the video to be played, taking the actual downloading speed of each historical video during actual downloading as the corresponding historical network state of the historical video during actual downloading, then analyzing the change condition of the corresponding historical network state of each historical video when the historical video is actually played so as to judge the change trend of the network state at the current moment, and then, the current network state of the video to be played is estimated so as to judge whether the current network state supports smooth playing of the video to be played at the pre-download code rate or not in the subsequent process, and the problem of pause in playing in the video playing process is avoided.
Exemplarily, if in video v0In the playing process, the video v can be finished according to the preset video playing sequence1To video vnIn the process of pre-downloading each video, the video to be played v is played at the momentkWhen k is less than or equal to n, the video v to be played can be determinedkThe history video played in the forward direction is video v1To video vk-1In between, at this time can be based on respective historical videos vi(i ═ {1, 2 …, k-1}) to determine each historical video viActual download rate siAt this time, the calculation formula of the current network state of the video to be played is as follows: bwek=fewma(si) i ═ 1, …, k-1. Wherein, bwekFor video v to be playedkCurrent network state of siFor video v to be playedkPrevious ith historical video viActual download rate of fewma(si) The method comprises the steps of carrying out mean processing on the actual downloading rate of the historical video by adopting an exponential weighted moving average algorithm, and estimating the video v to be playedkCurrent network state bwek
S220, responding to the fact that the current network state of the video to be played does not support smooth playing of the video to be played under the pre-download code rate, selecting a corresponding initial code rate gear from code rate gears matched with the current network state, wherein the initial code rate gear supports successful playing of the video to be played within the playing duration required by the playing index.
Optionally, after estimating the current network state of the video to be played, first of all, it is determined whether the current network state supports the smooth playing of the video to be played at the pre-download code rate, and the determination condition for whether the current network state supports the smooth playing of the video to be played at the pre-download code rate has been described in detail in the foregoing embodiment one.
Further, if the current network state of the video to be played does not support smooth playing of the video to be played at the pre-download code rate, it is described that if the pre-download code rate is used to continue downloading the remaining content in the video to be played except the pre-download content and playing the content, the playing is stuck, so in this embodiment, a new code rate gear needs to be selected from the code rate gear list of the video to be played again, the pre-download content of the video to be played at the pre-download code rate is discarded, and the newly selected code rate gear needs to be used to completely download the video to be played again. At this time, in order to avoid the pause problem of playing after the video to be played is continuously downloaded by adopting the pre-download code rate in the current network state, firstly, according to the network bandwidth corresponding to the current network state, a code rate gear matched with the current network state is selected from a code rate gear list of the video to be played, as shown in fig. 2B, that is, each code rate gear with a code rate value smaller than or equal to the network bandwidth in the current network state is selected from the code rate gear list of the video to be played as a code rate gear matched with the current network state, then, the play-on duration defined by the preset play-on index requirement is determined, the play-on duration represents the duration that a user can receive the video successfully play, that is, the video to be played is required to be successfully played within the play-on duration, so that the corresponding initial code rate gear needs to be continuously selected from the code rate gears matched with the current network state, the initial code rate gear can ensure that the video to be played is successfully played within the playing duration required by the playing index, namely when the video to be played is downloaded by adopting each initial code rate gear, the video to be played is ensured to be successfully played within the playing duration, so that the video to be played is ensured to be rapidly played on the basis of avoiding playing pause of the video to be played.
It can be understood that, in order to accurately select the corresponding initial code rate gear, the embodiment may calculate, for each code rate gear in the code rate gears matched with the current network state, a pre-download duration when the pre-download content in the video to be played is downloaded by using the code rate gear; and if the pre-download duration is less than or equal to the broadcasting duration required by the broadcasting index, taking the code rate gear as an initial code rate gear.
For example, the selection condition for selecting the initial code rate step from the code rate steps matched with the current network state may be:
Figure BDA0002651247760000101
wherein brjFor the selected initial bitrate level, bwe is the network bandwidth of the video to be played in the current network state, l is the playing duration of the video to be played, p is the pre-download percentage of the pre-downloaded content in the video to be played and the playing duration required by the playing index, so bwe is not less than brjRepresenting the code rate gear matching the current network state.
And S230, selecting a corresponding target code rate gear from the initial code rate gears, wherein the playing condition of the video to be played after the video to be played is downloaded by adopting the target code rate gear meets the requirement of playing performance.
Optionally, after the corresponding initial bitrate gear is selected from the bitrate gears matched with the current network state, because multiple bitrate gears may exist in the bitrate gears matched with the current network state, the video to be played can be successfully played within the playing duration required by the playing index, so that a corresponding target bitrate gear needs to be further selected from the initial bitrate gears, the target bitrate gear can enable the video to be played to meet the playing performance requirement, the playing performance requirement can be that the playing image quality of the video to be played at the target bitrate gear is optimal, or the downloading rate of the video to be played at the target bitrate gear is required to be fastest, and the like.
For example, in this embodiment, the selection condition for selecting the corresponding target code rate gear from the initial code rate gears may be: brtar={arg maxbrg (br) | br ∈ }; wherein brtarFor the selected target code rate gear, as the selection result of the initial code rate gear, br is any one of the initial code rate gears, and g (br) is the code rate gear selection algorithm required by the playing performance, so that the parameter br meeting the playing performance requirement can be obtained from g (br) by adopting an argmax function, and is used as the target code rate gear br in the embodiment.
And S240, downloading the video to be played by adopting the target code rate gear.
The technical solution provided in this embodiment estimates, for a video to be played after completing pre-downloading, a current network state of the video to be played by analyzing a change of a corresponding historical network state of a historical video played forward of the video to be played during actual downloading, so as to ensure accuracy of the current network state, and further determine whether the current network state of the video to be played supports smooth playing of the video to be played at a pre-downloading bitrate, if the current network state does not support smooth playing of the video to be played at the pre-downloading bitrate, a corresponding target bitrate gear is selected again from bitrate gears matched with the current network state to re-download the video to be played, so as to achieve bitrate reselection when the video to be played cannot be played smoothly at the pre-downloading bitrate gear, so that the video to be played can be downloaded and played at the target bitrate gear, and can simultaneously meet requirements of a play index and play performance, therefore, on the basis of avoiding the playing jam of the video to be played, the fast playing of the video to be played is ensured, and the playing smoothness of the video to be played is improved.
EXAMPLE III
Fig. 3 is a schematic structural diagram of a video downloading apparatus according to a third embodiment of the present invention, specifically, as shown in fig. 3, the apparatus may include:
a code rate gear reselection module 310, configured to select, in response to that a current network state of a video to be played does not support smooth playing of the video to be played at a pre-download code rate, a corresponding target code rate gear from code rate gears matched with the current network state, where the target code rate gear makes the video to be played meet a playing index requirement and a playing performance requirement at the same time;
and a video downloading module 320, configured to download the video to be played by using the target bitrate gear.
In the technical scheme provided by this embodiment, for the video to be played after the pre-downloading is completed, it needs to be determined whether the current network state of the video to be played supports the smooth playing of the video to be played at the pre-downloading bitrate, and if the current network state does not support the smooth playing of the video to be played at the pre-downloading bitrate, it indicates that if the pre-downloading bitrate is still used to continue downloading the remaining content in the video to be played, the playing of the video to be played is stuck, so that the corresponding target bitrate is selected again from the bitrate gears matched with the current network state to re-download the video to be played, thereby realizing the bitrate reselection when the video to be played cannot be played smoothly at the pre-downloading bitrate, so that the video to be played is downloaded and played at the target bitrate gears, and can meet the requirements of the start playing index and the playing performance simultaneously, thereby avoiding the occurrence of playing stuck of the video to be played, the fast playing of the video to be played is ensured, and the playing smoothness of the video to be played is improved.
The video downloading device provided by the embodiment can be applied to the video downloading method provided by any embodiment, and has corresponding functions and beneficial effects.
Example four
Fig. 4 is a schematic structural diagram of a server according to a fourth embodiment of the present invention, as shown in fig. 4, the server includes a processor 40, a storage device 41, and a communication device 42; the number of the processors 40 in the server may be one or more, and one processor 40 is taken as an example in fig. 4; the processor 40, the storage device 41 and the communication device 42 in the server may be connected by a bus or other means, and the bus connection is taken as an example in fig. 4.
The server provided by this embodiment can be used to execute the video downloading method provided by any of the above embodiments, and has corresponding functions and advantages.
EXAMPLE five
Fifth, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, can implement the method for downloading video in any of the above embodiments. The method specifically comprises the following steps:
responding to the situation that the current network state of a video to be played does not support smooth playing of the video to be played at a pre-download code rate, and selecting a corresponding target code rate gear when the video to be played simultaneously meets the playing index requirement and the playing performance requirement from code rate gears matched with the current network state;
and downloading the video to be played by adopting the target code rate gear.
Of course, the storage medium provided by the embodiment of the present invention contains computer-executable instructions, and the computer-executable instructions are not limited to the method operations described above, and may also perform related operations in the method for downloading video provided by any embodiment of the present invention.
From the above description of the embodiments, it is obvious for those skilled in the art that the present invention can be implemented by software and necessary general hardware, and certainly, can also be implemented by hardware, but the former is a better embodiment in many cases. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which can be stored in a computer-readable storage medium, such as a floppy disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a FLASH Memory (FLASH), a hard disk or an optical disk of a computer, and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device) to execute the methods according to the embodiments of the present invention.
It should be noted that, in the embodiment of the video downloading apparatus, the units and modules included in the apparatus are only divided according to functional logic, but are not limited to the above division as long as the corresponding functions can be implemented; in addition, specific names of the functional units are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present invention.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (13)

1. A method of video downloading, comprising:
responding to the situation that the current network state of a video to be played does not support smooth playing of the video to be played at a pre-download code rate, and selecting a corresponding target code rate gear when the video to be played simultaneously meets the playing index requirement and the playing performance requirement from code rate gears matched with the current network state;
and downloading the video to be played by adopting the target code rate gear.
2. The method of claim 1, wherein the current network status of the video to be played does not support smooth playback of the video to be played at a pre-download bitrate is: in the current network state of the video to be played, the remaining downloading time length is longer than the playing time length of the video to be played, the pre-downloading code rate is longer than the lowest code rate gear corresponding to the video to be played, and the remaining downloading time length is the time length when the remaining content except the pre-downloading content in the video to be played is downloaded by adopting the pre-downloading code rate.
3. The method of claim 2, wherein the condition that the current network status of the video to be played does not support smooth playing of the video to be played at a pre-download code rate is:
Figure FDA0002651247750000011
wherein br is the pre-download code rate of the video to be played, l is the playing time length of the video to be played, p is the pre-download occupation ratio of the pre-download content in the video to be played, bwe is the current network state of the video to be played, br0And the video to be played is the corresponding lowest code rate gear.
4. The method according to claim 2, wherein before selecting a corresponding target bitrate gear from the bitrate gears matched with the current network state to make the video to be played meet the playing index requirement and the playing performance requirement at the same time, the method further comprises:
and calculating the residual downloading duration of the video to be played in the current network state according to the playing duration and the pre-downloading code rate of the video to be played and the residual occupation ratio of the residual content except the pre-downloading content in the video to be played.
5. The method according to claim 1, wherein the selecting a corresponding target bitrate gear from the bitrate gears matched with the current network state to enable the video to be played to simultaneously meet the playing index requirement and the playing performance requirement comprises:
selecting a corresponding initial code rate gear from code rate gears matched with the current network state, wherein the initial code rate gear supports the successful playing of the video to be played within the playing time required by the playing index;
and selecting a corresponding target code rate gear from the initial code rate gears, wherein the playing condition of the video to be played after the video to be played is downloaded by adopting the target code rate gear meets the requirement of the playing performance.
6. The method of claim 5, wherein selecting the corresponding initial code rate step from the code rate steps matched with the current network state comprises:
aiming at each code rate gear in the code rate gears matched with the current network state, calculating the pre-downloading duration when the pre-downloading content in the video to be played is downloaded by adopting the code rate gear;
and when the pre-download duration is less than or equal to the broadcasting duration required by the broadcasting index, taking the code rate gear as the initial code rate gear.
7. The method of claim 5, wherein the initial code rate step is selected under the following conditions:
Figure FDA0002651247750000021
wherein br is the selection result of the initial code rate gearjFor the initial bitrate level, bwe is the current network state of the video to be played, i is the playing duration of the video to be played, and p is the pre-download percentage of the pre-download content in the video to be played and the playing duration required by the playing index.
8. The method according to claim 5, wherein the target code rate step is selected under the following conditions: brtar={arg maxbrg(br)|br∈};
Wherein brtarAnd g (br) is a code rate gear selection algorithm required by the playing performance.
9. The method according to any one of claims 1 to 8, wherein the code rate step matched with the current network state is a code rate step with a code rate value less than or equal to the network bandwidth in the current network state in the code rate step list of the video to be played.
10. The method according to any one of claims 1 to 8, wherein before selecting a corresponding target bitrate gear from the bitrate gears matched with the current network state, when the video to be played simultaneously meets the playing index requirement and the playing performance requirement, the method further comprises:
and estimating the current network state of the video to be played according to the change of the corresponding historical network state of the historical video played forward in the actual downloading process of the video to be played.
11. An apparatus for video downloading, comprising:
the code rate gear reselection module is used for responding that the current network state of the video to be played does not support the smooth playing of the video to be played at the pre-downloading code rate, and selecting a corresponding target code rate gear which enables the video to be played to simultaneously meet the playing index requirement and the playing performance requirement from the code rate gears matched with the current network state;
and the video downloading module is used for downloading the video to be played by adopting the target code rate gear.
12. A server, characterized in that the server comprises:
one or more processors;
storage means for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement a method for video downloading as recited in any of claims 1-10.
13. A computer-readable storage medium, on which a computer program is stored, which program, when being executed by a processor, is adapted to carry out a method for video downloading according to any one of claims 1-10.
CN202010874383.0A 2020-08-26 2020-08-26 Video downloading method, device, server and storage medium Active CN112019916B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010874383.0A CN112019916B (en) 2020-08-26 2020-08-26 Video downloading method, device, server and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010874383.0A CN112019916B (en) 2020-08-26 2020-08-26 Video downloading method, device, server and storage medium

Publications (2)

Publication Number Publication Date
CN112019916A true CN112019916A (en) 2020-12-01
CN112019916B CN112019916B (en) 2022-05-03

Family

ID=73502545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010874383.0A Active CN112019916B (en) 2020-08-26 2020-08-26 Video downloading method, device, server and storage medium

Country Status (1)

Country Link
CN (1) CN112019916B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112672186A (en) * 2020-12-09 2021-04-16 北京达佳互联信息技术有限公司 Video preloading method and device
CN112822521A (en) * 2020-12-30 2021-05-18 百果园技术(新加坡)有限公司 Code rate control method, device and equipment for audio and video transmission and storage medium
CN113784216A (en) * 2021-08-24 2021-12-10 咪咕音乐有限公司 Video jamming identification method and device, terminal equipment and storage medium
CN114363674A (en) * 2021-12-09 2022-04-15 北京快乐茄信息技术有限公司 Video playing method, device, terminal and storage medium
WO2022199347A1 (en) * 2021-03-24 2022-09-29 北京字跳网络技术有限公司 Video definition level determining method and apparatus, server, storage medium, and system

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003038638A1 (en) * 2001-10-26 2003-05-08 Ibiquity Digital Corporation Arbitrator system and method for national and local content distribution
US20140095943A1 (en) * 2012-09-28 2014-04-03 Tobias M. Kohlenberg Predictive precaching of data based on context
CN103905820A (en) * 2012-12-28 2014-07-02 中国科学院声学研究所 Client side video quality self-adaption method and system based on SVC
WO2015071464A1 (en) * 2013-11-18 2015-05-21 Softathome Method and system for pre-downloading video on demand
WO2017091961A1 (en) * 2015-11-30 2017-06-08 华为技术有限公司 Method of acquiring quality of experience information, and equipment and system
CN108337553A (en) * 2018-02-08 2018-07-27 深圳市兆驰股份有限公司 A kind of multi-medium data pre-download method
CN109218430A (en) * 2018-09-26 2019-01-15 深圳市网心科技有限公司 A kind of video file transfer method, system and electronic equipment and storage medium
CN110324680A (en) * 2018-03-30 2019-10-11 腾讯科技(深圳)有限公司 A kind of video pushing method, device and server, client, storage medium
CN111277867A (en) * 2020-03-03 2020-06-12 广州市百果园信息技术有限公司 Video downloading method, device, server and storage medium

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003038638A1 (en) * 2001-10-26 2003-05-08 Ibiquity Digital Corporation Arbitrator system and method for national and local content distribution
US20140095943A1 (en) * 2012-09-28 2014-04-03 Tobias M. Kohlenberg Predictive precaching of data based on context
CN103905820A (en) * 2012-12-28 2014-07-02 中国科学院声学研究所 Client side video quality self-adaption method and system based on SVC
WO2015071464A1 (en) * 2013-11-18 2015-05-21 Softathome Method and system for pre-downloading video on demand
WO2017091961A1 (en) * 2015-11-30 2017-06-08 华为技术有限公司 Method of acquiring quality of experience information, and equipment and system
CN108337553A (en) * 2018-02-08 2018-07-27 深圳市兆驰股份有限公司 A kind of multi-medium data pre-download method
CN110324680A (en) * 2018-03-30 2019-10-11 腾讯科技(深圳)有限公司 A kind of video pushing method, device and server, client, storage medium
CN109218430A (en) * 2018-09-26 2019-01-15 深圳市网心科技有限公司 A kind of video file transfer method, system and electronic equipment and storage medium
CN111277867A (en) * 2020-03-03 2020-06-12 广州市百果园信息技术有限公司 Video downloading method, device, server and storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A. KASHYAP ET AL.: "Efficient HD video streaming over the internet", 《PROCEEDINGS OF THE IEEE SOUTHEASTCON 2010 (SOUTHEASTCON)》 *
朱子荣: "P2P点播系统媒体缓冲区研究与实现", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑(月刊),2007年第03期》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112672186A (en) * 2020-12-09 2021-04-16 北京达佳互联信息技术有限公司 Video preloading method and device
CN112822521A (en) * 2020-12-30 2021-05-18 百果园技术(新加坡)有限公司 Code rate control method, device and equipment for audio and video transmission and storage medium
CN112822521B (en) * 2020-12-30 2023-04-25 百果园技术(新加坡)有限公司 Code rate control method, device, equipment and storage medium for audio and video transmission
WO2022199347A1 (en) * 2021-03-24 2022-09-29 北京字跳网络技术有限公司 Video definition level determining method and apparatus, server, storage medium, and system
CN113784216A (en) * 2021-08-24 2021-12-10 咪咕音乐有限公司 Video jamming identification method and device, terminal equipment and storage medium
CN114363674A (en) * 2021-12-09 2022-04-15 北京快乐茄信息技术有限公司 Video playing method, device, terminal and storage medium
CN114363674B (en) * 2021-12-09 2024-02-09 北京快乐茄信息技术有限公司 Video playing method, device, terminal and storage medium

Also Published As

Publication number Publication date
CN112019916B (en) 2022-05-03

Similar Documents

Publication Publication Date Title
CN112019916B (en) Video downloading method, device, server and storage medium
CN111277867B (en) Video downloading method, device, server and storage medium
CN110198495B (en) Method, device, equipment and storage medium for downloading and playing video
CN110933517B (en) Code rate switching method, client and computer readable storage medium
AU2019310340A1 (en) Dynamic topology generation for branching narratives
EP2659387B1 (en) Predictive software streaming
US20120163771A1 (en) Method, system, user equipment, and server equipment for video file playback
CN106658226B (en) Playing method and device
WO2020192275A1 (en) Live broadcast playback video generation method, device and apparatus
WO2017113705A1 (en) Method for improving playing starting speed, video player, and electronic device
CN112672186B (en) Video preloading method and device
CN111447471A (en) Model generation method, play control method, device, equipment and storage medium
US20220401836A1 (en) Method for playing on a player of a client device a content streamed in a network
US10700915B2 (en) Method for streaming an audio video content
US20220191260A1 (en) Method for playing on a player of a client device a content streamed in a network
US20230396845A1 (en) Method for playing on a player of a client device a content streamed in a network
CN112243136A (en) Content playing method, video storage method and equipment
US20160234279A1 (en) Site-based server selection
CN112954409B (en) Video downloading method, device, server and storage medium
US20230237268A1 (en) One-click filmmaking
JP5267475B2 (en) Information communication system, node device, information communication method, and information communication program
CN115811631A (en) Video playing control method and device, electronic device and storage medium
CN114218401A (en) Entity linking method and device based on unsupervised multi-instance learning
US20160248694A1 (en) Communication apparatus, communication system, and communication method

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20221207

Address after: 31a, 15 / F, building 30, maple mall, bangrang Road, Brazil, Singapore

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: 511402 5-13 / F, West Tower, building C, 274 Xingtai Road, Shiqiao street, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right