Coding method and apparatus, and decoding method and apparatus

By using interleaved sorted CRR image bitstream segments and display image bitstreams in video codec technology, and adding preset syntax identification, the coupling problem between the codec and the system layer is solved, and the robustness of the codec process is improved. and compression efficiency reduce bandwidth impact.

WO2024255592A1PCT designated stage expired Publication Date: 2024-12-19HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/096014
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-06-13
Filing Date
2024-05-29
Publication Date
2024-12-19

AI Technical Summary

Technical Problem

In the existing video encoding and codec technology, the coupling between the codec and the system layer is relatively large, resulting in poor robustness of the encoding and codec process and the transmission integrity of the knowledge base image bit stream cannot be guaranteed, resulting in loss of the knowledge base image bit stream. The performance of the codec process is degraded.

Method used

By acquiring the cross-random access point reference CRR images corresponding to multiple display images, performing encoding operations, generating interleaved sorted CRR image bitstream segments and display image bitstreams, adding preset syntax identifiers to indicate the structure and position of the bitstream, realizing Decoupling of encoding and decoding processes and improve robustness.

Benefits of technology

It achieves the robustness of the encoding and decoding process, reduces design and deployment costs, improves compression efficiency and codec performance, and reduces bandwidth shock and decoder performance shock.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024096014_19122024_PF_FP_ABST
    Figure CN2024096014_19122024_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the present application are a coding method and apparatus, and a decoding method and apparatus. The coding method comprises: acquiring CRR images corresponding to a plurality of display images; performing a coding operation on the CRR images and the plurality of display images, so as to obtain a coded image bit stream, wherein the coded image bit stream comprises n CRR image bit stream segments and a plurality of display image bit streams, which are sequenced in an interleaved manner; and coding a preset syntax identifier into the coded image bit stream, wherein the preset syntax identifier comprises at least one of the following: quantity information, image information and position information, and a reference image of each display image comprises a reconstructed display image and / or the currently effective reconstructed CRR image, the reconstructed display image being obtained by means of a coding operation performed on each display image, and the currently effective reconstructed CRR image being obtained by means of a coding operation performed on the CRR image. The present application can realize cross-random-access-point reference and also realize the decoupling of a coder from a system layer, and enables a decoder to respond to a transmission fault in a timely manner.
Need to check novelty before this filing date? Find Prior Art

Description

Coding and decoding method and device

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on June 13, 2023, with application number 202310703615.X and application name “Encoding and Decoding Method and Device”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of data compression technology, and in particular to a coding and decoding method and device. Background Art

[0003] Video encoding and decoding (video encoding and decoding) are widely used in digital video applications, such as broadcast digital television, video transmission over the internet, photo albums, and mobile networks; real-time conversational applications such as video chat and video conferencing; Digital Versatile Discs (DVDs) and Blu-ray Discs; video content acquisition and editing systems; and security applications in camcorders. Video encoding compresses the original video stream using a specific compression algorithm, making the compressed video stream more convenient for storage and transmission. The video is then decoded at the decoder to obtain the original video stream.

[0004] The third-generation Audio and Video Coding Standard 3 (AVS3) proposes a Cross Random Access Point Reference (CRR) encoding and decoding scheme based on library pictures. This scheme obtains library pictures from existing video. A long-term buffer is provided at the system level to store reconstructed library pictures. The reconstructed library pictures at the encoder are obtained by encoding the library pictures, while those at the decoder are obtained by decoding the library picture bitstream. When encoding a video sequence, the reconstructed library picture corresponding to the current frame is obtained from the long-term buffer. Inter-frame prediction coding is performed on the current frame using the reconstructed library picture as a reference picture, resulting in a video bitstream and a library picture bitstream corresponding to each reconstructed library picture used in the encoding. The video bitstream includes a reference picture flag for each frame, indicating whether the reconstructed library picture was used as a reference picture when encoding the frame. The system level of the decoder decodes each library picture bitstream and stores the resulting reconstructed library picture in the long-term buffer. When decoding the current image bit stream, the decoder obtains the corresponding reconstructed knowledge base image from the long-term buffer and uses the reconstructed knowledge base as a reference image to perform inter-frame prediction decoding on the current video bit stream.

[0005] In AVS3, the encoding of knowledge base images and the encoding of video frames are independent, and the transmission of knowledge base image bitstreams and video bitstreams is also independent. In this way, reconstructing the knowledge base images requires storage in a long-term buffer at the system layer. The encoder and decoder can only use images in their respective decoded picture buffers (DPBs) as reference images. Therefore, during the encoding and decoding process, the codec needs to interact frequently with the system layer, resulting in a high degree of coupling between the codec and the system layer. Furthermore, related technologies cannot guarantee the transmission integrity of the knowledge base image bitstream. When the knowledge base image bitstream is lost on the decoder side, the decoder is unaware of it. This results in poor robustness in the encoding and decoding process when the knowledge base image bitstream is lost.

[0006] Summary of the Invention

[0007] The present application provides a coding and decoding method and apparatus, which solves the problem of large coupling between the codec and the system layer in the coding and decoding process in the related art, and can realize the decoupling of the encoder and the system layer while realizing cross-random access point (RAP) reference.

[0008] In a first aspect, the present application provides a coding method, which includes: obtaining cross-random access point reference CRR images corresponding to multiple display images; performing coding operations on the CRR images and multiple display images to obtain a coded image bit stream, the coded image bit stream including: n CRR image bit stream segments and multiple display image bit streams in an interleaved order, where n is an integer greater than 1; encoding a preset syntax identifier into the coded image bit stream, the preset syntax identifier including at least one of the following: quantity information, image information, and position information, the quantity information indicates n, the image information indicates a target image, the bit stream of the target image is transmitted after n CRR image bit stream segments, and the position information indicates the position of the n CRR image bit streams in the coded image bit stream; the reference image of the display image includes: a reconstructed display image and / or a currently effective reconstructed CRR image, the reconstructed display image is obtained by performing a coding operation on the display image, and the currently effective reconstructed CRR image is obtained by performing a coding operation on the CRR image.

[0009] One CRR image corresponds to n CRR image bitstream segments. This has the beneficial effect of enabling the decoder to determine whether all CRR image bitstream segments corresponding to a CRR image have been received, thereby enabling better coordination between the codec layer and the system layer, thereby enabling the decoder to respond promptly to transmission failures and enhancing the robustness of the codec process.

[0010] The knowledge base image-based CRR encoding and decoding scheme proposed by AVS3 requires collaboration at the system level. However, collaboration at the system level will have a significant impact on the existing encoding and decoding system, codecs, and storage structure, increasing the design and deployment cost of the overall encoding and decoding system, and the applicability of the scheme is poor.

[0011] In the embodiments of this application, n CRR image bitstream segments and multiple display image bitstreams are interwoven into a single bitstream for transmission. This approach allows all processes to be completed within the encoder, eliminating the need for system-level collaboration to complete the entire encoding process. This approach is applicable to existing encoder invocation methods, eliminating the need to modify the system-level application that invokes the encoder. Compared to related technologies, this reduces the design and deployment costs of the overall encoding and decoding system, improving the solution's applicability.

[0012] The AVS2 and High Efficiency Video Coding (HEVC) standards propose long-term reference pictures (LTRPs). Usually, the first frame (i.e., RAP) in a random access segment (RAS) is used as the LTRP, and the LTRP can be used as a reference picture for other frames in the same RAS. When the RAS in which an LTRP is located is encoded, the LTRP will also lose its reference function. However, the length of a RAS is short, usually only 1 to 2 seconds (second, s), so the LTRP cannot be used for a long time, affecting the compression efficiency. And RAP is usually an I frame, and I frames need to be encoded with high quality, which may cause a surge in instantaneous bit rate, which in turn leads to bandwidth impact and decoder performance impact, resulting in transmission and encoding and decoding delays. At this time, in scenarios such as real-time playback, there will be obvious delays and freezes.

[0013] In an embodiment of the present application, the reconstructed CRR image obtained by encoding the CRR image can be used as a reference image for subsequent display images. Since the CRR image corresponds to multiple display images, and multiple display images can include multiple RAPs, cross-RAP reference can be achieved. The temporal correlation of long-distance reference images is better utilized to reduce time domain redundancy, thereby improving compression efficiency compared to related technologies. In addition, the CRR image used as a reference image is transmitted in slices, so compared to related technologies, it can effectively reduce bandwidth impact and decoder performance impact, thereby improving encoding and decoding performance.

[0014] The HEVC standard provides an image structure in which each RAP replaces the I frame with a dependent RAP (DRAP) frame. The DRAP frame can also be called a new P (Smart P) frame. And an I frame for long-term reference is constructed. The DRAP frame in the RAS refers to the long-term I frame, and other frames in the RAS can refer to the DRAP frame in the RAS or the long-term I frame. However, the long-term I frame may also cause a surge in the instantaneous bit rate, which in turn leads to bandwidth impact and decoder performance impact, resulting in transmission and encoding and decoding delays. At this time, in scenarios such as real-time playback, there will be obvious delays and freezes.

[0015] In the embodiment of the present application, the CRR image used as a reference image is transmitted in slices, so compared with related technologies, it can effectively reduce bandwidth impact and decoder performance impact and improve encoding and decoding performance.

[0016] In a possible implementation, the preset syntax identifier is located in a high-level parameter of a coded image bitstream, where the high-level parameter includes at least one of the following: a sequence parameter set (SPS), a picture parameter set (PPS), and a picture header.

[0017] The beneficial effect is that since the decoder first parses the higher-level parameters after receiving the bitstream, placing the preset syntax identifier in the higher-level parameters enables the decoder to quickly determine whether there are any missing CRR image bitstream segments. This allows the decoder to react promptly to transmission failures, enhancing the robustness of the encoding and decoding process.

[0018] In one possible implementation, the target image is: the first display image that uses a CRR image as a reference image, the first display image that uses only a CRR image as a reference image, a display image whose bitstream is transmitted after n CRR image bitstream segments, or a CRR image whose bitstream is transmitted after n CRR image bitstream segments.

[0019] In one possible implementation, the image information includes at least one of the following: a frame number of the target image, a decoding number of the bit stream of the target image, a frame number difference between the target image and the CRR image, or a decoding number difference between the bit stream of the target image and the bit stream of the CRR image.

[0020] In one possible implementation, encoding operations are performed on a CRR image and multiple display images to obtain a coded image bit stream, including: dividing the CRR image to obtain n CRR sub-images; interleaving the n CRR sub-images between multiple display images to obtain a sequence of images to be encoded; and sequentially encoding the CRR sub-images and display images in the sequence of images to be encoded to obtain a coded image bit stream.

[0021] Optionally, one or more CRR sub-images may be interspersed between every two display images, as long as the n CRR sub-images are interleaved between multiple display images. The embodiment of the present application does not limit the interleaving method.

[0022] In one possible implementation, the method further includes: caching reconstructed CRR sub-images, where the reconstructed CRR sub-images are obtained by encoding the CRR sub-images; when n reconstructed CRR sub-images are cached, splicing the n reconstructed CRR sub-images to obtain the currently effective reconstructed CRR image.

[0023] In one possible implementation, the method further includes: when starting to perform an encoding operation on the first CRR sub-image in the image sequence to be encoded, removing the currently effective reconstructed CRR image; when performing an encoding operation on a target display image among multiple display images, the reference image of the target display image includes the reconstructed display image, and the target display image includes: the display image between the first CRR sub-image and the last CRR sub-image in the image sequence to be encoded.

[0024] The beneficial effect is that when encoding the first CRR sub-image to the last CRR sub-image in the to-be-encoded image sequence, there is no need to cache the last valid reconstructed CRR image, thereby saving cache space for one frame of image.

[0025] In one possible implementation, the method also includes: when performing an encoding operation on the CRR sub-image to obtain a reconstructed CRR sub-image, updating the target area in the currently effective reconstructed CRR image to the reconstructed CRR sub-image; the positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the reconstructed CRR sub-image and the corresponding CRR image.

[0026] The beneficial effect is that after obtaining a reconstructed CRR sub-image, the reconstructed CRR sub-image will not be cached, but the target area in the currently effective reconstructed CRR image will be directly replaced with the reconstructed CRR sub-image, which can save the cache occupied by the reconstructed CRR sub-image.

[0027] In a possible implementation, the method further includes: caching the CRR image bit stream segments output each time; when n CRR image bit stream segments are cached, decoding and reconstructing the n cached CRR image bit stream segments respectively to obtain n reconstructed CRR sub-images; and splicing the n reconstructed CRR sub-images to obtain the currently effective reconstructed CRR image.

[0028] The beneficial effect is that CRR image bitstream segments are directly cached, and decoding and reconstructing the reconstructed CRR image is performed only after the n CRR image bitstream segments are cached, without having to cache each reconstructed CRR sub-image. Because the cache space occupied by the CRR image bitstream segments is smaller than the cache space occupied by the reconstructed CRR sub-image, a certain amount of cache space can be saved.

[0029] In one possible implementation, the process of performing encoding operations on a CRR image and multiple display images to obtain an encoded image bit stream includes: performing an encoding operation on the CRR image to obtain a CRR image bit stream; dividing the CRR image bit stream to obtain n CRR image bit stream segments; performing encoding operations on multiple display images in sequence to obtain multiple display image bit streams; and interweaving the n CRR image bit stream segments in multiple display image bit streams to obtain an encoded image bit stream.

[0030] Optionally, one or more CRR image bitstream segments may be inserted between every two display image bitstreams, as long as n CRR image bitstream segments are interleaved in multiple display image bitstreams to obtain one bitstream. The embodiment of the present application does not limit the interleaving method.

[0031] In one possible implementation, the process of performing encoding operations on a CRR image and multiple display images to obtain an encoded image bit stream includes: performing an encoding operation on the CRR image to obtain a CRR image bit stream; dividing the CRR image bit stream to obtain n CRR image bit stream segments; performing encoding operations on multiple display images in sequence to obtain multiple display image bit streams; and interweaving the n CRR image bit stream segments in multiple display image bit streams to obtain an encoded image bit stream.

[0032] In a possible implementation, the method further includes: caching the CRR image bitstream; and when outputting the last CRR image bitstream segment among the n CRR image bitstream segments, decoding and reconstructing the cached CRR image bitstream to obtain a currently valid reconstructed CRR image.

[0033] The beneficial effect is that before outputting the last of the n CRR image bitstream segments, the entire CRR image bitstream is stored without having to store the entire reconstructed CRR image. Since the cache space occupied by the CRR image bitstream is smaller than that occupied by the reconstructed CRR image, a certain amount of cache space can be saved.

[0034] In a second aspect, the present application provides a decoding method, the method comprising: receiving a coded image bit stream, the coded image bit stream comprising interleaved and ordered cross-random access point reference CRR image bit stream segments and a display image bit stream; performing a decoding operation on the coded image bit stream; obtaining a preset syntax identifier from the coded image bit stream, the preset syntax identifier comprising at least one of the following: quantity information, image information, and position information, the quantity information indicating n, the image information indicating a target image, the bit stream of the target image being transmitted after n CRR image bit stream segments, and the position information indicating the position of the n CRR image bit stream segments in the coded image bit stream; and decoding the coded image bit stream according to the preset syntax identifier. Method identification is used to determine whether there are n CRR image bit stream segments in the coded image bit stream, where n CRR image bit stream segments correspond to one CRR image, and n is an integer greater than 1; if there are n CRR image bit stream segments in the coded image bit stream, then the coded image bit stream is continued to be decoded to obtain a reconstructed display image; the reference image of the display image bit stream includes: the reconstructed display image and / or the currently effective reconstructed CRR image, where the reconstructed display image is obtained by decoding the display image bit stream, and the currently effective reconstructed CRR image is obtained by decoding the CRR image bit stream segments.

[0035] In one possible implementation, the process of decoding the coded image bit stream includes: performing a decoding operation on each received CRR image bit stream segment to obtain and cache a reconstructed CRR sub-image; if there are n CRR image bit stream segments in the coded image bit stream, then continuing the process of decoding the coded image bit stream includes: if there are n CRR image bit stream segments in the coded image bit stream, then when n reconstructed CRR sub-images are cached, splicing the n reconstructed CRR sub-images to obtain the currently effective reconstructed CRR image.

[0036] In one possible implementation, the method further includes: when performing a decoding operation on the first CRR image bitstream segment, removing the currently effective reconstructed CRR image; the reference image of the target display image bitstream in the multiple display image bitstreams includes the reconstructed display image, and the target display image bitstream includes: the display image bitstream between the first CRR image bitstream segment and the last CRR image bitstream segment in the coded image bitstream.

[0037] The beneficial effect is that when decoding the first CRR image bit stream segment to the last CRR image bit stream segment in the coded image bit stream, there is no need to cache the last valid reconstructed CRR image, thereby saving the cache space of one frame of image during this period.

[0038] In one possible implementation, the process of performing a decoding operation on a coded image bitstream includes: performing a decoding operation on a received CRR image bitstream segment to obtain a reconstructed CRR sub-image; if there are n CRR image bitstream segments in the coded image bitstream, the process of continuing to perform a decoding operation on the coded image bitstream includes: if there are n CRR image bitstream segments in the coded image bitstream, updating the target area in the currently effective reconstructed CRR image to the obtained reconstructed CRR sub-image, and the positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image.

[0039] The beneficial effect is that after obtaining a reconstructed CRR sub-image, the reconstructed CRR sub-image will not be cached, but the target area in the currently effective reconstructed CRR image will be directly replaced with the reconstructed CRR sub-image, which can save the cache occupied by the reconstructed CRR sub-image.

[0040] In one possible implementation, the process of performing a decoding operation on a coded image bitstream includes: caching each received CRR image bitstream segment; if there are n CRR image bitstream segments in the coded image bitstream, the process of continuing to perform a decoding operation on the coded image bitstream includes: if there are n CRR image bitstream segments in the coded image bitstream, then using the reconstructed CRR image as the currently effective reconstructed CRR image, and the reconstructed CRR image is obtained based on the cached n CRR image bitstream segments.

[0041] In one example, n cached CRR image bitstream segments may be decoded separately to obtain n reconstructed CRR sub-images, which are then spliced ​​together to obtain the currently valid reconstructed CRR image. In another example, n cached CRR image bitstream segments may be spliced ​​together, and the spliced ​​CRR image bitstream may be decoded to obtain the currently valid reconstructed CRR image.

[0042] The advantageous effect is that CRR image bitstream segments are directly cached, and decoding operations are performed only after n CRR image bitstream segments are cached to obtain a reconstructed CRR image, without having to cache each reconstructed CRR sub-image. Since the cache space occupied by CRR image bitstream segments is smaller than the cache space occupied by the reconstructed CRR sub-image, a certain amount of cache space can be saved.

[0043] In one possible implementation, the preset syntax identifier includes quantity information, and the process of determining whether there are n CRR image bitstream segments in the coded image bitstream according to the preset syntax identifier includes: starting from counting the first CRR image bitstream segment received in the coded image bitstream; when receiving the target bitstream, if the number of received CRR image bitstream segments is n, determining that there are n CRR image bitstream segments in the coded image bitstream; if the number of received CRR image bitstream segments is less than n, determining that there are not n CRR image bitstream segments in the coded image bitstream; the target bitstream is a display image bitstream and the reference image is a CRR image, or the preset syntax identifier also includes image information, and the target bitstream is the bitstream of the target image indicated by the image information.

[0044] In one possible implementation, the preset syntax identifier includes image information, and the process of determining whether there are n CRR image bit stream segments in the encoded image bit stream based on the preset syntax identifier includes: when receiving the bit stream of the target image indicated by the image information, determining the size of the reconstructed CRR image, the reconstructed CRR image being obtained by decoding the received CRR image bit stream segments; when the size of the reconstructed CRR image is equal to the size of the CRR image, determining that there are n CRR image bit stream segments in the encoded image bit stream; when the size of the reconstructed CRR image is smaller than the size of the CRR image, determining that there are not n CRR image bit stream segments in the encoded image bit stream.

[0045] In one possible implementation, the preset syntax identifier includes position information, and the process of determining whether there are n CRR image bit stream segments in the coded image bit stream according to the preset syntax identifier includes: when a CRR image bit stream segment is received at each position indicated by the position information, determining that there are n CRR image bit stream segments in the coded image bit stream; when a CRR image bit stream segment is not received at at least one position indicated by the position information, determining that there are not n CRR image bit stream segments in the coded image bit stream.

[0046] In a third aspect, the present application provides an encoding device, comprising:

[0047] an acquisition module, configured to acquire a cross-random access point reference CRR image corresponding to a plurality of display images;

[0048] an encoding module, configured to perform an encoding operation on the CRR image and the plurality of display images to obtain an encoded image bit stream, wherein the encoded image bit stream comprises: n interleaved CRR image bit stream segments and the plurality of display image bit streams, where n is an integer greater than 1;

[0049] The encoding module is further configured to encode a preset syntax identifier into a coded image bit stream, where the preset syntax identifier includes at least one of the following: quantity information, image information, and position information, where the quantity information indicates n, the image information indicates a target image, the bit stream of the target image is transmitted after the n CRR image bit stream segments, and the position information indicates the position of the n CRR image bit streams in the coded image bit stream;

[0050] The reference image of the display image includes: a reconstructed display image and / or a currently effective reconstructed CRR image, the reconstructed display image is obtained by encoding the display image, and the currently effective reconstructed CRR image is obtained by encoding the CRR image.

[0051] In a possible implementation, the preset syntax identifier is located in a high-level parameter of a coded image bitstream, where the high-level parameter includes at least one of the following: an SPS, a PPS, and an image header.

[0052] In one possible implementation, the target image is: the first display image that uses a CRR image as a reference image, the first display image that uses only a CRR image as a reference image, a display image whose bitstream is transmitted after n CRR image bitstream segments, or a CRR image whose bitstream is transmitted after n CRR image bitstream segments.

[0053] In one possible implementation, the image information includes at least one of the following: a frame number of the target image, a decoding number of the bit stream of the target image, a frame number difference between the target image and the CRR image, or a decoding number difference between the bit stream of the target image and the bit stream of the CRR image.

[0054] In one possible implementation, the encoding module is specifically configured to segment a CRR image to obtain n CRR sub-images; interleave the n CRR sub-images between a plurality of display images to obtain an image sequence to be encoded; and sequentially encode the CRR sub-images and display images in the image sequence to be encoded to obtain an encoded image bit stream.

[0055] In one possible implementation, the encoding module is also used to cache reconstructed CRR sub-images, which are obtained by encoding the CRR sub-images. When n reconstructed CRR sub-images are cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image.

[0056] In one possible implementation, the encoding module is also used to remove the currently effective reconstructed CRR image when starting to perform an encoding operation on the first CRR sub-image in the image sequence to be encoded; when performing an encoding operation on a target display image among multiple display images, the reference image of the target display image includes the reconstructed display image, and the target display image includes: the display image between the first CRR sub-image and the last CRR sub-image in the image sequence to be encoded.

[0057] In one possible implementation, the encoding module is also used to update the target area in the currently effective reconstructed CRR image to the reconstructed CRR sub-image when performing an encoding operation on the CRR sub-image to obtain a reconstructed CRR sub-image; the positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the reconstructed CRR sub-image and the corresponding CRR image.

[0058] In one possible implementation, the encoding module is further used to cache the CRR image bit stream segments output each time; when n CRR image bit stream segments are cached, the n cached CRR image bit stream segments are respectively decoded and reconstructed to obtain n reconstructed CRR sub-images; and the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image.

[0059] In one possible implementation, the encoding module is specifically used to perform encoding operations on the CRR image to obtain a CRR image bit stream; split the CRR image bit stream to obtain n CRR image bit stream segments; perform encoding operations on multiple display images in sequence to obtain multiple display image bit streams; and interleave the n CRR image bit stream segments between multiple display image bit streams to obtain an encoded image bit stream.

[0060] In one possible implementation, the encoding module is also used to cache a target reconstructed CRR image, which is obtained by encoding the CRR image; when outputting the last CRR image bit stream segment among n CRR image bit stream segments, the cached target reconstructed CRR image is used as the currently effective reconstructed CRR image.

[0061] In a possible implementation, the encoding module is further configured to cache the CRR image bit stream; when outputting the last CRR image bit stream segment among n CRR image bit stream segments, the cached CRR image bit stream is decoded and reconstructed to obtain the currently valid reconstructed CRR image.

[0062] In a fourth aspect, the present application provides a decoding device, comprising:

[0063] a transceiver module, configured to receive a coded image bit stream, the coded image bit stream comprising interleaved and ordered cross-random access point reference CRR image bit stream segments and a display image bit stream;

[0064] A decoding module, used for decoding the coded image bit stream;

[0065] The decoding module is further configured to obtain a preset syntax identifier from the coded image bit stream, where the preset syntax identifier includes at least one of the following: quantity information, image information, and position information, where the quantity information indicates n, the image information indicates a target image, the bit stream of the target image is transmitted after the n CRR image bit stream segments, and the position information indicates the position of the n CRR image bit stream segments in the coded image bit stream;

[0066] The decoding module is further configured to determine whether n CRR image bit stream segments exist in the coded image bit stream according to a preset syntax identifier, where n CRR image bit stream segments correspond to one CRR image, and n is an integer greater than 1;

[0067] The decoding module is further configured to continue decoding the coded image bit stream to obtain a reconstructed display image if n CRR image bit stream segments exist in the coded image bit stream;

[0068] The reference images of the display image bit stream include: a reconstructed display image and / or a currently valid reconstructed CRR image, the reconstructed display image is obtained by decoding the display image bit stream, and the currently valid reconstructed CRR image is obtained by decoding the CRR image bit stream segment.

[0069] In one possible implementation, the decoding module is specifically used to perform a decoding operation on each received CRR image bit stream segment to obtain and cache a reconstructed CRR sub-image; if there are n CRR image bit stream segments in the encoded image bit stream, then when n reconstructed CRR sub-images are cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image.

[0070] In one possible implementation, the decoding module is further used to remove the currently effective reconstructed CRR image when performing a decoding operation on the first CRR image bitstream segment; the reference image of the target display image bitstream in the multiple display image bitstreams includes the reconstructed display image, and the target display image bitstream includes: the display image bitstream between the first CRR image bitstream segment and the last CRR image bitstream segment in the encoded image bitstream.

[0071] In one possible implementation, the decoding module is specifically used to perform a decoding operation on the received CRR image bit stream fragment to obtain a reconstructed CRR sub-image; if there are n CRR image bit stream fragments in the encoded image bit stream, the target area in the currently effective reconstructed CRR image is updated to the obtained reconstructed CRR sub-image, and the positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image.

[0072] In one possible implementation, the decoding module is specifically used to cache the CRR image bit stream segments received each time; if there are n CRR image bit stream segments in the encoded image bit stream, the reconstructed CRR image is used as the currently effective reconstructed CRR image, and the reconstructed CRR image is obtained based on the cached n CRR image bit stream segments.

[0073] In one possible implementation, the preset syntax identifier includes quantity information, and the decoding module is specifically used to start counting from the first CRR image bit stream segment received in the coded image bit stream; when the target bit stream is received, if the number of received CRR image bit stream segments is n, it is determined that there are n CRR image bit stream segments in the coded image bit stream; if the number of received CRR image bit stream segments is less than n, it is determined that there are not n CRR image bit stream segments in the coded image bit stream; the target bit stream is a display image bit stream and the reference image is a CRR image, or the preset syntax identifier also includes image information, and the target bit stream is the bit stream of the target image indicated by the image information.

[0074] In one possible implementation, the preset syntax identifier includes image information and a decoding module, which is specifically used to determine the size of the reconstructed CRR image when receiving the bit stream of the target image indicated by the image information, and the reconstructed CRR image is obtained by decoding the received CRR image bit stream fragments; when the size of the reconstructed CRR image is equal to the size of the CRR image, it is determined that there are n CRR image bit stream fragments in the encoded image bit stream; when the size of the reconstructed CRR image is smaller than the size of the CRR image, it is determined that there are no n CRR image bit stream fragments in the encoded image bit stream.

[0075] In one possible implementation, the preset syntax identifier includes position information, and the decoding module is specifically used to determine that there are n CRR image bit stream segments in the encoded image bit stream when a CRR image bit stream segment is received at each position indicated by the position information; and when no CRR image bit stream segment is received at at least one position indicated by the position information, determine that there are no n CRR image bit stream segments in the encoded image bit stream.

[0076] In a fifth aspect, the present application provides a coding device, comprising: one or more processors; a memory for storing one or more computer programs or instructions; when the one or more computer programs or instructions are executed by one or more processors, the one or more processors implement a method as described in any one of the first aspects.

[0077] In a sixth aspect, the present application provides a decoding device, comprising: one or more processors; a memory for storing one or more computer programs or instructions; when the one or more computer programs or instructions are executed by one or more processors, the one or more processors implement a method as described in any one of the second aspects.

[0078] In a seventh aspect, the present application provides an encoding device, comprising a processor for executing the method as described in any one of the first aspects.

[0079] In an eighth aspect, the present application provides a decoding device, comprising a processor for executing the method as described in any one of the second aspects.

[0080] In a ninth aspect, the present application provides an electronic device comprising: a processing circuit and an interface circuit; wherein the interface circuit is used to couple with a memory outside the encoding and decoding device and provide a communication interface for the processing circuit to access the memory; the processing circuit is used to execute program instructions in the memory to implement any method described in any one of the first to second aspects.

[0081] In a specific implementation, the electronic device may be a chip, the input circuit may be an input pin, the output circuit may be an output pin, and the processing circuit may be a transistor, a gate circuit, a trigger, or various logic circuits. The input signal received by the input circuit may be, for example, but not limited to, received and input by a receiver, and the signal output by the output circuit may be, for example, but not limited to, output to and transmitted by a transmitter. The input circuit and the output circuit may be the same circuit, which functions as an input circuit and an output circuit at different times. The embodiments of the present application do not limit the specific implementation of the processor and various circuits.

[0082] In one implementation, the electronic device may be a wireless communication device, that is, a computer device that supports wireless communication functions. Specifically, the wireless communication device may be a terminal such as a smartphone, or a wireless access network device such as a base station. The system chip may also be referred to as a system on chip (SoC), or simply as an SoC chip. The communication chip may include a baseband processing chip and a radio frequency processing chip. The baseband processing chip is sometimes also referred to as a modem or baseband chip. The radio frequency processing chip is sometimes also referred to as a radio frequency transceiver or radio frequency chip. In a physical implementation, some or all of the chips in the communication chip may be integrated inside the SoC chip. For example, the baseband processing chip is integrated into the SoC chip, and the radio frequency processing chip is not integrated with the SoC chip. The interface circuit may be the radio frequency processing chip in the wireless communication device, and the processing circuit may be the baseband processing chip in the wireless communication device.

[0083] In another implementation, the electronic device may be a component of a wireless communication device, such as an integrated circuit product such as a system-on-chip (SoC) or a communication chip. The interface circuit may be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip or chip system. The processor may also be embodied as a processing circuit or a logic circuit.

[0084] In a tenth aspect, the present application provides a computer-readable storage medium, in which program code is stored. When the program code is executed by a processor, the method described in any one of the first to second aspects is implemented.

[0085] In an eleventh aspect, the present application provides a chip, comprising: at least one processor. The at least one processor is configured to execute the method according to any one of the first to second aspects.

[0086] Optionally, the chip further includes a memory, and at least one processor is configured to execute code in the memory. When the at least one processor executes the code, the chip implements the method according to any one of the first and second aspects.

[0087] Optionally, the chip may also be an integrated circuit.

[0088] In a twelfth aspect, the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to implement the method as described in any one of the first to second aspects. BRIEF DESCRIPTION OF THE DRAWINGS

[0089] FIG1 is an exemplary block diagram of a decoding system provided in an embodiment of the present application;

[0090] FIG2 is a schematic diagram of a video sequence provided in an embodiment of the present application;

[0091] FIG3 is a schematic diagram of a flow chart of an encoding method provided in an embodiment of the present application;

[0092] FIG4 is a schematic diagram of a flow chart of a decoding method provided in an embodiment of the present application;

[0093] FIG5 is a schematic diagram of an encoding and decoding process provided by an embodiment of the present application;

[0094] FIG6 is a flow chart of another encoding method provided in an embodiment of the present application;

[0095] FIG7 is a schematic diagram of a flow chart of another encoding method provided in an embodiment of the present application;

[0096] FIG8 is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application;

[0097] FIG9 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0098] FIG10 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0099] FIG11 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0100] FIG12 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0101] FIG13 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0102] FIG14 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0103] FIG15 is a block diagram of an encoding device provided in an embodiment of the present application;

[0104] FIG16 is a block diagram of a decoding device provided in an embodiment of the present application;

[0105] FIG17 is a schematic structural diagram of an electronic device provided in an embodiment of the present application;

[0106] FIG18 is a schematic structural diagram of a coding and decoding device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0107] To make the objectives, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments of this application, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this application.

[0108] The terms "first," "second," and the like in the description, embodiments, claims, and drawings of this application are used solely for descriptive purposes and are not to be construed as indicating or implying relative importance or order. Furthermore, the terms "including," "having," and any variations thereof are intended to cover non-exclusive inclusions, such as, for example, inclusion of a series of steps or units. A method, system, product, or apparatus is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0109] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0110] FIG1 is an exemplary block diagram of a decoding system provided in an embodiment of the present application, such as a video decoding system 10 (or simply decoding system 10 ) that can utilize the techniques of the present application. The video encoder 20 (or simply encoder 20 ) and video decoder 30 (or simply decoder 30 ) in the video decoding system 10 represent devices that can be used to perform various techniques according to various examples described in this application.

[0111] As shown in FIG. 1 , a decoding system 10 includes a source device 12 for providing encoded image data 21 such as an encoded image to a destination device 14 for decoding the encoded image data 21 .

[0112] The source device 12 includes an encoder 20 , and optionally, may include an image source 16 , a preprocessor (or preprocessing unit) 18 such as an image preprocessor, and a communication interface (or communication unit) 22 .

[0113] Image source 16 may include or may be any type of image capture device for capturing real-world images, etc., and / or any type of image generation device, such as a computer graphics processor for generating computer-animated images or any type of device for acquiring and / or providing real-world images, computer-generated images (e.g., screen content, virtual reality (VR) images, and / or any combination thereof (e.g., augmented reality (AR) images). The image source may be any type of memory or storage that stores any of the above images.

[0114] In order to distinguish the processing performed by the pre-processor (or pre-processing unit) 18 , the image (or image data) 17 may also be referred to as a raw image (or raw image data) 17 .

[0115] The preprocessor 18 is configured to receive raw image data 17 and preprocess the raw image data 17 to obtain a preprocessed image (or preprocessed image data) 19. For example, the preprocessing performed by the preprocessor 18 may include cropping, color format conversion (e.g., from RGB to YCbCr), color grading, or denoising. It will be appreciated that the preprocessor 18 may be an optional component.

[0116] The video encoder (or encoder) 20 is configured to receive the pre-processed image data 19 and provide encoded image data 21 .

[0117] The communication interface 22 in the source device 12 can be used to receive the encoded image data 21 and send the encoded image data 21 (or any other processed version) to another device such as the destination device 14 or any other device through the communication channel 13 for storage or direct reconstruction.

[0118] The source device 12 may further include a memory (not shown in FIG. 1 ), which may be used to store at least one of the following data: original image data 17 , pre-processed image (or pre-processed image data) 19 , and encoded image data 21 .

[0119] The destination device 14 includes a decoder 30 and, in addition or alternatively, may include a communication interface (or communication unit) 28 , a post-processor (or post-processing unit) 32 , and a display device 34 .

[0120] The communication interface 28 in the destination device 14 is used to receive the encoded image data 21 (or any other processed version) directly from the source device 12 or from any other source device such as a storage device, for example, the storage device is a encoded image data storage device, and provide the encoded image data 21 to the decoder 30.

[0121] The communication interface 22 and the communication interface 28 can be used to send or receive encoded image data (or encoded data) 21 through a direct communication link between the source device 12 and the destination device 14, such as a direct wired or wireless connection, or through any type of network, such as a wired network, a wireless network or any combination thereof, any type of private network and public network or any combination thereof.

[0122] For example, the communication interface 22 may be used to encapsulate the encoded image data 21 into a suitable format such as a message, and / or process the encoded image data using any type of transmission coding or processing for transmission over a communication link or network.

[0123] The communication interface 28 corresponds to the communication interface 22 , and can be used, for example, to receive transmission data and process the transmission data using any type of corresponding transmission decoding or processing and / or decapsulation to obtain the encoded image data 21 .

[0124] Both the communication interface 22 and the communication interface 28 can be configured as a unidirectional communication interface as indicated by the arrow pointing from the source device 12 to the corresponding communication channel 13 of the destination device 14 in Figure 1, or a bidirectional communication interface, and can be used to send and receive messages, etc. to establish a connection, confirm and exchange any other information related to the communication link and / or data transmission such as encoded image data transmission, etc.

[0125] The video decoder (or decoder) 30 is configured to receive the encoded image data 21 and provide decoded image data (or decoded image data) 31 .

[0126] The post-processor 32 is configured to post-process the decoded image data 31 (also referred to as reconstructed image data), such as the decoded image, to obtain post-processed image data 33, such as the post-processed image. The post-processing performed by the post-processing unit 32 may include, for example, color format conversion (e.g., from YCbCr to RGB), color grading, cropping, or resampling, or any other processing for generating the decoded image data 31 for display on a display device 34, etc.

[0127] The display device 34 is configured to receive the post-processed image data 33 and display the image to a user or viewer. The display device 34 may be or include any type of display for displaying the reconstructed image, such as an integrated or external display screen or monitor. For example, the display screen may include a liquid crystal display (LCD), an organic light emitting diode (OLED) display, a plasma display, a projector, a micro-LED display, a liquid crystal on silicon (LCoS) display, a digital light processor (DLP), or any other type of display screen.

[0128] The destination device 14 may further include a memory (not shown in FIG. 1 ), which may be used to store at least one of the following data: the encoded image data 21 , the decoded image data 31 , and the post-processed image data 33 .

[0129] The decoding system 10 also includes a training engine 25, which is used to train the encoder 20 to process the input image or image region or image block, obtain a feature map of the input image or image region or image block, and obtain an estimated probability distribution of the feature map, and encode the feature map according to the estimated probability distribution.

[0130] The training engine 25 is further used to train the decoder 30 to obtain an estimated probability distribution of the code stream, decode the code stream according to the estimated probability distribution to obtain a feature map, and decode and reconstruct the feature map to obtain a reconstructed image.

[0131] Although FIG1 illustrates source device 12 and destination device 14 as separate devices, device embodiments may also include both source device 12 and destination device 14 or the functionality of both, that is, both source device 12 or the corresponding functionality and destination device 14 or the corresponding functionality. In these embodiments, source device 12 or the corresponding functionality and destination device 14 or the corresponding functionality may be implemented using the same hardware and / or software or through separate hardware and / or software, or any combination thereof.

[0132] According to the description, the existence and (accurate) division of different units or functions in the source device 12 and / or the destination device 14 shown in FIG. 1 may vary depending on actual devices and applications, which is obvious to those skilled in the art.

[0133] Before describing the embodiments of the present application, the terms and concepts used in the embodiments of the present application are first explained.

[0134] Reconstructed image: This refers to the lossy image obtained by decoding the encoded image bitstream, which can be displayed and played. It exists on both the encoder and decoder, and the reconstructed image on both ends is identical. On the encoder, the reconstructed image can be used as a reference image for the image to be encoded to perform inter-frame prediction encoding. On the decoder, the reconstructed image can be used as a reference image for the image to be decoded to perform inter-frame prediction decoding.

[0135] RAP: Random access point in video encoding. The encoded video bitstream includes at least one RAP. When random access occurs, the video bitstream before the RAP can be skipped, and the subsequent image bitstream can be decoded from the RAP and the reconstructed video image output by the decoder can be played. From the perspective of video playback, random access can be understood as dragging the progress bar of the player to achieve random jumps of the video when watching on-demand video (or local playback video); or when a black screen occurs due to packet loss when watching live broadcast, the client will access the video stream and continue to play the video when the next RAP arrives. RAP is usually an intra-coded picture (I) frame. The I frame only uses the information within the current frame for predictive coding to eliminate information redundancy in the spatial domain without relying on other frames.

[0136] RAS: A RAS includes all images from one RAP to the next. Images in a RAS are either forward-predicted (P) frames or bi-directionally interpolated prediction (B) frames. P and B frames use already coded images for temporal prediction to eliminate temporal redundancy.

[0137] For example, please refer to Figure 2, which is a schematic diagram of a video sequence provided in an embodiment of the present application. Figure 2 shows 11 video frames a1 to a11. Among them, a2, a6 and a10 are I frames and serve as RAP, all video frames between a2 and a6 are P frames and constitute RAS1, and all video frames between a6 and a10 are P frames and constitute RAS2. As can be seen from Figure 2, each P frame needs to be encoded with reference to the previous m video frames, where m is an integer greater than 1. For example, a3 can be encoded with reference to a2, and a4 can be encoded with reference to a2 and / or a3.

[0138] CRR encoding: When encoding a video frame in one RAS, video frames in other RASs other than the RAS can be referenced for encoding.

[0139] In most videos (such as movies or TV programs), many picture scenes appear alternately, and the picture scenes displayed at different times may be similar. The interval between two adjacent similar picture scenes is usually long, so the two adjacent similar picture scenes are in the same RAP but the interval is long, or the time correlation spans the RAP. For example, the video standard generally stipulates that the length of RAS is 1s or 2s, and the interval between two adjacent similar picture scenes is usually close to the length of RAS (for example, 0.7s) or greater than the length of RAS (for example, 3s). In addition, in video scenes such as security monitoring, the appearance of similar picture scenes usually lasts for a long time, so there will be two similar picture scenes in the same RAP but with a long interval, or the time correlation spans the RAP.

[0140] The embodiment of the present application provides a coding and decoding method, which can effectively reduce time domain redundancy and improve video coding performance when encoding videos with a high degree of scene repetition.

[0141] Please refer to FIG3 , which is a flowchart of an encoding method provided in an embodiment of the present application. The method can be applied to an encoder and may include the following steps:

[0142] 401. Acquire CRR images corresponding to multiple display images.

[0143] The multiple display images may be a plurality of continuous display images in a video sequence. The encoder may be provided with a preset duration, divide the video sequence into at least one video segment according to the preset duration, and obtain a CRR image corresponding to the video segment. The multiple display images may constitute a video segment. The preset duration may be greater than the length of the current RAS, for example, the preset duration may be 6 seconds, 7 seconds, or 10 seconds. Accordingly, the multiple display images include multiple RAPs, each of which may be a P frame or a B frame.

[0144] A reconstructed CRR image can be used as a reference image for multiple subsequent display images to be encoded. Optionally, any one of the multiple display images can be used as a CRR image corresponding to the multiple display images. Alternatively, CRR images corresponding to the multiple display images can be constructed based on the multiple display images. The embodiment of the present application does not limit the method for obtaining the CRR image.

[0145] 402. Perform encoding operations on the CRR image and multiple display images to obtain an encoded image bit stream, where the encoded image bit stream includes: n interleaved CRR image bit stream segments and multiple display image bit streams, where n is an integer greater than 1.

[0146] The coded image bit stream is a single-channel bit stream. When n CRR image bit stream segments are transmitted, the transmission order (ie, the encoder output order) is before the bit stream of the subsequent first display image that references the CRR image.

[0147] The CRR image is used to generate a reconstructed image, which can then be used as a reference image for subsequent encoded display images to perform inter-frame prediction encoding on the encoded display images. The CRR image does not need to be displayed. After encoding a display image in a video sequence, a display image bit stream and a reconstructed display image are obtained. It can be seen that in the embodiment of the present application, the reconstructed image includes two types: reconstructed display image and reconstructed CRR image.

[0148] The reference image of the display image includes: a reconstructed display image and / or a currently effective reconstructed CRR image. The currently effective reconstructed CRR image can be stored in the buffer space of the encoder, for example, in the DPB of the encoder. The currently effective reconstructed CRR image refers to the reconstructed CRR image that is in effect at the moment when the encoding operation is performed on each display image in the multiple display images.

[0149] When performing an encoding operation on each of a plurality of display images, at least one display image bitstream has been encoded, and accordingly, at least one reconstructed display image also exists. Optionally, any number of reconstructed display images among all currently obtained reconstructed display images can be used as reference images for the display image. For example, the reference image of the display image includes: at least one reconstructed display image obtained by the encoding operation performed on at least one display image that was most recently output. For example, when performing an encoding operation on the third display image among a plurality of display images, the current encoding obtains the first display image bitstream and the first reconstructed display image corresponding to the first display image, and the second display image bitstream and the second reconstructed display image corresponding to the second display image. Therefore, when performing an encoding operation on the third display image among a plurality of display images, the first reconstructed display image and the second reconstructed display image can be used as reference images for the third display image.

[0150] The currently valid reconstructed CRR image is obtained by encoding the CRR image. Optionally, it can be obtained when encoding a CRR image bitstream segment group. The CRR image bitstream segment group may include: the n most recently output CRR image bitstream segments, or the n most recently output CRR image bitstream segments corresponding to the same CRR image. The most recently output here refers to the most recently output at the time the encoding operation is performed on the display image.

[0151] During the encoding process of the entire video sequence, before the nth CRR image bitstream segment is output, there is no currently valid reconstructed CRR image. Therefore, for the display image bitstream output before the nth CRR image bitstream segment, the reference image used during encoding only includes the reconstructed display image.

[0152] Since n CRR image bit stream segments and multiple display image bit streams are interwoven into one coded image bit stream, the coded image bit stream can be transmitted using an existing transmission protocol and stored using an existing file format.

[0153] 403. Encode a preset syntax identifier into the coded image bit stream, where the preset syntax identifier includes at least one of the following: quantity information, image information, and position information, where the quantity information indicates n, the image information indicates a target image, and the bit stream of the target image is transmitted after n CRR image bit stream segments, and the position information indicates the positions of the n CRR image bit streams in the coded image bit stream.

[0154] Encoding the preset syntax identifier into the coded image bit stream may be directly adding the preset syntax identifier to the coded image bit stream, or adding the preset syntax identifier to the coded image bit stream after encoding and compression, which is not limited in the embodiments of the present application.

[0155] The preset syntax identifier is used by the decoder to determine whether a CRR slice is lost. The preset syntax identifier can be located in the high-level parameters of the coded image bitstream. The high-level parameters include at least one of the following: SPS, PPS, and picture header. The SPS includes a set of global parameters for the video coding sequence, such as the color space, the size of each frame (width and height), and the encoding level. The PPS includes coding parameters for at least one frame, such as the quantization matrix and filter parameters. The picture header includes coding parameters for a frame, such as the frame number.

[0156] For example, for SPS, one SPS may be placed before every N CRR image bitstream segments, or one SPS may be placed before the entire bitstream. For PPS, one PPS may be placed before every multiple bitstreams. For picture header, one picture header may be placed before the first CRR image bitstream segment, and one slice header or segment header may be placed before other non-first CRR image bitstream segments.

[0157] Since the decoder parses the higher-level parameters after receiving the bitstream, placing the preset syntax identifier in the higher-level parameters enables the decoder to quickly determine whether there are any missing CRR image bitstream segments. This allows the decoder to react promptly to transmission failures, enhancing the robustness of the encoding and decoding process.

[0158] Among them, the target image can be: the first display image that uses the CRR image as a reference image (the image header of the display image has a CRR image enabling first image flag), the first display image that only uses the CRR image as a reference image, a display image whose bitstream is transmitted after n CRR image bitstream segments, or a CRR image whose bitstream is transmitted after n CRR image bitstream segments. Before transmitting the bitstream of the target image, the transmission of n CRR image bitstream segments needs to be completed. For example, assuming that the target image is a CRR image, the bitstream segments of the aforementioned acquired CRR image and the bitstream segments of the target image should not be interleaved for transmission, that is, the transmission of the bitstream segments of the target image should not be started before all the bitstream segments of the aforementioned acquired CRR image are encoded and transmitted.

[0159] The image information may be: the frame number of the target image, the decoding number of the target image's bit stream, the frame number difference between the target image and the CRR image, or the decoding number difference between the target image's bit stream and the CRR image's bit stream, which is not limited in this embodiment of the present application.

[0160] The position information may include a position identifier for each CRR image bitstream segment. The position identifier of the CRR image bitstream segment is used to indicate at which position the next CRR image bitstream segment will be transmitted. The position identifier of the CRR image bitstream segment can be: a frame number (referring to the frame number of a display image corresponding to a display image bitstream before or after the CRR image bitstream segment), a decoding number (referring to the decoding number of a display image bitstream before or after the CRR image bitstream segment), the difference between the frame number and the frame number corresponding to the next CRR image bitstream segment, or the difference between the decoding number and the decoding number corresponding to the next CRR image bitstream segment, etc., as long as it can indicate at which position the CRR image bitstream segment will be transmitted.

[0161] Optionally, the preset syntax identifier may further include bitstream segment information, where the bitstream segment information is used to indicate that each CRR image bitstream segment is used as a display image of a reference image.

[0162] In summary, the encoding method provided in the embodiment of the present application first obtains CRR images corresponding to multiple display images, and then performs encoding operations on the CRR images and multiple display images to obtain an encoded image bit stream, the encoded image bit stream includes: n CRR image bit stream segments and multiple display image bit streams in an interleaved order, n is an integer greater than 1, and the reference image of the display image includes: a reconstructed display image and / or a currently effective reconstructed CRR image, the reconstructed display image is obtained by performing an encoding operation on the previous display image, and the currently effective reconstructed CRR image is obtained by performing an encoding operation on the CRR image. The currently effective reconstructed CRR image can be used as a reference image for the current display image to be encoded, and the currently effective reconstructed CRR image is obtained by performing an encoding operation on the CRR image. Since the CRR image corresponds to multiple display images, and the multiple display images can include multiple RAPs, cross-RAP reference can be achieved. In addition, n CRR image bitstream segments and multiple display image bitstreams are interwoven into one bitstream for transmission. In this way, all processes can be completed inside the encoder, and the entire encoding process can be completed without the cooperation of the system layer, thereby achieving cross-RAP reference while realizing the decoupling of the encoder and the system layer.

[0163] And a preset syntax identifier is encoded into the coded image bit stream, and the preset syntax identifier includes at least one of the following: quantity information, image information, and position information. The quantity information indicates n, the image information indicates the target image, and the bit stream of the target image is transmitted after n CRR image bit stream segments. The position information indicates the position of the n CRR image bit streams in the coded image bit stream. The preset syntax identifier is used by the decoder side to determine whether there is a loss of CRR slices. The decoder can determine whether all CRR image bit stream segments corresponding to a CRR image have been received, so that the codec layer and the system layer can cooperate better, so that the decoder can respond to transmission failures in a timely manner, thereby enhancing the robustness of the coding and decoding process.

[0164] Please refer to FIG4 , which is a flowchart of a decoding method provided in an embodiment of the present application. The method can be applied to a decoder and may include the following steps:

[0165] 501. Receive a coded image bit stream, where the coded image bit stream includes interleaved and ordered CRR image bit stream segments and a display image bit stream.

[0166] 502. Perform a decoding operation on the coded image bit stream.

[0167] Each time a display image bitstream is decoded, a reconstructed display image is generated. The reference images in the display image bitstream include: the reconstructed display image and / or the currently valid reconstructed CRR image. The currently valid reconstructed CRR image can be stored in the decoder's buffer space, such as in the decoder's DPB.

[0168] The reference image used when decoding any display image bitstream in the coded image bitstream is the same as the reference image used by the encoder when encoding the display image bitstream. Each display image bitstream may carry a reference image identifier. When decoding the display image bitstream, the decoder determines the reference image for the display image bitstream based on the reference image identifier carried by the bitstream.

[0169] The reconstructed display image is obtained by decoding a previous display image bit stream. A reconstructed display image is obtained by decoding a display image bit stream.

[0170] The currently effective reconstructed CRR image is obtained by decoding the previous CRR image bitstream segment. Optionally, the currently effective reconstructed CRR image can be obtained by decoding a CRR image bitstream segment group. The CRR image bitstream segment group includes: the first n CRR image bitstream segments of the display image bitstream, or the first n CRR image bitstream segments corresponding to the same CRR image in the display image bitstream. In the decoding process of the coded image bitstream corresponding to the entire video sequence, before the decoding of the received n-th CRR image bitstream segment is completed, there is no currently effective reconstructed CRR image. Therefore, for the display image bitstream before the n-th CRR image bitstream segment, the reference image used during decoding only includes the reconstructed display image.

[0171] 503. Obtain a preset syntax identifier from the coded image bit stream.

[0172] The preset syntax identifier includes at least one of the following: quantity information, image information, and position information, the quantity information indicates n, the image information indicates the target image in the coded image bit stream that is transmitted after n CRR image bit stream segments, and the position information indicates the positions of the n CRR image bit stream segments in the coded image bit stream.

[0173] When the preset syntax identifier includes only quantity information, the decoder parses the quantity information (indicating n) from the coded image bitstream upon receiving the first CRR image bitstream segment of the coded image bitstream. When the preset syntax identifier includes only image information, the decoder parses the image information (indicating the target image) from the coded image bitstream upon receiving the first CRR image bitstream segment of the coded image bitstream. All n CRR image bitstream segments must be received before the bitstream of the target image. When the preset syntax identifier includes only position information, the decoder parses the position information from the coded image bitstream upon receiving the first CRR image bitstream segment of the coded image bitstream.

[0174] 504. Determine whether n CRR image bit stream segments exist in the coded image bit stream according to a preset syntax identifier, where n CRR image bit stream segments correspond to one CRR image, and n is an integer greater than 1.

[0175] After the decoder obtains the number information from the coded image bitstream, it starts counting from the first CRR image bitstream segment received in the coded image bitstream. That is, the counter starts counting when the first CRR image bitstream segment is received. It then begins receiving display image bitstreams and CRR image bitstream segments, and the counter increments by 1 for each CRR image bitstream segment received.

[0176] Upon receiving the target bitstream, if the number of received CRR image bitstream segments is n (i.e., the value of the counter is n), it is determined that n CRR image bitstream segments exist in the coded image bitstream, and the CRR image bitstream reception is successful. If the number of received CRR image bitstream segments is less than n, it is determined that n CRR image bitstream segments do not exist in the coded image bitstream, and the CRR image bitstream reception fails.

[0177] The target bitstream is a display image bitstream and the reference image is a CRR image, or the preset syntax identifier further includes image information, and the target bitstream is a bitstream of a target image indicated by the image information.

[0178] After successfully receiving the CRR image bitstream segment corresponding to the previous CRR image, the decoder may default the next received CRR image bitstream segment to the first CRR image bitstream segment. Alternatively, if the coded image bitstream only has a picture header before the first CRR image bitstream segment, the decoder may regard the CRR image bitstream segment after the picture header as the first CRR image bitstream segment. Alternatively, if the CRR image bitstream segments corresponding to a CRR image are transmitted in sequence, the decoder may regard the CRR image bitstream segment with the smallest sequence number as the first CRR image bitstream segment.

[0179] After parsing the image information (indicating the target image) from the coded image bitstream, the decoder decodes the coded image bitstream. Upon receiving the bitstream of the target image, the decoder determines the size of the reconstructed CRR image. The reconstructed CRR image is obtained by decoding the received CRR image bitstream segments. If the size of the reconstructed CRR image is equal to the size of the CRR image, the decoder determines that n CRR image bitstream segments exist in the coded image bitstream, and the CRR image bitstream is successfully received. If the size of the reconstructed CRR image is smaller than the size of the CRR image, the decoder determines that n CRR image bitstream segments do not exist in the coded image bitstream, and the CRR image bitstream is unsuccessfully received.

[0180] After parsing the position information from the coded image bitstream, the decoder determines that n CRR image bitstream segments exist in the coded image bitstream when a CRR image bitstream segment is received at each position indicated by the position information, and the CRR image bitstream reception is successful. If a CRR image bitstream segment is not received at at least one position indicated by the position information, the decoder determines that n CRR image bitstream segments do not exist in the coded image bitstream, and the CRR image bitstream reception fails.

[0181] 505. If there are n CRR image bit stream segments in the coded image bit stream, continue to perform a decoding operation on the coded image bit stream to obtain a reconstructed display image.

[0182] If n CRR image bitstream segments do not exist in the coded image bitstream, the decoder may determine that a CRR image bitstream reception error has occurred, and transmission error processing may be performed. Transmission error processing may include discarding or skipping a display image bitstream composed of images obtained by decoding the reference image from the lost CRR image bitstream segments, and requesting the encoder to retransmit the lost CRR image bitstream segments, etc., which is not limited in the present embodiment.

[0183] In summary, the decoding method provided in the embodiment of the present application performs a decoding operation on a received coded image bitstream, where the coded image bitstream includes interleaved CRR image bitstream segments and a display image bitstream, obtains a preset syntax identifier from the coded image bitstream, and determines whether there are n CRR image bitstream segments in the coded image bitstream based on the preset syntax identifier of the coded image bitstream, where the n CRR image bitstream segments correspond to one CRR image, and then, if there are n CRR image bitstream segments in the coded image bitstream, continues to perform a decoding operation on the coded image bitstream to obtain a reconstructed display image, where the reference image of the display image bitstream includes: a reconstructed display image and / or a currently effective reconstructed CRR image, where the reconstructed display image is obtained by decoding the previous display image bitstream, and the currently effective reconstructed CRR image is obtained by decoding the previous CRR image bitstream segment. The currently valid reconstructed CRR image can be used as a reference image for the current display image bitstream to be decoded. The currently valid reconstructed CRR image is obtained based on the CRR image bitstream sub-segment, and the CRR image bitstream sub-segment is obtained by the encoding end based on the CRR image. Since the CRR image corresponds to multiple display images, and multiple display images can include multiple RAPs, cross-RAP reference can be achieved. In addition, n CRR image bitstream segments and multiple display image bitstreams are interwoven into one bitstream and transmitted to the decoder. In this way, all processes can be completed within the decoder, and the entire decoding process can be completed without the cooperation of the system layer, thereby achieving cross-RAP reference while realizing the decoupling of the decoder and the system layer.

[0184] And according to the preset syntax identifier, it can be determined whether there is a lost CRR image bit stream segment, so that the codec layer and the system layer can cooperate better, so that the decoder can respond to the transmission failure in time, and the robustness of the coding and decoding process is enhanced.

[0185] For example, please refer to Figure 5, which is a schematic diagram of a coding and decoding process provided by an embodiment of the present application. The encoder encodes the CRR image and multiple display images to obtain a coded image bit stream and sends the coded image bit stream to the decoder. Figure 5 is illustrated by taking three CRR image bit stream segments b1 to b3 (n=3) and five display image bit streams c1 to c5 as examples. The decoder decodes in sequence according to the order of each bit stream in the coded image bit stream to obtain five reconstructed display images c1′ to c5′ and a reconstructed CRR image. The five reconstructed display images are used for display, and the reconstructed CRR image is only used as a reference image when decoding the display image bit stream and is not used for display.

[0186] In one implementation, the CRR image may be first segmented to obtain n CRR sub-images, and then the CRR sub-images may be encoded.

[0187] For example, please refer to FIG6 , which is a flowchart of another encoding method provided in an embodiment of the present application. The method may include the following process:

[0188] 601. Acquire CRR images corresponding to multiple display images.

[0189] This process can refer to the aforementioned process 401, and will not be described in detail in this embodiment of the present application.

[0190] 602. Split the CRR image to obtain n CRR sub-images, where n is an integer greater than 1.

[0191] 603. Interleave the n CRR sub-images between multiple display images to obtain an image sequence to be encoded.

[0192] In the sequence of images to be encoded, the last image is a display image, that is, all CRR images are located before the last display image.

[0193] Optionally, one or more CRR sub-images may be interspersed between every two display images, as long as the n CRR sub-images are interleaved between multiple display images. The embodiment of the present application does not limit the interleaving method.

[0194] 604. Perform encoding operations on the CRR sub-images and the display images in the image sequence to be encoded in sequence to obtain an encoded image bit stream.

[0195] The order of the display picture bitstreams in the coded picture bitstream is the same as the order of the corresponding display pictures in the image sequence to be coded. The order of the CRR sub-picture bitstreams in the coded picture bitstream is the same as the order of the corresponding CRR sub-pictures in the image sequence to be coded.

[0196] In this implementation, there are various coding examples for generating the currently effective reconstructed CRR image, which are described below.

[0197] Coding example 1, after encoding each CRR sub-image, a CRR image bitstream segment and a reconstructed CRR sub-image are obtained. The encoder caches each reconstructed CRR sub-image obtained, for example, caches the reconstructed CRR sub-image in the DPB of the encoder. When there are n reconstructed CRR sub-images cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image. If there is an effective reconstructed CRR image before splicing the n reconstructed CRR sub-images, the last effective reconstructed CRR image is removed from the cache space when splicing the n reconstructed CRR sub-images to obtain the currently effective reconstructed CRR image. The CRR image bitstream segment group in this example includes: the latest output n CRR image bitstream segments corresponding to the same CRR image.

[0198] Optionally, the first display image that selects the currently valid reconstructed CRR image as the reference image may be marked as the first enabled image of the currently valid reconstructed CRR image.

[0199] Coding Example 2, based on the aforementioned coding example 1, when the encoding of the first CRR sub-image in the image sequence to be encoded begins, if there is a currently effective reconstructed CRR image (referring to the reconstructed CRR image that is in effect at the moment when the encoding of the first CRR sub-image in the image sequence to be encoded begins), the currently effective reconstructed CRR image is removed (the currently effective reconstructed CRR image is removed from the cache space). When the encoding operation is performed on the target display image among multiple display images, the reference image of the target display image includes the reconstructed display image, and the target display image includes: the display image between the first CRR sub-image and the last CRR sub-image in the image sequence to be encoded. Since there is no reconstructed CRR image in effect when encoding the target display image, the reference image of the target display image only includes the reconstructed display image.

[0200] In this encoding example, when encoding from the first CRR sub-image to the last CRR sub-image in the to-be-encoded image sequence, there is no need to cache the last valid reconstructed CRR image, thereby saving cache space for one frame of image.

[0201] Coding example 3, when performing an encoding operation on a CRR sub-image to obtain a reconstructed CRR sub-image, if there is a currently effective reconstructed CRR image, the target area in the currently effective reconstructed CRR image (referring to the reconstructed CRR image that is effective at the moment when the encoding operation is performed on the CRR sub-image to obtain the reconstructed CRR sub-image) is updated to the obtained reconstructed CRR sub-image, and the currently effective reconstructed CRR image is obtained. The positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image. In this example, the CRR image bitstream segment group includes: the latest output n CRR image bitstream segments.

[0202] In this encoding example, after obtaining a reconstructed CRR sub-image, the reconstructed CRR sub-image is not cached. Instead, the target area in the currently effective reconstructed CRR image is directly replaced with the reconstructed CRR sub-image, which can save the cache occupied by the reconstructed CRR sub-image.

[0203] Coding example 4, the encoder caches the CRR image bitstream segments output each time (for example, cached in the DPB of the encoder). When there are n CRR image bitstream segments cached, the cached n CRR image bitstream segments are decoded and reconstructed respectively to obtain n reconstructed CRR sub-images. The n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image. That is, the encoding operation of the encoder on multiple display images and CRR images also includes decoding and reconstruction of the n CRR image bitstream segments. If there is a reconstructed CRR image that is in effect before the CRR image bitstream is decoded and reconstructed, the last effective reconstructed CRR image is removed from the cache space when the CRR image bitstream is decoded and reconstructed to obtain the currently effective reconstructed CRR image. In this example, the CRR image bitstream segment group includes: the latest output n CRR image bitstream segments corresponding to the same CRR image.

[0204] Optionally, the first display image that selects the currently valid reconstructed CRR image as the reference image may be marked as the first enabled image of the currently valid reconstructed CRR image.

[0205] In this encoding example, CRR image bitstream segments are directly cached, and decoding and reconstruction are performed after caching n CRR image bitstream segments to obtain a reconstructed CRR image, without caching each reconstructed CRR sub-image. Because the cache space occupied by CRR image bitstream segments is smaller than that occupied by reconstructed CRR sub-images, a certain amount of cache space can be saved.

[0206] In another implementation, the CRR image may be encoded to obtain CRR image bitstream segments, and then the CRR image bitstream segments may be segmented. For example, please refer to FIG7 , which is a flowchart of another encoding method provided in an embodiment of the present application. The method may include the following steps:

[0207] 701. Acquire CRR images corresponding to multiple display images.

[0208] This process can refer to the aforementioned process 401, and will not be described in detail in this embodiment of the present application.

[0209] 702. Perform encoding operation on the CRR image to obtain a CRR image bit stream.

[0210] 703. Split the CRR image bit stream to obtain n CRR image bit stream segments, where n is an integer greater than 1.

[0211] 704. Perform encoding operations on the multiple display images in sequence to obtain multiple display image bit streams.

[0212] 705. Interleave the n CRR image bit stream segments between multiple display image bit streams to obtain a coded image bit stream.

[0213] In the coded image bit stream, the last image bit stream is the display image bit stream, that is, all CRR image bit streams are located before the last display image bit stream.

[0214] Optionally, one or more CRR image bit stream segments may be inserted between every two display image bit streams, as long as n CRR image bit stream segments are interleaved in multiple display image bit streams. The embodiment of the present application does not limit the interleaving method.

[0215] It should be noted that processes 704 and 705 can be performed simultaneously. The encoder can predetermine the order of each CRR image bitstream segment in the subsequent coded image bitstream, and determine the currently effective reconstructed CRR image based on the order. Only when n CRR image bitstream segments are output can the reconstructed CRR image obtained when the CRR image is encoded be used as the currently effective reconstructed CRR image. That is, in the coded image bitstream, when encoding the display image after the nth CRR image bitstream segment, the reconstructed CRR image obtained when the CRR image is encoded can be used as a reference image for inter-frame prediction encoding.

[0216] In this implementation, there are various examples for generating the currently effective reconstructed CRR image, which are described below.

[0217] In Coding Example 5, after encoding a CRR image, the encoder obtains a target reconstructed CRR image and a CRR image bitstream. The encoder caches the target reconstructed CRR image. When outputting the last CRR image bitstream segment among n CRR image bitstream segments, the cached target reconstructed CRR image is used as the currently effective reconstructed CRR image. In this example, the CRR image bitstream segment group includes the n most recently output CRR image bitstream segments corresponding to the same CRR image.

[0218] If a reconstructed CRR image is in effect before the last CRR image bitstream segment among the n CRR image bitstream segments being output, the last valid reconstructed CRR image is removed from the cache space when the cached target reconstructed CRR image is used as the currently valid reconstructed CRR image. In this case, an additional frame buffer is required to store the target reconstructed CRR image.

[0219] Optionally, the first display image that selects the currently valid reconstructed CRR image as the reference image may be marked as the first enabled image of the currently valid reconstructed CRR image.

[0220] In Coding Example 6, the encoder may cache a CRR image bitstream. When outputting the last CRR image bitstream segment among n CRR image bitstream segments, the cached CRR image bitstream is decoded and reconstructed to obtain the currently valid reconstructed CRR image. In this example, the CRR image bitstream segment group includes the n most recently output CRR image bitstream segments corresponding to the same CRR image.

[0221] If a reconstructed CRR image is in effect before the cached CRR image bitstream is decoded and reconstructed, the previously valid reconstructed CRR image is removed from the cache space when the cached CRR image bitstream is decoded and reconstructed to obtain the currently valid reconstructed CRR image. In this case, an additional cache is required to store the CRR image bitstream.

[0222] In this encoding example, before outputting the last of the n CRR image bitstream segments, the entire CRR image bitstream is stored without storing the entire reconstructed CRR image. Because the CRR image bitstream occupies less cache space than the reconstructed CRR image, this can save a certain amount of cache space.

[0223] Corresponding to different encoding examples, there are also different decoding examples on the decoding end. The following describes various decoding examples.

[0224] Decoding example 1: The decoder performs decoding operations in sequence according to the order of the bit streams in the coded image bit stream, and obtains and caches the reconstructed CRR sub-image after performing the decoding operation on each received CRR image bit stream segment. If it is determined according to the preset syntax identifier that there are n CRR image bit stream segments in the coded image bit stream, then when there are n reconstructed CRR sub-images cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image. If there is an effective reconstructed CRR image before the n reconstructed CRR sub-images are spliced, then when the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image, the last effective reconstructed CRR image is removed from the cache space. In this example, the CRR image bit stream segment group includes: the first n CRR image bit stream segments corresponding to the same CRR image of the display image bit stream.

[0225] The process of determining whether there are any lost CRR image bitstream segments can be implemented by using the quantity information in the preset syntax identifier. For details, please refer to the above embodiment, which will not be described in detail in the embodiment of the present application.

[0226] Optionally, the first display image bit stream that selects the currently valid reconstructed CRR image as the reference image may be marked as the enabled first image bit stream of the currently valid reconstructed CRR image.

[0227] Decoding Example 2, based on the aforementioned decoding Example 1, when a decoding operation is performed on the first CRR image bitstream segment in the coded image bitstream, if there is a currently effective reconstructed CRR image (referring to the reconstructed CRR image that is in effect at the moment when the decoding operation on the first CRR image bitstream segment in the coded image bitstream is started), the currently effective reconstructed CRR image is removed (the currently effective reconstructed CRR image is removed from the cache space). When a decoding operation is performed on a target display image bitstream among multiple display image bitstreams, the reference image of the target display image bitstream includes the reconstructed display image, and the target display image bitstream includes: the display image bitstream between the first CRR image bitstream segment and the last CRR image bitstream segment in the coded image bitstream. Since there is no currently effective reconstructed CRR image when encoding the target display image bitstream, the reference image of the target display image bitstream only includes the reconstructed display image.

[0228] In this decoding example, when decoding the first to the last CRR image bitstream segment in the coded image bitstream, there is no need to cache the last valid reconstructed CRR image, thereby saving cache space for one frame of image.

[0229] Decoding example 3, the decoder performs decoding operations in sequence according to the order of each bit stream in the coded image bit stream, and obtains a reconstructed CRR sub-image after decoding the received CRR image bit stream segment. If there is no lost CRR image bit stream segment as of now (that is, there are n CRR image bit stream segments in the coded image bit stream), and there is a currently valid reconstructed CRR image, the target area in the currently valid reconstructed CRR image is updated to the obtained reconstructed CRR sub-image to obtain the currently valid reconstructed CRR image. The positional relationship between the target area and the currently valid reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image. In this example, the CRR image bit stream segment group includes: the first n CRR image bit stream segments of the display image bit stream.

[0230] The process of determining whether there is a lost CRR image bitstream segment can be implemented by using the position information in the preset syntax identifier. For details, please refer to the above embodiment, and the embodiments of the present application will not be described in detail here.

[0231] In this decoding example, after obtaining a reconstructed CRR sub-image, the reconstructed CRR sub-image is not cached. Instead, the target area in the currently effective reconstructed CRR image is directly replaced with the reconstructed CRR sub-image, which can save the cache occupied by the reconstructed CRR sub-image.

[0232] In Decoding Example 4, upon receiving the first n-1 CRR image bitstream segments, the decoder does not decode them first, but instead caches each received CRR image bitstream segment. Subsequently, if there are n CRR image bitstream segments in the coded image bitstream, the reconstructed CRR image is used as the currently valid reconstructed CRR image. The reconstructed CRR image is obtained by decoding each of the n cached CRR image bitstream segments, obtaining n reconstructed CRR sub-images, and then splicing these n reconstructed CRR sub-images. In this example, the CRR image bitstream segment group includes the first n CRR image bitstream segments corresponding to the same CRR image in the display image bitstream.

[0233] Optionally, the first display image bit stream that selects the currently valid reconstructed CRR image as the reference image may be marked as the enabled first image bit stream of the currently valid reconstructed CRR image.

[0234] The process of determining whether there are any lost CRR image bitstream segments can be implemented by using the quantity information and / or image information in the preset syntax identifier. For details, please refer to the above embodiments, which will not be described in detail in the embodiments of the present application.

[0235] Decoding Example 5: When the decoder receives the first n-1 CRR image bitstream segments, it does not decode them first, but caches the CRR image bitstream segments received each time. If there are n CRR image bitstream segments in the coded image bitstream, the reconstructed CRR image is used as the currently valid reconstructed CRR image. The reconstructed CRR image is obtained by splicing the n cached CRR image bitstream segments, and then the spliced ​​CRR image bitstream is decoded. If there is a reconstructed CRR image that is in effect before the CRR image bitstream is decoded, the last valid reconstructed CRR image is removed from the cache space when the CRR image bitstream is decoded to obtain the currently valid reconstructed CRR image. In this example, the CRR image bitstream segment group includes: the first n CRR image bitstream segments corresponding to the same CRR image of the display image bitstream.

[0236] The process of determining whether there are any lost CRR image bitstream segments can be implemented by using the quantity information and / or image information in the preset syntax identifier. For details, please refer to the above embodiments, which will not be described in detail in the embodiments of the present application.

[0237] Optionally, the first display image bit stream that selects the currently valid reconstructed CRR image as the reference image may be marked as the enabled first image bit stream of the currently valid reconstructed CRR image.

[0238] In decoding examples 4 and 5, CRR image bitstream segments are directly cached, and decoding is performed to obtain a reconstructed CRR image after n CRR image bitstream segments have been cached, without the need to cache each reconstructed CRR sub-image. Because the cache space occupied by CRR image bitstream segments is smaller than that occupied by reconstructed CRR sub-images, a certain amount of cache space can be saved.

[0239] The above-mentioned various encoding examples and various decoding examples can be combined. The following uses various combinations as examples to illustrate the encoding and decoding process. In the following encoding and decoding process, five display images d1 to d5 and a corresponding CRR image e are used as examples, and it is assumed that n=3.

[0240] 1. Coding Example 1 Combined with Decoding Example 1, Determining Whether a CRR Image Bitstream Segment Is Lost Based on Data Information

[0241] For example, please refer to Figure 8, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. Referring to the aforementioned encoding example 1, the CRR image e is divided into three CRR sub-images e1 to e3. Intersperse e1 between d1 and d2, intersperse e2 between d2 and d3, and intersperse e3 between d3 and d4 to obtain an image sequence to be encoded. Then, the image sequence to be encoded is encoded, and d1 is first encoded. Since a new CRR image bit stream segment has not been output at this time, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. Select a reference image to perform an encoding operation on d1 to obtain a display image bit stream d1′ and a reconstructed display image (not shown in Figure 8). Perform an encoding operation on e1 to obtain a CRR image bit stream segment e1′ and a reconstructed CRR sub-image e1″, and cache e1″.

[0242] Perform an encoding operation on d2. Since three reconstructed CRR sub-images have not yet been cached at this time, the currently effective reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to perform an encoding operation on d2 to obtain a display image bit stream d2′ and a reconstructed display image (not shown in Figure 8). Perform an encoding operation on e2 to obtain a CRR image bit stream segment e2′ and a reconstructed CRR sub-image e2″, and cache e2″.

[0243] Perform an encoding operation on d3. Since three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to perform an encoding operation on d3 to obtain a display image bitstream d3′ and a reconstructed display image (not shown in Figure 8). Perform an encoding operation on e3 to obtain a CRR image bitstream segment e3′ and a reconstructed CRR sub-image e3″, and cache e3″.

[0244] At this time, three reconstructed CRR sub-images e1″ to e3″ are cached in the cache space. The second reconstructed CRR image e″ is obtained by splicing e1″ to e3″, and the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″.

[0245] The encoding operation is performed on d4, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d4 to obtain the display image bit stream d4′ and the reconstructed display image (not shown in Figure 8). The encoding operation is performed on d5, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d5 to obtain the display image bit stream d5′ and the reconstructed display image (not shown in Figure 8). At this time, the encoded image bit stream is obtained.

[0246] Referring to the aforementioned decoding example 1, the decoder performs decoding operations in sequence according to the order of each bit stream in the coded image bit stream. First, d1′ is decoded. Since the new CRR image bit stream segment has not been decoded at this time, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d1′ to obtain a reconstructed display image d1″. The reference image selected for decoding d1′ is the same as the reference image selected for encoding d1. e1′ is received and a decoding operation is performed on e1′ to obtain and cache e1″. e1′ is the first CRR image bit stream segment. The quantity information indication 3 is parsed from the coded image bit stream, and the count starts from 1.

[0247] A decoding operation is performed on d2′. Since three reconstructed CRR sub-images have not yet been cached at this time, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d2′ to obtain a reconstructed display image d2″. The reference image selected for the decoding operation on d2′ is the same as the reference image selected for the encoding operation on d2. e2′ is received and a decoding operation is performed on e2′ to obtain and cache e2″. The counter is incremented by 1 to obtain 2.

[0248] A decoding operation is performed on d3′. Since three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d3′ to obtain the reconstructed display image d3″. The reference image selected for the decoding operation on d3′ is the same as the reference image selected for the encoding operation on d3. Receive e3′ and perform a decoding operation on e3′ to obtain and cache e3″. The counter is incremented by 1 to obtain 3.

[0249] Subsequently, d4′ is received. d4′ refers to the reconstructed CRR image e″ corresponding to e1″ to e3″. At this time, the number of received CRR image bit stream segments is 3. There are 3 CRR image bit stream segments in the coded image bit stream, and the CRR image bit stream is received successfully.

[0250] At this time, three reconstructed CRR sub-images e1″ to e3″ are cached in the cache space. The second reconstructed CRR image e″ is obtained by splicing e1″ to e3″, and the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″.

[0251] A decoding operation is performed on d4′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d4′ to obtain a reconstructed display image d4″. The reference image selected for the decoding operation on d4′ is the same as the reference image selected for the encoding operation on d4. A decoding operation is performed on d5′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d5′ to obtain a reconstructed display image d5″. The reference image selected for the decoding operation on d5′ is the same as the reference image selected for the encoding operation on d5.

[0252] 2. Coding Example 2 Combined with Decoding Example 2, Determining Whether a CRR Image Bitstream Segment Is Lost by Using Data Information

[0253] For example, please refer to Figure 9, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The encoding and decoding process shown in Figure 9 is similar to that of Figure 8. The difference between the encoder side and Figure 8 is that when the encoding operation on e1 begins, the first reconstructed CRR image is removed from the cache space. When the encoding operation is performed on d2, 3 reconstructed CRR sub-images have not been cached, so there is no currently effective reconstructed CRR image. When the encoding operation is performed on d3, 3 reconstructed CRR sub-images have not been cached, so there is no currently effective reconstructed CRR image.

[0254] The difference between the decoder side and Figure 8 is that when the decoding operation of e1′ is started, the first reconstructed CRR image is removed from the cache space. When the decoding operation of d2′ is performed, three reconstructed CRR sub-images have not yet been cached, so there is no currently valid reconstructed CRR image. When the decoding operation of d3′ is performed, three reconstructed CRR sub-images have not yet been cached, so there is no currently valid reconstructed CRR image. For other processes, please refer to the relevant description of Figure 8, and the embodiment of this application will not be repeated here.

[0255] 3. Combining Coding Example 3 with Decoding Example 3: Determining Whether a CRR Image Bitstream Segment Is Missing by Using Position Information

[0256] For example, please refer to Figure 10, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The image sequence to be encoded can refer to the relevant description of Figure 8, and the embodiment of the present application will not be repeated here.

[0257] First, an encoding operation is performed on d1, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform an encoding operation on d1 to obtain a display image bit stream d1′ and a reconstructed display image (not shown in FIG10 ). An encoding operation is performed on e1 to obtain a CRR image bit stream segment e1′ and a reconstructed CRR sub-image e1″. The target area in the currently effective reconstructed CRR image is updated to e1″ to obtain the currently effective reconstructed CRR image.

[0258] Perform encoding operation on d2, and the currently effective reconstructed CRR image is cached in the cache space. Select a reference image to perform encoding operation on d2 to obtain the display image bit stream d2′ and the reconstructed display image (not shown in Figure 10). Perform encoding operation on e2 to obtain the CRR image bit stream segment e2′ and the reconstructed CRR sub-image e2″. Update the target area in the currently effective reconstructed CRR image to e2″ to obtain the currently effective reconstructed CRR image.

[0259] Perform encoding operation on d3, and the currently effective reconstructed CRR image is cached in the cache space. Select the reference image to perform encoding operation on d3 to obtain the display image bit stream d3′ and the reconstructed display image (not shown in Figure 10). Perform encoding operation on e3 to obtain the CRR image bit stream segment e3′ and the reconstructed CRR sub-image e3″. Update the target area in the currently effective reconstructed CRR image to e3″ to obtain the currently effective reconstructed CRR image.

[0260] An encoding operation is performed on d4. The currently valid reconstructed CRR image is cached in the buffer space. A reference image is selected to perform an encoding operation on d4 to obtain a display image bitstream d4′ and a reconstructed display image (not shown in FIG10 ). An encoding operation is performed on d5. The currently valid reconstructed CRR image is cached in the buffer space. A reference image is selected to perform an encoding operation on d5 to obtain a display image bitstream d5′ and a reconstructed display image (not shown in FIG10 ). At this point, an encoded image bitstream is obtained.

[0261] Referring to the aforementioned decoding example 3, the decoder performs decoding operations in sequence according to the order of each bit stream in the coded image bit stream. First, a decoding operation is performed on d1′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d1′ to obtain a reconstructed display image d1″. The reference image selected for the decoding operation on d1′ is the same as the reference image selected for the encoding operation on d1. e1′ is received at the first position indicated by the position information, and there is no lost CRR image bit stream segment in the coded image bit stream as of the current moment. A decoding operation is performed on e1′ to obtain e1″, and the target area in the currently effective reconstructed CRR image is updated to e1″ to obtain the currently effective reconstructed CRR image.

[0262] A decoding operation is performed on d2′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d2′ to obtain a reconstructed display image d2″. The reference image selected for the decoding operation on d2′ is the same as the reference image selected for the encoding operation on d2. e2′ is received at the second position indicated by the position information, and as of the current moment, there is no lost CRR image bitstream segment in the encoded image bitstream. A decoding operation is performed on e2′ to obtain e2″, and the target area in the currently effective reconstructed CRR image is updated to e2″ to obtain the currently effective reconstructed CRR image.

[0263] A decoding operation is performed on d3′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d3′ to obtain a reconstructed display image d3″. The reference image selected for the decoding operation on d3′ is the same as the reference image selected for the encoding operation on d3. e3′ is received at the third position indicated by the position information. As of the current moment, there is no lost CRR image bitstream segment in the coded image bitstream, so there are 3 CRR image bitstream segments in the coded image bitstream. A decoding operation is performed on e3′ to obtain e3″, and the target area in the currently effective reconstructed CRR image is updated to e3″ to obtain the currently effective reconstructed CRR image.

[0264] A decoding operation is performed on d4′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d4′ to obtain a reconstructed display image d4″. The reference image selected for the decoding operation on d4′ is the same as the reference image selected for the encoding operation on d4. A decoding operation is performed on d5′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d5′ to obtain a reconstructed display image d5″. The reference image selected for the decoding operation on d5′ is the same as the reference image selected for the encoding operation on d5.

[0265] It should be noted that, when updating the currently effective reconstructed CRR image, the selected target area is related to the reconstructed CRR sub-image in the current cache space, and the target area is not fixed.

[0266] 4. Coding Example 5 Combined with Decoding Example 5: Determining Whether a CRR Image Bitstream Segment Is Lost Based on Image Information

[0267] For example, please refer to Figure 11, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. Referring to the aforementioned encoding example 5, an encoding operation is performed on the CRR image e to obtain a CRR image bit stream e′ and a target reconstructed CRR image e″, and cache e″. The CRR image bit stream is divided to obtain three CRR image bit stream segments e1′ to e3′.

[0268] First, encoding is performed on d1. Since e3′ has not yet been output, the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected and encoded on d1 to obtain the display image bitstream d1′ and the reconstructed display image (not shown in Figure 11). e1′ is inserted after d1′ and output.

[0269] The encoding operation is performed on d2. Since e3′ has not yet been output, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to encode d2 to obtain the display image bitstream d2′ and the reconstructed display image (not shown in Figure 11). e2′ is inserted after d2′ and output.

[0270] The encoding operation is performed on d3. Since e3′ has not yet been output, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected and the encoding operation is performed on d3 to obtain the display image bitstream d3′ and the reconstructed display image (not shown in Figure 11). e3′ is inserted after d3′ and output.

[0271] At this time, the last CRR image bit stream segment e3′ of the three CRR image bit stream segments is output, the first reconstructed CRR image is removed from the buffer space, and e″ is used as the currently valid reconstructed CRR image.

[0272] The encoding operation is performed on d4, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d4 to obtain the display image bit stream d4′ and the reconstructed display image (not shown in Figure 11). The encoding operation is performed on d5, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d5 to obtain the display image bit stream d5′ and the reconstructed display image (not shown in Figure 11). At this time, the encoded image bit stream is obtained.

[0273] Referring to the aforementioned decoding example 5, the decoder does not perform decoding operations when receiving the first n-1 CRR image bitstream segments. First, a decoding operation is performed on d1′. Since the new CRR image bitstream segment has not been decoded at this time, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d1′ to obtain a reconstructed display image d1″. The reference image selected for the decoding operation on d1′ is the same as the reference image selected for the encoding operation on d1. Then cache the received e1′.

[0274] Decode d2′. Since three reconstructed CRR sub-images have not yet been cached, the currently valid reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to decode d2′ to obtain the reconstructed display image d2″. The reference image selected for decoding d2′ is the same as the reference image selected for encoding d2. Then cache the received e2′.

[0275] Decode d3′. Since three reconstructed CRR sub-images have not yet been cached, the currently valid reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to decode d3′ to obtain the reconstructed display image d3″. The reference image selected for decoding d3′ is the same as the reference image selected for encoding d3. Then cache the received e3′.

[0276] Next, the target image bitstream d4′ is received. Three CRR image bitstream segments e1′ to e3′ are cached in the cache space, and these segments are spliced ​​together. The spliced ​​CRR image bitstream is decoded to obtain the second reconstructed CRR image e″. The size of e″ is equal to the size of e, so there are n CRR image bitstream segments in the coded image bitstream, and the CRR image bitstream is successfully received. At the same time, the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″.

[0277] A decoding operation is performed on d4′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d4′ to obtain a reconstructed display image d4″. The reference image selected for the decoding operation on d4′ is the same as the reference image selected for the encoding operation on d4. A decoding operation is performed on d5′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d5′ to obtain a reconstructed display image d5″. The reference image selected for the decoding operation on d5′ is the same as the reference image selected for the encoding operation on d5.

[0278] V. Combining Encoding Example 1 with Decoding Example 4: Determining Whether a CRR Image Bitstream Segment Is Missing Based on Image Information

[0279] For example, please refer to Figure 12, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. For the description of the encoding process of the encoder in Figure 12, please refer to Figure 8.

[0280] The decoding process shown in Figure 12 is similar to that of Figure 11. The difference between the decoder side and Figure 11 is that when three CRR image bit stream segments e1′ to e3′ are cached in the cache space, e1′ to e3′ are decoded respectively to obtain reconstructed CRR sub-images e1″ to e3″, and then e1″ to e3″ are spliced ​​to obtain the second reconstructed CRR image e″. At the same time, the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″. For other relevant descriptions about the decoding process of the decoder, please refer to the relevant description of Figure 11, and the embodiments of the present application will not be repeated here.

[0281] VI. Coding Example 4 Combined with Decoding Example 4: Determining Whether a CRR Image Bitstream Segment Is Missing Based on Image Information

[0282] For example, please refer to Figure 13, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The image sequence to be encoded can refer to the relevant description of Figure 8, and the embodiment of the present application will not be repeated here.

[0283] Referring to the aforementioned encoding example 4, an encoding operation is first performed on d1. Since a new CRR image bitstream segment has not yet been output, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected to perform an encoding operation on d1 to obtain a display image bitstream d1′ and a reconstructed display image (not shown in FIG13 ). An encoding operation is performed on e1 to obtain and cache a CRR image bitstream segment e1′.

[0284] The encoding operation is performed on d2. Since the three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to encode d2 to obtain the display image bitstream d2′ and the reconstructed display image (not shown in Figure 13). The encoding operation is performed on e2 to obtain and cache the CRR image bitstream segment e2′.

[0285] The encoding operation is performed on d3. Since the three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to encode d3 to obtain the display image bitstream d3′ and the reconstructed display image (not shown in Figure 13). The encoding operation is performed on e3 to obtain and cache the CRR image bitstream segment e3′.

[0286] At this time, three CRR image bitstream segments e1′ to e3′ are cached in the cache space. e1′ to e3′ are decoded and reconstructed to obtain reconstructed CRR sub-images e1″ to e3″ respectively. e1″ to e3″ are spliced ​​together to obtain the second reconstructed CRR image e″. The first reconstructed CRR image is removed from the cache space, and the currently effective reconstructed CRR image is e″.

[0287] The encoding operation is performed on d4, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d4 to obtain the display image bit stream d4′ and the reconstructed display image (not shown in Figure 11). The encoding operation is performed on d5, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d5 to obtain the display image bit stream d5′ and the reconstructed display image (not shown in Figure 11). At this time, the encoded image bit stream is obtained.

[0288] For the relevant description of the decoding process of the decoder in Figure 13, please refer to Figure 12, and the embodiment of the present application will not be repeated here.

[0289] VII. Combining Coding Example 6 with Decoding Example 4: Determining Whether a CRR Image Bitstream Segment Is Missing Based on Image Information

[0290] For example, please refer to Figure 14, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The encoding process shown in Figure 14 is similar to that of Figure 13. The difference between the encoder side and Figure 13 is that e' is cached first after the CRR image bit stream e' is obtained. When the last CRR image bit stream segment e3' among the three CRR image bit stream segments is output, the first reconstructed CRR image is removed from the cache space, and the cached e' is decoded and reconstructed to obtain the second reconstructed CRR image e", and the currently effective reconstructed CRR image is e".

[0291] For the relevant description of the decoding process of the decoder in Figure 14, please refer to Figure 12, and the embodiment of the present application will not be repeated here.

[0292] The order of the methods provided in the embodiments of the present application can be adjusted appropriately, and the process can be increased or decreased accordingly. Any method that can be easily thought of by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application, and the embodiments of the present application do not limit this.

[0293] The above mainly introduces the encoding and decoding method provided by the embodiment of the present application from the perspective of the device. It is understandable that, in order to implement the above functions, the device includes a hardware structure and / or software module corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in a hardware or computer software driven hardware manner depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0294] The embodiment of the present application can divide the functional modules of the device according to the above method example. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. In actual implementation, there may be other division methods.

[0295] Figure 15 is a block diagram of an encoding device provided in an embodiment of the present application. The encoding device 800 can be a device, a chip therein, or other combined devices, components, etc. having the functions of the above encoding device. In the case of dividing each functional module according to each function, the encoding device 800 may include:

[0296] An acquisition module 801 is configured to acquire cross-random access point reference CRR images corresponding to a plurality of display images;

[0297] An encoding module 802 is configured to perform an encoding operation on the CRR image and the multiple display images to obtain an encoded image bit stream, where the encoded image bit stream includes: n interleaved CRR image bit stream segments and the multiple display image bit streams, where n is an integer greater than 1;

[0298] The encoding module 802 is further configured to encode a preset syntax identifier into a coded image bit stream, where the preset syntax identifier includes at least one of the following: quantity information, image information, and position information, where the quantity information indicates n, the image information indicates a target image, and the bit stream of the target image is transmitted after the n CRR image bit stream segments, and the position information indicates the position of the n CRR image bit streams in the coded image bit stream;

[0299] The reference image of the display image includes: a reconstructed display image and / or a currently effective reconstructed CRR image, the reconstructed display image is obtained by encoding the display image, and the currently effective reconstructed CRR image is obtained by encoding the CRR image.

[0300] In combination with the above scheme, the preset syntax identifier is located in the high-level parameters of the coded image bit stream, and the high-level parameters include at least one of the following: SPS, PPS, picture header

[0301] In combination with the above scheme, the target image is: the first display image that uses the CRR image as a reference image, the first display image that uses only the CRR image as a reference image, a display image whose bitstream is transmitted after n CRR image bitstream segments, or a CRR image whose bitstream is transmitted after n CRR image bitstream segments.

[0302] In combination with the above scheme, the image information includes at least one of the following: the frame number of the target image, the decoding number of the target image's bit stream, the frame number difference between the target image and the CRR image, or the decoding number difference between the target image's bit stream and the CRR image's bit stream.

[0303] In combination with the above scheme, the encoding module 802 is specifically used to split the CRR image to obtain n CRR sub-images; interleave the n CRR sub-images between multiple display images to obtain an image sequence to be encoded; and sequentially perform encoding operations on the CRR sub-images and display images in the image sequence to be encoded to obtain an encoded image bit stream.

[0304] In combination with the above scheme, the encoding module 802 is also used to cache the reconstructed CRR sub-image, which is obtained by encoding the CRR sub-image; when there are n reconstructed CRR sub-images cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image.

[0305] In combination with the above scheme, the encoding module 802 is also used to remove the currently effective reconstructed CRR image when starting to perform encoding operation on the first CRR sub-image in the image sequence to be encoded; when performing encoding operation on the target display image among multiple display images, the reference image of the target display image includes the reconstructed display image, and the target display image includes: the display image between the first CRR sub-image and the last CRR sub-image in the image sequence to be encoded.

[0306] In combination with the above scheme, the encoding module 802 is also used to update the target area in the currently effective reconstructed CRR image to the reconstructed CRR sub-image when performing an encoding operation on the CRR sub-image to obtain a reconstructed CRR sub-image; the positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the reconstructed CRR sub-image and the corresponding CRR image.

[0307] In combination with the above scheme, the encoding module 802 is also used to cache the CRR image bit stream segments output each time; when there are n CRR image bit stream segments cached, the n cached CRR image bit stream segments are decoded and reconstructed respectively to obtain n reconstructed CRR sub-images; and the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image.

[0308] In combination with the above scheme, the encoding module 802 is specifically used to perform encoding operations on the CRR image to obtain a CRR image bit stream; split the CRR image bit stream to obtain n CRR image bit stream segments; perform encoding operations on multiple display images in sequence to obtain multiple display image bit streams; and interweave the n CRR image bit stream segments between multiple display image bit streams to obtain a coded image bit stream.

[0309] In combination with the above scheme, the encoding module 802 is also used to cache the target reconstructed CRR image, which is obtained by encoding the CRR image; when outputting the last CRR image bit stream segment among n CRR image bit stream segments, the cached target reconstructed CRR image is used as the currently effective reconstructed CRR image.

[0310] In combination with the above solution, the encoding module 802 is further configured to cache the CRR image bit stream; when outputting the last CRR image bit stream segment among the n CRR image bit stream segments, the cached CRR image bit stream is decoded and reconstructed to obtain the currently effective reconstructed CRR image.

[0311] FIG16 is a block diagram of a decoding device provided in an embodiment of the present application. The decoding device 900 may be a device, a chip therein, or other combined devices, components, etc. having the functions of the above-mentioned encoding device. In the case of dividing each functional module into corresponding functional modules, the decoding device 900 may include:

[0312] The transceiver module 901 is configured to receive a coded image bit stream, where the coded image bit stream includes interleaved and sorted cross-random access point reference CRR image bit stream segments and a display image bit stream;

[0313] A decoding module 902, configured to perform decoding operations on a coded image bit stream;

[0314] The decoding module 902 is further configured to obtain a preset syntax identifier from the coded image bit stream, where the preset syntax identifier includes at least one of the following: quantity information, image information, and position information, where the quantity information indicates n, the image information indicates a target image, and the bit stream of the target image is transmitted after n CRR image bit stream segments, and the position information indicates a position of the n CRR image bit stream segments in the coded image bit stream;

[0315] The decoding module 902 is further configured to determine whether n CRR image bit stream segments exist in the coded image bit stream according to a preset syntax identifier, where n CRR image bit stream segments correspond to one CRR image, and n is an integer greater than 1;

[0316] The decoding module 902 is further configured to, if there are n CRR image bit stream segments in the coded image bit stream, continue decoding the coded image bit stream to obtain a reconstructed display image;

[0317] The reference images of the display image bit stream include: a reconstructed display image and / or a currently valid reconstructed CRR image, the reconstructed display image is obtained by decoding the display image bit stream, and the currently valid reconstructed CRR image is obtained by decoding the CRR image bit stream segment.

[0318] In combination with the above scheme, the decoding module 902 is specifically used to perform a decoding operation on each received CRR image bit stream segment to obtain and cache the reconstructed CRR sub-image; if there are n CRR image bit stream segments in the encoded image bit stream, then when there are n reconstructed CRR sub-images cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image.

[0319] In combination with the above scheme, the decoding module 902 is also used to remove the currently effective reconstructed CRR image when performing a decoding operation on the first CRR image bit stream segment; the reference image of the target display image bit stream in the multiple display image bit streams includes the reconstructed display image, and the target display image bit stream includes: the display image bit stream between the first CRR image bit stream segment and the last CRR image bit stream segment in the encoded image bit stream.

[0320] In combination with the above scheme, the decoding module 902 is specifically used to perform a decoding operation on the received CRR image bit stream fragment to obtain a reconstructed CRR sub-image; if there are n CRR image bit stream fragments in the encoded image bit stream, the target area in the currently effective reconstructed CRR image is updated to the obtained reconstructed CRR sub-image, and the positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image.

[0321] In combination with the above scheme, the decoding module 902 is specifically used to cache the CRR image bit stream fragments received each time; if there are n CRR image bit stream fragments in the encoded image bit stream, the reconstructed CRR image will be used as the currently effective reconstructed CRR image, and the reconstructed CRR image is obtained based on the cached n CRR image bit stream fragments.

[0322] In combination with the above scheme, the preset syntax identifier includes quantity information, and the decoding module 902 is specifically used to start counting from the first CRR image bit stream segment received in the coded image bit stream; when the target bit stream is received, if the number of received CRR image bit stream segments is n, it is determined that there are n CRR image bit stream segments in the coded image bit stream; if the number of received CRR image bit stream segments is less than n, it is determined that there are not n CRR image bit stream segments in the coded image bit stream; the target bit stream is a display image bit stream and the reference image is a CRR image, or the preset syntax identifier also includes image information, and the target bit stream is the bit stream of the target image indicated by the image information.

[0323] In combination with the above scheme, the preset syntax identifier includes image information, and the decoding module 902 is specifically used to determine the size of the reconstructed CRR image when the bit stream of the target image indicated by the image information is received, and the reconstructed CRR image is obtained by decoding the received CRR image bit stream fragments; when the size of the reconstructed CRR image is equal to the size of the CRR image, it is determined that there are n CRR image bit stream fragments in the encoded image bit stream; when the size of the reconstructed CRR image is smaller than the size of the CRR image, it is determined that there are no n CRR image bit stream fragments in the encoded image bit stream.

[0324] In combination with the above scheme, the preset syntax identifier includes position information, and the decoding module 902 is specifically used to determine that there are n CRR image bit stream segments in the encoded image bit stream when a CRR image bit stream segment is received at each position indicated by the position information; when a CRR image bit stream segment is not received at at least one position indicated by the position information, determine that there are no n CRR image bit stream segments in the encoded image bit stream.

[0325] FIG17 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. The electronic device 1000 can be a device or a chip or functional module in the device. As shown in FIG17 , the electronic device 1000 includes a processor 1001 , a transceiver 1002 , and a communication line 1003 .

[0326] The processor 401 is used to execute any step in the method embodiments shown in Figures 3, 4, 6 and 7, and when executing processes such as receiving a coded image bit stream, it can optionally call the transceiver 1002 and the communication line 1003 to complete the corresponding operation.

[0327] Furthermore, the electronic device 1000 may further include a memory 1004 . The processor 1001 , the memory 1004 and the transceiver 1002 may be connected via a communication line 1003 .

[0328] Transceiver 1002 is used to communicate with other devices or other communication networks, such as Ethernet, radio access networks (RAN), wireless local area networks (WLAN), etc. Transceiver 1002 can be a module, circuit, transceiver, or any device capable of implementing communication.

[0329] The transceiver 1002 is mainly used for transmitting and receiving bit streams, etc., and may include a transmitter and a receiver for transmitting and receiving bit streams, etc. respectively; operations other than transmitting and receiving bit streams, etc. are implemented by the processor, such as enabling at least one target channel in the channel group of the chip, etc.

[0330] The communication line 1003 is used to transmit information between the components included in the electronic device 1000.

[0331] In one design, the processor can be considered as the logic circuit and the transceiver as the interface circuit.

[0332] The memory 1004 is used to store instructions, where the instructions may be computer programs.

[0333] It should be noted that the memory 1004 can exist independently of the processor 1001 or can be integrated with the processor 1001. The memory 1004 can be used to store instructions, program code, or some data. The memory 1004 can be located inside the electronic device 1000 or outside the electronic device 1000, without limitation. The processor 1001 is configured to execute the instructions stored in the memory 1004 to implement the methods provided in the above embodiments of the present application.

[0334] In one example, processor 1001 may include one or more processors, such as processor 0 and processor 1 in FIG. 17 .

[0335] As an optional implementation, the electronic device 1000 includes multiple processors. For example, in addition to the processor 1001 in FIG. 17 , it may also include a processor 1007 .

[0336] As an optional implementation, the electronic device 1000 further includes an output device 1005 and an input device 1006. For example, the input device 1006 is a keyboard, a mouse, a microphone, or a joystick, and the output device 1005 is a display screen, a speaker, or the like.

[0337] It should be pointed out that the electronic device 1000 can be a chip system or a device with a similar structure as shown in Figure 17. Among them, the chip system can be composed of chips, or it can include chips and other discrete devices. The actions, terms, etc. involved in the various embodiments of this application can refer to each other without limitation. The message names or parameter names in the messages exchanged between the various devices in the embodiments of this application are only an example. Other names can also be used in the specific implementation without limitation. In addition, the component structure shown in Figure 17 does not constitute a limitation on the electronic device 1000. In addition to the components shown in Figure 17, the electronic device 1000 may include more or fewer components than those shown in Figure 17, or combine certain components, or arrange the components differently.

[0338] The processor and transceiver described in this application can be implemented on an integrated circuit (IC), an analog IC, a radio frequency integrated circuit, a mixed-signal IC, an application specific integrated circuit (ASIC), a printed circuit board (PCB), an electronic device, etc. The processor and transceiver can also be manufactured using various IC process technologies, such as complementary metal oxide semiconductor (CMOS), N-type metal oxide semiconductor (NMOS), P-type metal oxide semiconductor (positive channel metal oxide semiconductor, PMOS), bipolar junction transistor (BJT), bipolar CMOS (BiCMOS), silicon germanium (SiGe), gallium arsenide (GaAs), etc.

[0339] Figure 18 is a schematic diagram of the structure of a codec device provided in an embodiment of the present application. The codec device can be applied to the scenarios shown in the above method embodiments. For ease of explanation, Figure 18 only shows the main components of the codec device, including a processor, memory, control circuit, and input / output devices. The processor is mainly used to process communication protocols and communication data, execute software programs, and process software program data. The memory is mainly used to store software programs and data. The control circuit is mainly used for power supply and transmission of various electrical signals. The input / output devices are mainly used to receive data input by the user and output data to the user.

[0340] When the codec device is a device, the control circuit may be a motherboard, the memory may include a hard disk, RAM, ROM, or other media with storage functions, the processor may include a baseband processor and a central processing unit, the baseband processor is mainly used to process the communication protocol and communication data, the central processing unit is mainly used to control the entire codec device, execute software programs, and process software program data, and the input and output devices include a display screen, keyboard, and mouse, etc. The control circuit may further include or be connected to a transceiver circuit or transceiver, such as a network cable interface, for sending or receiving data or signals, such as for data transmission and communication with other devices. Furthermore, it may also include an antenna for transmitting and receiving wireless signals for data / signal transmission with other devices.

[0341] According to the method provided in the embodiments of the present application, the present application also provides a computer program product, which includes computer program code. When the computer program code runs on a computer, it enables the computer to execute any of the methods described in the embodiments of the present application.

[0342] The present application also provides a computer-readable storage medium. All or part of the processes in the above-mentioned method embodiments can be completed by a computer or a device with encoding and decoding capabilities executing a computer program or instruction to control the relevant hardware. The computer program or the group of instructions can be stored in the above-mentioned computer-readable storage medium. When executed, the computer program or the group of instructions can include the processes of the above-mentioned method embodiments. The computer-readable storage medium can be the internal storage unit of the control terminal of any of the above-mentioned embodiments, such as the hard disk or memory of the control terminal. The above-mentioned computer-readable storage medium can also be an external storage device of the above-mentioned control terminal, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the above-mentioned control terminal. Furthermore, the above-mentioned computer-readable storage medium can also include both the internal storage unit of the above-mentioned control terminal and an external storage device. The above-mentioned computer-readable storage medium is used to store the above-mentioned computer program or instruction and other programs and data required by the above-mentioned control terminal. The above-mentioned computer-readable storage medium can also be used to temporarily store data that has been output or is to be output.

[0343] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0344] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0345] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0346] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0347] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0348] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.

[0349] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A coding method, characterized in that: The method comprises: Obtaining cross-random access point reference CRR images corresponding to a plurality of display images; Performing encoding operation on the CRR image and the plurality of display images to obtain an encoded image bit stream, wherein the encoded image bit stream comprises: n CRR image bit stream segments and a plurality of display image bit streams in an interleaved order, where n is an integer greater than 1; Encoding a preset syntax identifier into the coded image bit stream, the preset syntax identifier comprising at least one of the following: quantity information, image information, and position information, the quantity information indicating n, the image information indicating a target image, the bit stream of the target image being transmitted after the n CRR image bit stream segments, and the position information indicating the position of the n CRR image bit streams in the coded image bit stream; The reference image of the display image includes: a reconstructed display image and / or a currently effective reconstructed CRR image, wherein the reconstructed display image is obtained by encoding the display image, and the currently effective reconstructed CRR image is obtained by encoding the CRR image.

2. The method according to claim 1, characterized in that: The preset syntax identifier is located in the high-level parameters of the coded image bit stream, and the high-level parameters include at least one of the following: a sequence parameter set SPS, a picture parameter set PPS, and a picture header.

3. The method according to claim 1 or 2, characterized in that: The target image is: the first display image that uses the CRR image as a reference image, the first display image that only uses the CRR image as a reference image, a display image whose bitstream is transmitted after the n CRR image bitstream segments, or a CRR image whose bitstream is transmitted after the n CRR image bitstream segments.

4. The method according to any one of claims 1 to 3, characterized in that: The image information includes at least one of the following: the frame number of the target image, the decoding number of the bit stream of the target image, the frame number difference between the target image and the CRR image, or the decoding number difference between the bit stream of the target image and the bit stream of the CRR image.

5. The method according to any one of claims 1 to 4, characterized in that: The encoding operation is performed on the CRR image and the plurality of display images to obtain an encoded image bit stream, comprising: Segmenting the CRR image to obtain n CRR sub-images; Interleaving and arranging the n CRR sub-images between the multiple display images to obtain a sequence of images to be encoded; The CRR sub-images and the display images in the to-be-encoded image sequence are encoded in sequence to obtain the encoded image bit stream.

6. The method according to claim 5, characterized in that The method further comprises: Buffering a reconstructed CRR sub-image, wherein the reconstructed CRR sub-image is obtained by performing the encoding operation on the CRR sub-image; When n reconstructed CRR sub-images are cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently valid reconstructed CRR image.

7. The method according to claim 6, characterized in that The method further comprises: When starting to encode the first CRR sub-image in the to-be-encoded image sequence, removing the currently effective reconstructed CRR image; When encoding a target display image among the multiple display images, a reference image of the target display image includes the reconstructed display image, and the target display image includes: the display image between the first CRR sub-image and the last CRR sub-image in the image sequence to be encoded.

8. The method according to claim 5, characterized in that The method further comprises: When performing the encoding operation on the CRR sub-image to obtain a reconstructed CRR sub-image, updating the target area in the currently effective reconstructed CRR image to the reconstructed CRR sub-image; The positional relationship between the target area and the currently effective reconstructed CRR image is the same as a target positional relationship, and the target positional relationship is the positional relationship between the reconstructed CRR sub-image and the corresponding CRR image.

9. The method according to claim 5, characterized in that The method further comprises: Buffering each outputted CRR image bit stream segment; When n CRR image bit stream segments are cached, the cached n CRR image bit stream segments are respectively decoded and reconstructed to obtain n reconstructed CRR sub-images; The n reconstructed CRR sub-images are spliced ​​to obtain the currently valid reconstructed CRR image.

10. The method according to any one of claims 1 to 4, characterized in that: The encoding operation is performed on the CRR image and the plurality of display images to obtain an encoded image bit stream, comprising: Performing an encoding operation on the CRR image to obtain a CRR image bit stream; Slicing the CRR image bit stream to obtain the n CRR image bit stream segments; Performing encoding operations on the multiple display images in sequence to obtain the multiple display image bit streams; The n CRR image bit stream segments are interleaved and arranged between the multiple display image bit streams to obtain the coded image bit stream.

11. The method according to claim 10, characterized in that The method further comprises: caching a target reconstructed CRR image, wherein the target reconstructed CRR image is obtained by performing an encoding operation on the CRR image; When the last one of the n CRR image bit stream segments is output, the cached target reconstructed CRR image is used as the currently valid reconstructed CRR image.

12. The method according to claim 11, characterized in that The method further comprises: Buffering the CRR image bit stream; When the last CRR image bit stream segment among the n CRR image bit stream segments is output, the cached CRR image bit stream is decoded and reconstructed to obtain the currently valid reconstructed CRR image.

13. A decoding method, characterized in that: The method comprises: receiving a coded picture bitstream, the coded picture bitstream comprising interleaved ordered cross-random access point reference CRR picture bitstream segments and a display picture bitstream; Performing a decoding operation on the encoded image bit stream; Acquire a preset syntax identifier from the coded image bit stream, where the preset syntax identifier includes at least one of the following: quantity information, image information, and position information, where the quantity information indicates n, the image information indicates a target image, the bit stream of the target image is transmitted after n CRR image bit stream segments, and the position information indicates the position of the n CRR image bit stream segments in the coded image bit stream; Determine, according to the preset syntax identifier, whether the n CRR image bit stream segments exist in the coded image bit stream, the n CRR image bit stream segments correspond to one CRR image, and n is an integer greater than 1; If the n CRR image bit stream segments exist in the coded image bit stream, continue to perform a decoding operation on the coded image bit stream to obtain a reconstructed display image; The reference images of the display image bit stream include: a reconstructed display image and / or a currently effective reconstructed CRR image, wherein the reconstructed display image is obtained by decoding the display image bit stream, and the currently effective reconstructed CRR image is obtained by decoding a segment of the CRR image bit stream.

14. The method according to claim 13, characterized in that The decoding operation of the encoded image bit stream comprises: Performing a decoding operation on each received CRR image bit stream segment to obtain and cache a reconstructed CRR sub-image; If the n CRR image bit stream segments exist in the coded image bit stream, then continue to perform a decoding operation on the coded image bit stream, including: If the n CRR image bit stream segments exist in the coded image bit stream, when n reconstructed CRR sub-images are cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently valid reconstructed CRR image.

15. The method according to claim 14, characterized in that The method further comprises: When performing a decoding operation on the first CRR image bit stream segment, removing the currently effective reconstructed CRR image; The reference image of a target display image bitstream among multiple display image bitstreams includes the reconstructed display image, and the target display image bitstream includes: the display image bitstream between the first CRR image bitstream segment and the last CRR image bitstream segment in the coded image bitstream.

16. The method according to claim 13, characterized in that The decoding operation of the encoded image bit stream comprises: Decoding the received CRR image bit stream segment to obtain a reconstructed CRR sub-image; If the n CRR image bit stream segments exist in the coded image bit stream, then continue to perform a decoding operation on the coded image bit stream, including: If the n CRR image bit stream fragments exist in the coded image bit stream, the target area in the currently effective reconstructed CRR image is updated to the obtained reconstructed CRR sub-image, and the positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image.

17. The method according to claim 13, characterized in that The decoding operation of the coded image bit stream comprises: Buffering each received CRR image bit stream segment; If the n CRR image bit stream segments exist in the coded image bit stream, then continue to perform a decoding operation on the coded image bit stream, including: If the n CRR image bit stream segments exist in the coded image bit stream, a reconstructed CRR image is used as the currently effective reconstructed CRR image, and the reconstructed CRR image is obtained according to the cached n CRR image bit stream segments.

18. The method according to any one of claims 13 to 17, characterized in that The preset syntax identifier includes the quantity information, and determining whether the n CRR image bit stream segments exist in the coded image bit stream according to the preset syntax identifier includes: Counting starts from the first CRR picture bit stream segment received from the coded picture bit stream; When receiving the target bitstream, if the number of the received CRR image bitstream segments is n, it is determined that the n CRR image bitstream segments exist in the coded image bitstream; if the number of the received CRR image bitstream segments is less than n, it is determined that the n CRR image bitstream segments do not exist in the coded image bitstream; The target bitstream is a display image bitstream and the reference image is the CRR image, or the preset syntax identifier also includes the image information, and the target bitstream is a bitstream of the target image indicated by the image information.

19. The method according to any one of claims 13 to 17, characterized in that The preset syntax identifier includes the image information, and determining whether the n CRR image bit stream segments exist in the coded image bit stream according to the preset syntax identifier includes: Upon receiving a bit stream of a target image indicated by the image information, determining a size of a reconstructed CRR image, wherein the reconstructed CRR image is obtained by decoding a received segment of the CRR image bit stream; When the size of the reconstructed CRR image is equal to the size of the CRR image, determining that the n CRR image bit stream segments exist in the coded image bit stream; When the size of the reconstructed CRR image is smaller than the size of the CRR image, it is determined that the n CRR image bit stream segments do not exist in the coded image bit stream.

20. The method according to any one of claims 13 to 17, characterized in that The preset syntax identifier includes the position information, and determining whether the n CRR image bit stream segments exist in the coded image bit stream according to the preset syntax identifier includes: When the CRR image bit stream segment is received at each position indicated by the position information, determining that the n CRR image bit stream segments exist in the coded image bit stream; When the CRR image bit stream segment is not received at at least one position indicated by the position information, it is determined that the n CRR image bit stream segments do not exist in the coded image bit stream.

21. A coding device, characterized in that: include: one or more processors; a memory for storing one or more computer programs or instructions; When the one or more computer programs or instructions are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 12.

22. A decoding device, characterized in that: include: one or more processors; a memory for storing one or more computer programs or instructions; When the one or more computer programs or instructions are executed by the one or more processors, the one or more processors implement the method according to any one of claims 13 to 20.

Citation Information

Patent Citations

  • Video coding method and equipment and video decoding method and equipment

    CN107396138A

  • Method and device for generating and processing transport stream and program stream

    CN115866258A

  • Video encoding method, video decoding method, encoder, decoder, and medium

    CN117082249A

  • Picture encoder and decoder

    JP1994086263A