CN118158414A - Video encoding method, video encoding device, electronic equipment and computer storage medium - Google Patents
Video encoding method, video encoding device, electronic equipment and computer storage medium Download PDFInfo
- Publication number
- CN118158414A CN118158414A CN202410433628.4A CN202410433628A CN118158414A CN 118158414 A CN118158414 A CN 118158414A CN 202410433628 A CN202410433628 A CN 202410433628A CN 118158414 A CN118158414 A CN 118158414A
- Authority
- CN
- China
- Prior art keywords
- video
- rate control
- code rate
- sample
- control parameter
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000012549 training Methods 0.000 claims description 77
- 238000004590 computer program Methods 0.000 claims description 25
- 206010063659 Aversion Diseases 0.000 claims description 19
- 230000000694 effects Effects 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 7
- 239000012634 fragment Substances 0.000 claims description 6
- 230000006870 function Effects 0.000 description 16
- 238000013528 artificial neural network Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 101000957724 Catostomus commersonii Corticoliberin-1 Proteins 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 101000957708 Catostomus commersonii Corticoliberin-2 Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000013441 quality evaluation Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The embodiment of the application discloses a video coding method, a video coding device, electronic equipment and a computer storage medium; the reference coding characteristics of the video to be coded can be obtained; determining a code rate control parameter range preset by a first encoder; inputting a code rate control parameter in a reference coding characteristic and code rate control parameter range into a quality result prediction model; predicting quality information of the video to be encoded through a quality result prediction model, wherein the quality information is used for indicating the probability that the quality result of a first encoded video of the video to be encoded reaches a target quality result, and the first encoded video corresponds to a first encoder; determining target code rate control parameters of the video to be encoded based on quality information under each code rate control parameter; the first encoder encodes the video to be encoded based on the target code rate control parameter, so that the personalized code rate control parameter aiming at the video to be encoded under the first encoder can be predicted, and the probability that the video to be encoded meets the quality requirement can be improved.
Description
Technical Field
The present application relates to the field of video coding technologies, and in particular, to a video coding method, a video coding device, an electronic device, and a computer storage medium.
Background
Video coding is a technology for coding video, and one of the most important purposes is data compression, so as to facilitate the transmission and storage of video.
The code rate is a parameter used by an encoder in video coding, and the larger the code rate is, the better the video quality is. But a larger code rate generally means a larger amount of video data.
In the related art, there are many code rate control methods, and code rate control can be performed through corresponding code rate control parameters. For different encoders, the ranges of the code rate control parameters applicable in the same code rate control method are not completely coincident. Currently, for each encoder, in order to avoid excessive loss of quality of the encoded video, the respective rate control parameters are generally limited based on the end point value of the rate control parameter range of the encoder, and under this method, the condition that the quality of the encoded video does not meet the requirement easily occurs.
Disclosure of Invention
The embodiment of the application provides a video coding method, a video coding device, electronic equipment and a computer storage medium, which are beneficial to reducing the probability that the quality of coded video does not meet the requirement
The embodiment of the application provides a video coding method, which comprises the following steps:
Acquiring reference coding features corresponding to a video to be coded, wherein the reference coding features are obtained by coding the video to be coded through an auxiliary coder;
Determining a code rate control parameter range preset by a first encoder;
Inputting the reference coding characteristic and a code rate control parameter in the code rate control parameter range into a quality result prediction model;
Predicting quality information of the video to be encoded under the code rate control parameter by the quality result prediction model, wherein the quality information is used for indicating the probability that the quality result of a first encoded video of the video to be encoded reaches a target quality result, the first encoded video is obtained by encoding by the first encoder, a training sample of the quality result prediction model comprises the code rate control parameter of a first sample encoded video of a sample video, and sample encoding characteristics of the sample video, the first sample encoded video is encoded by the first encoder, the sample encoding characteristics are obtained by encoding the sample video, and a label of the training sample is used for indicating whether the quality result of the first sample encoded video reaches the target quality result;
determining a target code rate control parameter of the video to be encoded based on the quality information of the video to be encoded under each code rate control parameter of the code rate control parameter range;
the first encoder encodes the video to be encoded based on the target rate control parameter.
Accordingly, an embodiment of the present application provides a video encoding apparatus, including:
The characteristic acquisition unit is used for acquiring reference coding characteristics corresponding to the video to be coded, wherein the reference coding characteristics are obtained by coding the video to be coded through an auxiliary coder;
The range determining unit is used for determining a code rate control parameter range preset by the first encoder;
The input unit is used for inputting the reference coding characteristic and a code rate control parameter in the code rate control parameter range into a quality result prediction model;
The prediction unit is used for predicting the quality information of the video to be encoded under the code rate control parameter through the quality result prediction model, wherein the quality information is used for indicating the probability that the quality result of a first encoded video of the video to be encoded reaches a target quality result, the first encoded video is obtained through encoding by the first encoder, a training sample of the quality result prediction model comprises the code rate control parameter of a first sample encoded video of a sample video, and sample encoding characteristics of the sample video, the first sample encoded video is encoded by the first encoder, the sample encoding characteristics are obtained through encoding the sample video, and a label of the training sample is used for indicating whether the quality result of the first sample encoded video reaches the target quality result;
the parameter determining unit is used for determining target code rate control parameters of the video to be encoded based on the quality information of the video to be encoded under each code rate control parameter of the code rate control parameter range;
And the coding control unit is used for coding the video to be coded based on the target code rate control parameter by a first coder.
In addition, the embodiment of the application also provides electronic equipment, which comprises a processor and a memory, wherein the memory stores a computer program, and the processor is used for running the computer program in the memory to realize the video coding method provided by the embodiment of the application.
In addition, the embodiment of the application also provides a computer readable storage medium, wherein the computer readable storage medium stores a computer program, and the computer program is suitable for being loaded by a processor to execute any video encoding method provided by the embodiment of the application.
In addition, the embodiment of the application also provides a computer program product, which comprises a computer program, and the computer program realizes any video coding method provided by the embodiment of the application when being executed by a processor.
By adopting the scheme of the embodiment of the application, the reference coding characteristics corresponding to the video to be coded can be obtained, wherein the reference coding characteristics are obtained after the auxiliary encoder codes the video to be coded; determining a code rate control parameter range preset by a first encoder; inputting a code rate control parameter in a reference coding characteristic and code rate control parameter range into a quality result prediction model; predicting quality information of a video to be encoded under a code rate control parameter through a quality result prediction model, wherein the quality information is used for indicating the probability that a quality result of a first encoded video of the video to be encoded reaches a target quality result, the first encoded video is obtained through encoding by a first encoder, a training sample of the quality result prediction model comprises the code rate control parameter of a first sample encoded video of a sample video, and sample encoding characteristics of the sample video, the first sample encoded video is encoded by the first encoder, the sample encoding characteristics are obtained through encoding the sample video, and a label of the training sample is used for indicating whether the quality result of the first sample encoded video reaches the target quality result; determining target code rate control parameters of the video to be encoded based on quality information of the video to be encoded under each code rate control parameter in the code rate control parameter range; the first encoder encodes the video to be encoded based on the target code rate control parameter, so that the target code rate control parameter aiming at individuation of the video to be encoded under the first encoder can be predicted through the model, the probability that the video to be encoded meets a target quality result is improved, and the consumption experience of a user is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic flow chart of a video encoding method according to an embodiment of the present application;
FIG. 2 is a flow chart of a model training method according to an embodiment of the present application;
Fig. 3 is another flow chart of a video encoding method according to an embodiment of the present application;
Fig. 4 is a schematic flow chart of video consumption based on the video coding method according to an embodiment of the present application;
Fig. 5 is a schematic structural diagram of a video encoding device according to an embodiment of the present application;
Fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to fall within the scope of the application.
The embodiment of the application provides a video coding method, a video coding device, electronic equipment and a computer storage medium. The video encoding apparatus may be integrated in an electronic device, which may be a server or a terminal device.
The terminal equipment includes, but is not limited to, mobile terminals, fixed terminals, vehicle terminals and the like. The terminal device may be, but is not limited to, a smart phone, a tablet computer, a notebook computer, a desktop computer, a smart speaker, a smart watch, etc.
The server may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, network acceleration services (Content Delivery Network, CDN), basic cloud computing services such as big data and an artificial intelligent platform.
The terminal and the server may be directly or indirectly connected through wired or wireless communication, and the present application is not limited herein.
In addition, "plurality" in the embodiments of the present application means two or more.
The following will describe in detail. The following description of the embodiments is not intended to limit the preferred embodiments.
In this embodiment, the video encoding method of the present application will be described from the viewpoint of a video encoding apparatus, which may be integrated in a terminal or a server for convenience, and this is not shown, and in this embodiment, the video encoding apparatus is integrated in the server, that is, the server is used as an execution subject.
Referring to fig. 1, fig. 1 is a flowchart of a video encoding method according to an embodiment of the application. The video encoding method may include:
Step 101, obtaining reference coding features corresponding to a video to be coded, wherein the reference coding features are obtained by coding the video to be coded through an auxiliary coder;
Optionally, in this example, the format, source, duration, etc. of the video to be encoded are not limited.
In one example, the video to be encoded may be captured in real time, read from locally, downloaded from a server, etc., as this example is not limiting.
In one example, the video to be encoded may be a short video, a long video, a cross-screen video, a vertical-screen video, and so on. The video to be encoded may also come from various video service scenarios, such as on-demand service scenarios, live service scenarios, etc.
In the field of video services, there are many factors affecting the user experience, including video download speed, video quality, etc., which are all related to the code rate of the video. In the related art, when encoding video, the resolution of the video is set in association with the rate control, and there are many rate control modes, such as CBR (Constants Bit Rate, i.e. fixed rate), VBR (Variable Bit Rate, dynamic bit rate), CQP (Constant Quantization Parameter ), CRF (Constant Rate Factor, constant rate coefficient), and CQF (Constant Quality Factor ). Different encoders.
Different video service scenes may have different preferred code rate control modes, for example, in the fields of short video scenes and live broadcast, more code control modes are CRF, that is, constant quality and variable code rate. For example, in video transcoding, a CRF value is set according to the average code rate and the average video quality of the video, and the encoder is controlled to encode according to the CRF value.
In the related art, the rate control parameter of each encoder has a range, where there is a range end point value, such as a range [ F1, F2] of the rate control parameter F, and according to the code control mode of the rate control parameter, the value in the range is generally near the end point value, but is used as the threshold (upper threshold or lower threshold) of the rate control parameter to avoid that the encoder uses an excessively low rate, so that the quality result of the encoded video cannot reach the required quality result. For example, if the code rate control parameter is CRF and the value range is 45-60, the low code rate protection point is generally set to 57, i.e. the upper limit of CRF is limited to 57, so as to avoid the too low code rate.
And people have a loss aversion effect on video, namely the negative effect brought by the same amount of video loss is 2.5 times of the positive effect of the same amount of income. Therefore, the method and the device avoid excessive video loss caused by saving time and code rate, ensure the consumption experience of users, and achieve the aim of the application. The scheme of setting the upper limit or the lower limit of the parameters based on the endpoint value is too mechanical and poor in flexibility, and cannot realize the self-adaptive adjustment of the code rate control parameters aiming at the colleagues of the video after the quality result after the encoding is ensured.
Therefore, how to obtain higher code rate saving while improving the user consumption experience as much as possible is a concern of the application.
The coding features in this embodiment, which may also be referred to as compressed domain features based on encoder extraction, are used to describe the characteristics of the video that exist after encoding. Optionally, the type of the coding feature may be set according to the actual situation, for example, the coding feature corresponding to the at least one coded video may include video block division information, video frame peak signal-to-noise ratio, block transform coefficient, coding mode information, intra-prediction mode, inter-frame motion vector, etc., where the specific composition of the coding feature is related to the compression standard actually used, and embodiments of the present application are not limited herein.
The video block division information is information related to the video encoder performing block division on the video frame when the video is encoded, for example, the video block division information may include frequency information of block division.
Peak signal to Noise Ratio (PSNR) is an important indicator for measuring image or video quality. The PSNR judges whether the image quality is good or bad by comparing the difference between an original image and an image obtained after a certain process.
The video frame peak signal-to-Noise Ratio may reflect the quality of different video frame types, including peak signal-to-Noise ratios (PEAK SIGNAL to Noise Ratio, PSNR) of different video frame types in video (the different video frame types may be intra-coded frames (I-frames), forward predictive coded frames (PREDICTIVE FRAME, P-frames), bi-predictive interpolated coded frames (bi directional interpolated prediction frame, B-frames), etc.).
The block transform coefficients represent frequency domain information of the video.
The coding mode information refers to a coding standard of the video encoder, and for example, the coding mode information may be h.265 coding mode information or AV1 coding mode information.
Intra prediction refers to predicting pixels of a current block in the current frame using boundary pixels adjacent to the reconstructed block as reference pixels, in order to remove spatial redundancy of a video signal, and particularly when the use of inter prediction is limited, intra prediction ensures the efficiency of video compression.
The intra prediction mode is used to indicate an intra prediction mode used in video encoding, such as a Planar mode (Planar mode), a direct current mode (DC mode), a horizontal direction mode, and the like.
Inter-frame motion vectors are two-dimensional vectors that indicate the displacement of pixel blocks from one frame to the next.
Alternatively, in this example, the video to be encoded may be input to the auxiliary encoder for encoding, and then the reference encoding feature may be obtained based on the encoded video, for example, the encoding feature corresponding to the encoded video may be read from the file in which the encoded video is located.
Optionally, in this example, the auxiliary encoder may be the first encoder itself, or may be a non-first encoder, that is, the first encoder may encode the video to be encoded, so as to obtain the reference encoding feature, or the non-first encoder may encode the video to be encoded, so as to obtain the reference encoding feature.
Alternatively, the encoding standard of the encoder in this embodiment may be set according to practical situations, for example, the encoding standard of the video encoder may be h.264, h.265, h.266, or AV1, which are not limited herein.
Alternatively, the coding standards used by the different encoders may be the same or different, and this example is not limited in this regard.
102, Determining a code rate control parameter range preset by a first encoder;
For example, if the first encoder is a video encoder based on the AV1 standard and the rate control method is CRF, the parameter range of the rate control parameter CRF is [45, 60], or the first encoder is an encoder based on the h.266 standard, such as a VTM encoder.
Optionally, the auxiliary encoder includes, but is not limited to, an H265 encoder, an H264 encoder, and the like.
Step 103, inputting a code rate control parameter in the reference coding characteristic and code rate control parameter range into a quality result prediction model;
Optionally, in step 103, one rate control parameter is selected from the range of rate control parameters at a time, and the selected rate control parameter and the reference coding feature are used as input vectors to be input into the quality result prediction model. Where the rate control parameter is selected, an integer form of the parameter value, or a decimal form of the parameter value may be selected, which is not limited in this example.
104, Predicting quality information of the video to be encoded under the code rate control parameter through a quality result prediction model, wherein the quality information is used for indicating the probability that the quality result of the first encoded video of the video to be encoded reaches a target quality result;
The first encoded video is understood to be the video obtained by encoding by the first encoder, and it can be understood that in step 104 of the present application, the first encoded video is not actually obtained by encoding the video to be encoded by the first encoder, and the model is essentially a prediction of probability that if the first encoder encodes the video to be encoded according to the rate control parameter of the input model, the quality result of the first encoded video reaches the target quality result.
The training samples of the quality result prediction model comprise code rate control parameters of a first sample coded video of the sample video and sample coding features of the sample video, the first sample coded video is coded by a first coder, the sample coding features are obtained by coding the sample video, and labels of the training samples are used for indicating whether quality results of the first sample coded video reach target quality results or not.
The sample video can be encoded by an encoder, and sample encoding features are extracted from a file after the sample video is encoded. Alternatively, the encoders corresponding to the sample coding feature and the reference coding feature may be the same or different, e.g., the sample coding feature may be obtained by an auxiliary encoder.
In an alternative example, the sample coding feature may be a coding feature obtained for the first sample coded video after the first encoder encodes the sample video to obtain the first sample coded video. Thus, in the scheme that the reference coding feature and the sample coding feature are obtained from the coded video of the first encoder, the quality result prediction model learns the mapping relationship between the coding feature and the code rate control parameter of the first encoder and the quality result index (used for indicating whether the quality result coded by the first encoder meets the target quality result). Therefore, based on the quality result prediction model, the target code rate control parameter of the video to be encoded meeting the target quality result can be accurately predicted, so that the code rate control parameter of the first encoder is adaptively adjusted.
In other alternative examples, the reference encoding feature and the sample encoding feature may be video encoded and then acquired based on an encoder other than the first encoder. In practice, there are different encoders with small differences in the encoding characteristics, but with large differences in the encoding characteristic extraction speed, and in the scheme of extracting the reference encoding characteristics and/or the sample encoding characteristics, other encoders with encoding characteristic extraction speeds meeting the preset rapid requirements are adopted, so that the rate control parameter prediction speed can be effectively improved, and the encoding efficiency is improved.
In an alternative example, the auxiliary encoder includes a second encoder, and the step of "obtaining the reference coding feature corresponding to the video to be coded" includes:
encoding the video to be encoded through a second encoder to obtain a second encoded video;
And acquiring the coding characteristics of the second coded video in a second coder as the reference coding characteristics corresponding to the video to be coded, wherein the second coder is different from the first coder.
Optionally, the extraction speed of the coding features corresponding to the second encoder is faster than the extraction speed of the coding features corresponding to the first encoder, and the feature difference degree between the coding features is obtained based on the coded video of the same video by the first encoder and the second encoder and is smaller than a preset difference degree threshold value.
For example, the first encoder may be an AV1 encoder, the second encoder is a 264 encoder, the speed of extracting the encoding features in the 264 encoder is about 10 times faster than the speed of extracting the encoding features by the AV1 encoder, but the similarity between the encoding features of the two encoders is higher, so that the time required for predicting the target rate control parameter can be effectively reduced by adopting the 264 encoder to extract the encoding features, and the total encoding time of the video to be encoded is ensured.
In the application, the quality result of the coded video can be evaluated by various evaluation indexes, and the application is not limited.
For example: evaluation indexes of quality results include, but are not limited to: VMAF, video Muitimethod Assessment Fusion, video Multi-method rating fusion, suitable for measuring the look and feel of streaming video quality in a large-scale environment, (VMAF values once exceeding 93 minutes, the viewer cannot perceive the difference), PSNR, SSIM (Structural Similarity, structural similarity index), MS-SSIM (Multi-Scale Structural Similarity, multi-scale structural similarity index), BD-Bitrate (Bjontegaard delta Bitrate, for representing the rate saving of both methods under the same objective quality), BD-PSNR (Bjontegaard DELTA PSNR, for comparing the video quality differences of both video encoders at the same bit rate), BD-rate (Bjontegaard DELTA RATE for evaluating the RD (rate distortion) performance of different video encoders), and the like.
Optionally, the quality result and the target quality result in the present application may be evaluated by using the same one or more evaluation indexes, for example, the quality result and the target quality result are both VMAF scores, or VMAF +psnr+ssim are both adopted, and after calculating the normalized index values under the three evaluation indexes, weighting and summing are performed based on the normalized index values and the weighting coefficients of each evaluation index, so as to obtain the quality result and the target quality result.
Optionally, the quality information may be probability, and the value range is 0-1, which is used to indicate the probability that the quality result corresponding to the video obtained by encoding by the first encoder according to the code rate control parameter of the input model is higher than the target quality result. It can be understood that in this process, the model does not control the first encoder to encode according to the rate control parameter, but predicts the probability corresponding to the currently input reference encoding feature+rate control parameter based on the mapping relationship between the rate control parameter+sample encoding feature learned during training and the tag.
Step 105, determining a target code rate control parameter of the video to be encoded based on quality information of the video to be encoded under each code rate control parameter of the code rate control parameter range;
alternatively, in this example, step 103 may be repeated multiple times until the number of rate control parameters in the range of rate control parameters from which quality information is obtained is sufficiently large, for example, the rate control parameters of each integer in the range of rate control parameters are taken to obtain quality information.
In this example, the quality information is probability, the probability value is higher, the probability of meeting the target quality result is higher, and the appropriate target rate control parameter can be determined by setting a probability threshold.
Optionally, in this example, the step of determining the target rate control parameter of the video to be encoded based on the quality information of the video to be encoded under each rate control parameter in the range of rate control parameters may include: acquiring a preset probability threshold; based on the size relation between the probability corresponding to each code rate control parameter and a preset probability threshold, determining probability demarcation parameters in the code rate control parameter range, wherein the probability corresponding to the code rate control parameters at two sides of the probability demarcation parameters respectively meets the first quantity condition of the probability larger than the preset probability threshold and the second quantity condition of the probability not larger than the preset probability threshold.
Optionally, the number condition is used to define a minimum ratio of the number of probabilities greater than (or not greater than) a preset probability threshold in the probabilities corresponding to the rate control parameters on one side of the probability demarcation parameters (participating in step 103) to the total number of rate control parameters. For example, the minimum ratio may be 1, that is, the probabilities corresponding to the rate control parameters on the side of the probability demarcation parameter (participating in step 103) are all greater than (or not greater than) the preset probability threshold.
Alternatively, in one example, the probability demarcation parameter may be an integer code rate control parameter or a fractional code rate control parameter, which is not limited in this example.
Optionally, the step of determining the probability demarcation parameter in the range of the rate control parameter based on the magnitude relation between the probability corresponding to each rate control parameter and the preset probability threshold may include:
If the probability corresponding to the code rate control parameter is larger than a preset probability threshold value, mapping the probability into a first value;
if the probability corresponding to the code rate control parameter is not greater than the preset probability threshold value, mapping the probability into a second value;
Determining a candidate boundary parameter in the code rate control parameter range to obtain a first parameter sub-range on the left side of the candidate boundary parameter and a second parameter sub-range on the right side of the candidate boundary parameter, wherein the second parameter sub-range comprises the candidate boundary parameter;
If the first value corresponding to the code rate control parameter in the first parameter sub-range meets the first quantity condition and the second value corresponding to the code rate control parameter in the second parameter sub-range meets the second quantity condition, determining the candidate boundary parameter as a probability boundary parameter;
otherwise, the candidate boundary parameters are redetermined, and the probability boundary parameters are determined based on the new candidate boundary parameters.
The code rate control parameters in the second parameter sub-range do not exceed the candidate boundary parameters, and the code rate control parameters in the first parameter sub-range are larger than the candidate boundary parameters.
Optionally, the first value and the second value are quality result flag bits of the encoded video, the first value may be 1, and the second value may be 0, where the quality result of the encoded video under the rate control parameter of the first encoder is respectively indicated to be greater than the target quality result and not greater than the target quality result.
For example, taking an AV1 encoder as an example, the CRF value range is [45, 60], the probability P under each CRF value, that is, P 45、P46、····P60, the value between [0,1] is obtained in steps 101-103, the preset probability threshold is taken to be 0.6, the P value greater than 0.6 is mapped to be the quality result flag bit 1, the P value not greater than 0.6 is mapped to be the quality result flag bit 0, a candidate boundary parameter such as 50 is selected in the rate control parameter range [45, 60], the first parameter sub-range is [45, 50], the second parameter sub-range is (50, 60), and if the rate control parameters in the first parameter sub-range all correspond to the quality result flag bit 1, and the rate control parameters in the second parameter sub-range all correspond to the quality result flag bit 0, the CRF value 50 is the probability boundary parameter.
Alternatively, in the present application, a dichotomy may be adopted to determine the candidate boundary parameters, and optionally, the step of "redetermining the candidate boundary parameters and determining the probability boundary parameters based on the new candidate boundary parameters" may include:
determining a sub-range which simultaneously contains a first value and a second value in the first parameter sub-range and the second parameter sub-range as a new parameter range;
re-selecting a candidate boundary parameter in the new parameter range, and dividing the parameter range based on the new candidate boundary parameter to obtain a new first parameter sub-range and a new second parameter sub-range;
If the first value corresponding to the code rate control parameter in the first parameter sub-range meets the first quantity condition and the second value corresponding to the code rate control parameter in the second parameter sub-range meets the second quantity condition, determining the candidate boundary parameter as a probability boundary parameter;
Otherwise, returning to the step of determining that the sub-range containing the first value and the second value in the first parameter sub-range and the second parameter sub-range is the new parameter range until the probability demarcation parameter is determined.
In the example where the rate control parameter in step 103 is an integer, the probability demarcation parameter may be an integer. In one example, if the probability boundary parameter cannot be determined under the code rate control parameter in the form of an integer, the value step length of the code rate control parameter can be reduced, for example, from 1 to 0.5, and steps 103-105 are repeated to obtain the target code rate control parameter. Optionally, the reduction of the value step can be set according to actual needs, and is not necessarily limited to 0.5.
Therefore, the data range can be folded in half by continuously adopting a dichotomy method, and the corresponding probability demarcation parameters can be found.
It will be appreciated that in case the candidate boundary parameter is an integer, the probability boundary parameter CRF causes the first encoder to switch the quality indicator bit between 0 and 1 at CRF and crf+1. For example, the first parameter sub-range is [45, 50], the second parameter sub-range is (50, 60), the probability demarcation parameter CRF is 50, the corresponding quality result flag bit is 1, the code rate control parameters of CRF exceeding 50 all correspond to quality result flag bit 0, and then it is indicated that the quality result flag bit of the coded video of the video to be coded changes from 1 to 0 when CRF changes from 50 to 51.
It can be appreciated that the quality of the video of the rate control parameters near the probability demarcation parameter is basically satisfactory, and even if there is video loss, the rate control parameters are not too large. The probability demarcation parameter or its neighboring (e.g., integer form) rate control parameters may be used as the target rate control parameter.
In an actual scenario, different priority requirements may be provided for video encoding, such as quality priority or code rate priority, and for different priority requirements, the selection of the target code rate control parameter may be performed in different manners based on the probability demarcation parameter so as to meet the corresponding priority requirement.
Optionally, the step of determining the target rate control parameter based on the probability demarcation parameter may include: determining a target priority scheme of the video to be coded in a preset priority scheme, wherein the preset priority scheme comprises a quality priority scheme and a code rate priority scheme; if the target priority scheme is a quality priority scheme, determining that a code rate control parameter which does not exceed the probability demarcation parameter and is an integer in the code rate control parameter range is the target code rate control parameter; if the target priority scheme is a code rate priority scheme, determining that a code rate control parameter which exceeds the probability demarcation parameter and is an integer in the code rate control parameter range is the target code rate control parameter.
Optionally, if the probability demarcation parameter is an integer, the probability demarcation parameter may be directly used as the target code rate control parameter, or the probability demarcation parameter is subtracted by one to obtain the target code rate control parameter.
In one example, if the candidate boundary parameter already needs to be valued beyond the rate control parameter, for example, to be valued below 45 or above 60, a rate control parameter in the range of rate control parameters may be determined as a target rate control parameter, and optionally, the determined target rate control parameter may be the current rate control parameter of the first encoder, or a default set rate control parameter, or may also be any rate control parameter with a quality result flag bit of 1.
And 106, the first encoder encodes the video to be encoded based on the target code rate control parameter.
Optionally, the first encoder encodes the video to be encoded based on the target rate control parameter, and may directly use the target rate control parameter as its own rate control parameter for encoding.
In practical applications, the encoder is updated continuously, and when the encoder is updated from an old encoder (such as an encoder based on the H265 standard or the H264 standard) to a new encoder (such as an encoder based on the AV1 standard), the encoding capability of the encoder is greatly improved, and in general, additional image quality benefits are brought under the same video quality. However, the code rate allocation manners of different encoders are different when encoding, and under the condition of improving the overall performance, the situation that part of video is poor in performance may still occur. How to obtain higher code rate saving while improving user consumption experience as much as possible is a problem that the application needs to solve at the core, especially for the scene updated to a new encoder.
Optionally, in the present application, before the step of encoding the video to be encoded by the first encoder based on the target rate control parameter, the method may include:
if the target code rate control parameter is larger than the preset low code rate protection parameter corresponding to the first encoder, adjusting the target code rate control parameter, and updating the code rate control parameter of the first encoder by the adjusted target code rate control parameter, wherein the quality result of the encoded video of the first encoder meets the preset minimum quality protection requirement under the preset low code rate protection parameter;
if the target code rate control parameter is not greater than the preset low code rate protection parameter, updating the code rate control parameter of the first encoder by the target code rate control parameter.
Optionally, if the target rate control parameter is greater than the preset low rate protection parameter corresponding to the first encoder, the target rate control parameter may be adjusted in a direction of increasing the encoding quality, for example, the target rate control parameter is CRF-1, and CRF is greater than the corresponding preset low rate protection parameter CRF-2, and then the target rate control parameter CRF-1 is reduced.
Optionally, the preset low-bitrate protection parameter may be determined according to video quality of the encoded videos of the first encoder, the preset low-bitrate protection parameter is a bitrate control parameter, and the preset minimum quality protection requirement may be understood as a minimum quality requirement satisfied by the encoded videos of the first encoder. Optionally, the preset low-bitrate protection parameter may be understood as a maximum bitrate control parameter that may be obtained in the bitrate control parameter range when the quality result of the video after encoding by the first encoder meets the preset minimum quality protection requirement. If the code rate control parameter is larger than the preset low code rate protection parameter, the quality result of the coded video in the first encoder does not meet the minimum quality requirement.
Optionally, the preset low code rate protection parameter may be determined based on manual visual observation of the video encoding result of the first encoder, for example: acquiring a plurality of videos to be encoded, encoding by adopting code rate control parameters in a code rate control parameter range based on a first encoder for each video, and transmitting the encoded videos to a plurality of manual identification terminals, wherein each manual identification terminal receives and plays all the encoded videos of at least one video; and receiving the coded video with the lowest acceptable quality selected by the manual identification terminal for each video, determining the code rate control parameter of each coded video, eliminating abnormal values (such as a maximum value and a minimum value) for the code rate control parameter, taking an average value, and obtaining a preset low code rate protection parameter based on the average value (such as rounding the average value).
In one example, the preset low code rate protection parameter of the first encoder may also be determined by comparing the encoding effect of the same video based on the first encoder and the third encoder.
Optionally, in the present application, the determining a scheme of the preset low code rate protection parameter may include:
Acquiring a sample video, and encoding the sample video by a first encoder by adopting each code rate control parameter in a code rate control parameter range to obtain a first sample encoded video;
The sample video is encoded by adopting a second reference code rate control parameter through a third encoder to obtain a third sample encoded video, wherein the quality result of the third sample encoded video accords with a preset minimum quality protection requirement;
and obtaining preset low code rate protection parameters of the first encoder in the code rate control parameter range based on the third sample coded video of the same sample video and the quality comparison of the first sample coded videos.
Alternatively, the second reference rate control parameter may be manually determined from a rate control parameter range of the third encoder (for distinction, may be referred to as a third rate control parameter range) based on artificial vision, for example, the third encoder is 265 encoders, and the second reference rate control parameter is crf=31.6.
Alternatively, the third encoder may be an old encoder, the first encoder being a new encoder, the "new" meaning that the encoding standard of the encoder is a new standard whose standard administration time is later than the administration time of the encoding standard of the old encoding.
For example, the first encoder is an AV1 encoder, the third encoder is a 265 encoder, the rate control parameters of the first encoder (for distinction, may be referred to as a first rate control parameter range) is 45, 60, assuming 10 sample videos, video 1, video 2, video 3, & gtvideo 10, for each video, the first encoder encodes using the rate control parameters of the integers in [45, 60] to obtain 16 first sample encoded videos, and the third encoder encodes for each video based on crf=31.6 to obtain a third sample encoded video for each video.
Of course, in an alternative example, the relationship between the first encoder and the third encoder (and the second encoder) may not be limited to the relationship between the new encoder and the old encoder, i.e., the first encoder may be a new encoder with respect to the third encoder (and the second encoder), may be an old encoder, and the like, and the present example is not limited herein.
Optionally, based on quality comparison of the third sample encoded video and each first sample encoded video of the same sample video, obtaining a preset low-bitrate protection parameter of the first encoder in the bitrate control parameter range may include:
For each sample video, comparing and playing a third sample coded video with each first sample coded video, wherein the playing interface also provides a determination control with the same quality;
determining the first sample encoded video of the same quality as the third sample encoded video in response to a trigger operation of the quality identity determination control;
and determining the code rate control parameters of the first sample coded video with the same quality based on the sample videos, and determining preset low code rate protection parameters. Optionally, the manner of determining the preset low code rate protection parameter includes, but is not limited to, averaging, median value, and so on.
In an alternative example, the preset low code rate protection parameter CRF may be 53. Therefore, when the predicted target code rate control parameter is higher than the CRF53, a higher code rate gear can be adopted for coding, namely the value of the target code rate control parameter CRF is reduced, and the possibility of loss aversion is reduced.
Based on the first sample coded video and the third sample coded video, the second reference code rate control parameter corresponding to the low code rate point of the third encoder can be accurately determined by means of the old coding characteristic of the third encoder, namely, the characteristic that the execution history is longer and the artificial experience is more sufficient, so that the playing effect of the new first encoder and the old third encoder on the coded video of the same video can be rapidly and accurately determined by comparing the artificial vision, the preset low code rate protection parameter of the new first encoder can be protected, and the possibility of loss aversion is reduced.
In an alternative example, the video to be encoded may be a complete video, such as a short video, a live review video, a television show, etc. In another alternative example, the video to be encoded may also be a video slice of a target video to be encoded, whereby the determination of the target rate control parameter may be made for each slice.
In an alternative example, before the step of acquiring the reference coding feature corresponding to the video to be coded, the method further includes: extracting the slicing information of the target video from the video file of the target video, slicing the target video based on the slicing information, and taking each obtained video slicing as a video to be coded.
Alternatively, the slice information includes, but is not limited to, time period information of each video slice on a time axis, or start-stop image frame information (e.g., start-stop image frame number) of each video slice. The source of the fragmentation information is not limited.
Alternatively, the slice information may be determined based on a setting operation when the video producer produces a video, for example, the video producer obtains a target video by merging a plurality of video clips, and the composite video records time information (or start-stop image frame information) of each video slice at the time of the composite video as the slice information.
In an alternative example, before the step of acquiring the reference coding feature corresponding to the video to be coded, the method further includes:
and carrying out video scene recognition on the target video, determining a video scene corresponding to the video frame in the target video, dividing the video frame of the same video scene into video fragments, and taking each obtained video fragment as a video to be encoded.
Optionally, the video scene recognition may be performed by a preset scene recognition model, where the model may recognize a boundary position between different scenes in the target video, divide a video frame of the same video scene into one video slice based on the boundary position, and use each obtained video slice as the video to be encoded.
In an alternative example, before the step of acquiring the reference coding feature corresponding to the video to be coded, the method further includes:
And analyzing the picture motion complexity of the target video, determining the picture motion complexity corresponding to the video frame in the target video, slicing the target video based on the picture motion complexity, and taking each obtained video slice as a video to be coded.
Alternatively, the picture motion complexity corresponding to a video frame may be the picture motion complexity between the video frame and its next video frame.
In the application, the type of the quality result prediction model is not limited, and the model is any feasible neural network model capable of realizing parameter mapping, for example, a fully-connected neural network such as a deep neural network (Deep Neural Networks, DNN), a Multi-Layer Perceptron (MLP), a feed-forward neural network (Feedforward Neural Networks) and the like, and the neural network model can also comprise a convolutional neural network, a cyclic neural network and other neural network models capable of learning mapping relations among parameters.
Optionally, the label of the training sample, that is, the quality result flag bit, has two values, 1 and 0, which are respectively used to indicate that the quality result of the first sample encoded video reaches the target quality result and that the quality result does not reach the target quality result.
In consideration of better avoiding the loss aversion effect, the training process of the quality result prediction model can be interfered based on the loss aversion effect, so that the quality result prediction model has higher prediction accuracy.
Optionally, the solution of this example may further include:
Obtaining a training sample of a quality result prediction model to be trained;
Predicting the probability that the quality result of the first sample coded video under each code rate control parameter reaches a target quality result based on the training sample by a quality result prediction model;
calculating the basic loss of the training sample based on the probability corresponding to the training sample and the label of the training sample;
weighting the basic loss based on a preset loss aversion coefficient to obtain model loss under the loss aversion effect;
based on the model loss, optimizing the quality result prediction model until the model training end condition is reached.
Optionally, the model training end condition includes, but is not limited to, that the number of model iterations reaches a preset number of times threshold, or that after two adjacent model optimizations, the difference of model loss is smaller than a preset difference threshold, etc., and the present example has no limitation on the end condition. Optionally, the optimization quality result in this example predicts the model, as model parameters of the adjustment model.
Alternatively, in one example, the loss aversion coefficient is not lower than 2.5. For example, the loss aversion coefficient is 2.5.
In one example, the Loss function used in the base Loss calculation is any feasible Loss function that measures the difference between the predicted and actual values, such as an L1Loss function, MESloss function, crossEntropyLoss function (cross entropy function), and so on. For example, in one alternative example, the model loss corresponds to a loss function of 2.5 mse.
By training, the quality result prediction model may construct a mapping of coding features (i.e., compressed domain features) to quality result flag bits of the new encoder (i.e., first encoder).
Optionally, in this example, the training process of the quality result prediction model may include:
Acquiring a sample video and acquiring sample coding characteristics of the sample video;
The method comprises the steps of encoding sample videos based on code rate control parameters through a first encoder to obtain first sample encoded videos, and determining quality results of the first sample encoded videos;
obtaining a target quality result corresponding to the sample video;
Based on sample coding characteristics and each code rate control parameter of each sample video, constructing a plurality of training samples corresponding to each sample video;
And setting labels for all the training samples based on the target quality results and the quality results corresponding to the code rate control parameters in the training samples.
Alternatively, the sample coding feature of the sample video may be derived based on the encoding of the sample video by the auxiliary encoder. Alternatively, the auxiliary encoder may be a second encoder or a third encoder.
For example, the step of obtaining sample coding features of the sample video may include: encoding the sample video by a second encoder to obtain a second sample encoded video; and acquiring the corresponding coding characteristic of the second sample coding video under the second coder as a sample coding characteristic.
Optionally, the second encoder may perform encoding only once for each sample video, and the used rate control parameter is not limited, and may be any rate control parameter in a second rate control parameter range of the second encoder, or a rate control parameter in which a quality result of the encoded video in the second rate control parameter range meets a requirement of a good quality result.
Alternatively, in the present example, the second encoder is used as an encoder for extracting the encoding features at a faster speed than both the first encoder and the third encoder.
In an alternative example, the third encoder may be selected as a reference to determine the target quality result for the sample video based on the characteristics of longer old encoder execution time, longer user experience time, and richer experience data.
Optionally, the step of "obtaining a target quality result corresponding to the sample video" may include: encoding the sample video based on the first reference code rate control parameter by a third encoder to obtain a third sample encoded video; and determining a quality result corresponding to the third sample coded video as a target quality result corresponding to the sample video, wherein the second encoder is different from the third encoder, and the extraction speed of the coding features of the second encoder is higher than that of the third encoder.
Alternatively, the first reference rate control parameter and the second reference rate control parameter may be the same or different. If the first reference rate control parameter and the second reference rate control parameter are crf=31.6.
It will be appreciated that in one example, the same old encoder may be used as the second encoder and the third encoder if the encoding feature extraction speed of the old encoder meets the fast requirement.
Optionally, setting a label for each training sample based on the target quality result and the quality result corresponding to the code rate control parameter in the training sample may include:
if the target quality result of the training sample is larger than the quality result of the first sample coded video under the code rate control parameter in the training sample, determining that the quality result flag bit corresponding to the code rate control parameter is 1;
If the target quality result of the training sample is larger than the quality result of the first sample coded video under the code rate control parameter in the training sample, determining that the quality result flag bit corresponding to the code rate control parameter is 0;
and setting the quality result flag bit as a label corresponding to the training sample.
Alternatively, the sample video may be a complete video, or a video slice in the original video, and the step of obtaining the sample video may include: acquiring a plurality of original videos; and slicing the original video to obtain video slices of the original video, wherein each video slice is used as a sample video.
Alternatively, the scheme for slicing the original video may refer to the scheme for slicing the target video, which is not described herein.
By adopting the scheme of the embodiment, the low code rate points which are easy to generate the loss aversion effect of the new encoder can be predicted more accurately and rapidly based on the old encoder, the low code rate points are further protected, and the possibility of loss aversion is reduced.
It can be understood that the above-mentioned training method of the quality result prediction model may also be performed on a training server, and after the training server trains the quality result prediction model, the training server may deploy the model to a video server or to a terminal device for use. Alternatively, the training server may be part of a video server.
An exemplary description of a scheme for training a quality outcome prediction model by a training server is described below in conjunction with fig. 2. In the example of fig. 2, the first encoder is an AV1 encoder, the second encoder is a 264 encoder, and the third encoder is a 265 encoder. Before training, a plurality of original videos are set in a training server, and the code rate control parameters are CRF parameters. Referring to fig. 2, the method for model training by the server includes:
step 201, performing slicing processing on an original video, wherein each obtained video slice is used as a sample video;
202, after downsampling a sample video, encoding the sample video by a 264 encoder to obtain a second sample encoded video, and obtaining an encoding feature corresponding to the second sample encoded video as a sample encoding feature of the sample video;
Alternatively, the sample-encoded features are not limited in dimension, e.g., 112-dimensional features.
Step 203, for each sample video, encoding the sample video by using an AV1 encoder under a CRF value of each integer format within a CRF45-60 range to obtain a first sample encoded video, and calculating VFMA score of the first sample encoded video;
It will be appreciated that there are a plurality of first sample encoded videos for each sample video.
Step 204, for each sample video, encoding based on crf=31.6 by using 265 encoder to obtain a third sample encoded video, and calculating VFMA score of the third sample encoded video;
optionally, the order of steps 202-204 is not limited in this example.
Step 205, if the VFMA score of the first sample encoded video is larger, the quality result flag bit corresponding to the CRF parameter of the first sample encoded video is 1, otherwise, the quality result flag bit corresponding to the CRF parameter of the first sample encoded video is 1;
and 206, respectively combining the sample coding features of the same sample video and a plurality of CRF parameters to obtain a plurality of training samples, and setting a quality result flag bit corresponding to the CRF parameters as a tag.
Alternatively, the rate control parameter may extend be a feature vector of dimension 1.
In step 206, the sample coding features and feature vectors of the CRF parameters may be fused to obtain training samples. Alternatively, the fusion means includes, but is not limited to, stitching.
Step 207, determining a first sample coded video which is the same as a third sample coded video in the plurality of first sample coded videos in objective quality or subjective quality based on the plurality of first sample coded videos and the third sample coded video of the same sample video, and determining a CRF value corresponding to the determined first sample coded video as a preset low code rate protection parameter.
Optionally, in an example, a low code rate protection parameter crf=53 is preset.
Optionally, the scheme of determining the preset low code rate protection parameter by subjective quality may refer to the scheme of determining the preset low code rate protection parameter based on the artificial vision viewing video in the foregoing example, which is not described herein.
The method for determining the preset low code rate protection parameter based on the objective quality may include determining a first sample encoded video of the plurality of first sample encoded videos, which has the same index value (or a difference value smaller than a preset difference threshold value) on the objective quality evaluation index as a third sample encoded video, and determining a CRF value corresponding to the determined first sample encoded video as the preset low code rate protection parameter.
Step 208, inputting the training sample into a quality result prediction model to obtain the probability that the quality result of the first sample coded video under the CRF parameter in the sample reaches the target quality result;
step 209, calculating model loss based on a loss function 2.5×mse;
and 210, optimizing the quality result prediction model based on the model loss until the model training ending condition is reached.
By sampling the training method, the quality result prediction model has higher prediction accuracy on probability, and the probability of loss aversion effect under the first encoder in actual application can be reduced.
Corresponding to the example of fig. 2, an example is illustrated herein of a scheme in which a terminal side or server side determines personalized rate control parameters for different portions of a target video based on a quality result prediction model.
Referring to fig. 3, the video encoding method may include:
step 301, slicing a target video to obtain a plurality of video slices as videos to be encoded;
Step 302, selecting a video to be encoded, downsampling the video to be encoded by a 264 encoder, and then performing first-pass encoding to obtain the encoding characteristics of the encoded video under the 264 encoder, wherein the encoding characteristics are used as the reference encoding characteristics of the video to be encoded;
step 303, each time, taking a reference coding feature and an integer parameter in CRF parameter ranges [45, 60] of the AV1 encoder as model input quantity, and inputting the model input quantity into a trained quality result prediction model to obtain a probability value output on the model;
in step 303, a probability value corresponding to each integer parameter in the CRF parameter range [45, 60] needs to be obtained.
Step 304, mapping to a quality result flag bit 1 if the probability value is greater than a preset probability threshold value of 0.6, and mapping to a quality result flag bit 0 if the probability value is not greater than the probability threshold value of 0.6;
step 305, determining a probability demarcation parameter CRF 1 in a CRF parameter range [45, 60] by using a dichotomy, so that a quality result flag bit is switched between 0 and 1 under CRF 1 and CRF 1 +1;
Step 306, if a quality priority scheme is used for the target video, taking the CRF 1 as a target code rate control parameter CRF 2; if a code rate priority scheme is used for a target video, CRF 1 +1 is taken as a target code rate control parameter CRF 2;
step 307, determining whether CRF 2 is greater than 53, if yes, proceeding to step 308, otherwise proceeding to step 309;
Step 308, CRF 2 -1 is taken as a new target code rate control parameter, and an AV1 encoder is controlled to encode the video to be encoded;
309, using CRF 2 to control AV1 encoder to encode the video to be encoded;
Step 310, obtaining an encoded video of the video to be encoded;
step 311, if each video to be encoded in the target video is obtained after encoding, ending, otherwise, returning to step 302, and continuing encoding.
By adopting the embodiment, each video to be encoded can be rapidly determined under the AV1 encoder, so that loss aversion is not easy to occur, and the code rate control parameter of the code rate can be saved, thereby encoding.
In order to better understand the video encoding method provided by the embodiment of the present application, the embodiment of the present application further provides a video consumption scheme implemented based on the video encoding method, referring to fig. 4, the consumption scene includes a video uploading end, a server and a video consumption end, and it can be understood that the number of the video uploading end and the video consumption end is not limited, and the video uploaded by one video uploading end can be downloaded and consumed by a plurality of video consumption ends. The AV1 encoder, 264 encoder, 265 encoder may be deployed in a server.
The video consumption scheme includes:
step 401, the video consumption end uploads a target video to a server;
The target video may be captured in real time by the video consumer or captured in history, or obtained locally, or obtained from another terminal or a server, which is not limited in this example. The length of the target video is not limited, and may be short video or long video.
Step 402, the server receives the target video, slices the target video by adopting the method in the embodiment of fig. 3, and obtains each video to be encoded obtained by slicing into encoded video encoded by the first encoder, thereby obtaining and storing the target encoded video corresponding to the target video;
step 403, the server receives an acquisition request of the video consumer for the target video;
Step 404, the server sends the target coded video corresponding to the target video to a video consumer;
step 405, the video consumer receives the target encoded video, decodes the target encoded video, and plays the decoded video.
Therefore, the compression rate and the video quality of the video after target coding can be ensured, the pressure and the cost for storing the video by the server can be reduced, the transmission time and the resources required by the server to send the video to the video consumption end can be reduced, the condition of abnormal video quality of the video consumption end can be reduced, and the video consumption experience of a user can be improved.
In order to facilitate better implementation of the video coding method provided by the embodiment of the application, the embodiment of the application also provides a device based on the video coding method. Where the meaning of the terms is the same as in the video coding method described above, specific implementation details may be referred to in the description of the method embodiments.
For example, as shown in fig. 5, the video encoding apparatus may include:
A feature obtaining unit 501, configured to obtain a reference coding feature corresponding to a video to be coded, where the reference coding feature is obtained by coding the video to be coded through an auxiliary encoder;
A range determining unit 502, configured to determine a range of code rate control parameters preset by the first encoder;
An input unit 503, configured to input a code rate control parameter in a range of reference coding features and code rate control parameters into a quality result prediction model;
The prediction unit 504 is configured to predict, according to a quality result prediction model, quality information of a video to be encoded, where the quality information is used to indicate a probability that a quality result of a first encoded video of the video to be encoded reaches a target quality result, where the first encoded video is encoded by a first encoder, a training sample of the quality result prediction model includes the code rate control parameter of a first sample encoded video of a sample video, and a sample encoding feature of the sample video, where the first sample encoded video is encoded by the first encoder, the sample encoding feature is obtained by encoding the sample video, and a tag of the training sample is used to indicate whether the quality result of the first sample encoded video reaches the target quality result;
The parameter determining unit 505 is configured to determine a target rate control parameter of the video to be encoded based on quality information of the video to be encoded under each rate control parameter of the rate control parameter range;
and the encoding control unit 506 is configured to encode the video to be encoded by the first encoder based on the target rate control parameter.
In an alternative example, the apparatus may further include: the training unit is used for obtaining training samples of the quality result prediction model to be trained; predicting the probability that the quality result of the first sample coded video under the code rate control parameter reaches the target quality result based on the training sample by a quality result prediction model; calculating the basic loss of the training sample based on the probability and the label of the training sample; weighting the basic loss based on a preset loss aversion coefficient to obtain model loss under the loss aversion effect; based on the model loss, optimizing the quality result prediction model until the model training end condition is reached.
In an alternative example, the apparatus may further include: the training sample generation unit is used for acquiring a sample video and acquiring sample coding characteristics of the sample video; the method comprises the steps of encoding sample videos based on code rate control parameters through a first encoder to obtain first sample encoded videos, and determining quality results of the first sample encoded videos; obtaining a target quality result corresponding to the sample video; based on sample coding characteristics and each code rate control parameter of each sample video, constructing a plurality of training samples corresponding to each sample video; and setting labels for all the training samples based on the target quality results and the quality results corresponding to the code rate control parameters in the training samples.
In an optional example, the training sample generating unit is configured to encode the sample video by a second encoder to obtain a second sample encoded video; and acquiring the corresponding coding characteristic of the second sample coding video under the second coder as a sample coding characteristic.
In an optional example, the training sample generating unit is configured to encode, by a third encoder, the sample video based on the first reference rate control parameter to obtain a third sample encoded video; and determining a quality result corresponding to the third sample coded video as a target quality result corresponding to the sample video, wherein the second encoder is different from the third encoder, and the extraction speed of the coding features of the second encoder is higher than that of the third encoder.
In an optional example, the auxiliary encoder includes a second encoder, and the feature obtaining unit is configured to encode the video to be encoded by the second encoder to obtain a second encoded video; and acquiring the coding characteristics of the second coded video in a second coder as the reference coding characteristics corresponding to the video to be coded, wherein the second coder is different from the first coder.
In an optional example, the quality information is probability, and the parameter determining unit is configured to obtain a preset probability threshold; determining probability demarcation parameters in the range of the code rate control parameters based on the size relation between the probability corresponding to each code rate control parameter and a preset probability threshold, wherein the probability corresponding to the code rate control parameters at two sides of the probability demarcation parameters respectively satisfies the first number of the probabilities larger than the preset probability threshold and the second number of the probabilities not larger than the preset probability threshold; and determining a target code rate control parameter based on the probability demarcation parameter.
In an optional example, the parameter determining unit is configured to map the probability to the first value if the probability corresponding to the rate control parameter is greater than a preset probability threshold; if the probability corresponding to the code rate control parameter is not greater than the preset probability threshold value, mapping the probability into a second value; determining a candidate boundary parameter in a code rate control parameter range to obtain a first parameter sub-range on the left side of the candidate boundary parameter and a second parameter sub-range on the right side of the candidate boundary parameter, wherein the first parameter sub-range comprises the candidate boundary parameter; if the first value corresponding to the code rate control parameter in the first parameter sub-range meets the first quantity condition and the second value corresponding to the code rate control parameter in the second parameter sub-range meets the second quantity condition, determining the candidate boundary parameter as a probability boundary parameter; otherwise, the candidate boundary parameters are redetermined, and the probability boundary parameters are determined based on the new candidate boundary parameters.
In an optional example, the parameter determining unit is configured to determine a target priority scheme of the video to be encoded in a preset priority scheme, where the preset priority scheme includes a quality priority scheme and a code rate priority scheme; if the target priority scheme is a quality priority scheme, determining that a code rate control parameter which does not exceed the probability demarcation parameter and is an integer in the code rate control parameter range is the target code rate control parameter; if the target priority scheme is a code rate priority scheme, determining that a code rate control parameter which exceeds the probability demarcation parameter and is an integer in the code rate control parameter range is the target code rate control parameter.
In an optional example, the video encoder further includes a low-bitrate protection unit, configured to, before the first encoder encodes the video to be encoded based on the target bitrate control parameter, adjust the target bitrate control parameter if the target bitrate control parameter is greater than a preset low-bitrate protection parameter corresponding to the first encoder, and update the bitrate control parameter of the first encoder with the adjusted target bitrate control parameter, where a quality result of the encoded video of the first encoder meets a preset minimum quality protection requirement under the preset low-bitrate protection parameter; if the target code rate control parameter is not greater than the preset low code rate protection parameter, updating the code rate control parameter of the first encoder by the target code rate control parameter.
In an alternative example, the apparatus further comprises: the protection parameter determining unit is used for obtaining a sample video, and encoding the sample video by a first encoder through adopting each code rate control parameter in a code rate control parameter range to obtain a first sample encoded video; the sample video is encoded by adopting a second reference code rate control parameter through a third encoder to obtain a third sample encoded video, wherein the quality result of the third sample encoded video accords with a preset minimum quality protection requirement; and obtaining preset low code rate protection parameters of the first encoder in the code rate control parameter range based on the third sample coded video of the same sample video and the quality comparison of the first sample coded videos.
In an alternative example, the video to be encoded is a video slice of a target video to be encoded, the apparatus further comprising: the video slicing unit is used for extracting slicing information of the target video from a video file of the target video before acquiring the reference coding characteristics corresponding to the video to be coded, slicing the target video based on the slicing information, and taking each obtained video slicing as the video to be coded; or carrying out video scene recognition on the target video, determining a video scene corresponding to a video frame in the target video, dividing the video frame of the same video scene into video fragments, and taking each obtained video fragment as a video to be encoded; or analyzing the picture motion complexity of the target video, determining the picture motion complexity corresponding to the video frame in the target video, slicing the target video based on the picture motion complexity, and taking each obtained video slice as the video to be encoded.
By adopting the device of the embodiment, the low code rate points which are easy to generate the loss aversion effect of the first encoder can be predicted more accurately and rapidly based on the second encoder and the third encoder, the low code rate points are further protected, and the possibility of generating the loss aversion is reduced.
In the specific implementation, each module may be implemented as an independent entity, or may be combined arbitrarily, and implemented as the same entity or a plurality of entities, and the specific implementation and the corresponding beneficial effects of each module may be referred to the foregoing method embodiments, which are not described herein again.
The embodiment of the application also provides an electronic device, which may be a server or a terminal, as shown in fig. 6, and shows a schematic structural diagram of the electronic device according to the embodiment of the application, specifically:
The electronic device may include one or more processing cores 'processors 601, one or more computer-readable storage media's memory 602, power supply 603, and input unit 604, among other components. It will be appreciated by those skilled in the art that the electronic device structure shown in fig. 6 is not limiting of the electronic device and may include more or fewer components than shown, or may combine certain components, or a different arrangement of components. Wherein:
The processor 601 is a control center of the electronic device, connects various parts of the entire electronic device using various interfaces and lines, performs various functions of the electronic device and processes data by running or executing computer programs and/or modules stored in the memory 602, and invoking data stored in the memory 602. Optionally, the processor 601 may include one or more processing cores; preferably, the processor 601 may integrate an application processor and a modem processor, wherein the application processor primarily handles operating systems, user interfaces, applications, etc., and the modem processor primarily handles wireless communications. It will be appreciated that the modem processor described above may not be integrated into the processor 601.
The memory 602 may be used to store computer programs and modules, and the processor 601 may execute various functional applications and data processing by executing the computer programs and modules stored in the memory 602. The memory 602 may mainly include a stored program area and a stored data area, wherein the stored program area may store an operating system, a computer program (such as a sound playing function, an image playing function, etc.) required for at least one function, and the like; the storage data area may store data created according to the use of the electronic device, etc. In addition, the memory 602 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid-state storage device. Accordingly, the memory 602 may also include a memory controller to provide access to the memory 602 by the processor 601.
The electronic device further comprises a power supply 603 for supplying power to the various components, preferably the power supply 603 may be logically connected to the processor 601 by a power management system, so that functions of managing charging, discharging, power consumption management and the like are achieved by the power management system. The power supply 603 may also include one or more of any components, such as a direct current or alternating current power supply, a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator, and the like.
The electronic device may further comprise an input unit 604, which input unit 604 may be used for receiving input digital or character information and for generating keyboard, mouse, joystick, optical or trackball signal inputs in connection with user settings and function control.
Although not shown, the electronic device may further include a display unit or the like, which is not described herein. In particular, in this embodiment, the processor 601 in the electronic device loads executable files corresponding to the processes of one or more computer programs into the memory 602 according to the following instructions, and the processor 601 executes the computer programs stored in the memory 602, so as to implement various functions, such as:
Acquiring reference coding features corresponding to a video to be coded, wherein the reference coding features are obtained by coding the video to be coded through an auxiliary coder;
Determining a code rate control parameter range preset by a first encoder;
Inputting a code rate control parameter in a reference coding characteristic and code rate control parameter range into a quality result prediction model;
Predicting quality information of a video to be encoded under a code rate control parameter through a quality result prediction model, wherein the quality information is used for indicating the probability that a quality result of a first encoded video of the video to be encoded reaches a target quality result, the first encoded video is obtained through encoding by a first encoder, a training sample of the quality result prediction model comprises the code rate control parameter of a first sample encoded video of a sample video, and sample encoding characteristics of the sample video, the first sample encoded video is encoded by the first encoder, the sample encoding characteristics are obtained through encoding the sample video, and a label of the training sample is used for indicating whether the quality result of the first sample encoded video reaches the target quality result;
Determining target code rate control parameters of the video to be encoded based on quality information of the video to be encoded under each code rate control parameter in the code rate control parameter range;
The first encoder encodes video to be encoded based on the target rate control parameter.
The specific embodiments and the corresponding beneficial effects of the above operations can be referred to the above detailed description of the video encoding method, and will not be described herein.
It will be appreciated by those of ordinary skill in the art that all or part of the steps of the various methods of the above embodiments may be performed by a computer program, or by computer program control related hardware, which may be stored in a computer readable storage medium and loaded and executed by a processor.
To this end, an embodiment of the present application provides a computer readable storage medium having stored therein a computer program that can be loaded by a processor to perform the steps of any of the video encoding methods provided by the embodiments of the present application. For example, the computer program may perform the steps of:
Acquiring reference coding features corresponding to a video to be coded, wherein the reference coding features are obtained by coding the video to be coded through an auxiliary coder;
Determining a code rate control parameter range preset by a first encoder;
Inputting a code rate control parameter in a reference coding characteristic and code rate control parameter range into a quality result prediction model;
Predicting quality information of a video to be encoded under a code rate control parameter through a quality result prediction model, wherein the quality information is used for indicating the probability that a quality result of a first encoded video of the video to be encoded reaches a target quality result, the first encoded video is obtained through encoding by a first encoder, a training sample of the quality result prediction model comprises the code rate control parameter of a first sample encoded video of a sample video, and sample encoding characteristics of the sample video, the first sample encoded video is encoded by the first encoder, the sample encoding characteristics are obtained through encoding the sample video, and a label of the training sample is used for indicating whether the quality result of the first sample encoded video reaches the target quality result;
Determining target code rate control parameters of the video to be encoded based on quality information of the video to be encoded under each code rate control parameter in the code rate control parameter range;
The first encoder encodes video to be encoded based on the target rate control parameter.
The specific embodiments and the corresponding beneficial effects of each of the above operations can be found in the foregoing embodiments, and are not described herein again.
Wherein the computer-readable storage medium may comprise: read Only Memory (ROM), random access Memory (RAM, random Access Memory), magnetic or optical disk, and the like.
Since the computer program stored in the computer readable storage medium can execute the steps in any video encoding method provided by the embodiments of the present application, the beneficial effects that any video encoding method provided by the embodiments of the present application can be achieved, and detailed descriptions of the foregoing embodiments are omitted herein.
Wherein according to an aspect of the application, a computer program product or a computer program is provided, the computer program product or computer program comprising computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the video encoding method described above.
The foregoing has described in detail a video encoding method, apparatus, electronic device and computer storage medium according to embodiments of the present application, and specific examples have been applied to illustrate the principles and embodiments of the present application, where the foregoing examples are provided to assist in understanding the method and core idea of the present application; meanwhile, as those skilled in the art will have variations in the specific embodiments and application scope in light of the ideas of the present application, the present description should not be construed as limiting the present application.
Claims (15)
1. A video encoding method, comprising:
Acquiring reference coding features corresponding to a video to be coded, wherein the reference coding features are obtained by coding the video to be coded through an auxiliary coder;
Determining a code rate control parameter range preset by a first encoder;
Inputting the reference coding characteristic and a code rate control parameter in the code rate control parameter range into a quality result prediction model;
Predicting quality information of the video to be encoded under the code rate control parameter by the quality result prediction model, wherein the quality information is used for indicating the probability that the quality result of a first encoded video of the video to be encoded reaches a target quality result, the first encoded video is obtained by encoding by the first encoder, a training sample of the quality result prediction model comprises the code rate control parameter of a first sample encoded video of a sample video, and sample encoding characteristics of the sample video, the first sample encoded video is encoded by the first encoder, the sample encoding characteristics are obtained by encoding the sample video, and a label of the training sample is used for indicating whether the quality result of the first sample encoded video reaches the target quality result;
determining a target code rate control parameter of the video to be encoded based on the quality information of the video to be encoded under each code rate control parameter of the code rate control parameter range;
the first encoder encodes the video to be encoded based on the target rate control parameter.
2. The video coding method of claim 1, wherein the training process of the quality result prediction model comprises: comprising the following steps:
Obtaining a training sample of a quality result prediction model to be trained;
predicting the probability that the quality result of the first sample coded video under the code rate control parameter reaches a target quality result based on the training sample through the quality result prediction model;
calculating a base loss of the training sample based on the probability and a label of the training sample;
weighting the basic loss based on a preset loss aversion coefficient to obtain model loss under the loss aversion effect;
And optimizing the quality result prediction model based on the model loss until a model training ending condition is reached.
3. The video encoding method according to claim 2, further comprising:
Acquiring a sample video and acquiring sample coding characteristics of the sample video;
encoding the sample video based on each code rate control parameter by the first encoder to obtain a first sample encoded video, and determining a quality result of each first sample encoded video;
Obtaining a target quality result corresponding to the sample video;
constructing a plurality of training samples corresponding to each sample video based on the sample coding characteristics and the code rate control parameters of each sample video;
And setting labels for the training samples based on the target quality results and the quality results corresponding to the code rate control parameters in the training samples.
4. The video coding method of claim 3, wherein the obtaining sample coding features of the sample video comprises:
encoding the sample video through a second encoder to obtain a second sample encoded video;
and acquiring the corresponding coding characteristics of the second sample coding video under the second encoder as sample coding characteristics.
5. The method according to claim 4, wherein the obtaining the target quality result corresponding to the sample video comprises:
Encoding the sample video based on the first reference code rate control parameter by a third encoder to obtain a third sample encoded video;
And determining a quality result corresponding to the third sample coded video as a target quality result corresponding to the sample video, wherein the second encoder is different from the third encoder, and the extraction speed of the coding features of the second encoder is higher than that of the third encoder.
6. The method according to any one of claims 1-5, wherein the auxiliary encoder includes a second encoder, and wherein the obtaining the reference coding feature corresponding to the video to be encoded includes:
encoding the video to be encoded through a second encoder to obtain a second encoded video;
And acquiring the coding characteristics of the second coded video in the second coder as the reference coding characteristics corresponding to the video to be coded, wherein the second coder is different from the first coder.
7. The video coding method according to any one of claims 1-5, wherein the quality information is a probability, and the determining the target rate control parameter of the video to be coded based on the quality information of the video to be coded under each rate control parameter of the rate control parameter range includes:
Acquiring a preset probability threshold;
determining probability demarcation parameters in the range of the code rate control parameters based on the size relation between the probability corresponding to each code rate control parameter and the preset probability threshold, wherein the probability corresponding to the code rate control parameters at two sides of the probability demarcation parameters respectively satisfies the first number of the probabilities which are larger than the preset probability threshold and the second number of the probabilities which are not larger than the preset probability threshold;
and determining a target code rate control parameter based on the probability demarcation parameter.
8. The video coding method according to claim 7, wherein the determining the probability demarcation parameter in the range of the rate control parameters based on the magnitude relation between the probability corresponding to each rate control parameter and the preset probability threshold value includes:
if the probability corresponding to the code rate control parameter is larger than a preset probability threshold value, mapping the probability into a first value;
If the probability corresponding to the code rate control parameter is not greater than the preset probability threshold, mapping the probability into a second value;
Determining a candidate boundary parameter in the code rate control parameter range to obtain a first parameter sub-range on the left side of the candidate boundary parameter and a second parameter sub-range on the right side of the candidate boundary parameter, wherein the first parameter sub-range comprises the candidate boundary parameter;
If the first value corresponding to the code rate control parameter in the first parameter sub-range meets the first quantity condition and the second value corresponding to the code rate control parameter in the second parameter sub-range meets the second quantity condition, determining the candidate boundary parameter as a probability boundary parameter;
otherwise, the candidate boundary parameters are redetermined, and the probability boundary parameters are determined based on the new candidate boundary parameters.
9. The video coding method of claim 7, wherein the determining a target rate control parameter based on the probability demarcation parameter comprises:
Determining a target priority scheme of the video to be coded in a preset priority scheme, wherein the preset priority scheme comprises a quality priority scheme and a code rate priority scheme;
if the target priority scheme is a quality priority scheme, determining that a code rate control parameter which does not exceed the probability demarcation parameter and is an integer in the code rate control parameter range is a target code rate control parameter;
And if the target priority scheme is a code rate priority scheme, determining that a code rate control parameter which exceeds the probability demarcation parameter and is an integer in the code rate control parameter range is the target code rate control parameter.
10. The video coding method of claim 7, wherein the first encoder further comprises, prior to encoding the video to be encoded based on the target rate control parameter:
If the target code rate control parameter is larger than the preset low code rate protection parameter corresponding to the first encoder, adjusting the target code rate control parameter, and updating the code rate control parameter of the first encoder by the adjusted target code rate control parameter, wherein the quality result of the encoded video of the first encoder meets the preset minimum quality protection requirement under the preset low code rate protection parameter;
And if the target code rate control parameter is not greater than the preset low code rate protection parameter, updating the code rate control parameter of the first encoder by using the target code rate control parameter.
11. The video coding method of claim 10, further comprising:
acquiring a sample video, and encoding the sample video by a first encoder by adopting each code rate control parameter in the code rate control parameter range to obtain a first sample encoded video;
encoding the sample video by a third encoder by adopting a second reference code rate control parameter to obtain a third sample encoded video, wherein the quality result of the third sample encoded video accords with the preset minimum quality protection requirement;
And obtaining preset low-code rate protection parameters of the first encoder in the code rate control parameter range based on quality comparison of a third sample coded video of the same sample video and each first sample coded video.
12. The video encoding method according to any one of claims 1 to 5, wherein the video to be encoded is a video slice of a target video to be encoded, and before the obtaining the reference encoding feature corresponding to the video to be encoded, further comprises:
Extracting the slicing information of the target video from the video file of the target video, slicing the target video based on the slicing information, and taking each obtained video slicing as a video to be coded;
Or carrying out video scene recognition on the target video, determining a video scene corresponding to a video frame in the target video, dividing the video frame of the same video scene into video fragments, and taking each obtained video fragment as a video to be encoded;
Or analyzing the picture motion complexity of the target video, determining the picture motion complexity corresponding to the video frame in the target video, slicing the target video based on the picture motion complexity, and taking each obtained video slice as a video to be coded.
13. A video encoding apparatus, comprising:
The characteristic acquisition unit is used for acquiring reference coding characteristics corresponding to the video to be coded, wherein the reference coding characteristics are obtained by coding the video to be coded through an auxiliary coder;
The range determining unit is used for determining a code rate control parameter range preset by the first encoder;
The input unit is used for inputting the reference coding characteristic and a code rate control parameter in the code rate control parameter range into a quality result prediction model;
The prediction unit is used for predicting the quality information of the video to be encoded under the code rate control parameter through the quality result prediction model, wherein the quality information is used for indicating the probability that the quality result of a first encoded video of the video to be encoded reaches a target quality result, the first encoded video is obtained through encoding by the first encoder, a training sample of the quality result prediction model comprises the code rate control parameter of a first sample encoded video of a sample video, and sample encoding characteristics of the sample video, the first sample encoded video is encoded by the first encoder, the sample encoding characteristics are obtained through encoding the sample video, and a label of the training sample is used for indicating whether the quality result of the first sample encoded video reaches the target quality result;
the parameter determining unit is used for determining target code rate control parameters of the video to be encoded based on the quality information of the video to be encoded under each code rate control parameter of the code rate control parameter range;
And the coding control unit is used for coding the video to be coded based on the target code rate control parameter by the first coder.
14. An electronic device comprising a processor and a memory, the memory storing a computer program, the processor being configured to execute the computer program in the memory to perform the video encoding method of any one of claims 1 to 12.
15. A computer readable storage medium, characterized in that the computer readable storage medium stores a computer program adapted to be loaded by a processor for performing the video encoding method of any of claims 1 to 12.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410433628.4A CN118158414A (en) | 2024-04-11 | 2024-04-11 | Video encoding method, video encoding device, electronic equipment and computer storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410433628.4A CN118158414A (en) | 2024-04-11 | 2024-04-11 | Video encoding method, video encoding device, electronic equipment and computer storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118158414A true CN118158414A (en) | 2024-06-07 |
Family
ID=91296778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410433628.4A Pending CN118158414A (en) | 2024-04-11 | 2024-04-11 | Video encoding method, video encoding device, electronic equipment and computer storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118158414A (en) |
-
2024
- 2024-04-11 CN CN202410433628.4A patent/CN118158414A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102986211B (en) | Speed control in Video coding | |
US20150312575A1 (en) | Advanced video coding method, system, apparatus, and storage medium | |
US11743475B2 (en) | Advanced video coding method, system, apparatus, and storage medium | |
CN112383777B (en) | Video encoding method, video encoding device, electronic equipment and storage medium | |
US11341688B2 (en) | Guiding decoder-side optimization of neural network filter | |
EP3545677A1 (en) | Methods and apparatuses for encoding and decoding video based on perceptual metric classification | |
WO2021238546A1 (en) | Video encoding method, video playing back method, related devices and medium | |
CN107079159B (en) | Method and device for parallel video decoding based on multi-core system | |
KR20130103140A (en) | Preprocessing method before image compression, adaptive motion estimation for improvement of image compression rate, and image data providing method for each image service type | |
Wang et al. | Learning-based rate control for video-based point cloud compression | |
KR102520626B1 (en) | Method and apparatus for image encoding using artifact reduction filter, method and apparatus for image decoding using artifact reduction filter | |
CN117459733A (en) | Video encoding method, apparatus, device, readable storage medium, and program product | |
Nakhaei et al. | Scene-level two-pass video rate controller for H. 265/HEVC standard | |
CN118158414A (en) | Video encoding method, video encoding device, electronic equipment and computer storage medium | |
US20220245449A1 (en) | Method for training a single non-symmetric decoder for learning-based codecs | |
CN117616751A (en) | Video encoding and decoding of moving image group | |
US11736730B2 (en) | Systems, methods, and apparatuses for video processing | |
US20200036967A1 (en) | Motion vector selection and prediction in video coding systems and methods | |
CN116527928A (en) | Image encoding method and device, electronic device, storage medium, and program product | |
CN117956157A (en) | Video encoding method, video encoding device, electronic equipment and computer storage medium | |
WO2016193949A1 (en) | Advanced video coding method, system, apparatus and storage medium | |
CN117478881A (en) | Video information processing method, system, device and storage medium | |
CN117812268A (en) | Video transcoding method, device, equipment and medium | |
Liu | Learning for new generation video coders | |
CN117956158A (en) | Video processing method and related device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |