CN114900732A - Video caching method and device, electronic equipment and storage medium - Google Patents

Video caching method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN114900732A
CN114900732A CN202210442349.5A CN202210442349A CN114900732A CN 114900732 A CN114900732 A CN 114900732A CN 202210442349 A CN202210442349 A CN 202210442349A CN 114900732 A CN114900732 A CN 114900732A
Authority
CN
China
Prior art keywords
video block
target video
target
probability
seek
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
CN202210442349.5A
Other languages
Chinese (zh)
Other versions
CN114900732B (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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202210442349.5A priority Critical patent/CN114900732B/en
Publication of CN114900732A publication Critical patent/CN114900732A/en
Application granted granted Critical
Publication of CN114900732B publication Critical patent/CN114900732B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The embodiment of the invention relates to a video caching method, a video caching device, electronic equipment and a storage medium, wherein the video caching method comprises the following steps: before caching a target video block, determining the probability of a target user triggering seek behavior on the target video block, wherein the target video block is any video block which is positioned behind a current playing point and is not cached in the target video currently played by a client; determining whether a preset pause caching condition is met currently or not based on the probability that a target user triggers seek action on a target video block and the current video caching amount; if yes, returning to the step of determining whether the preset pause caching condition is met or not based on the probability that the target user triggers the seek action on the target video block and the current video caching amount after waiting for the preset duration; and if not, caching the target video block. Therefore, the bandwidth waste caused by the fact that the video block corresponding to the seek behavior of the user is cached can be effectively avoided, and therefore the bandwidth is saved.

Description

Video caching method and device, electronic equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of video processing, in particular to a video caching method and device, electronic equipment and a storage medium.
Background
At present, in a video playing scene, in order to make the playing of a video smoother, a mode of playing while caching is generally adopted.
However, during the video playing process, the user may trigger seek behavior on the video for some reasons, such as no interest in a certain piece of video content, short viewing time, and the like. Here, the seek behavior refers to that the user jumps the playing progress of the video from the current playing position to the later playing position while watching the video.
Therefore, in the video playing process, the technical problem that the video cached by the client is seek easily occurs, so that the downloading bandwidth is wasted, and particularly, when the client caches the video in a Content Delivery Network (CDN) mode, the technical problem that the downloading bandwidth is wasted due to the generation of the downloading cost is more prominent.
Disclosure of Invention
In view of this, in order to solve the technical problem that the downloading bandwidth is wasted due to seek of the cached video at the client, embodiments of the present invention provide a video caching method and apparatus, an electronic device, and a storage medium.
In a first aspect, an embodiment of the present invention provides a video caching method, including:
before a client caches a target video block, determining the probability of triggering a seek action on the target video block by a target user, wherein the target video block is any video block which is positioned behind a current playing point and is not cached in a target video currently played by the client;
determining whether a preset pause caching condition is met currently or not based on the probability that the target user triggers seek behavior on the target video block and the current caching amount of the client to the target video;
if yes, returning to the step of executing the probability of triggering the seek action on the target video block based on the target user and determining whether the current cache amount of the target video meets the preset pause cache condition or not by the client after waiting for the preset duration;
and if not, controlling the client to cache the target video block.
In one possible embodiment, the determining the probability that the target user triggers seek action on the target video block includes:
determining one or more of the following viewing behavior data: the method comprises the following steps that watching behavior data of a target user in a preset historical time period, watching behavior data of the target user on a currently played video, and watching behavior data of a plurality of users on the target video block in the preset historical time period;
determining the probability that the target user triggers seek behavior on the target video block according to the determined one or more items of the viewing behavior data.
In one possible embodiment, the determining, according to the determined one or more items of the viewing behavior data, the probability that the target user triggers seek behavior on the target video chunk includes:
determining a first probability value based on viewing behavior data of the target user over a preset historical period of time; and/or the presence of a gas in the gas,
determining a second probability value based on the viewing behavior data of the target user on the currently played video; and/or the presence of a gas in the atmosphere,
determining a third probability value based on the viewing behavior data of the target video block by the plurality of users within the preset historical time period;
and determining the probability that the target user triggers seek behavior on the target video block according to the first probability value and/or the second probability value and/or the third probability value.
In a possible embodiment, the determining, based on the probability that the target user triggers the seek behavior on the target video block and the current buffer amount of the target video by the client, whether a preset pause buffer condition is currently met includes:
determining a prediction buffer amount corresponding to the target video block based on the probability that the target user triggers seek behavior on the target video block;
comparing the predicted buffer amount corresponding to the target video block with the current buffer amount of the target video of the client;
if the current buffer amount of the client to the target video is larger than the predicted buffer amount corresponding to the target video block, determining that the current buffer condition is met;
and if the comparison shows that the current buffer amount of the client to the target video is less than or equal to the predicted buffer amount corresponding to the target video block, determining that the current buffer state does not meet the preset pause buffer condition.
In one possible implementation, the determining, based on the probability that the target user triggers seek behavior on the target video block, a prediction buffer amount corresponding to the target video block includes:
dividing the length of the target video block by the current playing code rate to obtain the playing time consumption of the target video block;
dividing the length of the target video block by the current downloading speed to obtain the downloading time of the target video block;
calculating the playing time consumption of the target video block, the probability of the target user triggering seek action on the target video block and the downloading time consumption of the target video block by using a preset formula to obtain a prediction buffer amount corresponding to the target video block, wherein the preset formula is as follows: cn ═ Cd (1-P) + T1+ C0;
and Cn is a prediction buffer amount corresponding to the target video block, Cd is playing time consumption of the target video block, P is probability of triggering seek action on the target video block by the target user, T1 is downloading time consumption of the target video block, and C0 is a preset constant value.
In one possible embodiment, the determining the first probability value based on the video viewing behavior data of the target user in the preset historical time period includes:
determining the total number of first videos and the total number of second videos watched by the target user, wherein the first videos trigger seek behaviors in a preset historical time period, based on the video watching behavior data of the target user in the preset historical time period;
dividing the total number of the first videos of the target user triggering the seek behavior in a preset historical time period by the total number of the second videos to obtain the first probability value.
In one possible embodiment, the determining a second probability value based on the viewing behavior data of the target user on the currently played video includes:
determining the total number of first video blocks of seek occurring in the currently played video and the total number of second video blocks in the currently played video based on the viewing behavior data of the target user on the currently played video;
and dividing the total number of first video blocks of seek in the currently played video by the total number of second video blocks in the currently played video to obtain a second probability value.
In one possible embodiment, the determining a third probability value based on the viewing behavior data of the plurality of users on the target video block within the preset historical time period includes:
determining a first total number of times of triggering seek behaviors on the target video block and a total number of times of watching the target video block by a plurality of users in the preset historical time period based on the watching behavior data of the target video block by the plurality of users in the preset historical time period;
and dividing the first total times of triggering the seek behavior on the target video block by the users in the preset historical time period by the total times of watching the target video block to obtain a third probability value.
In one possible embodiment, the method further comprises:
determining whether the current downloading mode is the content distribution network CDN downloading;
and if so, executing the step of determining the probability of triggering the seek action on the target video block by the target user before caching the target video block.
In a second aspect, an embodiment of the present invention provides a video caching apparatus, where the apparatus includes:
the determining module is used for determining the probability of triggering the seek action on a target video block by a target user before the target video block is cached by a client, wherein the target video block is any video block which is positioned behind a current playing point and is not cached in the target video currently played by the client;
the judging module is used for determining whether a preset pause caching condition is met currently or not based on the probability that the target user triggers the seek behavior on the target video block and the current caching amount of the target video by the client;
the execution module is used for returning to the step of executing the probability of triggering the seek action on the target video block based on the target user and determining whether the current cache amount of the target video meets the preset cache pause condition or not by the client after waiting for a preset time length if the preset cache pause condition is met currently;
and the cache module is used for caching the target video block if the preset cache suspension condition is not met currently.
In one possible embodiment, the determining module includes:
a first determining unit for determining one or several of the following viewing behavior data: the method comprises the following steps that watching behavior data of a target user in a preset historical time period, watching behavior data of the target user on a currently played video, and watching behavior data of a plurality of users on the target video block in the preset historical time period;
a second determining unit, configured to determine, according to the determined one or more items of viewing behavior data, a probability that the target user triggers seek behavior on the target video block.
In one possible embodiment, the second determination unit includes:
a first subunit, configured to determine a first probability value based on viewing behavior data of the target user within a preset historical time period; and/or the presence of a gas in the gas,
the second subunit is used for determining a second probability value based on the viewing behavior data of the target user on the currently played video; and/or the presence of a gas in the gas,
a third subunit, configured to determine a third probability value based on the viewing behavior data of the target video block within the preset historical time period by the multiple users;
and the determining subunit is used for determining the probability that the target user triggers the seek behavior on the target video block according to the first probability value and/or the second probability value and/or the third probability value.
In one possible implementation, the determining module includes:
a third determining unit, configured to determine, based on a probability that the target user triggers a seek behavior on the target video block, a prediction buffer amount corresponding to the target video block;
the comparison unit is used for comparing the predicted buffer amount corresponding to the target video block with the current buffer amount of the target video of the client;
a fourth determining unit, configured to determine that a preset pause cache condition is currently met if the comparison result shows that the current cache amount of the client to the target video is greater than the predicted cache amount corresponding to the target video block;
and the fifth determining unit is used for determining that the current buffer amount of the client to the target video does not meet the preset pause buffer condition if the comparison result shows that the current buffer amount of the client to the target video is smaller than or equal to the predicted buffer amount corresponding to the target video block.
In a possible implementation manner, the third determining unit is specifically configured to:
dividing the length of the target video block by the current playing code rate to obtain the playing time consumption of the target video block;
dividing the length of the target video block by the current downloading speed to obtain the downloading time of the target video block;
calculating the playing time consumption of the target video block, the probability of the target user triggering seek action on the target video block and the downloading time consumption of the target video block by using a preset formula to obtain a prediction buffer amount corresponding to the target video block, wherein the preset formula is as follows: cn ═ Cd (1-P) + T1+ C0;
and Cn is a prediction buffer amount corresponding to the target video block, Cd is playing time consumption of the target video block, P is probability of triggering seek action on the target video block by the target user, T1 is downloading time consumption of the target video block, and C0 is a preset constant value.
In one possible embodiment, the first subunit is specifically configured to:
determining the total number of first videos and the total number of second videos watched by the target user, wherein the first videos trigger seek behaviors in a preset historical time period, based on the video watching behavior data of the target user in the preset historical time period;
dividing the total number of the first videos of the target user triggering the seek behavior in a preset historical time period by the total number of the second videos to obtain the first probability value.
In a possible embodiment, the second subunit is specifically configured to:
determining the total number of first video blocks of seek occurring in the currently played video and the total number of second video blocks in the currently played video based on the viewing behavior data of the target user on the currently played video;
and dividing the total number of first video blocks of seek in the currently played video by the total number of second video blocks in the currently played video to obtain a second probability value.
In a possible embodiment, the third subunit is specifically configured to:
determining a first total number of times of triggering seek behaviors on the target video block and a total number of times of watching the target video block by a plurality of users in the preset historical time period based on the watching behavior data of the target video block by the plurality of users in the preset historical time period;
and dividing the first total times of triggering the seek behavior on the target video block by the users in the preset historical time period by the total times of watching the target video block to obtain a third probability value.
In one possible embodiment, the apparatus further comprises:
the download mode determining module is used for determining whether the current download mode is CDN download;
and the probability determining module is used for determining the probability of triggering the seek action on the target video block by the target user before caching the target video block if the current downloading mode is CDN downloading.
A third aspect and an embodiment of the present invention provide an electronic device, including: a processor and a memory, the processor being configured to execute a video caching program stored in the memory to implement the video caching method of any one of the first aspect.
A fourth aspect of the present invention provides a storage medium storing one or more programs, where the one or more programs are executable by one or more processors to implement the video caching method according to any one of the first aspects.
According to the technical scheme provided by the embodiment of the invention, before caching the target video block, the probability of triggering the seek action on the target video block by the target user is determined, wherein the target video block is any uncached video block which is positioned behind the current playing point in the currently played video, and then whether the preset pause caching condition is met currently is determined based on the probability of triggering the seek action on the target video block by the target user and the current caching amount of the target video by the client; if yes, returning to the step of executing whether the preset pause caching condition is met or not based on the probability that the target user triggers the seek action on the target video block and the current caching amount of the target video by the client after waiting for the preset time length; if not, the target video block is cached, and whether the preset caching suspension condition is met or not is determined according to the probability that the user triggers the seek behavior on the target video block to be cached, so that the video caching progress can be controlled according to the probability that the target user triggers the seek behavior on the target video block before caching the target video block, the bandwidth waste caused by the fact that the video block corresponding to the seek behavior of the user is cached can be effectively avoided, and the bandwidth is saved.
Drawings
Fig. 1 is a schematic diagram of an application scenario according to an embodiment of the present invention;
fig. 2 is a flowchart of an embodiment of a video caching method according to an embodiment of the present invention;
fig. 3 is a flowchart of another video caching method according to an embodiment of the present invention;
FIG. 4 is a block diagram of a video file according to an embodiment of the present invention;
fig. 5 is a flowchart of another video caching method according to an embodiment of the present invention;
fig. 6 is a flowchart illustrating a video caching method according to another embodiment of the present invention;
fig. 7 is a block diagram of an embodiment of a video caching apparatus according to the present invention;
fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Referring to fig. 1, a schematic view of an application scenario shown in the embodiment of the present invention is shown.
The application scenario shown in fig. 1 includes: a device 101, a data storage platform 102, and a server 103. The device 101, the data storage platform 102 and the server 103 are connected through network communication.
The device 101, may be a hardware device or software that supports network connectivity to provide various network services. When device 101 is hardware, it may be a device that supports various electronic devices with a display screen, including but not limited to smart phones, tablets, laptop computers, desktop computers, and the like, with only a desktop computer being exemplified in fig. 1. When the device 101 is software, it can be installed in the electronic devices listed above. In the embodiment of the present invention, the device 101 may play the video by installing a corresponding video playing application.
The data storage platform 102 may be implemented by using one server, or may be implemented by using a server cluster formed by multiple servers, which is not limited in this embodiment of the present invention.
In embodiments of the present invention, the data storage platform 102 may be used to collect and store data related to the video played by a device (e.g., device 101). Here, the data collected by the data storage platform 102 includes, but is not limited to: viewing behavior data of the user in a preset historical time period, viewing behavior data of the user on a currently played video, and the like.
The server 103 is a server corresponding to the device 101, and the server 103 may be implemented by using one server, or may be implemented in a form that a plurality of servers form a server cluster, which is not limited in this embodiment of the present invention.
Based on the application scenario shown in fig. 1, a user may view a video through device 101, i.e., device 101 may play the video. In the prior art, in order to ensure the fluency of video playing, the device 101 generally adopts a way of playing and caching the currently played video. Where device 101 will buffer the currently playing video in the form of a video block.
However, during the playing of the video by the device 101, the user may trigger seek action on the video currently played by the device 101 for some reasons, such as no interest in a certain piece of video content, short viewing time, and the like. If the video block corresponding to the seek action is already downloaded, bandwidth waste is generated.
For example, suppose that a user triggers a seek action N times during the process of playing a video by the device 101, and suppose that the duration of the video corresponding to the seek action each time is s seconds, and suppose that the average bitrate of the video is 3Mbps, and the share ratio is P (here, the share ratio may represent the traffic downloaded by the device 101 from a P2P (Point to Point) server/the total traffic downloaded by the device 101 from a P2P server and a CDN server). Then, the user triggered N seek actions will result in a total of N × s × 3(1-p) megaflows being wasted. Further, when the number of users triggering the seek action is large, a large amount of bandwidth will be wasted in accumulation.
In view of the above, the embodiment of the present invention provides a video caching method, so as to effectively avoid a technical problem that, in a video playing process of a client, a video block corresponding to a seek behavior of a user is cached, so that download bandwidth is wasted.
The following further explains the video caching method provided by the present invention with specific embodiments in conjunction with the drawings, and the embodiments do not limit the embodiments of the present invention.
Referring to fig. 2, a flowchart of an embodiment of a video caching method according to an embodiment of the present invention is shown. For one embodiment, the process shown in fig. 2 may be applied to a server, for example, the server 103 in the application scenario shown in fig. 1, and as shown in fig. 2, the process may include the following steps:
step 201, before the client caches the target video block, determining the probability of triggering the seek action on the target video block by the target user, where the target video block is any video block which is located behind the current playing point and is not cached in the target video currently played by the client.
The target user may be a user currently watching a video through an electronic device (e.g., the device 101 illustrated in fig. 1), which may be understood as a login user of a video playing application in the electronic device.
As can be seen from the above description, when the device 101 plays a video, the currently played video may be cached by using the video block as the granularity, that is, when the device 101 plays a video, the next video block is continuously cached after finishing caching one video block. As shown in fig. 4, a block diagram of a video file is provided according to an embodiment of the present invention. Based on this, in the embodiment of the present invention, the video caching method provided in the embodiment of the present invention is executed with the video block as the granularity.
The target video block refers to any video block that is located after the current playing point and is not cached in the video currently played by the device 101 (hereinafter referred to as the target video for convenience of description).
In this embodiment of the present invention, before caching the target video block, the device 101 may first send the relevant information of the target video block to the server 103, so that the server 103 determines the probability that the target user triggers the seek behavior on the target video block. It is understood that the probability that the target user triggers seek action on the target video block is a predicted value, and not a true value.
In an embodiment, referring to fig. 3, determining the probability that the target user triggers seek behavior on the target video block may comprise the steps of:
step 301, determining one or several of the following viewing behavior data: the video watching behavior data of the target user in the preset historical time period, the watching behavior data of the target user on the currently played video, and the watching behavior data of a plurality of users on the target video block in the preset historical time period.
The preset historical time period may be a week or a month before the current day, which is not limited in this embodiment of the present invention.
As can be seen from the above description, the data storage platform 102 may collect behavior data related to the device when playing the video, and therefore, the server 103 may obtain the above viewing behavior data from the data storage platform 102.
And step 302, determining the probability that the target user triggers seek action on the target video block according to the determined one or more items of viewing behavior data.
In an embodiment, for each item of viewing behavior data determined above, the probability that a target user triggers the seek behavior on a target video block is determined from the dimension of the viewing behavior data, and then the final probability that the target user triggers the seek behavior on the target video block is determined according to the determined probability of one or more dimensions.
Specifically, in the case that it is determined in step 301 that there is video viewing behavior data of the target user within the preset history time period, determining the first probability value based on the video viewing behavior data of the target user within the preset history time period may be implemented by: determining the total number of first videos and the total number of second videos watched by the target user, which trigger the seek behavior in the preset historical time period, based on the video watching behavior data of the target user in the preset historical time period, and dividing the total number of the first videos which trigger the seek behavior by the target user in the preset historical time period by the total number of the second videos to obtain a first probability value.
Alternatively, in the case that it is determined in step 301 above that there is viewing behavior data of the target user on the currently played video, determining the second probability value based on the viewing behavior data of the target user on the currently played video may be implemented by: determining the total number of first video blocks of seek in the currently played video and the total number of second video blocks in the currently played video based on the watching behavior data of the target user on the currently played video, and dividing the total number of the first video blocks of seek in the currently played video by the total number of the second video blocks in the currently played video to obtain a second probability value.
Alternatively, in the case that it is determined in step 301 that there are multiple users viewing behavior data of the target video block within the preset history time period, determining the third probability value based on the viewing behavior data of the target video block within the preset history time period by the multiple users may be implemented by: and dividing the first total times of triggering the seek behavior of the target video block by the plurality of users in the preset historical time period by the total times of watching the target video block to obtain a third probability value based on the first total times of triggering the seek behavior of the target video block by the plurality of users in the preset historical time period and the total times of watching the target video block.
According to the above description, the probability that the final target user triggers seek action on the target video block may be determined according to any one, any two, or three of the above first probability value, the second probability value, and the third probability value. When the final probability that the target user triggers the seek action on the target video block is determined according to any two or three of the first probability value, the second probability value and the third probability value, the two or three may be weighted and summed to obtain the final probability that the target user triggers the seek action on the target video block.
For example, assume that the first probability value is p1, the weight corresponding to the first probability value is w1, the second probability value is p2, the weight corresponding to the second probability value is w2, the third probability value is p3, and the weight corresponding to the third probability value is w 3. Assuming that the probability that the target user triggers the seek behavior on the target video block is determined according to the three probability values, the first probability value, the second probability value and the third probability value may be weighted according to the following formula (one), so as to obtain the probability p that the target user triggers the seek behavior on the target video block.
p-1 w1+ p2 w2+ p3 w3 (one)
Step 202, determining whether a preset pause caching condition is met currently or not based on the probability that the target user triggers the seek behavior on the target video block and the current caching amount of the target video by the client, and if so, executing step 203; if not, go to step 204.
Step 203, after waiting for the preset time, returning to execute step 202.
And step 204, controlling the client to cache the target video block.
The following describes steps 202 to 204 collectively:
in one embodiment, in order to avoid bandwidth waste caused by a user triggering a seek behavior of a cached video block, before downloading a target video block, whether a preset pause caching condition is currently met is determined based on the probability that the target user triggers the seek behavior of the target video block and the current caching amount of a client to the target video; if the condition of the pause cache is met, the target video block is paused to be downloaded, and whether the condition of the pause cache is met or not is judged again after waiting for the preset time length; and if the condition of temporarily storing the video blocks is not met, storing the target video blocks. The preset time period may be 1s or 5s, which is not limited in the present invention.
The determination of whether the preset pause caching condition is currently met based on the probability that the target user triggers the seek action on the target video block and the current video caching amount can be realized by the flowchart shown in fig. 5. As shown in fig. 5, the method comprises the following steps:
step 501, dividing the length of the target video block by the current playing code rate to obtain the playing time of the target video block.
And 502, dividing the length of the target video block by the current downloading speed to obtain the downloading time of the target video block.
Step 503, calculating the playing time consumption of the target video block, the probability of the target user triggering the seek behavior of the target video block, and the downloading time consumption of the target video block by using a preset formula, so as to obtain the prediction buffer amount corresponding to the target video block.
The following describes steps 501 to 503 collectively:
as shown in fig. 4, each video block corresponds to a corresponding length, and the length of the target video block is divided by the current playing code rate, so as to obtain the playing time for playing the target video block. And dividing the length of the target video block by the current downloading speed to obtain the downloading time for downloading the target video block.
And then, calculating the probability of triggering the seek behavior of the target video block, the playing time consumption of the target video block and the downloading time consumption of the target video block by using a preset formula shown in the following formula (II) to obtain the prediction buffer amount corresponding to the target video block.
Cn ═ Cd (1-P) + T1+ C0 formula (two)
In the formula (ii), Cn is a predicted buffer amount corresponding to the target video block, Cd is a playing time of the target video block, P is a probability that the target user triggers a seek action on the target video block, T1 is a downloading time of the target video block, and C0 is a preset constant value.
It should be noted that C0 is a constant value set to avoid the stuck event, and the constant value may be 1s, 2s, or 4s, which is not limited by the present invention.
Step 504, comparing the predicted buffer amount corresponding to the target video block with the current buffer amount of the target video by the client, and if the current buffer amount of the target video by the client is larger than the predicted buffer amount corresponding to the target video block, executing step 505; if the current buffer amount of the target video by the client is smaller than or equal to the predicted buffer amount corresponding to the target video block, step 506 is executed.
And 505, determining that the preset pause caching condition is currently met.
Step 506, determining that the preset pause caching condition is not met currently.
The following describes steps 504 to 506 collectively:
in an embodiment, the current buffer amount of the target video by the client is compared with the obtained predicted buffer amount of the target video block, and if the current buffer amount of the target video by the client is greater than the predicted buffer amount of the target video block, the current buffer amount is sufficient for the user to watch, so that the current buffer amount can be determined to meet the preset buffer suspension condition; if the current buffer amount of the target video by the client is less than or equal to the predicted buffer amount of the target video block, the current buffer amount is not enough for the user to watch, and therefore the condition that the current buffer does not meet the preset pause buffer condition can be determined.
For example, in the process of playing the target video by the user, it is assumed that the second video block is being played at time t, and the target video block to be cached at this time is the third video block. It is assumed that the target video block is determined to be temporarily stopped at this time according to the above-described method, and the user is assumed to jump the playing progress of the target video block from the current playing point to the fourth video block directly. Therefore, the third video block corresponding to the seek behavior is not cached, so that the bandwidth waste caused by triggering the seek behavior by the user is avoided.
According to the technical scheme provided by the embodiment of the invention, before caching the target video block, the probability of triggering the seek action on the target video block by the target user is determined, wherein the target video block is any uncached video block which is positioned behind the current playing point in the currently played video, and then whether the preset pause caching condition is met currently is determined based on the probability of triggering the seek action on the target video block by the target user and the current caching amount of the target video by the client; if yes, returning to the step of executing whether the preset pause caching condition is met or not based on the probability that the target user triggers the seek action on the target video block and the current caching amount of the target video by the client after waiting for the preset time length; if not, the target video block is cached, and whether the preset caching suspension condition is met or not is determined according to the probability that the user triggers the seek behavior on the target video block to be cached, so that the video caching progress can be controlled according to the probability that the target user triggers the seek behavior on the target video block before caching the target video block, the bandwidth waste caused by the fact that the video block corresponding to the seek behavior of the user is cached can be effectively avoided, and the bandwidth is saved.
Referring to fig. 6, a flowchart of another embodiment of a video caching method according to an embodiment of the present invention is provided. The process shown in fig. 6 may include the following steps based on the process shown in fig. 5:
601, determining whether the current downloading mode is CDN downloading, if so, executing 602; if not, the flow is ended.
As can be seen from the above description, if the client caches the video in the CDN, the technical problem of wasting the download bandwidth due to the generation of the download cost is more obvious, and therefore, in an embodiment, when the client caches the video in the CDN, the video caching method provided in the embodiment of the present invention is performed. That is, it is determined whether the current downloading mode is CDN downloading, and if so, step 602 continues to be performed; if not, the flow is ended.
Step 602, before the client caches the target video block, determining the probability of triggering the seek action on the target video block by the target user, where the target video block is any video block which is located behind the current playing point and is not cached in the target video currently played by the client.
Step 603, determining whether the current state meets a preset pause caching condition or not based on the probability that the target user triggers the seek action on the target video block and the current caching amount of the target video by the client, and if so, executing step 604; if not, go to step 605.
Step 604, after waiting for a preset time, returning to execute step 603.
Step 605, caching the target video block.
For the detailed description of step 602 to step 605, reference may be made to the description of step 201 to step 204, and details are not described here.
According to the technical scheme provided by the embodiment of the invention, whether the current downloading mode is CDN downloading is determined, if yes, the probability that a target user triggers seek action on a target video block is determined, and the target video block is any video block which is positioned behind the current playing point and is not cached in the target video currently played by a client; then, whether the current state meets the preset pause caching condition can be determined based on the probability that the target user triggers the seek behavior on the target video block and the current cache amount of the client to the target video, if yes, the step of determining whether the current state meets the preset pause caching condition based on the probability that the target user triggers the seek behavior on the target video block and the current cache amount of the client to the target video is returned to be executed after waiting for the preset time length; and if not, caching the target video block. If the client caches the video in the CDN, the technical problem of wasting the downloading bandwidth due to the generation of the downloading cost is more obvious, so that when the current downloading mode is determined to be CDN downloading, whether the preset caching suspension condition is met currently is determined according to the probability that the user triggers the seek action on the target video block to be cached, the video caching progress can be controlled according to the probability that the target user triggers the seek action on the target video block before caching the target video block, the bandwidth waste caused by the fact that the video block corresponding to the seek action of the user is cached can be effectively avoided, and therefore the bandwidth is saved.
Referring to fig. 7, a block diagram of an embodiment of a video caching apparatus according to an embodiment of the present invention is shown. As shown in fig. 7, the apparatus includes:
the determining module 71 is configured to determine, before the client caches the target video block, a probability that the target user triggers a seek behavior on the target video block, where the target video block is any video block that is located after the current playing point and is not cached in the target video currently played by the client;
the judging module 72 is configured to determine whether a preset pause caching condition is currently met based on the probability that the target user triggers the seek behavior on the target video block and the current caching amount of the target video by the client;
the execution module 73 is configured to, if a preset pause caching condition is currently met, return to the step of executing the probability of triggering the seek action on the target video block based on the target user after waiting for a preset time period, and determine, by the client, whether the preset pause caching condition is currently met on the current caching amount of the target video;
and the caching module 74 is configured to cache the target video block if the preset caching suspension condition is not met currently.
In a possible embodiment, said determination module 71 comprises (not shown in the figures):
a first determining unit for determining one or several of the following viewing behavior data: the method comprises the following steps that watching behavior data of a target user in a preset historical time period, watching behavior data of the target user on a currently played video, and watching behavior data of a plurality of users on the target video block in the preset historical time period;
a second determining unit, configured to determine, according to the determined one or more items of viewing behavior data, a probability that the target user triggers seek behavior on the target video block.
In a possible embodiment, the second determination unit comprises (not shown in the figures):
a first subunit, configured to determine a first probability value based on viewing behavior data of the target user within a preset historical time period; and/or the presence of a gas in the gas,
the second subunit is used for determining a second probability value based on the viewing behavior data of the target user on the currently played video; and/or the presence of a gas in the gas,
a third subunit, configured to determine a third probability value based on the viewing behavior data of the target video block within the preset historical time period by the multiple users;
and the determining subunit is used for determining the probability that the target user triggers the seek behavior on the target video block according to the first probability value and/or the second probability value and/or the third probability value.
In a possible embodiment, the decision module 72 comprises (not shown in the figures):
a third determining unit, configured to determine, based on a probability that the target user triggers a seek behavior on the target video block, a prediction buffer amount corresponding to the target video block;
the comparison unit is used for comparing the predicted buffer level corresponding to the target video block with the current buffer level of the target video at the client;
a fourth determining unit, configured to determine that a preset pause cache condition is currently met if the comparison result shows that the current cache amount of the client to the target video is greater than the predicted cache amount corresponding to the target video block;
and the fifth determining unit is used for determining that the current buffer amount of the client to the target video does not meet the preset pause buffer condition if the comparison result shows that the current buffer amount of the client to the target video is smaller than or equal to the predicted buffer amount corresponding to the target video block.
In a possible implementation manner, the third determining unit is specifically configured to:
dividing the length of the target video block by the current playing code rate to obtain the playing time consumption of the target video block;
dividing the length of the target video block by the current downloading speed to obtain the downloading time of the target video block;
calculating the playing time consumption of the target video block, the probability of the target user triggering seek action on the target video block and the downloading time consumption of the target video block by using a preset formula to obtain a prediction buffer amount corresponding to the target video block, wherein the preset formula is as follows: cn ═ Cd (1-P) + T1+ C0;
the method comprises the steps of obtaining a target video block, obtaining a prediction buffer amount corresponding to the target video block, obtaining Cd as the playing time consumption of the target video block, obtaining P as the probability of a target user triggering seek action on the target video block, obtaining T1 as the downloading time consumption of the target video block, and obtaining C0 as a preset constant value.
In one possible embodiment, the first subunit is specifically configured to:
determining the total number of first videos and the total number of second videos watched by the target user, wherein the first videos trigger seek behaviors in a preset historical time period, based on the video watching behavior data of the target user in the preset historical time period;
dividing the total number of the first videos of the target user triggering the seek behavior in a preset historical time period by the total number of the second videos to obtain the first probability value.
In a possible embodiment, the second subunit is specifically configured to:
determining the total number of first video blocks of seek occurring in the currently played video and the total number of second video blocks in the currently played video based on the viewing behavior data of the target user on the currently played video;
and dividing the total number of first video blocks of seek in the currently played video by the total number of second video blocks in the currently played video to obtain a second probability value.
In a possible embodiment, the third subunit is specifically configured to:
determining a first total number of times of triggering seek behaviors on the target video block and a total number of times of watching the target video block by a plurality of users in the preset historical time period based on the watching behavior data of the target video block by the plurality of users in the preset historical time period;
and dividing the first total times of triggering the seek behavior on the target video block by the users in the preset historical time period by the total times of watching the target video block to obtain a third probability value.
In a possible embodiment, the device further comprises (not shown in the figures):
the download mode determining module is used for determining whether the current download mode is CDN download;
and the probability determining module is used for determining the probability of triggering the seek action on the target video block by the target user before caching the target video block if the current downloading mode is CDN downloading.
Fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present invention, where the electronic device 800 shown in fig. 8 includes: at least one processor 801, memory 802, at least one network interface 804, and other user interfaces 803. The various components in the electronic device 800 are coupled together by a bus system 805. It is understood that the bus system 805 is used to enable communications among the components connected. The bus system 805 includes a power bus, a control bus, and a status signal bus in addition to a data bus. For clarity of illustration, however, the various buses are labeled as bus system 805 in fig. 8.
The user interface 803 may include, among other things, a display, a keyboard, or a pointing device (e.g., a mouse, trackball, touch pad, or touch screen).
It will be appreciated that the memory 802 in embodiments of the invention may be either volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The non-volatile memory may be a Read-only memory (ROM), a programmable Read-only memory (PROM), an erasable programmable Read-only memory (erasabprom, EPROM), an electrically erasable programmable Read-only memory (EEPROM), or a flash memory. The volatile memory may be a Random Access Memory (RAM) which functions as an external cache. By way of example, and not limitation, many forms of RAM are available, such as static random access memory (StaticRAM, SRAM), dynamic random access memory (dynamic RAM, DRAM), synchronous dynamic random access memory (synchronous DRAM, SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced synchronous SDRAM (ESDRAM), synchronous link dynamic random access memory (synchlink DRAM, SLDRAM), and direct memory bus random access memory (DRRAM). The memory 802 described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
In some embodiments, memory 802 stores elements, executable units or data structures, or a subset thereof, or an expanded set thereof as follows: an operating system 8021 and application programs 8022.
The operating system 8021 includes various system programs, such as a framework layer, a core library layer, a driver layer, and the like, and is used for implementing various basic services and processing hardware-based tasks. The application 8022 includes various applications, such as a media player (MediaPlayer), a Browser (Browser), and the like, for implementing various application services. A program implementing a method according to an embodiment of the present invention may be included in application program 8022.
In the embodiment of the present invention, the processor 801 is configured to execute the method steps provided by the method embodiments by calling a program or an instruction stored in the memory 802, specifically, a program or an instruction stored in the application program 8022, for example, including:
before a client caches a target video block, determining the probability of triggering a seek action on the target video block by a target user, wherein the target video block is any video block which is positioned behind a current playing point and is not cached in a target video currently played by the client;
determining whether a preset pause caching condition is met currently or not based on the probability that the target user triggers seek behavior on the target video block and the current caching amount of the client to the target video;
if yes, returning to the step of executing the probability of triggering the seek action on the target video block based on the target user and determining whether the current cache amount of the target video meets the preset pause cache condition or not by the client after waiting for the preset duration;
and if not, controlling the client to cache the target video block.
The methods disclosed in the embodiments of the present invention described above may be implemented in the processor 801 or implemented by the processor 801. The processor 801 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 801. The processor 801 may be a general-purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, or discrete hardware components. The various methods, steps and logic blocks disclosed in the embodiments of the present invention may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present invention may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software elements in the decoding processor. The software elements may be located in ram, flash, rom, prom, or eprom, registers, among other storage media that are well known in the art. The storage medium is located in the memory 802, and the processor 801 reads the information in the memory 802, and combines the hardware to complete the steps of the method.
It is to be understood that the embodiments described herein may be implemented in hardware, software, firmware, middleware, microcode, or any combination thereof. For a hardware implementation, the processing units may be implemented within one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), general purpose processors, controllers, micro-controllers, microprocessors, other electronic units configured to perform the functions described herein, or a combination thereof.
For a software implementation, the techniques described herein may be implemented by means of units performing the functions described herein. The software codes may be stored in a memory and executed by a processor. The memory may be implemented within the processor or external to the processor.
The electronic device provided in this embodiment may be the electronic device shown in fig. 8, and may perform all the steps of the video caching method shown in fig. 2 to 3 or fig. 5 to 6, so as to achieve the technical effect of the video caching method shown in fig. 2 to 3 or fig. 5 to 6, which is described with reference to fig. 2 to 3 or fig. 5 to 6 for brevity, and is not described herein again.
The embodiment of the invention also provides a storage medium (computer readable storage medium). The storage medium herein stores one or more programs. Among others, the storage medium may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as read-only memory, flash memory, a hard disk, or a solid state disk; the memory may also comprise a combination of memories of the kind described above.
When one or more programs in the storage medium are executable by one or more processors, the video caching method executed on the electronic device side is realized.
The processor is used for executing the video caching program stored in the memory to realize the following steps of the video caching method executed on the electronic equipment side:
before a client caches a target video block, determining the probability of triggering a seek action on the target video block by a target user, wherein the target video block is any video block which is positioned behind a current playing point and is not cached in a target video currently played by the client;
determining whether a preset pause caching condition is met currently or not based on the probability that the target user triggers seek behavior on the target video block and the current caching amount of the client to the target video;
if yes, returning to the step of executing the probability of triggering the seek action on the target video block based on the target user and determining whether the current cache amount of the target video meets the preset pause cache condition or not by the client after waiting for the preset duration;
and if not, controlling the client to cache the target video block.
Those of skill would further appreciate that the various illustrative components and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied in hardware, a software module executed by a processor, or a combination of the two. A software module may reside in Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are merely exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (12)

1. A method for buffering video, the method comprising:
before a client caches a target video block, determining the probability of triggering a seek action on the target video block by a target user, wherein the target video block is any video block which is positioned behind a current playing point and is not cached in a target video currently played by the client;
determining whether a preset pause caching condition is met currently or not based on the probability that the target user triggers seek behavior on the target video block and the current caching amount of the client to the target video;
if yes, returning to the step of executing the probability of triggering the seek action on the target video block based on the target user and determining whether the current cache amount of the target video meets the preset pause cache condition or not by the client after waiting for the preset duration;
and if not, controlling the client to cache the target video block.
2. The method of claim 1, wherein the determining the probability that the target user triggers seek behavior on the target video block comprises:
determining one or more of the following viewing behavior data: the method comprises the following steps that watching behavior data of a target user in a preset historical time period, watching behavior data of the target user on a currently played video, and watching behavior data of a plurality of users on the target video block in the preset historical time period;
determining the probability that the target user triggers seek behavior on the target video block according to the determined one or more items of the viewing behavior data.
3. The method of claim 2, wherein determining the probability that the target user triggers seek behavior on the target video block according to the determined one or more items of the viewing behavior data comprises:
determining a first probability value based on viewing behavior data of the target user over a preset historical time period; and/or the presence of a gas in the gas,
determining a second probability value based on the viewing behavior data of the target user on the currently played video; and/or the presence of a gas in the gas,
determining a third probability value based on the viewing behavior data of the plurality of users on the target video block within the preset historical time period;
and determining the probability that the target user triggers seek behavior on the target video block according to the first probability value and/or the second probability value and/or the third probability value.
4. The method of claim 1, wherein the determining whether a preset pause buffer condition is currently met based on the probability that the target user triggers seek action on the target video block and the current buffer amount of the client on the target video comprises:
determining a prediction buffer amount corresponding to the target video block based on the probability that the target user triggers seek behavior on the target video block;
comparing the predicted buffer amount corresponding to the target video block with the current buffer amount of the target video of the client;
if the current buffer amount of the client to the target video is larger than the predicted buffer amount corresponding to the target video block, determining that the current buffer condition is met;
and if the comparison shows that the current buffer amount of the client to the target video is less than or equal to the predicted buffer amount corresponding to the target video block, determining that the current buffer state does not meet the preset pause buffer condition.
5. The method of claim 4, wherein the determining the predicted buffer amount corresponding to the target video block based on the probability that the target user triggers seek action on the target video block comprises:
dividing the length of the target video block by the current playing code rate to obtain the playing time consumption of the target video block;
dividing the length of the target video block by the current downloading speed to obtain the downloading time of the target video block;
calculating the playing time consumption of the target video block, the probability of the target user triggering seek action on the target video block and the downloading time consumption of the target video block by using a preset formula to obtain a prediction buffer amount corresponding to the target video block, wherein the preset formula is as follows: cn ═ Cd (1-P) + T1+ C0;
and Cn is a prediction buffer amount corresponding to the target video block, Cd is playing time consumption of the target video block, P is probability of triggering seek action on the target video block by the target user, T1 is downloading time consumption of the target video block, and C0 is a preset constant value.
6. The method of claim 3, wherein determining a first probability value based on video viewing behavior data of the target user over a preset historical period of time comprises:
determining the total number of first videos and the total number of second videos watched by the target user, wherein the first videos trigger seek behaviors in a preset historical time period, based on the video watching behavior data of the target user in the preset historical time period;
dividing the total number of the first videos of the target user triggering the seek behavior in a preset historical time period by the total number of the second videos to obtain the first probability value.
7. The method of claim 3, wherein determining a second probability value based on the viewing behavior data of the target user for the currently playing video comprises:
determining the total number of first video blocks of seek occurring in the currently played video and the total number of second video blocks in the currently played video based on the viewing behavior data of the target user on the currently played video;
and dividing the total number of first video blocks of seek in the currently played video by the total number of second video blocks in the currently played video to obtain a second probability value.
8. The method of claim 3, wherein determining a third probability value based on the viewing behavior data of the target video block by the plurality of users over the preset historical time period comprises:
determining a first total number of times that a plurality of users trigger seek behaviors on the target video block in the preset historical time period and a total number of times of watching the target video block based on the watching behavior data of the target video block in the preset historical time period by the plurality of users;
and dividing the first total times of triggering the seek behavior on the target video block by the users in the preset historical time period by the total times of watching the target video block to obtain a third probability value.
9. The method of claim 1, further comprising:
determining whether the current downloading mode is the content distribution network CDN downloading;
and if so, executing the step of determining the probability of triggering the seek action on the target video block by the target user before caching the target video block.
10. A video buffering apparatus, the apparatus comprising:
the determining module is used for determining the probability of triggering the seek action on a target video block by a target user before the target video block is cached by a client, wherein the target video block is any video block which is positioned behind a current playing point and is not cached in the target video currently played by the client;
the judging module is used for determining whether a preset pause caching condition is met currently or not based on the probability that the target user triggers the seek behavior on the target video block and the current caching amount of the target video by the client;
the execution module is used for returning to the step of executing the probability of triggering the seek action on the target video block based on the target user and determining whether the current cache amount of the target video meets the preset cache pause condition or not by the client after waiting for a preset time length if the preset cache pause condition is met currently;
and the caching module is used for caching the target video block if the preset caching suspension condition is not met currently.
11. An electronic device, comprising: a processor and a memory, the processor being configured to execute a video caching program stored in the memory to implement the video caching method of any one of claims 1 to 9.
12. A storage medium storing one or more programs, the one or more programs being executable by one or more processors to implement the video caching method of any one of claims 1 to 9.
CN202210442349.5A 2022-04-25 2022-04-25 Video caching method and device, electronic equipment and storage medium Active CN114900732B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210442349.5A CN114900732B (en) 2022-04-25 2022-04-25 Video caching method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210442349.5A CN114900732B (en) 2022-04-25 2022-04-25 Video caching method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN114900732A true CN114900732A (en) 2022-08-12
CN114900732B CN114900732B (en) 2024-01-12

Family

ID=82716988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210442349.5A Active CN114900732B (en) 2022-04-25 2022-04-25 Video caching method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114900732B (en)

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011143946A1 (en) * 2011-01-24 2011-11-24 华为技术有限公司 Method and system for managing multilevel caches of edge server in cdn
WO2018000624A1 (en) * 2016-06-29 2018-01-04 乐视控股(北京)有限公司 Video playing control method and device
CN107888981A (en) * 2017-11-16 2018-04-06 北京小米移动软件有限公司 Audio frequency and video preload method, apparatus, equipment and storage medium
CN108351873A (en) * 2015-09-23 2018-07-31 华为技术有限公司 A kind of buffer memory management method and device
CN108495142A (en) * 2018-04-11 2018-09-04 腾讯科技(深圳)有限公司 Method for video coding and device
CN109600437A (en) * 2018-12-11 2019-04-09 网宿科技股份有限公司 A kind of method for down loading and cache server of streaming media resource
CN109639813A (en) * 2018-12-24 2019-04-16 北京京东尚科信息技术有限公司 Video file transfer processing method and processing device, electronic equipment and storage medium
CN109769135A (en) * 2018-12-07 2019-05-17 北京交通大学 Online Video buffer memory management method and system based on joint-request rate
CN109769136A (en) * 2018-12-07 2019-05-17 北京交通大学 Online Video buffer memory management method and system based on instantaneous access rate value
CN109982159A (en) * 2017-12-27 2019-07-05 华为技术有限公司 The method and terminal of online playing stream media
CN110166817A (en) * 2019-06-24 2019-08-23 北京奇艺世纪科技有限公司 A kind of data cache method and relevant device
CN110300315A (en) * 2019-07-24 2019-10-01 北京达佳互联信息技术有限公司 A kind of video code rate determines method, apparatus, electronic equipment and storage medium
CN110312143A (en) * 2019-07-25 2019-10-08 北京达佳互联信息技术有限公司 Video code rate control method, device, electronic equipment and storage medium
CN110430461A (en) * 2019-08-28 2019-11-08 腾讯科技(深圳)有限公司 A kind of method, apparatus and video playback apparatus controlling video playing
CN110611829A (en) * 2019-09-11 2019-12-24 北京达佳互联信息技术有限公司 Video preloading method and device, electronic equipment and storage medium
EP3712805A1 (en) * 2019-03-19 2020-09-23 Beijing Baidu Netcom Science And Technology Co. Ltd. Gesture recognition method, device, electronic device, and storage medium
CN112218114A (en) * 2019-07-10 2021-01-12 中国电信股份有限公司 Video cache control method, device and computer readable storage medium
CN112423127A (en) * 2020-11-20 2021-02-26 上海哔哩哔哩科技有限公司 Video loading method and device
CN112672186A (en) * 2020-12-09 2021-04-16 北京达佳互联信息技术有限公司 Video preloading method and device
CN113691859A (en) * 2021-09-16 2021-11-23 百果园技术(新加坡)有限公司 Video caching method, device, equipment and medium
CN113810773A (en) * 2021-09-17 2021-12-17 北京百度网讯科技有限公司 Video downloading method and device, electronic equipment and storage medium

Patent Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102439934A (en) * 2011-01-24 2012-05-02 华为技术有限公司 Method and system for managing multilevel caches of edge server in cdn
WO2011143946A1 (en) * 2011-01-24 2011-11-24 华为技术有限公司 Method and system for managing multilevel caches of edge server in cdn
CN108351873A (en) * 2015-09-23 2018-07-31 华为技术有限公司 A kind of buffer memory management method and device
WO2018000624A1 (en) * 2016-06-29 2018-01-04 乐视控股(北京)有限公司 Video playing control method and device
CN107888981A (en) * 2017-11-16 2018-04-06 北京小米移动软件有限公司 Audio frequency and video preload method, apparatus, equipment and storage medium
CN109982159A (en) * 2017-12-27 2019-07-05 华为技术有限公司 The method and terminal of online playing stream media
CN108495142A (en) * 2018-04-11 2018-09-04 腾讯科技(深圳)有限公司 Method for video coding and device
CN109769135A (en) * 2018-12-07 2019-05-17 北京交通大学 Online Video buffer memory management method and system based on joint-request rate
CN109769136A (en) * 2018-12-07 2019-05-17 北京交通大学 Online Video buffer memory management method and system based on instantaneous access rate value
CN109600437A (en) * 2018-12-11 2019-04-09 网宿科技股份有限公司 A kind of method for down loading and cache server of streaming media resource
CN109639813A (en) * 2018-12-24 2019-04-16 北京京东尚科信息技术有限公司 Video file transfer processing method and processing device, electronic equipment and storage medium
EP3712805A1 (en) * 2019-03-19 2020-09-23 Beijing Baidu Netcom Science And Technology Co. Ltd. Gesture recognition method, device, electronic device, and storage medium
CN110166817A (en) * 2019-06-24 2019-08-23 北京奇艺世纪科技有限公司 A kind of data cache method and relevant device
CN112218114A (en) * 2019-07-10 2021-01-12 中国电信股份有限公司 Video cache control method, device and computer readable storage medium
CN110300315A (en) * 2019-07-24 2019-10-01 北京达佳互联信息技术有限公司 A kind of video code rate determines method, apparatus, electronic equipment and storage medium
CN110312143A (en) * 2019-07-25 2019-10-08 北京达佳互联信息技术有限公司 Video code rate control method, device, electronic equipment and storage medium
CN110430461A (en) * 2019-08-28 2019-11-08 腾讯科技(深圳)有限公司 A kind of method, apparatus and video playback apparatus controlling video playing
CN110611829A (en) * 2019-09-11 2019-12-24 北京达佳互联信息技术有限公司 Video preloading method and device, electronic equipment and storage medium
CN112423127A (en) * 2020-11-20 2021-02-26 上海哔哩哔哩科技有限公司 Video loading method and device
CN112672186A (en) * 2020-12-09 2021-04-16 北京达佳互联信息技术有限公司 Video preloading method and device
CN113691859A (en) * 2021-09-16 2021-11-23 百果园技术(新加坡)有限公司 Video caching method, device, equipment and medium
CN113810773A (en) * 2021-09-17 2021-12-17 北京百度网讯科技有限公司 Video downloading method and device, electronic equipment and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赵扬: "基于用户行为分析的视频点播系统优化技术研究", 中国优秀博士学位论文全文数据库(电子期刊) *

Also Published As

Publication number Publication date
CN114900732B (en) 2024-01-12

Similar Documents

Publication Publication Date Title
US9271015B2 (en) Systems and methods for loading more than one video content at a time
US8555163B2 (en) Smooth streaming client component
US8392600B2 (en) Dynamic stream switch control
CN110933482B (en) Video loading method and device, computer readable storage medium and computer equipment
US9942347B2 (en) Dynamically adjusting media content cache size
US9531613B2 (en) Modifying network site behavior using session-level performance metrics
CN112672186B (en) Video preloading method and device
KR20150044903A (en) Game migration
CN112738633B (en) Video playing method, device, equipment and readable storage medium
US20170104800A1 (en) Performance optimization for streaming video
CN113395572B (en) Video processing method and device, storage medium and electronic equipment
US20150199078A1 (en) Game Pause State Optimization for Embedded Applications
WO2014183487A1 (en) Video playback method and device in webpage
CN111277869A (en) Video playing method, device, equipment and storage medium
CN110209975B (en) Method, apparatus, device and storage medium for providing object
JP2020506614A (en) Predicted Bit Rate Selection for 360 Video Streaming
CN114040245B (en) Video playing method and device, computer storage medium and electronic equipment
Pleşca et al. Multimedia prefetching with optimal Markovian policies
CN115623230A (en) Live video playing method and device, electronic equipment and storage medium
CN114900732B (en) Video caching method and device, electronic equipment and storage medium
CN113365149A (en) Live broadcast picture playing method and device of live broadcast room
CN112087646A (en) Video playing method and device, computer equipment and storage medium
US11838560B2 (en) Method and system for playing back streaming content using local streaming server
CN111182330B (en) Video playing method and device
CN114491096A (en) Multimedia preloading method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant