Methods and devices for obtaining video screenshots

By calculating the expected screenshot load of the video sequence and selecting the appropriate target video sequence to perform the screenshot task, the problems of waste of resources and low processing speed in the prior art are solved, and more efficient video screenshot processing is achieved.

CN116095414BActive Publication Date: 2025-05-16JD DIGITS HAIYI INFORMATION TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211249420.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-12
Publication Date
2025-05-16
Estimated Expiration
2042-10-12

AI Technical Summary

Technical Problem

In the prior art, when processing video on-demand screenshot tasks, the same number of threads to handle different media resources leads to waste of resources and low processing speed, especially in tasks with high video complexity.

Method used

By obtaining the video information of the candidate video sequence in the video sequence collection, calculating its expected screenshot load, and selecting the target video sequence based on local available resources to perform screenshot tasks, realizing accurate resource allocation and load balancing.

Benefits of technology

It improves the processing speed and resource utilization of video screenshot tasks, and avoids resource waste, especially in tasks with high video complexity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116095414B_ABST
    Figure CN116095414B_ABST
Patent Text Reader

Abstract

The embodiments of the present disclosure provide a method and device for obtaining video screenshots. The method for obtaining video screenshots includes: first, in response to obtaining a video sequence set for executing a screenshot task, obtaining video information of multiple candidate video sequences in the video sequence set, then calculating the estimated screenshot load corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences, and selecting a target video sequence from the video sequence set based on the local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, and finally executing the screenshot task of the target video sequence to obtain the video screenshot corresponding to the target video sequence. Before executing the screenshot task, the estimated screenshot load corresponding to the screenshot task of each video sequence can be pre-determined, and the number of screenshot tasks can be accurately allocated in advance, thereby improving load balancing and resource utilization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present disclosure relate to the fields of computer technology and Internet technology, and more particularly to the fields of video processing technology and image processing technology, and in particular to methods and devices for obtaining video screenshots. Background Art

[0002] As video on demand continues to develop, more and more users have the need for on-demand screenshots. The existing processing flow for CPU-intensive tasks such as on-demand screenshots is as follows: configure the default number of threads for each screenshot task, and determine the number of concurrent tasks on the node according to the overall number of cores of the machine.

[0003] The entire processing process of the screenshot task can be divided into the following steps: downloading media resources, decoding the video part of the media resources, encoding pictures, uploading finished pictures, etc. In these steps, downloading media resources consumes the system's downlink bandwidth, video decoding and picture encoding mainly consume the system's CPU load, and uploading pictures mainly consumes the system's uplink bandwidth. The number of concurrent downloads and uploads is limited by the bandwidth limit of the entire network where the server is located. This generally does not become a bottleneck first, and is looser than the parallel limit conditions for video decoding and picture encoding. The decoding consumption of different media resources is different. All screenshot tasks are processed using the same number of threads, which will affect the processing speed of the task, especially the screenshot speed of tasks with higher video complexity is relatively low, and it will also cause a waste of the entire system resources. Summary of the invention

[0004] The embodiments of the present disclosure provide a method, device, electronic device and computer-readable medium for obtaining video screenshots.

[0005] In a first aspect, an embodiment of the present disclosure provides a method for obtaining video screenshots, the method comprising: in response to obtaining a video sequence set for executing a screenshot task, obtaining video information of multiple candidate video sequences in the video sequence set; based on the video information of the multiple candidate video sequences, calculating an estimated screenshot load corresponding to the multiple candidate video sequences; based on local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, selecting a target video sequence from the video sequence set; executing the screenshot task of the target video sequence to obtain a video screenshot corresponding to the target video sequence.

[0006] In some embodiments, based on the video information of multiple candidate video sequences, the estimated screenshot loads corresponding to the multiple candidate video sequences are calculated, including: obtaining a load calculation formula for calculating the screenshot load; based on the load calculation formula and the video information of the multiple candidate video sequences, calculating the estimated screenshot loads corresponding to the multiple candidate video sequences.

[0007] In some embodiments, obtaining a load calculation formula for calculating the screenshot load includes: obtaining a set of sample video sequences, wherein the set of sample video sequences includes multiple sample video sequences, sample video information of the multiple sample video sequences, and sample screenshot loads corresponding to the multiple sample video sequences; performing data analysis on the multiple sample video sequences, the sample video information of the multiple sample video sequences, and the sample screenshot loads corresponding to the multiple sample video sequences using a regression statistical method to obtain a load calculation formula associated with the sample video information and the sample screenshot load.

[0008] In some embodiments, the method also includes: in response to executing a screenshot task of the target video sequence, obtaining a real-time screenshot load corresponding to the target video sequence; based on the real-time screenshot load corresponding to the target video sequence and the estimated screenshot load corresponding to the target video sequence, updating the load calculation formula to obtain a new load calculation formula.

[0009] In some embodiments, based on the real-time screenshot load corresponding to the target video sequence and the expected screenshot load corresponding to the target video sequence, the load calculation formula is updated to obtain a new load calculation formula, including: comparing the real-time screenshot load corresponding to the target video sequence with the expected screenshot load corresponding to the target video sequence to determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition; in response to determining that the real-time screenshot load corresponding to the target video sequence meets the load condition, storing the real-time screenshot load corresponding to the target video sequence and the video information of the target video sequence to a sample video sequence set to obtain a new sample video sequence set; based on the new sample video sequence set, updating the load calculation formula to obtain a new load calculation formula.

[0010] In some embodiments, the method also includes: calculating a new estimated screenshot load corresponding to the target video sequence based on a new load calculation formula and video information of the target video sequence; and performing preset adjustment operations on the target video sequence according to local available resources and the new estimated screenshot load corresponding to the target video sequence.

[0011] In a second aspect, an embodiment of the present disclosure provides a device for acquiring video screenshots, the device comprising: an acquisition module, configured to acquire video information of multiple candidate video sequences in the video sequence set in response to acquiring a video sequence set for executing a screenshot task; a calculation module, configured to calculate an estimated screenshot load corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences; a selection module, configured to select a target video sequence from the video sequence set based on local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences; and an execution module, configured to execute the screenshot task of the target video sequence to obtain a video screenshot corresponding to the target video sequence.

[0012] In some embodiments, the calculation module includes: an acquisition unit configured to acquire a load calculation formula for calculating the screenshot load; and a calculation unit configured to calculate the estimated screenshot loads corresponding to multiple candidate video sequences based on the load calculation formula and video information of multiple candidate video sequences.

[0013] In some embodiments, the computing unit is further configured to: obtain a set of sample video sequences, wherein the set of sample video sequences includes multiple sample video sequences, sample video information of the multiple sample video sequences, and sample screenshot loads corresponding to the multiple sample video sequences; perform data analysis on the multiple sample video sequences, the sample video information of the multiple sample video sequences, and the sample screenshot loads corresponding to the multiple sample video sequences using a regression statistical method to obtain a load calculation formula associated with the sample video information and the sample screenshot load.

[0014] In some embodiments, the device also includes an update module; the acquisition module is further configured to: in response to executing the screenshot task of the target video sequence, obtain the real-time screenshot load corresponding to the target video sequence; the update module is configured to: based on the real-time screenshot load corresponding to the target video sequence and the expected screenshot load corresponding to the target video sequence, update the load calculation formula to obtain a new load calculation formula.

[0015] In some embodiments, the update module is further configured to: compare the real-time screenshot load corresponding to the target video sequence with the expected screenshot load corresponding to the target video sequence to determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition; in response to determining that the real-time screenshot load corresponding to the target video sequence meets the load condition, store the real-time screenshot load corresponding to the target video sequence and the video information of the target video sequence into a sample video sequence set to obtain a new sample video sequence set; based on the new sample video sequence set, update the load calculation formula to obtain a new load calculation formula.

[0016] In some embodiments, the calculation module is further configured to: calculate a new expected screenshot load corresponding to the target video sequence based on a new load calculation formula and the video information of the target video sequence; the execution module is further configured to: perform a preset adjustment operation on the target video sequence according to local available resources and the new expected screenshot load corresponding to the target video sequence.

[0017] In a third aspect, an embodiment of the present disclosure provides an electronic device, comprising: one or more processors; a storage device on which one or more programs are stored; when the one or more programs are executed by one or more processors, the one or more processors implement the method for obtaining video screenshots as described in any embodiment of the first aspect.

[0018] In a fourth aspect, an embodiment of the present disclosure provides a computer-readable medium having a computer program stored thereon, which, when executed by a processor, implements the method for obtaining a video screenshot as described in any embodiment of the first aspect.

[0019] The method for obtaining video screenshots provided by the embodiments of the present disclosure comprises the following steps: the execution subject first obtains video information of multiple candidate video sequences in the video sequence set in response to obtaining a video sequence set for executing a screenshot task; then, based on the video information of the multiple candidate video sequences, calculates an estimated screenshot load corresponding to the multiple candidate video sequences; and based on the local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, selects a target video sequence from the video sequence set; finally, executes the screenshot task of the target video sequence to obtain a video screenshot corresponding to the target video sequence; before executing the screenshot task, the estimated screenshot load corresponding to the screenshot task of each video sequence can be determined in advance; the number of screenshot tasks can be accurately allocated in advance; there is no need to limit the machine resources that can be used by the task by setting the number of threads of the task; resource quotas can be allocated to the screenshot task based on the accurately calculated estimated screenshot load; more screenshot tasks can be allocated based on the estimated screenshot load, and the local available resources of the server can be fully utilized, thereby improving load balancing and resource utilization. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Other features, objects and advantages of the present disclosure will become more apparent from the detailed description of non-limiting embodiments made with reference to the following drawings:

[0021] Figure 1 is an exemplary system architecture diagram in which an embodiment of the present disclosure may be applied;

[0022] Figure 2 is a flowchart of an embodiment of a method for obtaining video screenshots according to the present disclosure;

[0023] Figure 3 is a schematic diagram of an application scenario of the method for obtaining video screenshots according to the present disclosure;

[0024] Figure 4 is a flowchart of an embodiment of calculating the estimated screenshot load corresponding to multiple candidate video sequences according to the present disclosure;

[0025] Figure 5 is a flow chart of an embodiment of obtaining a load calculation formula according to the present disclosure;

[0026] Figure 6 is a flowchart of another embodiment of a method for obtaining a video screenshot according to the present disclosure;

[0027] Figure 7is a flow chart of an embodiment of updating a load calculation formula according to the present disclosure;

[0028] Figure 8 is a structural schematic diagram of an embodiment of a device for obtaining video screenshots according to the present disclosure;

[0029] Fig. 9 It is a schematic diagram of the structure of an electronic device suitable for implementing the embodiments of the present disclosure. DETAILED DESCRIPTION

[0030] The present disclosure is further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the relevant disclosure, rather than to limit the disclosure. It is also necessary to explain that, for ease of description, only the parts related to the relevant disclosure are shown in the accompanying drawings.

[0031] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present disclosure may be combined with each other. The present disclosure will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0032] Figure 1 An exemplary system architecture 100 is shown to which the method and apparatus for obtaining video screenshots according to the embodiments of the present disclosure can be applied.

[0033] like Figure 1 As shown, the system architecture 100 may include terminal devices 104, 105, 106, a network 107, and servers 101, 102, 103. The network 107 is used to provide a medium for communication links between the terminal devices 104, 105, 106 and the servers 101, 102, 103. The network 107 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0034] Users can interact with servers 101, 102, 103 belonging to the same server cluster through terminal devices 104, 105, 106 via network 107 to receive or send information, etc. Various applications can be installed on terminal devices 104, 105, 106, such as item display applications, data analysis applications, search applications, etc.

[0035] The terminal devices 104, 105, and 106 may be hardware or software. When the terminal device is hardware, it may be various electronic devices having a display screen and supporting communication with the server, including but not limited to smart phones, tablet computers, laptop computers, and desktop computers, etc. When the terminal device is software, it may be installed in the electronic devices listed above. It may be implemented as multiple software or software modules, or as a single software or software module. No specific limitation is made here.

[0036] Servers 101, 102, and 103 may be servers that provide various services, such as a backend server that receives a request sent by a terminal device that establishes a communication connection with the backend server. The backend server may receive and analyze the request sent by the terminal device and generate a processing result.

[0037] Servers 101, 102, and 103 can obtain a video sequence set for executing the screenshot task, and analyze and process multiple candidate video sequences in the video sequence set, obtain video information of the multiple candidate video sequences in the video sequence set, and then calculate the estimated screenshot load corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences, and select the target video sequence from the video sequence set based on the local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, and finally execute the screenshot task of the target video sequence to obtain the video screenshot corresponding to the target video sequence.

[0038] It should be noted that the server can be hardware or software. When the server is hardware, it can be various electronic devices that provide various services to the terminal device. When the server is software, it can be implemented as multiple software or software modules that provide various services to the terminal device, or it can be implemented as a single software or software module that provides various services to the terminal device. No specific limitation is made here.

[0039] It should be noted that the method for obtaining video screenshots provided in the embodiments of the present disclosure can be executed by the servers 101, 102, and 103. Accordingly, the apparatus for obtaining video screenshots is disposed in the servers 101, 102, and 103.

[0040] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to implementation requirements.

[0041] Continue to refer Figure 2 , shows a process 200 of an embodiment of a method for obtaining a video screenshot according to the present disclosure. The method for obtaining a video screenshot comprises the following steps:

[0042] Step 210 , in response to obtaining a video sequence set for performing a screenshot task, obtaining video information of a plurality of candidate video sequences in the video sequence set.

[0043] In this step, the method for obtaining a video screenshot runs on an execution subject (eg Figure 1The servers 101, 102, 103) can send a video sequence set consisting of multiple candidate video sequences through a receiving terminal or read a video sequence set consisting of multiple candidate video sequences through a network, wherein each candidate video sequence is used to execute a screenshot task to obtain a corresponding video screenshot, and each candidate video sequence is a sequence in which multiple video images that are connected in time and space are arranged in a certain order.

[0044] The execution subject can perform video analysis processing on each candidate video sequence in the video sequence set, detect the media information of each candidate video sequence, and obtain the video information of each candidate video sequence, which represents the video complexity information of the candidate video sequence, and may include information such as the resolution, bit rate, frame rate and encoding format of the candidate video sequence. The video information of different candidate video sequences may be different. Among them, the resolution is a parameter used to measure the amount of data in the image, usually expressed as ppi (pixel per inch). For example, the resolution of a video sequence is 320*180, which refers to its effective pixels in the horizontal and vertical directions. When the window is small, the ppi value is high and it looks clear. When the window is enlarged, since there are not so many effective pixels to fill the window, the effective pixel ppi value decreases and it becomes blurred; the bit rate is the number of data bits transmitted per unit time during data transmission, and the unit is kbps, that is, kilobits per second, that is, the sampling rate. The higher the sampling rate per unit time, the higher the accuracy, and the closer the processed file is to the original file; the frame rate is a measure used to measure the number of displayed frames. The so-called unit of measurement is the number of frames per second (FPS) or "Hertz" (Hz). The number of frames per second (fps) or frame rate indicates the number of times the graphics processor can update the field per second. A high frame rate can produce smoother and more realistic animations. The encoding format is the form in which the video file exists, which can include H264, VP8, AVS, RMVB, WMV, QuickTime (mov), H265, VP9, ​​AV1 and other formats.

[0045] Step 220: Calculate the estimated screenshot loads corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences.

[0046] In this step, since different video information may cause different loads used by the video sequence in the screenshot task, the more complex the video information of the video sequence, the higher the load used in the screenshot task. After the above-mentioned execution subject obtains the video information of multiple candidate video sequences, it can calculate the load for each candidate video sequence according to the video information of each candidate video sequence and the screenshot task corresponding to each candidate video sequence, and obtain the estimated screenshot load corresponding to each candidate video sequence for the screenshot task. The estimated screenshot load can represent the load value that may be required by the candidate video sequence in the process of executing the screenshot task.

[0047] The execution subject may associate the estimated screenshot load corresponding to each candidate video sequence with the candidate video sequence, thereby obtaining the estimated screenshot loads corresponding to multiple candidate video sequences.

[0048] Step 230 : Select a target video sequence from the video sequence set based on the locally available resources and the estimated screenshot loads corresponding to the multiple candidate video sequences.

[0049] In this step, after the execution subject obtains the estimated screenshot load corresponding to the multiple candidate video sequences, it can obtain the local available resources, which can represent the local resource value used by the screenshot task, such as the value of the available CPU.

[0050] The above-mentioned execution entity can determine how many candidate video sequences the local available resources can provide usage resources for based on the local available resources and the estimated screenshot loads corresponding to multiple candidate video sequences, that is, from the estimated screenshot loads corresponding to multiple candidate video sequences, it can be calculated that the sum of the estimated screenshot loads is not greater than the candidate video sequence corresponding to the local available resources, and the determined candidate video sequence is determined as the target video sequence, so that the target video sequence whose sum of the estimated screenshot loads is not greater than the target video sequence corresponding to the local available resources can be selected from the video sequence set, and the sum of the estimated screenshot loads is made as equal to the local available resources as much as possible. The target video sequence may include one or more, and there is no specific limitation on this.

[0051] As an example, the value of the above-mentioned local available resources is 100, and multiple candidate video sequences include candidate video sequence A, candidate video sequence B, candidate video sequence C, candidate video sequence D and candidate video sequence E. The estimated screenshot load corresponding to candidate video sequence A is 30, the estimated screenshot load corresponding to candidate video sequence B is 50, the estimated screenshot load corresponding to candidate video sequence C is 60, the estimated screenshot load corresponding to candidate video sequence D is 70, and the estimated screenshot load corresponding to candidate video sequence E is 60. The above-mentioned execution entity can compare the local available resources with each estimated screenshot load, calculate the sum of the loads between each estimated screenshot load, determine that the sum of the estimated screenshot load 30 corresponding to candidate video sequence A and the estimated screenshot load 70 corresponding to candidate video sequence D is equal to the value of the local available resources, and the candidate video sequence A and candidate video sequence D can be used as target video sequences.

[0052] Step 240, executing the screenshot task of the target video sequence to obtain the video screenshot corresponding to the target video sequence.

[0053] In this step, after the above-mentioned execution subject selects the target video sequence, it can start to execute the screenshot task of the target video sequence, and start to execute steps such as media resource downloading, video part decoding in the media resources, picture encoding, and uploading finished pictures for the target video sequence to obtain the video screenshot corresponding to the target video sequence.

[0054] If the target video sequence includes multiple video sequences, the above-mentioned execution entity can execute the steps of downloading media resources, decoding the video part in the media resources, encoding pictures, uploading finished pictures, etc. for each video sequence respectively, and obtain the video screenshots corresponding to each video sequence.

[0055] Continue to see Figure 3 , Figure 3 is a schematic diagram of an application scenario of the method for obtaining video screenshots according to this embodiment. The method can be applied to Figure 3 In the application scenario, the terminal 301 can send a video sequence set for executing the screenshot task to the server 302. After receiving the video sequence set, the server 302 can perform video analysis on multiple candidate video sequences, obtain video information of multiple candidate video sequences in the video sequence set, and then the server 302 calculates the estimated screenshot load corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences. After that, the server 302 can select a target video sequence from the video sequence set based on the local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, and start executing the screenshot task of the target video sequence to obtain the video screenshot corresponding to the target video sequence. The server 302 sends the video screenshot to the terminal 301, and the terminal 301 can display the video screenshot to the user through the screen.

[0056] The method for obtaining video screenshots provided by the embodiments of the present disclosure comprises the following steps: the execution subject first obtains video information of multiple candidate video sequences in the video sequence set in response to obtaining a video sequence set for executing a screenshot task; then, based on the video information of the multiple candidate video sequences, calculates an estimated screenshot load corresponding to the multiple candidate video sequences; and based on the local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, selects a target video sequence from the video sequence set; finally, executes the screenshot task of the target video sequence to obtain a video screenshot corresponding to the target video sequence; before executing the screenshot task, the estimated screenshot load corresponding to the screenshot task of each video sequence can be determined in advance; the number of screenshot tasks can be accurately allocated in advance; there is no need to limit the machine resources that can be used by the task by setting the number of threads of the task; resource quotas can be allocated to the screenshot task based on the accurately calculated estimated screenshot load; more screenshot tasks can be allocated based on the estimated screenshot load, and the local available resources of the server can be fully utilized, thereby improving load balancing and resource utilization.

[0057] refer to Figure 4 , Figure 4 A flowchart 400 of an embodiment of calculating the estimated screenshot load corresponding to multiple candidate video sequences is shown. That is, the above step 220, based on the video information of the multiple candidate video sequences, calculates the estimated screenshot load corresponding to the multiple candidate video sequences, which may include the following steps:

[0058] Step 410, obtaining a load calculation formula for calculating the screenshot load.

[0059] In this step, after acquiring the video information of multiple candidate video sequences, the execution subject can read the load calculation formula for calculating the screenshot load locally, and the load calculation formula is positively correlated with the video information of the video sequence. The load calculation formula can be expressed as (x)*video information, where (x) can be a calculation parameter, or a parameter obtained by fitting multiple test samples.

[0060] Among them, the video information may include the resolution, bit rate, frame rate and encoding format of the video sequence, and the load calculation formula can be expressed as follows: expected screenshot load = (x1)*resolution+(x2)*bit rate+(x3)*frame rate+(x4)*encoding format.

[0061] Step 420: Calculate the estimated screenshot loads corresponding to the multiple candidate video sequences based on the load calculation formula and the video information of the multiple candidate video sequences.

[0062] In this step, after the execution subject obtains the load calculation formula and the video information of multiple candidate video sequences, the video information of each candidate video sequence can be respectively introduced into the load calculation formula to calculate the estimated screenshot load corresponding to each candidate video sequence.

[0063] As an example, the above-mentioned execution entity obtains that the video information of the candidate video sequence A includes resolution a1, bit rate a2, frame rate a3 and encoding format a4, and the video information of the candidate video sequence B includes resolution b1, bit rate b2, frame rate b3 and encoding format b4. The above-mentioned execution entity can substitute the resolution a1, bit rate a2, frame rate a3 and encoding format a4 of the candidate video sequence A into the load calculation formula to obtain the estimated screenshot load of the candidate video sequence A = (x1)*a1+(x2)*a2+(x3)*a3+(x4)*a4, and can also substitute the resolution b1, bit rate b2, frame rate b3 and encoding format b4 of the candidate video sequence B into the load calculation formula to obtain the estimated screenshot load of the candidate video sequence B = (x1)*b1+(x2)*b2+(x3)*b3+(x4)*b4.

[0064] In this implementation, by utilizing a load calculation formula that is positively correlated with the video information of a video sequence to calculate the estimated screenshot load corresponding to multiple candidate video sequences, the estimated screenshot load can be calculated more accurately, thereby achieving a preliminary estimate of the screenshot load, thereby improving the load balancing and resource utilization of the screenshot task.

[0065] refer to Figure 5 , Figure 5 A flowchart 500 of an embodiment of obtaining a load calculation formula is shown, that is, the above step 410, obtaining a load calculation formula for calculating the screenshot load, which may include the following steps:

[0066] Step 510: Obtain a set of sample video sequences.

[0067] In this step, the above-mentioned execution subject may obtain multiple sample video sequences in advance, and perform video analysis processing on each sample video sequence respectively, detect the media information of each sample video sequence, and obtain the sample video information of each sample video sequence. The sample video information represents the video complexity information of the sample video sequence, and may include information such as the resolution, bit rate, frame rate and encoding format of the sample video sequence. The above-mentioned execution subject may also obtain the sample screenshot load corresponding to each sample video sequence, and the sample screenshot load may be the screenshot load corresponding to each sample video sequence for the screenshot task. The above-mentioned execution subject may form a sample video sequence set with multiple sample video sequences, sample video information of multiple sample video sequences and sample screenshot loads corresponding to multiple sample video sequences.

[0068] Step 520, using a regression statistical method to perform data analysis on multiple sample video sequences, sample video information of multiple sample video sequences, and sample screenshot loads corresponding to multiple sample video sequences, to obtain a load calculation formula associated with the sample video information and the sample screenshot load.

[0069] In this step, after the above-mentioned execution entity obtains the sample video sequence set, it can perform data analysis on multiple sample video sequences, sample video information of multiple sample video sequences, and sample screenshot loads corresponding to multiple sample video sequences, respectively, and use the regression statistical method in the data analysis method to perform data fitting on multiple sample video sequences, sample video information of multiple sample video sequences, and sample screenshot loads corresponding to multiple sample video sequences to obtain a load calculation formula associated with the sample video information and the sample screenshot load.

[0070] In this implementation, a load calculation formula associated with sample video information and sample screenshot load is obtained through a set of sample video sequences. The load calculation formula can be fitted according to the current test samples to more accurately calculate the expected screenshot load, thereby achieving an advance estimate of the screenshot load, thereby improving the load balancing and resource utilization of the screenshot task.

[0071] refer to Figure 6 , Figure 6 A flowchart 600 showing another embodiment of a method for obtaining a video screenshot may include the following steps:

[0072] Step 610 , in response to obtaining a video sequence set for executing a screenshot task, obtaining video information of a plurality of candidate video sequences in the video sequence set.

[0073] Step 610 of this embodiment can be performed according to Figure 2 Step 210 in the illustrated embodiment is performed in a similar manner and will not be described in detail here.

[0074] Step 620: Calculate the estimated screenshot loads corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences.

[0075] Step 620 of this embodiment can be performed according to Figure 2 Step 220 in the illustrated embodiment is performed in a similar manner and will not be described in detail here.

[0076] Step 630 : Select a target video sequence from the video sequence set based on the locally available resources and the estimated screenshot loads corresponding to the multiple candidate video sequences.

[0077] Step 630 of this embodiment can be performed according to Figure 2 Step 230 in the illustrated embodiment is performed in a similar manner and will not be described in detail here.

[0078] Step 640, executing the screenshot task of the target video sequence to obtain the video screenshot corresponding to the target video sequence.

[0079] Step 640 of this embodiment can be performed according to Figure 2 Step 240 in the illustrated embodiment is performed in a similar manner and will not be described in detail here.

[0080] Step 650 , in response to executing the screenshot task of the target video sequence, obtaining a real-time screenshot load corresponding to the target video sequence.

[0081] In this step, when the above-mentioned execution subject starts executing the screenshot task of the target video sequence, it can also start the timer corresponding to the screenshot task, read the load value during the execution of the screenshot task at preset time intervals, and calculate the cumulative average value occupied by the screenshot task process according to the load value in the time period, and obtain the real-time screenshot load corresponding to the target video sequence. The real-time screenshot load can represent the average value of the screenshot load within a period of time.

[0082] Step 640: based on the real-time screenshot load corresponding to the target video sequence and the estimated screenshot load corresponding to the target video sequence, the load calculation formula is updated to obtain a new load calculation formula.

[0083] In this step, after the above-mentioned execution entity obtains the real-time screenshot load corresponding to the target video sequence, it can compare the real-time screenshot load corresponding to the target video sequence with the expected screenshot load corresponding to the target video sequence, and update the load calculation formula according to the real-time screenshot load corresponding to the target video sequence, adjust the calculation parameters in the load calculation formula, and obtain a new load calculation formula.

[0084] The execution subject may replace the previous load calculation formula with a new load calculation formula, and the subsequent candidate video sequences may calculate the estimated screenshot load using the new load calculation formula.

[0085] As an optional implementation, refer to Figure 7 , Figure 7 A flowchart 700 of an embodiment of updating the load calculation formula is shown, that is, the above step 640, based on the real-time screenshot load corresponding to the target video sequence and the estimated screenshot load corresponding to the target video sequence, the load calculation formula is updated to obtain a new load calculation formula, which may include the following steps:

[0086] Step 710: compare the real-time screenshot load corresponding to the target video sequence with the estimated screenshot load corresponding to the target video sequence to determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition.

[0087] In this step, after the above-mentioned execution entity obtains the real-time screenshot load corresponding to the target video sequence, it can compare the real-time screenshot load corresponding to the target video sequence with the expected screenshot load corresponding to the target video sequence to determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition, and the load condition can include the real-time screenshot load being within a preset range, and the preset range can be [minimum load value, maximum load value], where the minimum load value is the expected screenshot load*0.3, and the maximum load value is the expected screenshot load*1.3.

[0088] The above-mentioned execution entity can compare the real-time screenshot load corresponding to the target video sequence with a preset range to determine whether the real-time screenshot load is within the preset range, so as to determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition.

[0089] Step 720, in response to determining that the real-time screenshot load corresponding to the target video sequence meets the load condition, the real-time screenshot load corresponding to the target video sequence and the video information of the target video sequence are stored in a sample video sequence set to obtain a new sample video sequence set.

[0090] In this step, the execution subject determines that the real-time screenshot load corresponding to the target video sequence meets the load condition, and can associate the real-time screenshot load corresponding to the target video sequence with the target video sequence and determine the video information corresponding to the target video sequence. The execution subject stores the real-time screenshot load corresponding to the target video sequence and the video information of the target video sequence into the sample video sequence set, updates the sample video sequence set, and obtains a new sample video sequence set.

[0091] Step 710: Update the load calculation formula based on the new sample video sequence set to obtain a new load calculation formula.

[0092] In this step, after the execution subject obtains the new sample video sequence set, it can respectively perform data analysis on the multiple sample video sequences, the sample video information of the multiple sample video sequences, and the sample screenshot loads corresponding to the multiple sample video sequences in the new sample video sequence set, and use the regression statistical method in the data analysis method to perform data fitting on the multiple sample video sequences, the sample video information of the multiple sample video sequences, and the sample screenshot loads corresponding to the multiple sample video sequences to obtain the load calculation formula corresponding to the new sample video sequence set. Then the execution subject can also use variance analysis to perform error calculation and formula parameter fine-tuning on the obtained load calculation formula and the real-time screenshot load to obtain a new load calculation formula.

[0093] The execution subject may replace the previous load calculation formula with a new load calculation formula, and the subsequent candidate video sequences may calculate the estimated screenshot load using the new load calculation formula.

[0094] In this implementation, the load calculation formula is updated and adjusted in real time through a real-time load feedback mechanism, which can ensure the accuracy of the load calculation formula and more accurately calculate the expected screenshot load corresponding to the video sequence.

[0095] Furthermore, if the execution subject determines that the real-time screenshot load corresponding to the target video sequence does not meet the load condition, the real-time screenshot load may be discarded and not used as new data in the new sample video sequence set.

[0096] In this embodiment, a real-time load feedback mechanism is added to obtain the real-time screenshot load, and the load calculation formula can be updated and adjusted in real time to ensure the accuracy of the load calculation formula, so that the expected screenshot load corresponding to the video sequence can be calculated more accurately.

[0097] Continue to refer Figure 6 The above method for obtaining a video screenshot may further include the following steps:

[0098] Step 670: Calculate a new estimated screenshot load corresponding to the target video sequence based on the new load calculation formula and the video information of the target video sequence.

[0099] In this step, after the execution subject obtains the new load calculation formula, it can bring the video information of the target video sequence into the new load calculation formula to calculate the new estimated screenshot load corresponding to the target video sequence.

[0100] Step 680: Perform a preset adjustment operation on the target video sequence according to the local available resources and the new estimated screenshot load corresponding to the target video sequence.

[0101] In this step, after the above-mentioned execution entity obtains the new expected screenshot load corresponding to the target video sequence, it can compare the new expected screenshot load corresponding to the target video sequence with the local available resources, and perform a preset adjustment operation on the target video sequence according to the comparison result. The preset adjustment operation may include adjusting the number of target video sequences, or adjusting the screenshot speed of the target video sequence.

[0102] If the new estimated screenshot load corresponding to the target video sequence is less than the local available resources, the above-mentioned execution entity can calculate the new estimated screenshot load of other candidate video sequences in the video sequence set according to the new load calculation formula, and add new target video sequences according to the new estimated screenshot load, the new estimated screenshot load corresponding to the target video sequence and the local available resources, thereby increasing the number of target video sequences and improving resource utilization.

[0103] If the new estimated screenshot load corresponding to the target video sequence is greater than the local available resources, the above-mentioned execution entity can determine that the new estimated screenshot load corresponding to the current target video sequence has exceeded the local available resources, and the screenshot speed of the target video sequence needs to be reduced to ensure load balance.

[0104] In this embodiment, by performing a preset adjustment operation on the target video sequence according to the local available resources and the new estimated screenshot load corresponding to the target video sequence, the number of target video sequences or the screenshot speed during the task execution process can be adjusted in real time to ensure resource utilization and load balance.

[0105] Further references Figure 8 As an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of a device for obtaining video screenshots. Figure 2 The method embodiments shown correspond.

[0106] like Figure 8 As shown, the apparatus 800 for obtaining video screenshots in this embodiment may include: an obtaining module 810 , a calculating module 820 , a selecting module 830 and an executing module 840 .

[0107] The acquisition module 810 is configured to acquire video information of a plurality of candidate video sequences in the video sequence set in response to acquiring a video sequence set for performing a screenshot task;

[0108] A calculation module 820 is configured to calculate an estimated screenshot load corresponding to the plurality of candidate video sequences based on video information of the plurality of candidate video sequences;

[0109] A selection module 830 is configured to select a target video sequence from a set of video sequences based on locally available resources and an estimated screenshot load corresponding to a plurality of candidate video sequences;

[0110] The execution module 840 is configured to execute the screenshot task of the target video sequence and obtain the video screenshot corresponding to the target video sequence.

[0111] In some optional implementations of the present embodiment, the calculation module 820 includes: an acquisition unit, configured to obtain a load calculation formula for calculating the screenshot load; and a calculation unit, configured to calculate the estimated screenshot loads corresponding to multiple candidate video sequences based on the load calculation formula and video information of multiple candidate video sequences.

[0112] In some optional implementations of the present embodiment, the computing unit is further configured to: obtain a set of sample video sequences, wherein the set of sample video sequences includes multiple sample video sequences, sample video information of the multiple sample video sequences, and sample screenshot loads corresponding to the multiple sample video sequences; perform data analysis on the multiple sample video sequences, the sample video information of the multiple sample video sequences, and the sample screenshot loads corresponding to the multiple sample video sequences using a regression statistical method, and obtain a load calculation formula associated with the sample video information and the sample screenshot load.

[0113] In some optional implementations of the present embodiment, the device also includes an update module; the acquisition module 810 is further configured to: in response to executing the screenshot task of the target video sequence, obtain the real-time screenshot load corresponding to the target video sequence; the update module is configured to: based on the real-time screenshot load corresponding to the target video sequence and the estimated screenshot load corresponding to the target video sequence, update the load calculation formula to obtain a new load calculation formula.

[0114] In some optional implementations of the present embodiment, the update module is further configured to: compare the real-time screenshot load corresponding to the target video sequence with the expected screenshot load corresponding to the target video sequence, and determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition; in response to determining that the real-time screenshot load corresponding to the target video sequence meets the load condition, store the real-time screenshot load corresponding to the target video sequence and the video information of the target video sequence into a sample video sequence set to obtain a new sample video sequence set; based on the new sample video sequence set, update the load calculation formula to obtain a new load calculation formula.

[0115] In some optional implementations of the present embodiment, the calculation module 820 is further configured to: calculate the new expected screenshot load corresponding to the target video sequence based on the new load calculation formula and the video information of the target video sequence; the execution module 840 is further configured to: perform preset adjustment operations on the target video sequence according to the local available resources and the new expected screenshot load corresponding to the target video sequence.

[0116] The above-mentioned embodiment of the present disclosure provides an apparatus for obtaining video screenshots. The above-mentioned execution subject first responds to obtaining a video sequence set for executing a screenshot task, obtains video information of multiple candidate video sequences in the video sequence set, and then calculates the estimated screenshot load corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences, and selects the target video sequence from the video sequence set based on the local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, and finally executes the screenshot task of the target video sequence to obtain the video screenshot corresponding to the target video sequence. Before executing the screenshot task, the estimated screenshot load corresponding to the screenshot task of each video sequence can be determined in advance, and the number of screenshot tasks can be accurately allocated in advance. There is no need to limit the machine resources that can be used by the task by setting the number of threads of the task. Resource quotas can be allocated to the screenshot task based on the accurately calculated estimated screenshot load. More screenshot tasks can be allocated based on the estimated screenshot load, and the local available resources of the server can be fully utilized, thereby improving load balancing and resource utilization.

[0117] Those skilled in the art will appreciate that the above device also includes some other well-known structures, such as a processor, a memory, etc. In order to unnecessarily obscure the embodiments of the present disclosure, these well-known structures are described in detail. Figure 8 Not shown in FIG.

[0118] Reference below Fig. 9 , which shows a schematic diagram of the structure of an electronic device 900 suitable for implementing the embodiments of the present disclosure. The terminal device in the embodiments of the present disclosure may include but is not limited to mobile terminals such as smart screens, notebook computers, PADs (tablet computers), PMPs (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Fig. 9 The terminal device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0119] like Fig. 9 As shown, the electronic device 900 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage device 908 into a random access memory (RAM) 903. In the RAM 903, various programs and data required for the operation of the electronic device 900 are also stored. The processing device 901, the ROM 902, and the RAM 903 are connected to each other via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.

[0120] Typically, the following devices may be connected to the I / O interface 905: an input device 906 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 907 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 908 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 909. The communication device 909 may allow the electronic device 900 to communicate with other devices wirelessly or by wire to exchange data. Although Fig. 9 The electronic device 900 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead. Fig. 9 Each block shown in the figure may represent one device, or may represent multiple devices as required.

[0121] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through a communication device 909, or installed from a storage device 908, or installed from a ROM 902. When the computer program is executed by the processing device 901, the above functions defined in the method of the embodiment of the present disclosure are executed. It should be noted that the computer-readable medium of the embodiment of the present disclosure can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to, an electrical connection with one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In an embodiment of the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, an apparatus, or a device. In an embodiment of the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in combination with an instruction execution system, an apparatus, or a device. The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to: wire, optical cable, RF (radio frequency), etc., or any suitable combination of the foregoing.

[0122] Computer program code for performing the operations of the embodiments of the present disclosure may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" language or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet).

[0123] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0124] The units involved in the embodiments described in the present application may be implemented by software or hardware. The units described may also be set in a processor, for example, it may be described as: a processor includes an acquisition module, a calculation module, a selection module and an execution module, wherein the names of these modules do not constitute a limitation on the modules themselves in some cases.

[0125] As another aspect, the present application also provides a computer-readable medium, which may be included in the electronic device; or may exist independently without being assembled into the electronic device. The computer-readable medium carries one or more programs, and when the one or more programs are executed by the electronic device, the electronic device: in response to obtaining a video sequence set for performing a screenshot task, obtains video information of multiple candidate video sequences in the video sequence set; based on the video information of the multiple candidate video sequences, calculates the estimated screenshot load corresponding to the multiple candidate video sequences; based on the local available resources and the estimated screenshot load corresponding to the multiple candidate video sequences, selects a target video sequence from the video sequence set; performs the screenshot task of the target video sequence, and obtains the video screenshot corresponding to the target video sequence.

[0126] The above description is only a preferred embodiment of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present disclosure is not limited to the technical solutions formed by a specific combination of the above-mentioned technical features, but should also cover other technical solutions formed by any combination of the above-mentioned technical features or their equivalent features without departing from the above-mentioned inventive concept. For example, the above-mentioned features are replaced with the technical features with similar functions disclosed in the embodiments of the present disclosure (but not limited to) to form a technical solution.

Claims

1. A method for obtaining a video screenshot, the method comprising: In response to obtaining a video sequence set for performing a screenshot task, obtaining video information of a plurality of candidate video sequences in the video sequence set; wherein the video information is video complexity information characterizing the candidate video sequences, and the video information of the candidate video sequences includes resolution, bit rate, frame rate and encoding format of the candidate video sequences; Based on the video information of the multiple candidate video sequences, calculating the estimated screenshot load corresponding to the multiple candidate video sequences; wherein the estimated screenshot load is used to represent the load value required by the candidate video sequence in the process of executing the screenshot task; Selecting a target video sequence from the set of video sequences based on locally available resources and an estimated screenshot load corresponding to the plurality of candidate video sequences; Execute the screenshot task of the target video sequence to obtain the video screenshot corresponding to the target video sequence.

2. The method according to claim 1, wherein: The calculating, based on the video information of the multiple candidate video sequences, the estimated screenshot loads corresponding to the multiple candidate video sequences includes: Get the load calculation formula used to calculate the screenshot load; Based on the load calculation formula and the video information of the multiple candidate video sequences, the estimated screenshot loads corresponding to the multiple candidate video sequences are calculated.

3. The method according to claim 2, wherein: The step of obtaining a load calculation formula for calculating the screenshot load includes: Acquire a sample video sequence set, wherein the sample video sequence set includes a plurality of sample video sequences, sample video information of the plurality of sample video sequences, and sample screenshot loads corresponding to the plurality of sample video sequences; A regression statistical method is used to perform data analysis on the multiple sample video sequences, the sample video information of the multiple sample video sequences, and the sample screenshot loads corresponding to the multiple sample video sequences to obtain a load calculation formula associated with the sample video information and the sample screenshot load.

4. The method according to claim 2 or 3, further comprising: In response to executing the screenshot task of the target video sequence, obtaining a real-time screenshot load corresponding to the target video sequence; Based on the real-time screenshot load corresponding to the target video sequence and the estimated screenshot load corresponding to the target video sequence, the load calculation formula is updated to obtain a new load calculation formula.

5. The method according to claim 4, wherein: The load calculation formula is updated based on the real-time screenshot load corresponding to the target video sequence and the estimated screenshot load corresponding to the target video sequence to obtain a new load calculation formula, including: Compare the real-time screenshot load corresponding to the target video sequence with the estimated screenshot load corresponding to the target video sequence to determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition; In response to determining that the real-time screenshot load corresponding to the target video sequence meets the load condition, storing the real-time screenshot load corresponding to the target video sequence and the video information of the target video sequence into a sample video sequence set to obtain a new sample video sequence set; Based on the new set of sample video sequences, the load calculation formula is updated to obtain a new load calculation formula.

6. The method according to claim 4, further comprising: Calculating a new estimated screenshot load corresponding to the target video sequence based on the new load calculation formula and the video information of the target video sequence; According to the locally available resources and the new estimated screenshot load corresponding to the target video sequence, a preset adjustment operation is performed on the target video sequence.

7. A device for obtaining a video screenshot, the device comprising: an acquisition module, configured to, in response to acquiring a video sequence set for performing a screenshot task, acquire video information of a plurality of candidate video sequences in the video sequence set; wherein the video information is video complexity information characterizing the candidate video sequence, and the video information of the candidate video sequence includes resolution, bit rate, frame rate and encoding format of the candidate video sequence; A calculation module is configured to calculate the estimated screenshot load corresponding to the multiple candidate video sequences based on the video information of the multiple candidate video sequences; wherein the estimated screenshot load is used to represent the load value required by the candidate video sequence in the process of executing the screenshot task; A selection module configured to select a target video sequence from the video sequence set based on locally available resources and an estimated screenshot load corresponding to the plurality of candidate video sequences; The execution module is configured to execute the screenshot task of the target video sequence and obtain the video screenshot corresponding to the target video sequence.

8. The device according to claim 7, wherein: The computing module comprises: An acquisition unit, configured to acquire a load calculation formula for calculating a screenshot load; The calculation unit is configured to calculate the estimated screenshot loads corresponding to the multiple candidate video sequences based on the load calculation formula and the video information of the multiple candidate video sequences.

9. The device according to claim 8, wherein: The computing unit is further configured to: Acquire a sample video sequence set, wherein the sample video sequence set includes a plurality of sample video sequences, sample video information of the plurality of sample video sequences, and sample screenshot loads corresponding to the plurality of sample video sequences; A regression statistical method is used to perform data analysis on the multiple sample video sequences, the sample video information of the multiple sample video sequences, and the sample screenshot loads corresponding to the multiple sample video sequences to obtain a load calculation formula associated with the sample video information and the sample screenshot load.

10. The device according to claim 8 or 9, wherein: The device also includes an update module; The acquisition module is further configured to: in response to executing the screenshot task of the target video sequence, acquire the real-time screenshot load corresponding to the target video sequence; The updating module is configured to update the load calculation formula based on the real-time screenshot load corresponding to the target video sequence and the estimated screenshot load corresponding to the target video sequence to obtain a new load calculation formula.

11. The device according to claim 10, wherein: The update module is further configured to: Compare the real-time screenshot load corresponding to the target video sequence with the estimated screenshot load corresponding to the target video sequence to determine whether the real-time screenshot load corresponding to the target video sequence meets the load condition; In response to determining that the real-time screenshot load corresponding to the target video sequence meets the load condition, storing the real-time screenshot load corresponding to the target video sequence and the video information of the target video sequence into a sample video sequence set to obtain a new sample video sequence set; Based on the new set of sample video sequences, the load calculation formula is updated to obtain a new load calculation formula.

12. The device according to claim 10, wherein: The calculation module is further configured to: calculate a new estimated screenshot load corresponding to the target video sequence based on the new load calculation formula and the video information of the target video sequence; The execution module is further configured to: perform a preset adjustment operation on the target video sequence according to the locally available resources and the new estimated screenshot load corresponding to the target video sequence.

13. An electronic device, comprising: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors are enabled to implement the method according to any one of claims 1 to 6.

14. A computer readable medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Data processing method, device and equipment and machine readable medium

    CN111757046A

  • Parallel video processing apparatus using multicore system and method thereof

    US20170238000A1