CN113810773B - Video downloading method and device, electronic equipment and storage medium - Google Patents
Video downloading method and device, electronic equipment and storage medium Download PDFInfo
- Publication number
- CN113810773B CN113810773B CN202111093325.5A CN202111093325A CN113810773B CN 113810773 B CN113810773 B CN 113810773B CN 202111093325 A CN202111093325 A CN 202111093325A CN 113810773 B CN113810773 B CN 113810773B
- Authority
- CN
- China
- Prior art keywords
- video
- target video
- downloading
- duration
- current
- 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 53
- 230000004044 response Effects 0.000 claims description 27
- 238000012545 processing Methods 0.000 abstract description 11
- 238000004891 communication Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4667—Processing of monitored end-user data, e.g. trend analysis based on the log file of viewer selections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The disclosure provides a video downloading method and device, electronic equipment and a storage medium, and relates to the technical field of computers, in particular to the technical field of video processing. The implementation scheme is as follows: determining at least one target video, wherein the target video is a video to be played after the current video is played; determining the time length of a downloading piece corresponding to the at least one target video based on the current network speed and the attribute information of the at least one target video, wherein the time length of the downloading piece is the playing time length of a starting video clip to be downloaded in the corresponding target video; and downloading the respective initial video segments of the at least one target video.
Description
Technical Field
The present disclosure relates to the field of computer technology, and in particular, to the field of video processing technology, and in particular, to a video downloading method, apparatus, electronic device, computer readable storage medium, and computer program product.
Background
With the development of internet technology, more and more users watch video through a video application (App) in a terminal device. The user selects the video of interest in the video application, then the terminal device downloads the data of the video, and video playing is performed based on the downloaded data. In some cases, a user may watch multiple videos, and it is desirable that the multiple videos can be continuously and smoothly played.
The approaches described in this section are not necessarily approaches that have been previously conceived or pursued. Unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section. Similarly, the problems mentioned in this section should not be considered as having been recognized in any prior art unless otherwise indicated.
Disclosure of Invention
The present disclosure provides a video downloading method, apparatus, electronic device, computer readable storage medium and computer program product.
According to an aspect of the present disclosure, there is provided a video downloading method, including: determining at least one target video, wherein the target video is a video to be played after the current video is played; determining the time length of a downloading piece corresponding to the at least one target video based on the current network speed and the attribute information of the at least one target video, wherein the time length of the downloading piece is the playing time length of a starting video clip to be downloaded in the corresponding target video; and downloading the respective initial video segments of the at least one target video.
According to an aspect of the present disclosure, there is provided a video downloading apparatus including: the first determining module is configured to determine at least one target video, wherein the target video is a video to be played after the current video is played; the second determining module is configured to determine a time length of a downloading piece corresponding to each of the at least one target video based on the current network speed and the attribute information of each of the at least one target video, wherein the time length of the downloading piece is a playing time length of a starting video clip to be downloaded in the corresponding target video; and a downloading module configured to download the respective start video clips of the at least one target video.
According to an aspect of the present disclosure, there is provided an electronic apparatus including: at least one processor; and a memory communicatively coupled to the at least one processor, the memory storing instructions executable by the at least one processor to enable the at least one processor to perform the method.
According to an aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the above-described method.
According to an aspect of the present disclosure, there is provided a computer program product comprising a computer program which, when executed by a processor, implements the above method.
According to one or more embodiments of the present disclosure, when a user views a current video, a video (i.e., a target video) that the user may view later can be pre-downloaded, so that when the user requests to view the target video, fast and smooth playing of the target video can be achieved, waiting time of the user is reduced, and video viewing experience of the user is improved. And the length (i.e. playing time length) of the initial video segment of each target video to be pre-downloaded is determined according to the current network speed of the user and the attribute information of the target video, so that the dynamic and self-adaptive pre-downloading of the target video is realized, the smooth playing of the target video is effectively ensured, and meanwhile, the flow consumption of the client and the bandwidth resource of the server are saved.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the disclosure, nor is it intended to be used to limit the scope of the disclosure. Other features of the present disclosure will become apparent from the following specification.
Drawings
The accompanying drawings illustrate exemplary embodiments and, together with the description, serve to explain exemplary implementations of the embodiments. The illustrated embodiments are for exemplary purposes only and do not limit the scope of the claims. Throughout the drawings, identical reference numerals designate similar, but not necessarily identical, elements.
FIG. 1 illustrates a schematic diagram of an exemplary system in which various methods described herein may be implemented, in accordance with an embodiment of the present disclosure;
FIG. 2 illustrates a flow chart of a video download method according to an embodiment of the present disclosure;
FIG. 3 shows a schematic diagram of a target video according to an embodiment of the present disclosure;
fig. 4 shows a block diagram of a video downloading apparatus according to an embodiment of the present disclosure; and
fig. 5 illustrates a block diagram of an exemplary electronic device that can be used to implement embodiments of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
In the present disclosure, the use of the terms "first," "second," and the like to describe various elements is not intended to limit the positional relationship, timing relationship, or importance relationship of the elements, unless otherwise indicated, and such terms are merely used to distinguish one element from another. In some examples, a first element and a second element may refer to the same instance of the element, and in some cases, they may also refer to different instances based on the description of the context.
The terminology used in the description of the various illustrated examples in this disclosure is for the purpose of describing particular examples only and is not intended to be limiting. Unless the context clearly indicates otherwise, the elements may be one or more if the number of the elements is not specifically limited. Furthermore, the term "and/or" as used in this disclosure encompasses any and all possible combinations of the listed items.
Embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
Fig. 1 illustrates a schematic diagram of an exemplary system 100 in which various methods and apparatus described herein may be implemented, in accordance with an embodiment of the present disclosure. Referring to fig. 1, the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 coupling the one or more client devices to the server 120. Client devices 101, 102, 103, 104, 105, and 106 may be configured to execute one or more applications.
In embodiments of the present disclosure, the server 120 may run one or more services or software applications that enable the video download method to be performed.
In some embodiments, server 120 may also provide other services or software applications that may include non-virtual environments and virtual environments. In some embodiments, these services may be provided as web-based services or cloud services, for example, provided to users of client devices 101, 102, 103, 104, 105, and/or 106 under a software as a service (SaaS) model.
In the configuration shown in fig. 1, server 120 may include one or more components that implement the functions performed by server 120. These components may include software components, hardware components, or a combination thereof that are executable by one or more processors. A user operating client devices 101, 102, 103, 104, 105, and/or 106 may in turn utilize one or more client applications to interact with server 120 to utilize the services provided by these components. It should be appreciated that a variety of different system configurations are possible, which may differ from system 100. Accordingly, FIG. 1 is one example of a system for implementing the various methods described herein and is not intended to be limiting.
The user may view video using client devices 101, 102, 103, 104, 105, and/or 106. The client device may provide an interface that enables a user of the client device to interact with the client device. The client device may also output information to the user via the interface. Although fig. 1 depicts only six client devices, those skilled in the art will appreciate that the present disclosure may support any number of client devices.
Client devices 101, 102, 103, 104, 105, and/or 106 may include various types of computer devices, such as portable handheld devices, general purpose computers (such as personal computers and laptop computers), workstation computers, wearable devices, smart screen devices, self-service terminal devices, service robots, gaming systems, thin clients, various messaging devices, sensors or other sensing devices, and the like. These computer devices may run various types and versions of software applications and operating systems, such as MICROSOFT Windows, APPLE iOS, UNIX-like operating systems, linux, or Linux-like operating systems (e.g., GOOGLE Chrome OS); or include various mobile operating systems such as MICROSOFT Windows Mobile OS, iOS, windows Phone, android. Portable handheld devices may include cellular telephones, smart phones, tablet computers, personal Digital Assistants (PDAs), and the like. Wearable devices may include head mounted displays (such as smart glasses) and other devices. The gaming system may include various handheld gaming devices, internet-enabled gaming devices, and the like. The client device is capable of executing a variety of different applications, such as various Internet-related applications, communication applications (e.g., email applications), short Message Service (SMS) applications, and may use a variety of communication protocols.
Network 110 may be any type of network known to those skilled in the art that may support data communications using any of a number of available protocols, including but not limited to TCP/IP, SNA, IPX, etc. For example only, the one or more networks 110 may be a Local Area Network (LAN), an ethernet-based network, a token ring, a Wide Area Network (WAN), the internet, a virtual network, a Virtual Private Network (VPN), an intranet, an extranet, a Public Switched Telephone Network (PSTN), an infrared network, a wireless network (e.g., bluetooth, WIFI), and/or any combination of these and/or other networks.
The server 120 may include one or more general purpose computers, special purpose server computers (e.g., PC (personal computer) servers, UNIX servers, mid-end servers), blade servers, mainframe computers, server clusters, or any other suitable arrangement and/or combination. The server 120 may include one or more virtual machines running a virtual operating system, or other computing architecture that involves virtualization (e.g., one or more flexible pools of logical storage devices that may be virtualized to maintain virtual storage devices of the server). In various embodiments, server 120 may run one or more services or software applications that provide the functionality described below.
The computing units in server 120 may run one or more operating systems including any of the operating systems described above as well as any commercially available server operating systems. Server 120 may also run any of a variety of additional server applications and/or middle tier applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, etc.
In some implementations, server 120 may include one or more applications to analyze and consolidate data feeds and/or event updates received from users of client devices 101, 102, 103, 104, 105, and 106. Server 120 may also include one or more applications to display data feeds and/or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and 106.
In some implementations, the server 120 may be a server of a distributed system or a server that incorporates a blockchain. The server 120 may also be a cloud server, or an intelligent cloud computing server or intelligent cloud host with artificial intelligence technology. The cloud server is a host product in a cloud computing service system, so as to solve the defects of large management difficulty and weak service expansibility in the traditional physical host and virtual private server (VPS, virtual Private Server) service.
The system 100 may also include one or more databases 130. In some embodiments, these databases may be used to store data and other information. For example, one or more of databases 130 may be used to store information such as audio files and video files. Database 130 may reside in various locations. For example, the database used by the server 120 may be local to the server 120, or may be remote from the server 120 and may communicate with the server 120 via a network-based or dedicated connection. Database 130 may be of different types. In some embodiments, the database used by server 120 may be, for example, a relational database. One or more of these databases may store, update, and retrieve the databases and data from the databases in response to the commands.
In some embodiments, one or more of databases 130 may also be used by applications to store application data. The databases used by the application may be different types of databases, such as key value stores, object stores, or conventional stores supported by the file system.
The system 100 of fig. 1 may be configured and operated in various ways to enable application of the various methods and apparatus described in accordance with the present disclosure.
In the technical scheme of the disclosure, the related processes of collecting, storing, using, processing, transmitting, providing, disclosing and the like of the personal information of the user accord with the regulations of related laws and regulations, and the public order colloquial is not violated.
For purposes of embodiments of the present disclosure, in the example of fig. 1, client applications for viewing video may be included in client devices 101, 102, 103, 104, 105, and 106. The client application may be, for example, an application program that needs to be downloaded and installed before running, a video website that is accessible through a browser, a lightweight applet that runs in a host application, and so on. The client application may provide various video-based functions such as searching, viewing, uploading, downloading, etc. of the video. Accordingly, the server 120 may be a server for use with the client application. Server 120 may provide video services to client applications running in client devices 101, 102, 103, 104, 105, and 106 based on stored video resources. For example, the server 120 may provide video recommendation services to client applications, i.e., the server 120 pushes videos to client applications that may be of interest to the user. Accordingly, the user may view videos recommended thereto by the server 120 through the client application.
In some cases, a user may view multiple videos in a client application. In the related art, in order to enable a plurality of videos to be continuously and smoothly played, videos that a user may subsequently watch may be pre-downloaded while the user watches a current video. In this way, when the user requests to watch the subsequent video, the user can directly play the video, thereby reducing the waiting time of the user. However, in the related art, video contents of a fixed length (e.g., 10 seconds) are pre-downloaded for all videos that a user may subsequently watch. If the content of the pre-downloaded video is too small, the video is likely to be blocked in the playing process of the video, and the watching experience of the user is reduced. If the pre-downloaded video content is too much, if the user does not watch the pre-downloaded video later, the traffic of the client device and the bandwidth resources of the server are wasted greatly.
In view of the foregoing, embodiments of the present disclosure provide a video downloading scheme. According to the scheme, at least one target video which is possibly watched by a user later can be determined, and the playing time of the initial video segment which needs to be downloaded of each target video is determined according to the current network speed of the client device and the attribute information of each target video, so that the dynamic and self-adaptive pre-downloading of the target video is realized, the smooth playing of the target video is effectively ensured, and meanwhile, the flow consumption of the client and the bandwidth resource of the server can be saved.
Fig. 2 shows a flowchart of a video download method 200 according to an embodiment of the present disclosure. The method 200 may be performed at a client device (e.g., the client device 101, 102, 103, 104, 105, or 106 shown in fig. 1), i.e., the subject of execution of the steps of the method 200 may be the client device 101, 102, 103, 104, 105, or 106 shown in fig. 1.
As shown in fig. 2, the method 200 includes:
step 210, determining at least one target video, where the target video is a video to be played after the current video is played.
Step 220, determining a time length of a downloading segment corresponding to each of the at least one target video based on the current network speed and respective attribute information of the at least one target video, wherein the time length of the downloading segment is a playing time length of a to-be-downloaded initial video segment in the corresponding target video; and
step 230, downloading the respective initial video segments of the at least one target video.
According to the embodiment of the disclosure, when a user watches a current video, videos (namely target videos) which the user is likely to watch later can be pre-downloaded, so that when the user requests to watch the target videos, the target videos can be rapidly and smoothly played, waiting time of the user is reduced, and video watching experience of the user is improved. And the length (i.e. playing time length) of the initial video segment of each target video to be pre-downloaded is determined according to the current network speed of the user and the attribute information of the target video, so that the dynamic and self-adaptive pre-downloading of the target video is realized, the smooth playing of the target video is effectively ensured, and meanwhile, the flow consumption of the client and the bandwidth resource of the server are saved.
The various steps of method 200 are described in detail below.
In step 210, at least one target video is determined, where the target video is a video to be played after the current video is played.
It should be noted that at least one target video in step 210 may be derived through prediction. For example, the video viewing behavior of the user may be predicted to obtain at least one target video to be played after the current video playing is finished. It should be appreciated that the target video determined by step 210 is not necessarily played after the current video play is completed. Typically, whether the target video is played depends on the user's choice. For example, after the current video is played, if a user selects a certain target video through interactive operations such as clicking, sliding and the like, the target video is played; if the user selects other videos except the target video through interactive operations such as clicking and sliding, the other videos are played, and the target video is not played.
In addition, it should be noted that, the current video refers to a video currently selected by the user for viewing, which may be in a playing state or may be in a pause state. The end of the current video play refers to the termination of the viewing of the current video by the user. There are various situations to end the playing of the current video, for example, the entire video content of the current video is completely played, or the user manually ends the playing of the current video through an interactive operation (for example, closing a video playing window, performing video switching, etc.).
There are various ways of determining the target video.
According to some embodiments, at least one video located after the current video in the current video list may be taken as the at least one target video. The current video list is the video list where the current video is located.
Fig. 3 illustrates an exemplary current video list 300 and a schematic view of a determined target video. As shown in fig. 3, the current video list 300 is a list of videos recommended to the user for a certain video application. The video that the user is currently watching (i.e., the current video) is video 310. In the current video list 300, videos located after the current video 310 are video 320, video 330, video 340. For example, video 320 alone may be targeted, videos 320, 330 may be targeted, videos 320-340 may be targeted, a next video (not shown in FIG. 3) of videos 320-340 and 340 may be targeted, and so on. The specific number of target videos may be set by those skilled in the art. The present disclosure does not limit the number of at least one target video determined in step 210.
For another example, the user is currently watching a third episode (i.e., current video) of a television series, all episodes of the television series forming the current video list, and subsequent episodes of the third episode, i.e., fourth episode, fifth episode, etc., may be taken as target videos.
According to other embodiments, the target video to be watched by the user can be predicted by a preset algorithm based on the historical video watching behavior of the user.
In step 220, for each target video determined in step 210, a time length of a downloading segment of the target video may be determined based on the current network speed of the client device and attribute information of the target video, where the time length of the downloading segment is a playing time length of a start video clip to be downloaded in the corresponding target video.
There are a number of ways in which the current network speed may be determined.
According to some embodiments, the current network speed may be determined based on the current network type. Specifically, the network speed corresponding to the current network type may be used as the current network speed based on a preset correspondence between the network type and the network speed. The network type may be, for example, wi-Fi network, 5G mobile network, 4G mobile network, 3G mobile network, fixed network, etc. In this embodiment, the current network speed is determined based on the current network type, and the current network speed can be quickly determined without calculation.
For example, the table below shows exemplary network type versus network speed.
Network type | Network speed |
Wi-Fi network | 1MB/s |
5G mobile network | 10MB/s |
4G mobile network | 1MB/s |
3G mobile network | 100KB/s |
100M fixed network | 12.5MB/s |
Based on the above table, in case that the current network type is a 5G mobile network, it can be determined that the current network speed is 10MB/s.
According to other embodiments, the current network speed may be an average download speed of the current video. The average download speed of the current video may be calculated, for example, by dividing the total amount of data downloaded during the playing of the current video by the length of time the current video has been played. In this embodiment, by calculating the average download speed and taking the average download speed as the current network speed, the estimation of the current network speed can be made more accurate.
According to other embodiments, the current network speed may be the lesser of the network speed determined based on the current network type and the average download speed of the current video. For example, based on the network speed determined by the current network type (4G mobile network) being 1MB/s, the average download speed of the current video is 200KB/s by calculation, and 200KB/s is taken as the current network speed. In this embodiment, by taking the smaller of the network speed determined based on the current network type and the average download speed of the current video as the current network speed, it is equivalent to making a pessimistic estimate of the current network speed. In the subsequent step, the duration of the downloading segment of each target video is determined based on the pessimistic estimated current network speed, so that smooth playing of each target video can be ensured.
Based on the determined current network speed and the attribute information of each target video, a time length of the downloading segment of each target video can be determined.
According to some embodiments, for any target video, the smaller the current network speed, the greater the length of time the target video corresponds to the download segment.
The smaller the current network speed, the worse the network environment. Based on the embodiment, the smaller the current network speed is, the longer the downloading segment time corresponding to the target video is, namely, the more video content is downloaded in advance, so that smooth playing of the target video can be ensured under a severe network environment.
Otherwise, if the current network speed is high, the current network environment is good, and smooth playing of the target video can be realized even without downloading in advance. In this case, therefore, the download piece corresponding to the target video can be set smaller, i.e., less video content is downloaded in advance.
According to some embodiments, the attribute information of the target video includes a total data amount and a total play duration of the target video. The total data amount of the target video is the data amount transmitted by the server to the client device in order for the client device to completely play the target video. In some embodiments, parameters such as resolution, code rate, compression algorithm used, and the like of the target video may be determined according to the current network speed, and based on the determined parameters such as resolution, code rate, compression algorithm, and the like, the amount of data (i.e., data transmission speed) required to be transmitted for each target video with a length of 1 second to play may be determined, and then the data transmission speed is multiplied by the total play duration of the target video, so as to obtain the total amount of data of the target video.
According to some embodiments, the download segment duration corresponding to the target video is determined based on the relative sizes of the total download duration of the target video and the total play duration of the target video, wherein the total download duration is determined based on the total amount of the target video and the current network speed. For example, the total download duration may be the quotient of the total data amount of the target video and the current network speed. The downloading segment duration of the target video is determined based on the relative sizes of the total downloading duration and the total playing duration, so that the balance between downloading and playing can be achieved, and the target video can be smoothly played.
According to some embodiments, the time length of the download segment corresponding to the target video may be determined based on the relative size of the total download time length of the target video and the total play time length of the target video, the ratio of the total play time length to the total download time length, the service connection establishment time length, and the service response time length.
The service connection establishment period refers to the time taken for the client device to establish a connection with the server, and the service response period refers to the time elapsed from when the client device initiated the video viewing request to when the client device received the server response. Specifically, the service connection establishment time period and the service response time period may be obtained by counting historical data of a plurality of client devices.
Based on the above embodiment, when determining the time length of the to-be-downloaded segment, the ratio of the total download time length to the total download time length, the service connection establishment time length and the service response time length are considered in addition to the relative sizes of the total download time length and the total play time length, so that smooth play of the target video is further ensured.
For example, the time duration of the download segment of the target video may be calculated according to the following formula:
in the above, t i The length of the downloading segment of the ith target video is s is the current network speed of the client device, D i For the total data size of the ith target video, T i T is the total playing time length of the ith target video 1 For the duration of service connection establishment, T 2 Is the service response duration. In case the current client device has established a connection with the server, T may be set up 1 The value of (2) is set to 0.
Based on the above formula, it can be ensured that the remaining video segments of the target video (i.e., the video segments of the target video except the downloaded starting video segment) can be completely downloaded within the total playing time of the target video, thereby ensuring smooth playing of the target video.
For example, the total data size D of a target video i Total play duration T =5 MB i Current network speed s=1 MB/s, T 1 =0s (current client device has established a connection with server), T 2 =0.2 s, then based on the above equation, the length of the downloading segment of the target video can be calculated to be 0.2s. In this example, the current network speed is high, the network environment is good, and only the initial video segment with equal length to the service response time is needed to be downloaded, namelySmooth playing of the target video can be ensured. Since the initial video segment with the same length as the response time of the server is downloaded, the initial video segment can be played immediately after the client device initiates the playing request of the target video, without waiting for the response returned by the server. The server returns a response in the playing process of the initial video clip, so that the client device can download and play the residual video clip of the target video, continuous and smooth playing of the target video is realized, and the occurrence of clamping is avoided.
Also for example, the total data amount D of a certain target video i Total play duration T =5 MB i Current network speed s=0.1 MB/s, T 1 =0.1s,T 2 =0.2 s, then based on the above equation, the length of the downloading segment of the target video can be calculated to be 8.3 seconds. The data amount of the remaining video clip is 5×10-8.3/10=0.85 MB. Based on the current network speed of 0.1MB/s, in the playing process of the target video (total playing duration is 10 s), the downloadable data volume is 0.1×10=1 MB, which is greater than the data volume of the rest video clips by 0.85MB. Therefore, in the playing process of the target video, the rest video clips of the target video can be completely downloaded, so that smooth playing of the target video is ensured, and the occurrence of clamping is avoided.
After determining the time period for downloading the segments of each target video based on step 220, step 230 is performed to download the starting video segment of each target video based on the determined time period for downloading the segments.
According to some embodiments, step 230 may be performed in response to determining that the current video download is complete or in response to determining that the current video is not complete and that the remaining playable time period is greater than a time period threshold. The remaining playable time length refers to the playing time length of the downloaded and unplayed video clip in the current video.
Based on the above embodiment, the target video is pre-downloaded only when the current video is downloaded, or when the current video is not downloaded but the remaining playable time length is greater than the time length threshold. If the current video is not downloaded and the residual playable time length is less than or equal to the time length threshold, the target video is not pre-downloaded, but only the current video is downloaded, smooth playing of the current video is preferentially ensured, and the problem that the downloading condition of the current video is influenced due to the pre-downloading of the target video is avoided.
According to some embodiments, the duration threshold may be a product of a number of at least one target video and a sum of a service connection establishment duration and a service response duration. That is, the duration threshold=the number of at least one target video (service connection establishment duration+service response duration). In the case where the client device has established a connection with the server, the service connection establishment period may be set to 0. Based on the embodiment, the pre-downloading of each target video can be started in the residual playable duration of the current video.
According to an embodiment of the present disclosure, there is also provided a video downloading apparatus. Fig. 4 shows a block diagram of a video downloading apparatus 400 according to an embodiment of the present disclosure. As shown in fig. 4, the apparatus 400 includes:
a first determining module 410 configured to determine at least one target video, where the target video is a video to be played after the current video is played;
a second determining module 420, configured to determine, based on the current network speed and attribute information of each of the at least one target video, a time length of a downloading segment corresponding to each of the at least one target video, where the time length of the downloading segment is a playing time length of a start video segment to be downloaded in the corresponding target video; and
the downloading module 430 is configured to download the respective initial video segments of the at least one target video.
According to the embodiment of the disclosure, when a user watches a current video, videos (namely target videos) which the user is likely to watch later can be pre-downloaded, so that when the user requests to watch the target videos, the target videos can be rapidly and smoothly played, waiting time of the user is reduced, and video watching experience of the user is improved. And the length (i.e. playing time length) of the initial video segment of each target video to be pre-downloaded is determined according to the current network speed of the user and the attribute information of the target video, so that the dynamic and self-adaptive pre-downloading of the target video is realized, the smooth playing of the target video is effectively ensured, and meanwhile, the flow consumption of the client and the bandwidth resource of the server are saved.
According to some embodiments, the current network speed is determined based on the current network type.
According to some embodiments, the current network speed is an average download speed of the current video.
According to some embodiments, the current network speed is the lesser of the determined network speed based on the current network type and the average download speed of the current video.
According to some embodiments, for any target video, the smaller the current network speed, the greater the length of time the target video corresponds to the download segment.
According to some embodiments, the attribute information includes a total data amount and a total play time length of the target video, and the download segment time length corresponding to the target video is determined based on a relative size of the total download time length of the target video and the total play time length of the target video, wherein the total download time length is determined based on the total data amount of the target video and the current network speed.
According to some embodiments, the download segment duration corresponding to the target video is determined based on a relative size of a total download duration of the target video and a total play duration of the target video, a ratio of the total play duration to the total download duration, a service connection establishment duration, and a service response duration.
According to some embodiments, the download module 430 is further configured to: and downloading respective initial video segments of the at least one target video in response to determining that the current video is downloaded or in response to determining that the current video is not downloaded and the remaining playable time period is greater than a time period threshold, wherein the remaining playable time period is the playing time period of the downloaded and unplayed video segments in the current video.
According to some embodiments, the duration threshold is a product of the number of the at least one target video and a sum of a service connection establishment duration and a service response duration.
According to some embodiments, the at least one target video is at least one video in a current video list that is located after the current video.
It should be appreciated that the various modules of the apparatus 400 shown in fig. 4 may correspond to the various steps in the method 200 described with reference to fig. 2. Also, the elements included in the various modules of apparatus 400 may correspond to particular implementations of the various steps in method 200. Thus, the operations, features and advantages described above with respect to method 200 apply equally to apparatus 400 and the modules and units comprised thereof. For brevity, certain operations, features and advantages are not described in detail herein.
Although specific functions are discussed above with reference to specific modules, it should be noted that the functions of the various modules discussed herein may be divided into multiple modules and/or at least some of the functions of the multiple modules may be combined into a single module. For example, the first determination module 410 and the second determination module 420 described above may be combined into a single module in some embodiments.
It should also be appreciated that various techniques may be described herein in the general context of software hardware elements or program modules. The various modules described above with respect to fig. 4 may be implemented in hardware or in hardware in combination with software and/or firmware. For example, the modules may be implemented as computer program code/instructions configured to be executed in one or more processors and stored in a computer-readable storage medium. Alternatively, these modules may be implemented as hardware logic/circuitry. For example, in some embodiments, one or more of the first determination module 410, the second determination module 420, and the download module 430 may be implemented together in a System on Chip (SoC). The SoC may include an integrated circuit chip including one or more components of a processor (e.g., a central processing unit (Central Processing Unit, CPU), microcontroller, microprocessor, digital signal processor (Digital Signal Processor, DSP), etc.), memory, one or more communication interfaces, and/or other circuitry, and may optionally execute received program code and/or include embedded firmware to perform functions.
According to embodiments of the present disclosure, there is also provided an electronic device, a readable storage medium and a computer program product.
Referring to fig. 5, a block diagram of an electronic device 500 that may be a server or a client of the present disclosure, which is an example of a hardware device that may be applied to aspects of the present disclosure, will now be described. Electronic devices are intended to represent various forms of digital electronic computer devices, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 5, the apparatus 500 includes a computing unit 501 that can perform various suitable actions and processes according to a computer program stored in a Read Only Memory (ROM) 502 or a computer program loaded from a storage unit 508 into a Random Access Memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the device 500 can also be stored. The computing unit 501, ROM 502, and RAM 503 are connected to each other by a bus 504. An input/output (I/O) interface 505 is also connected to bus 504.
Various components in the device 500 are connected to the I/O interface 505, including: an input unit 506, an output unit 507, a storage unit 508, and a communication unit 509. The input unit 506 may be any type of device capable of inputting information to the device 500, the input unit 506 may receive input numeric or character information and generate key signal inputs related to user settings and/or function control of the electronic device, and may include, but is not limited to, a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and/or a remote control. The output unit 507 may be any type of device capable of presenting information and may include, but is not limited to, a display, speakers, video/audioAn output terminal, a vibrator, and/or a printer. Storage unit 508 may include, but is not limited to, magnetic disks, optical disks. The communication unit 509 allows the device 500 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunications networks, and may include, but is not limited to, modems, network cards, infrared communication devices, wireless communication transceivers and/or chipsets, such as bluetooth TM Devices, 1302.11 devices, wi-Fi devices, wiMAX devices, cellular communication devices, and/or the like.
The computing unit 501 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 501 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 501 performs the various methods and processes described above, such as method 200. For example, in some embodiments, the method 200 may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as the storage unit 508. In some embodiments, part or all of the computer program may be loaded and/or installed onto the device 500 via the ROM 502 and/or the communication unit 509. When the computer program is loaded into RAM 503 and executed by computing unit 501, one or more steps of method 200 described above may be performed. Alternatively, in other embodiments, the computing unit 501 may be configured to perform the method 200 by any other suitable means (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and pointing device (e.g., a mouse or trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), and the internet.
The computer system may include a client and a server. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server incorporating a blockchain.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel, sequentially or in a different order, provided that the desired results of the disclosed aspects are achieved, and are not limited herein.
Although embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it is to be understood that the foregoing methods, systems, and apparatus are merely exemplary embodiments or examples, and that the scope of the present invention is not limited by these embodiments or examples but only by the claims following the grant and their equivalents. Various elements of the embodiments or examples may be omitted or replaced with equivalent elements thereof. Furthermore, the steps may be performed in a different order than described in the present disclosure. Further, various elements of the embodiments or examples may be combined in various ways. It is important that as technology evolves, many of the elements described herein may be replaced by equivalent elements that appear after the disclosure.
Claims (17)
1. A video downloading method, comprising:
determining at least one target video, wherein the target video is a video to be played after the current video is played;
Determining the time length of a downloading segment corresponding to each at least one target video based on the current network speed and the attribute information of each at least one target video, wherein the time length of the downloading segment is the playing time length of a to-be-downloaded initial video segment in the corresponding target video; and
downloading a respective starting video clip of the at least one target video,
the attribute information comprises total data amount and total playing time length of the target video, and the downloading segment time length corresponding to the target video is determined based on the relative sizes of the total downloading time length of the target video and the total playing time length of the target video, wherein the total downloading time length is determined based on the total data amount of the target video and the current network speed.
2. The method of claim 1, wherein the current network speed is determined based on a current network type.
3. The method of claim 1, wherein the current network speed is an average download speed of the current video.
4. The method of claim 1, wherein the current network speed is the lesser of a network speed determined based on a current network type and an average download speed of the current video.
5. The method of any of claims 1-4, wherein for any target video, the smaller the current network speed, the greater the length of time that the target video corresponds to the download segment.
6. The method of claim 1, wherein the download segment duration corresponding to the target video is determined based on a relative size of a total download duration of the target video and a total play duration of the target video, a ratio of the total play duration to the total download duration, a service connection establishment duration, and a service response duration.
7. The method of claim 1, wherein the downloading of the respective starting video segments of the at least one target video is performed in response to determining that the current video download is complete or in response to determining that the current video is not complete and a remaining playable time period is greater than a time period threshold, wherein the remaining playable time period is a play time period of a downloaded and not played video segment in the current video.
8. The method of claim 7, wherein the duration threshold is a product of a number of the at least one target video and a sum of a service connection establishment duration and a service response duration.
9. The method of claim 1, wherein the at least one target video is at least one video in a current video list that is located after the current video.
10. A video downloading apparatus comprising:
the first determining module is configured to determine at least one target video, wherein the target video is a video to be played after the current video is played;
the second determining module is configured to determine a time length of a downloading segment corresponding to each of the at least one target video based on the current network speed and the attribute information of each of the at least one target video, wherein the time length of the downloading segment is a playing time length of a starting video segment to be downloaded in the corresponding target video; and
a download module configured to download a respective start video clip of the at least one target video,
the attribute information comprises total data amount and total playing time length of the target video, and the downloading segment time length corresponding to the target video is determined based on the relative sizes of the total downloading time length of the target video and the total playing time length of the target video, wherein the total downloading time length is determined based on the total data amount of the target video and the current network speed.
11. The apparatus of claim 10, wherein the current network speed is determined based on a current network type.
12. The apparatus of claim 10 or 11, wherein for any target video, the smaller the current network speed, the greater the length of time that the target video corresponds to the download segment.
13. The apparatus of claim 10, wherein a download segment duration corresponding to a target video is determined based on a relative size of a total download duration of the target video and a total play duration of the target video, a ratio of the total play duration to the total download duration, a service connection establishment duration, and a service response duration.
14. The apparatus of claim 10, wherein the download module is further configured to:
and downloading respective initial video segments of the at least one target video in response to determining that the current video is not downloaded, or in response to determining that the current video is not downloaded and a remaining playable time period is greater than a time period threshold, wherein the remaining playable time period is a playing time period of the downloaded and not played video segments in the current video.
15. The apparatus of claim 14, wherein the duration threshold is a product of a number of the at least one target video and a sum of a service connection establishment duration and a service response duration.
16. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the method comprises the steps of
The memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-9.
17. A non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the method of any one of claims 1-9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111093325.5A CN113810773B (en) | 2021-09-17 | 2021-09-17 | Video downloading method and device, electronic equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111093325.5A CN113810773B (en) | 2021-09-17 | 2021-09-17 | Video downloading method and device, electronic equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113810773A CN113810773A (en) | 2021-12-17 |
CN113810773B true CN113810773B (en) | 2024-03-01 |
Family
ID=78939674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111093325.5A Active CN113810773B (en) | 2021-09-17 | 2021-09-17 | Video downloading method and device, electronic equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113810773B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900732B (en) * | 2022-04-25 | 2024-01-12 | 北京奇艺世纪科技有限公司 | Video caching method and device, electronic equipment and storage medium |
CN114979768B (en) * | 2022-05-23 | 2024-08-27 | 北京字节跳动网络技术有限公司 | Video caching method, device, equipment and storage medium |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090001806A (en) * | 2007-05-23 | 2009-01-09 | 주식회사 케이티 | Video on demand service system using pre-download of partial data and method thereof |
CN103533454A (en) * | 2013-10-29 | 2014-01-22 | 北京国双科技有限公司 | Detection method and device for video playing fluency |
WO2015071464A1 (en) * | 2013-11-18 | 2015-05-21 | Softathome | Method and system for pre-downloading video on demand |
US9414222B1 (en) * | 2013-03-12 | 2016-08-09 | Amazon Technologies, Inc. | Predictive caching devices, systems and methods |
CN106131657A (en) * | 2016-06-29 | 2016-11-16 | 乐视控股(北京)有限公司 | Video playing control method and device |
CN106911958A (en) * | 2015-12-23 | 2017-06-30 | 北京国双科技有限公司 | Video detecting method and device |
CN107483922A (en) * | 2017-10-11 | 2017-12-15 | 飞思达技术(北京)有限公司 | A kind of video performance monitoring method and device |
CN107888981A (en) * | 2017-11-16 | 2018-04-06 | 北京小米移动软件有限公司 | Audio frequency and video preload method, apparatus, equipment and storage medium |
CN109600437A (en) * | 2018-12-11 | 2019-04-09 | 网宿科技股份有限公司 | A kind of method for down loading and cache server of streaming media resource |
CN110324680A (en) * | 2018-03-30 | 2019-10-11 | 腾讯科技(深圳)有限公司 | A kind of video pushing method, device and server, client, storage medium |
CN110493654A (en) * | 2019-08-20 | 2019-11-22 | 安徽抖范视频科技有限公司 | The recommendation of video and playback method and device in a kind of list of videos |
CN110611829A (en) * | 2019-09-11 | 2019-12-24 | 北京达佳互联信息技术有限公司 | Video preloading method and device, electronic equipment and storage medium |
CN110868643A (en) * | 2019-11-21 | 2020-03-06 | 郑州阿帕斯科技有限公司 | Method and device for determining video downloading progress |
CN110933482A (en) * | 2019-12-06 | 2020-03-27 | 腾讯科技(深圳)有限公司 | Video loading method and device, computer readable storage medium and computer equipment |
CN110971935A (en) * | 2019-11-27 | 2020-04-07 | 福建天泉教育科技有限公司 | Adaptive definition video playing method and storage medium |
CN112333476A (en) * | 2021-01-05 | 2021-02-05 | 智者四海(北京)技术有限公司 | Video loading method and device |
CN112752117A (en) * | 2020-12-30 | 2021-05-04 | 百果园技术(新加坡)有限公司 | Video caching method, device, equipment and storage medium |
CN113395549A (en) * | 2021-06-25 | 2021-09-14 | 北京百度网讯科技有限公司 | Play resource downloading method, device, equipment, storage medium and program product |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10530683B2 (en) * | 2016-08-31 | 2020-01-07 | Citrix Systems, Inc. | High-quality adaptive bitrate video through multiple links |
-
2021
- 2021-09-17 CN CN202111093325.5A patent/CN113810773B/en active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090001806A (en) * | 2007-05-23 | 2009-01-09 | 주식회사 케이티 | Video on demand service system using pre-download of partial data and method thereof |
US9414222B1 (en) * | 2013-03-12 | 2016-08-09 | Amazon Technologies, Inc. | Predictive caching devices, systems and methods |
CN103533454A (en) * | 2013-10-29 | 2014-01-22 | 北京国双科技有限公司 | Detection method and device for video playing fluency |
WO2015071464A1 (en) * | 2013-11-18 | 2015-05-21 | Softathome | Method and system for pre-downloading video on demand |
CN106911958A (en) * | 2015-12-23 | 2017-06-30 | 北京国双科技有限公司 | Video detecting method and device |
CN106131657A (en) * | 2016-06-29 | 2016-11-16 | 乐视控股(北京)有限公司 | Video playing control method and device |
CN107483922A (en) * | 2017-10-11 | 2017-12-15 | 飞思达技术(北京)有限公司 | A kind of video performance monitoring method and device |
CN107888981A (en) * | 2017-11-16 | 2018-04-06 | 北京小米移动软件有限公司 | Audio frequency and video preload method, apparatus, equipment and storage medium |
CN110324680A (en) * | 2018-03-30 | 2019-10-11 | 腾讯科技(深圳)有限公司 | A kind of video pushing method, device and server, client, storage medium |
CN109600437A (en) * | 2018-12-11 | 2019-04-09 | 网宿科技股份有限公司 | A kind of method for down loading and cache server of streaming media resource |
CN110493654A (en) * | 2019-08-20 | 2019-11-22 | 安徽抖范视频科技有限公司 | The recommendation of video and playback method and device in a kind of list of videos |
CN110611829A (en) * | 2019-09-11 | 2019-12-24 | 北京达佳互联信息技术有限公司 | Video preloading method and device, electronic equipment and storage medium |
CN110868643A (en) * | 2019-11-21 | 2020-03-06 | 郑州阿帕斯科技有限公司 | Method and device for determining video downloading progress |
CN110971935A (en) * | 2019-11-27 | 2020-04-07 | 福建天泉教育科技有限公司 | Adaptive definition video playing method and storage medium |
CN110933482A (en) * | 2019-12-06 | 2020-03-27 | 腾讯科技(深圳)有限公司 | Video loading method and device, computer readable storage medium and computer equipment |
CN112752117A (en) * | 2020-12-30 | 2021-05-04 | 百果园技术(新加坡)有限公司 | Video caching method, device, equipment and storage medium |
CN112333476A (en) * | 2021-01-05 | 2021-02-05 | 智者四海(北京)技术有限公司 | Video loading method and device |
CN113395549A (en) * | 2021-06-25 | 2021-09-14 | 北京百度网讯科技有限公司 | Play resource downloading method, device, equipment, storage medium and program product |
Non-Patent Citations (3)
Title |
---|
Hiroyuki Kasai ; Naofumi Uchihara.Quick accessible mobile video system based on pre-downloading, pre-fetching and streaming technologies.2008 IEEE 19th International Symposium on Personal, Indoor and Mobile Radio Communications.2008,1-5. * |
基于P2P模式的新型视频点播系统;魏苏林;乐红兵;;微计算机信息(第26期);1-4 * |
基于混合模式的流媒体缓存调度算法;叶剑虹;叶双;;计算机科学(第02期);1-5 * |
Also Published As
Publication number | Publication date |
---|---|
CN113810773A (en) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10887210B2 (en) | Online techniques for parameter mean and variance estimation in dynamic regression models | |
CN113810773B (en) | Video downloading method and device, electronic equipment and storage medium | |
WO2017091304A1 (en) | Estimation of power consumption of individual websites | |
CN113190695B (en) | Multimedia data searching method and device, computer equipment and medium | |
CN114699767A (en) | Game data processing method, device, medium and electronic equipment | |
WO2023273562A1 (en) | Video playback method and apparatus, electronic device, and medium | |
CN114071173B (en) | Live broadcast scheduling method, device, system, electronic equipment and medium | |
CN113382310B (en) | Information recommendation method and device, electronic equipment and medium | |
CN115103210A (en) | Information processing method, device, terminal and storage medium | |
CN114510308B (en) | Method, device, equipment and medium for storing application page by mobile terminal | |
CN107798718B (en) | Animation playback method and device | |
CN113436604B (en) | Method and device for broadcasting content, electronic equipment and storage medium | |
CN113722594B (en) | Training method and device of recommendation model, electronic equipment and medium | |
CN114095564B (en) | Data processing method, device, equipment and medium | |
CN114359017B (en) | Multimedia resource processing method and device and electronic equipment | |
CN114398017B (en) | Time delay detection method and device and electronic equipment | |
CN113139093B (en) | Video searching method and device, computer equipment and medium | |
CN113722628B (en) | Method, apparatus, device and medium for displaying information stream | |
CN116401462A (en) | Interactive data analysis method and system applied to digital sharing | |
CN115334159B (en) | Method, apparatus, device and medium for processing stream data | |
CN113886746A (en) | Page loading method, device, equipment and medium | |
CN113784217A (en) | Video playing method, device, equipment and storage medium | |
CN113378001B (en) | Video playing progress adjusting method and device, electronic equipment and medium | |
CN113722534B (en) | Video recommendation method and device | |
CN113676746B (en) | Method, apparatus, device and medium for detecting live broadcast jitter |
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 |