CN112954409B - Video downloading method, device, server and storage medium - Google Patents
Video downloading method, device, server and storage medium Download PDFInfo
- Publication number
- CN112954409B CN112954409B CN202110349102.4A CN202110349102A CN112954409B CN 112954409 B CN112954409 B CN 112954409B CN 202110349102 A CN202110349102 A CN 202110349102A CN 112954409 B CN112954409 B CN 112954409B
- Authority
- CN
- China
- Prior art keywords
- video
- played
- downloading
- playing
- progress
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000004590 computer program Methods 0.000 claims description 3
- 230000000903 blocking effect Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 14
- 238000012549 training Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000007704 transition Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2407—Monitoring of transmitted content, e.g. distribution time, number of downloads
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23116—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving data replication, e.g. over plural servers
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26216—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The embodiment of the invention discloses a video downloading method, a video downloading device, a server and a storage medium. Wherein the method comprises the following steps: if the downloading progress of the currently played video supports smooth playing of the currently played video and pre-downloading of a video set to be played associated with the currently played video, judging whether the video set to be played has the video which is not completely opened for pre-downloading; if not, iterating the pre-downloading of the video set to be played according to the pre-downloading additional proportion predicted for each video in the video set to be played until the downloading progress does not support smooth playing of the video to be played, and suspending the pre-downloading of the video set to be played. According to the technical scheme provided by the embodiment of the invention, on the basis of realizing efficient video playing, the pre-downloading amount of each video in the video set to be played is further increased by using sufficient network bandwidth, so that the smoothness of video playing in the video set to be played is improved, and playing blocking during video switching playing is avoided.
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 downloading video.
Background
With the rapid development of internet technology, various video playing applications are more and more widely popularized in daily life of people, at this time, when a user continuously watches various videos with high definition image quality, if the network transmission rate is unstable or the network bandwidth is insufficient, the user needs to wait for a certain buffer time from clicking to play the video, the video can be played, and especially for the playing of short videos, the tolerance of the user to the on-stream waiting time is limited, so that the watching experience of the user can be directly influenced.
At present, in order to quicken video playing, a plurality of videos to be played later are downloaded in advance in the playing process of the current video, if a mode of completely pre-downloading a next video after the current video is downloaded is adopted to download the plurality of videos later in advance, if a user does not interest the pre-downloaded video and directly slides away to play other videos, the played videos are not downloaded in advance, and the watching experience of the user is still affected; if a part of each video is pre-downloaded to download a plurality of videos to be played later in advance, the bandwidth of the user is dithered, and the situation of playing clamping caused by the reduced bandwidth after the video is switched to play is also caused, so that the watching experience of the user is affected.
Disclosure of Invention
The embodiment of the invention provides a video downloading method, a video downloading device, a server and a storage medium, which ensure the pre-downloading of a video set to be played and improve the fluency of video playing on the basis of realizing the efficient video playing.
In a first aspect, an embodiment of the present invention provides a method for downloading video, where the method includes:
if the downloading progress of the currently played video supports smooth playing of the currently played video and pre-downloading of a video set to be played associated with the currently played video, judging whether the video set to be played has a video which is not completely opened for pre-downloading;
if not, iteratively pre-downloading the video set to be played according to the pre-downloading additional proportion predicted for each video in the video set to be played until the downloading progress does not support smooth playing of the video which is currently played, and suspending the pre-downloading of the video set to be played.
In a second aspect, an embodiment of the present invention provides a video downloading apparatus, including:
the on-stream pre-download judging module is used for judging whether an unfinished on-stream pre-downloaded video exists in a video set to be played or not if the downloading progress of the currently played video supports smooth playing of the currently played video and pre-downloading of the video set to be played associated with the currently played video;
and the video downloading module is used for iteratively pre-downloading the video set to be played according to the pre-downloading additional proportion predicted for each video in the video set to be played if not, and suspending the pre-downloading of the video set to be played until the downloading progress does not support the smooth playing of the video to be played currently.
In a third aspect, an embodiment of the present invention provides a server, including:
one or more processors;
a storage means for storing one or more programs;
the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the method for video downloading according to any embodiment of the present invention.
In a fourth aspect, embodiments of the present invention provide a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements a method for video downloading according to any embodiment of the present invention.
According to the video downloading method, device, server and storage medium provided by the embodiment of the invention, if the downloading progress of the currently-played video supports smooth playing of the currently-played video and the pre-downloading of the video to be played set associated with the currently-played video, the current network bandwidth is sufficient, after the video in the video to be played set is completely pre-downloaded, according to the pre-downloading addition proportion predicted for each video in the video to be played set, the pre-downloading of each video in the video to be played set is continuously added in an iterative mode on the basis of completing the pre-downloading of the opening, so that the pre-downloading amount of each video in the video to be played set is further increased by using sufficient network bandwidth on the basis of realizing efficient opening of the video, the smoothness of video playing in the video to be played set is improved, playing blocking during video switching playing is avoided until the downloading progress of the currently-played video does not support the smoothness of the video to be played, the pre-downloading of the video to be played set is suspended, the smoothness of the video to be played is guaranteed, and the blocking of playing of the currently-played video is avoided.
Drawings
Other features, objects and advantages of the present invention will become more apparent upon reading of the detailed description of non-limiting embodiments, made with reference to the accompanying drawings in which:
FIG. 1A is a flowchart of a method for downloading video according to a first embodiment of the present invention;
fig. 1B is a schematic diagram of a video downloading process according to a first embodiment of the present invention;
fig. 2A is a flowchart of a method for downloading video 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 device 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 invention is described in further detail below with reference to the drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting thereof. It should be further noted that, for convenience of description, only some, but not all of the structures related to the present invention are shown in the drawings. Furthermore, embodiments of the invention and features of the embodiments may be combined with each other without conflict.
Example 1
Fig. 1A is a flowchart of a method for downloading video according to an embodiment of the present invention, where the embodiment is applicable to a situation where a plurality of associated videos are played in any service scenario. The video downloading method provided by the embodiment of the invention can be implemented by the video downloading device provided by the embodiment of the invention, the device can be implemented in a software and/or hardware mode, and the video downloading device is integrated in a server for implementing the method, and the server can be a background server participating in video data downloading.
Specifically, referring to fig. 1A, the method may include the steps of:
s110, if the downloading progress of the currently played video supports smooth playing of the currently played video and pre-downloading of a video set to be played associated with the currently played video, judging whether the video set to be played has the video which is not completely pre-downloaded in the open mode.
Specifically, when the user continuously plays each associated video, in order to avoid video playing jamming as much as possible, the user will choose to download the video in advance before playing the video, so there may be two situations that the video has been completely downloaded and only a part of the video has not been completely downloaded during video playing, for example, if the user frequently switches the operation of video playing, the user switches to the next video after only a small part of the video before switching is played, and at this time, the switched video may only download a part of the video and not have been completely downloaded locally; and processing the video which is not downloaded in a manner of playing the video at the same time so as to avoid the subsequent playing and clamping of the video.
In this embodiment, in order to avoid the problem that the video playing time is long because the video playing time is longer because the video playing operation of the current switching playing is not longer than the video playing operation of the current switching playing when the video playing operation of the user is frequent, the number of videos to be downloaded in advance can be set to be a plurality of videos instead of downloading the next playing video in advance when the video to be played subsequently is downloaded in advance in the playing process of the current playing video, so that a plurality of videos to be played after the current playing video can be found out according to the set video playing sequence first, and a video to be played set associated with the current playing video in this embodiment is formed, and then each video in the video to be played in the video set to be played can be selected to be downloaded in advance in the playing process of the current playing video, so as to ensure efficient playing and smooth playing of each video in the video to be played.
In order to avoid the play jam of the current playing video, the embodiment can analyze in real time whether the download state of the current playing video can ensure smooth play of the current playing video, and can selectively pause the pre-download of the video set to fully download the current playing video by adopting all network bandwidths when the smooth play of the current playing video cannot be ensured, so that the download priority of the current playing video is realized, and therefore, the download progress of the current playing video needs to be determined in real time in the play process of the current playing video, so as to analyze whether the download progress can ensure smooth play of the current playing video and avoid the play jam of the current playing video.
It should be noted that, in this embodiment, smooth playing of the currently playing video may require that the playing content of the currently playing video, which needs to be played at the current time, is already downloaded at the previous time, that is, the remaining playable duration of the currently playing video is greater than the preset smooth playing lower limit, where the remaining playable duration of the currently playing video refers to the duration of the currently playing video, which is currently already downloaded and not yet played, that is, the difference between the downloading progress and the playing progress of the currently playing video at the current time, and the preset smooth playing lower limit is the minimum duration of allowable smooth playing, which is already downloaded in the currently playing video. For example, the preset fluency playing lower limit in the present embodiment may be configured by using an online service experiment, for example, an online AB experiment, etc.
Further, in order to ensure the pre-downloading efficiency of the video set to be broadcast, in this embodiment, after determining that the downloading progress of the currently playing video supports smooth playing of the currently playing video, it is further required to analyze whether the downloading progress of the currently playing video can support pre-downloading of the video set to be broadcast, that is, determine whether the difference between the remaining playable duration of the currently playing video and the preset smooth playing lower limit is greater than the remaining duration of the video set to be broadcast, if so, it indicates that there is sufficient time to complete the pre-downloading of the video set to be broadcast on the basis that the remaining playable duration of the currently playing video satisfies the smooth playing of the currently playing video by using the preset smooth playing lower limit.
Optionally, in the playing process of the currently playing video, because the currently playing video is played while being downloaded, it is required to determine the downloading progress of the currently playing video in real time, then determine whether the downloading progress of the currently playing video supports smooth playing of the currently playing video and pre-downloading of the video to be played set in the above manner, if the difference between the remaining playable time of the currently playing video and the preset smooth playing lower limit is greater than the remaining downloading time of the video to be played set, it is indicated that sufficient network bandwidth exists, and the downloading of the video to be played set can be further supported while the smooth playing of the currently playing video is supported, and considering that on the basis of ensuring the smooth playing of each video in the video to be played set, it is required to ensure that each video in the video to be played set can be quickly opened first, therefore, in the embodiment needs to determine the open pre-downloading condition of each video in the video to be played set after determining the downloading progress of the currently playing video and the pre-downloading of the video to be played set, that whether the video to be played in the video to be played set has not been completely started is determined, that the video to be completely downloaded in the video to be played set has been completely, and the pre-downloading condition of each video to be played is continued.
It should be noted that, in this embodiment, the pre-downloading of the video in advance refers to that a pre-downloading amount capable of meeting the requirement of fast playing of each video in the video set to be played can be preset, and if a certain video in the video set to be played completes the pre-downloading of the video in advance, the pre-downloading amount is already downloaded for the video in advance, so that the video can be fast played.
In addition, since the pre-downloading of all videos in the video set to be broadcast is not required to be completed at one time when each video in the video set to be broadcast is pre-downloaded, each video in the video set to be broadcast can be pre-downloaded for multiple times according to the change of the current network state, so that in order to improve the pre-downloading efficiency of the video set to be broadcast, when judging whether the downloading progress of the currently played video supports the pre-downloading of the video set to be broadcast, in this embodiment, the video with a smaller pre-downloading amount can be determined to be the currently appointed currently pre-downloaded video according to the pre-downloading condition of each video in the video set to be broadcast, and at this time, the remaining downloading time of the video set to be broadcast can be set to be the remaining downloading time of the currently pre-downloaded video in the video set to be broadcast, thereby increasing the pre-downloading adaptive range of the current network bandwidth and improving the pre-downloading efficiency of the video set to be broadcast.
And S120, if not, iterating the pre-downloading of the video set to be played according to the pre-downloading additional proportion predicted for each video in the video set to be played until the downloading progress does not support smooth playing of the video currently played, and suspending the pre-downloading of the video set to be played.
Optionally, if it is determined that there is no video in the video set to be played and pre-downloaded is not completed, it is indicated that each video in the video set to be played has completed the pre-downloading, that is, each video in the video set to be played can be ensured to be played quickly, so in order to further improve the smoothness of the subsequent playing of each video in the video set to be played, the embodiment may analyze the playing preference of each video in the video set to be played by the user through the user history playing behavior and the playing preference, further predict the pre-downloading additional proportion of each video in the video set to be played, then continue to sequentially add the pre-downloading of each video on the basis of the completed pre-downloading of each video in the video set to be played according to the pre-downloading additional proportion of each video in the video set to be played, and repeatedly execute iterative pre-downloading of the video set to be played, on the basis of smooth playing of the current playing video, the sufficient network bandwidth is utilized to continuously pre-download each video in the video to be played set until the downloading progress of the current playing video does not support smooth playing of the current playing video, namely, when the current network bandwidth is low, the pre-downloading of the video to be played set is paused, so that the current playing video is downloaded by adopting the whole network bandwidth to ensure the fast downloading of the current playing video, more well-downloaded playing contents can exist in the current playing video to realize smooth playing, at the moment, each video in the video to be played set is always in a pre-downloading pause state, the downloading progress of the current playing video is continuously determined in real time until the downloading progress of the current playing video supports the smooth playing of the current playing video and the pre-downloading of the video to be played set again, and then the current playing video is continuously downloaded, and continuing to iteratively pre-download the video set to be played according to the pre-download additional proportion of each video in the video set to be played again, so that the state of whether the video set to be played is pre-downloaded is continuously updated in real time according to the downloading progress of the video to be played currently, and accordingly the pre-downloading of each video in the video set to be played is realized on the basis of ensuring smooth playing of the video to be played currently, and play clamping and stopping of each video in the video set to be played subsequently are avoided.
It should be noted that, in this embodiment, the downloading progress of the currently playing video does not support smooth playing of the currently playing video, and the remaining playable duration of the currently playing video may be less than or equal to the preset smooth playing lower limit.
By way of example, the present embodiment sets a transition interval with a length equal to the remaining download duration of the video set to be played, the transition interval lower limit being the sum of the preset fluent download duration and the remaining download duration of the video set to be played, if the remaining playable duration of the currently played video is still longer than the remaining download duration of the video set to be played after subtracting the preset fluent download limit, that is, the remaining playable duration of the currently played video is longer than the remaining download duration of the video set to be played after subtracting the preset fluent download limit, that is, if the remaining playable duration exceeds the transition interval upper limit, the iterative pre-downloading of the video set to be played is started, and then if the subsequent remaining playable duration is continuously reduced, the pre-downloading state of the video set to be played is still maintained until the preset fluent download is reduced, and then the remaining playable duration is not changed until the current window is continuously changed, and the current window is not continuously opened until the transition period is started, and avoiding the pre-downloading error of the video set to be played.
In addition, since when the currently playing video is just switched to play from the last playing video, the video set to be played will delete the earliest video relative to the last playing video and add a new video, at this time, the newly added video is not subjected to any open pre-download, and other videos may have already been subjected to open pre-download in the playing process of the last playing video, so the open pre-download states of the videos in the video set to be played may be different, and after judging whether there is a video with incomplete open pre-download in the video set to be played, the embodiment may further include: if yes, pre-downloading the video which is not downloaded in the pre-opening mode in the video set to be played according to the target opening time length. In other words, considering that the priority of each video in the video set to be played is higher than that of the video set to be played smoothly, when the video set to be played has the video which is not yet pre-downloaded in the playing, firstly, estimating the target playing time of the video set to be played based on the playing time of the video which is currently played and the downloading parameters, and then respectively pre-downloading the video which is not yet pre-downloaded in the video set to be played according to the target playing time, so that the quick playing of each video in the video set to be played is ensured.
It should be noted that, for the estimation of the target open time period, the present embodiment may refer to the network change state of the currently playing video in the downloading process to predict the network state of the video set to be played in the downloading process, first determine the open time period of the currently playing video, and download parameters such as the video code rate and the download rate of the currently playing video in the current open time period, so as to analyze the change situation of the current network state according to the open time period and the download parameters, and determine the remaining video data amount of the currently pre-downloaded video in the video set to be played that is not yet downloaded at the current time, and further estimate the remaining download time period of the video set to be played according to the network state and the remaining download data amount, so as to subsequently determine whether the difference between the remaining playable time period of the currently playing video and the preset fluent broadcast lower limit is greater than the remaining download time period of the video set to be played, thereby determining whether the download progress of the currently playing video set to support the pre-download of the video set to be played.
According to the technical scheme provided by the embodiment, if the downloading progress of the currently played video supports smooth playing of the currently played video and the pre-downloading of the to-be-played video set related to the currently played video, the current network bandwidth is sufficient, after the videos in the to-be-played video set are all in open pre-downloading, according to the pre-downloading addition proportion predicted for each video in the to-be-played video set, the pre-downloading of each video in the to-be-played video set is continuously added in an iterative mode on the basis of completing open pre-downloading, so that the pre-downloading amount of each video in the to-be-played video set is further increased by using the sufficient network bandwidth on the basis of realizing efficient video open, the smoothness of video playing in the to-be-played video set is improved, play jamming during video switching play is avoided until the downloading progress of the currently played video does not support smooth playing of the currently played video, the pre-downloading of the to-be-played video set is paused, the smooth playing priority of the currently played video is ensured, and play jamming of the currently played video is avoided.
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 a second embodiment of the present invention. This embodiment is optimized based on the above embodiment. Specifically, as shown in fig. 2A, the present embodiment explains in detail a specific iterative process of pre-downloading a video set to be played according to a pre-downloading additional proportion of each video in the video set to be played.
Optionally, as shown in fig. 2A, the present embodiment may include the following steps:
s210, if the downloading progress of the currently played video supports smooth playing of the currently played video and pre-downloading of a video set to be played associated with the currently played video, judging whether the video set to be played has a video which is not completely pre-downloaded by open playing, and if not, executing S220; if yes, execution proceeds to S250.
S220, predicting the complete playing progress of each video in the video set to be played according to the historical playing progress and the video type of the historical playing video.
Optionally, the pre-download additional proportion referred when the additional pre-download is performed on each video in the video set to be played after the pre-download is completed can be predicted by analyzing the viewing preference of the user for each video in the video set to be played, for example, the user is likely to directly slide away and not view the video which is not interested, so that the user does not need to excessively pre-download the video, and the user views the video which is interested for a longer time, so that more pre-downloads the video are needed to avoid playing and blocking, so that the pre-download additional proportion of each video can be predicted by analyzing the viewing preference of the user for each video in the video set to be played, and the pre-download additional proportion of each video is proportional to the viewing preference of the user for the video.
In this embodiment, the viewing preference degree of the user for each video in the video set to be played may be represented by predicting the complete playing progress of the video in the video set to be played, at this time, the video type and the specific interest degree of the user may be determined by analyzing the historical playing progress and the video type of a large number of historical playing videos watched by the user, and further, the interest degree of the user for each video in the video set to be played may be determined by analyzing the video type of the video in the video set to be played, so as to predict the complete playing progress of the video in actual playing, so that the pre-download additional proportion of each video may be analyzed according to the complete playing progress of each video in the video set to be played later.
For example, the present embodiment may predict the complete playing progress of each video in the video set to be played when actually playing through a pre-trained progress prediction timing network, where the progress prediction timing network may be a Long Short-Term Memory (LSTM) network or a gating cycle unit (Gated Recurrent Unit) model modified by the LSTM network.
It should be noted that, in this embodiment, a large number of historical playing videos played by different users in the historical playing process may be obtained as training samples, each training sample may determine the final playing progress in actual viewing, and be used as a sample tag of the training sample, and then a large number of training samples and sample tags of the training samples are used to train the progress prediction timing network continuously, so that the progress prediction timing network may basically ensure the accuracy of the prediction of the complete playing progress of each video in the video set to be played in actual playing. Then, after the trained progress prediction timing network is applied to the online service of playing the video of each user, in the process of playing the video by the user, aiming at the current playing video designated by each playing, as shown in fig. 2B, each history playing video played by the user before the current playing video is used as input of the progress prediction timing network, so as to analyze the history playing progress and video type of each history playing video, and then predict the complete playing progress of each video in the video set to be played in actual playing.
In addition, because the progress prediction time sequence network of offline training adopts historical playing videos of different users as training samples, the playing progress prediction capability of the trained users cannot accurately represent the specific watching preference of a certain user, when the trained progress prediction time sequence network is adopted on the line to predict the complete playing progress of each video in the video set to be played watched by the current user in actual playing, the progress prediction time sequence network can be predicted and optimized according to the complete playing progress and the actual playing progress of each video in the video set to be played, namely, the video actually played by the current user is adopted as the training samples, and the progress prediction time sequence network is continuously updated in a personalized way of the current user according to the difference between the predicted complete playing progress and the actual playing progress, so that the progress prediction time sequence network can be continuously updated into a personalized model of the current user from a general model, and the prediction accuracy of the complete playing progress of each video in the video set to be played is improved.
S230, calculating the pre-downloading additional proportion of each video in the video set to be played according to the complete playing progress of the video.
Optionally, because the complete playing progress of each video in the video set to be played can represent the viewing preference of the current user for the video, considering that when each video in the video set to be played is pre-downloaded, the pre-downloading amount of each video in the video set to be played needs to be ensured to be relatively balanced, so that the video set to be played can be playedThe ratio of the complete playing progress of each video in the video set to the complete playing progress of the video set to be played after synthesis is taken as the pre-downloading additional ratio of the video, for example, if the complete playing progress of each video in the video set to be played is predicted to be [ P ] 1 、P 2 、P 3 ]The pre-download additional proportion of each video in the video set to be played isy i And adding a proportion for pre-downloading of the ith video in the video set to be played.
S240, according to the predicted pre-download additional proportion for each video in the video set to be played, based on the pre-download iteration times and the video playing sequence of each video in the video set to be played, performing iterative pre-download of the video set to be played until the downloading progress does not support smooth playing of the video which is currently played, and suspending the pre-download of the video set to be played.
In this embodiment, when the pre-download additional proportion of each video in the video set to be broadcast is predicted, and then the pre-download amount of each video is added according to the pre-download additional proportion of each video, in order to ensure the pre-download balance of each video in the video set to be broadcast, the number of pre-download iterations of each video in the video set to be broadcast that has been completed is analyzed first, and the number of pre-download iterations can approximately represent the pre-download amount of each video, so when the video set to be broadcast is iterated and pre-downloaded, firstly, the pre-download amount of each video with smaller number of pre-download iterations is added according to the size of the number of pre-download iterations of each video in the video set to be broadcast, then the pre-download amount of each video with larger number of pre-download iterations is added, and for a plurality of videos with the same number of pre-download iterations, the pre-download amount of each video can be sequentially added according to the video playing sequence set during video association playing.
Specifically, in this embodiment, the target video in the video set to be broadcast may be controlled to be preliminarily pre-downloaded according to the pre-download additional proportion of the target video according to the pre-download iteration number of each video in the video set to be broadcast, so that the pre-download iteration number of each video in the video set to be broadcast is the same, the target video is not the highest video in the video set to be broadcast, and the target video needs to be pre-downloaded according to the pre-download iteration number from small to large in sequence according to the pre-download additional proportion of each target video, so that the pre-download iteration number of each video in the video set to be broadcast is the same. Then, after the pre-downloading iteration times of each video in the video set to be broadcast are the same, the iterative pre-downloading of the video set to be broadcast can be executed according to the video playing sequence of each video in the video set to be broadcast, namely, each video in the video set to be broadcast is executed once according to the video playing sequence, if the current network bandwidth is still sufficient, each video in the video set to be broadcast is executed once again according to the video playing sequence, and the iterative pre-downloading of the video set to be broadcast is realized in a sequential cycle until all videos in the video set to be broadcast can be completely pre-downloaded.
For example, if [ x4, x5, x6]3 videos exist in the video set to be played, the iterative pre-downloading frequency of x4 is 4, the iterative pre-downloading frequency of x5 is 3, the iterative pre-downloading frequency of x6 is 2, then the target videos are x5 and x6, and because the iterative pre-downloading frequency of x6 is minimum, the pre-downloading frequency of x6 is firstly carried out according to the pre-downloading additional proportion of x6, the iterative pre-downloading frequency of x5 and x6 becomes 3, and because x5 is played before x6, the iterative pre-downloading frequency of x5 can be carried out according to the pre-downloading additional proportion of x5, the iterative pre-downloading frequency of x6 is carried out once again according to the pre-downloading additional proportion of x6, at this time, the iterative pre-downloading frequencies of x4, x5 and x6 can all become 4, and then the iterative pre-downloading frequency of x6 are carried out according to the video playing sequence preset when the video is associated with the video, when the current network bandwidth is sufficient, the video is to be played once, the pre-downloading frequency of each video is carried out in the video set to be played in the video set to be more than once, the current bandwidth is not sufficient, the current video set to be played repeatedly, and the video set to be played in the video set to be played is not played in the iteration process is carried out repeatedly.
S250, pre-downloading the video which is not completely pre-downloaded in the video set to be played according to the target duration of the opening.
According to the technical scheme provided by the embodiment, if the downloading progress of the currently played video supports smooth playing of the currently played video and the pre-downloading of the to-be-played video set related to the currently played video, the current network bandwidth is sufficient, after the video in the to-be-played video set is completely pre-downloaded, according to the pre-downloading addition proportion predicted for each video in the to-be-played video set, the pre-downloading of each video in the to-be-played video set is continuously added in an iterative mode on the basis of completing the pre-downloading of the opening, so that the pre-downloading amount of each video in the to-be-played video set is further increased by using the sufficient network bandwidth on the basis of realizing efficient opening of the video, the smoothness of video playing in the to-be-played video set is improved, play blocking during video switching playing is avoided until the downloading progress of the currently played video does not support smooth playing of the currently played video, the pre-downloading of the to-played video set is paused, the smooth playing priority of the currently played video set is ensured, and play blocking of the currently played video is avoided; meanwhile, according to the pre-downloading iteration times and the video playing sequence of each video in the video set to be played, the sequence of each video in the video set to be played during iterative pre-downloading is controlled, and the pre-downloading balance of each video in the video set to be played can be further ensured.
Example III
Fig. 3 is a schematic structural diagram of a video downloading device according to a third embodiment of the present invention, and specifically, as shown in fig. 3, the device may include:
an on-air pre-download judging module 310, configured to judge whether an unfinished on-air pre-downloaded video exists in a video set to be played if a downloading progress of a currently played video supports smooth playing of the currently played video and pre-downloading of the video set to be played associated with the currently played video;
and the video downloading module 320 is configured to iteratively pre-download the video set to be played according to the pre-download additional proportion predicted for each video in the video set to be played if not, until the downloading progress does not support smooth playing of the currently played video, and pause the pre-downloading of the video set to be played.
According to the technical scheme provided by the embodiment, if the downloading progress of the currently played video supports smooth playing of the currently played video and the pre-downloading of the to-be-played video set related to the currently played video, the current network bandwidth is sufficient, after the videos in the to-be-played video set are all in open pre-downloading, according to the pre-downloading addition proportion predicted for each video in the to-be-played video set, the pre-downloading of each video in the to-be-played video set is continuously added in an iterative mode on the basis of completing open pre-downloading, so that the pre-downloading amount of each video in the to-be-played video set is further increased by using the sufficient network bandwidth on the basis of realizing efficient video open, the smoothness of video playing in the to-be-played video set is improved, play jamming during video switching play is avoided until the downloading progress of the currently played video does not support smooth playing of the currently played video, the pre-downloading of the to-be-played video set is paused, the smooth playing priority of the currently played video is ensured, and play jamming of the currently played video is avoided.
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 IV
Fig. 4 is a schematic structural diagram of a server according to a fourth embodiment of the present invention, and as shown in fig. 4, the server includes a processor 40, a storage device 41 and a communication device 42; the number of processors 40 in the server may be one or more, one processor 40 being 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, for example by a bus connection in fig. 4.
The server provided by the embodiment can be used for executing the video downloading method provided by any embodiment, and has corresponding functions and beneficial effects.
Example five
The fifth embodiment of the present invention further provides a computer readable storage medium having a computer program stored thereon, where the program when executed by a processor can implement the method for downloading video in any of the above embodiments.
Of course, the storage medium containing the computer executable instructions provided in the embodiments of the present invention is not limited to the above-described method operations, and may also perform the related operations in the video downloading method provided in any embodiment of the present invention.
From the above description of embodiments, it will be clear to a person skilled in the art that the present invention may be implemented by means of software and necessary general purpose hardware, but of course also by means of hardware, although in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product, which may be stored in a computer readable storage medium, such as a floppy disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a FLASH Memory (FLASH), a hard disk or an optical disk of a computer, etc., and include several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method according to the embodiments of the present invention.
It should be noted that, in the embodiment of the video downloading apparatus, each unit and module included are only divided according to the functional logic, but not limited to the above-mentioned division, so long as the corresponding functions can be implemented; in addition, the specific names of the functional units are also only for distinguishing from each other, and are not used to limit the protection scope of the present invention.
The above description is only of the preferred embodiments of the present invention and is not intended to limit the present invention, and various modifications and variations may be made to the present invention by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (8)
1. A method of video downloading, comprising:
if the difference between the residual playable time length of the currently played video and the preset fluent playing lower limit is greater than the residual downloading time length of the video to be played set associated with the currently played video, judging whether the video to be played set has the video which is not yet pre-downloaded in the open mode; the residual playable duration of the current playing video is the difference between the downloading progress and the playing progress of the current playing video at the current moment, and the residual downloading duration of the video to be played set is the residual downloading duration of the current pre-downloaded video in the video to be played set;
if not, predicting the complete playing progress of each video in the video set to be played according to the historical playing progress and the video type of the historical playing video, calculating the pre-downloading additional proportion of each video in the video set to be played according to the complete playing progress of each video in the video set to be played, controlling the target video in the video set to be pre-downloaded according to the pre-downloading additional proportion of each video in the video set to be played according to the pre-downloading iteration number of each video in the video set to be played, so that the pre-downloading iteration number of each video in the video set to be played is the same, executing the iterative pre-downloading of the video set to be played according to the video playing sequence of each video in the video set to be played until the residual playable duration of the current playing video is less than or equal to the preset smooth playing lower limit, and suspending the pre-downloading of the video set to be played.
2. The method of claim 1, wherein the complete progress of playing each video in the set of videos to be played is predicted by a pre-trained progress prediction timing network.
3. The method according to claim 2, wherein the method further comprises:
and according to the predicted complete playing progress and the actual playing progress of each video in the video set to be played, predicting and optimizing the progress prediction time sequence network.
4. A method according to any of claims 1-3, further comprising, after determining whether there is an incomplete on-air pre-download video in the set of videos to be broadcast:
if yes, pre-downloading the video which is not completely pre-downloaded in the video set to be played according to the target duration of the opening.
5. The method of claim 4, further comprising, prior to determining whether there is an incomplete on-air pre-download video in the set of videos to be broadcast:
and estimating the target on-time of the video set to be played based on the on-time of the currently played video and the downloading parameters.
6. An apparatus for video downloading, comprising:
the on-stream pre-download judging module is used for judging whether an unfinished on-stream pre-downloaded video exists in the to-be-played video set or not if the difference between the residual playable time length of the currently played video and the preset fluent playing lower limit is larger than the residual download time length of the to-be-played video set associated with the currently played video; the residual playable duration of the current playing video is the difference between the downloading progress and the playing progress of the current playing video at the current moment, and the residual downloading duration of the video to be played set is the residual downloading duration of the current pre-downloaded video in the video to be played set;
and the video downloading module is used for predicting the complete playing progress of each video in the video set to be played according to the historical playing progress and the video type of the historical playing video if not, calculating the pre-downloading additional proportion of each video in the video set to be played according to the complete playing progress of each video in the video set to be played, controlling the target video in the video set to be pre-downloaded according to the pre-downloading additional proportion of each video in the video set to be played according to the pre-downloading iteration number of each video in the video set to be played, so that the pre-downloading iteration number of each video in the video set to be played is the same, executing the iterative pre-downloading of the video set to be played according to the video playing sequence of each video in the video set to be played until the residual playable duration of the current playing video is less than or equal to the preset smooth playing limit, and suspending the pre-downloading of the video set to be played.
7. A server, the server comprising:
one or more processors;
a storage means for storing one or more programs;
the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the method of video downloading of any of claims 1-5.
8. A computer readable storage medium having stored thereon a computer program, which when executed by a processor, implements a method of video downloading according to any of claims 1-5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110349102.4A CN112954409B (en) | 2021-03-31 | 2021-03-31 | Video downloading method, device, server and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110349102.4A CN112954409B (en) | 2021-03-31 | 2021-03-31 | Video downloading method, device, server and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112954409A CN112954409A (en) | 2021-06-11 |
CN112954409B true CN112954409B (en) | 2023-05-12 |
Family
ID=76231585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110349102.4A Active CN112954409B (en) | 2021-03-31 | 2021-03-31 | Video downloading method, device, server and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112954409B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368833A (en) * | 2011-11-29 | 2012-03-07 | 乐视网信息技术(北京)股份有限公司 | Method for carrying out segment download equalization on video information |
CN110430453A (en) * | 2019-08-28 | 2019-11-08 | 咪咕视讯科技有限公司 | Video multi-code-rate switching processing method and device, electronic equipment and storage medium |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905820A (en) * | 2012-12-28 | 2014-07-02 | 中国科学院声学研究所 | Client side video quality self-adaption method and system based on SVC |
US9066048B2 (en) * | 2013-06-17 | 2015-06-23 | Spotify Ab | System and method for switching between audio content while navigating through video streams |
CN104850434B (en) * | 2015-04-30 | 2017-12-22 | 腾讯科技(深圳)有限公司 | Multimedia resource method for down loading and device |
CN106937163A (en) * | 2017-03-21 | 2017-07-07 | 微鲸科技有限公司 | Multimedia preloads method and apparatus |
CN107888981B (en) * | 2017-11-16 | 2020-12-18 | 北京小米移动软件有限公司 | Audio and video preloading method, device, equipment and storage medium |
CN108259975B (en) * | 2018-02-01 | 2020-11-06 | 广州市百果园信息技术有限公司 | Video playing method, storage medium and terminal |
CN110062274A (en) * | 2019-04-30 | 2019-07-26 | 深圳市迅雷网络技术有限公司 | A kind of video file caching method, device, equipment and readable storage medium storing program for executing |
CN110636367A (en) * | 2019-07-12 | 2019-12-31 | 北京无限光场科技有限公司 | Video loading method and device, terminal equipment and medium |
CN110807128B (en) * | 2019-10-25 | 2022-09-09 | 北京达佳互联信息技术有限公司 | Video preloading method, device, equipment and storage medium |
CN111432246B (en) * | 2020-03-23 | 2022-11-15 | 广州市百果园信息技术有限公司 | Method, device and storage medium for pushing video data |
CN111698281B (en) * | 2020-04-26 | 2022-10-04 | 北京达佳互联信息技术有限公司 | Resource downloading method and device, electronic equipment and storage medium |
CN112135169B (en) * | 2020-09-18 | 2022-11-11 | 脸萌有限公司 | Media content loading method, device, equipment and medium |
-
2021
- 2021-03-31 CN CN202110349102.4A patent/CN112954409B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368833A (en) * | 2011-11-29 | 2012-03-07 | 乐视网信息技术(北京)股份有限公司 | Method for carrying out segment download equalization on video information |
CN110430453A (en) * | 2019-08-28 | 2019-11-08 | 咪咕视讯科技有限公司 | Video multi-code-rate switching processing method and device, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN112954409A (en) | 2021-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105701214B (en) | Preload the mobile Web browser of webpage | |
CN112019916B (en) | Video downloading method, device, server and storage medium | |
CN112672186B (en) | Video preloading method and device | |
WO2020192275A1 (en) | Live broadcast playback video generation method, device and apparatus | |
CN110198495B (en) | Method, device, equipment and storage medium for downloading and playing video | |
CN111669627B (en) | Method, device, server and storage medium for determining video code rate | |
CN111447471B (en) | Model generation method, play control method, device, equipment and storage medium | |
CN111277867A (en) | Video downloading method, device, server and storage medium | |
CN109996122B (en) | Video recommendation method and device, server and storage medium | |
CN113475089A (en) | Method and system for user-oriented content streaming | |
CN112182281B (en) | Audio recommendation method, device and storage medium | |
CN115209965A (en) | Provision management for video games during game preview | |
WO2022272236A1 (en) | Image analysis system | |
CN110209975A (en) | For providing the method, apparatus, equipment and storage medium of object | |
CN111031347A (en) | Video processing method and device, electronic equipment and storage medium | |
CN112954409B (en) | Video downloading method, device, server and storage medium | |
KR20220130837A (en) | A method for playing content streamed from the network on a player on a client device | |
Phong et al. | Joint preloading and bitrate adaptation for short video streaming | |
CN117202264A (en) | 5G network slice oriented computing and unloading method in MEC environment | |
CN111046156B (en) | Method, device and server for determining rewarding data | |
CN113411628B (en) | Code rate self-adaption method and device of live video, electronic equipment and readable medium | |
CN108156514B (en) | Media file playing method and device and storage medium | |
CN112269942B (en) | Method, device and system for recommending object and electronic equipment | |
CN114422826B (en) | Multimedia content playing control method, device, equipment and medium | |
CN114302187A (en) | Media resource playing method and device, electronic equipment and storage medium |
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 |