Decoding method, encoding method, device, computer-readable storage medium and product
By introducing a feature propagation controller into the video coding model, which clears the cached features according to the refresh cycle and uses the reconstructed video frames for decoding or encoding, the quality degradation problem of the end-to-end video coding model in long video sequences is solved, achieving a balance between quality stability and efficiency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-05
- Publication Date
- 2026-03-12
AI Technical Summary
End-to-end video coding models suffer from a degradation in coding quality in long video sequences. Existing strategies, such as reducing the number of intra-frame codes or hierarchical quality structures, have limited effectiveness in long video sequences and sacrifice coding efficiency.
By introducing feature propagation controllers at the decoding and encoding ends, buffered features are cleared according to the refresh cycle, and only reconstructed video frames are used for decoding or encoding, ensuring precise timing alignment of the encoding and decoding processes and reducing error accumulation.
Without sacrificing the quality grading structure, it effectively eliminates error accumulation, ensures the stability of decoding quality for long video sequences, and improves video quality while maintaining encoding efficiency.
Smart Images

Figure CN2025119173_12032026_PF_FP_ABST
Abstract
Description
Decoding method, encoding method, device, computer readable storage medium and product
[0001] Cross-reference to related applications
[0002] The present disclosure claims priority from Chinese Patent Application No. 202411251688.0 filed on September 06, 2024 in China, the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0003] The present disclosure relates to the technical field of communication, and particularly refers to a decoding method, an encoding method, a device, a computer readable storage medium and a product. BACKGROUND
[0004] In the end-to-end video encoding model in the related art, the encoding quality gradually decreases as the length of the video sequence increases, which is mainly due to the cumulative effect of errors in the feature transmission process. In order to solve this problem, some models use the strategy of reducing the internal period (such as intra-frame encoding every 10 frames) to frequently introduce high-quality intra-frame images. In addition, some models also use the hierarchical quality structure method to slow down the accumulation speed of errors by periodic quality improvement, which helps in short video sequences, but has limited effect in long sequence video content.
[0005] In summary, when the number of intra-frame encoding is limited to 1, the end-to-end video encoding model in the related art faces a significant quality decline problem. Although increasing the number of intra-frame encoding frames can alleviate the impact of error accumulation to some extent, this method inevitably sacrifices the encoding efficiency. At the same time, the hierarchical quality structure method in the related art has limited effect in the application of long video sequences and only plays a role in a short time sequence range. SUMMARY
[0006] The purpose of the embodiments of the present disclosure is to provide a decoding method, an encoding method, a device, a computer readable storage medium and a product to solve the problem of encoding quality decline of the video encoding model in the related art.
[0007] In order to solve the above problem, the embodiments of the present disclosure provide a decoding method, which is executed by a decoding end, and the method comprises:
[0008] receiving a code stream file, wherein the code stream file comprises a sequence header and a video frame code stream;
[0009] decoding the sequence header to obtain a refresh period and features related to the video frame;
[0010] in a case where it is determined that a current video frame reaches the refresh period, emptying the features related to the video frame stored in a local cache of the decoding end.
[0011] The method further comprises:
[0012] reconstructing the current video frame according to the features related to the video frame to obtain a reconstructed video frame;
[0013] decoding the video frame code stream according to the reconstructed video frame in a case where it is determined that the current video frame reaches the refresh period;
[0014] or,
[0015] decoding the video frame code stream according to the reconstructed video frame and the features related to the video frame obtained through decoding in a case where it is determined that the current video frame does not reach the refresh period.
[0016] The features related to the video frame comprise:
[0017] a feature of reconstructed motion of the current video frame; and
[0018] a feature of the reconstructed video frame.
[0019] The method further comprises:
[0020] decoding the sequence header to obtain a first video frame sequence number; the first video frame sequence number is a sequence number of the current video frame;
[0021] judging whether the current video frame reaches the refresh period according to the first video frame sequence number and a last video frame sequence number of a previous refresh period.
[0022] The judging whether the current video frame reaches the refresh period according to the first video frame sequence number and the last video frame sequence number of the previous refresh period comprises:
[0023] calculating a difference between the first video frame sequence number and the last video frame sequence number of the previous refresh period;
[0024] if the difference is greater than or equal to a length of the refresh period, determining that the current video frame has reached the refresh period; or if the difference is less than the length of the refresh period, determining that the current video frame has not reached the refresh period.
[0025] The disclosure further provides an encoding method performed by an encoding end, which comprises:
[0026] obtaining a video frame code stream and features related to the video frame;
[0027] reconstructing a current video frame according to the features related to the video frame to obtain a reconstructed video frame;
[0028] in a case where it is determined that the current video frame reaches the refresh period, encoding the video frame code stream according to the reconstructed video frame corresponding to the current video frame to obtain a code stream file, and emptying the features related to the video frame stored in the feature storage;
[0029] Or,
[0030] in a case where it is determined that the current video frame does not reach the refresh period, encoding the video frame code stream according to the reconstructed video frame corresponding to the current video frame and the features related to the video frame to obtain a code stream file.
[0031] The method further comprises:
[0032] encoding the refresh period and the features related to the video frame and writing them into the sequence header of the code stream file.
[0033] The method further comprises:
[0034] determining whether the current video frame reaches the refresh period according to the first video frame sequence number and the last video frame sequence number of the previous refresh period;
[0035] The first video frame sequence number is the sequence number of the current video frame.
[0036] The method further comprises:
[0037] calculating the difference between the first video frame sequence number and the last video frame sequence number of the previous refresh period;
[0038] If the difference is greater than or equal to the length of the refresh period, it is determined that the current video frame has reached the refresh period; or if the difference is less than the length of the refresh period, it is determined that the current video frame has not reached the refresh period.
[0039] The disclosure also provides a decoding end, comprising:
[0040] a receiving module for receiving a code stream file, the code stream file comprising a sequence header and a video frame code stream;
[0041] a first decoding module for decoding the sequence header to obtain a refresh period and features related to the video frame;
[0042] an emptying module for emptying the features related to the video frame stored in the local cache of the decoding end in a case where it is determined that the current video frame reaches the refresh period.
[0043] The disclosure also provides an encoding end, comprising:
[0044] The acquisition module is used to acquire video frame bitstreams and features related to video frames;
[0045] The reconstruction module is used to reconstruct the current video frame based on the features related to the video frame, so as to obtain the reconstructed video frame;
[0046] The encoding module is used to encode the video frame bitstream according to the reconstructed video frame corresponding to the current video frame when it is determined that the current video frame has reached the refresh cycle, to obtain a bitstream file, and to clear the features related to the video frame stored in the feature memory.
[0047] Alternatively, it can be used to encode the video frame bitstream based on the reconstructed video frame corresponding to the current video frame and the features related to the video frame when it is determined that the current video frame has not reached the refresh cycle, so as to obtain a bitstream file.
[0048] This disclosure also provides a communication device, including a memory, a processor, and a program stored in the memory and executable on the processor. When the processor executes the program, it implements the decoding method described above; or it implements the encoding method described above.
[0049] This disclosure also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps in the decoding method described above, or implements the steps in the encoding method described above.
[0050] This disclosure also provides a computer program product, including computer instructions, which, when executed by a processor, implement the steps of the decoding method described above; or implement the steps of the encoding method described above.
[0051] The above-disclosed technical solution has at least the following beneficial effects:
[0052] In the decoding method, encoding method, device, computer-readable storage medium, and product of this disclosure, when the decoding end determines that the current video frame has reached the refresh cycle, it clears the features related to the video frame stored in the local cache of the decoding end, and decodes the video frame bitstream only based on the reconstructed video frame; this method can effectively eliminate error accumulation and ensure the quality stability when decoding long video sequences without sacrificing the original quality grading structure. Attached Figure Description
[0053] Figure 1 shows a flowchart of the decoding method provided in an embodiment of this disclosure;
[0054] Figure 2 shows a flowchart of the encoding method provided in an embodiment of this disclosure;
[0055] FIG. 3 shows a structure diagram of an encoding end according to an embodiment of the present disclosure;
[0056] FIG. 4 shows a structure diagram of a decoding end according to an embodiment of the present disclosure;
[0057] FIG. 5 shows another structure diagram of an encoding end according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0058] To make the technical problems, technical solutions and advantages of the present disclosure clearer, the following will be described in detail with reference to the accompanying drawings and specific embodiments.
[0059] As shown in FIG. 1, the present disclosure provides a decoding method applied to a decoding end, which comprises:
[0060] Step 101, receiving a code stream file, wherein the code stream file comprises a sequence header and a video frame code stream;
[0061] Step 102, decoding the sequence header to obtain a refresh period and features related to a video frame;
[0062] Step 103, in a case where it is determined that a current video frame reaches the refresh period, emptying the features related to the video frame stored in a local cache of the decoding end.
[0063] It should be noted that in a case where the current video frame does not reach the refresh period, the decoding end stores the features related to the video frame obtained by decoding the sequence header into the local cache; thus in a case where the refresh period is reached, the decoding end empties the features related to the video frame stored in the local cache.
[0064] In at least one embodiment of the present disclosure, the method further comprises:
[0065] reconstructing the current video frame according to the features related to the video frame to obtain a reconstructed video frame;
[0066] in a case where it is determined that the current video frame reaches the refresh period, decoding the video frame code stream according to the reconstructed video frame;
[0067] or,
[0068] in a case where it is determined that the current video frame does not reach the refresh period, decoding the video frame code stream according to the reconstructed video frame and the features related to the video frame obtained by decoding.
[0069] In the decoding process, the decoding end clears the feature storage in the local cache of the decoding end according to the refresh period obtained by decoding the sequence header of the code stream file and the features related to the video frame according to the set period, so as to ensure the accurate alignment of the encoding and decoding processes in time sequence.
[0070] As an optional embodiment, the features related to the video frame include:
[0071] the feature of the reconstructed motion of the current video frame; and
[0072] the feature of the reconstructed video frame.
[0073] In at least one embodiment of the present disclosure, the method further includes:
[0074] decoding the sequence header to obtain a first video frame sequence number; the first video frame sequence number is the sequence number of the current video frame;
[0075] judging whether the current video frame reaches the refresh period according to the first video frame sequence number and the last video frame sequence number of the last refresh period.
[0076] The judging whether the current video frame reaches the refresh period according to the first video frame sequence number and the last video frame sequence number of the last refresh period includes:
[0077] calculating the difference between the first video frame sequence number and the last video frame sequence number of the last refresh period;
[0078] if the difference is greater than or equal to the length of the refresh period, it is determined that the current video frame has reached the refresh period; or if the difference is less than the length of the refresh period, it is determined that the current video frame has not reached the refresh period.
[0079] In summary, in the embodiment of the present disclosure, the decoding end clears the features related to the video frame stored in the local cache of the decoding end in the case of determining that the current video frame reaches the refresh period, and only decodes the video frame code stream according to the reconstructed video frame; this method can effectively eliminate error accumulation without sacrificing the original quality grading structure, guarantee the quality stability of long video sequence decoding, and ensure the accurate alignment of the encoding and decoding processes in time sequence.
[0080] As shown in FIG. 2, the present disclosure provides an encoding method applied to the encoding end, which includes:
[0081] Step 201: obtaining a video frame code stream and features related to the video frame;
[0082] Step 202: reconstructing the current video frame according to the features related to the video frame to obtain a reconstructed video frame.
[0083] Step 203, in the case of determining that the current video frame reaches the refresh period, the video frame code stream is encoded according to the corresponding reconstructed video frame of the current video frame, a code stream file is obtained, and the features related to the video frame stored in the feature storage are emptied; or in the case of determining that the current video frame does not reach the refresh period, the video frame code stream is encoded according to the corresponding reconstructed video frame of the current video frame and the features related to the video frame, and a code stream file is obtained.
[0084] The embodiment of the present disclosure adds a feature propagation controller in a video coding model, thereby improving the coding quality.
[0085] Optionally, the video coding model is an end-to-end video coding model; further optionally, the video coding model is an intelligent coding model of an audio video coding standard (AVS); which is not limited here.
[0086] As shown in FIG. 3, the embodiment of the present disclosure adds a feature propagation controller on the basis of a video coding model, which is used to process video frames and related feature data. In FIG. 3, represents a reconstructed video frame, and “f ref ” represents features related to the video frame, i.e. the features of the reconstructed motion of the current frame and the features of the reconstructed video frame. Among them, the features of the reconstructed motion of the current frame are high-dimensional features extracted from the optical flow of motion estimation, and the features of the reconstructed video frame are high-dimensional features of the reconstructed video frame.
[0087] The feature extractor, motion estimation (module), motion compensation (module), motion coding (module), context encoder, context decoder, entropy model, etc. in FIG. 3 constitute a video coding model, and optionally, the video coding model is composed of a convolutional neural network.
[0088] The feature propagation controller in the embodiment of the present disclosure is added on the basis of the structure of the end-to-end video coding model, which controls whether the features of the reconstructed motion of the current frame and the features of the reconstructed video frame are used as reference features of the next frame. The specific control method includes: in the case of determining that the current frame has reached a preset refresh period, the feature propagation controller empties the features of the reconstructed motion of the current frame and the features of the reconstructed video frame, and outputs the reconstructed video frame to the feature extractor of the video coding model.
[0089] As an optional embodiment, the video coding model further comprises a motion compensation module; and the method further comprises:
[0090] In a case where the feature propagation controller determines that the current frame sequence number does not reach the preset refresh period, the feature propagation controller outputs the reconstructed video frame and the feature of the reconstructed video frame to the feature extractor, and outputs the feature of the reconstructed motion of the current frame to the motion compensation module.
[0091] In other words, if it is determined that the refresh period has been reached, the feature propagation controller empties the features received from the feature / reconstructed map storage and only outputs the reconstructed video frame to the feature extractor; if the refresh period has not been reached, the reconstructed video frame and the feature of the reconstructed video frame are output to the feature extractor, and the feature of the reconstructed motion of the current frame is output to the motion compensation.
[0092] In addition, in order to best adapt to different encoding model frameworks, the length of the refresh period can be manually set by an operator or pre-set by a network. For example, the refresh period is set to 32 frames.
[0093] Through the above feature propagation control method, the application can effectively alleviate the problem of video quality degradation caused by error accumulation, and significantly improve the performance in efficient encoding of long video sequences. The basic principle is that whenever the refresh period is reached, only the reconstructed video frame is transmitted As a reference, the reconstructed video frame For the current frame x t The role played in encoding is equivalent to image encoding. In actual tests, the quality of the encoded is better than that of using image encoding to encode , and the code rate is smaller. At this time, the instead of image encoding plays a role in blocking error accumulation.
[0094] In at least one embodiment of the present disclosure, the method further comprises:
[0095] determining whether the current video frame reaches the refresh period according to a first video frame sequence number and a last video frame sequence number of a previous refresh period;
[0096] The first video frame sequence number is the sequence number of the current video frame.
[0097] The determination whether the current video frame reaches the refresh period according to the first video frame sequence number and the last video frame sequence number of the previous refresh period comprises:
[0098] calculating the difference between the first video frame sequence number and the last video frame sequence number of the previous refresh period;
[0099] If the difference is greater than or equal to the length of the refresh period, it is determined that the current video frame has reached the refresh period; or if the difference is less than the length of the refresh period, it is determined that the current video frame has not reached the refresh period.
[0100] In the embodiments of the present disclosure, the method further comprises:
[0101] The refresh period and the feature related to the video frame are encoded and written into a sequence header of a bitstream file.
[0102] The encoded bitstream file is sent to a decoding end.
[0103] In the process of video encoding, the information of the refresh period is encoded and written into a bitstream file, specifically in a sequence header before the video frame bitstream, and occupies N bits (such as N equals 8). In this way, the encoding and decoding processes can be accurately aligned in time sequence.
[0104] For example, the process of the encoding end provided by the embodiments of the present disclosure is as follows:
[0105] Step 1, the encoding end analyzes the input video stream to obtain a video frame sequence number and passes it to a feature propagation controller.
[0106] Step 2, based on the received video frame sequence number, the feature propagation controller determines whether the preset refresh period is reached, and the determination rule is whether the difference between the current frame sequence number and the last frame sequence number of the last refresh period is equal to the set refresh period. If yes, it means that the refresh period has been reached, otherwise, it means that the refresh period has not been reached.
[0107] Step 3, once the determination is completed, the feature propagation controller will perform the corresponding operation. If it is determined that the refresh period has been reached, the feature propagation controller empties the features received from the feature / reconstruction map storage, and only outputs the reconstructed video frame to the feature extractor; if the refresh period has not been reached, the reconstructed video frame and the features of the reconstructed video frame are output to the feature extractor, and the features of the reconstructed motion of the current frame are output to the motion compensation.
[0108] In the process of video encoding, the information of the refresh period is encoded and written into a bitstream file, specifically in a sequence header before the video frame bitstream, and occupies 8 bits. In this way, the encoding and decoding processes can be accurately aligned in time sequence.
[0109] In summary, the embodiment of the disclosure is based on the design and implementation of the feature propagation controller, and the setting and management method of the refresh period. The method can effectively control feature propagation in the encoding process, thereby reducing error accumulation, maintaining encoding efficiency, and effectively ensuring video quality. The feature propagation control method of the embodiment of the disclosure can maintain or improve video encoding quality under the condition that the number of intra-frame encoding is strictly limited. At the same time, the disclosure is applicable to the encoding of long video sequences without sacrificing encoding efficiency.
[0110] As shown in FIG. 4, the embodiment of the disclosure further provides a decoding end, which comprises:
[0111] The receiving module 401 is configured to receive a code stream file, wherein the code stream file comprises a sequence header and a video frame code stream.
[0112] The first decoding module 402 is configured to decode the sequence header to obtain a refresh period and features related to a video frame.
[0113] The emptying module 403 is configured to empty the features related to the video frame stored in the local cache of the decoding end in a case where it is determined that a current video frame reaches the refresh period.
[0114] As an optional embodiment, the decoding end further comprises:
[0115] The first reconstruction module is configured to reconstruct the current video frame according to the features related to the video frame to obtain a reconstructed video frame.
[0116] The second decoding module is configured to decode the video frame code stream according to the reconstructed video frame in a case where it is determined that the current video frame reaches the refresh period.
[0117] Or, the second decoding module is configured to decode the video frame code stream according to the reconstructed video frame and the features related to the video frame obtained by decoding in a case where it is determined that the current video frame does not reach the refresh period.
[0118] As an optional embodiment, the features related to the video frame comprise:
[0119] features of a reconstructed motion of the current video frame; and
[0120] features of the reconstructed video frame.
[0121] As an optional embodiment, the decoding end further comprises:
[0122] The third decoding module is configured to decode the sequence header to obtain a first video frame sequence number; the first video frame sequence number is a sequence number of a current video frame.
[0123] a judging module configured to judge whether a current video frame reaches a refresh period according to a first video frame sequence number and a last video frame sequence number of a last refresh period.
[0124] As an optional embodiment, the judging module comprises:
[0125] a calculating sub-module configured to calculate a difference between the first video frame sequence number and the last video frame sequence number of the last refresh period;
[0126] a judging sub-module configured to determine that the current video frame has reached the refresh period if the difference is greater than or equal to a length of the refresh period, or determine that the current video frame has not reached the refresh period if the difference is less than the length of the refresh period.
[0127] In the embodiments of the present disclosure, in the case that the decoding end determines that the current video frame reaches the refresh period, the decoding end clears the features related to the video frame stored in the local cache of the decoding end, and decodes the video frame code stream only according to the reconstructed video frame; this method can effectively eliminate error accumulation without sacrificing the original quality grading structure, guarantee the quality stability during decoding of a long video sequence, and ensure accurate alignment of the encoding and decoding processes in time sequence.
[0128] It should be noted that the decoding end provided by the embodiments of the present disclosure is a decoding end capable of performing the above decoding method, and all the embodiments of the above decoding method are applicable to the decoding end and can achieve the same or similar beneficial effects, which will not be repeated here.
[0129] As shown in FIG. 5, the embodiments of the present disclosure also provide an encoding end, comprising:
[0130] an obtaining module 501 configured to obtain a video frame code stream and features related to a video frame;
[0131] a reconstructing module 502 configured to reconstruct a current video frame according to the features related to the video frame to obtain a reconstructed video frame;
[0132] an encoding module 503 configured to, in the case that the decoding end determines that the current video frame reaches a refresh period, encode the video frame code stream according to the reconstructed video frame corresponding to the current video frame to obtain a code stream file, and clear the features related to the video frame stored in the feature storage;
[0133] or, in the case that the decoding end determines that the current video frame has not reached the refresh period, encode the video frame code stream according to the reconstructed video frame corresponding to the current video frame and the features related to the video frame to obtain a code stream file.
[0134] As an optional embodiment, the encoding end further comprises:
[0135] a second encoding module, configured to encode the refresh period and the feature related to the video frame, and write the refresh period and the feature related to the video frame into a sequence header of a bitstream file.
[0136] As an optional embodiment, the encoding end further comprises:
[0137] a second judging module, configured to judge whether the current video frame reaches the refresh period according to a first video frame sequence number and a last video frame sequence number of a previous refresh period.
[0138] The first video frame sequence number is a sequence number of the current video frame.
[0139] As an optional embodiment, the second judging module comprises:
[0140] a second calculating submodule, configured to calculate a difference between the first video frame sequence number and the last video frame sequence number of the previous refresh period.
[0141] a second judging submodule, configured to determine that the current video frame reaches the refresh period if the difference is greater than or equal to a length of the refresh period, or determine that the current video frame does not reach the refresh period if the difference is less than the length of the refresh period.
[0142] In the encoding method of the video encoding model, when it is determined that the current video frame reaches the preset refresh period, the feature propagation controller is used to clear the reconstructed motion feature of the current frame and the feature of the reconstructed video frame, and the reconstructed video frame is output to the feature extractor. The method can effectively eliminate error accumulation without sacrificing the original quality grading structure, and can guarantee the quality stability during long video sequence encoding. Even in the case of strict limitation on the number of intra-frame encoding (such as 1), the encoding end using the feature propagation control method can maintain high encoding quality, thereby achieving a balance between quality and efficiency.
[0143] It should be noted that the encoding end provided by the embodiments of the present disclosure is an encoding end capable of performing the above-mentioned encoding method, and all embodiments of the above-mentioned encoding method are applicable to the encoding end and can achieve the same or similar beneficial effects, which will not be repeated here.
[0144] The embodiments of the present disclosure also provide a communication device, which is the above-mentioned encoding end or decoding end. The communication device comprises a memory, a processor, and a computer program stored in the memory and executable on the processor. The processor implements each process in the above-mentioned decoding method or encoding method embodiments when executing the program, and can achieve the same technical effects. To avoid repetition, it will not be repeated here.
[0145] The embodiment of the present disclosure further provides a computer readable storage medium, which stores a computer program. The computer program is executed by a processor to implement each process in the embodiment of the decoding method or the encoding method, and achieves the same technical effects. To avoid repetition, details are not described herein. The computer readable storage medium is, for example, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk.
[0146] The embodiment of the present disclosure further provides a computer program product, which includes computer instructions. The computer instructions are executed by a processor to implement each process in the embodiment of the decoding method or the encoding method, and achieves the same technical effects. To avoid repetition, details are not described herein.
[0147] Those skilled in the art should understand that the embodiments of the present disclosure can be provided as a method, a system or a computer program product. Therefore, the present disclosure can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. In addition, the present disclosure can take the form of a computer program product implemented on one or more computer readable storage media (including, but not limited to, disk storage and optical storage, etc.) containing computer usable program code.
[0148] The present disclosure is described with reference to the flowcharts and / or block diagrams of the method, device (system) and computer program product according to the embodiments of the present disclosure. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a general purpose computer, a special purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device that implements the functions specified in one or more flows or blocks in the flowcharts and / or block diagrams.
[0149] These computer program instructions can also be stored in a computer readable storage medium, which can guide the computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable storage medium produce a paper product including instruction devices, which implement the functions specified in one or more flows or blocks in the flowcharts and / or block diagrams.
[0150] These computer program instructions can also be loaded into a computer or other programmable data processing devices, so that a series of operational steps are performed on the computer or other programmable data processing devices to generate a computer-implemented process, so that the instructions executed on the computer or other programmable data processing devices provide steps for implementing the functions specified in one or more flows in the flowchart and / or one or more blocks in the block diagram.
[0151] The above is the preferred embodiment of the present disclosure, it should be pointed out that, for those skilled in the art, without departing from the principles described in the present disclosure, can also make a number of improvements and refinements, these improvements and refinements should also be considered as the protection scope of the present disclosure.
Claims
1. A decoding method, executed by a decoding end, comprising: receiving a bitstream file, the bitstream file comprising: a sequence header and a video frame bitstream; decoding the sequence header to obtain a refresh period and features related to a video frame; in a case where it is determined that a current video frame reaches the refresh period, emptying features related to a video frame stored in a local cache of the decoding end.
2. The decoding method of claim 1, wherein, The method further comprises: reconstructing the current video frame according to the features related to the video frame to obtain a reconstructed video frame; in a case where it is determined that the current video frame reaches the refresh period, decoding the video frame bitstream according to the reconstructed video frame; or, in a case where it is determined that the current video frame does not reach the refresh period, decoding the video frame bitstream according to the reconstructed video frame and the features related to the video frame obtained by decoding.
3. The decoding method of claim 1 or 2, wherein, The features related to the video frame comprise: features of reconstructed motion of the current video frame; and features of the reconstructed video frame.
4. The decoding method of claim 1, wherein, The method further comprises: decoding the sequence header to obtain a first video frame sequence number; the first video frame sequence number being a sequence number of the current video frame; determining whether the current video frame reaches the refresh period according to the first video frame sequence number and a last video frame sequence number of a previous refresh period.
5. The decoding method of claim 4, wherein, The determining whether the current video frame reaches the refresh period according to the first video frame sequence number and the last video frame sequence number of the previous refresh period comprises: calculating a difference between the first video frame sequence number and the last video frame sequence number of the previous refresh period; if the difference is greater than or equal to a length of the refresh period, determining that the current video frame has reached the refresh period; or if the difference is less than the length of the refresh period, determining that the current video frame has not reached the refresh period.
6. An encoding method, executed by an encoding end, comprising: obtaining a video frame bitstream and features related to a video frame; reconstructing a current video frame according to the features related to the video frame to obtain a reconstructed video frame; in a case where it is determined that the current video frame reaches a refresh period, encoding the video frame bitstream according to the reconstructed video frame corresponding to the current video frame to obtain a bitstream file, and emptying the features related to the video frame stored in a feature storage; or, in a case where it is determined that the current video frame does not reach the refresh period, encoding the video frame bitstream according to the reconstructed video frame corresponding to the current video frame and the features related to the video frame to obtain a bitstream file.
7. The encoding method of claim 6, wherein, The method further comprises: encoding the refresh period and the features related to the video frame, and writing them into a sequence header of the bitstream file.
8. The encoding method according to claim 6 or 7, wherein, The method further comprises: determining whether the current video frame reaches the refresh period according to a first video frame sequence number and a last video frame sequence number of a previous refresh period; wherein the first video frame sequence number is a sequence number of the current video frame.
9. A decoding end, comprising: a receiving module, configured to receive a bitstream file, the bitstream file comprising: a sequence header and a video frame bitstream; a first decoding module, configured to decode the sequence header to obtain a refresh period and features related to a video frame; A clearing module is configured to clear the features related to the video frame stored in the local buffer of the decoding end if it is determined that the current video frame reaches the refresh period.
10. An encoding end, comprising: an obtaining module configured to obtain a video frame code stream and features related to the video frame; a reconstructing module configured to reconstruct a current video frame according to the features related to the video frame to obtain a reconstructed video frame; an encoding module configured to encode the video frame code stream according to the reconstructed video frame corresponding to the current video frame to obtain a code stream file and clear the features related to the video frame stored in the feature storage if it is determined that the current video frame reaches the refresh period; or or configured to encode the video frame code stream according to the reconstructed video frame corresponding to the current video frame and the features related to the video frame to obtain a code stream file if it is determined that the current video frame does not reach the refresh period.
Citation Information
Patent Citations
Video coding device and method applicable to low-bandwidth wireless communication channel
CN103227926A
Method, apparatus and device for optimizing video coding quality smoothness, and storage medium
CN109219960A
Quantization parameter determination method and device
CN116156169A
Decoding method, coding method, equipment, computer readable storage medium and product
CN119052493A
Video coding system using sub-channels and constrained prediction references to protect against data transmission errors
US20100150230A1