Coding and decoding methods, devices and equipment

By introducing an adaptive multi-transformation scheme and DST-7 and DCT-8 transformation matrix in video encoding, the problem of inefficient selection of transform core matrix in the prior art is solved, and a more efficient video encoding effect is achieved, which is suitable for multi-function video encoding standards.

CN115550649BActive Publication Date: 2025-08-26TENCENT AMERICA LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211141167.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-04-23
Filing Date
2019-11-27
Publication Date
2025-08-26
Estimated Expiration
2039-11-27

AI Technical Summary

Technical Problem

In the efficient video compression coding technology, the selection and application of transform core matrix are inefficient in the selection and application of the transform core matrix, especially in multifunctional video encoding (VVC), which requires a more efficient transformation method to optimize encoding efficiency.

Method used

Adaptive multi-transform (AMT) scheme is adopted, combined with DCT-2, DST-7 and DCT-8 transformation matrices, and video encoding is optimized by selecting the appropriate transformation core matrix, including the 8-bit main transformation core matrix of DST-7 and DCT-8, the encoding efficiency of the encoding unit is optimized.

Benefits of technology

It improves the efficiency and accuracy of video encoding, enhances the encoding performance of the encoding unit, and is suitable for efficient video compression in multifunction video encoding (VVC).

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115550649B_ABST
    Figure CN115550649B_ABST
Patent Text Reader

Abstract

The present application discloses an encoding and decoding method, apparatus, and device. A coding method includes: receiving information for encoding a video sequence; determining whether to use an 8-bit first transform core matrix of a first size type or an 8-bit second transform core matrix of a second size type for encoding the video sequence, wherein the first transform core matrix has digital elements arranged in an opposite order but with the same absolute values ​​as the second transform core matrix; and encoding the video sequence based on the determined first transform core matrix or second transform core matrix.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This disclosure claims priority to U.S. Provisional Application No. 62 / 704,036, filed on December 6, 2018, and U.S. Application No. 16 / 391,935, filed on April 23, 2019, with the U.S. Patent and Trademark Office, the entire contents of which are incorporated herein by reference. Background Art Technical Field

[0004] This application relates to video coding and decoding technology.

[0005] Description of the Prior Art

[0006] In High Efficiency Video Coding (HEVC), the main transform can be 4-point, 8-point, 16-point, and 32-point DCT-2, and the transform kernel matrix is ​​represented using an 8-bit integer, i.e., an 8-bit transform kernel. Summary of the Invention

[0007] According to some embodiments, the encoding method is performed by at least one processor, including: receiving information of a video sequence for encoding; determining whether to use an 8-bit first transform core matrix of a first size type or an 8-bit second transform core matrix of a second size type for encoding the video sequence, wherein the first transform core matrix has digital elements arranged in an opposite order but with the same absolute value as the second transform core matrix; and encoding the video sequence based on the determined first transform core matrix or the second transform core matrix.

[0008] According to some embodiments, a video sequence encoding apparatus includes at least one memory for storing computer program code, and at least one processor configured to access the at least one memory and perform operations according to the computer program code. The computer program code includes receiving code configured to cause the at least one processor to receive information about a video sequence for encoding; determining code configured to cause the at least one processor to determine whether to use an 8-bit first transform kernel matrix of a first size type or an 8-bit second transform kernel matrix of a second size type for encoding the video sequence, wherein the first transform kernel matrix has digital elements arranged in an opposite order but with the same absolute value as the second transform kernel matrix; and sending code configured to cause the at least one processor to encode the video sequence based on the determined first transform kernel matrix or second transform kernel matrix.

[0009] According to some embodiments, a device for encoding a video sequence includes a receiving module, a determining module and a sending module, wherein the receiving module is used to receive information of the video sequence for encoding; the determining module is used to determine whether to use an 8-bit first transform core matrix of a first size type or an 8-bit second transform core matrix of a second size type for encoding the video sequence, the first transform core matrix having digital elements arranged in an opposite order but with the same absolute value as the second transform core matrix; and the sending module is used to encode the video sequence based on the determined first transform core matrix or the second transform core matrix.

[0010] According to some embodiments, a computer device includes a processor and a memory, wherein the memory stores instructions, and when the instructions are executed by the processor, the processor performs the above encoding method. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Figures 1A to 1D is a diagram of an exemplary transformation kernel matrix.

[0012] Figure 2 is a simplified block diagram of a communication system according to an embodiment.

[0013] Figure 3 is a schematic diagram of a video encoder and a video decoder in a streaming environment according to an embodiment.

[0014] Figure 4 is a functional block diagram of a video decoder according to an embodiment.

[0015] Figure 5 is a functional block diagram of a video encoder according to an embodiment.

[0016] Figure 6 is a flowchart of a method for decoding or encoding a video sequence according to an embodiment.

[0017] Figure 7 is a diagram of an exemplary transformation kernel matrix according to an embodiment.

[0018] Figure 8 is a simplified block diagram of an apparatus for decoding or encoding a video sequence according to an embodiment.

[0019] Figure 9 is a diagram of a computer system suitable for implementing various embodiments. DETAILED DESCRIPTION

[0020] In HEVC, the main transforms are 4-point, 8-point, 16-point, and 32-point DCT-2, and an 8-bit integer, i.e., an 8-bit transform kernel, is used to represent the transform kernel matrix. Figures 1A to 1DAs shown, the transform kernel matrix of the smaller DCT-2 is a part of the larger DCT-2. Figure 1A A 4x4 transform is shown. Figure 1B An 8x8 transform is shown. Figure 1C A 16x16 transform is shown. Figure 1D A 32x32 transform is shown.

[0021] like Figures 1A to 1D As shown, the core of DCT-2 shows symmetric / antisymmetric properties, thus supporting the so-called "partial butterfly" implementation to reduce the number of operations (multiplication, addition / subtraction, shift), and the same result of matrix multiplication can be obtained using partial butterflies.

[0022] In Versatile Video Coding (VVC), in addition to the same 4-point, 8-point, 16-point, and 32-point DCT-2 transforms as HEVC, additional 2-point and 64-point DCT-2 transforms may also be included.

[0023] The 64-point DCT-2 kernel defined in VVC is shown below as a 64x64 matrix:

[0024]

[0025]

[0026]

[0027]

[0028] in,

[0029] {aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,b f,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck}=

[0030] {64,83,36,89,75,50,18,90,87,80,70,57,43,25,9,90,90,88,85,82,78,73,67,61,54,46,38,31,22,13,4,91,90,90,90,88,87,86,84,83,81,79,77,73,71,69,65,62,59,56,52,48,44,41,37,33,28,24,20,15,11,7,2}

[0031] In addition to DCT-2 and 4×4 Discrete Sine Transform-7 (DST-7) already adopted in HEVC, Adaptive Multiple Transform (AMT, also known as Enhanced Multiple Transform (EMT), or Multiple Transform Selection (MTS)) scheme has been used in VVC to encode the residuals of inter-frame coded blocks and intra-frame coded blocks. In addition to using the current transform in HEVC, the AMT scheme also uses multiple selected transforms of the DCT / DST series. The newly introduced transform matrices are DST-7 and DCT-8. Table 1 shows the basis functions of the selected DST / DCT.

[0032] Table 1: Transform basis functions for DCT-2, DCT-7, and DCT-8 for N-point input

[0033]

[0034] All main transform matrices in VVC are represented by 8 bits. AMT is applied to coding units (CUs) with width and height less than or equal to 32, and a flag called mts_flag controls whether AMT is applied. When mts_flag is equal to 0, DCT-2 is applied to encode the residual. When mts_flag is equal to 1, the index mts_idx is further signaled using 2 binary numbers to identify the horizontal and vertical transforms to be used according to Table 2, where a value of 1 indicates the use of DST-7 and a value of 2 indicates the use of DCT-8.

[0035] Table 2: Specification of trTypeHor and trTypeVer depending on mts_idx[x][y][cIdx]

[0036] mts_idx[xTbY][yTbY][cIdx] trTypeHor trTypeVer -1 0 0 0 1 1 1 2 1 2 1 2 3 2 2

[0037] The core of the DST-7 transformation is a matrix composed of basis vectors, which can be expressed as follows: 4 o'clock DST-7 :

[0038]

[0039] Where {a,b,c,d}={29,55,74,84}

[0040] 8 o'clock DST-7 :

[0041]

[0042] Where {a,b,c,d,e,f,g,h}={17,32,46,60,71,78,85,86}

[0043] 16 o'clock DST-7 :

[0044]

[0045] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={9,17,25,33,41,49,56,62,66,72,77,81,83,87,89,90} 32 points DST-7 :

[0046]

[0047] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={4,9,13,17,21 ,26,30,34,38,42,45,50,53,56,60,63,66,68,72,74,77,78,80,82,84,85,86,88,88,89,90,90}.

[0048] 4-point DCT-8 :

[0049]

[0050] Among them, {a,b,c,d}={84,74,55,29}.

[0051] 8-point DCT-8 :

[0052]

[0053] Where {a,b,c,d,e,f,g,h}={86,85,78,71,60,46,32,17}

[0054] 16-point DCT-8 :

[0055]

[0056]

[0057] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={90,89,87,83,81,77,72,66,62,56,49,41,33,25,17,9}

[0058] 32-point DCT-8 :

[0059]

[0060] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={90,90,89,88, 88,86,85,84,82,80,78,77,74,72,68,66,63,60,56,53,50,45,42,38,34,30,26,21,17,13,9,4}

[0061] Figure 2 2 is a simplified block diagram of a communication system (200) according to an embodiment. The communication system (200) may include at least two terminals (210-220) interconnected via a network (250). For one-way transmission of data, a first terminal (210) may encode video data at a local location for transmission to another terminal (220) via the network (250). The second terminal (220) may receive the encoded video data from the other terminal from the network (250), decode the encoded data, and display the recovered video data. One-way data transmission may be common in media service applications and the like.

[0062] Figure 2 A second pair of terminals (230, 240) is shown for supporting bidirectional transmission of encoded video that may occur, for example, during a video conference. For bidirectional transmission of data, each terminal (230, 240) can encode video data captured at a local location for transmission to the other terminal via a network (250). Each terminal (230, 240) can also receive encoded video data sent by the other terminal, can decode the encoded data, and can display the recovered video data on a local display device.

[0063] exist Figure 2In the embodiment, the terminals (210-240) may be servers, personal computers and smart phones, but the principles of the embodiments may not be limited thereto. Various embodiments are applicable to laptop computers, tablet computers, media players and / or dedicated video conferencing equipment. The network (250) represents any number of networks that transmit encoded video data between the terminals (210-240), including, for example, wired (wired) and / or wireless communication networks. The communication network (250) may exchange data in circuit switching and / or packet switching channels. The network may include a telecommunications network, a local area network, a wide area network and / or the Internet. For the purposes of this application, unless explained below, the architecture and topology of the network (250) may be irrelevant to the operation of various embodiments.

[0064] Figure 3 The following illustrates the placement of a video encoder and a video decoder in a streaming environment according to an embodiment. The subject matter disclosed herein is equally applicable to other video-enabled applications, including, for example, video conferencing, digital TV, storing compressed video on digital media including CDs, DVDs, memory sticks, and the like.

[0065] The streaming system may include an acquisition subsystem (313), which may include a video source (301), such as a digital camera, that creates, for example, an uncompressed video sample stream (302). The video sample stream (302) is depicted as a thick line to emphasize the high data volume of the video sample stream compared to the encoded video stream, and the video sample stream (302) may be processed by an encoder (303) coupled to the camera. The encoder (303) may include hardware, software, or a combination of hardware and software to implement or implement various aspects of the disclosed subject matter as described in more detail below. The encoded video stream (304) is depicted as a thin line to emphasize the lower data volume of the encoded video stream compared to the sample stream, and the encoded video stream may be stored on a streaming server (305) for future use. One or more streaming clients (306, 308) may access the streaming server (305) to retrieve a copy (307, 309) of the encoded video stream (304). The client (306) may include a video decoder (310). The video decoder (310) decodes an incoming copy of the encoded video stream (307) and produces an output video sample stream (311) that can be presented on a display (312) or another presentation device (not depicted). In some streaming systems, the video streams (304, 307, 309) may be encoded according to certain video coding / compression standards. Examples of such standards include ITU-T H.265. The video coding standard under development is informally referred to as Versatile Video Coding (VVC), and the present application may be used in the context of the VVC standard.

[0066] Figure 4 is a functional block diagram of a video decoder (310) according to an embodiment.

[0067] The receiver (410) may receive one or more codec video sequences to be decoded by the decoder (310); in the same embodiment, or in one embodiment, one coded video sequence at a time, wherein each coded video sequence is decoded independently of the other coded video sequences. The coded video sequence may be received from a channel (412), which may be a hardware / software link to a storage device storing the coded video data. The receiver (410) may receive the coded video data as well as other data, such as coded audio data and / or auxiliary data streams, which may be forwarded to their respective consuming entities (not shown). The receiver (410) may separate the coded video sequence from the other data. To prevent network jitter, a buffer memory (415) may be coupled between the receiver (410) and the entropy decoder / parser (420) (hereinafter referred to as the "parser"). However, when the receiver (410) receives data from a storage / forward device with sufficient bandwidth and controllability or from an isochronous network, the buffer memory (415) may not need to be configured, or the buffer memory may be made smaller. Of course, in order to be used on a traffic packet network such as the Internet, a buffer (415) may also be required. The buffer memory may be relatively large and may have an adaptive size.

[0068] The video decoder (310) may include a parser (420) to reconstruct symbols (421) from an entropy-encoded video sequence. The types of symbols include information used to manage the operation of the video decoder (310) and potentially information used to control a display device, such as a display screen (312), which is not part of the decoder but may be coupled to the decoder, such as Figure 4As shown in . The control information for the display device may be a parameter set fragment (not shown) of Supplementary Enhancement Information (SEI message) or Video Usability Information (VUI). The parser (420) may parse / entropy decode the received coded video sequence. The coding of the coded video sequence may be performed according to a video coding technique or standard and may follow principles well known to those skilled in the art, including variable length coding, Huffman coding, arithmetic coding with or without context sensitivity, and the like. The parser (420) may extract a subgroup parameter set for at least one subgroup of the subgroups of pixels in the video decoder from the coded video sequence based on at least one parameter corresponding to the group. The subgroup may include a Group of Pictures (GOP), a picture, a tile, a slice, a macroblock, a Coding Unit (CU), a block, a Transform Unit (TU), a Prediction Unit (PU), and the like. Entropy decoders and parsers can also extract information from the encoded video sequence, such as transform coefficients, quantizer parameter absolute values, motion vectors, etc.

[0069] The parser (420) may perform entropy decoding / parsing operations on a video sequence received from the buffer (415) to create symbols (421). The parser (420) may receive encoded data and selectively decode specific symbols (421). In addition, the parser (420) may determine whether to provide the specific symbols (421) to the motion compensation prediction unit (453), the scaler / inverse transform unit (451), the intra prediction unit (452), or the loop filter unit (454).

[0070] Depending on the type of coded video picture or portion of a coded video picture (e.g., inter-frame and intra-frame pictures, inter-frame blocks and intra-frame blocks) and other factors, the reconstruction of the symbol (421) may involve multiple different units. Which units are involved and how they are involved can be controlled by subgroup control information parsed from the coded video sequence by the parser (420). For the sake of brevity, the flow of such subgroup control information between the parser (420) and the multiple units below is not described.

[0071] In addition to the functional blocks already mentioned, the decoder (310) can be conceptually subdivided into several functional units as described below. In a practical embodiment operating under commercial constraints, many of these units interact closely with each other and can be integrated with each other. However, for the purpose of describing the disclosed subject matter, the conceptual subdivision into the following functional units is appropriate.

[0072] The first unit is a scaler / inverse transform unit (451). The scaler / inverse transform unit (451) receives quantized transform coefficients as symbols (421) from the parser (420) along with control information, including which transform method to use, block size, quantization factor, quantization scaling matrix, etc. The scaler / inverse transform unit (451) may output a block comprising sample values, which may be input to an aggregator (455).

[0073] In some cases, the output samples of the scaler / inverse transform unit (451) may belong to an intra-coded block; that is, a block that does not use predictive information from a previously reconstructed picture, but may use predictive information from a previously reconstructed portion of the current picture. Such predictive information may be provided by the intra-picture prediction unit (452). In some cases, the intra-picture prediction unit (452) uses reconstructed information extracted from the current (partially reconstructed) picture (456) to generate surrounding blocks of the same size and shape as the block being reconstructed. In some cases, the aggregator (455) adds the prediction information generated by the intra-prediction unit (452) to the output sample information provided by the scaler / inverse transform unit (451) on a per-sample basis.

[0074] In other cases, the output samples of the scaler / inverse transform unit (451) may belong to inter-frame coded and potentially motion compensated blocks. In this case, the motion compensated prediction unit (453) may access the reference picture memory (457) to extract samples for prediction. After the extracted samples are motion compensated according to the symbols (421), these samples may be added to the output of the scaler / inverse transform unit (in this case referred to as residual samples or residual signal) by the aggregator (455) to generate output sample information. The retrieval of the prediction samples by the motion compensated prediction unit from the address in the reference picture memory may be controlled by a motion vector, and the motion vector is provided to the motion compensated prediction unit in the form of the symbols (421), which may include, for example, X, Y and reference picture components. Motion compensation may also include interpolation of sample values ​​extracted from the reference picture memory when using sub-sample accurate motion vectors, motion vector prediction mechanisms, etc.

[0075] The output samples of the aggregator (455) may be used by various loop filtering techniques in a loop filter unit (454). The video compression techniques may include in-loop filtering techniques controlled by parameters included in the coded video stream and made available to the loop filter unit (454) as symbols (421) from the parser (420). However, in other embodiments, the video compression techniques may also be responsive to meta-information obtained during decoding of a previous (in decoding order) portion of a coded picture or coded video sequence, as well as to previously reconstructed and loop-filtered sample values.

[0076] The output of the loop filter unit (454) may be a sample stream that may be output to a display device (312) and stored in a reference picture memory (456) for subsequent inter-picture prediction.

[0077] Once fully reconstructed, certain coded pictures can be used as reference pictures for future prediction. Once a coded picture is fully reconstructed and the coded picture is identified as a reference picture (e.g., by a parser (420)), a current reference picture (456) can become part of a reference picture buffer (457) and new current picture memory can be reallocated before starting reconstruction of a subsequent coded picture.

[0078] The video decoder (310) may perform decoding operations according to a predetermined video compression technique, such as that documented in the ITU-T H.265 standard. The coded video sequence may conform to the syntax specified by the video compression technique or standard used, in the sense that the coded video sequence adheres to the syntax of the video compression technique or standard, as specified in the video compression technique document or standard, and in particular, the profiles therein. Compliance may also require that the complexity of the coded video sequence be within the limits defined by the hierarchy of the video compression technique or standard. In some cases, the hierarchy limits the maximum picture size, maximum frame rate, maximum reconstruction sampling rate (measured in, for example, megasamples per second), maximum reference picture size, etc. In some cases, the limits set by the hierarchy may be further defined by the Hypothetical Reference Decoder (HRD) specification and metadata for HRD buffer management signaled in the coded video sequence.

[0079] In an embodiment, a receiver (410) may receive additional (redundant) data along with the encoded video. The additional data may be part of the encoded video sequence. The additional data may be used by the video decoder (310) to properly decode the data and / or more accurately reconstruct the original video data. The additional data may be in the form of, for example, temporal, spatial, or signal-to-noise ratio (SNR) enhancement layers, redundant slices, redundant pictures, forward error correction codes, and the like.

[0080] Figure 5 is a functional block diagram of a video encoder (303) according to an embodiment.

[0081] The encoder (303) may receive video samples from a video source (301) (not part of the encoder) that may capture video images to be encoded by the encoder (303).

[0082] The video source (301) may provide a source video sequence in the form of a stream of digital video samples to be encoded by the encoder (303), wherein the stream of digital video samples may have any suitable bit depth (e.g., 8-bit, 10-bit, 12-bit, ...), any color space (e.g., BT.601 Y CrCB, RGB, ...), and any suitable sampling structure (e.g., Y CrCb 4:2:0, Y CrCb 4:4:4). In a media serving system, the video source (301) may be a storage device storing previously prepared videos. In a video conferencing system, the video source (301) may be a camera that captures local image information as a video sequence. The video data may be provided as a plurality of individual pictures that are given motion when viewed sequentially. The pictures themselves may be constructed as a spatial array of pixels, where each pixel may include one or more samples depending on the sampling structure, color space, etc. used. The relationship between pixels and samples may be readily understood by those skilled in the art. The following description focuses on samples.

[0083] According to an embodiment, the encoder (303) may encode and compress pictures of a source video sequence into an encoded video sequence (543) in real time or under any other time constraints required by the application. Implementing an appropriate encoding speed is a function of the controller (550). The controller controls other functional units as described below and is functionally coupled to these units. For the sake of simplicity, the coupling is not shown in the figure. The parameters set by the controller (550) may include rate control related parameters (picture skipping, quantizer, lambda value of rate-distortion optimization technology, etc.), picture size, group of pictures (GOP) layout, maximum motion vector search range, etc. Those skilled in the art can easily identify other functions of the controller (550) because these functions may be related to the video encoder (303) optimized for a specific system design.

[0084] Some video encoders operate in a "coding loop" manner that is well understood by those skilled in the art. As a simplified description, the coding loop may include the encoding portion of the encoder (530) (hereinafter referred to as the "source encoder") (responsible for creating symbols based on the input picture to be encoded and the reference picture) and a (local) decoder (533) embedded in the encoder (303). The decoder (533) reconstructs the symbols to create sample data in the same way that the (remote) decoder creates sample data (because in the video compression technology considered in this application, any compression between the symbols and the encoded video code stream is lossless). The reconstructed sample stream is input to the reference picture memory (534). Since the decoding of the symbol stream produces bit-accurate results regardless of the decoder location (local or remote), the contents of the reference picture buffer are also bit-accurate between the local encoder and the remote encoder. In other words, the reference picture samples "seen" by the prediction portion of the encoder are exactly the same sample values ​​that the decoder will "see" when using prediction during decoding. This basic principle of reference picture synchronization (and the drift that occurs when synchronization cannot be maintained, for example due to channel errors) is well known to those skilled in the art.

[0085] The operation of the "local" decoder (533) can be combined with the operation of Figure 4 The same "remote" decoder (310) as described in detail. However, additional brief reference is made to Figure 4 , when symbols are available and the entropy encoder (545) and parser (420) are capable of losslessly encoding / decoding the symbols into an encoded video sequence, the entropy decoding portion of the decoder (310), including the channel (412), receiver (410), buffer (415) and parser (420), may not be fully implemented in the local decoder (533).

[0086] At this point, it can be observed that any decoder technique other than parsing / entropy decoding present in the decoder must also be present in essentially the same functional form in the corresponding encoder. The description of the encoder technique can be simplified because the encoder technique is the inverse of the decoder technique described comprehensively. A more detailed description is required only in certain areas and is provided below.

[0087] As part of its operation, the source encoder (530) may perform motion-compensated predictive coding. The motion-compensated predictive coding predictively encodes an input frame with reference to one or more previously encoded frames from a video sequence, designated as "reference frames." In this manner, the encoding engine (532) encodes the differences between pixel blocks of the input frame and pixel blocks of a reference frame that may be selected as a prediction reference for the input frame.

[0088] The local video decoder (533) may decode the encoded video data of a frame that may be designated as a reference frame based on the symbols created by the source encoder (530). The operation of the encoding engine (532) may be a lossy process. When the encoded video data is available at the video decoder ( Figure 4 When decoded at a remote location (not shown), the reconstructed video sequence may typically be a copy of the source video sequence with some errors. The local video decoder (533) replicates the decoding process that the video decoder may perform on the reference frame and may cause the reconstructed reference frame to be stored in the reference picture cache (534). In this way, the encoder (303) may locally store a copy of the reconstructed reference frame that has common content (absent transmission errors) with the reconstructed reference frame that will be obtained by the remote video decoder.

[0089] The predictor (535) may perform a prediction search for the encoding engine (532). That is, for a new frame to be encoded, the predictor (535) may search the reference picture memory (534) for sample data (as candidate reference pixel blocks) or certain metadata, such as reference picture motion vectors, block shapes, etc., that may serve as suitable prediction references for the new frame. The predictor (535) may operate on a pixel-by-pixel-block basis based on sample blocks to find a suitable prediction reference. In some cases, based on the search results obtained by the predictor (535), it may be determined that the input picture may have prediction references taken from multiple reference pictures stored in the reference picture memory (534).

[0090] The controller (550) can manage encoding operations of the video encoder (530), including, for example, setting parameters and subgroup parameters for encoding video data.

[0091] The outputs of all the above functional units may be entropy coded in an entropy encoder (545). The entropy encoder performs lossless compression on the symbols generated by the various functional units according to techniques known to those skilled in the art, such as Huffman coding, variable length coding, arithmetic coding, etc., thereby converting the symbols into a coded video sequence.

[0092] The transmitter (540) can buffer the encoded video sequence created by the entropy encoder (545) in preparation for transmission over a communication channel (560), which can be a hardware / software link to a storage device where the encoded video data will be stored. The transmitter (540) can combine the encoded video data from the video encoder (530) with other data to be transmitted, such as encoded audio data and / or an auxiliary data stream (source not shown).

[0093] The controller (550) can manage the operation of the encoder (303). During encoding, the controller (550) can assign a certain coded picture type to each coded picture, but this may affect the coding techniques that can be applied to the corresponding picture. For example, a picture can generally be assigned to any of the following frame types:

[0094] An intra picture (I picture) can be a picture that can be encoded and decoded without using any other frame in the sequence as a prediction source. Some video codecs allow different types of intra pictures, including, for example, Independent Decoder Refresh (IDR) pictures. Those skilled in the art are aware of the variations of I pictures and their corresponding applications and features.

[0095] A predictive picture (P picture) may be a picture that can be encoded and decoded using intra prediction or inter prediction, which uses at most one motion vector and a reference index to predict sample values ​​for each block.

[0096] Bidirectionally predictive pictures (B pictures) can be encoded and decoded using intra prediction or inter prediction, which uses up to two motion vectors and reference indices to predict sample values ​​for each block. Similarly, multiple predictive pictures can use more than two reference pictures and associated metadata to reconstruct a single block.

[0097] A source picture is typically spatially subdivided into blocks of samples (e.g., blocks of 4×4, 8×8, 4×8, or 16×16 samples) and coded block by block. These blocks can be predictively coded with reference to other (already coded) blocks, determined according to the coding allocation applied to the block's corresponding picture. For example, blocks of an I picture can be non-predictively coded, or they can be predictively coded (spatial prediction or intra-frame prediction) with reference to already coded blocks of the same picture. Pixel blocks of a P picture can be non-predictively coded using spatial prediction with reference to one previously coded reference picture or using temporal prediction. Blocks of a B picture can be non-predictively coded using spatial prediction with reference to one or two previously coded reference pictures or using temporal prediction.

[0098] The video encoder (303) may perform encoding operations according to a predetermined video coding technique or standard, such as ITU-T Recommendation H.265. In operation, the video encoder (303) may perform various compression operations, including predictive coding operations that exploit temporal and spatial redundancy in the input video sequence. Thus, the encoded video data may conform to the syntax specified by the video coding technique or standard used.

[0099] In an embodiment, the transmitter (540) may transmit additional data along with the encoded video. The video encoder (530) may include such data as part of the encoded video sequence. The additional data may include temporal / spatial / SNR enhancement layers, redundant pictures and slices, and other forms of redundant data, SEI messages, VUI parameter set fragments, and the like.

[0100] The 8-bit main transform cores of DST-7 and DCT-8 in VVC can be further adjusted to improve coding efficiency or accuracy.

[0101] For example, according to one embodiment, a set of 8-bit DST-7 and DCT-8 transform kernels is proposed.The methods proposed below can be used individually or in combination in any order.

[0102] According to one embodiment, the transformation kernel matrix may be: 32 points DST-7 :

[0103]

[0104] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={4,9,13,17,21 ,26,30,34,38,42,46,50,53,56,60,63,66,68,72,74,77,78,80,82,84,85,86,87,88,89,90,90}.

[0105] 32-point DCT-8 :

[0106]

[0107]

[0108] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={90,90,89,88, 87,86,85,84,82,80,78,77,74,72,68,66,63,60,56,53,50,46,42,38,34,30,26,21,17,13,9,4}.

[0109] According to another embodiment, the transformation kernel matrix may be: 16 o'clock DST-7 :

[0110]

[0111] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={9,17,25,33,41,48,55,61,68,72,77,81,85,86,88,89}.

[0112] 16-point DCT-8 :

[0113]

[0114]

[0115] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={89,88,86,85,81,77,72,68,61,55,48,41,33,25,17,9}.

[0116] According to another embodiment, the transformation kernel matrix may be: 16 o'clock DST-7 :

[0117]

[0118] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={8,17,25,33,40,48,55,62,68,73,77,81,85,87,88,88}.

[0119] 16-point DCT-8 :

[0120]

[0121] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={88,88,87,85,81,77,73,68,62,55,48,40,33,25,17,8}.

[0122] According to another embodiment, the transformation kernel matrix may be: 16 o'clock DST-7 :

[0123]

[0124]

[0125] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={8,16,25,33,41,48,55,62,68,73,77,81,84,87,88,89}.

[0126] 16-point DCT-8 :

[0127]

[0128] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={89,88,87,84,81,77,73,68,62,55,48,41,33,25,16,8}.

[0129] According to another embodiment, the transformation kernel matrix may be: 16 o'clock DST-7 :

[0130]

[0131]

[0132] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={8,16,25,33,40,48,55,62,68,73,77,81,84,87,88,88}.

[0133] 16-point DCT-8 :

[0134]

[0135] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={88,88,87,84,81,77,73,68,62,55,48,40,33,25,16,8}.

[0136] According to another embodiment, the transformation kernel matrix may be: 16 o'clock DST-7 :

[0137]

[0138] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={7,18,25,34,40,48,54,61,68,74,77,81,86,86,88,88}.

[0139] 16-point DCT-8 :

[0140]

[0141]

[0142] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={88,88,86,86,81,77,74,68,61,54,48,40,34,25,18,7}.

[0143] According to another embodiment, the transformation kernel matrix may be: 16 o'clock DST-7 :

[0144]

[0145] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={7,17,25,33,40,48,55,62,68,74,77,81,85,87,88,88}.

[0146] 16-point DCT-8 :

[0147]

[0148] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={88,88,87,85,81,77,74,68,62,55,48,40,33,25,17,7}.

[0149] According to another embodiment, the transformation kernel matrix may be: 16 o'clock DST-7 :

[0150]

[0151] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={7,16,25,33,40,48,55,62,68,74,77,81,84,87,88,88}.

[0152] 16-point DCT-8 :

[0153]

[0154] Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={88,88,87,84,81,77,74,68,62,55,48,40,33,25,16,7}.

[0155] Figure 6 is a flowchart of a method (600) for decoding or encoding a video sequence according to an embodiment. In some embodiments, Figure 6One or more process blocks of may be performed by the decoder (310). In some embodiments, Figure 6 One or more process blocks of may be performed by another device or group of devices, such as the encoder (303), separate from or including the decoder (310).

[0156] refer to Figure 6 , in a first block ( 610 ), the method ( 600 ) includes receiving information about a video sequence to encode or decode.

[0157] In a second block (620), the method (600) includes determining whether to use a first transform kernel matrix of a first size type or a second transform kernel matrix of a second size type for encoding or decoding of a video sequence.

[0158] In a third block (630), the method (600) includes sending information based on the determination, the information causing the video sequence to be encoded or decoded using the determined first transform kernel matrix or the second transform kernel matrix.

[0159] although Figure 6 Exemplary steps of method (600) are shown, but in some embodiments, method (600) may include Figure 6 The steps of method (600) may be more steps, fewer steps, different steps, or steps arranged differently than those depicted in FIG. Additionally or alternatively, two or more steps of method (600) may be performed in parallel.

[0160] Furthermore, the proposed method may be implemented by a processing circuit (eg, one or more processors, or one or more integrated circuits). In an example, one or more processors execute a program stored in a non-transitory computer-readable medium to perform one or more proposed methods.

[0161] Figure 7 Exemplary transform core matrices according to embodiments are shown. For example, transform core matrix 701 shows a transform core matrix of 16-point discrete sine transform (DST)-7, and transform core matrix 702 shows a transform core matrix of discrete cosine transform (DCT)-8.

[0162] Figure 8 is a simplified block diagram of an apparatus (800) for decoding or encoding a video sequence according to an embodiment.

[0163] refer to Figure 8 , the device (800) includes a receiving code (810), a determining code (820) and a sending code (830).

[0164] The receiving code (810) is configured to cause at least one processor to receive information about a video sequence for encoding or decoding.

[0165] Determining code (820) is used to cause at least one processor to determine whether to use a first transform kernel matrix of a first size type or a second transform kernel matrix of a second size type for encoding or decoding a video sequence.

[0166] The sending code (830) is used to cause at least one processor to send information based on the determination, where the information causes the video sequence to be encoded or decoded using the determined first transform kernel matrix or the second transform kernel matrix.

[0167] The above-described techniques may be implemented as computer software via computer-readable instructions and physically stored in one or more computer-readable media.

[0168] Figure 9 is a diagram of a computer system (900) suitable for implementing an embodiment.

[0169] The computer software may be encoded in any suitable machine code or computer language, and may be assembled, compiled, linked, or other mechanisms to create a code comprising instructions, which may be directly executed by a computer central processing unit (CPU), graphics processing unit (GPU), or the like, or executed through decoding, microcode, or the like.

[0170] The instructions may be executed on various types of computers or components thereof, including, for example, personal computers, tablets, servers, smartphones, gaming devices, IoT devices, and the like.

[0171] Figure 9 The components shown for the computer system (900) are exemplary in nature and are not intended to limit the scope of use or functionality of computer software implementing the embodiments. Nor should the configuration of the components be interpreted as having any dependency or requirement on any one or combination of components shown in the exemplary embodiment of the computer system (900).

[0172] The computer system (900) may include certain human-computer interface input devices. Such human-computer interface input devices may respond to input from one or more human users through tactile input (e.g., keyboard input, sliding, data glove movement), audio input (e.g., sound, applause), visual input (e.g., gestures), and olfactory input (not shown). The human-computer interface devices may also be used to capture certain media that are not necessarily directly related to conscious human input, such as audio (e.g., speech, music, ambient sound), images (e.g., scanned images, photographic images obtained from a still camera), and video (e.g., two-dimensional video, three-dimensional video including stereoscopic video).

[0173] The human-computer interface input device may include one or more of the following (only one of which is depicted): keyboard (901), mouse (902), touchpad (903), touch screen (910), data gloves (904), joystick (905), microphone (906), scanner (907), camera (908).

[0174] The computer system (900) may also include certain human-computer interface output devices. Such human-computer interface output devices may stimulate one or more human user senses through, for example, tactile output, sound, light, and smell / taste. Such human-computer interface output devices may include tactile output devices (e.g., tactile feedback through a touch screen (910), a data glove (904), or a joystick (905), but there may also be tactile feedback devices that are not used as input devices), audio output devices (e.g., speakers (909), headphones (not shown)), visual output devices (e.g., screens (910) including cathode ray tubes (CRTs), liquid crystal displays (LCDs), plasma screens, and organic light-emitting diodes (OLEDs), each with or without touch screen input capabilities, each with or without tactile feedback capabilities—some of which may output two-dimensional visual outputs or outputs of more than three dimensions through means such as stereoscopic image output; virtual reality glasses (not shown), holographic displays, and cigarette boxes (not shown)), and printers (not shown).

[0175] The computer system (900) may also include human-accessible storage devices and their associated media, such as optical media including high-density read-only / rewritable optical disks (CD / DVD ROM / RW) (920) with CD / DVD or similar media (921), thumb drives (922), removable hard drives or solid-state drives (923), traditional magnetic media such as magnetic tapes and floppy disks (not shown), dedicated ROM / ASIC / PLD-based devices such as security software dongles (not shown), and the like.

[0176] Those skilled in the art will also understand that the term "computer-readable media" used in connection with the disclosed subject matter does not include transmission media, carrier waves, or other transient signals.

[0177] The computer system (900) may also include an interface to one or more communication networks. For example, the network may be wireless, wired, or optical. The network may also be a local area network, a wide area network, a metropolitan area network, an in-vehicle network, an industrial network, a real-time network, a delay-tolerant network, and the like. Networks also include local area networks such as Ethernet, wireless local area networks, cellular networks (GSM, 3G, 4G, 5G, LTE, etc.), television wired or wireless wide area digital networks (including cable television, satellite television, and terrestrial broadcast television), in-vehicle and industrial networks (including CANBus), and the like. Some networks typically require an external network interface adapter for connecting to some universal data port or peripheral bus (949) (e.g., a USB port of the computer system (900)); other systems are typically integrated into the core of the computer system (900) by connecting to a system bus as described below (e.g., an Ethernet interface integrated into a PC computer system or a cellular network interface integrated into a smartphone computer system). By using any of these networks, the computer system (900) can communicate with other entities. The communication can be one-way, for receiving only (e.g., wireless television), one-way, for sending only (e.g., a CAN bus to certain CAN bus devices), or two-way, such as to other computer systems via a local or wide area digital network. Each of the above networks and network interfaces can use certain protocols and protocol stacks.

[0178] The aforementioned human-machine interface devices, human-accessible storage devices, and network interfaces may be connected to the core (940) of the computer system (900).

[0179] The core (940) may include one or more central processing units (CPUs) (941), graphics processing units (GPUs) (942), dedicated programmable processing units in the form of field programmable gate arrays (FPGAs) (943), hardware accelerators for specific tasks (944), and the like. These devices, as well as read-only memory (ROM) (945), random access memory (946), internal mass storage (e.g., internal non-user accessible hard disk drives, solid-state drives, etc.) (947), and the like, may be connected via a system bus (948). In some computer systems, the system bus (948) may be accessed in the form of one or more physical plugs so that it can be expanded with additional central processing units, graphics processing units, and the like. Peripheral devices may be attached directly to the core's system bus (948) or connected via a peripheral bus (949). Peripheral bus architectures include PCI (Peripheral Controller Interface), USB (Universal Serial Bus), and the like.

[0180] The CPU (941), GPU (942), FPGA (943), and accelerator (944) can execute certain instructions, which, when combined, can constitute the aforementioned computer code. The computer code can be stored in ROM (945) or RAM (946). Transient data can also be stored in RAM (946), while permanent data can be stored, for example, in internal mass storage (947). Fast storage and retrieval of any memory device can be achieved by using a cache memory, which can be closely associated with one or more CPUs (941), GPUs (942), mass storage (947), ROM (945), RAM (946), etc.

[0181] The computer readable medium may have computer code thereon for performing various computer-implemented operations. The medium and computer code may be specially designed and constructed for the purposes of the embodiments, or may be medium and code well known and available to those skilled in the art of computer software.

[0182] As an example and not a limitation, a computer system having architecture (900), in particular a core (940), can provide functionality as a processor (including a CPU, GPU, FPGA, accelerator, etc.) to execute software contained in one or more tangible computer-readable media. Such a computer-readable medium can be a medium associated with the aforementioned user-accessible mass storage, as well as a specific memory of the core (940) having non-volatile properties, such as a core internal mass storage (947) or ROM (945). Software for implementing various embodiments of 9 can be stored in such a device and executed by the core (940). Depending on specific needs, the computer-readable medium may include one or more storage devices or chips. The software can enable the core (940), in particular the processor therein (including a CPU, GPU, FPGA, etc.) to execute a specific process or a specific part of a specific process described herein, including defining a data structure stored in RAM (946) and modifying such a data structure according to a software-defined process. Additionally or alternatively, the computer system may provide functionality hardwired in logic or otherwise contained in circuitry (e.g., accelerator (944)) that may operate in place of or in conjunction with software to perform a particular process or a particular portion of a particular process described herein. Where appropriate, references to software may include logic and vice versa. Where appropriate, references to a computer-readable medium may include circuitry (e.g., an integrated circuit (IC)) storing the executing software, circuitry containing the executing logic, or both. Embodiments include any suitable combination of hardware and software.

[0183] Although this application has described a number of exemplary embodiments, various modifications, permutations, and equivalent substitutions of the embodiments are within the scope of this application. Therefore, it should be understood that those skilled in the art will be able to design a variety of systems and methods that, although not explicitly shown or described herein, embody the principles of this application and are therefore within the spirit and scope of this application.

Claims

1. A decoding method, characterized in that: The method comprises: receiving video sequence information for decoding; determining, for decoding the video sequence, whether to use a first 8-bit transform kernel matrix of a first size type or a second 8-bit transform kernel matrix of a second size type, the first transform kernel matrix having digital elements arranged in an opposite order but having the same absolute values ​​as the second transform kernel matrix; and decoding the video sequence based on the determined first transform kernel matrix or the second transform kernel matrix; wherein the first transform core matrix is ​​DST-7, and the second transform core matrix is ​​DCT-8; When the first transform kernel matrix is ​​16-point DST-7 and the second transform kernel matrix is ​​16-point DCT-8, The 16-point DST-7 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p} {c,f,i,l,o,o,l,i,f,c,0,-c,-f,-i,-l,-o} {e,j,o,m,h,c,-b,-g,-l,-p,-k,-f,-a,d,i,n} {g,n,l,e,-b,-i,-p,-j,-c,d,k,o,h,a,-f,-m} {i,o,f,-c,-l,-l,-c,f,o,i,0,-i,-o,-f,c,l} {k,k,0,-k,-k,0,k,k,0,-k,-k,0,k,k,0,-k} {m,g,-f,-n,-a,l,h,-e,-o,-b,k,i,-d,-p,-c,j} {o,c,-l,-f,i,i,-f,-l,c,o,0,-o,-c,l,f,-i} {p,-a,-o,b,n,-c,-m,d,l,-e,-k,f,j,-g,-i,h} {n,-e,-i,j,d,-o,a,m,-f,-h,k,c,-p,b,l,-g} {l,-i,-c,o,-f,-f,o,-c,-i,l,0,-l,i,c,-o,f} {j,-m,c,g,-p,f,d,-n,i,a,-k,l,-b,-h,o,-e} {h,-p,i,-a,-g,o,-j,b,f,-n,k,-c,-e,m,-l,d} {f,-l,o,-i,c,c,-i,o,-l,f,0,-f,l,-o,i,-c} {d,-h,l,-p,m,-i,e,-a,-c,g,-k,o,-n,j,-f,b} {b,-d,f,-h,j,-l,n,-p,o,-m,k,-i,g,-e,c,-a} The 16-point DCT-8 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p} {b,e,h,k,n,0,-n,-k,-h,-e,-b,-b,-e,-h,-k,-n} {c, h, m, -p, -k, -f, -a, -e, -j, -o, n, i, d, b, g, l} {d, k, -p, -i, -b, -f, -m, n, g, a, h, o, -l, -e, -c, -j} {e, n, -k, -b, -h, 0, h, b, k, -n, -e, -e, -n, k, b, h} {f, 0, -f, -f, 0, f, f, 0, -f, -f, 0, f, f, 0, -f, -f} {g, -n, -a, -m, h, f, -o, -b, -l, i, e, -p, -c, -k, j, d} {h, -k, -e, n, b, 0, -b, -n, e, k, -h, -h, k, e, -n, -b} {i, -h, -j, g, k, -f, -l, e, m, -d, -n, c, o, -b, -p, a} {j, -e, -o, a, -n, -f, i, k, -d, -p, b, -m, -g, h, l, -c} {k, -b, n, h, -e, 0, e, -h, -n, b, -k, -k, b, -n, -h, e} {l, -b, i, o, -e, f, -p, -h, c, -m, -k, a, -j, -n, d, -g} {m, -e, d, -l, -n, f, -c, k, o, -g, b, -j, -p, h, -a, i} {n, -h, b, -e, k, 0, -k, e, -b, h, -n, -n, h, -b, e, -k} {o, -k, g, -c, b, -f, j, -n, -p, l, -h, d, -a, e, -i, m} {p, -n, l, -j, h, -f, d, -b, a, -c, e, -g, i, -k, m, -o}。 2. The method according to claim 1, characterized in that When the first transformation core matrix is the 32-point DST-7, the 32-point DST-7 is constructed using the following matrix: {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F} {c, f, i, l, o, r, u, x, A, D, F, C, z, w, t, q, n, k, h, e, b, -a, -d, -g, -j, -m, -p, -s, -v, -y, -B, -E} {e, j, o, t, y, D, D, y, t, o, j, e, 0, -e, -j, -o, -t, -y, -D, -D, -y, -t, -o, -j, -e, 0, e, j, o, t, y, D} {g, n, u, B, D, w, p, i, b, -e, -l, -s, -z, -F, -y, -r, -k, -d, c, j, q, x, E, A, t, m, f, -a, -h, -o, -v, -C} {i, r, A, C, t, k, b, -g, -p, -y, -E, -v, -m, -d, e, n, w, F, x, o, f, -c, -l, -u, -D, -z, -q, -h, a, j, s, B} {k,v,F,u,j,-a,-l,-w,-E,-t,-i,b,m,x,D,s,h,-c,-n,-y,-C,-r,-g,d,o,z,B,q,f,-e,-p,-A} {m,z,z,m,0,-m,-z,-z,-m,0,m,z,z,m,0,-m,-z,-z,-m,0,m,z,z,m,0,-m,-z,-z,-m,0,m,z} {o,D,t,e,-j,-y,-y,-j,e,t,D,o,0,-o,-D,-t,-e,j,y,y,j,-e,-t,-D,-o,0,o,D,t,e,-j,-y} {q,E,n,-c,-t,-B,-k,f,w,y,h,-i,-z,-v,-e,l,C,s,b,-o,-F,-p,a,r,D,m,-d,-u,-A,-j,g,x} {s,A,h,-k,-D,-p,c,v,x,e,-n,-F,-m,f,y,u,b,-q,-C,-j,i,B,r,-a,-t,-z,-g,l,E,o,-d,-w} {u,w,b,-s,-y,-d,q,A,f,-o,-C,-h,m,E,j,-k,-F,-l,i,D,n,-g,-B,-p,e,z,r,-c,-x,-t,a,v} {w,s,-d,-A,-o,h,E,k,-l,-D,-g,p,z,c,-t,-v,a,x,r,-e,-B,-n,i,F,j,-m,-C,-f,q,y,b,-u} {y,o,-j,-D,-e,t,t,-e,-D,-j,o,y,0,-y,-o,j,D,e,-t,-t,e,D,j,-o,-y,0,y,o,-j,-D,-e,t} {A,k,-p,-v,e,F,f,-u,-q,j,B,a,-z,-l,o,w,-d,-E,-g,t,r,-i,-C,-b,y,m,-n,-x,c,D,h,-s} {C,g,-v,-n,o,u,-h,-B,a,D,f,-w,-m,p,t,-i,-A,b,E,e,-x,-l,q,s,-j,-z,c,F,d,-y,-k,r} {E,c,-B,-f,y,i,-v,-l,s,o,-p,-r,m,u,-j,-x,g,A,-d,-D,a,F,b,-C,-e,z,h,-w,-k,t,n,-q} {F,-a,-E,b,D,-c,-C,d,B,-e,-A,f,z,-g,-y,h,x,-i,-w,j,v,-k,-u,l,t,-m,-s,n,r,-o,-q,p} {D,-e,-y,j,t,-o,-o,t,j,-y,-e,D,0,-D,e,y,-j,-t,o,o,-t,-j,y,e,-D,0,D,-e,-y,j,t,-o} {B,-i,-s,r,j,-A,-a,C,-h,-t,q,k,-z,-b,D,-g,-u,p,l,-y,-c,E,-f,-v,o,m,-x,-d,F,-e,-w,n} {z,-m,-m,z,0,-z,m,m,-z,0,z,-m,-m,z,0,-z,m,m,-z,0,z,-m,-m,z,0,-z,m,m,-z,0,z,-m} {x,-q,-g,E,-j,-n,A,-c,-u,t,d,-B,m,k,-D,f,r,-w,-a,y,-p,-h,F,-i,-o,z,-b,-v,s,e,-C,l} {v,-u,-a,w,-t,-b,x,-s,-c,y,-r,-d,z,-q,-e,A,-p,-f,B,-o,-g,C,-n,-h,D,-m,-i,E,-l,-j,F,-k} {t,-y,e,o,-D,j,j,-D,o,e,-y,t,0,-t,y,-e,-o,D,-j,-j,D,-o,-e,y,-t,0,t,-y,e,o,-D,j} {r,-C,k,g,-y,v,-d,-n,F,-o,-c,u,-z,h,j,-B,s,-a,-q,D,-l,-f,x,-w,e,m,-E,p,b,-t,A,-i} {p,-F,q,-a,-o,E,-r,b,n,-D,s,-c,-m,C,-t,d,l,-B,u,-e,-k,A,-v,f,j,-z,w,-g,-i,y,-x,h} {n,-B,w,-i,-e,s,-F,r,-d,-j,x,-A,m,a,-o,C,-v,h,f,-t,E,-q,c,k,-y,z,-l,-b,p,-D,u,-g} {l,-x,C,-q,e,g,-s,E,-v,j,b,-n,z,-A,o,-c,-i,u,-F,t,-h,-d,p,-B,y,-m,a,k,-w,D,-r,f} {j,-t,D,-y,o,-e,-e,o,-y,D,-t,j,0,-j,t,-D,y,-o,e,e,-o,y,-D,t,-j,0,j,-t,D,-y,o,-e} {h,-p,x,-F,y,-q,i,-a,-g,o,-w,E,-z,r,-j,b,f,-n,v,-D,A,-s,k,-c,-e,m,-u,C,-B,t,-l,d} {f, -l, r, -x, D, -C, w, -q, k, -e, -a, g, -m, s, -y, E, -B, v, -p, j, -d, -b, h, -n, t, -z, F, -A, u, -o, i, -c} {d, -h, l, -p, t, -x, B, -F, C, -y, u, -q, m, -i, e, -a, -c, g, -k, o, -s, w, -A, E, -D, z, -v, r, -n, j, -f, b} {b, -d, f, -h, j, -l, n, -p, r, -t, v, -x, z, -B, D, -F, E, -C, A, -y, w, -u, s, -q, o, -m, k, -i, g, -e, c, -a} 3. The method according to claim 1 or 2, characterized in that When the second transformation core matrix is a 32 - point DCT - 8, the 32 - point DCT - 8 is constructed using the following matrix: {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F} {b, e, h, k, n, q, t, w, z, C, F, -E, -B, -y, -v, -s, -p, -m, -j, -g, -d, -a, -c, -f, -i, -l, -o, -r, -u, -x, -A, -D} {c, h, m, r, w, B, 0, -B, -w, -r, -m, -h, -c, -c, -h, -m, -r, -w, -B, 0, B, w, r, m, h, c, c, h, m, r, w, B} {d, k, r, y, F, -A, -t, -m, -f, -b, -i, -p, -w, -D, C, v, o, h, a, g, n, u, B, -E, -x, -q, -j, -c, -e, -l, -s, -z} {e, n, w, F, -y, -p, -g, -c, -l, -u, -D, A, r, i, a, j, s, B, -C, -t, -k, -b, -h, -q, -z, E, v, m, d, f, o, x} {f, q, B, -A, -p, -e, -g, -r, -C, z, o, d, h, s, D, -y, -n, -c, -i, -t, -E, x, m, b, j, u, F, -w, -l, -a, -k, -v} {g, t, 0, -t, -g, -g, -t, 0, t, g, g, t, 0, -t, -g, -g, -t, 0, t, g, g, t, 0, -t, -g, -g, -t, 0, t, g, g, t} {h, w, -B, -m, -c, -r, 0, r, c, m, B, -w, -h, -h, -w, B, m, c, r, 0, -r, -c, -m, -B, w, h, h, w, -B, -m, -c, -r} {i, z, -w, -f, -l, -C, t, c, o, F, -q, -a, -r, E, n, d, u, -B, -k, -g, -x, y, h, j, A, -v, -e, -m, -D, s, b, p} {j,C,-r,-b,-u,z,g,m,F,-o,-e,-x,w,d,p,-E,-l,-h,-A,t,a,s,-B,-i,-k,-D,q,c,v,-y,-f,-n} {k,F,-m,-i,-D,o,g,B,-q,-e,-z,s,c,x,-u,-a,-v,w,b,t,-y,-d,-r,A,f,p,-C,-h,-n,E,j,l} {l,-E,-h,-p,A,d,t,-w,-a,-x,s,e,B,-o,-i,-F,k,m,-D,-g,-q,z,c,u,-v,-b,-y,r,f,C,-n,-j} {m,-B,-c,-w,r,h,0,-h,-r,w,c,B,-m,-m,B,c,w,-r,-h,0,h,r,-w,-c,-B,m,m,-B,-c,-w,r,h} {n,-y,-c,-D,i,s,-t,-h,E,d,x,-o,-m,z,b,C,-j,-r,u,g,-F,-e,-w,p,l,-A,-a,-B,k,q,-v,-f} {o,-v,-h,C,a,D,-g,-w,n,p,-u,-i,B,b,E,-f,-x,m,q,-t,-j,A,c,F,-e,-y,l,r,-s,-k,z,d} {p,-s,-m,v,j,-y,-g,B,d,-E,-a,-F,c,C,-f,-z,i,w,-l,-t,o,q,-r,-n,u,k,-x,-h,A,e,-D,-b} {q,-p,-r,o,s,-n,-t,m,u,-l,-v,k,w,-j,-x,i,y,-h,-z,g,A,-f,-B,e,C,-d,-D,c,E,-b,-F,a} {r,-m,-w,h,B,-c,0,c,-B,-h,w,m,-r,-r,m,w,-h,-B,c,0,-c,B,h,-w,-m,r,r,-m,-w,h,B,-c} {s,-j,-B,a,-C,-i,t,r,-k,-A,b,-D,-h,u,q,-l,-z,c,-E,-g,v,p,-m,-y,d,-F,-f,w,o,-n,-x,e} {t,-g,0,g,-t,-t,g,0,-g,t,t,-g,0,g,-t,-t,g,0,-g,t,t,-g,0,g,-t,-t,g,0,-g,t,t,-g} {u,-d,B,n,-k,-E,g,-r,-x,a,-y,-q,h,-F,-j,o,A,-c,v,t,-e,C,m,-l,-D,f,-s,-w,b,-z,-p,i} {v,-a,w,u,-b,x,t,-c,y,s,-d,z,r,-e,A,q,-f,B,p,-g,C,o,-h,D,n,-i,E,m,-j,F,l,-k} {w,-c,r,B,-h,m,0,-m,h,-B,-r,c,-w,-w,c,-r,-B,h,-m,0,m,-h,B,r,-c,w,w,-c,r,B,-h,m} {x,-f,m,-E,-q,b,-t,-B,j,-i,A,u,-c,p,F,-n,e,-w,-y,g,-l,D,r,-a,s,C,-k,h,-z,-v,d,-o} {y,-i,h,-x,-z,j,-g,w,A,-k,f,-v,-B,l,-e,u,C,-m,d,-t,-D,n,-c,s,E,-o,b,-r,-F,p,-a,q} {z,-l,c,-q,E,u,-g,h,-v,-D,p,-b,m,-A,-y,k,-d,r,-F,-t,f,-i,w,C,-o,a,-n,B,x,-j,e,-s} {A,-o,c,-j,v,F,-t,h,-e,q,-C,-y,m,-a,l,-x,-D,r,-f,g,-s,E,w,-k,b,-n,z,B,-p,d,-i,u} {B,-r,h,-c,m,-w,0,w,-m,c,-h,r,-B,-B,r,-h,c,-m,w,0,-w,m,-c,h,-r,B,B,-r,h,-c,m,-w} {C,-u,m,-e,d,-l,t,-B,-D,v,-n,f,-c,k,-s,A,E,-w,o,-g,b,-j,r,-z,-F,x,-p,h,-a,i,-q,y} {D,-x,r,-l,f,-a,g,-m,s,-y,E,C,-w,q,-k,e,-b,h,-n,t,-z,F,B,-v,p,-j,d,-c,i,-o,u,-A} {E,-A,w,-s,o,-k,g,-c,b,-f,j,-n,r,-v,z,-D,-F,B,-x,t,-p,l,-h,d,-a,e,-i,m,-q,u,-y,C} {F,-D,B,-z,x,-v,t,-r,p,-n,l,-j,h,-f,d,-b,a,-c,e,-g,i,-k,m,-o,q,-s,u,-w,y,-A,C,-E}。 4. The method according to claim 2, characterized in that When the first transform core matrix is ​​32-point DST-7, in the first transform core matrix, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={4,9,13,17,21,26,30,34,38,42,46,50,53,56,60,63,66,68,72,74,77,78,80,82,84,85,86,87,88,89,90,90}.

5. The method according to claim 3, characterized in that When the second transform core matrix is ​​32-point DCT-8, in the second transform core matrix, {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F} = {90, 90, 89, 88, 87, 86, 85, 84, 82, 80, 78, 77, 74, 72, 68, 66, 63, 60, 56, 53, 50, 46, 42, 38, 34, 30, 26, 21, 17, 13, 9, 4}.

6. The method according to claim 1, characterized in that When the first transform core matrix is ​​16-point DST-7, in the first transform core matrix, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={8,17,25,33,40,48,55,62,68,73,77,81,85,87,88,88}, When the second transform core matrix is ​​16-point DCT-8, in the second transform core matrix, {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p} = {88, 88, 87, 85, 81, 77, 73, 68, 62, 55, 48, 40, 33, 25, 17, 8}.

7. The method according to claim 1, characterized in that The video sequence information includes at least one symbol, wherein the at least one symbol corresponds to control information for managing the operation of at least one device and parameters included in the video sequence, the parameters included in the video sequence are used to control loop filtering technology, the control information includes an address of a prediction sample related to the video sequence in a reference picture memory, and the prediction sample is configured to be controlled by a motion vector.

8. A coding method, characterized in that The method comprises: receiving video source data for encoding; determining whether to use a first 8-bit transform kernel matrix of a first size type or a second 8-bit transform kernel matrix of a second size type to encode the video source data, the first transform kernel matrix having digital elements arranged in an opposite order but having the same absolute values ​​as the second transform kernel matrix; and encoding the video source data based on the determined first transformation kernel matrix or the second transformation kernel matrix; wherein the first transform core matrix is ​​DST-7, and the second transform core matrix is ​​DCT-8; When the first transform core matrix is ​​16-point DST-7 and the second transform core matrix is ​​16-point DCT-8, The 16-point DST-7 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p} {c,f,i,l,o,o,l,i,f,c,0,-c,-f,-i,-l,-o} {e,j,o,m,h,c,-b,-g,-l,-p,-k,-f,-a,d,i,n} {g,n,l,e,-b,-i,-p,-j,-c,d,k,o,h,a,-f,-m} {i,o,f,-c,-l,-l,-c,f,o,i,0,-i,-o,-f,c,l} {k,k,0,-k,-k,0,k,k,0,-k,-k,0,k,k,0,-k} {m,g,-f,-n,-a,l,h,-e,-o,-b,k,i,-d,-p,-c,j} {o,c,-l,-f,i,i,-f,-l,c,o,0,-o,-c,l,f,-i} {p,-a,-o,b,n,-c,-m,d,l,-e,-k,f,j,-g,-i,h} {n,-e,-i,j,d,-o,a,m,-f,-h,k,c,-p,b,l,-g} {l,-i,-c,o,-f,-f,o,-c,-i,l,0,-l,i,c,-o,f} {j,-m,c,g,-p,f,d,-n,i,a,-k,l,-b,-h,o,-e} {h,-p,i,-a,-g,o,-j,b,f,-n,k,-c,-e,m,-l,d} {f,-l,o,-i,c,c,-i,o,-l,f,0,-f,l,-o,i,-c} {d,-h,l,-p,m,-i,e,-a,-c,g,-k,o,-n,j,-f,b} {b,-d,f,-h,j,-l,n,-p,o,-m,k,-i,g,-e,c,-a} The 16-point DCT-8 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p} {b,e,h,k,n,0,-n,-k,-h,-e,-b,-b,-e,-h,-k,-n} {c,h,m,-p,-k,-f,-a,-e,-j,-o,n,i,d,b,g,l} {d,k,-p,-i,-b,-f,-m,n,g,a,h,o,-l,-e,-c,-j} {e,n,-k,-b,-h,0,h,b,k,-n,-e,-e,-n,k,b,h} {f,0,-f,-f,0,f,f,0,-f,-f,0,f,f,0,-f,-f} {g,-n,-a,-m,h,f,-o,-b,-l,i,e,-p,-c,-k,j,d} {h,-k,-e,n,b,0,-b,-n,e,k,-h,-h,k,e,-n,-b} {i,-h,-j,g,k,-f,-l,e,m,-d,-n,c,o,-b,-p,a} {j,-e,-o,a,-n,-f,i,k,-d,-p,b,-m,-g,h,l,-c} {k,-b,n,h,-e,0,e,-h,-n,b,-k,-k,b,-n,-h,e} {l,-b,i,o,-e,f,-p,-h,c,-m,-k,a,-j,-n,d,-g} {m,-e,d,-l,-n,f,-c,k,o,-g,b,-j,-p,h,-a,i} {n,-h,b,-e,k,0,-k,e,-b,h,-n,-n,h,-b,e,-k} {o,-k,g,-c,b,-f,j,-n,-p,l,-h,d,-a,e,-i,m} {p,-n,l,-j,h,-f,d,-b,a,-c,e,-g,i,-k,m,-o}.

9. A device for decoding a video sequence, characterized in that The device comprises: at least one memory for storing computer program code; at least one processor, configured to access the at least one memory and operate according to the computer program code, the computer program code comprising: receiving code for causing the at least one processor to receive video sequence information for decoding; determining code for causing the at least one processor to determine whether to use a first 8-bit transform kernel matrix of a first size type or a second 8-bit transform kernel matrix of a second size type for decoding of the video sequence, the first transform kernel matrix having digital elements arranged in reverse order but having the same absolute values ​​as the second transform kernel matrix, wherein the first transform kernel matrix is ​​DST-7 and the second transform kernel matrix is ​​DCT-8; and, Sending code for causing the at least one processor to decode the video sequence based on the determined first transform kernel matrix or the second transform kernel matrix; When the first transform core matrix is ​​16-point DST-7 and the second transform core matrix is ​​16-point DCT-8, The 16-point DST-7 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p} {c,f,i,l,o,o,l,i,f,c,0,-c,-f,-i,-l,-o} {e,j,o,m,h,c,-b,-g,-l,-p,-k,-f,-a,d,i,n} {g,n,l,e,-b,-i,-p,-j,-c,d,k,o,h,a,-f,-m} {i,o,f,-c,-l,-l,-c,f,o,i,0,-i,-o,-f,c,l} {k,k,0,-k,-k,0,k,k,0,-k,-k,0,k,k,0,-k} {m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j} {o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i} {p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h} {n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g} {l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f} {j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e} {h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d} {f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c} {d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b} {b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a} Construct the 16 - point DCT - 8 using the following matrix: {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p} {b, e, h, k, n, 0, -n, -k, -h, -e, -b, -b, -e, -h, -k, -n} {c, h, m, -p, -k, -f, -a, -e, -j, -o, n, i, d, b, g, l} {d, k, -p, -i, -b, -f, -m, n, g, a, h, o, -l, -e, -c, -j} {e, n, -k, -b, -h, 0, h, b, k, -n, -e, -e, -n, k, b, h} {f, 0, -f, -f, 0, f, f, 0, -f, -f, 0, f, f, 0, -f, -f} {g, -n, -a, -m, h, f, -o, -b, -l, i, e, -p, -c, -k, j, d} {h, -k, -e, n, b, 0, -b, -n, e, k, -h, -h, k, e, -n, -b} {i, -h, -j, g, k, -f, -l, e, m, -d, -n, c, o, -b, -p, a} {j, -e, -o, a, -n, -f, i, k, -d, -p, b, -m, -g, h, l, -c} {k, -b, n, h, -e, 0, e, -h, -n, b, -k, -k, b, -n, -h, e} {l, -b, i, o, -e, f, -p, -h, c, -m, -k, a, -j, -n, d, -g} {m, -e, d, -l, -n, f, -c, k, o, -g, b, -j, -p, h, -a, i} {n, -h, b, -e, k, 0, -k, e, -b, h, -n, -n, h, -b, e, -k} {o,-k,g,-c,b,-f,j,-n,-p,l,-h,d,-a,e,-i,m} {p,-n,l,-j,h,-f,d,-b,a,-c,e,-g,i,-k,m,-o}.

10. A device for encoding video data, characterized in that: The device comprises: at least one memory for storing computer program code; at least one processor, configured to access the at least one memory and operate according to the computer program code, the computer program code comprising: receiving code for causing the at least one processor to receive video source data for encoding; determining code for causing the at least one processor to determine whether to use a first 8-bit transform kernel matrix of a first size type or a second 8-bit transform kernel matrix of a second size type to encode the video source data, the first transform kernel matrix having digital elements arranged in an opposite order but having the same absolute values ​​as the second transform kernel matrix, wherein the first transform kernel matrix is ​​DST-7 and the second transform kernel matrix is ​​DCT-8; and Sending code, configured to cause the at least one processor to encode the video source data based on the determined first transform kernel matrix or the second transform kernel matrix; When the first transform core matrix is ​​16-point DST-7 and the second transform core matrix is ​​16-point DCT-8, The 16-point DST-7 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p} {c,f,i,l,o,o,l,i,f,c,0,-c,-f,-i,-l,-o} {e,j,o,m,h,c,-b,-g,-l,-p,-k,-f,-a,d,i,n} {g,n,l,e,-b,-i,-p,-j,-c,d,k,o,h,a,-f,-m} {i,o,f,-c,-l,-l,-c,f,o,i,0,-i,-o,-f,c,l} {k,k,0,-k,-k,0,k,k,0,-k,-k,0,k,k,0,-k} {m,g,-f,-n,-a,l,h,-e,-o,-b,k,i,-d,-p,-c,j} {o,c,-l,-f,i,i,-f,-l,c,o,0,-o,-c,l,f,-i} {p,-a,-o,b,n,-c,-m,d,l,-e,-k,f,j,-g,-i,h} {n,-e,-i,j,d,-o,a,m,-f,-h,k,c,-p,b,l,-g} {l,-i,-c,o,-f,-f,o,-c,-i,l,0,-l,i,c,-o,f} {j,-m,c,g,-p,f,d,-n,i,a,-k,l,-b,-h,o,-e} {h,-p,i,-a,-g,o,-j,b,f,-n,k,-c,-e,m,-l,d} {f,-l,o,-i,c,c,-i,o,-l,f,0,-f,l,-o,i,-c} {d,-h,l,-p,m,-i,e,-a,-c,g,-k,o,-n,j,-f,b} {b,-d,f,-h,j,-l,n,-p,o,-m,k,-i,g,-e,c,-a} The 16-point DCT-8 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p} {b,e,h,k,n,0,-n,-k,-h,-e,-b,-b,-e,-h,-k,-n} {c,h,m,-p,-k,-f,-a,-e,-j,-o,n,i,d,b,g,l} {d,k,-p,-i,-b,-f,-m,n,g,a,h,o,-l,-e,-c,-j} {e,n,-k,-b,-h,0,h,b,k,-n,-e,-e,-n,k,b,h} {f,0,-f,-f,0,f,f,0,-f,-f,0,f,f,0,-f,-f} {g,-n,-a,-m,h,f,-o,-b,-l,i,e,-p,-c,-k,j,d} {h,-k,-e,n,b,0,-b,-n,e,k,-h,-h,k,e,-n,-b} {i,-h,-j,g,k,-f,-l,e,m,-d,-n,c,o,-b,-p,a} {j,-e,-o,a,-n,-f,i,k,-d,-p,b,-m,-g,h,l,-c} {k,-b,n,h,-e,0,e,-h,-n,b,-k,-k,b,-n,-h,e} {l,-b,i,o,-e,f,-p,-h,c,-m,-k,a,-j,-n,d,-g} {m,-e,d,-l,-n,f,-c,k,o,-g,b,-j,-p,h,-a,i} {n,-h,b,-e,k,0,-k,e,-b,h,-n,-n,h,-b,e,-k} {o,-k,g,-c,b,-f,j,-n,-p,l,-h,d,-a,e,-i,m} {p,-n,l,-j,h,-f,d,-b,a,-c,e,-g,i,-k,m,-o}.

11. The device according to claim 10, characterized in that When the first transformation core matrix is ​​a 32-point DST-7, the 32-point DST-7 is constructed using the following matrix: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F} {c,f,i,l,o,r,u,x,A,D,F,C,z,w,t,q,n,k,h,e,b,-a,-d,-g,-j,-m,-p,-s,-v,-y,-B,-E} {e,j,o,t,y,D,D,y,t,o,j,e,0,-e,-j,-o,-t,-y,-D,-D,-y,-t,-o,-j,-e,0,e,j,o,t,y,D} {g,n,u,B,D,w,p,i,b,-e,-l,-s,-z,-F,-y,-r,-k,-d,c,j,q,x,E,A,t,m,f,-a,-h,-o,-v,-C} {i,r,A,C,t,k,b,-g,-p,-y,-E,-v,-m,-d,e,n,w,F,x,o,f,-c,-l,-u,-D,-z,-q,-h,a,j,s,B} {k,v,F,u,j,-a,-l,-w,-E,-t,-i,b,m,x,D,s,h,-c,-n,-y,-C,-r,-g,d,o,z,B,q,f,-e,-p,-A} {m,z,z,m,0,-m,-z,-z,-m,0,m,z,z,m,0,-m,-z,-z,-m,0,m,z,z,m,0,-m,-z,-z,-m,0,m,z} {o,D,t,e,-j,-y,-y,-j,e,t,D,o,0,-o,-D,-t,-e,j,y,y,j,-e,-t,-D,-o,0,o,D,t,e,-j,-y} {q,E,n,-c,-t,-B,-k,f,w,y,h,-i,-z,-v,-e,l,C,s,b,-o,-F,-p,a,r,D,m,-d,-u,-A,-j,g,x} {s,A,h,-k,-D,-p,c,v,x,e,-n,-F,-m,f,y,u,b,-q,-C,-j,i,B,r,-a,-t,-z,-g,l,E,o,-d,-w} {u,w,b,-s,-y,-d,q,A,f,-o,-C,-h,m,E,j,-k,-F,-l,i,D,n,-g,-B,-p,e,z,r,-c,-x,-t,a,v} {w,s,-d,-A,-o,h,E,k,-l,-D,-g,p,z,c,-t,-v,a,x,r,-e,-B,-n,i,F,j,-m,-C,-f,q,y,b,-u} {y,o,-j,-D,-e,t,t,-e,-D,-j,o,y,0,-y,-o,j,D,e,-t,-t,e,D,j,-o,-y,0,y,o,-j,-D,-e,t} {A,k,-p,-v,e,F,f,-u,-q,j,B,a,-z,-l,o,w,-d,-E,-g,t,r,-i,-C,-b,y,m,-n,-x,c,D,h,-s} {C,g,-v,-n,o,u,-h,-B,a,D,f,-w,-m,p,t,-i,-A,b,E,e,-x,-l,q,s,-j,-z,c,F,d,-y,-k,r} {E,c,-B,-f,y,i,-v,-l,s,o,-p,-r,m,u,-j,-x,g,A,-d,-D,a,F,b,-C,-e,z,h,-w,-k,t,n,-q} {F,-a,-E,b,D,-c,-C,d,B,-e,-A,f,z,-g,-y,h,x,-i,-w,j,v,-k,-u,l,t,-m,-s,n,r,-o,-q,p} {D,-e,-y,j,t,-o,-o,t,j,-y,-e,D,0,-D,e,y,-j,-t,o,o,-t,-j,y,e,-D,0,D,-e,-y,j,t,-o} {B,-i,-s,r,j,-A,-a,C,-h,-t,q,k,-z,-b,D,-g,-u,p,l,-y,-c,E,-f,-v,o,m,-x,-d,F,-e,-w,n} {z,-m,-m,z,0,-z,m,m,-z,0,z,-m,-m,z,0,-z,m,m,-z,0,z,-m,-m,z,0,-z,m,m,-z,0,z,-m} {x,-q,-g,E,-j,-n,A,-c,-u,t,d,-B,m,k,-D,f,r,-w,-a,y,-p,-h,F,-i,-o,z,-b,-v,s,e,-C,l} {v,-u,-a,w,-t,-b,x,-s,-c,y,-r,-d,z,-q,-e,A,-p,-f,B,-o,-g,C,-n,-h,D,-m,-i,E,-l,-j,F,-k} {t,-y,e,o,-D,j,j,-D,o,e,-y,t,0,-t,y,-e,-o,D,-j,-j,D,-o,-e,y,-t,0,t,-y,e,o,-D,j} {r,-C,k,g,-y,v,-d,-n,F,-o,-c,u,-z,h,j,-B,s,-a,-q,D,-l,-f,x,-w,e,m,-E,p,b,-t,A,-i} {p,-F,q,-a,-o,E,-r,b,n,-D,s,-c,-m,C,-t,d,l,-B,u,-e,-k,A,-v,f,j,-z,w,-g,-i,y,-x,h} {n,-B,w,-i,-e,s,-F,r,-d,-j,x,-A,m,a,-o,C,-v,h,f,-t,E,-q,c,k,-y,z,-l,-b,p,-D,u,-g} {l, -x, C, -q, e, g, -s, E, -v, j, b, -n, z, -A, o, -c, -i, u, -F, t, -h, -d, p, -B, y, -m, a, k, -w, D, -r, f} {j, -t, D, -y, o, -e, -e, o, -y, D, -t, j, 0, -j, t, -D, y, -o, e, e, -o, y, -D, t, -j, 0, j, -t, D, -y, o, -e} {h, -p, x, -F, y, -q, i, -a, -g, o, -w, E, -z, r, -j, b, f, -n, v, -D, A, -s, k, -c, -e, m, -u, C, -B, t, -l, d} {f, -l, r, -x, D, -C, w, -q, k, -e, -a, g, -m, s, -y, E, -B, v, -p, j, -d, -b, h, -n, t, -z, F, -A, u, -o, i, -c} {d, -h, l, -p, t, -x, B, -F, C, -y, u, -q, m, -i, e, -a, -c, g, -k, o, -s, w, -A, E, -D, z, -v, r, -n, j, -f, b} {b, -d, f, -h, j, -l, n, -p, r, -t, v, -x, z, -B, D, -F, E, -C, A, -y, w, -u, s, -q, o, -m, k, -i, g, -e, c, -a}, Where {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F} = {4, 9, 13, 17, 21, 26, 30, 34, 38, 42, 46, 50, 53, 56, 60, 63, 66, 68, 72, 74, 77, 78, 80, 82, 84, 85, 86, 87, 88, 89, 90, 90}, and, When the second transformation core matrix is a 32 - point DCT - 8, the 32 - point DCT - 8 is constructed using the following matrix: {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F} {b, e, h, k, n, q, t, w, z, C, F, -E, -B, -y, -v, -s, -p, -m, -j, -g, -d, -a, -c, -f, -i, -l, -o, -r, -u, -x, -A, -D} {c, h, m, r, w, B, 0, -B, -w, -r, -m, -h, -c, -c, -h, -m, -r, -w, -B, 0, B, w, r, m, h, c, c, h, m, r, w, B} {d,k,r,y,F,-A,-t,-m,-f,-b,-i,-p,-w,-D,C,v,o,h,a,g,n,u,B,-E,-x,-q,-j,-c,-e,-l,-s,-z} {e,n,w,F,-y,-p,-g,-c,-l,-u,-D,A,r,i,a,j,s,B,-C,-t,-k,-b,-h,-q,-z,E,v,m,d,f,o,x} {f,q,B,-A,-p,-e,-g,-r,-C,z,o,d,h,s,D,-y,-n,-c,-i,-t,-E,x,m,b,j,u,F,-w,-l,-a,-k,-v} {g,t,0,-t,-g,-g,-t,0,t,g,g,t,0,-t,-g,-g,-t,0,t,g,g,t,0,-t,-g,-g,-t,0,t,g,g,t} {h,w,-B,-m,-c,-r,0,r,c,m,B,-w,-h,-h,-w,B,m,c,r,0,-r,-c,-m,-B,w,h,h,w,-B,-m,-c,-r} {i,z,-w,-f,-l,-C,t,c,o,F,-q,-a,-r,E,n,d,u,-B,-k,-g,-x,y,h,j,A,-v,-e,-m,-D,s,b,p} {j,C,-r,-b,-u,z,g,m,F,-o,-e,-x,w,d,p,-E,-l,-h,-A,t,a,s,-B,-i,-k,-D,q,c,v,-y,-f,-n} {k,F,-m,-i,-D,o,g,B,-q,-e,-z,s,c,x,-u,-a,-v,w,b,t,-y,-d,-r,A,f,p,-C,-h,-n,E,j,l} {l,-E,-h,-p,A,d,t,-w,-a,-x,s,e,B,-o,-i,-F,k,m,-D,-g,-q,z,c,u,-v,-b,-y,r,f,C,-n,-j} {m,-B,-c,-w,r,h,0,-h,-r,w,c,B,-m,-m,B,c,w,-r,-h,0,h,r,-w,-c,-B,m,m,-B,-c,-w,r,h} {n,-y,-c,-D,i,s,-t,-h,E,d,x,-o,-m,z,b,C,-j,-r,u,g,-F,-e,-w,p,l,-A,-a,-B,k,q,-v,-f} {o,-v,-h,C,a,D,-g,-w,n,p,-u,-i,B,b,E,-f,-x,m,q,-t,-j,A,c,F,-e,-y,l,r,-s,-k,z,d} {p,-s,-m,v,j,-y,-g,B,d,-E,-a,-F,c,C,-f,-z,i,w,-l,-t,o,q,-r,-n,u,k,-x,-h,A,e,-D,-b} {q,-p,-r,o,s,-n,-t,m,u,-l,-v,k,w,-j,-x,i,y,-h,-z,g,A,-f,-B,e,C,-d,-D,c,E,-b,-F,a} {r,-m,-w,h,B,-c,0,c,-B,-h,w,m,-r,-r,m,w,-h,-B,c,0,-c,B,h,-w,-m,r,r,-m,-w,h,B,-c} {s,-j,-B,a,-C,-i,t,r,-k,-A,b,-D,-h,u,q,-l,-z,c,-E,-g,v,p,-m,-y,d,-F,-f,w,o,-n,-x,e} {t,-g,0,g,-t,-t,g,0,-g,t,t,-g,0,g,-t,-t,g,0,-g,t,t,-g,0,g,-t,-t,g,0,-g,t,t,-g} {u,-d,B,n,-k,-E,g,-r,-x,a,-y,-q,h,-F,-j,o,A,-c,v,t,-e,C,m,-l,-D,f,-s,-w,b,-z,-p,i} {v,-a,w,u,-b,x,t,-c,y,s,-d,z,r,-e,A,q,-f,B,p,-g,C,o,-h,D,n,-i,E,m,-j,F,l,-k} {w,-c,r,B,-h,m,0,-m,h,-B,-r,c,-w,-w,c,-r,-B,h,-m,0,m,-h,B,r,-c,w,w,-c,r,B,-h,m} {x,-f,m,-E,-q,b,-t,-B,j,-i,A,u,-c,p,F,-n,e,-w,-y,g,-l,D,r,-a,s,C,-k,h,-z,-v,d,-o} {y,-i,h,-x,-z,j,-g,w,A,-k,f,-v,-B,l,-e,u,C,-m,d,-t,-D,n,-c,s,E,-o,b,-r,-F,p,-a,q} {z,-l,c,-q,E,u,-g,h,-v,-D,p,-b,m,-A,-y,k,-d,r,-F,-t,f,-i,w,C,-o,a,-n,B,x,-j,e,-s} {A,-o,c,-j,v,F,-t,h,-e,q,-C,-y,m,-a,l,-x,-D,r,-f,g,-s,E,w,-k,b,-n,z,B,-p,d,-i,u} {B,-r,h,-c,m,-w,0,w,-m,c,-h,r,-B,-B,r,-h,c,-m,w,0,-w,m,-c,h,-r,B,B,-r,h,-c,m,-w} {C,-u,m,-e,d,-l,t,-B,-D,v,-n,f,-c,k,-s,A,E,-w,o,-g,b,-j,r,-z,-F,x,-p,h,-a,i,-q,y} {D,-x,r,-l,f,-a,g,-m,s,-y,E,C,-w,q,-k,e,-b,h,-n,t,-z,F,B,-v,p,-j,d,-c,i,-o,u,-A} {E,-A,w,-s,o,-k,g,-c,b,-f,j,-n,r,-v,z,-D,-F,B,-x,t,-p,l,-h,d,-a,e,-i,m,-q,u,-y,C} {F,-D,B,-z,x,-v,t,-r,p,-n,l,-j,h,-f,d,-b,a,-c,e,-g,i,-k,m,-o,q,-s,u,-w,y,-A,C,-E}, Among them, {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={90,90,89,88, 87,86,85,84,82,80,78,77,74,72,68,66,63,60,56,53,50,46,42,38,34,30,26,21,17,13,9,4}.

12. The device according to claim 10, characterized in that When the first transform core matrix is ​​16-point DST-7, in the first transform core matrix, {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p} = {8, 17, 25, 33, 40, 48, 55, 62, 68, 73, 77, 81, 85, 87, 88, 88}, and When the second transform core matrix is ​​16-point DCT-8, in the second transform core matrix, {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p} = {88, 88, 87, 85, 81, 77, 73, 68, 62, 55, 48, 40, 33, 25, 17, 8}.

13. The device according to claim 10, characterized in that The encoded video source data information obtained by encoding the video source data includes at least one symbol, wherein the at least one symbol corresponds to control information for managing the operation of at least one device and parameters included in the encoded video source data, the parameters included in the encoded video source data are used to control loop filtering technology, the control information includes an address of a prediction sample related to the encoded video source data in a reference picture memory, and the prediction sample is configured to be controlled by a motion vector.

14. A computer device, characterized in that: The method comprises a processor and a memory, wherein the memory stores instructions, and when the instructions are executed by the processor, the processor executes the method according to any one of claims 1 to 8.

15. A method for storing a video stream, characterized in that: Execute the method of claim 8 to generate a video stream, and store the video stream.

16. A method for transmitting a video stream, characterized in that: Execute the method of claim 8 to generate a video stream, and transmit the video stream.

17. A computer-readable storage medium storing a computer program / instruction and a video stream, wherein: When the computer program / instruction is executed by a processor, the steps of the method according to claim 8 are implemented to generate the video code stream.

Citation Information

Patent Citations

  • Enhanced multiple transforms for prediction residual

    CN107211144A

  • Encoding and decoding methods, apparatus and equipment

    CN113316932B