CN112019916A - Video downloading method, device, server and storage medium - Google Patents
Video downloading method, device, server and storage medium Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/442—Monitoring 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/4424—Monitoring 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/647—Control 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/64723—Monitoring of network processes or resources, e.g. monitoring of network load
- H04N21/64738—Monitoring 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
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 asWherein 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: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: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:
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:
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.
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)
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)
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 |
-
2020
- 2020-08-26 CN CN202010874383.0A patent/CN112019916B/en active Active
Patent Citations (9)
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)
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)
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 |