CN110324680B - Video pushing method and device, server, client and storage medium - Google Patents

Video pushing method and device, server, client and storage medium Download PDF

Info

Publication number
CN110324680B
CN110324680B CN201810287364.0A CN201810287364A CN110324680B CN 110324680 B CN110324680 B CN 110324680B CN 201810287364 A CN201810287364 A CN 201810287364A CN 110324680 B CN110324680 B CN 110324680B
Authority
CN
China
Prior art keywords
video
information
push
client
download
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
Application number
CN201810287364.0A
Other languages
Chinese (zh)
Other versions
CN110324680A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810287364.0A priority Critical patent/CN110324680B/en
Publication of CN110324680A publication Critical patent/CN110324680A/en
Application granted granted Critical
Publication of CN110324680B publication Critical patent/CN110324680B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6175Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via Internet

Abstract

The embodiment of the invention discloses a video pushing method, a video pushing device, a server, a client and a storage medium, wherein the method comprises the following steps: and if a pre-push trigger event to the client is detected, generating video push information for the client according to a pre-push rule, determining the pre-download data volume of the video corresponding to the pushed video identifier in the push information, and generating pre-stored indication information which can be used for indicating the client to download and store the video data according to the video push information and the pre-download data volume. The invention can shorten the playing starting time of the video.

Description

Video pushing method and device, server, client and storage medium
Technical Field
The present application relates to the field of video technologies, and in particular, to a video pushing method and apparatus, a server, a client, and a storage medium.
Background
With the rapid development of electronic technology and network technology and the rapid popularization of network videos, more and more users prefer to download and watch various videos by using intelligent terminals and digital television devices.
At present, in the process of playing a network video by using an intelligent terminal, generally, after a user clicks a certain video identifier presented on a user interface, the intelligent terminal requests to download corresponding video data from a network side and plays the downloaded data. On the basis of the prior art, how to provide video playing services for users more quickly and better becomes a hot issue of research.
Disclosure of Invention
The embodiment of the invention provides a video pushing method and device, a server, a client and a storage medium, which can push and download videos in advance and improve the starting speed of the videos.
In one aspect, an embodiment of the present invention provides a video pushing method, including:
if a pre-push trigger event to a client is detected, generating video push information for the client according to a pre-push rule, wherein the video push information comprises a push video identifier;
determining the pre-download data volume of the video corresponding to the pushed video identification;
and generating pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data volume, wherein the data volume of the video data is determined according to the pre-downloaded data volume.
On the other hand, an embodiment of the present invention provides another video pushing method, which is applied to a client, and the method includes:
generating a pre-push request and sending the pre-push request to a server;
receiving pre-stored indication information which is generated by the server in response to the pre-push request and is used for indicating downloading of video data, wherein the pre-stored indication information is generated by the server according to video push information and pre-downloading data quantity, and the data quantity of the video data is determined according to the pre-downloading data quantity;
and downloading the video data according to the pre-stored indication information.
In another aspect, an embodiment of the present invention provides another video pushing method, which is applied to a server, and the method includes:
receiving a pre-push request of a client;
generating video push information, and determining the pre-download data volume of a video corresponding to a push video identifier in the push information;
and generating pre-stored indication information for indicating the client to download the video data, and sending the pre-stored indication information to the client.
In another aspect, an embodiment of the present invention provides a video pushing apparatus, including:
the generation module is used for generating video push information for the client according to a pre-push rule if a pre-push trigger event to the client is detected, wherein the video push information comprises a push video identifier;
the determining module is used for determining the pre-download data volume of the video corresponding to the pushed video identification;
the generation module is further configured to generate pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data amount.
In another aspect, an embodiment of the present invention provides another video pushing apparatus, including:
the generation module is used for generating a pre-push request;
the sending module is used for sending the pre-pushing request generated by the generating module to a server;
the receiving module is used for receiving pre-stored indication information which is generated by the server in response to the pre-push request and is used for indicating to download the video data, and the pre-stored indication information is generated by the server according to the video push information and the pre-download data volume;
and the downloading module is used for downloading the video data according to the pre-stored indication information.
In another aspect, an embodiment of the present invention provides another video pushing apparatus, including:
the receiving module is used for receiving a pre-pushing request of a client;
the generating module is used for generating video pushing information;
the determining module is used for determining the pre-download data volume of the video corresponding to the pushed video identification in the pushing information;
the generating module is further used for generating pre-stored indication information for indicating the client to download the video data;
and the sending module is used for sending the pre-stored indication information generated by the generating module to the client.
Correspondingly, an embodiment of the present invention further provides a server, including: a processor and a storage device; the storage device is used for storing program instructions; the processor calls the program instructions to perform: if a pre-push trigger event to a client is detected, generating video push information for the client according to a pre-push rule, wherein the video push information comprises a push video identifier; determining the pre-download data volume of the video corresponding to the pushed video identification; and generating pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data volume. May also be used to perform: receiving a pre-push request of a client; generating video push information, and determining the pre-download data volume of a video corresponding to a push video identifier in the push information; generating pre-stored indication information for indicating the client to download the video data, and sending the pre-stored indication information to the client; the video data is data in a video indicated by a push video identifier in video push information, and the data volume of the video data is determined according to the pre-download data volume.
Correspondingly, an embodiment of the present invention further provides a client, including: a processor and a storage device; the storage device is used for storing program instructions; the processor calls the program instructions to perform: if a pre-push trigger event to a client is detected, generating video push information for the client according to a pre-push rule, wherein the video push information comprises a push video identifier; determining the pre-download data volume of the video corresponding to the pushed video identification; and generating pre-stored indication information for indicating to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data volume. May also be used to perform: generating a pre-push request and sending the pre-push request to a server; receiving pre-stored indication information which is generated by the server in response to the pre-push request and is used for indicating downloading of video data, wherein the pre-stored indication information is generated by the server according to the video push information and the pre-download data volume; downloading video data according to the pre-stored indication information
Accordingly, the embodiment of the present invention further provides a computer storage medium, in which program instructions are stored, and when the program instructions are executed, the computer storage medium is used for implementing the above methods.
According to the embodiment of the invention, when a pre-push triggering event for the client is detected, video push information is generated for the client according to the pre-push rule, the pre-download data volume of the video corresponding to the pushed video identifier in the push information is determined, and pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier is generated according to the video push information and the pre-download data volume. When a user triggers to play a video corresponding to the video data, the video data can be directly played, so that the starting playing time of the video is shortened.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1a is a schematic structural diagram of a video push system according to an embodiment of the present invention;
FIG. 1b is a schematic view of an operation interface according to an embodiment of the present invention;
fig. 2a is an interaction diagram of a video push method according to an embodiment of the present invention;
FIG. 2b is an interaction diagram of another video push method according to an embodiment of the present invention;
FIG. 3 is an interaction diagram of another video push method according to an embodiment of the present invention;
fig. 4 is a schematic flowchart of a video pushing method according to an embodiment of the present invention;
fig. 5 is a schematic flowchart of another video pushing method according to an embodiment of the present invention;
fig. 6 is a schematic flowchart of another video pushing method according to an embodiment of the present invention;
fig. 7 is a schematic structural diagram of a video pushing apparatus according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of another video pushing apparatus provided in the embodiment of the present invention;
fig. 9 is a schematic structural diagram of a client according to an embodiment of the present invention;
fig. 10 is a schematic structural diagram of another video pushing apparatus according to an embodiment of the present invention;
fig. 11 is a schematic structural diagram of a server according to an embodiment of the present invention.
Detailed Description
The embodiment of the invention describes a method for pushing videos, and relates to a server for providing video services and a client capable of providing video access services for users. Fig. 1a is a schematic structural diagram of a video push system to which an embodiment of the invention is applicable. As shown in fig. 1a, the video push system may comprise a client 101 and a server 102. The server may be any server in a server group including a plurality of servers for providing video-related services such as video downloading. The client may be an intelligent terminal, a website in which the video application is pre-installed or can be started is installed in the intelligent terminal, the client may also be the video application itself, and the client may also be a device such as an intelligent digital television set-top box, and the like, which is not particularly limited in this invention.
In an embodiment, a client 101 in the video push system may generate a pre-push request and send the pre-push request to a server 102, after receiving the pre-push request of the client 101, the server 102 may generate video push information and determine a pre-download data amount of a video corresponding to a pushed video identifier in the push information, so as to generate pre-stored indication information, and send the pre-stored indication information to the client 101, after receiving the pre-stored indication information sent by the server 102, the client 101 may download and store video data according to an indication of the pre-stored indication information, and when a user triggers to play a video corresponding to the video data, the video data may be directly played by using the video data, so as to shorten a play start time of the video. The play-starting time length refers to a time difference between a trigger time for a user to trigger playing of a video corresponding to the video data and a playing time for the video data to be played, and the shorter the play-starting time length is, the shorter the waiting time of the user is.
In one embodiment, upon receiving a user input triggering operation requesting video push, a pre-push triggering event may be considered to be generated. For example, when the current display interface of the client is a video application presentation page as shown in fig. 1b, when a user wants to trigger a video pre-push function, a trigger operation requesting video push may be input with respect to a pre-push button in the drawing, and when the client detects the trigger operation, it is determined that a pre-push trigger event is generated.
In one embodiment, a pre-push trigger event may also be considered to have occurred when a preset auto-push trigger condition is satisfied. Where the automatic push trigger condition may be a time condition, in one embodiment, the generation of the pre-push trigger condition may be confirmed when the current time is detected to be an off-peak time (e.g., 01: 00-10: 00)). Alternatively, the automatic push trigger condition may also be a bandwidth condition, and in one embodiment, it may be determined that the pre-push trigger condition is generated when it is detected that the current available bandwidth capacity is not less than the preset bandwidth capacity threshold.
In one embodiment, in a case that the generation of the pre-push trigger event is detected, one or more push video identifiers of videos that can be pushed to the user in advance may be determined according to video ranking information such as historical play data of a viewing history of the user, current various types of hot-broadcast video ranking lists and the like, for example, it is determined that the user has viewed the third set of "earth" documentaries last time based on the viewing history, video ranking is recommended based on a first page, it is determined that the hot-broadcast ranking of the documentaries also includes a "ocean" documentary at the head of the ranking, and at this time, the first set of "ocean" documentaries may be determined as one push video identifier.
Then, a pre-download data amount of each video corresponding to the push identifier can be determined, wherein the pre-download data amount represents the data size of the relevant video needing to be downloaded in advance. The pre-download data amount may be uniformly specified, for example, the pre-download data amount of the video corresponding to each pushed video identifier is set to be 10M, and of course, the pre-download data amount of the video corresponding to each pushed video identifier may also be determined according to some calculation rules, for example, the pre-download data amount of each video is determined comprehensively according to the remaining space of the memory of the terminal, the definition of the video, the playing time length of the video, and other factors.
After the pushed video identifier and the pre-download data amount are determined, pre-stored indication information for indicating the client of the corresponding user to download the video data corresponding to the pushed video identifier can be generated, and the data amount of the video data is determined according to the pre-download data amount.
And the client of the corresponding user can download the video corresponding to the pushed video identification of the corresponding data volume in advance at a proper time according to the pre-stored indication information. When a user watches a video at the end, if the video selected to be watched is pre-stored with a part of data volume, the part of data volume is directly played, and the rest of data volume is downloaded at the same time, so that the broadcast timeliness can be effectively ensured, and the watching efficiency of the user is guaranteed.
In an embodiment, please refer to fig. 2a, which is an interaction diagram of a video push method according to an embodiment of the present invention, the method includes the following steps.
S101: the client generates a pre-push request and sends the pre-push request to the server. In one embodiment, the pre-push request carries user information and memory information of the client, where the memory information indicates the remaining memory capacity of the client. When the client detects the triggering operation of video pushing, the user information and the memory information of the client can be obtained, a pre-pushing request carrying the user information and the memory information is generated, and the pre-pushing request is sent to the server. The trigger operation may be input by the user by clicking, pressing, sliding, voice, etc. The user information may be account information of the user, such as a personal account, a user ID, and the like, which logs in the client.
S102: the server receives a pre-push request of the client. The pre-push request comprises user information of the client. The user information may refer to a user account number logged in by the client, and the user information is convenient to determine information such as the viewing history and the user permission of the user, so that a pushed video suitable for the corresponding user to view is found for the client.
S103: the server generates video push information for the client according to the pre-push rule, and determines the pre-download data volume of the video corresponding to the push video identification in the video push information.
S104: and the server generates pre-stored indication information for indicating the client to download and store the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data volume, and sends the pre-stored indication information to the client. The data amount of the video data is determined according to the pre-download data amount.
In an embodiment, after receiving the pre-push request, the server may obtain user information of the client and memory information of the client according to the pre-push request, where the memory information may be remaining memory capacity of the client. In one embodiment, the server may obtain historical playing information and/or video ranking information (hereinafter collectively referred to as recommended reference information) of the user based on the user information, further determine a pushed video identifier of a pushed video according to a pre-pushing rule and the obtained recommended reference information, and further generate video pushing information by using the pushed video identifier of the pushed video, where the video pushing information includes the pushed video identifiers of the pushed videos. In an embodiment, after generating the video push information, the server may determine a remaining memory capacity of a preset proportion as an available memory capacity, and determine a pre-download data amount of a video corresponding to a push video identifier (hereinafter referred to as a push video) in the push information based on the available memory capacity, where a total data amount of the push video is less than or equal to the available memory capacity. Further, the server may determine the pre-download data amount of each pushed video according to the generated video pushing information and the pre-download data amount, and further generate pre-stored indication information for indicating the client to download and store the video data corresponding to the pushed video identifier according to the corresponding relationship between the pushed video and the pre-download data amount, where the data amount of the video data may be determined according to the pre-download data amount.
In one embodiment, the video push information may be a video push list recording push video identifications corresponding to push videos, and the push video identifications may uniquely correspond to the push videos, for example, may be video names, video numbers, and the like, as shown in table 1-1. In this case, the correspondence between the pre-downloaded data amount of the video corresponding to the push video identifier in the video push information (i.e. the push video) and the push video may be as shown in table 1-2.
TABLE 1-1
Serial number Video name
1 Video 001
2 Video 002
3 Video 003
Tables 1 to 2
Serial number Video name Predownload data volume (unit: M)
1 Video 001 5
2 Video 002 5
3 Video 003 5
Referring to fig. 2b again, the schematic diagram is related to a flow of interaction between the client and the server according to the indication of the pre-stored indication information after receiving the pre-stored indication information.
S105: and the client receives pre-stored indication information sent by the server, and sends a video downloading request to the server according to the pre-stored indication information, wherein the video downloading request is used for requesting the video data corresponding to the pushed video identifier. The data amount of the video data is determined according to the pre-download data amount.
In an embodiment, after receiving the pre-stored indication information sent by the server, the client may obtain the video push information and the pre-download data amount of each push video recorded in the video push information from the pre-stored indication information, determine the actual download amount of each push video according to the pre-download data amount of each push video, and send a video download request to the server according to the push information and the determined actual download amount, so as to request the push video data with the actual download amount as the data amount, where the push video data is the video data corresponding to the push video identifier.
In an embodiment, a value corresponding to a data amount (i.e., an actual download amount) of the pushed video data may be equal to a pre-download data amount, or may satisfy a data amount range, where the data amount range may be obtained by up-down floating around the pre-download data amount, and a threshold of the up-down floating may be preset. For example, the threshold value of the up-down floating is 1M, the pre-stored indication information is as shown in table 1-2, and as can be seen from table 1-2, the pre-downloaded data amount corresponding to the video 002 is 5M, and then the data amount range obtained by the up-down floating with the pre-downloaded data amount as the center is [4M, 6M ], in this case, when the client needs to download the video data corresponding to the video 002, a video download request may be sent to the server to request the video 002 (i.e., the video data) with the actual download amount of [4M, 6M ].
S106: the server processes the video downloading request and obtains the video data indicated by the video downloading request.
S107: the server returns the video data to the client.
S108: and the client receives and stores the video data returned by the server according to the video downloading request.
In one embodiment, after receiving a video download request from a client, a server may obtain video data indicated by the video download request and return the obtained video data to the client, and after receiving the video data, the client may store the video data in a storage device, so that when a user subsequently plays a video corresponding to the video data, the client may directly play the video data, thereby accelerating the play-starting rate of the video. The storage device may be an SD card of the client. For example, the client sends a video download request to the server to request that 10M video 001 (i.e., video data) is actually downloaded, and after receiving the video download request, the server may obtain the 10M video 001 according to the video download request, and return the obtained 10M video 001 to the client, so that the client receives and stores the 10M video 001.
On the basis of the method described in fig. 2b, referring to fig. 3 again, the method may further include steps S301 to S308, and the client described in the method may include a storage device and a video application is pre-installed. In an embodiment, when a user logs in the video application and wants to watch a target video, a playing operation may be input for a video identifier of the target video, and the video application detects the playing operation input by the user, and when detecting the playing operation, may query whether video data corresponding to the target video is stored in a local storage device, and then returns a query result to the video application. If the query result indicates that the storage device stores the video data, on one hand, the video data can be directly utilized to play, namely, the video data is played; on the other hand, the server can also be requested to download other data in the target video after the video data is removed, that is, other video data after the video data is requested, so that the other video data can be conveniently played in subsequent playing, and the subsequent normal playing of the target video is ensured.
In other embodiments, the client may also directly execute the following steps when a preset time arrives or when an operation of the user is received: the method comprises two steps of generating video push information for a client according to a pre-push rule, determining the pre-download data volume of a video indicated by a push video identifier in the video push information, and generating pre-storage indication information according to the video push information and the pre-download data volume, wherein the client generates corresponding pre-storage indication information in advance, and performs corresponding processing such as video download request initiation at a subsequent appropriate time. For example, the client may obtain historical playing data of videos played by the user using the client based on the user information, determine which videos are most interesting to the user by analyzing the historical playing data, and rank the videos to generate the user interest ranking information. Further, the client may determine, according to a pre-push rule, a video identifier d (d is an integer greater than 0) before the ranking in the video indicated by the user interest ranking information as a pushed video identifier of the pushed video, and generate video push information by using the video push identifier of the pushed video. Further, the client can obtain the available memory capacity of the client, determine the pre-download data volume of the video indicated by each pushed video identifier in the video pushing information according to the available memory capacity, and further generate the pre-download indication information according to the video pushing information and the pre-download data volume.
Referring to fig. 4, it is a flowchart of a video pushing method according to an embodiment of the present invention, where the method according to the embodiment of the present invention may be executed by a server, a server group, or a client. The method of an embodiment of the present invention includes the following steps.
S401: and if a pre-push triggering event for the client is detected, generating video push information for the client according to a pre-push rule, wherein the video push information comprises a push video identifier.
In one embodiment, if the server performs step S401, it may be considered that a pre-push trigger event has been detected for the client if a pre-push request of the client is detected or a state parameter of the server satisfies a pre-push condition is detected. The state parameter of the server may be a time parameter, an available bandwidth capacity, etc. For example, it may be determined that the state parameter of the server satisfies the pre-push condition when the time indicated by the time parameter is a pre-push time (e.g., an off-peak time (e.g., 01: 00-10: 00)); or when the available bandwidth capacity is not less than the preset bandwidth capacity threshold, determining that the state parameter of the server meets the pre-pushing condition. Or, when the time indicated by the time parameter is the pre-push time and the available bandwidth capacity of the server is not less than the preset bandwidth capacity threshold, determining that the state parameter of the server meets the pre-push condition. The present invention is not particularly limited in this regard.
In one embodiment, when step S401 is executed by a client, it may be determined that a pre-push trigger event for the client is detected when an input touch operation requesting video push is detected. The touch operation may be input by a user through clicking, pressing, sliding, or voice.
In one embodiment, the client or the server may obtain recommendation reference information, where the recommendation reference information includes: and generating video pushing information according to the pre-pushing rule and the recommendation reference information by the video ranking information and/or the historical playing information acquired according to the user information of the client. The user information may be a user identifier of the user using the client, such as a user account and a user ID; or may be identification information of the client itself, such as an IP address of the client. The video ranking information may be determined by the server by analyzing historical playing data of all videos in the server, or may be determined according to the setting of a developer.
In one embodiment, the pre-push rule may be: and determining the video which is a (a is an integer larger than 0) before the ranking in the video and/or the video which is played in the last c days (c is an integer larger than 0) in the video indicated by the historical playing information as the push video. For such a situation, when the client or the server detects a pre-push trigger event for the client, the client or the server may determine a push video identifier of the push video according to a pre-push rule, and generate video push information by using the video push identifier of the push video.
In one embodiment, the client or the server may further mine interest tags of the user from a large amount of historical behavior data of the user based on the user information by using a data analysis method, for example, the interest tags of the user may include love, thriller, and the like. After the interest tags of the users are determined, the videos which are most likely to be interested by the users can be further calculated, and the videos are ranked to generate the user interest ranking information. In one embodiment, the preset push rule may be to determine a video with the user interest ranking information indicating d (d is an integer greater than 0) before ranking in the video as a push video. For such a situation, after determining the user interest ranking information based on the user information, the client or the server may determine, according to the preset push rule, a video d (d is an integer greater than 0) before the user interest ranking information indicates the ranking in the video as a pushed video, and generate video push information by using a video push identifier of the pushed video.
It is to be understood that, when step S401 is executed by the client, the video ranking information, the historical playing information of the user, and the user interest ranking information may also be obtained by the client from the server. That is, the video ranking information, the historical playing information of the user, and the user interest ranking information can be generated by the server and then acquired from the server by the client.
In one embodiment, the video push information may be a video push list, as shown in table 1-1. The video push list records push video identifiers corresponding to the push videos, and the push video identifiers may uniquely correspond to the push videos, and may be, for example, video names, video numbers, and the like.
S402: and determining the pre-download data volume of the video corresponding to the pushed video identification. The representation mode of the pre-download data volume can be the memory occupation volume of video data, such as 30M; it may also be the duration of the video, e.g. 20 s.
In an embodiment, the client or the server may obtain memory information of the client, where the memory information may be a remaining memory capacity of the client, and further, may determine the remaining memory capacity of a preset proportion as an available memory capacity, and further determine a pre-download data amount of a video indicated by each pushed video identifier according to video description information and the available memory capacity of the video indicated by the pushed video identifier recorded in the video push information. The video description information may include any one or more of the following information: the video display method comprises the steps of determining the total number of videos according to push video identifications recorded by video push information, the definition level of the video indicated by each push video identification recorded by the video push information, the playing time of the video indicated by each push video identification recorded by the video push information, and the total data amount of the video indicated by each push video identification recorded by the video push information.
In one embodiment, the video description information may include a total number of videos determined according to the push video identifiers recorded by the video push information, and for this case, the client or the server may divide the available memory capacity by the total number of videos determined by the push video identifiers, and determine the result of the division as the pre-download data amount of the video indicated by each push video identifier.
In an embodiment, the video description information may include a total data amount of a video indicated by each pushed video identifier recorded in the video pushing information, and for this case, the client or the server may compare the available memory capacity and the total data amount, and determine, according to a comparison result, a pre-download data amount of the video indicated by each pushed video identifier. For example, the available memory capacity is e, the video push information may be a video push list, push video identifiers corresponding to n (n is a positive integer) push videos are recorded in the video push list, an initial pre-download data amount configured for each push video in advance is M, where M is greater than 0 and smaller than a preset value, and in an embodiment, the preset value may be a value determined according to a memory capacity of the client, such as 1/10, 1/5 and the like of the memory capacity, or determined according to a video data amount of each push video, such as 1/10, 1/20 and the like of the video data amount, or certainly may be a fixed value, such as 20M. As shown in table 2-1, it can be seen from table 2-1 that the total amount of data of each push video is n × m. For this situation, if the comparison result shows that the total data amount n × m of each push video is greater than the available memory capacity e, the initial pre-download data amount m may be adjusted until the adjusted total data amount n × m of each push video is less than or equal to the available memory capacity e, and the adjusted initial pre-download data amount is the pre-download data amount.
TABLE 2-1
Figure BDA0001616273040000121
In an embodiment, in a case that it is ensured that the total data amount of each push video is less than or equal to the available memory capacity, the client or the server may further adjust the pre-download data amount of each push video in combination with at least one of the definition level and the playing time length of each push video. In one embodiment, the client or the server may compare the playing durations of the push videos, and may allocate a first pre-download data amount for the push video with a first playing duration and a second pre-download data amount for the push video with a second playing duration, where the first playing duration is longer than the second playing duration, and the first pre-download data amount is larger than the second pre-download data amount, and the duration may be a duration range, for example, the duration between 100 minutes and 120 minutes may be the first duration. Similarly, in one embodiment, the client or the server may compare the definition levels of the respective push videos, and may allocate a first amount of pre-download data for the push video of the first definition level; for a pushed video with a second level of definition, a second amount of pre-downloaded data may be allocated, the definition indicated by the first level of definition being higher than the definition indicated by the second level of definition, the first amount of pre-downloaded data being larger than the second amount of pre-downloaded data. The sharpness level indicates a range of sharpness. In one embodiment, when the client or the server adjusts the pre-download data volume of each pushed video in combination with the definition level and the playing time length of each pushed video, different weights can be distributed to the definition level and the playing time length of each pushed video, and then the pre-download data volume of each pushed video is determined in combination with the total number of videos determined by the pushed video identifier and/or the total data volume of the videos indicated by each pushed video identifier according to weight calculation.
S403: and generating pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data amount. The data amount of the video data is determined according to the pre-download data amount.
In an embodiment, the pre-stored indication information may be a pre-stored indication list, where the pre-stored indication list represents a corresponding relationship between a video corresponding to the pushed video identifier in the video pushing information and the pre-downloaded data amount. The list of prestored indications may be as shown in tables 1-2.
In an embodiment, after the client acquires the pre-stored indication information, the pre-download data amount of the video corresponding to the pushed video identifier in the push information (i.e., the pushed video) can be determined according to the pre-stored indication information, so that the actual download amount of the pushed video is determined according to the pre-download data amount, and the video data of which the data amount corresponding to the pushed video is the actual download amount is downloaded and stored to the server.
In an embodiment, the pre-stored indication information may further include request time information, and in this case, the pre-stored indication information is further used to instruct the client to download the video data corresponding to the push video identifier according to the request time information. The request time information may be determined according to video access history information received by the server, the video access history information includes an access history time period and a history video access amount of the access history time period, and/or the request time information is determined according to video watching statistical information of the client terminal obtained through statistics.
In one embodiment, the video access history information may be a video history access list, which may be as shown in table 2-2, and records the corresponding relationship between each access history time period and the historical video access amount. Through the table, it can be found that the historical video access amount is the highest when the access historical time period is 18:00-23:00, and the access historical video access amount can be called as video playing/downloading peak period.
Tables 2 to 2
Serial number Access history time period Historical video access volume (unit: G)
1 18:00-23:00 100
2 23:00-12:00 10
3 12:00-18:00 55
In one embodiment, the request time information may be a time range, and a specific value of the time range may be determined according to the access history time period included in the video access history information and the historical video access amount of the access history time period. For example, the correspondence between each access history time period and the history video access amount is as shown in table 2-2, and since the history video access amount is the highest when the access history time period is 18:00 to 23:00, it is not suitable for video pre-download. Therefore, in this case, the time range may be determined to be 18:00-23:00 for instructing the client not to perform an operation of requesting downloading of the push video data in this time range. That is, in this case, if the client detects that the current time does not belong to the time range of 18:00-23:00, the client may request the server to download the push video data.
In one embodiment, the request time information may be time interval information. In one embodiment, different time intervals may be allocated to the access history time periods according to the access history time periods included in the video access history information and the historical video access amount of the access history time periods, and a set of the time intervals corresponding to the access history time periods is time interval information. In one embodiment, the client or the server may allocate a first time interval to the first historical video visit amount and allocate a second time interval to the second historical video visit amount according to the historical video visit amount size of each visit historical time period, wherein when the first historical video visit amount is greater than the second historical video visit amount, the first time interval is smaller than the second time interval. For such a situation, after the client or the server obtains the video access history information of the server, the time interval corresponding to each time period may be determined according to the historical video access amount corresponding to each access history time period in the video access history information, and then the time interval information, that is, the request time information is generated.
In one embodiment, the correspondence of each time period, historical video access amount, and time interval may be as shown in tables 2-3. In this case, the time period to which the current time belongs may be detected, and if the current time belongs to the time period 18:00 to 23:00, the recommended video data may be requested to be downloaded at a time interval of 30 min; if the current time belongs to the time period of 23:00-12:00, the recommended video data can be requested to be downloaded at a time interval of 5 min.
Tables 2 to 3
Serial number Time period Historical video access volume (unit: G) Time interval (unit: min)
1 18:00-23:00 100 30
2 23:00-12:00 10 5
3 12:00-18:00 55 10
In an embodiment, after the client or the server obtains the video watching statistical information of the client in a certain period, the video watching frequency of the user in each time period can be determined by analyzing the video watching statistical information, and then the request time information is generated according to the video watching frequency, where the time information may be a time interval. For example, the period is 1 month, and a video viewing record of 1 month shows that within 1 month of the user, 12: 30 to 14: 00 the frequency of watching the video using the client is high (e.g. exceeding a preset frequency threshold), then 12: 30 to 14: the time interval of 00 is set to 2 hours, and then request time information indicating that the client belongs to 12: 30-14: when 00, downloading of video data is requested once at intervals of 2 hours.
Referring to fig. 5, a flow chart of a video pushing method according to an embodiment of the present invention is shown, where the method according to the embodiment of the present invention can be executed by a client. The method of an embodiment of the present invention includes the following steps.
S501: and generating a pre-push request and sending the pre-push request to a server.
S502: and receiving pre-stored indication information which is generated by the server in response to the pre-push request and is used for indicating downloading of video data, wherein the pre-stored indication information is generated by the server according to the video push information and the pre-download data volume, the video data is data in a video corresponding to the push video identifier recorded by the video push information, and the data volume of the video data is determined according to the pre-download data volume.
In an embodiment, the client may obtain memory information of the client, where the memory information indicates a remaining memory capacity of the client, and further generate a pre-push request carrying the memory information according to the memory information, where the pre-push request is used to request the server to generate pre-storage indication information according to the video push information and a pre-download data amount, where the pre-download data amount is determined by the server according to the memory information. For a specific generation manner of the pre-stored indication information, reference may be made to the related description of the above embodiments, which is not repeated herein.
S503: and downloading the video data according to the prestored indication information.
In an embodiment, after receiving the pre-stored indication information sent by the server, the client may obtain the push information and the pre-download data amount of each push video recorded in the push information from the pre-stored indication information, determine an actual download amount (i.e., a data amount of video data) of each push video according to the pre-download data amount of each push video, and send the push video (i.e., video data) whose data amount is the actual download amount to the server according to the push information and the determined actual download amount.
In one embodiment, the pre-stored indication information may further include request interval information, in which case, the pre-stored indication information is further used to instruct the client to request downloading of the video data according to the time interval indicated by the request interval information. For example, the pre-stored indication information indicates that the client requests the target data at a time interval of one minute, and after obtaining the pre-stored indication information, the client may download and store the video data at a time interval of one minute according to the pre-stored indication information.
In an embodiment, before the client performs step S503, it may further detect whether a status parameter of the client meets a pre-download condition, and if so, step S503, the status parameter of the client includes at least one of a time parameter, a network parameter, and a video playing status parameter. In one embodiment, the pre-download condition may include a first pre-download condition, a second pre-download condition, and a third pre-download condition, wherein the first pre-download condition may be that the time indicated by the time parameter is a pre-request time (e.g., an off-peak time (e.g., 01: 00-10: 00)); the second pre-download condition may be that the network speed indicated by the network parameter is greater than or equal to a preset network speed threshold (e.g. 400 k/s); the third pre-download condition may be that the video play status parameter indicates that the video is not played. For this situation, the client may determine that the state parameter of the client satisfies the pre-download condition when at least one of the first pre-download condition, the second pre-download condition, and the third pre-download condition is satisfied, and then execute step S503.
In one embodiment, if a client receives a play operation input by the client, the client determines a to-be-played video identifier corresponding to the play operation, queries whether video data corresponding to the to-be-played video identifier exists in the downloaded and stored video data, and if so, extracts and plays the video data, thereby improving the timeliness of starting playing of the video. The playing operation can be input by the user through clicking, pressing, sliding, voice and the like.
In an embodiment, in the process of playing the video data, the client may also download, to the server, other video data subsequent to the video data in the video (hereinafter referred to as the video to be played) indicated by the video identifier to be played, so as to ensure subsequent normal playing of the video to be played.
In one embodiment, the client downloads and stores the video data according to the pre-stored indication information, and may further detect whether the storage time of the target video data is greater than or equal to a preset storage failure time, and if so, delete the target video data.
Referring to fig. 6, it is a flowchart of a video pushing method according to an embodiment of the present invention, where the method according to the embodiment of the present invention may be executed by a server or a server group. The method of an embodiment of the present invention includes the following steps.
S601: and receiving a pre-push request of a client.
S602: and generating video push information, and determining the pre-download data volume of the video corresponding to the push video identification in the push information.
In an embodiment, the pre-push request includes user information of the client, after receiving the pre-push request, the server may obtain recommendation reference information of the user based on the user information, determine a push video identifier of the push video according to the pre-push rule and the obtained recommendation reference information, and generate video push information by using the push video identifier of the push video, where the video push information records push video identifiers of all push videos. For a specific generation manner of the video push information, reference may be made to the related description of the above embodiments, which is not described herein again.
In one embodiment, the pre-push request further includes memory information of the client, where the memory information indicates the remaining memory capacity of the client. After the server generates the video pushing information, the server can also extract the memory information from the pre-pushing request, and further determine the pre-download data volume of the video indicated by the pushing video identifier in the pushing information according to the memory information. How the server determines the pre-download data amount of the video indicated by the pushed video identifier in the push information according to the memory information may refer to the related description of the above embodiment, and details are not described here again.
S603: and generating pre-stored indication information for indicating the client to download the video data, and sending the pre-stored indication information to the client. The video data is data in a video corresponding to the pushed video identifier in the video pushing information, and the data volume of the video data is determined according to the pre-download data volume.
In an embodiment, the pre-stored indication information may be generated by the server according to the video push information and the amount of the pre-downloaded data, and the pre-stored indication information may represent a corresponding relationship between the amount of the pre-downloaded data of the video indicated by the push video identifier in the video push information (i.e., the push video) and the push video, as shown in tables 1-2. How the server generates the pre-stored indication information according to the video push information and the pre-downloaded data amount may refer to the related description of the above embodiments, and details are not repeated here.
Embodiments of the present invention further provide a computer storage medium, in which program instructions are stored, and when the program instructions are executed, the computer storage medium is configured to implement the corresponding method described in the above embodiments.
Referring to fig. 7, a schematic structural diagram of a video pushing apparatus according to an embodiment of the present invention is shown, where the video pushing apparatus may be disposed in a server or a client.
In one implementation of the apparatus of the embodiment of the present invention, the apparatus includes the following structure.
A generating module 201, configured to generate, according to a pre-push rule, video push information for a client if a pre-push trigger event for the client is detected, where the video push information includes a push video identifier;
a determining module 202, configured to determine a pre-download data amount of a video corresponding to the pushed video identifier;
the generating module 201 is further configured to generate pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data amount, where the data amount of the video data is determined according to the pre-downloaded data amount.
In an embodiment, the generating module 201 is specifically configured to obtain recommendation reference information, where the recommendation reference information includes: video ranking information and/or historical playing information acquired according to user information of the client; and generating video push information for the client according to the pre-push rule and the recommendation reference information.
In one embodiment, the determining module 202 includes: an obtaining unit 2021, configured to obtain memory information of the client, where the memory information is a remaining memory capacity of the client; a determining unit 2022, configured to determine the remaining memory capacity of a preset ratio as an available memory capacity; the determining unit 2022 is further configured to determine, according to the video description information of the video corresponding to the pushed video identifier in the video push information and the available memory capacity, a pre-download data amount of the video corresponding to each pushed video identifier.
In one embodiment, the video description information includes any one or more of the following information: the video display method comprises the steps of determining the total number of videos according to push video identifications recorded by the video push information, the definition level of a video indicated by each push video identification recorded by the video push information, the playing time of the video indicated by each push video identification recorded by the video push information, and the total data amount of the video indicated by each push video identification recorded by the video push information.
In one embodiment, the pre-stored indication information is further used for instructing the client to download the video data corresponding to the push video identifier according to request time information, wherein the request time information is determined according to video access history information received by a server for providing a video download service, the video access information includes an access history time period and a historical video access amount in the access history time period, and/or the request time information is determined according to video viewing statistical information of the client obtained through statistics.
In the embodiment of the present invention, the specific implementation of the above modules may refer to the description of relevant contents in the embodiment corresponding to fig. 4.
Referring to fig. 8, a schematic structural diagram of another video pushing apparatus according to an embodiment of the present invention is shown, where the video pushing apparatus may be disposed in a client.
In one implementation of the apparatus of the embodiment of the present invention, the apparatus includes the following structure.
A generating module 301, configured to generate a pre-push request; a sending module 302, configured to send the pre-push request generated by the generating module to a server; a receiving module 303, configured to receive pre-stored indication information, which is generated by the server in response to the pre-push request and used for indicating to download video data, where the pre-stored indication information is generated by the server according to video push information and a pre-download data amount, and the data amount of the video data is determined according to the pre-download data amount; and a downloading module 304, configured to download the video data according to the pre-stored indication information.
In one embodiment, the generation module 301 includes: an obtaining unit 3011, configured to obtain memory information, where the memory information is a remaining memory capacity; a generating unit 3012, configured to generate a pre-push request carrying the memory information according to the memory information, where the pre-push request is used to request a server to generate pre-storage indication information according to video push information and a pre-download data amount, where the pre-download data amount is determined by the server according to the memory information.
In one embodiment, the apparatus further comprises: a detecting module 305, configured to detect whether a status parameter meets a pre-download condition, and if the status parameter meets the pre-download condition, trigger the downloading module 304 to download the video data according to the pre-stored indication information, where the status parameter includes at least one of a time parameter, a network parameter, and a video playing status parameter.
In one embodiment, the apparatus further comprises: a determining module 306, configured to determine, if the input play operation is received through the receiving module 303, a to-be-played video identifier corresponding to the play operation; the query module 307 is configured to query whether video data corresponding to the to-be-played video identifier exists in the download module 304; the extracting module 308 is configured to extract and play the video data from the downloading module 304 if the querying module 307 queries that the video data corresponding to the to-be-played video identifier exists in the downloaded video data.
In the embodiment of the present invention, the detailed implementation of the above modules may refer to the description of relevant contents in the embodiment corresponding to fig. 5.
Referring to fig. 9 again, it is a schematic structural diagram of a client according to an embodiment of the present invention, and the client according to an embodiment of the present invention may include a processor 401, a storage device 402, and a communication interface 403. The processor 401, the storage device 402 and the communication interface 403 can exchange data, and the processor 401 implements a corresponding video push function.
The storage device 402 may include a volatile memory (volatile memory), such as a random-access memory (RAM); the storage device 402 may also include a non-volatile memory (non-volatile memory), such as a flash memory (flash memory), a solid-state drive (SSD), etc.; the storage means 402 may also comprise a combination of memories of the kind described above.
The communication interface 403 may interact data with a server and various clients, and the server may send response information carrying the classification result to the communication interface 403, and the response information is output by the communication interface 403 to the processor 401 of the client for processing.
The processor 401 may be a Central Processing Unit (CPU). The Processor 401 may also be other general purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field-Programmable Gate arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
In a first possible implementation, the processor 401 of the client invokes a program instruction stored in the storage device 402, so as to generate, according to a pre-push rule, video push information for the client if a pre-push trigger event for the client is detected, where the video push information includes a push video identifier; determining the pre-download data volume of the video corresponding to the pushed video identification; and generating pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data volume, wherein the data volume of the video data is determined according to the pre-downloaded data volume.
In one embodiment, the processor 401 is further configured to obtain recommendation reference information, where the recommendation reference information includes: video ranking information and/or historical playing information acquired according to user information of the client; and generating video push information for the client according to a pre-push rule and the recommendation reference information.
In an embodiment, the processor 401 is further configured to obtain memory information, where the memory information is a remaining memory capacity; determining the residual memory capacity of a preset proportion as an available memory capacity; and determining the pre-download data volume of the video corresponding to each pushed video identifier according to the video description information of the video corresponding to the pushed video identifier in the video pushing information and the available memory capacity.
In one embodiment, the video description information includes any one or more of the following information: : the video display method comprises the steps of determining the total number of videos according to push video identifications recorded by the video push information, the definition level of a video indicated by each push video identification recorded by the video push information, the playing time of the video indicated by each push video identification recorded by the video push information, and the total data amount of the video indicated by each push video identification recorded by the video push information.
In one embodiment, the pre-stored indication information is further used for instructing the client to download the video data corresponding to the push video identifier according to request time information, wherein the request time information is determined according to video access history information received by a server for providing a video download service, the video access information includes an access history time period and a historical video access amount in the access history time period, and/or the request time information is determined according to video viewing statistical information of the client obtained through statistics.
In one embodiment, the processor 401 is further configured to generate a pre-push request, and send the pre-push request to a server; receiving pre-stored indication information which is generated by the server in response to the pre-push request and is used for indicating downloading of video data, wherein the pre-stored indication information is generated by the server according to video push information and pre-downloading data quantity, and the data quantity of the video data is determined according to the pre-downloading data quantity; and downloading the video data according to the pre-stored indication information.
In an embodiment, the processor 401 is further configured to obtain memory information, where the memory information is a remaining memory capacity; and generating a pre-push request carrying the memory information according to the memory information, wherein the pre-push request is used for requesting a server to generate pre-storage indication information according to video push information and pre-download data volume, and the pre-download data volume is determined by the server according to the memory information.
In an embodiment, the processor 401 is further configured to detect whether a status parameter meets a pre-download condition, and if the status parameter meets the pre-download condition, execute the step of downloading and storing the video data according to the pre-stored indication information, where the status parameter includes at least one of a time parameter, a network parameter, and a video playing status parameter.
In an embodiment, the processor 401 is further configured to determine, if an input play operation is received, a video identifier to be played corresponding to the play operation; inquiring whether video data corresponding to the video identifier to be played exists in the downloaded video data; and if so, extracting and playing the video data.
In the embodiment of the present invention, the processor 401 may be implemented as described in the foregoing embodiment corresponding to fig. 4 or 5.
Referring to fig. 10, a schematic structural diagram of another video pushing apparatus according to an embodiment of the present invention is shown, where the video pushing apparatus may be disposed in a server.
In one implementation of the apparatus of the embodiment of the present invention, the apparatus includes the following structure.
A receiving module 501, configured to receive a pre-push request of a client; a generating module 502, configured to generate video push information; a determining module 503, configured to determine a pre-download data amount of a video indicated by a pushed video identifier in the pushing information; a generating module 502, configured to generate pre-stored indication information for indicating the client to download the video data; a sending module 504, configured to send the pre-stored indication information generated by the generating module 502 to the client; and the video data is data in a video indicated by the push video identification in the video push information, and the data volume of the video data is determined according to the pre-download data volume.
In an embodiment, the pre-push request further includes memory information of the client, where the memory information is a remaining memory capacity of the client, and the determining module 503 is specifically configured to extract the memory information from the pre-push request, and determine, according to the extracted memory information, a pre-download data amount of a video corresponding to a pushed video identifier in the push information.
In the embodiment of the present invention, the detailed implementation of the above modules may refer to the description of relevant contents in the embodiment corresponding to fig. 6.
Referring to fig. 11, it is a schematic structural diagram of a server according to an embodiment of the present invention, where the server according to an embodiment of the present invention may include a processor 601, a storage device 602, and a communication interface 603. Data can be interacted among the processor 601, the storage device 602 and the communication interface 603, and the processor 601 realizes a corresponding video push function.
The storage device 602 may include a volatile memory (volatile memory), such as RAM; the storage device 602 may also include a non-volatile memory (non-volatile memory), such as a flash memory (SSD), etc.; the storage means 602 may also comprise a combination of memories of the kind described above.
The communication interface 603 can interact data with other servers and clients, and the server can send pre-stored indication information to the communication interface 603 and output the pre-stored indication information to the processor 601 of the client for processing.
The processor 601 may be a CPU. The processor 601 may also be other general purpose processors, DSPs, ASICs, FPGAs, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
In a first possible implementation, the processor 601 of the server invokes a program instruction stored in the storage device 602, so as to generate, according to a pre-push rule, video push information for a client if a pre-push trigger event for the client is detected, where the video push information includes a pushed video identifier; determining the pre-download data volume of the video corresponding to the pushed video identification; and generating pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier according to the video pushing information and the pre-downloaded data volume, wherein the data volume of the video data is determined according to the pre-downloaded data volume.
In one embodiment, the processor 601 is further configured to obtain recommendation reference information, where the recommendation reference information includes: video ranking information and/or historical playing information acquired according to user information of the client; and generating video push information for the client according to a pre-push rule and the recommendation reference information.
In an embodiment, the processor 601 is further configured to obtain memory information of the client, where the memory information indicates a remaining memory capacity of the client; determining the residual memory capacity of a preset proportion as an available memory capacity; and determining the pre-download data volume of the video corresponding to each pushed video identifier according to the video description information of the video corresponding to the pushed video identifier and the available memory capacity.
In one embodiment, the video description information includes any one or more of the following information: the video display method comprises the steps of determining the total number of videos according to push video identifications recorded by the video push information, the definition level of a video indicated by each push video identification recorded by the video push information, the playing time of the video indicated by each push video identification recorded by the video push information, and the total data amount of the video indicated by each push video identification recorded by the video push information.
In one embodiment, the pre-stored indication information is further used for instructing the client to download the video data corresponding to the push video identifier according to request time information, wherein the request time information is determined according to video access history information received by a server for providing a video download service, the video access information includes an access history time period and a historical video access amount in the access history time period, and/or the request time information is determined according to video viewing statistical information of the client obtained through statistics.
In one embodiment, the processor 601 is further configured to receive a pre-push request from a client; generating video pushing information, and determining the pre-download data volume of a video indicated by a pushing video identifier in the pushing information; generating pre-stored indication information for indicating the client to download the video data, and sending the pre-stored indication information to the client; the video data is data in a video indicated by a push video identifier in video push information, and the data volume of the video data is determined according to the pre-download data volume.
In an embodiment, the pre-push request further includes memory information of the client, where the memory information is a remaining memory capacity of the client, and the processor 601 is further configured to extract the memory information from the pre-push request, and determine, according to the extracted memory information, a pre-download data size of a video corresponding to a pushed video identifier in the push information.
In the embodiment of the present invention, the specific implementation of the processor 601 may refer to the description related to the embodiment corresponding to fig. 4 or 6.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. The storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), or the like.
While the invention has been described with reference to a number of embodiments, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (14)

1. A video push method, comprising:
if a pre-push trigger event to a client is detected, generating video push information for the client according to a pre-push rule, wherein the video push information comprises a push video identifier;
determining the pre-download data volume of the video corresponding to the pushed video identification;
generating pre-stored indication information for indicating the client to download the video data corresponding to the pushed video identifier;
wherein the pre-stored indication information comprises: determining information for representing the corresponding relation between the video corresponding to the video identifier in the video pushing information and the pre-downloaded data volume according to the video pushing information and the pre-downloaded data volume; and the number of the first and second electrodes,
the pre-stored indication information further comprises: requesting time information, wherein the requesting time information is time interval information, different time intervals are distributed to the access history time periods according to the access history time periods and the history video access amount of the access history time periods, which are included in the video access history information, and the time interval information is generated according to the time intervals;
and the pre-stored indication information is used for indicating the client to download the video corresponding to the pushed video identifier according to the corresponding relation between the video corresponding to the pushed video identifier in the video pushing information and the pre-downloaded data amount at the time interval corresponding to the access historical time period.
2. The method of claim 1, wherein generating video push information for the client according to a pre-push rule comprises:
acquiring recommendation reference information, wherein the recommendation reference information comprises: video ranking information and/or historical playing information acquired according to user information of the client;
and generating video push information for the client according to the pre-push rule and the recommendation reference information.
3. The method of claim 1 or 2, wherein the determining that the pushed video identifies the amount of pre-downloaded data for the corresponding video comprises:
acquiring memory information of the client, wherein the memory information is the residual memory capacity of the client;
determining the residual memory capacity of a preset proportion as an available memory capacity;
and determining the pre-download data volume of the video corresponding to each pushed video identifier according to the video description information of the video corresponding to the pushed video identifier in the video pushing information and the available memory capacity.
4. The method of claim 3, wherein the video description information comprises any one or more of:
and determining the total number of videos according to the pushed video identifiers in the video pushing information, the definition level of the video corresponding to each pushed video identifier in the video pushing information, the playing time of the video corresponding to each pushed video identifier in the video pushing information, and the total data amount of the video corresponding to each pushed video identifier in the video pushing information.
5. A video pushing method is applied to a client side, and comprises the following steps:
generating a pre-push request and sending the pre-push request to a server;
receiving pre-stored indication information which is generated by the server in response to the pre-push request and is used for indicating downloading of video data;
downloading video data according to the pre-stored indication information;
wherein the pre-stored indication information comprises: determining information for representing the corresponding relation between the video corresponding to the video identifier in the video pushing information and the pre-download data volume according to the video pushing information and the pre-download data volume; and the number of the first and second electrodes,
the pre-stored indication information further comprises: requesting time information, wherein the requesting time information is time interval information, different time intervals are allocated to the access history time periods according to the access history time periods included in the video access history information and the historical video access amount of the access history time periods, and the time interval information is generated according to the time intervals;
and the pre-stored indication information is used for indicating the client to download the video corresponding to the pushed video identifier according to the corresponding relation between the video corresponding to the pushed video identifier in the video pushing information and the pre-downloaded data amount at the time interval corresponding to the access historical time period.
6. The method of claim 5, wherein the generating the pre-push request comprises:
acquiring memory information, wherein the memory information is the residual memory capacity;
and generating a pre-push request carrying the memory information according to the memory information, wherein the pre-push request is used for requesting a server to generate the pre-storage indication information according to video push information and pre-download data volume, and the pre-download data volume is determined by the server according to the memory information.
7. The method of claim 5, wherein prior to downloading video data according to the pre-stored indication information, the method further comprises:
detecting whether the state parameters meet the pre-downloading condition;
and if the pre-downloading condition is met, executing the step of downloading the video data according to the pre-stored indication information, wherein the state parameter comprises at least one of a time parameter, a network parameter and a video playing state parameter.
8. The method of any one of claims 5-7, further comprising:
if the input playing operation is received, determining a video identifier to be played corresponding to the playing operation;
inquiring whether the downloaded video data has video data corresponding to the video identifier to be played;
and if so, extracting and playing the video data.
9. A video pushing method is applied to a server, and comprises the following steps:
receiving a pre-push request of a client;
generating video push information, and determining the pre-download data volume of a video corresponding to a push video identifier in the push information;
generating pre-stored indication information for indicating the client to download the video data, and sending the pre-stored indication information to the client;
wherein the pre-stored indication information comprises: determining information for representing the corresponding relation between the video corresponding to the video identifier in the video pushing information and the pre-download data volume according to the video pushing information and the pre-download data volume; and the number of the first and second electrodes,
the pre-stored indication information further comprises: requesting time information, wherein the requesting time information is time interval information, different time intervals are allocated to the access history time periods according to the access history time periods included in the video access history information and the historical video access amount of the access history time periods, and the time interval information is generated according to the time intervals;
and the pre-stored indication information is used for indicating the client to download the video corresponding to the pushed video identifier according to the corresponding relation between the video corresponding to the pushed video identifier in the video pushing information and the pre-downloaded data amount at the time interval corresponding to the access historical time period.
10. The method according to claim 9, wherein the pre-push request further includes memory information of the client, the memory information is a remaining memory capacity of the client, and the determining the pre-download data amount of the video corresponding to the pushed video identifier in the push information includes:
extracting memory information from the pre-push request;
and determining the pre-download data volume of the video corresponding to the pushed video identification in the pushing information according to the extracted memory information.
11. A video push apparatus, comprising:
the generation module is used for generating video push information for the client according to a pre-push rule if a pre-push trigger event for the client is detected, wherein the video push information comprises a push video identifier;
the determining module is used for determining the pre-download data volume of the video corresponding to the pushed video identification;
the generation module is further configured to generate pre-stored indication information used for indicating the client to download the video data corresponding to the pushed video identifier;
wherein the pre-stored indication information comprises: determining information for representing the corresponding relation between the video corresponding to the video identifier in the video pushing information and the pre-downloaded data volume according to the video pushing information and the pre-downloaded data volume; and the number of the first and second electrodes,
the pre-stored indication information further comprises: requesting time information, wherein the requesting time information is time interval information, different time intervals are allocated to the access history time periods according to the access history time periods included in the video access history information and the historical video access amount of the access history time periods, and the time interval information is generated according to the time intervals;
and the pre-stored indication information is used for indicating the client to download the video corresponding to the pushed video identifier according to the corresponding relation between the video corresponding to the pushed video identifier in the video pushing information and the pre-downloaded data amount at the time interval corresponding to the access historical time period.
12. A server, characterized by comprising a processor and a storage device, the processor and the storage device being interconnected, wherein the storage device is configured to store a computer program comprising program instructions, the processor being configured to invoke the program instructions to perform the respective method according to any one of claims 1-4 or 9-10.
13. A client, characterized by comprising a processor and a storage device, the processor and the storage device being interconnected, wherein the storage device is configured to store a computer program, the computer program comprising program instructions, the processor being configured to invoke the program instructions to perform the respective method according to any one of claims 1-4 or 5-8.
14. A computer storage medium having stored thereon program instructions for implementing a method as claimed in any one of claims 1 to 4, or implementing a method as claimed in any one of claims 5 to 8, or implementing a method as claimed in claim 9 or 10 when executed.
CN201810287364.0A 2018-03-30 2018-03-30 Video pushing method and device, server, client and storage medium Active CN110324680B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810287364.0A CN110324680B (en) 2018-03-30 2018-03-30 Video pushing method and device, server, client and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810287364.0A CN110324680B (en) 2018-03-30 2018-03-30 Video pushing method and device, server, client and storage medium

Publications (2)

Publication Number Publication Date
CN110324680A CN110324680A (en) 2019-10-11
CN110324680B true CN110324680B (en) 2021-09-28

Family

ID=68112165

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810287364.0A Active CN110324680B (en) 2018-03-30 2018-03-30 Video pushing method and device, server, client and storage medium

Country Status (1)

Country Link
CN (1) CN110324680B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113132759A (en) * 2019-12-30 2021-07-16 中国移动通信集团北京有限公司 Method, device, server, system and storage medium for determining video playing time delay
CN111163336B (en) * 2020-01-19 2021-07-27 北京字节跳动网络技术有限公司 Video resource pushing method and device, electronic equipment and computer readable medium
CN113497976A (en) * 2020-03-19 2021-10-12 华为技术有限公司 Multimedia data downloading method and electronic equipment
CN112019916B (en) * 2020-08-26 2022-05-03 广州市百果园信息技术有限公司 Video downloading method, device, server and storage medium
CN113810773B (en) * 2021-09-17 2024-03-01 北京百度网讯科技有限公司 Video downloading method and device, electronic equipment and storage medium
CN117082296A (en) * 2022-05-09 2023-11-17 北京字节跳动网络技术有限公司 Video playing method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843605A (en) * 2012-08-22 2012-12-26 Tcl集团股份有限公司 Video play method and device thereof
CN103618942A (en) * 2013-12-16 2014-03-05 乐视致新电子科技(天津)有限公司 Smart television, as well as method and device for playing browser webpage video of smart television
CN106358062A (en) * 2016-08-24 2017-01-25 乐视控股(北京)有限公司 Browser video file playing processing method and equipment
CN107566857A (en) * 2017-08-31 2018-01-09 北京奇艺世纪科技有限公司 A kind of method for downloading video, device, system, server and terminal

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9021537B2 (en) * 2010-12-09 2015-04-28 Netflix, Inc. Pre-buffering audio streams

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843605A (en) * 2012-08-22 2012-12-26 Tcl集团股份有限公司 Video play method and device thereof
CN103618942A (en) * 2013-12-16 2014-03-05 乐视致新电子科技(天津)有限公司 Smart television, as well as method and device for playing browser webpage video of smart television
CN106358062A (en) * 2016-08-24 2017-01-25 乐视控股(北京)有限公司 Browser video file playing processing method and equipment
CN107566857A (en) * 2017-08-31 2018-01-09 北京奇艺世纪科技有限公司 A kind of method for downloading video, device, system, server and terminal

Also Published As

Publication number Publication date
CN110324680A (en) 2019-10-11

Similar Documents

Publication Publication Date Title
CN110324680B (en) Video pushing method and device, server, client and storage medium
US8819035B2 (en) Providing search results based on keyword detection in media content
CN108810657B (en) Method and system for setting video cover
CN103686375A (en) Video sharing method and device
CN111355971B (en) Live streaming transmission method and device, CDN server and computer readable medium
CN110830565B (en) Resource downloading method, device, system, electronic equipment and storage medium
US11184669B2 (en) Distribution of network traffic for streaming content
CN110620828A (en) File pushing method, system, device, electronic equipment and medium
CN108600836B (en) Video processing method and device
CN103955487A (en) Information prompting method and device
CN108156257B (en) Information pushing method and device
EP3040877A1 (en) Method and system for processing associated content
CN110677684B (en) Video processing method, video access method, distributed storage method and distributed video access system
CN110099292B (en) Data center node determination method and device and electronic equipment
CN110213671A (en) A kind of short-sighted frequency of hot spot determines method and apparatus
CN107124660B (en) Method and device for triggering broadcast information of live broadcast room
CN104168174A (en) Method and apparatus for information transmission
CN109788326B (en) Video resource pre-pushing method, device and system
CN110570257A (en) multimedia data delivery method, device and computer readable storage medium
CN110691143B (en) File pushing method and device, electronic equipment and medium
CN112491939B (en) Multimedia resource scheduling method and system
CN110535853B (en) Video request scheduling method, device, server and storage medium
CN107103079B (en) Live broadcast method and system for dynamic website
CN105959789B (en) A kind of program channel determines method and device
CN115834697A (en) File storage method, system and device and electronic equipment

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