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

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

Info

Publication number
CN112954409A
CN112954409A CN202110349102.4A CN202110349102A CN112954409A CN 112954409 A CN112954409 A CN 112954409A CN 202110349102 A CN202110349102 A CN 202110349102A CN 112954409 A CN112954409 A CN 112954409A
Authority
CN
China
Prior art keywords
video
played
downloading
playing
currently
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110349102.4A
Other languages
Chinese (zh)
Other versions
CN112954409B (en
Inventor
钱亮亮
张毅
夏文峰
傅正佳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bigo Technology Singapore Pte Ltd
Original Assignee
Bigo Technology Singapore Pte Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bigo Technology Singapore Pte Ltd filed Critical Bigo Technology Singapore Pte Ltd
Priority to CN202110349102.4A priority Critical patent/CN112954409B/en
Publication of CN112954409A publication Critical patent/CN112954409A/en
Application granted granted Critical
Publication of CN112954409B publication Critical patent/CN112954409B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2407Monitoring of transmitted content, e.g. distribution time, number of downloads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23116Content 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content 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/26208Content 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/26216Content 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

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: 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 related to the currently played video, judging whether the video set to be played has a video which is not finished to start and pre-downloaded; if not, the video set to be played is iteratively pre-downloaded according to the predicted pre-download addition proportion of each video in the video set to be played until the download progress does not support the smooth playing of the currently played video, and the pre-downloading of the video set to be played is suspended. According to the technical scheme provided by the embodiment of the invention, on the basis of realizing high-efficiency video playing, the pre-downloading amount of each video in the video set to be played is further increased by utilizing sufficient network bandwidth, so that the smoothness of video playing in the video set to be played is improved, and the playing jam during switching and playing of the videos is avoided.

Description

Video downloading method, device, server and storage medium
Technical Field
The embodiment of the invention relates to the technical field of video processing, in particular to a method, a device, a server and a storage medium for video downloading.
Background
With the rapid development of the internet technology, various video playing applications are increasingly and widely popularized in daily life of people, at the moment, 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 clicking to play the video, the video can be played, and particularly for the playing of short videos, the tolerance of the user to the playing waiting time is limited, and the watching experience of the user can be directly influenced.
At present, in order to speed up video playing, a plurality of subsequent videos to be played are usually downloaded in advance in the playing process of a current video, and at this time, if a mode of completely pre-downloading a subsequent video is adopted to download the subsequent videos in advance after the current video is downloaded, a user still has not been downloaded in advance when directly sliding away to play other videos if the user is not interested in the pre-downloaded video, and the watching experience of the user is still influenced; if a plurality of videos to be played later are downloaded in advance in a manner that each video is partially pre-downloaded, jitter occurs in the bandwidth of the user, and the situation that the playing is jammed due to the reduction of the bandwidth after the videos are switched to be played is also caused, so that the watching experience of the user is influenced.
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 high-efficiency video playing.
In a first aspect, an embodiment of the present invention provides a method for downloading a video, where the method includes:
if the downloading progress of the currently played video supports the smooth playing of the currently played video and the pre-downloading of a video set to be played related to the currently played video, judging whether the video set to be played has a video which is not finished to start the pre-downloading;
if not, the video set to be played is subjected to iterative pre-downloading according to the predicted pre-downloading addition proportion of each video in the video set to be played until the downloading progress does not support smooth playing of the currently played video, and the pre-downloading of the video set to be played is suspended.
In a second aspect, an embodiment of the present invention provides an apparatus for downloading a video, where the apparatus includes:
the starting pre-download judging module is used for judging whether videos which are not finished in starting pre-download exist in the set of videos to be played if the downloading progress of the currently played video supports the smooth playing of the currently played video and the pre-download of the set of videos to be played related to the currently played video;
and if not, iterating and pre-downloading the video set to be played according to the predicted pre-downloading addition proportion of each video in the video set to be played, and suspending the pre-downloading of the video set to be played until the downloading progress does not support the smooth playing of the currently played video.
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.
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, which indicates that the current network bandwidth is sufficient, after the video in the video set to be played is all finished with playing pre-downloading, according to a pre-downloading addition proportion predicted for each video in the video set to be played, the pre-downloading of each video in the video set to be played is continuously added in an iterative mode on the basis of finishing playing pre-downloading, so that on the basis of realizing high-efficiency video playing, the pre-downloading amount of each video in the video set to be played is further increased by using sufficient network bandwidth to improve the smoothness of video playing in the video set to be played, avoid unsmooth playing of the video during switching playing until the downloading progress of the currently played video does not support smooth playing of the currently played video, the pre-downloading of the video set to be played is suspended, the smooth playing priority of the currently played video is ensured, and the playing jam of the currently played video is avoided.
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 associated videos are played in any service scenario. 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:
s110, if the downloading progress of the currently played video supports the smooth playing of the currently played video and the pre-downloading of the video set to be played related to the currently played video, judging whether the video set to be played has a video which is not finished to play the pre-downloading.
Specifically, when a user continuously plays each associated video, in order to avoid video playing jamming as much as possible, the user usually selects to download the video in advance before the video is played, so that there may be two situations that the video has been completely downloaded and only a part of the video is downloaded but not completely downloaded during the video playing, for example, if the user frequently switches the video playing operation, the user switches to the next video playing after only playing a small part of the video before switching, and at this time, the video after switching may only download a part of the video and not complete the full downloading locally; the video which is not downloaded is processed in a side-by-side playing mode so as to avoid pause of subsequent playing of the video.
In this embodiment, in order to avoid the problem that the video playing time is long due to the fact that the video currently being switched and played is not ready to be downloaded in advance when the video playing operation of the user is frequently switched, the number of the videos to be downloaded in advance can be set to be multiple instead of downloading the next playing video in advance when the subsequent video to be played is downloaded in advance in the playing process of the currently playing video, so that multiple videos to be played after the currently playing video can be found out according to the set video playing sequence, and a video set to be played related to the currently playing video in this embodiment is formed.
In the process of playing the current playing video, the pre-download of the to-be-played video set occupies a part of network bandwidth when the current playing video is played and downloaded simultaneously, so that the download rate of the current playing video is reduced, and the situation that the current playing video is jammed can occur, therefore, in order to avoid the jamming of the current playing video, the embodiment can analyze whether the download state of the current playing video can ensure the smooth playing of the current playing video in real time, and can selectively pause the pre-download of the to-be-played video set when the smooth playing of the current playing video cannot be ensured, so as to fully download the current playing video by adopting the whole network bandwidth, and realize the download priority of the current playing video, therefore, the download progress of the current playing video at each moment needs to be determined in real time in the playing process of the current playing video, so as to analyze whether the download progress can ensure the smooth playing of the current playing video, the playing pause of the currently played video is avoided.
It should be noted that in this embodiment, the 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, has been downloaded at the previous time, that is, the remaining available playing time of the currently playing video is greater than a preset smooth playing lower limit, where the remaining available playing time of the currently playing video refers to a time length during which the currently playing video has been downloaded and has not been played, that is, a difference between a downloading progress and a playing progress of the currently playing video at the current time, and the preset smooth playing lower limit is a minimum time length of allowable smooth playing downloaded in the currently playing video. For example, the preset smooth playing lower limit in this embodiment may be configured by using an online service experiment, for example, an online AB experiment.
Further, in order to ensure the efficiency of pre-downloading the video set to be played, in this embodiment, after it is determined that the downloading progress of the currently played video supports the smooth playing of the currently played video, it is further required to analyze whether the downloading progress of the currently played video can support the pre-downloading of the video set to be played, that is, whether a difference between the remaining playable time of the currently played video and the preset smooth playing lower limit is greater than the remaining downloading time of the video set to be played, if so, it is indicated that sufficient time still exists to complete the pre-downloading of the video set to be played on the basis that the preset smooth playing lower limit is utilized to meet the smooth playing of the currently played video.
Optionally, during the playing process of the currently playing video, since the currently playing video is played while being downloaded, the downloading progress of the currently playing video needs to be determined in real time, and then it is determined whether the downloading progress of the currently playing video supports the smooth playing of the currently playing video and the pre-downloading of the to-be-played video 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 to-be-played video set, it indicates that sufficient network bandwidth exists, and while supporting the smooth playing of the currently playing video, it can further support the pre-downloading of the to-be-played video set, then it is considered that on the basis of ensuring the smooth playing of each video in the to-be-played video set, it is first required to ensure that each video in the to-be played video set can be played quickly, so after it is determined that the downloading progress of the currently playing video supports the smooth playing of the currently playing video and the pre-, firstly, the condition of pre-downloading of each video in the video set to be played needs to be judged, that is, whether the video which is not finished with pre-downloading of the video exists in the video set to be played is judged, and only under the condition that the video in the video set to be played is finished with pre-downloading of the video, the pre-downloading of each video in the video set to be played is continued, so that the pre-downloading amount of each video in the video set to be played is increased, and the smoothness of video playing is improved.
It should be noted that the pre-download during playing in this embodiment means that a pre-download amount that can meet the fast playing requirement of each video in the video set to be played can be preset, and if the pre-download during playing of a certain video in the video set to be played is completed, the pre-download amount is already downloaded for the video in advance, so as to ensure that the video can be played fast.
In addition, when each video in the video set to be played is pre-downloaded, the pre-downloading of all the videos in the video set to be played does not need to be completed at one time, and the pre-downloading of each video in the video set to be played can be divided into multiple times according to the change of the current network state, so that the pre-downloading efficiency of the video set to be played is improved.
And S120, if not, iterating and pre-downloading the video set to be played according to the predicted pre-downloading addition proportion of each video in the video set to be played until the downloading progress does not support the smooth playing of the currently played video, and pausing the pre-downloading of the video set to be played.
Optionally, if it is determined that there is no unfinished video to be played and pre-downloaded in the video set to be played, it indicates that each video in the video set to be played has already been played and pre-downloaded, 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 fluency of the subsequent playing of each video in the video set to be played, in this embodiment, the playing preference degree of each video in the video set to be played of the user can be analyzed through the historical playing behavior and the playing preference of the user, so as to predict the pre-download addition proportion of each video in the video set to be played, then according to the pre-download addition proportion of each video in the video set to be played, on the basis of the played and pre-downloaded of each video in the video set to be played, the pre-download amount of each video continues to be sequentially added, and is repeated for multiple times, the iterative pre-download of the video set to be played is executed, so that on the, continuously pre-downloading each video in the video set to be played by using sufficient network bandwidth until the downloading progress of the currently played video does not support the smooth playing of the currently played video, namely when the current network bandwidth is low, suspending the pre-downloading of the video set to be played, downloading the currently played video by using the whole network bandwidth to ensure the downloading of the currently played video as soon as possible, so that more downloaded playing contents can exist in the currently played video to realize the smooth playing, at the moment, each video in the video set to be played is always in a pre-downloading suspension state, continuously determining the downloading progress of the currently played video in real time subsequently, and continuously downloading the currently played video and simultaneously adding the proportion of each video in the video set to be played according to the pre-downloading of each video in the video set to be played again, and continuously iterating and pre-downloading the video set to be played, and continuously updating the pre-downloading state of the video set to be played according to the downloading progress of the currently played video in real time by the loop, so that the pre-downloading of each video in the video set to be played is realized on the basis of ensuring the smooth playing of the currently played video, and the playing jam during the subsequent playing of each video in the video set to be played is avoided.
It should be noted that, in this embodiment, the downloading progress of the currently played video does not support the smooth playing of the currently played video, and the remaining available playing time of the currently played video may be less than or equal to a preset smooth playing lower limit.
For example, in this embodiment, a transition interval with a length of the remaining download duration of the currently playing video set as long as possible is set by hopefully ensuring that each video in the currently playing video set can be downloaded within the remaining playable time period, the lower limit of the transition interval is a preset lower smooth play limit, the upper limit of the transition interval is the sum of the preset lower smooth play limit and the remaining download duration of the currently playing video set, since the remaining playable time period of the currently playing video constantly changes with the network download state, if the remaining playable time period of the currently playing video after subtracting the preset lower smooth play limit is still longer than the remaining download duration of the currently playing video set, that is, the remaining playable time period exceeds the upper limit of the transition interval, the video set to be played starts to be iteratively downloaded, and if the remaining playable time period continuously decreases, the video set to be played still maintains the iteratively downloaded state when the remaining playable time period falls within the transition interval, the method comprises the steps of pausing the pre-downloading of a video set to be played until the video set to be played is reduced to be below a preset smooth playing, then continuing to iterate the pre-downloading of the video set to be played if the remaining available playing time of a current playing video begins to increase and the video set to be played is kept paused and is continued until the remaining available playing time of the current playing video is increased to be above the sum of a preset smooth playing lower limit and the remaining downloading time, namely the remaining available playing time is beyond the upper limit of a transition interval, so that the state of the iterative pre-downloading of the video set to be played in the transition interval can be maintained, the iterative pre-downloading of the video set to be played can not be frequently switched between the start and pause along with the change of the remaining available playing time of the current playing video above and below a certain threshold, and the pre-downloading of the video set to be.
In addition, when the currently played video is just switched to be played from the last played video, the video set to be played deletes the oldest video and adds a new video relative to the last played video, at this time, the newly added video does not perform any pre-downloading for playing, and other videos may have already been subjected to pre-downloading for playing in the playing process of the last played video, so the pre-downloading states of the videos in the video set to be played may be different, and this embodiment may further include, after determining whether there is an unfinished pre-downloaded video in the video set to be played: if yes, downloading the videos which are not finished to be played and downloaded in the video set to be played in advance according to the target playing duration. That is, considering that the priority of each video in the video set to be played for fast playing is higher than that of smooth playing, when there is an unfinished video to be played and pre-downloaded in the video set to be played, firstly, the target playing time of the video set to be played is estimated based on the playing time and the downloading parameters of the currently played video, and then, according to the target playing time, the video which is unfinished to be played and pre-downloaded in the video set to be played is pre-downloaded respectively, so as to ensure the fast playing of each video in the video set to be played.
It should be noted that, for the estimation of the target playing duration, the present embodiment may refer to the network change state of the currently playing video in the downloading process to estimate the network state of the to-be-played video set when downloading, and first determine the playing duration of the currently playing video, and the downloading parameters such as the video bitrate and the downloading rate that the currently playing video has been downloaded in the current playing period, so as to analyze the change condition of the current network state according to the playing duration and the downloading parameters, determine the remaining video data amount that the currently pre-downloaded video in the to-be-played video set has not been downloaded at the current time, and further estimate the remaining downloading duration of the to-be-played video set according to the network state and the remaining downloading data amount, so as to subsequently 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 downloading duration of the to-be-played video set, therefore, whether the downloading progress of the current playing video supports the pre-downloading of the video set to be played is judged.
In the technical scheme provided by this embodiment, if the downloading progress of the currently playing video supports smooth playing of the currently playing video and pre-downloading of the currently playing video-associated video set, which indicates that the current network bandwidth is sufficient, after the video in the video set to be played is all completed with pre-downloading, according to the pre-downloading addition ratio predicted for each video in the video set to be played, on the basis of completing the pre-downloading, the pre-downloading of each video in the video set to be played is continuously added in an iterative manner, so that on the basis of realizing high-efficiency 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 as to improve the smoothness of video playing in the video set to be played, avoid a playing card when the video is switched to be played, until the downloading progress of the currently playing video does not support smooth playing of the currently playing video, the pre-downloading of the video set to be played is suspended, the smooth playing priority of the currently played video is ensured, and the playing jam 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 the second embodiment of the present invention. The embodiment is optimized on the basis of the 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-download addition ratio 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 finished to play the pre-downloading, and if not, executing S220; if yes, go to step S250.
And 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 addition proportion referred to when performing additional pre-download after completing the pre-download of the video to be played in the video set to be played may 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 without viewing the video that is not interested, and the user is not required to download the video in advance, and the user is likely to view the video that is interested for a longer time, i.e., more pre-download videos are required, so as to avoid playing stutter.
In this embodiment, the watching preference degree of the user for the video may be represented by predicting the complete playing progress of each 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 then the interest degree of the user for the video may be determined by analyzing the video type of each video in the video set to be played, so that the complete playing progress of the video in actual playing is predicted, and the pre-download addition proportion of each video is analyzed according to the complete playing progress of each video in the video set to be played in the following.
For example, the present embodiment may predict the complete playing progress of each video in the video set to be played during actual playing through a pre-trained progress prediction time sequence network, where the progress prediction time sequence network may be a Long Short-Term Memory (LSTM) network or a Gated recycling Unit (Gated recycling Unit) model improved by the LSTM network.
It should be noted that, in this embodiment, a large number of history playing videos played by different users in a history playing process may be obtained as training samples, each training sample may determine a final playing progress in actual viewing, and serve as a sample label of the training sample, and then the progress prediction timing network is continuously trained by using a large number of training samples and the sample labels of the training samples, so that the progress prediction timing network can basically ensure the prediction accuracy of the complete playing progress of each video in the video set to be played in actual playing. Then, after the trained progress prediction time sequence network is applied to the online service of each user playing video, in the process of playing video by the user, as shown in fig. 2B, for each time of playing a specified currently playing video, each historically played video played by the user before the currently playing video is taken as the input of the progress prediction time sequence network, so as to analyze the historical playing progress and the video type of each historically played video, and then predict the complete playing progress of each video in the video set to be played when actually playing.
Moreover, because the progress prediction time sequence network of offline training uses the historical playing videos of different users as training samples, and the playing progress prediction capability possessed after training cannot accurately show the specific viewing preference of a certain user, the embodiment can predict and optimize the progress prediction time sequence network by using the trained progress prediction time sequence network on line when the complete playing progress of each video in the video set to be played watched by the current user is actually played, according to the predicted complete playing progress and the actual playing progress of each video in the video set to be played, that is, by using the video actually played by the current user as a training sample, and according to the difference between the predicted complete playing progress and the actual playing progress, the progress prediction time sequence network is continuously updated to the personalized playing behavior of the current user, so that the progress prediction time sequence network can be continuously updated from a universal model to the personalized model of the current user Therefore, the prediction accuracy of the complete playing progress of each video in the video set to be played is improved.
And S230, calculating the pre-download appending proportion of the video according to the complete playing progress of each video in the video set to be played.
Optionally, because the complete playing progress of each video in the video set to be played can represent the watching preference degree of the current user for the video, and considering that when each video in the video set to be played is pre-downloaded, it is required to ensure that the pre-downloading amount of each video in the video set to be played is relatively balanced, the complete playing progress of each video in the video set to be played can be used as the pre-downloading additional proportion of the video according to the proportion occupied by the complete playing progress of the video set to be played after the video set to be played is synthesized, for example, if the complete playing progress of each video in the video set to be played is predicted to be [ P1、P2、P3]If the ratio of pre-download addition of each video in the video set to be played is equal to
Figure BDA0003001873810000121
yiThe pre-download addition proportion of the ith video in the video set to be played is obtained.
S240, according to the predicted pre-download additional proportion of 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, executing the iterative pre-download of the video set to be played until the downloading progress does not support the smooth playing of the currently played video, and then pausing the pre-download of the video set to be played.
In this embodiment, after predicting the pre-download addition ratio of each video in the video set to be played, when adding the pre-download amount of the video according to the pre-download addition ratio of each video, in order to ensure the pre-download balance of each video in the video set to be played, the number of pre-download iterations that each video in the video set to be played has completed is firstly analyzed, the number of pre-download iterations can roughly represent the pre-download amount of each video, so when the video set to be played is iteratively pre-downloaded, firstly, according to the size of the pre-download iteration times of each video in a video set to be played, the pre-download quantity of the video with smaller pre-download iteration times is added, then the pre-download quantity of the video with larger pre-download iteration times is added, moreover, 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 the video associated playing.
Specifically, in this embodiment, according to the number of pre-download iterations of each video in the video set to be played, the target video in the video set to be played is controlled to perform preliminary pre-download according to the pre-download appending proportion of the target video, so that the number of pre-download iterations of each video in the video set to be played is the same, the target video is a video in which the number of pre-download iterations in the video set to be played is not the highest, and the target video needs to be pre-downloaded according to the pre-download appending proportion of each target video in sequence from small to large according to the size of the number of pre-download iterations, so that the number of pre-download iterations of each video in the video set to be played is the same. Then, after the number of times of the pre-download iteration of each video in the video set to be played is the same, the iterative pre-download of the video set to be played can be executed according to the video playing sequence of each video in the video set to be played, that is, the pre-download is executed once for each video in the video set to be played according to the video playing sequence, if the current network bandwidth is still sufficient, the pre-download is executed once again for each video in the video set to be played according to the video playing sequence, and the process is circulated in sequence to realize the iterative pre-download of the video set to be played until all the pre-downloads of each video in the video set to be played are completed.
Illustratively, if [ x4, x5, x6]3 videos exist in the video set to be played, the number of iterative pre-download times of x4 is 4, the number of iterative pre-download times of x5 is 3, and the number of iterative pre-download times of x6 is 2, then the target videos are x5 and x6, and since the number of iterative pre-download times of x6 is the minimum, x6 is pre-downloaded once according to the pre-download addition ratio of x6, so that the number of iterative pre-download times of x5 and x6 both become 3, and since x5 is played earlier than x6, x6 can be pre-downloaded once according to the pre-download addition ratio of x5, x5 can be pre-downloaded once, then x6 can be pre-downloaded once according to the pre-download addition ratio of x6, at this time, the number of pre-download times of x4, x5 and x6 can all become 4, and then the video play order of the video set is sufficient in the current network bandwidth, and performing one-time pre-downloading on each video in the video set to be played as an iteration process, repeating the process for multiple times, realizing the iterative pre-downloading of the video set to be played, and further continuously changing each video in the video set to be played into a local video to be played under the condition that the current network bandwidth is sufficient, so that the playing smoothness of each video in the video set to be played during actual playing is improved.
And S250, pre-downloading the videos which are not finished to be played and pre-downloaded in the video set to be played according to the target playing time length.
In the technical scheme provided by this embodiment, if the downloading progress of the currently playing video supports smooth playing of the currently playing video and pre-downloading of the currently playing video-associated video set, which indicates that the current network bandwidth is sufficient, after the video in the video set to be played is all completed with pre-downloading, according to the pre-downloading addition ratio predicted for each video in the video set to be played, on the basis of completing the pre-downloading, the pre-downloading of each video in the video set to be played is continuously added in an iterative manner, so that on the basis of realizing high-efficiency 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 as to improve the smoothness of video playing in the video set to be played, avoid a playing card when the video is switched to be played, until the downloading progress of the currently playing video does not support smooth playing of the currently playing video, the pre-downloading of the video set to be played is suspended, the smooth playing priority of the currently played video is ensured, and the playing jam of the currently played video is avoided; meanwhile, the sequence of the videos in the video set to be played during the iterative pre-downloading is controlled according to the pre-downloading iteration times and the video playing sequence of each video in the video set to be played, so that 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 apparatus according to a third embodiment of the present invention, specifically, as shown in fig. 3, the apparatus may include:
the playing pre-download judging module 310 is configured to judge whether a video that is not finished to play pre-download exists in the set of videos to be played if the downloading progress of the currently played video supports smooth playing of the currently played video and pre-download of the set of videos to be played that are associated with the currently played video;
and if not, the video downloading module 320 is configured to iterate to pre-download the video set to be played according to the pre-download addition ratio predicted for each video in the video set to be played, and suspend the pre-download of the video set to be played until the download progress does not support smooth playing of the currently played video.
In the technical scheme provided by this embodiment, if the downloading progress of the currently playing video supports smooth playing of the currently playing video and pre-downloading of the currently playing video-associated video set, which indicates that the current network bandwidth is sufficient, after the video in the video set to be played is all completed with pre-downloading, according to the pre-downloading addition ratio predicted for each video in the video set to be played, on the basis of completing the pre-downloading, the pre-downloading of each video in the video set to be played is continuously added in an iterative manner, so that on the basis of realizing high-efficiency 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 as to improve the smoothness of video playing in the video set to be played, avoid a playing card when the video is switched to be played, until the downloading progress of the currently playing video does not support smooth playing of the currently playing video, the pre-downloading of the video set to be played is suspended, the smooth playing priority of the currently played video is ensured, and the playing jam 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 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.
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:
if the downloading progress of the currently played video supports the smooth playing of the currently played video and the pre-downloading of a video set to be played related to the currently played video, judging whether the video set to be played has a video which is not finished to start the pre-downloading;
if not, the video set to be played is subjected to iterative pre-downloading according to the predicted pre-downloading addition proportion of each video in the video set to be played until the downloading progress does not support smooth playing of the currently played video, and the pre-downloading of the video set to be played is suspended.
2. The method of claim 1, wherein the iterative pre-downloading of the set of videos to be played comprises:
and executing the iterative pre-downloading of the video set to be played based on the pre-downloading iteration times and the video playing sequence of each video in the video set to be played.
3. The method of claim 2, wherein the performing iterative pre-downloading of the video set to be played based on the number of pre-downloading iterations and the video playing order of each video in the video set to be played comprises:
controlling the target video in the video set to be played to carry out preliminary pre-downloading according to the pre-downloading additional proportion of the target video according to the pre-downloading iteration times of each video in the video set to be played so as to enable the pre-downloading iteration times of each video in the video set to be played to be the same;
and 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.
4. The method of claim 1, further comprising, prior to iteratively pre-downloading the set of videos to be played according to a pre-download append ratio that has been predicted for each video in the set of videos to be played:
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;
and calculating the pre-download additional proportion of each video according to the complete playing progress of each video in the video set to be played.
5. The method of claim 4, wherein the complete playing progress of each video in the video set to be played is predicted by a pre-trained progress prediction timing network.
6. The method of claim 5, further comprising:
and performing prediction optimization on the progress prediction time sequence network according to the predicted complete playing progress and the actual playing progress of each video in the video set to be played.
7. The method according to any one of claims 1-6, wherein after determining whether there is an uncompleted video to be played for pre-download in the set of videos to be played, the method further comprises:
if yes, pre-downloading the videos which are not finished to be played and pre-downloaded in the video set to be played according to the target playing duration.
8. The method of claim 7, further comprising, before determining whether there is an uncompleted video to be played in the set of videos to be played,:
and estimating the target playing time length of the video set to be played based on the playing time length and the downloading parameters of the current playing video.
9. The method according to any one of claims 1 to 6, wherein the downloading progress of the currently playing video supports smooth playing of the currently playing video and pre-downloading of a to-be-played video set associated with the currently playing video, such that a difference between a remaining playable duration of the currently playing video and a preset smooth playing lower limit is greater than a remaining downloading duration of the to-be-played video set;
the downloading progress does not support the smooth playing of the currently played video, and the remaining available playing time length of the currently played video is less than or equal to the preset smooth playing lower limit.
10. The method of claim 9, wherein the remaining download duration of the video set to be played is a remaining download duration of a currently pre-downloaded video in the video set to be played.
11. An apparatus for video downloading, comprising:
the starting pre-download judging module is used for judging whether videos which are not finished in starting pre-download exist in the set of videos to be played if the downloading progress of the currently played video supports the smooth playing of the currently played video and the pre-download of the set of videos to be played related to the currently played video;
and if not, iterating and pre-downloading the video set to be played according to the predicted pre-downloading addition proportion of each video in the video set to be played, and suspending the pre-downloading of the video set to be played until the downloading progress does not support the smooth playing of the currently played video.
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.
CN202110349102.4A 2021-03-31 2021-03-31 Video downloading method, device, server and storage medium Active CN112954409B (en)

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 true CN112954409A (en) 2021-06-11
CN112954409B 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 (14)

* Cited by examiner, † Cited by third party
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
CN103905820A (en) * 2012-12-28 2014-07-02 中国科学院声学研究所 Client side video quality self-adaption method and system based on SVC
CN104850434A (en) * 2015-04-30 2015-08-19 腾讯科技(深圳)有限公司 Method and apparatus for downloading multimedia resources
CN106937163A (en) * 2017-03-21 2017-07-07 微鲸科技有限公司 Multimedia preloads method and apparatus
CN107888981A (en) * 2017-11-16 2018-04-06 北京小米移动软件有限公司 Audio frequency and video preload method, apparatus, equipment and storage medium
CN108259975A (en) * 2018-02-01 2018-07-06 广州市百果园信息技术有限公司 Video broadcasting 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
CN110430453A (en) * 2019-08-28 2019-11-08 咪咕视讯科技有限公司 Video multi code Rate of Chinese character switching handling method, device, electronic equipment and storage medium
CN110636367A (en) * 2019-07-12 2019-12-31 北京无限光场科技有限公司 Video loading method and device, terminal equipment and medium
US20200045365A1 (en) * 2013-06-17 2020-02-06 Spotify Ab System and Method for Selecting Media to be Preloaded for Adjacent Channels
CN110807128A (en) * 2019-10-25 2020-02-18 北京达佳互联信息技术有限公司 Video preloading method, device, equipment and storage medium
CN111432246A (en) * 2020-03-23 2020-07-17 广州市百果园信息技术有限公司 Method, device and storage medium for pushing video data
CN111698281A (en) * 2020-04-26 2020-09-22 北京达佳互联信息技术有限公司 Resource downloading method and device, electronic equipment and storage medium
CN112135169A (en) * 2020-09-18 2020-12-25 脸萌有限公司 Media content loading method, device, equipment and medium

Patent Citations (14)

* Cited by examiner, † Cited by third party
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
CN103905820A (en) * 2012-12-28 2014-07-02 中国科学院声学研究所 Client side video quality self-adaption method and system based on SVC
US20200045365A1 (en) * 2013-06-17 2020-02-06 Spotify Ab System and Method for Selecting Media to be Preloaded for Adjacent Channels
CN104850434A (en) * 2015-04-30 2015-08-19 腾讯科技(深圳)有限公司 Method and apparatus for downloading multimedia resources
CN106937163A (en) * 2017-03-21 2017-07-07 微鲸科技有限公司 Multimedia preloads method and apparatus
CN107888981A (en) * 2017-11-16 2018-04-06 北京小米移动软件有限公司 Audio frequency and video preload method, apparatus, equipment and storage medium
CN108259975A (en) * 2018-02-01 2018-07-06 广州市百果园信息技术有限公司 Video broadcasting 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
CN110430453A (en) * 2019-08-28 2019-11-08 咪咕视讯科技有限公司 Video multi code Rate of Chinese character switching handling method, device, electronic equipment and storage medium
CN110807128A (en) * 2019-10-25 2020-02-18 北京达佳互联信息技术有限公司 Video preloading method, device, equipment and storage medium
CN111432246A (en) * 2020-03-23 2020-07-17 广州市百果园信息技术有限公司 Method, device and storage medium for pushing video data
CN111698281A (en) * 2020-04-26 2020-09-22 北京达佳互联信息技术有限公司 Resource downloading method and device, electronic equipment and storage medium
CN112135169A (en) * 2020-09-18 2020-12-25 脸萌有限公司 Media content loading method, device, equipment and medium

Also Published As

Publication number Publication date
CN112954409B (en) 2023-05-12

Similar Documents

Publication Publication Date Title
CN111277867B (en) Video downloading method, device, server and storage medium
Spiteri et al. From theory to practice: Improving bitrate adaptation in the DASH reference player
CN112019916B (en) Video downloading method, device, server and storage medium
CN110198495B (en) Method, device, equipment and storage medium for downloading and playing video
CN109302623B (en) QoE model-based dynamic adaptive video transmission method
CN108079578B (en) Code rate adjusting method and device based on cloud game and storage medium
CN112672186B (en) Video preloading method and device
CN111669627A (en) Method, device, server and storage medium for determining video code rate
CN105075273A (en) Adaptive streaming techniques
CN110022498B (en) Method and device for realizing code rate switching
CN113810773B (en) Video downloading method and device, electronic equipment and storage medium
AU2021225331B2 (en) Method for playing on a player of a client device a content streamed in a network
EP4013006A1 (en) Method for playing on a player of a client device a content streamed in a network
CN112954409A (en) Video downloading method, device, server and storage medium
EP2446624B1 (en) Modifying command sequences
CN109995824B (en) Task scheduling method and device in peer-to-peer network
US10165245B2 (en) Pre-fetching video content
US20230126665A1 (en) Systems and methods for managing interruption of content presentation
CN108156514B (en) Media file playing method and device and storage medium
CN106547768B (en) Media file playing control method and device
EP3886451A1 (en) Method for playing on a player of a client device a content streamed in a network
JP7318123B2 (en) Method, system and medium for streaming video content using adaptive buffering
US20180183848A1 (en) Method for receiving adaptive streaming service
JP7052768B2 (en) Distribution design support method, distribution design support device and program
CN114885215A (en) Method and device for training code rate adaptive model and method and device for video code rate adaptation

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