CN110708570A - Video coding rate determining method, device, equipment and storage medium - Google Patents

Video coding rate determining method, device, equipment and storage medium Download PDF

Info

Publication number
CN110708570A
CN110708570A CN201911001209.9A CN201911001209A CN110708570A CN 110708570 A CN110708570 A CN 110708570A CN 201911001209 A CN201911001209 A CN 201911001209A CN 110708570 A CN110708570 A CN 110708570A
Authority
CN
China
Prior art keywords
coded
frame
current frame
encoded
region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911001209.9A
Other languages
Chinese (zh)
Other versions
CN110708570B (en
Inventor
郑羽珊
张清
王诗涛
刘杉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201911001209.9A priority Critical patent/CN110708570B/en
Publication of CN110708570A publication Critical patent/CN110708570A/en
Application granted granted Critical
Publication of CN110708570B publication Critical patent/CN110708570B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The embodiment of the invention provides a method, a device and equipment for determining the coding code rate of a video and a storage medium. The method comprises the steps of determining the frame type of a current frame to be coded of a video to be coded, wherein the frame type is an interesting frame or a non-interesting frame; adjusting the pre-coding code rate of the current frame to be coded according to the frame type of the current frame to be coded to obtain the target coding code rate of the current frame to be coded; if the frame type is the frame of interest, the pre-coding rate of the current frame to be coded is increased, and if the frame type is the frame of non-interest, the pre-coding rate of the current frame to be coded is reduced. In the embodiment of the invention, when the video to be coded is coded, the human visual theory and the video coding can be combined for each frame to be coded, so that the subjective quality of the coded video can be improved under the condition of low coding rate, and the subjective quality of the video can be ensured and the coding rate can be saved under the condition of high coding rate.

Description

Video coding rate determining method, device, equipment and storage medium
Technical Field
The present invention relates to the field of image processing technologies, and in particular, to a method, an apparatus, a device, and a storage medium for determining a video encoding rate.
Background
The video needs to be encoded during the video transmission process. In the prior art, in the process of encoding a video, all frames of the video are generally grouped, and the same strategy is adopted for each frame in the group, so that the encoding code rate allocated to each frame is dynamically adjusted based on the number of the residual code rates in the current group and the complexity in the frame, and the encoding quality of the video is ensured on the premise of controlling the encoding rate to be a certain size.
However, this solution does not take into account the characteristics of human vision, and the attention of human eyes is different for each frame and each position in the frame, resulting in poor subjective quality of the encoded video under low bit rate.
Disclosure of Invention
The object of the present invention is to solve at least one of the above-mentioned technical drawbacks, in particular the technical drawback of a poor subjective quality of the encoded video.
In a first aspect, an embodiment of the present invention provides a method for determining an encoding rate of video encoding, where the method includes:
determining a frame type of a current frame to be coded of a video to be coded, wherein the frame type is an interesting frame or a non-interesting frame;
adjusting the pre-coding code rate of the current frame to be coded according to the frame type of the current frame to be coded to obtain the target coding code rate of the current frame to be coded;
if the frame type is the frame of interest, the pre-coding rate of the current frame to be coded is increased, and if the frame type is the frame of non-interest, the pre-coding rate of the current frame to be coded is reduced.
In an embodiment of the first aspect, after obtaining the target coding rate of the current frame to be coded, the method includes:
determining an interested region and a non-interested region in a current frame to be coded;
and according to the interested region and the non-interested region, distributing the target coding rate of the current frame to be coded to the interested region and the non-interested region to obtain the coding rate of each image region.
In an embodiment of the first aspect, the allocating, according to the region of interest and the region of no interest, a target coding rate of a current frame to be coded to the region of interest and the region of no interest includes:
determining the area proportion of the interested area and the non-interested area;
determining the target code rate distribution proportion of the interested region and the non-interested region according to the region area proportion;
and according to the target code rate distribution proportion, distributing the target code rate of the current frame to be coded to the image area of the corresponding area.
In an embodiment optional in the first aspect, determining the target code rate allocation ratio of the region of interest and the region of non-interest according to the region area ratio includes:
if the area proportion is not smaller than the first set threshold, the initial code rate distribution proportion of the interested region and the non-interested region is increased to obtain the target code rate distribution proportion;
and if the area proportion of the region is smaller than a second set threshold, reducing the initial code rate distribution proportion of the interested region and the non-interested region to obtain the target code rate distribution proportion, wherein the first set threshold is not smaller than the second set threshold.
In an embodiment of the first aspect, if the first set threshold is not equal to the second set threshold, when the area ratio is not smaller than the second set threshold and smaller than the first set threshold, the initial bitrate allocation proportion is used as the target bitrate allocation proportion.
In an embodiment of the first aspect, after obtaining the coding rate of each image region, the method further includes:
generating a block to be coded corresponding to each image area, wherein the initial coding rate of the block to be coded is the coding rate of the image area corresponding to the block to be coded;
adjusting the initial coding rate of each block to be coded according to the region type of the image region corresponding to each block to be coded to obtain the target coding rate of each block to be coded;
the type of the image area is an interested area or a non-interested area, if the area type of the image area corresponding to the block to be coded is the interested area, the coding rate of the block to be coded is increased, and if the area type of the image area corresponding to the block to be coded is the non-interested area, the coding rate of the block to be coded is reduced.
In an embodiment of the first aspect, if the current block to be encoded is a non-first block to be encoded, adjusting the initial encoding rate of each block to be encoded according to the type of the image region corresponding to each block to be encoded to obtain the target encoding rate of each block to be encoded, including:
and adjusting the coding rate of the current block to be coded according to the type of the image area corresponding to the current block to be coded, the target coding rate of the block coded in the preamble of the current block to be coded and the actual coding rate of the block coded in the preamble to obtain the target coding rate of the current block to be coded.
In an optional embodiment of the first aspect, determining a frame type of a current frame to be encoded of a video to be encoded includes:
when the current frame to be coded meets a first preset condition, determining the frame type of the current frame to be coded as an interesting frame;
wherein, satisfying the first preset condition includes satisfying at least one of:
the current frame to be coded is a reference frame in the video to be coded;
the time interval between the current frame to be coded and the last interesting frame is larger than the set time interval.
In an embodiment of the first aspect, before determining the frame type of the current frame to be encoded of the video to be encoded, the method further includes:
determining the scene type of a current frame to be coded;
and if the scene type is the specified type, skipping the coding of the current frame to be coded.
In an optional embodiment of the first aspect, if the scene type is a specific type, skipping encoding of the current frame to be encoded includes:
and if the scene type is the designated type and the current frame to be coded meets a second preset condition, skipping coding of the current frame to be coded.
In an optional embodiment of the first aspect, determining a scene type of a current frame to be encoded includes:
determining the encoding complexity of a current frame to be encoded;
and determining the scene type of the current frame to be coded according to the coding complexity.
In an embodiment of the first aspect, if the current frame to be encoded is not the first frame, the method adjusts the pre-coding rate of the current frame to be encoded according to the frame type of the current frame to be encoded to obtain the target coding rate of the current frame to be encoded, and further includes:
acquiring a residual coding rate corresponding to a last coded frame of a current frame to be coded;
adjusting the pre-coding code rate of the current frame to be coded according to the frame type and the residual coding code rate of the current frame to be coded to obtain the target coding code rate of the current frame to be coded;
the residual coding rate is determined according to the actual coding rate of the last coded frame and the target coding rate of the last coded frame.
In a second aspect, an embodiment of the present invention provides an apparatus for determining an encoding rate of video encoding, where the apparatus includes:
the frame type determining module is used for determining the frame type of a current frame to be coded of a video to be coded, wherein the frame type is an interested frame or a non-interested frame;
the target coding rate determining module is used for adjusting the pre-coding rate of the current frame to be coded according to the frame type of the current frame to be coded to obtain the target coding rate of the current frame to be coded;
if the frame type is the frame of interest, the pre-coding rate of the current frame to be coded is increased, and if the frame type is the frame of non-interest, the pre-coding rate of the current frame to be coded is reduced.
In an embodiment of the second aspect, the apparatus further includes a code rate processing module, specifically configured to:
after the target coding rate of the current frame to be coded is obtained, determining an interested region and a non-interested region in the current frame to be coded;
and according to the interested region and the non-interested region, distributing the target coding rate of the current frame to be coded to the interested region and the non-interested region to obtain the coding rate of each image region.
In an embodiment of the second aspect, in the optional embodiment of the second aspect, when the code rate processing module allocates the target coding rate of the current frame to be coded to the region of interest and the region of non-interest according to the region of interest and the region of non-interest, the code rate processing module is specifically configured to:
determining the area proportion of the interested area and the non-interested area;
determining the target code rate distribution proportion of the interested region and the non-interested region according to the region area proportion;
and according to the target code rate distribution proportion, distributing the target code rate of the current frame to be coded to the image area of the corresponding area.
In an embodiment of the second optional aspect, when determining the target code rate allocation proportion of the region of interest and the region of non-interest according to the region area proportion, the code rate processing module is specifically configured to:
if the area proportion is not smaller than the first set threshold, the initial code rate distribution proportion of the interested region and the non-interested region is increased to obtain the target code rate distribution proportion;
and if the area proportion of the region is smaller than a second set threshold, reducing the initial code rate distribution proportion of the interested region and the non-interested region to obtain the target code rate distribution proportion, wherein the first set threshold is not smaller than the second set threshold.
In an embodiment of the second aspect, if the first set threshold is not equal to the second set threshold, when the area ratio is not smaller than the second set threshold and smaller than the first set threshold, the initial bitrate allocation proportion is used as the target bitrate allocation proportion.
In an optional embodiment of the second aspect, the apparatus further includes an encoding module, specifically configured to:
after the coding rate of each image area is obtained, generating a block to be coded corresponding to each image area, wherein the initial coding rate of the block to be coded is the coding rate of the image area corresponding to the block to be coded;
adjusting the initial coding rate of each block to be coded according to the region type of the image region corresponding to each block to be coded to obtain the target coding rate of each block to be coded;
the type of the image area is an interested area or a non-interested area, if the area type of the image area corresponding to the block to be coded is the interested area, the coding rate of the block to be coded is increased, and if the area type of the image area corresponding to the block to be coded is the non-interested area, the coding rate of the block to be coded is reduced.
In an embodiment of the second aspect, if the current block to be encoded is a non-first block to be encoded, the encoding module adjusts the initial encoding rate of each block to be encoded according to the type of the image region corresponding to each block to be encoded, so as to obtain the target encoding rate of each block to be encoded, and is specifically configured to:
and adjusting the coding rate of the current block to be coded according to the type of the image area corresponding to the current block to be coded, the target coding rate of the block coded in the preamble of the current block to be coded and the actual coding rate of the block coded in the preamble to obtain the target coding rate of the current block to be coded.
In an embodiment of the second aspect, when determining the frame type of the current frame to be encoded of the video to be encoded, the frame type determining module is specifically configured to:
when the current frame to be coded meets a first preset condition, determining the frame type of the current frame to be coded as an interesting frame;
wherein, satisfying the first preset condition includes satisfying at least one of:
the current frame to be coded is a reference frame in the video to be coded;
the time interval between the current frame to be coded and the last interesting frame is larger than the set time interval.
In an optional embodiment of the second aspect, the encoding processing module is further configured to:
before determining the frame type of a current frame to be coded of a video to be coded, determining the scene type of the current frame to be coded;
and if the scene type is the specified type, skipping the coding of the current frame to be coded.
In an embodiment of the second aspect, if the scene type is a specific type, when skipping encoding of the current frame to be encoded, the encoding processing module is specifically configured to:
and if the scene type is the designated type and the current frame to be coded meets a second preset condition, skipping coding of the current frame to be coded.
In an embodiment of the second aspect, when determining the scene type of the current frame to be encoded, the encoding processing module is specifically configured to:
determining the encoding complexity of a current frame to be encoded;
and determining the scene type of the current frame to be coded according to the coding complexity.
In an embodiment of the second aspect, if the current frame to be encoded is not the first frame, the target coding rate determining module is specifically configured to, when adjusting the pre-coding rate of the current frame to be encoded according to the frame type of the current frame to be encoded to obtain the target coding rate of the current frame to be encoded:
acquiring a residual coding rate corresponding to a last coded frame of a current frame to be coded;
adjusting the pre-coding code rate of the current frame to be coded according to the frame type and the residual coding code rate of the current frame to be coded to obtain the target coding code rate of the current frame to be coded;
the residual coding rate is determined according to the actual coding rate of the last coded frame and the target coding rate of the last coded frame.
In a third aspect, an embodiment of the present invention provides an electronic device, which includes a processor and a memory, the memory being configured to store a computer program, which, when executed by the processor, causes the processor to perform any one of the methods of the first aspect.
In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium for storing a computer program, which, when run on a computer, enables the computer to perform any one of the methods in the first aspect.
The technical scheme provided by the embodiment of the invention has the following beneficial effects:
in the embodiment of the invention, when a video to be coded is coded, the pre-coding rate of each frame to be coded can be adjusted according to the frame type to which the frame to be coded belongs, if the frame type is an interested frame, the pre-coding rate is increased to obtain a corresponding target coding rate, and if the frame type is a non-interested frame, the pre-coding rate is reduced to obtain a corresponding target coding rate, namely, the human eye vision theory is combined with video coding, so that the subjective quality of the coded video can be improved under the condition of low coding rate, and the coding rate can be saved under the condition of high coding rate.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention will be briefly described below.
Fig. 1 is a schematic flowchart of a method for determining an encoding rate of video encoding according to an embodiment of the present invention;
fig. 2 is a flowchart illustrating a method for video encoding according to an embodiment of the present invention;
fig. 3 is a schematic diagram of a video transmission architecture according to an embodiment of the present invention;
FIG. 4a is a diagram of a group of frames to be encoded according to an embodiment of the present invention;
FIG. 4b is a diagram of another group of frames to be encoded according to an embodiment of the present invention;
fig. 4c is a schematic diagram of a frame to be encoded according to an embodiment of the present invention;
FIG. 4d is a diagram of another frame to be encoded according to an embodiment of the present invention;
fig. 4e is a schematic diagram of another frame to be encoded according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of an apparatus for determining an encoding rate of video encoding according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the drawings are illustrative only and should not be construed as limiting the invention.
As used herein, the singular forms "a", "an", "the" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element or intervening elements may also be present. Further, "connected" or "coupled" as used herein may include wirelessly connected or wirelessly coupled. As used herein, the term "and/or" includes all or any element and all combinations of one or more of the associated listed items.
The invention will be described and explained with reference to several terms:
acquiring a frame rate: the number of video frames captured per second in fps (frame per second);
the coding frame rate is as follows: the number of video frames coded per second, in fps (frame per second);
region of Interest (Region of Interest): a human eye region of interest;
RDCost (Rate-Distortion Cost): a method for measuring code rate and distortion in video coding;
spatial Information (SI): representing the space detail quantity of a frame of image, wherein the more complex the scene is in space, the higher the SI value is;
time Information (TI): representing the amount of temporal variation in video sequences, sequences with higher degrees of motion will typically have higher TI values.
The following describes the technical solution of the present invention and how to solve the above technical problems with specific examples. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present invention will be described below with reference to the accompanying drawings.
Fig. 1 is a schematic flowchart illustrating a method for determining an encoding rate of a video according to an embodiment of the present invention, where as shown in fig. 1, the method includes:
step S101, determining a frame type of a current frame to be coded of a video to be coded, wherein the frame type is an interesting frame or a non-interesting frame.
The video to be coded refers to a video which needs to be coded currently, and the frame to be coded currently refers to a frame which needs to be coded currently in the video to be coded. The interesting frames refer to frame images with high influence on the subjective quality of the video when the attention of human eyes meets a certain condition, and the non-interesting frames refer to frame images with low influence on the subjective quality of the video when the attention of human eyes does not meet the certain condition.
In practical application, when a current frame to be encoded in a video to be encoded is acquired, the frame type of the current frame to be encoded can be determined, that is, whether the current frame to be encoded is an interesting frame or a non-interesting frame is determined.
In an alternative embodiment of the present invention, determining a frame type of a current frame to be encoded of a video to be encoded includes:
when the current frame to be coded meets a first preset condition, determining the frame type of the current frame to be coded as an interesting frame;
wherein, satisfying the first preset condition includes satisfying at least one of:
the current frame to be coded is a reference frame in the video to be coded;
the time interval between the current frame to be coded and the last interesting frame is larger than the set time interval.
In practical application, if the current frame to be encoded meets the first preset condition, the frame type of the current frame to be encoded is the frame of interest, otherwise, the frame type of the current frame to be encoded is the frame of non-interest.
The first preset condition may be satisfied, for example, when the current frame to be encoded is a reference frame in the video to be encoded, the first preset condition may be satisfied. At this time, when it is determined whether the current frame to be encoded meets the first preset condition, it may be determined whether the current frame image to be encoded is a reference frame in the video to be encoded, if so, the frame type of the current frame to be encoded is an interesting frame, otherwise, the frame type of the current frame to be encoded is a non-interesting frame. The mode of determining whether the current frame to be encoded is a reference frame may be determined based on a reference frame identifier carried in the video to be encoded. In practical application, each video to be encoded may determine in advance which frames are reference frames, and use the reference frame identifiers for identifying the reference frames, so when determining whether the current frame to be encoded is a reference frame in the video to be encoded, the current frame to be encoded may be determined according to the reference frame identifiers.
In practical applications, the first preset condition may be satisfied when a time interval between a current frame to be encoded and a previous frame of interest is greater than a set time interval. That is to say, when determining whether the current frame to be encoded meets the first preset condition, the time interval between the current frame to be encoded and the previous frame of interest may be determined, and then it is determined whether the time interval is greater than a set time interval (which may be represented by T), if the determined time interval is greater than T, the frame type of the current frame to be encoded is the frame of interest, otherwise, the frame type of the current frame to be encoded is the frame not of interest. The specific time of the time interval may be configured in advance, and the embodiment of the present invention is not limited herein.
In addition, the first preset condition may be satisfied by satisfying any one of the two conditions described above, that is, satisfying that the current frame to be encoded is a reference frame in the video to be encoded, or satisfying that the time interval between the current frame to be encoded and the last frame of interest is greater than a set time interval, that is, satisfying the first preset condition. At this time, when it is determined whether the current frame to be encoded meets the first preset condition, for example, whether the current frame to be encoded is a reference frame in the video to be encoded may be first determined, if yes, the frame type of the current frame to be encoded is the frame of interest, if not, it may be continuously determined whether the time interval between the current frame to be encoded and the previous frame of interest is greater than the set time interval, if so, the frame type of the current frame to be encoded is the frame of interest, and if not, the frame type of the current frame to be encoded is the frame of non-interest. It can be understood that, in the above description, when determining whether the current frame to be encoded meets the first preset condition, determining whether the current frame to be encoded is the reference frame first, and then determining whether the time interval between the current frame to be encoded and the previous frame of interest is greater than the set time interval is only an example.
Step S102, according to the frame type of the current frame to be coded, the pre-coding code rate of the current frame to be coded is adjusted to obtain the target coding code rate of the current frame to be coded;
if the frame type is the frame of interest, the pre-coding rate of the current frame to be coded is increased, and if the frame type is the frame of non-interest, the pre-coding rate of the current frame to be coded is reduced.
The pre-coding rate of the current frame to be coded refers to a pre-configured coding rate adopted when the current frame to be coded is coded. The target coding rate of the current frame to be coded refers to a coding rate adopted when the current frame to be coded is coded. In practical application, after the frame type of the current frame to be encoded is determined, the pre-encoding code rate of the current frame to be encoded can be adjusted according to the frame type of the current frame to be encoded, so as to obtain the target encoding code rate of the current frame to be encoded. An optional way to adjust the pre-coding code rate of the current frame to be coded according to the frame type of the current frame to be coded is as follows: if the frame type of the current frame to be coded is determined to be the frame of interest, the pre-coding code rate of the current frame to be coded can be increased, and if the frame type of the current frame to be coded is determined to be the frame of non-interest, the pre-coding code rate of the current frame to be coded can be reduced.
In practical application, when the pre-coding code rate of the current frame to be coded is adjusted, the adjusted mode may be configured in advance, and the embodiment of the present invention is not limited. If the adjusted step value can be set, when the pre-coding code rate needs to be adjusted, the corresponding step value is increased or decreased on the basis of the pre-coding code rate. The step value when increasing the precoding rate may be the same as or different from the step value when decreasing the precoding rate. In practical applications, the adjustment may also be performed by setting different step values according to the important program of the current frame to be encoded, for example, the step value adjusted by the key frame may be larger than the step value adjusted by the non-key frame.
In an example, it is assumed that a precoding code rate of a frame to be currently encoded is 100kbps (kilobit per second), wherein, for convenience of description, a unit of the rate is omitted when describing a specific value of the coding code rate. The adjustment is made by increasing or decreasing the set step value 10 on the basis of the precoding code rate. Correspondingly, if the frame type of the current frame to be coded is determined to be the frame of interest, 10 is added on the basis of the pre-coding code rate of 100, and the target coding code rate of the current frame to be coded is 110; if the frame type of the current frame to be coded is determined to be a non-interesting frame, 10 is reduced on the basis of the pre-coding code rate 100, and at the moment, the target coding code rate of the current frame to be coded is 90.
In the embodiment of the invention, when a video to be coded is coded, the pre-coding rate of each frame to be coded can be adjusted according to the frame type to which the frame to be coded belongs, if the frame type is an interested frame, the pre-coding rate is increased to obtain a corresponding target coding rate, and if the frame type is not interested, the pre-coding rate is reduced to obtain a corresponding target coding rate, namely, the human eye vision theory is combined with video coding, so that the subjective quality of the coded video is improved under the condition of low coding rate, and the subjective quality of the video can be ensured and the coding rate can be saved under the condition of high coding rate.
In an optional embodiment of the present invention, after obtaining the target coding rate of the current frame to be coded, the method includes:
determining an interested region and a non-interested region in a current frame to be coded;
and according to the interested region and the non-interested region, distributing the target coding rate of the current frame to be coded to the interested region and the non-interested region to obtain the coding rate of each image region.
In this practical application, a current frame to be encoded may include image regions, each image region corresponds to a region type, and the region type corresponding to the image region may include an interested region and a non-interested region, where the interested region refers to a region concerned by human eyes, and the non-interested region is a region not concerned by human eyes.
In practical application, an interested region and a non-interested region in a current frame to be encoded can be determined, and a target encoding rate of the current frame to be encoded is allocated to the interested region and the non-interested region, so as to obtain an encoding rate corresponding to each region type.
Further, the image region corresponding to the region of interest in the current frame to be encoded and the image region corresponding to the non-region of interest in the current frame to be encoded may be counted, and then the encoding code rate of each image region included in each region type may be determined according to the encoding code rate corresponding to each region type. The method for determining the coding rate of each image region included in each region type may be configured in advance, and the embodiment of the present invention is not limited thereto, for example, the coding rate corresponding to each region type may be evenly distributed according to the number of image regions included in each region type.
In an optional embodiment of the present invention, the allocating, according to the region of interest and the region of no interest, a target coding rate of a current frame to be coded to the region of interest and the region of no interest includes:
determining the area proportion of the interested area and the non-interested area;
determining the target code rate distribution proportion of the interested region and the non-interested region according to the region area proportion;
and according to the target code rate distribution proportion, distributing the target code rate of the current frame to be coded to the image area of the corresponding area.
In practical application, after determining an interested region and a non-interested region in a current frame to be encoded, the area ratio of the interested region to the non-interested region in the current frame to be encoded can be counted, and then the target code rate allocation proportion corresponding to the interested region and the non-interested region in the current frame to be encoded is determined based on the determined area ratio, that is, the proportion of the code rate required by all image regions corresponding to the interested region to the target code rate of the current frame to be encoded is determined, and the proportion of the code rate required by all image regions corresponding to the non-interested region to the target code rate of the current frame to be encoded is determined. Wherein, when each of the image regions is a region of equal area, the region area ratio may be a ratio of the number of image regions corresponding to the region of interest to the number of image regions corresponding to the region of no interest.
Correspondingly, after the target code rate allocation proportion is determined, the target code rate of the current frame to be coded can be allocated to the interested region and the non-interested region according to the target code rate allocation proportion, and then the code rate of each image region included in each region type can be determined according to the code rate allocated to each region type.
In an example, it is assumed that a current frame to be encoded includes 10 image regions with equal areas, where the region types of 7 image regions are regions of interest, the region types of 3 image regions are regions of no interest, and a target encoding rate of the current frame to be encoded is 100. At this time, the area ratio of the region of interest to the region of non-interest is 7:3, then according to the area ratio, the target code rate allocation ratio of the region of interest to the region of non-interest can be determined to be 7:3, at this time, the allocated coding rate of all the image areas corresponding to the region of interest is 70, the allocated coding rate of all the image areas corresponding to the region of non-interest is 30, and then according to the target coding rate allocated to each region type, the coding rate of each image area included in each region type is determined, for example, the coding rate of 7 image areas corresponding to the region of interest is 10 each.
In an optional embodiment of the present invention, determining a target code rate allocation ratio of an interested region and a non-interested region according to a region area ratio includes:
if the area proportion is not smaller than the first set threshold, the initial code rate distribution proportion of the interested region and the non-interested region is increased to obtain the target code rate distribution proportion;
and if the area proportion of the region is smaller than a second set threshold, reducing the initial code rate distribution proportion of the interested region and the non-interested region to obtain the target code rate distribution proportion, wherein the first set threshold is not smaller than the second set threshold.
The first set threshold and the second set threshold may be set to the same value or to different values, and the embodiment of the present invention is not limited thereto, where when the first set threshold and the second set threshold are set to the same value, only one set threshold exists at this time; the initial code rate allocation ratio refers to a pre-configured code rate allocation ratio between an interested area and a non-interested area, and a specific manner for determining the initial code rate allocation ratio may be pre-configured, which is not limited in the embodiment of the present invention.
In practical application, after the area ratio of the region of interest and the region of non-interest is determined, the initial code rate allocation ratio may be adjusted according to the relationship between the area ratio of the region and the preset threshold. As an optional implementation manner, when the area ratio of the region is not less than the first set threshold, increasing the initial code rate allocation ratio of the region of interest and the region of non-interest, that is, increasing the coding code rate of the region of interest, and decreasing the coding code rate of the region of non-interest; and when the area proportion of the region is smaller than a second set threshold, reducing the initial code rate distribution proportion of the interested region and the non-interested region, namely reducing the coding code rate of the interested region and increasing the coding code rate of the non-interested region.
When the initial code rate allocation proportion is adjusted, the adjusted mode may be configured in advance, and the embodiment of the present invention is not limited. If the adjusted step size value can be set, when the initial code rate allocation proportion needs to be adjusted, the corresponding step size value is increased or decreased on the basis of the initial code rate allocation proportion. The step value when the initial code rate allocation proportion is adjusted up and the step value when the initial code rate allocation proportion is reduced can be the same or different.
In an example, assuming that the initial code rate allocation ratio of the region of interest and the region of no interest is 9:1, the first set threshold and the second set threshold are set to be the same value (i.e. there is only one set threshold), the set threshold is set to be 10:1, and the region area ratio of the region of interest and the region of no interest in the current frame to be encoded is 13: 1. At this time, the area ratio of the region of interest to the region of non-interest is greater than the set threshold, the initial code rate allocation ratio of the region of interest to the region of non-interest may be increased, and if the initial code rate allocation ratio is adjusted to 11:1, the target code rate allocation ratio is 11:1 at this time.
In an optional embodiment of the present invention, if the first set threshold is not equal to the second set threshold, when the area ratio is not smaller than the second set threshold and smaller than the first set threshold, the initial bitrate allocation proportion is used as the target bitrate allocation proportion.
In practical application, when the first set threshold and the second set threshold are set to different values, if the determined area ratio is not smaller than the second set threshold and smaller than the first set threshold (that is, the area ratio is between the first set threshold and the second set threshold), the initial code rate allocation ratio may not be adjusted, and the initial code rate allocation ratio is directly used as the target code rate allocation ratio.
In the embodiment of the invention, when the coding rate in the current frame to be coded is distributed, the distribution proportion of the coding rate in the current frame to be coded can be further adjusted according to the area proportion of the region of interest to the region of non-interest of the current frame to be coded, so that the subjective quality of the whole frame of image can be further ensured, and the user experience can be further optimized.
In the embodiment of the present invention, after obtaining the coding rate of each image region, the method further includes:
generating a block to be coded corresponding to each image area, wherein the initial coding rate of the block to be coded is the coding rate of the image area corresponding to the block to be coded;
adjusting the initial coding rate of each block to be coded according to the type of the image area corresponding to each block to be coded to obtain the target coding rate of each block to be coded;
the type of the image area is an interested area or a non-interested area, if the area type of the image area corresponding to the block to be coded is the interested area, the coding rate of the block to be coded is increased, and if the area type of the image area corresponding to the block to be coded is the non-interested area, the coding rate of the block to be coded is reduced.
When each image in each region in the current frame to be encoded is encoded, a block to be encoded corresponding to each image region is generated, generally, one image region may correspond to one block to be encoded, the encoding code rate of the block to be encoded at this time is the encoding code rate of the corresponding image region, and the target encoding code rate of the block to be encoded refers to the encoding code rate required when the block to be encoded is encoded. In practical application, when each block to be encoded is encoded, the region type of the image region corresponding to the block to be encoded can be determined, then the encoding code rate of the block to be encoded is adjusted according to the determined region type, the target encoding code rate of the block to be encoded is obtained, and the block to be encoded is encoded according to the determined target encoding code rate.
According to the region type of the image region corresponding to the block to be encoded, an optional adjustment manner for adjusting the encoding code rate of the block to be encoded may be: if the region type of the image region corresponding to the block to be encoded is the region of interest, the encoding code rate of the block to be encoded is increased, if the region type of the image region corresponding to the block to be encoded is the region of non-interest, the encoding code rate of the block to be encoded is reduced, and when the encoding code rate of the block to be encoded is adjusted, the adjusted mode can be configured in advance, and the embodiment of the invention is not limited. If the adjusted step value can be set, when the coding rate of the block to be coded needs to be adjusted, the corresponding step value is increased or decreased on the basis of the coding rate of the block to be coded. The step value when the coding rate of the block to be coded is increased and the step value when the coding rate of the block to be coded is reduced can be the same or different.
In one example, assuming that the coding rate of the block to be encoded is 100, the adjustment is made by increasing or decreasing the set step value by 10 on the basis of the coding rate of the block to be encoded. Correspondingly, if the region type of the image region corresponding to the block to be coded is determined to be the region of interest, 10 is added on the basis of the coding rate of 100, and at the moment, the target coding rate of the block to be coded is 110; if the region type of the image region corresponding to the block to be coded is determined to be a non-interesting region, the coding rate is reduced by 10 on the basis of 100, and the target coding rate of the block to be coded is 90.
In the embodiment of the invention, when the coding rate is allocated to the block to be coded in the current frame to be coded, the allocated coding rate can be adjusted according to whether the current block to be coded corresponds to the region of interest, so that the subjective quality of the video can be further ensured, and the user experience can be optimized.
In this embodiment of the present invention, if the current block to be encoded is a non-first block to be encoded, adjusting the initial encoding rate of each block to be encoded according to the type of the image region corresponding to each block to be encoded to obtain the target encoding rate of each block to be encoded, including:
and adjusting the coding rate of the current block to be coded according to the type of the image area corresponding to the current block to be coded, the target coding rate of the block coded in the preamble of the current block to be coded and the actual coding rate of the block coded in the preamble to obtain the target coding rate of the current block to be coded.
The actual coding rate refers to a coding rate actually required in the coding process.
In practical application, if the current block to be coded is the first block to be coded, when the coding rate of the current block to be coded is adjusted, the adjustment can be performed only according to the corresponding region type, so as to obtain the target coding rate of the current block to be coded. However, in practical applications, sometimes the required actual coding may not be equal to the allocated target coding rate during the coding process, and in order to ensure the balance of the coding rate of the entire frame, for a block that is not the first block to be coded, before coding the block, the coding rate may be adjusted according to the type of the corresponding image region, the target coding rate of the block coded in the preamble, and the actual coding rate of the block coded in the preamble, so as to obtain the target coding rate of the coded block. For example, when the actual coding rate of the block coded in the preamble is greater than the target coding rate, if the coding rate needs to be increased according to the region type corresponding to the block to be coded currently, the step value can be adaptively reduced to ensure the coding rate balance of the whole frame; if the actual coding rate of the block coded in the preamble is smaller than the target coding rate and the coding rate needs to be reduced is determined according to the region type corresponding to the block to be coded currently, the step value can be increased adaptively, wherein the reduced and increased amplitude can be determined or preconfigured according to the actual environment of the current coding when the step value is reduced and increased adaptively, and the embodiment of the invention is not limited.
In an example, it is assumed that a current frame to be encoded includes 3 blocks to be encoded, a target encoding rate of the current frame to be encoded is 150, an encoding rate of each block to be encoded is 50, and an adjusted step value is 5. When the first block to be coded is coded, because the first block to be coded corresponds to the region of interest, the coding rate of the first block to be coded can be increased to 55, and the corresponding residual coding rate of the first block to be coded should be 95, while in the actual coding, the actual coding rate of the first block to be coded is 60, that is, more than the allocated target coding rate, and the actual residual coding rate corresponding to the first block to be coded is 90; further, when a second block to be encoded is encoded, since the second block to be encoded corresponds to the roi, the encoding rate of the second block to be encoded should be decreased to 45, since the actual encoding rate of the first block to be encoded is greater than the target allocation rate, at this time, in order to ensure the balance of the encoding rate of the whole frame, the decreased step value may be appropriately increased, for example, the encoding rate of the second block to be encoded is adjusted to 40 (target encoding rate), at this time, the remaining encoding rate of the second block to be encoded should be 50, in the actual encoding, the actual encoding rate of the second block to be encoded is 30, which is less than the allocated target encoding rate, and at this time, the actual remaining encoding rate of the second block to be encoded is 60; further, when a third block to be encoded is encoded, because the third block to be encoded corresponds to the region of interest, and the corresponding actual residual encoding rate of the second block to be encoded is greater than the residual encoding rate of the second block to be encoded, the step value of the adjustment may be increased, for example, the encoding rate of the third block to be encoded is adjusted to 60 (that is, the target encoding rate of the third block to be encoded is 60), and the third block to be encoded is encoded based on the target encoding rate of the third block to be encoded.
In addition, in practical application, when the initial coding rate of the block to be coded is adjusted, different adjustment modes can be configured based on different frame types, so that the coding rate of an interested region and a non-interested region in a frame can be better balanced. For example, the adjustment amplitude corresponding to the frame of interest may be set relatively larger, and the adjustment amplitude corresponding to the frame of non-interest may be set relatively smaller. For example, when the initial coding rate of the block to be coded is adjusted based on the step value, the step value corresponding to the frame of interest is set to 7, and the step value corresponding to the frame not of interest is set to 4, at this time, if the frame type of the frame corresponding to the block to be coded is the frame of interest, the initial coding rate of the block to be coded is adjusted based on the step value 7, and if the frame type of the frame corresponding to the block to be coded is the frame not of interest, the initial coding rate of the block to be coded is adjusted based on the step value 4.
It should be understood that this adjustment manner is only an example, and in practical applications, a specific increase or decrease manner may be configured according to actual requirements, which is not limited in the embodiment of the present invention.
In this embodiment of the present invention, before determining the frame type of the current frame to be encoded of the video to be encoded, the method further includes:
determining the scene type of a current frame to be coded;
and if the scene type is the specified type, skipping the coding of the current frame to be coded.
In the embodiment of the present invention, the scene types may include a still scene, a continuous still, a large motion, a medium motion, a small motion, a motion-to-still, a still-to-motion, and the like. The static scene means that the current frame to be coded and the adjacent frame are almost unchanged, and the current frame, the current frame to be coded and the adjacent frame are static scenes, and at this moment, the scene type of the current frame to be coded can be defined as continuous static; the motion estimation method includes the steps that large motion, medium motion and small motion refer to scene types corresponding to the situation that changes between a current frame to be coded and an adjacent frame are different in degree, for example, if the changes between the current frame to be coded and the adjacent frame are large, the defined scene type can be large motion, if the changes between the current frame to be coded and the adjacent frame are large, the defined scene type can be medium motion, and if the changes between the current frame to be coded and the adjacent frame are small, the defined scene type can be small motion; the motion to stationary refers to a scene type of the preamble frame being a motion type (including large motion, medium motion, and small motion), the scene type of the current frame to be encoded is a stationary scene, and the scene type of the current frame to be encoded is motion to stationary, otherwise, the current frame to be encoded is stationary motion.
The specified type may be a continuously static scene type, that is, only when the scene type of the current frame to be encoded is the continuously static scene type, the encoding of the current frame to be encoded may be skipped, that is, the current frame to be encoded is not encoded. This is because the current frame to be encoded is very similar to the adjacent frame, and if the current frame is not encoded, the playing of the video is not affected, and the encoding rate can be saved.
In the embodiment of the present invention, if the scene type is the specified type, skipping coding of the current frame to be coded includes:
and if the scene type is the designated type and the current frame to be coded meets a second preset condition, skipping coding of the current frame to be coded.
In practical application, if the scene type of the current frame to be encoded is the designated type and meets the second preset condition, the current frame to be encoded is not encoded. The second preset condition may be configured in advance, and the embodiment of the present invention is not limited. For example, the second predetermined condition may be that if the current frame to be encoded is not encoded, the encoding amount of the current frame to be encoded is not lower than a predetermined encoding amount of the current frame.
In the embodiment of the present invention, determining the scene type of the current frame to be encoded includes:
determining the encoding complexity of a current frame to be encoded;
and determining the scene type of the current frame to be coded according to the coding complexity.
In practical applications, the encoding complexity of the current frame to be encoded may be determined. The encoding complexity may include the complexity of the image itself, the temporal complexity, the spatial complexity, and the like. When determining the encoding complexity of the current frame to be encoded, the current frame to be encoded may be input to the complexity calculating module for calculation, where the calculating method for calculating the encoding complexity is not limited in the embodiments of the present invention, and may be, for example, predicting an optimal RDCost (Rate-distortion loss) between an intra frame and an inter frame during encoding, or calculating Spatial Information (SI, Spatial Information) and Temporal Information (TI, Temporal Information) of a frame.
Accordingly, after the encoding complexity of the current frame to be encoded is determined, the scene type of the current frame to be encoded can be determined based on the encoding complexity. For example, a corresponding encoding complexity range may be set for each scene type, and the scene type corresponding to the encoding complexity range in which the encoding complexity of the current frame to be encoded is located is the scene type of the current frame to be encoded.
In the embodiment of the present invention, if the current frame to be encoded is not the first frame, the precoding code rate of the current frame to be encoded is adjusted according to the frame type of the current frame to be encoded, so as to obtain the target coding code rate of the current frame to be encoded, further including:
acquiring a residual coding rate corresponding to a last coded frame of a current frame to be coded;
adjusting the pre-coding code rate of the current frame to be coded according to the frame type and the residual coding code rate of the current frame to be coded to obtain the target coding code rate of the current frame to be coded;
the residual coding rate is determined according to the actual coding rate of the last coded frame and the target coding rate of the last coded frame.
In practical application, after the target coding rate of the current frame to be coded is obtained, the current frame to be coded can be coded based on the target coding rate. In practical application, the actual coding rate of the current frame to be coded may not be consistent with the target coding rate of the current frame to be coded, so that if the current frame to be coded is not the first frame, when the target coding rate of the current frame to be coded is determined, the residual coding rate corresponding to the last coded frame of the current frame to be coded can be obtained, and the pre-coding rate of the current frame to be coded is adjusted according to the frame type of the current frame to be coded and the residual coding rate corresponding to the last coded frame, so as to obtain the target coding rate of the current frame to be coded. That is to say, in the embodiment of the present invention, the coding rate of the frame to be coded can be dynamically adjusted, so that the coding rate balance between the frame images of the video to be coded can be ensured.
The residual coding rate corresponding to the last coded frame is determined according to the actual coding rate of the last coded frame and the target coding rate of the last coded frame. For example, the target coding rate of the previous coded frame is 50, the remaining coding rate of the current frame to be coded is 80, but since the actual coding rate of the previous coded frame is 60, the remaining coding rate of the previous coded frame is 70 actually.
The frame to be coded is divided into a plurality of blocks to be coded for coding, so that when the residual coding rate corresponding to the previous coded frame is determined, the residual coding rate is determined according to the actual coding rate of each block to be coded included in the previous coded frame and the target coding rate of each block to be coded included in the previous coded frame.
In addition, in the present practical application, after the current frame to be encoded is encoded, the encoding parameters such as the residual encoding rate corresponding to the current frame to be encoded and the quantization parameter of the current frame to be encoded may be returned to the encoder, so that the encoder determines the pre-encoding rate of the next frame based on the returned encoding parameters of the current frame to be encoded.
The test result shows that the coding rate determining method based on the interesting frame or the interesting region can effectively improve the coding quality, particularly, under the condition of poor network condition, namely low video coding rate, the definition and the fluency of pictures watched by a user can be effectively improved, the subjective quality of the video can be obviously improved, and under the condition of good network condition, namely high code stream, the coding rate can be saved on the premise of ensuring the subjective quality of the video.
It can be understood that the scheme provided by the embodiment of the invention is suitable for any application scene needing video transmission, such as video call, video conference, video live broadcast, video release and the like, and based on the scheme, the video watching perception of a video receiving end can be effectively improved.
In order to better illustrate the beneficial effects of the scheme provided by the embodiment of the present invention, the inventor of the present invention has performed a comparison test on the video transmission effect of a video conference based on the existing video encoding method and the scheme provided by the embodiment of the present invention, taking an application scene of the video conference as an example, and found through the test that, when the encoding code rate of each frame in a video determined by using the method provided by the embodiment of the present invention is used for performing video encoding processing, the subjective quality of a video picture received by a receiving end is significantly improved compared with the subjective quality of a video picture received by using the existing method. Specifically, when the same picture containing the face of the user in the same video is coded and transmitted based on the coding rate scheme provided by the embodiment of the invention and the coding rate determination scheme in the prior art, the picture received by the receiving end can effectively improve the definition of the face under the condition of low rate, and the coding rate can be effectively saved under the condition of high rate on the premise of ensuring the definition of the face in the received picture.
As shown in fig. 2, in order to better understand the method provided by the embodiment of the present invention, the following describes the method provided by the embodiment of the present invention in detail with reference to the scene of the video conference.
In practical application, a video generated at a video conference sending end is a video to be encoded, the video is divided into a plurality of video frame groups, each video frame group is allocated with a certain encoding rate, each frame image in the group is allocated with a certain encoding rate, the encoding rate allocated to each frame image at the moment is the pre-encoding rate of each frame image, and further, the video to be encoded can be encoded. In this example, the set frame rate is 1 frame per acquisition, and the encoding frame rate is 1 frame per encoding, where the specific flow is shown in fig. 2:
step S201, an encoding module collects a frame to be encoded in a video to be encoded;
step S202, inputting the collected frame to be coded into a complexity calculating module, and determining the coding complexity of the frame to be coded;
step S203, inputting the obtained coding complexity information of the frame to be coded into a scene detection module, and detecting the scene type of the frame to be coded;
step S204, determining whether the frame to be encoded needs to be encoded (i.e. determining whether the frame to be encoded meets the frame skipping condition), if so, executing step S205, otherwise, returning to execute step S201;
step S205, inputting the frame to be encoded into an interested region detection module, detecting the interested region and the non-interested region of the frame to be encoded, and generating an interested region division map of the frame to be encoded;
step S206, sending the frame to be coded and the region of interest division diagram corresponding to the frame to be coded into a coder;
step S207, the encoder encodes a frame to be encoded, takes the first frame to be encoded as a current frame to be encoded, and judges whether the current frame to be encoded belongs to a frame of interest, if so, step S208 is executed, otherwise, step S209 is executed;
s208, improving the pre-coding code rate of the current frame to be coded;
s209, reducing the pre-coding code rate of the current frame to be coded;
s210, determining the area proportion of an interested area and a non-interested area in a current frame to be coded;
s211, judging the relation between the area ratio of the region and a set threshold, if the area ratio of the region is not less than the set threshold, executing the step S212, otherwise executing the step S213;
step S212, the initial code rate distribution proportion of the interested region and the non-interested region is increased, and step S214 is executed;
step S213, reducing the initial code rate distribution proportion of the interested region and the non-interested region, and executing step S214;
step S214, generating a block to be coded corresponding to each image area;
step S215, coding the first block to be coded, determining the region type corresponding to the current block to be coded, if the region type corresponds to the region of interest, executing step S216, otherwise executing step S217;
step S216, increasing the initial coding rate of the current block to be coded to obtain the target coding rate of the current block to be coded, and executing step S218;
step S217, reducing the initial coding rate of the current block to be coded to obtain the target coding rate of the current block to be coded, and executing step S218;
step S218, based on the target coding rate of the current block to be coded, coding the current block to be coded, and determining corresponding coding parameters (including the residual coding rate, quantization parameters and the like corresponding to the current block to be coded) to feed back to the coder;
step S219, the encoder determines whether the block is the last block to be encoded, if so, step S221 is executed, otherwise step S220 is executed;
step S220, the encoder determines the target coding rate of the next block to be encoded according to the fed back coding parameters, the initial coding rate of the next block to be encoded and the region type corresponding to the next block to be encoded, and executes step S218
Step S221, outputting the code stream of the frame to be coded;
step S222, determining that the coding parameters (including the residual coding rate, the quantization parameters, etc. of the current frame to be coded) of the current frame to be coded are fed back to the coder, and continuing to execute step S201.
In order to further describe the application of the method for determining the coding rate of the video provided by the embodiment of the present invention in more detail, the following describes a video transmission method based on the method provided by the embodiment of the present invention with reference to a specific video transmission system architecture.
Fig. 3 is a schematic diagram of an architecture of a video transmission system to which an embodiment of the present invention is applicable, and as shown in fig. 3, the system architecture 30 may mainly include a video sending terminal 301, a server 302, and a video receiving terminal 303. The system architecture 30 may be applied to any application scenario that requires video transmission, and it can be understood that 301 and 302 in the system architecture 30 may be a video sending end or a video receiving end, and for convenience of description, 301 is taken as a video sending end, and 302 is taken as a video receiving end for example.
The video transmission method based on the system architecture 30 mainly includes the following processes: the video sending terminal 301 encodes a video to be transmitted to obtain an encoded video, and sends the encoded video to the server 302; the server 302 sends the encoded video to the video receiving terminal 303 after receiving the encoded video; correspondingly, the video receiving terminal 303 receives the encoded video, decodes the encoded video to obtain a decoded video, and provides the decoded video to the user.
In practical applications, the video sending end 301 may perform video encoding transmission by using a video frame group as a unit, and assume that a current video frame group to be transmitted includes 25 frames, specifically as shown in fig. 4a by frames 1, … … and 25, a pre-encoding code rate of each frame is 50kbps, wherein for convenience of description, a unit of the rate is omitted when describing a specific value of the encoding code rate.
Further, the video sender 301 needs to encode each video frame in the video frame group before transmitting the video frame group. When encoding each video frame, the preferred method can determine the encoding code rate of each video frame based on the scheme provided by the present invention, and the specific process is as follows:
(1) the video sending end 301 may determine a frame type of each video frame based on the first preset condition, and then adjust the pre-coding code rate of each video frame based on the determined frame type of each video frame, to obtain the target coding code rate of each video frame.
When the frame type of each video frame is determined based on the first preset condition, if the video frame is a reference frame in a video to be coded or the time interval between the video frame and the last interesting frame is greater than a set time interval, the frame type of the video frame is the interesting frame at the moment.
In a specific implementation, the video sending end 301 may determine whether each video frame book is a reference frame in the video, if the video frame is a reference frame, the frame type of the video frame is an interested frame, if the video frame is not a reference frame, it may further determine whether a time interval of a previous interested frame of the video frame is greater than a set time interval, and if not, the frame type of the video frame is a non-interested frame; furthermore, the pre-coding rate of the video frames belonging to the frame of interest can be increased, and the pre-coding rate of the video frames belonging to the frame of non-interest can be reduced, so that the target coding rate of each video frame can be obtained. Accordingly, the video sending terminal 301 may determine an initial rate allocation ratio of the region of interest to the non-region of interest in each frame to be encoded based on the target encoding rate of each frame to be encoded.
In an example, taking the video frame group shown in fig. 4a as an example for explanation, it is assumed that the video sending end 301 determines that frame 1, frame 5, frame 15, frame 20, and frame 25 in the video frame group belong to reference frames in the video, and other frames are non-reference frames. At this time, it may be determined that the frame types of frame 1, frame 5, frame 15, frame 20, and frame 25 are frames of interest, and the frame types of the other frames are frames of non-interest. Further, the pre-coding code rates of the frame 1, the frame 5, the frame 15, the frame 20 and the frame 25 belonging to the frame of interest can be all increased, and the pre-coding code rates of other frames to be coded belonging to the frames not of interest can be all decreased, so as to obtain the target coding code rate of each frame to be coded. For example, as shown in fig. 4b, the pre-coding code rates of the frames 1, 5, 10, 15, 20, and 25 are all increased to about 60, and the pre-coding code rates of the other frames to be coded are all decreased to about 43, where the target code rates of the frames 1, 5, 10, 15, 20, and 25 are 60 and the target code rates of the other frames are 43.
(2) The video sending terminal 301 may determine the area ratio of the region of interest to the region of non-interest in each frame to be coded, and adjust the initial code rate allocation proportion of the region of interest and the region of non-interest in each frame to be coded based on the relationship between the area ratio and the preset threshold, so as to obtain the target code rate allocation proportion of the region of interest and the region of non-interest in each frame to be coded.
In specific implementation, if the determined area proportion is not less than the set threshold, the initial code rate allocation proportion of the interested region and the non-interested region can be increased to obtain the target code rate allocation proportion; if the determined area proportion is smaller than the set threshold, the initial code rate distribution proportion of the interested area and the non-interested area can be reduced, and the target code rate distribution proportion is obtained. Accordingly, the video sending terminal 301 may allocate the target coding rate based on the target coding rate allocation proportion, so as to obtain the coding rate of the interested region and the coding rate of the non-interested region.
For example, taking the frame 15 in fig. 4b as an example for explanation, assuming that the region of interest and the region of no interest in the frame 15 are as shown in fig. 4c, the initial coding rate of the region of interest and the region of no interest in the frame 15 is 9:1, the target coding rate of the frame 15 is 60, and at this time, the coding rate of the region of interest is 54, the initial coding rate of each image region in the region of interest may be 10.8, the coding rate of the region of no interest is 6, and the initial coding rate of each image region in the region of no interest may be 1.5. Further, the video sending terminal 301 determines that the area ratio of the region of interest to the region of non-interest in the frame 15 is 5:4 and is greater than the preset threshold value 7:6, then the initial coding rate may be adjusted to 11:1, where the coding rate of the region of interest is 55, the initial coding rate of each image region in the region of interest may be 11, the coding rate of the region of non-interest is 5, and the initial coding rate of each image region in the region of non-interest may be 1.25, and at this time, the region of interest and the region of non-interest in the adjusted frame 15 are as shown in fig. 4 d.
(3) The video sending terminal 301 generates blocks to be coded corresponding to each image region, and adjusts the initial coding rate of each block to be coded according to the region type of the image region corresponding to each block to be coded, so as to obtain the target coding rate of each block to be coded. The initial coding rate of the block to be coded is the coding rate of the image area corresponding to the block to be coded.
In the specific implementation, if the region type of the image region corresponding to the block to be coded is the region of interest, the coding rate of the block to be coded is increased, and if the region type of the image region corresponding to the block to be coded is the region of non-interest, the coding rate of the block to be coded is reduced, so that the target coding rate of the block to be coded is obtained, and the block to be coded is coded and transmitted based on the target coding rate.
For example, the frame 15 shown in fig. 4d includes 10 image regions in total, and the frame 15 may generate 10 blocks to be encoded. Accordingly, the video transmission terminal 301 encodes 10 blocks to be encoded included in the frame 15 one by one to complete encoding of the frame 15. As shown in fig. 4e, when the first block to be encoded in the frame 15 is encoded, because the type of the image region corresponding to the first block to be encoded is the non-interesting region, at this time, the initial encoding rate of the 1 st block to be encoded may be reduced to 1.0, and the 1 st block to be encoded is encoded based on the encoding rate of 1.0; correspondingly, when the 2 nd block to be encoded in the frame 15 is encoded, because the type of the image region corresponding to the 2 nd block to be encoded is the region of interest, at this time, the initial encoding rate of the 2 nd block to be encoded may be increased to 12, the 2 nd block to be encoded is encoded based on the encoding rate 12, the 3 rd block to be encoded to the 10 th block to be encoded in the frame 15 are encoded based on the same manner, and then the frame 15 is encoded, so as to obtain the encoded frame 15.
Further, the video transmission terminal 301 transmits the encoded frame 15 to the server 302; the server 302, upon receiving the encoded frame 15, transmits the encoded frame to the video receiving terminal 303; the video receiving terminal 303 receives the encoded frame 15, decodes the encoded frame to obtain a decoded frame 15, and provides the decoded frame 15 to the user.
It can be understood that, in this example, the region of interest in each frame to be encoded is a region that is focused by human eyes, that is, a region that is focused by a user and has a high influence on the subjective quality of a video, and the region of no interest is a region that is not focused by human eyes, that is, a region that is focused by a user and has a low influence on the subjective quality of a video. If the frame to be encoded is a face image, the face region in the face image is an interested region, and the non-face region (e.g., a background region in the face image) is an uninteresting region.
An embodiment of the present invention provides a device for determining a video coding rate, and as shown in fig. 5, the device 70 for determining a video coding rate may include: a frame type determination module 701 and a target coding rate determination module 702, wherein,
a frame type determining module 701, configured to determine a frame type of a current frame to be encoded of a video to be encoded, where the frame type is an interesting frame or a non-interesting frame;
a target coding rate determining module 702, configured to adjust a pre-coding rate of a current frame to be coded according to a frame type of the current frame to be coded, to obtain a target coding rate of the current frame to be coded;
if the frame type is the frame of interest, the pre-coding rate of the current frame to be coded is increased, and if the frame type is the frame of non-interest, the pre-coding rate of the current frame to be coded is reduced.
In an optional embodiment of the present invention, the apparatus further includes a code rate processing module, specifically configured to:
after the target coding rate of the current frame to be coded is obtained, determining an interested region and a non-interested region in the current frame to be coded;
and according to the interested region and the non-interested region, distributing the target coding rate of the current frame to be coded to the interested region and the non-interested region to obtain the coding rate of each image region.
In an optional embodiment of the present invention, when the code rate processing module allocates the target coding rate of the current frame to be coded to the region of interest and the region of non-interest according to the region of interest and the region of non-interest, the code rate processing module is specifically configured to:
determining the area proportion of the interested area and the non-interested area;
determining the target code rate distribution proportion of the interested region and the non-interested region according to the region area proportion;
and according to the target code rate distribution proportion, distributing the target code rate of the current frame to be coded to the image area of the corresponding area.
In an optional embodiment of the present invention, when determining the target code rate allocation ratio of the region of interest and the region of non-interest according to the region area ratio, the code rate processing module is specifically configured to:
if the area proportion is not smaller than the first set threshold, the initial code rate distribution proportion of the interested region and the non-interested region is increased to obtain the target code rate distribution proportion;
and if the area proportion of the region is smaller than a second set threshold, reducing the initial code rate distribution proportion of the interested region and the non-interested region to obtain the target code rate distribution proportion, wherein the first set threshold is not smaller than the second set threshold.
In an optional embodiment of the present invention, if the first set threshold is not equal to the second set threshold, when the area ratio is not smaller than the second set threshold and smaller than the first set threshold, the initial bitrate allocation proportion is used as the target bitrate allocation proportion.
In an optional embodiment of the present invention, the apparatus further includes an encoding module, specifically configured to:
after the coding rate of each image area is obtained, generating a block to be coded corresponding to each image area, wherein the initial coding rate of the block to be coded is the coding rate of the image area corresponding to the block to be coded;
adjusting the initial coding rate of each block to be coded according to the region type of the image region corresponding to each block to be coded to obtain the target coding rate of each block to be coded;
the type of the image area is an interested area or a non-interested area, if the area type of the image area corresponding to the block to be coded is the interested area, the coding rate of the block to be coded is increased, and if the area type of the image area corresponding to the block to be coded is the non-interested area, the coding rate of the block to be coded is reduced.
In an alternative embodiment of the present invention, if the current block to be encoded is a non-first block to be encoded, the encoding module adjusts the initial encoding rate of each block to be encoded according to the type of the image region corresponding to each block to be encoded, so as to obtain the target encoding rate of each block to be encoded, and is specifically configured to:
and adjusting the coding rate of the current block to be coded according to the type of the image area corresponding to the current block to be coded, the target coding rate of the block coded in the preamble of the current block to be coded and the actual coding rate of the block coded in the preamble to obtain the target coding rate of the current block to be coded.
In an optional embodiment of the present invention, when determining the frame type of the current frame to be encoded of the video to be encoded, the frame type determining module is specifically configured to:
when the current frame to be coded meets a first preset condition, determining the frame type of the current frame to be coded as an interesting frame;
wherein, satisfying the first preset condition includes satisfying at least one of:
the current frame to be coded is a reference frame in the video to be coded;
the time interval between the current frame to be coded and the last interesting frame is larger than the set time interval.
In an optional embodiment of the present invention, the encoding processing module is further configured to:
before determining the frame type of a current frame to be coded of a video to be coded, determining the scene type of the current frame to be coded;
and if the scene type is the specified type, skipping the coding of the current frame to be coded.
In an optional embodiment of the present invention, if the scene type is a specific type, the encoding processing module is specifically configured to, when skipping encoding of the current frame to be encoded:
and if the scene type is the designated type and the current frame to be coded meets a second preset condition, skipping coding of the current frame to be coded.
In an optional embodiment of the present invention, when determining the scene type of the current frame to be encoded, the encoding processing module is specifically configured to:
determining the encoding complexity of a current frame to be encoded;
and determining the scene type of the current frame to be coded according to the coding complexity.
In an optional embodiment of the present invention, if the current frame to be encoded is not the first frame, the target coding rate determination module is specifically configured to, when adjusting the pre-coding rate of the current frame to be encoded according to the frame type of the current frame to be encoded to obtain the target coding rate of the current frame to be encoded:
acquiring a residual coding rate corresponding to a last coded frame of a current frame to be coded;
adjusting the pre-coding code rate of the current frame to be coded according to the frame type and the residual coding code rate of the current frame to be coded to obtain the target coding code rate of the current frame to be coded;
the residual coding rate is determined according to the actual coding rate of the last coded frame and the target coding rate of the last coded frame.
The video coding rate determining apparatus of the embodiment of the present invention may execute the video coding rate determining method provided by the embodiment of the present invention, and the implementation principles are similar, and are not described herein again.
An embodiment of the present invention provides an electronic device, as shown in fig. 6, an electronic device 2000 shown in fig. 6 includes: a processor 2001 and a memory 2003. Wherein the processor 2001 is coupled to a memory 2003, such as via a bus 2002. Optionally, the electronic device 2000 may also include a transceiver 2004. It should be noted that the transceiver 2004 is not limited to one in practical applications, and the structure of the electronic device 2000 is not limited to the embodiment of the present invention.
The processor 2001 is applied to the embodiment of the present invention, and is configured to implement the functions of the modules shown in fig. 5.
The processor 2001 may be a CPU, general purpose processor, DSP, ASIC, FPGA or other programmable logic device, transistor logic device, hardware component, or any combination thereof. Which may implement or perform the various illustrative logical blocks, modules, and circuits described in connection with the disclosure. The processor 2001 may also be a combination of computing functions, e.g., comprising one or more microprocessors, DSPs and microprocessors, and the like.
Bus 2002 may include a path that conveys information between the aforementioned components. The bus 2002 may be a PCI bus or an EISA bus, etc. The bus 2002 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown in FIG. 6, but this is not intended to represent only one bus or type of bus.
The memory 2003 may be, but is not limited to, ROM or other types of static storage devices that can store static information and computer programs, RAM or other types of dynamic storage devices that can store information and computer programs, EEPROM, CD-ROM or other optical disk storage, optical disk storage (including compact disk, laser disk, optical disk, digital versatile disk, blu-ray disk, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store a desired computer program or in the form of a data structure and that can be accessed by a computer.
The memory 2003 is used to store computer programs for executing applications of the inventive arrangements and is controlled in execution by the processor 2001. The processor 2001 is used to execute a computer program of an application program stored in the memory 2003 to implement the actions of the apparatus for determining an encoding rate of a video provided in the embodiment of fig. 5.
An embodiment of the present invention provides an electronic device, where the electronic device includes a processor and a memory, and the memory is configured to store a machine computer program, and when the computer program is executed by the processor, the processor is caused to execute a video encoding rate determination method.
An embodiment of the present invention provides a computer-readable storage medium, which stores a computer program, and when the computer program runs on a computer, the computer is enabled to execute a method for determining an encoding rate of a video.
The term and the implementation principle related to a computer-readable storage medium in the present invention may refer to a method for determining a video coding rate in the embodiment of the present invention, and are not described herein again.
It should be understood that, although the steps in the flowcharts of the figures are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and may be performed in other orders unless explicitly stated herein. Moreover, at least a portion of the steps in the flow chart of the figure may include multiple sub-steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, which are not necessarily performed in sequence, but may be performed alternately or alternately with other steps or at least a portion of the sub-steps or stages of other steps.
The foregoing is only a partial embodiment of the present invention, and it should be noted that, for those skilled in the art, various modifications and decorations can be made without departing from the principle of the present invention, and these modifications and decorations should also be regarded as the protection scope of the present invention.

Claims (15)

1. A method for determining a coding rate of a video, comprising:
determining a frame type of a current frame to be coded of a video to be coded, wherein the frame type is an interesting frame or a non-interesting frame;
adjusting the pre-coding code rate of the current frame to be coded according to the frame type of the current frame to be coded to obtain the target coding code rate of the current frame to be coded;
if the frame type is the frame of interest, the pre-coding rate of the current frame to be coded is increased, and if the frame type is the frame of non-interest, the pre-coding rate of the current frame to be coded is reduced.
2. The method of claim 1, wherein after obtaining the target coding rate of the current frame to be encoded, the method comprises:
determining an interested region and a non-interested region in the current frame to be coded;
and according to the interested region and the non-interested region, distributing the target coding rate of the current frame to be coded to the interested region and the non-interested region to obtain the coding rate of each image region.
3. The method according to claim 2, wherein the allocating, according to the regions of interest and the regions of no interest, the target coding rate of the current frame to be coded to the regions of interest and the regions of no interest comprises:
determining the area ratio of the interested area and the non-interested area;
determining the target code rate distribution proportion of the interested region and the non-interested region according to the region area proportion;
and distributing the target code rate of the current frame to be coded to the image area of the corresponding area according to the target code rate distribution proportion.
4. The method according to claim 3, wherein the determining the target code rate allocation ratio of the region of interest and the region of non-interest according to the region area ratio comprises:
if the area proportion is not smaller than a first set threshold, increasing the initial code rate distribution proportion of the interested area and the non-interested area to obtain the target code rate distribution proportion;
and if the area proportion of the region is smaller than a second set threshold, reducing the initial code rate distribution proportion of the region of interest and the region of non-interest to obtain the target code rate distribution proportion, wherein the first set threshold is not smaller than the second set threshold.
5. The method of claim 4, wherein if the first threshold is not equal to the second threshold, the initial bitrate allocation ratio is used as the target bitrate allocation ratio when the region area ratio is not less than the second threshold and less than the first threshold.
6. The method of claim 2, wherein after obtaining the coding rate of each image region, the method further comprises:
generating a block to be coded corresponding to each image area, wherein the initial coding rate of the block to be coded is the coding rate of the image area corresponding to the block to be coded;
adjusting the initial coding rate of each block to be coded according to the region type of the image region corresponding to each block to be coded to obtain the target coding rate of each block to be coded;
the type of the image area is an interested area or a non-interested area, if the area type of the image area corresponding to the block to be coded is the interested area, the coding rate of the block to be coded is increased, and if the area type of the image area corresponding to the block to be coded is the non-interested area, the coding rate of the block to be coded is reduced.
7. The method of claim 6, wherein if the current block to be encoded is a non-first block to be encoded, the adjusting the initial encoding rate of each block to be encoded according to the type of the image region corresponding to each block to be encoded to obtain the target encoding rate of each block to be encoded comprises:
and adjusting the coding rate of the current block to be coded according to the type of the image area corresponding to the current block to be coded, the target coding rate of the block coded in the preamble of the current block to be coded and the actual coding rate of the block coded in the preamble to obtain the target coding rate of the current block to be coded.
8. The method of claim 1, wherein determining the frame type of the current frame to be encoded of the video to be encoded comprises:
when the current frame to be coded meets a first preset condition, determining the frame type of the current frame to be coded as an interesting frame;
wherein the meeting of the first preset condition comprises meeting at least one of:
the current frame to be coded is a reference frame in the video to be coded;
and the time interval between the current frame to be coded and the last interesting frame is larger than the set time interval.
9. The method of claim 1, wherein prior to determining the frame type of the current frame to be encoded of the video to be encoded, further comprising:
determining the scene type of the current frame to be coded;
and if the scene type is the designated type, skipping the coding of the current frame to be coded.
10. The method of claim 9, wherein skipping encoding of the current frame to be encoded if the scene type is a specified type comprises:
and if the scene type is a designated type and the current frame to be coded meets a second preset condition, skipping coding of the current frame to be coded.
11. The method of claim 8, wherein the determining the scene type of the current frame to be encoded comprises:
determining the coding complexity of the current frame to be coded;
and determining the scene type of the current frame to be coded according to the coding complexity.
12. The method of claim 1, wherein if the current frame to be encoded is not the first frame, the pre-coding rate of the current frame to be encoded is adjusted according to the frame type of the current frame to be encoded, so as to obtain the target coding rate of the current frame to be encoded, further comprising:
acquiring a residual coding rate corresponding to a last coded frame of a current frame to be coded;
adjusting the pre-coding code rate of the current frame to be coded according to the frame type of the current frame to be coded and the residual coding code rate to obtain the target coding code rate of the current frame to be coded;
the residual coding rate is determined according to the actual coding rate of the last coded frame and the target coding rate of the last coded frame.
13. An apparatus for determining an encoding rate for video encoding, comprising:
the video coding device comprises a frame type determining module, a frame type determining module and a video coding module, wherein the frame type determining module is used for determining the frame type of a current frame to be coded of a video to be coded, and the frame type is an interested frame or a non-interested frame;
a target coding rate determining module, configured to adjust a pre-coding rate of the current frame to be coded according to the frame type of the current frame to be coded, to obtain a target coding rate of the current frame to be coded;
if the frame type is the frame of interest, the pre-coding rate of the current frame to be coded is increased, and if the frame type is the frame of non-interest, the pre-coding rate of the current frame to be coded is reduced.
14. An electronic device, comprising a processor and a memory;
the memory configured to store a computer program that, when executed by the processor, causes the processor to perform the method of any of claims 1-12.
15. A computer-readable storage medium, for storing a computer program which, when run on a computer, causes the computer to perform the method of any of claims 1-12.
CN201911001209.9A 2019-10-21 2019-10-21 Video coding rate determining method, device, equipment and storage medium Active CN110708570B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911001209.9A CN110708570B (en) 2019-10-21 2019-10-21 Video coding rate determining method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911001209.9A CN110708570B (en) 2019-10-21 2019-10-21 Video coding rate determining method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN110708570A true CN110708570A (en) 2020-01-17
CN110708570B CN110708570B (en) 2022-05-17

Family

ID=69200744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911001209.9A Active CN110708570B (en) 2019-10-21 2019-10-21 Video coding rate determining method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110708570B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111479113A (en) * 2020-04-15 2020-07-31 腾讯科技(深圳)有限公司 Code rate control method and device, storage medium and electronic equipment
CN111918066A (en) * 2020-09-08 2020-11-10 北京字节跳动网络技术有限公司 Video encoding method, device, equipment and storage medium
CN113660491A (en) * 2021-08-10 2021-11-16 杭州网易智企科技有限公司 Encoding method, encoding device, storage medium, and electronic apparatus
CN114051139A (en) * 2021-11-09 2022-02-15 京东科技信息技术有限公司 Video encoding method and apparatus

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1898965A (en) * 2003-12-25 2007-01-17 日本电气株式会社 Moving image encoding method and apparatus
CN101309422A (en) * 2008-06-23 2008-11-19 北京工业大学 Macroblock level quantized parameter process method and apparatus
US20090147841A1 (en) * 2007-12-11 2009-06-11 Electronics And Telecommunications Research Institute Distributed video coding apparatus and method capable of controlling encoding rate
CN101494785A (en) * 2008-12-19 2009-07-29 无锡亿普得科技有限公司 Method for encoding H.264 interesting region
CN101534432A (en) * 2009-04-09 2009-09-16 上海广电(集团)有限公司中央研究院 Method for controlling code rate based on human eye sensing model
US20100166075A1 (en) * 2008-12-30 2010-07-01 Samsung Electronics Co., Ltd. Method and apparatus for coding video image
CN101827267A (en) * 2010-04-20 2010-09-08 上海大学 Code rate control method based on video image segmentation technology
CN103024387A (en) * 2012-12-17 2013-04-03 宁波大学 Multi-view video bit rate control method based on sensing
CN103338375A (en) * 2013-06-27 2013-10-02 公安部第一研究所 Dynamic code rate allocation method based on video data importance in wideband clustered system
US20140146658A1 (en) * 2012-11-23 2014-05-29 Institute For Information Industry Method for transferring data stream
CN105898303A (en) * 2015-12-24 2016-08-24 乐视云计算有限公司 Bit rate control method and device
CN106358040A (en) * 2016-08-30 2017-01-25 上海交通大学 Rate control bit allocation method based on saliency
CN106604031A (en) * 2016-11-22 2017-04-26 金华就约我吧网络科技有限公司 Region of interest-based H. 265 video quality improvement method
CN109561310A (en) * 2017-09-26 2019-04-02 腾讯科技(深圳)有限公司 Video coding processing method, device, equipment and storage medium
CN110022463A (en) * 2019-04-11 2019-07-16 重庆紫光华山智安科技有限公司 Video interested region intelligent coding method and system are realized under dynamic scene
CN110267037A (en) * 2019-06-21 2019-09-20 腾讯科技(深圳)有限公司 Method for video coding, device, electronic equipment and computer readable storage medium

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1898965A (en) * 2003-12-25 2007-01-17 日本电气株式会社 Moving image encoding method and apparatus
US20090147841A1 (en) * 2007-12-11 2009-06-11 Electronics And Telecommunications Research Institute Distributed video coding apparatus and method capable of controlling encoding rate
CN101309422A (en) * 2008-06-23 2008-11-19 北京工业大学 Macroblock level quantized parameter process method and apparatus
CN101494785A (en) * 2008-12-19 2009-07-29 无锡亿普得科技有限公司 Method for encoding H.264 interesting region
US20100166075A1 (en) * 2008-12-30 2010-07-01 Samsung Electronics Co., Ltd. Method and apparatus for coding video image
CN101534432A (en) * 2009-04-09 2009-09-16 上海广电(集团)有限公司中央研究院 Method for controlling code rate based on human eye sensing model
CN101827267A (en) * 2010-04-20 2010-09-08 上海大学 Code rate control method based on video image segmentation technology
US20140146658A1 (en) * 2012-11-23 2014-05-29 Institute For Information Industry Method for transferring data stream
CN103024387A (en) * 2012-12-17 2013-04-03 宁波大学 Multi-view video bit rate control method based on sensing
CN103338375A (en) * 2013-06-27 2013-10-02 公安部第一研究所 Dynamic code rate allocation method based on video data importance in wideband clustered system
CN105898303A (en) * 2015-12-24 2016-08-24 乐视云计算有限公司 Bit rate control method and device
CN106358040A (en) * 2016-08-30 2017-01-25 上海交通大学 Rate control bit allocation method based on saliency
CN106604031A (en) * 2016-11-22 2017-04-26 金华就约我吧网络科技有限公司 Region of interest-based H. 265 video quality improvement method
CN109561310A (en) * 2017-09-26 2019-04-02 腾讯科技(深圳)有限公司 Video coding processing method, device, equipment and storage medium
CN110022463A (en) * 2019-04-11 2019-07-16 重庆紫光华山智安科技有限公司 Video interested region intelligent coding method and system are realized under dynamic scene
CN110267037A (en) * 2019-06-21 2019-09-20 腾讯科技(深圳)有限公司 Method for video coding, device, electronic equipment and computer readable storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
STEPHEN_DU: "h264编解码器知识点", 《CHINAUNIX》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111479113A (en) * 2020-04-15 2020-07-31 腾讯科技(深圳)有限公司 Code rate control method and device, storage medium and electronic equipment
CN111479113B (en) * 2020-04-15 2021-04-09 腾讯科技(深圳)有限公司 Code rate control method and device, storage medium and electronic equipment
CN111918066A (en) * 2020-09-08 2020-11-10 北京字节跳动网络技术有限公司 Video encoding method, device, equipment and storage medium
CN111918066B (en) * 2020-09-08 2022-03-15 北京字节跳动网络技术有限公司 Video encoding method, device, equipment and storage medium
CN113660491A (en) * 2021-08-10 2021-11-16 杭州网易智企科技有限公司 Encoding method, encoding device, storage medium, and electronic apparatus
CN113660491B (en) * 2021-08-10 2024-05-07 杭州网易智企科技有限公司 Encoding method, encoding device, storage medium, and electronic apparatus
CN114051139A (en) * 2021-11-09 2022-02-15 京东科技信息技术有限公司 Video encoding method and apparatus
CN114051139B (en) * 2021-11-09 2024-02-02 京东科技信息技术有限公司 Video coding method and device

Also Published As

Publication number Publication date
CN110708570B (en) 2022-05-17

Similar Documents

Publication Publication Date Title
CN110708570B (en) Video coding rate determining method, device, equipment and storage medium
TWI814755B (en) Video encoder and video decoder
US8351513B2 (en) Intelligent video signal encoding utilizing regions of interest information
US20140321561A1 (en) System and method for depth based adaptive streaming of video information
US10701359B2 (en) Real-time content-adaptive perceptual quantizer for high dynamic range images
US20220116626A1 (en) Adaptive bit rate ratio control
CN108810545B (en) Method, apparatus, computer readable medium and electronic device for video encoding
US20200236359A1 (en) Apparatus and method for image coding with boundary partition processing
US20200059665A1 (en) Bit depth variable for high precision data in weighted prediction syntax and semantics
US11431993B2 (en) Method and apparatus for processing encoded data, computer device, and storage medium
KR20120013437A (en) Methods and apparatus for improved quantization rounding offset adjustment for video encoding and decoding
CN111182300B (en) Method, device and equipment for determining coding parameters and storage medium
US20180048890A1 (en) Method and device for encoding and decoding video signal by using improved prediction filter
US20100014578A1 (en) Systems and methods for highly efficient video compression using selective retention of relevant visual detail
JP2012034352A (en) Stereo moving image encoding apparatus and stereo moving image encoding method
US10432946B2 (en) De-juddering techniques for coded video
US20150271523A1 (en) Multiview video signal encoding method and decoding method, and device therefor
US8731282B1 (en) Systems and methods for region of interest background smoothing and compression enhancement
CN112437301A (en) Code rate control method and device for visual analysis, storage medium and terminal
Dou et al. View synthesis optimization based on texture smoothness for 3D-HEVC
US9467691B2 (en) Video system for displaying image data, method and computer program
KR101656160B1 (en) Encoding and decoding using perceptual representations
KR102601705B1 (en) Method of piecewise linear scaling of geometry atlas and apparatus using the same
CN117998088A (en) Method, apparatus, device and storage medium for video quality assessment
CN117676148A (en) Video recoding method, device, computer readable storage medium and terminal equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40013117

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant