CN111263243B - Video coding method and device, computer readable medium and electronic equipment - Google Patents
Video coding method and device, computer readable medium and electronic equipment Download PDFInfo
- Publication number
- CN111263243B CN111263243B CN202010096197.9A CN202010096197A CN111263243B CN 111263243 B CN111263243 B CN 111263243B CN 202010096197 A CN202010096197 A CN 202010096197A CN 111263243 B CN111263243 B CN 111263243B
- Authority
- CN
- China
- Prior art keywords
- video
- resolution
- target
- coded
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000011218 segmentation Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 abstract description 6
- 238000012545 processing Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000000835 fiber Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013210 evaluation model Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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
- H04N21/234363—Processing 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 by altering the spatial resolution, e.g. for clients with a lower screen resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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
- H04N21/234381—Processing 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 by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44016—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440263—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440281—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/475—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
- H04N21/4756—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for rating content, e.g. scoring a recommended movie
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Human Computer Interaction (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The present disclosure provides a video encoding method, a video encoding apparatus, a computer readable medium, and an electronic device; relates to the technical field of signal processing. The video encoding method includes: segmenting a video to be coded to obtain a plurality of video segments; determining target resolution ratios respectively corresponding to the video segments according to transcoding requirements; coding each video clip according to the target resolution corresponding to each video clip to obtain a coded video corresponding to each video clip; and splicing the coded video according to the sequences of the video segments to obtain a target video. The video coding method can optimize the quality of video coding to a certain extent, improve the coding effect and further improve the watching experience of the video.
Description
Technical Field
The present disclosure relates to the field of signal processing technologies, and in particular, to a video encoding method, a video encoding apparatus, a computer-readable medium, and an electronic device.
Background
Video coding refers to the way in which a file in an original video format is converted into a file in another video format by a specific compression technique. Common video coding standards are h.264, h.265, AVS, etc. Different coding standards are defined differently, but all have a common goal of compressing image information to a particular resolution and code rate.
The current video coding usually selects a fixed resolution according to the coding target code rate, and then combines different coding standards and coders to adjust. However, the content of videos varies widely, and a same video may contain rich scenes, for example, a movie often contains a fighting scene with rich information, a static scene with less information, and an indoor scene, and the fixed resolution cannot completely meet the requirements of the video, and cannot achieve the optimal effect.
It is to be noted that the information disclosed in the above background section is only for enhancement of understanding of the background of the present disclosure, and thus may include information that does not constitute prior art known to those of ordinary skill in the art.
Disclosure of Invention
The present disclosure is directed to a video encoding method, a video encoding apparatus, a computer readable medium and an electronic device, so as to improve the video quality of an encoded video due to the problem of poor video encoding effect to a certain extent.
Additional features and advantages of the disclosure will be set forth in the detailed description which follows, or in part will be obvious from the description, or may be learned by practice of the disclosure.
According to a first aspect of the present disclosure, there is provided a video encoding method comprising:
segmenting a video to be coded to obtain a plurality of video segments;
determining target resolution ratios respectively corresponding to the video segments according to transcoding requirements;
coding each video clip according to the target resolution corresponding to each video clip to obtain a coded video corresponding to each video clip;
and splicing the coded video according to the sequences of the video segments to obtain a target video.
In an exemplary embodiment of the present disclosure, the segmenting the video to be encoded includes:
determining a difference degree between adjacent frames of the video to be encoded;
and segmenting the video to be coded according to the difference degree.
In an exemplary embodiment of the present disclosure, the segmenting the video to be encoded according to the difference degree includes:
if the difference degree between the adjacent frames exceeds a preset threshold value, segmenting the video to be coded from the adjacent frames to obtain the video segment;
and if no adjacent frame with the difference degree exceeding a preset threshold exists in the fixed time length of the video to be coded, segmenting the video to be coded according to the fixed time length.
In an exemplary embodiment of the present disclosure, the determining, according to transcoding requirements, target resolutions respectively corresponding to the video segments includes:
determining a target code rate according to the transcoding requirement to obtain a resolution set corresponding to the target code rate;
and determining the target resolution corresponding to each video clip from the resolution set.
In an exemplary embodiment of the present disclosure, the determining, from the resolution set, a target resolution corresponding to each of the video segments includes:
for each video segment, encoding the video segment according to each resolution in the resolution set to obtain a plurality of encoded candidate videos of the video segment;
and determining the target resolution corresponding to the video clip according to the score value of each candidate video.
In an exemplary embodiment of the present disclosure, after determining target resolutions respectively corresponding to the video segments according to transcoding requirements, the method further includes:
updating the resolution set with the target resolution.
In an exemplary embodiment of the present disclosure, the determining, according to transcoding requirements, target resolutions respectively corresponding to the video segments includes:
and determining the video type of the video to be coded according to the transcoding requirement, and determining the target resolution corresponding to each video segment through the resolution set corresponding to the video type.
According to a second aspect of the present disclosure, there is provided a video encoding apparatus, which may include a video slicing module, a resolution determination module, a video encoding module, and a video splicing module, wherein:
and the video segmentation module is used for segmenting the video to be coded so as to obtain a plurality of video segments.
And the resolution determination module is used for determining the target resolution corresponding to each video segment according to the transcoding requirement.
And the video coding module is used for coding each video segment according to the target resolution corresponding to each video segment so as to obtain the coded video corresponding to each video segment.
And the video splicing module is used for splicing the coded video according to the sequences of the video segments to obtain a target video.
In an exemplary embodiment of the present disclosure, the video segmentation module specifically includes a disparity determining unit and a segmentation unit, where:
and the difference degree determining unit is used for determining the difference degree between the adjacent frames of the video to be coded.
And the segmentation unit is used for segmenting the video to be coded according to the difference degree.
In an exemplary embodiment of the present disclosure, the segmentation unit may specifically include a difference degree segmentation unit and a duration segmentation unit, where:
and the difference degree segmentation unit is used for segmenting the video to be coded from the adjacent frames to obtain the video segment if the difference degree between the adjacent frames exceeds a preset threshold value.
And the time length segmentation unit is used for segmenting the video to be coded according to the fixed time length if no adjacent frame with the difference degree exceeding a preset threshold value exists in the fixed time length of the video to be coded.
In an exemplary embodiment of the present disclosure, the resolution determining module may specifically include a code rate determining unit and a resolution set determining unit, where:
and the code rate determining unit is used for determining a target code rate according to the transcoding requirement so as to obtain a resolution set corresponding to the target code rate.
And the resolution set determining unit is used for determining the target resolution corresponding to each video clip from the resolution set.
In an exemplary embodiment of the present disclosure, the resolution set determining unit may specifically include a video acquiring unit and a video scoring unit, wherein:
and the video acquisition unit is used for encoding the video clips according to the resolutions in the resolution set aiming at each video clip so as to acquire a plurality of encoded candidate videos of the video clips.
And the video scoring unit is used for determining the target resolution corresponding to the video clip according to the score value of each candidate video.
In an exemplary embodiment of the present disclosure, the apparatus further includes a resolution updating unit for updating the resolution set with the target resolution.
In an exemplary embodiment of the disclosure, the resolution determination module may be specifically configured to: and determining the video type of the video to be coded according to the transcoding requirement, and determining the target resolution corresponding to each video segment through the resolution set corresponding to the video type.
According to a third aspect of the present disclosure, there is provided an electronic device comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the method of any one of the above via execution of the executable instructions.
According to a fourth aspect of the present disclosure, there is provided a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the method of any one of the above.
Exemplary embodiments of the present disclosure may have some or all of the following benefits:
in the video encoding method provided by an exemplary embodiment of the present disclosure, a video to be encoded is segmented, different target resolutions are determined for each video segment, and an encoding resolution can be determined according to different video contents, so that different resolutions can be adopted in different video scenes, and the resolution is more suitable for the variation characteristics of the video, and thus the encoded video can achieve the optimal video quality; meanwhile, the stability of the video image quality can be improved, and the user experience is improved; moreover, the encoding of the video to be encoded by adopting different resolutions has the advantages of saving computing resources and improving encoding efficiency.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure. It is to be understood that the drawings in the following description are merely exemplary of the disclosure, and that other drawings may be derived from those drawings by one of ordinary skill in the art without the exercise of inventive faculty.
Fig. 1 schematically shows a flow chart of a video encoding method according to an embodiment of the present disclosure;
FIG. 2 schematically shows a flow chart of the steps of slicing a video to be encoded according to one embodiment of the present disclosure;
FIG. 3 schematically shows a flow chart of the steps of slicing a video to be encoded according to another embodiment of the present disclosure;
FIG. 4 schematically shows a flow chart of the step of determining a target resolution in an embodiment according to the present disclosure;
FIG. 5 schematically shows a flow chart of the step of determining a target resolution in another embodiment according to the present disclosure;
fig. 6 schematically shows a block diagram of a video encoding apparatus according to an embodiment of the present disclosure;
fig. 7 schematically shows a system architecture diagram for implementing a video encoding method according to one embodiment of the present disclosure;
FIG. 8 illustrates a schematic structural diagram of a computer system suitable for use in implementing the electronic device of an embodiment of the present disclosure.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the subject matter of the present disclosure can be practiced without one or more of the specific details, or with other methods, components, devices, steps, and the like. In other instances, well-known technical solutions have not been shown or described in detail to avoid obscuring aspects of the present disclosure.
Furthermore, the drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and thus their repetitive description will be omitted. Some of the block diagrams shown in the figures are functional entities and do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor devices and/or microcontroller devices.
The technical solution of the embodiment of the present disclosure is explained in detail below:
the present exemplary embodiment first provides a video encoding method. Referring to fig. 1, the method may include the steps of:
step S110: and segmenting the video to be coded to obtain a plurality of video segments.
Step S120: and determining the target resolution ratio corresponding to each video segment according to transcoding requirements.
Step S130: and coding each video segment according to the target resolution corresponding to each video segment to obtain the coded video corresponding to each video segment.
Step S140: and splicing the coded videos to obtain a target video.
In the video encoding method provided by an exemplary embodiment of the present disclosure, a video to be encoded is segmented, different target resolutions are determined for each video segment, and an encoding resolution can be determined according to different video contents, so that different resolutions can be adopted in different video scenes, and the resolution is more suitable for the variation characteristics of the video, and thus the encoded video can achieve the optimal video quality; meanwhile, the stability of the video image quality can be improved, and the user experience is improved; moreover, the encoding of the video to be encoded by adopting different resolutions has the advantages of saving computing resources and improving encoding efficiency.
The above steps of the present exemplary embodiment will be described in more detail below.
In step S110, a video to be encoded is sliced to obtain a plurality of video segments.
The video to be encoded is an original video file produced by a video producer, and can comprise a plurality of frames of images. Also, the video to be encoded may be various types of video files, such as movies, animations, game videos, and the like. The splitting of the video to be encoded may divide the multi-frame image into a plurality of groups, each group being a video segment. The video segment is a segment of a certain duration in the video to be encoded, and includes a certain number of frames of images, for example, the video to be encoded is 60 minutes, 1800 frames of images, and each video segment may be 6 seconds, 180 frames of images. And after obtaining the video segments, generating identification information for each video segment to uniquely identify each video segment, where the identification information may be generated according to the sequence of the playing time in the video to be encoded, for example, the identification information of the first video segment is 001, the identification information of the second video segment is 002, and the like, and sequentially increasing the identification information to obtain the identification information of each video segment. The identification information of the video segment may be generated by other methods, for example, random numbers that do not overlap with each other may be generated as the identification information, and the playing time corresponding to the first frame image in each video segment may be generated as the identification information.
In an exemplary embodiment, the video to be coded may be segmented in a plurality of ways, for example, the video to be coded is segmented through step S201 and step S202 shown in fig. 2, specifically:
in step S201, a degree of difference between adjacent frames of a video to be encoded is determined. The adjacent frames may include two temporally consecutive frames of images, or may include two frames of images separated by a certain time, for example, images separated by 10 seconds, images separated by 60 seconds, and the like; the image may also include images adjacent to each other in other manners, for example, a continuous key frame is used as an adjacent frame, an image including a specific identifier is used as an adjacent frame, and the like, which is not particularly limited in this embodiment. The difference between adjacent frames can be calculated in various ways, illustratively, the gray values of corresponding pixel points of two continuous frames of images can be subtracted, and then the absolute values of the obtained results are added to obtain the difference; or calculating the mean value of the difference between the gray values of the pixels corresponding to two continuous frames of images as the difference degree; and calculating the variance of the difference between the gray values of the pixels corresponding to the two continuous frames of images as the difference degree and the like. Moreover, in order to reduce the amount of calculation, every other certain number of frames in the complete image sequence corresponding to the video to be encoded may be extracted as the target sequence, for example, every other 10 frames are extracted, such as the 1 st frame, the 11 th frame, the 21 st frame, and the like; or, a frame of image is extracted from the complete image sequence corresponding to the video to be encoded at a certain time interval to form a target sequence, for example, a frame is extracted at a certain time interval, for example, an image corresponding to the 1 st second, an image corresponding to the 2 nd second, an image corresponding to the 3 rd second, and the like, and then the difference between adjacent frames in the target sequence is calculated, so that the calculation resources can be saved, and the calculation efficiency can be improved.
In step S202, the video to be encoded is segmented according to the difference. Specifically, when it is determined that the degree of difference between adjacent frames exceeds a certain limit, the adjacent frames may be divided, for example, if the degree of difference between the image of the 1 st second and the image of the 2 nd second exceeds 0.5, the video to be encoded is divided between the 1 st second and the 2 nd second. Illustratively, the method may include step S301 and step S302, as shown in fig. 3, wherein:
in step S301, if the difference between adjacent frames exceeds a preset threshold, the video to be encoded is segmented from between the adjacent frames, so as to obtain a video segment. The preset threshold may be set according to actual requirements, for example, 0.3, 0.6, 0.8, etc., or may be other values, for example, 1, 0.5, etc., which is not particularly limited in this embodiment. When the inter-frame difference is large, the scene switching can be considered to occur, and the segmentation can be performed between the adjacent frames with large difference, so that the video to be coded is divided into a plurality of video segments.
In step S302, if there is no adjacent frame with a difference degree exceeding a preset threshold in a fixed time length of the video to be encoded, the video to be encoded is segmented according to the fixed time length. The fixed time period may be 10 seconds, 60 seconds, 90 seconds, or the like, or may be other values, for example, 120 seconds, 200 seconds, 5 minutes, 10 minutes, or the like, and this embodiment is not particularly limited thereto. Specifically, the difference between adjacent frames of the video to be encoded may be calculated, for example, the difference between the 1 st frame and the 2 nd frame, the difference between the 2 nd frame and the 3 rd frame, and the video to be encoded is divided according to the fixed duration if the difference within the fixed duration does not exceed the preset threshold continuously. Illustratively, if the fixed duration is 5 minutes, calculating the difference between every two continuous frames of the video to be coded, the total duration of which is 1 hour, dividing the image in 5 minutes into a video segment if no adjacent frame with the difference exceeding a preset threshold value exists in 0-5 minutes, then calculating the difference between adjacent frames in the image sequence from 5 minutes to 10 minutes, if the adjacent frame with the difference exceeding the preset threshold value exists, dividing the adjacent frames to obtain a new video segment, then calculating the difference between adjacent frames from the division to the next 5 minutes, then dividing the next video segment, and so on to obtain all the video segments.
In other embodiments of the present disclosure, the video to be encoded may also be segmented in other manners, for example, the video to be encoded is segmented into a certain number of video segments on average, segmented in a customized manner, and the like, which all belong to the protection scope of the present disclosure.
In the exemplary embodiment, before the video to be encoded is sliced, the video to be encoded also needs to be acquired. Since the video file can be transmitted and processed after being encoded, the obtained video file is often an encoded video file, and after the original video file is obtained, the original video file is decoded to obtain a complete image sequence, the image sequence is used as a video to be encoded, and then the video to be encoded is converted into a target video. In addition, the video to be encoded may be obtained in a plurality of manners, for example, obtaining a video file collected by a camera, downloading the video file from a server, and analyzing the video file to obtain the video to be encoded, which is not particularly limited in this embodiment.
In step S120, target resolutions corresponding to the video segments are determined according to transcoding requirements.
Transcoding requirements may include parameters needed to encode the target video, such as sharpness, video size, etc.; alternatively, the parameters required for encoding, for example, the encoding format and the like, may also include other parameters, for example, the bit rate, the frame rate and the like of the target video, which is not particularly limited in this embodiment. A resolution value range can be determined in advance according to different transcoding requirements, so that a value range corresponding to the different transcoding requirements is obtained, and the target resolution corresponding to each video segment is determined in the value range. Specifically, for a first video segment, multiple resolutions can be extracted from a value range corresponding to transcoding requirements, the first video segment is encoded according to the multiple resolutions to obtain an encoding result, then, a resolution corresponding to an optimal encoding result is selected as a target resolution corresponding to the first video segment, and so on, so that a target resolution corresponding to each video segment can be obtained.
In an exemplary embodiment, the method may include step S401 and step S402, as shown in fig. 4, wherein:
in step S401, a target bitrate is determined according to transcoding requirements, so as to obtain a resolution set corresponding to the target bitrate. The code rate refers to a parameter assigned to a video when the compressed video is encoded, and is used to represent a desired size of the compressed video, which is also called a bit rate. Illustratively, a plurality of different resolutions can be predetermined according to different code rates, so as to obtain a resolution set corresponding to each code rate, and then a target code rate is extracted from transcoding requirements, so as to obtain a resolution set corresponding to the target code rate.
In step S402, a target resolution corresponding to each video segment is determined from the resolution set corresponding to the target bitrate. For example, each video segment may be encoded separately with each resolution in the resolution set, so as to select the resolution with the best encoding effect as the target resolution. In addition, the target resolutions respectively corresponding to the video segments may be selected from the resolution set in various ways, and for example, the target resolutions may be determined through step S501 and step S502, as shown in fig. 5, specifically:
in step S501, for each video segment, the video segment is encoded according to each resolution in the resolution set, and a plurality of encoded candidate videos of the video segment are obtained. For example, if the resolution set includes 5 resolutions, 5 times of encoding is performed on each video segment according to the 5 resolutions, so as to obtain 5 candidate videos of each video segment.
In step S502, a target resolution corresponding to each video segment is determined according to the score value of each candidate video. In this embodiment, the candidate videos of each video segment may be scored in various ways to obtain a score value. For example, when candidate videos corresponding to respective Video segments are obtained, the candidate videos may be evaluated by using a VMAF (Video Multi-method Assessment) tool. The VMAF is an evaluation model for scoring the video quality, can score videos from multiple dimensions, and has high video quality. The VMAF can score the candidate videos of each video clip to obtain the score value of each candidate video, so that the resolution corresponding to the candidate video with the highest score value is selected from the candidate videos to serve as the target resolution of the video clip. For example, the score values of the 3 candidate videos corresponding to the first video segment are 30, 60, and 90, respectively, and then the resolution corresponding to the candidate video with the score value of 90 may be selected as the target resolution of the first video segment.
In an exemplary embodiment, the video type of the video to be encoded may be determined according to the transcoding requirement, and then the target resolution corresponding to each video segment is determined by the resolution set corresponding to the video type. The video types can include science fiction, action, encouragement, and also can include literature, horror and the like; alternatively, the video type may be determined according to a customized classification standard, for example, high definition, super definition, and the like, which is not particularly limited in this embodiment. The method includes the steps of determining corresponding different resolution sets according to different video types in advance, and then determining target resolutions corresponding to video segments from the resolution sets. For example, for a game-type video, when there is no interaction between characters controlled by a player, a lower resolution may be determined, and when the interaction occurs, a higher resolution may be determined, so as to obtain a resolution range corresponding to the game-type video, and a plurality of resolutions within the resolution range are used as a resolution set corresponding to the game-type video.
After the target resolution corresponding to each video segment is determined, the resolution set may be updated by using the target resolution. Illustratively, if the video type of the video to be encoded is a, and the resolution set corresponding to the video type is C, the resolution range corresponding to the video to be encoded may be determined according to the target resolution of each video segment in the video to be encoded, and then the resolution in the resolution set C is filtered by using the range, and the resolution value that is not in the resolution range is deleted, so as to reduce the number of resolutions in the resolution set C, so that the selection range of the target resolution may be reduced when the next video to be encoded is encoded, and the calculation resources are saved. After the target resolution determination process of the videos to be coded, the resolution set corresponding to each video type can be optimized, and the resolution with pertinence to each video type is determined, so that the target resolution can be determined more quickly, and the coding efficiency is improved.
With continued reference to fig. 1, in step S130, the video segments are encoded according to the target resolutions respectively corresponding to the video segments, and encoded videos respectively corresponding to the video segments are obtained.
Specifically, for a first video segment, the video segment may be encoded according to a target resolution corresponding to the video segment, an encoded video corresponding to the video segment is obtained, and then the remaining video segments are sequentially processed, and the obtained encoded video may be arranged according to a sequence between the video segments, that is, the encoded video may be consistent with a sequence between the video segments, so as to splice the encoded video according to the sequence. Each video segment may be encoded by a video encoder, for example, the resolution of the video encoder is defined as a target resolution, and then the video segment is input into the video encoder, so as to obtain a corresponding encoded video. In addition, in the present embodiment, the video to be encoded can be encoded using a plurality of encoding formats, for example, AVI, MPG, and the like, and further, for example, H264, RM, H265, VP8, VP9, and the like, which is advantageous for expanding the application range.
In step S140, the encoded video is spliced according to the sequence of the plurality of video segments to obtain the target video. The target video is a video file obtained by encoding a video to be encoded, and may include various formats, such as avi, dat, mpeg, and the like, which is not limited in this embodiment. Specifically, the sequence of each segmented video segment can be determined according to the time axis of the video to be coded, each video segment is identified according to the sequence, or the sequence and the identifier of each video segment are bound, then the sequence of the video segment in the original video to be coded is determined according to the identifier of the video segment, so that the sequence of the coded video corresponding to the video segment is determined, and the coded video is spliced according to the sequence to obtain the complete target video. By the method and the device, the resolution ratios corresponding to different segments of the video to be coded can be determined under the transcoding requirement, the video to be coded is coded according to different resolution ratios, the coding effect can be optimized, the coding effect can better adapt to the characteristic that the video scene is changeable, better video quality can be obtained no matter what scene is, and the watching experience of a user on the video can be improved.
Further, the present embodiment also provides a video encoding apparatus for executing the video encoding method of the present disclosure. The device can be applied to a server or terminal equipment.
Referring to fig. 6, the video encoding apparatus 600 may include a video slicing module 610, a resolution determination module 620, a video encoding module 630, and a video splicing module 640, wherein:
the video slicing module 610 is configured to slice a video to be encoded to obtain a plurality of video segments.
And a resolution determining module 620, configured to determine, according to transcoding requirements, target resolutions respectively corresponding to the video segments.
The video encoding module 630 is configured to encode each of the video segments according to the target resolution corresponding to each of the video segments to obtain encoded videos corresponding to each of the video segments.
And the video splicing module 640 is configured to splice the encoded video according to the sequence of the plurality of video segments to obtain a target video.
In an exemplary embodiment of the present disclosure, the video segmentation module 610 specifically includes a disparity determination unit and a segmentation unit, where:
and the difference degree determining unit is used for determining the difference degree between the adjacent frames of the video to be coded.
And the segmentation unit is used for segmenting the video to be coded according to the difference degree.
In an exemplary embodiment of the present disclosure, the segmentation unit may specifically include a difference degree segmentation unit and a duration segmentation unit, where:
and the difference degree segmentation unit is used for segmenting the video to be coded from the adjacent frames to obtain the video segment if the difference degree between the adjacent frames exceeds a preset threshold value.
And the time length segmentation unit is used for segmenting the video to be coded according to the fixed time length if no adjacent frame with the difference degree exceeding a preset threshold value exists in the fixed time length of the video to be coded.
In an exemplary embodiment of the present disclosure, the resolution determining module 620 may specifically include a code rate determining unit and a resolution set determining unit, where:
and the code rate determining unit is used for determining a target code rate according to the transcoding requirement so as to obtain a resolution set corresponding to the target code rate.
And the resolution set determining unit is used for determining the target resolution corresponding to each video clip from the resolution set.
In an exemplary embodiment of the present disclosure, the resolution set determining unit may specifically include a video acquiring unit and a video scoring unit, wherein:
and the video acquisition unit is used for encoding the video clips according to the resolutions in the resolution set aiming at each video clip so as to acquire a plurality of encoded candidate videos of the video clips.
And the video scoring unit is used for determining the target resolution corresponding to the video clip according to the score value of each candidate video.
In an exemplary embodiment of the present disclosure, the apparatus further includes a resolution updating unit for updating the resolution set with the target resolution.
In an exemplary embodiment of the disclosure, the resolution determination module 620 may be specifically configured to: and determining the video type of the video to be coded according to the transcoding requirement, and determining the target resolution corresponding to each video segment through the resolution set corresponding to the video type.
For details that are not disclosed in the embodiments of the apparatus of the present disclosure, please refer to the embodiments of the video encoding method described above in the present disclosure for the details that are not disclosed in the embodiments of the apparatus of the present disclosure.
Referring to fig. 7, fig. 7 is a system architecture diagram illustrating an exemplary application environment to which a video encoding method and a video encoding apparatus according to an embodiment of the present disclosure may be applied.
As shown in fig. 7, the system architecture 700 may include one or more of end devices 701, 702, 703, a network 704 and a server 705. The network 704 serves to provide a medium for communication links between the terminal devices 701, 702, 703 and the server 705. Network 704 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
The terminal devices 701, 702, 703 may be various electronic devices having a display screen, including but not limited to desktop computers, portable computers, smart phones, tablet computers, and the like. It should be understood that the number of terminal devices, networks, and servers in fig. 7 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation. For example, the server 705 may be a server cluster composed of a plurality of servers, or the like.
The video encoding method provided by the embodiment of the present disclosure is generally executed by the server 705, and accordingly, the video encoding apparatus is generally disposed in the server 705. However, it is easily understood by those skilled in the art that the video encoding method provided in the present disclosure may also be executed by the terminal devices 701, 702, and 703, and accordingly, the video encoding apparatus may also be disposed in the terminal devices 701, 702, and 703, which is not particularly limited in the present exemplary embodiment.
For example, in an exemplary embodiment, the server 705 may receive a video to be encoded, and segment the video to be encoded into a plurality of video segments; acquiring transcoding requirements, and determining target resolution corresponding to each video segment according to the transcoding requirements; further, each video clip is coded according to the target resolution corresponding to each video clip; splicing the coded video according to the sequence of the video segments to obtain a target video; the optimal resolution ratio can be determined according to different video contents, so that the optimal video quality under a specific code rate is achieved.
FIG. 8 illustrates a schematic structural diagram of a computer system suitable for use in implementing the electronic device of an embodiment of the present disclosure.
It should be noted that the computer system 800 of the electronic device shown in fig. 8 is only an example, and should not bring any limitation to the functions and the scope of the application of the embodiments of the present disclosure.
As shown in fig. 8, the computer system 800 includes a Central Processing Unit (CPU)801 that can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)802 or a program loaded from a storage section 808 into a Random Access Memory (RAM) 803. In the RAM 803, various programs and data necessary for system operation are also stored. The CPU 801, ROM 802, and RAM 803 are connected to each other via a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
The following components are connected to the I/O interface 805: an input portion 806 including a keyboard, a mouse, and the like; an output section 807 including a signal such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage portion 808 including a hard disk and the like; and a communication section 809 including a network interface card such as a LAN card, a modem, or the like. The communication section 809 performs communication processing via a network such as the internet. A drive 810 is also connected to the I/O interface 805 as necessary. A removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 810 as necessary, so that a computer program read out therefrom is mounted on the storage section 808 as necessary.
In particular, the processes described below with reference to the flowcharts may be implemented as computer software programs, according to embodiments of the present disclosure. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication section 809 and/or installed from the removable medium 811. The computer program, when executed by a Central Processing Unit (CPU)801, performs various functions defined in the methods and apparatuses of the present application.
It should be noted that the computer readable media shown in the present disclosure may be computer readable signal media or computer readable storage media or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer-readable signal medium may include a propagated data signal with computer-readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software, or may be implemented by hardware, and the described units may also be disposed in a processor. Wherein the names of the elements do not in some way constitute a limitation on the elements themselves.
As another aspect, the present application also provides a computer-readable medium, which may be contained in the electronic device described in the above embodiments; or may exist separately without being assembled into the electronic device. The computer readable medium carries one or more programs which, when executed by an electronic device, cause the electronic device to implement the method as described in the embodiments below. For example, the electronic device may implement the steps shown in fig. 1 and 2, and so on.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims (7)
1. A video encoding method, comprising:
segmenting a video to be coded to obtain a plurality of video segments;
determining target resolution ratios respectively corresponding to the video segments according to transcoding requirements; the method comprises the following steps: determining a target code rate according to the transcoding requirement to obtain a resolution set corresponding to the target code rate; determining target resolutions respectively corresponding to the video segments from the resolution set, or determining the video type of the video to be coded according to the transcoding requirement, so as to determine the target resolutions respectively corresponding to the video segments through the resolution set corresponding to the video type;
updating the resolution set with the target resolution;
coding each video clip according to the target resolution corresponding to each video clip to obtain a coded video corresponding to each video clip;
and splicing the coded video according to the sequences of the video segments to obtain a target video.
2. The method of claim 1, wherein the slicing the video to be encoded comprises:
determining a difference degree between adjacent frames of the video to be encoded;
and segmenting the video to be coded according to the difference degree.
3. The method according to claim 2, wherein said slicing the video to be encoded according to the disparity comprises:
if the difference degree between the adjacent frames exceeds a preset threshold value, segmenting the video to be coded from the adjacent frames to obtain the video segment;
and if no adjacent frame with the difference degree exceeding a preset threshold exists in the fixed time length of the video to be coded, segmenting the video to be coded according to the fixed time length.
4. The method of claim 1, wherein determining the target resolution corresponding to each of the video segments from the resolution set comprises:
for each video segment, encoding the video segment according to each resolution in the resolution set to obtain a plurality of encoded candidate videos of the video segment;
and determining the target resolution corresponding to the video clip according to the score value of each candidate video.
5. A video encoding apparatus, comprising:
the video segmentation module is used for segmenting a video to be coded to obtain a plurality of video segments;
the resolution determination module is used for determining target resolutions respectively corresponding to the video segments according to transcoding requirements; the method comprises the following steps:
the code rate determining unit is used for determining a target code rate according to the transcoding requirement so as to obtain a resolution set corresponding to the target code rate;
a resolution set determining unit, configured to determine, from the resolution set, target resolutions respectively corresponding to the video segments;
a resolution updating unit for updating the resolution set with the target resolution;
the video coding module is used for coding each video segment according to the target resolution corresponding to each video segment so as to obtain the coded video corresponding to each video segment;
the video splicing module is used for splicing the coded video according to the sequences of the video segments to obtain a target video;
the resolution determination module is further configured to determine a video type of the video to be encoded according to the transcoding requirement, so as to determine a target resolution corresponding to each of the video segments through a resolution set corresponding to the video type.
6. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method of any one of claims 1-4.
7. An electronic device, comprising:
a processor; and
a memory for storing executable instructions of the processor;
wherein the processor is configured to perform the method of any of claims 1-4 via execution of the executable instructions.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010096197.9A CN111263243B (en) | 2020-02-17 | 2020-02-17 | Video coding method and device, computer readable medium and electronic equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010096197.9A CN111263243B (en) | 2020-02-17 | 2020-02-17 | Video coding method and device, computer readable medium and electronic equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111263243A CN111263243A (en) | 2020-06-09 |
CN111263243B true CN111263243B (en) | 2022-03-22 |
Family
ID=70954629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010096197.9A Active CN111263243B (en) | 2020-02-17 | 2020-02-17 | Video coding method and device, computer readable medium and electronic equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111263243B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111970565A (en) * | 2020-09-21 | 2020-11-20 | Oppo广东移动通信有限公司 | Video data processing method and device, electronic equipment and storage medium |
US20220303642A1 (en) * | 2021-03-19 | 2022-09-22 | Product Development Associates, Inc. | Securing video distribution |
CN113382241A (en) * | 2021-06-08 | 2021-09-10 | 北京奇艺世纪科技有限公司 | Video encoding method, video encoding device, electronic equipment and storage medium |
CN114827669B (en) * | 2022-03-31 | 2023-08-18 | 杭州网易智企科技有限公司 | Video data transmission method, device, medium and equipment |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8270473B2 (en) * | 2009-06-12 | 2012-09-18 | Microsoft Corporation | Motion based dynamic resolution multiple bit rate video encoding |
CN109391825A (en) * | 2017-08-03 | 2019-02-26 | 腾讯科技(深圳)有限公司 | A kind of video transcoding method and its device, server, readable storage medium storing program for executing |
US20200045350A1 (en) * | 2018-08-01 | 2020-02-06 | Sling Media Pvt Ltd | Prefetching video segments to reduce playback startup delay |
CN109286825B (en) * | 2018-12-14 | 2021-04-30 | 北京百度网讯科技有限公司 | Method and apparatus for processing video |
CN110719457B (en) * | 2019-09-17 | 2020-10-30 | 北京达佳互联信息技术有限公司 | Video coding method and device, electronic equipment and storage medium |
-
2020
- 2020-02-17 CN CN202010096197.9A patent/CN111263243B/en active Active
Non-Patent Citations (2)
Title |
---|
Efficient Multi-Rate Video Encoding for HEVC-Based Adaptive HTTP Streaming;D. Schroeder et al.;《IEEE Transactions on Circuits and Systems for Video Technology》;20160810;第28卷(第1期);全文 * |
基于云计算的视频实时转码系统设计与实现;闻谦;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑(月刊),2018年第08期》;20180815;第143-157页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111263243A (en) | 2020-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111263243B (en) | Video coding method and device, computer readable medium and electronic equipment | |
CN109286825B (en) | Method and apparatus for processing video | |
CN108833938B (en) | Method and apparatus for selecting video covers | |
CN109844736B (en) | Summarizing video content | |
CN110198492B (en) | Video watermark adding method, device, equipment and storage medium | |
CN111836076B (en) | Video resolution switching method and device and electronic equipment | |
CN111182300B (en) | Method, device and equipment for determining coding parameters and storage medium | |
CN108810545B (en) | Method, apparatus, computer readable medium and electronic device for video encoding | |
CN110418177A (en) | Method for video coding, device, equipment and storage medium | |
US20150156557A1 (en) | Display apparatus, method of displaying image thereof, and computer-readable recording medium | |
US20170180746A1 (en) | Video transcoding method and electronic apparatus | |
EP3410302B1 (en) | Graphic instruction data processing method, apparatus | |
CN110149515B (en) | Data transmission method and device | |
CN110740316A (en) | Data coding method and device | |
CN105898296A (en) | Video coding frame selection method and device | |
CN113079375B (en) | Method and device for determining video coding and decoding priority order based on correlation comparison | |
CN110891195B (en) | Method, device and equipment for generating screen image and storage medium | |
EP3709660A1 (en) | Method and apparatus for content-adaptive frame duration extension | |
US10728568B1 (en) | Visual element encoding parameter tuning | |
CN111818338B (en) | Abnormal display detection method, device, equipment and medium | |
Grbić et al. | Real-time video freezing detection for 4K UHD videos | |
CN108933945B (en) | GIF picture compression method, device and storage medium | |
CN112114760A (en) | Image processing method and device | |
CN113038277B (en) | Video processing method and device | |
CN110855619A (en) | Processing method and device for playing audio and video data, storage medium and terminal equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |