Multi-type tree coding

MTT coding addresses inefficiencies in video coding by allowing flexible block partitioning and signaling optimizations, enhancing compression efficiency and reducing bitrate.

JP2025128251APending Publication Date: 2025-09-02INTERDIGITAL VC HOLDINGS INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025094157
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2018-01-16
Filing Date
2025-06-05
Publication Date
2025-09-02

AI Technical Summary

Technical Problem

Existing video coding technologies face inefficiencies in partitioning strategies, leading to redundant signaling and increased encoding complexity, which affects compression efficiency and bitrate.

Method used

The implementation of Multi-Type Tree (MTT) coding, which allows for more flexible block partitioning types including quad-tree, binary tree, and triple tree, with signaling optimizations to reduce redundancy and enhance encoding speed.

Benefits of technology

MTT coding reduces encoding complexity and signaling redundancy, improving compression efficiency and bitrate performance compared to traditional methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025128251000001_ABST
    Figure 2025128251000001_ABST
Patent Text Reader

Abstract

To provide multi-type tree (MTT) coding.SOLUTION: An identified block may be partitioned into one or more sibling nodes (e.g., sibling nodes B0 and B1). A partitioning direction and a partitioning type for the block may be determined. If the partitioning type for the block is a binary tree (BT), one or more partitioning parameters may be determined for the sibling node BO. A partitioning parameter may be determined for the sibling node B1. A decoder may determine whether to receive an indication of a second partitioning parameter for B1 and may derive the second partitioning parameter, on the basis of, e.g., the partitioning direction for the block, the partitioning type for the block, and the first partitioning parameter for B1.SELECTED DRAWING: Figure 8
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This application relates to multi-type tree coding. [Background technology]

[0002] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of U.S. Provisional Patent Application No. 62 / 580,094, filed November 1, 2017, and U.S. Provisional Patent Application No. 62 / 617,696, filed January 16, 2018, the contents of which are incorporated herein by reference.

[0003] A variety of digital video compression technologies enable efficient digital video communication, distribution, and consumption. Some examples of standardized video compression technologies are H.261, MPEG-1, MPEG-2, H.263, MPEG-4 part 2, and H.264 / MPEG-4 part 10 AVC. Advanced video compression technologies, such as High Efficiency Video Coding (HEVC), can provide twice the compression or half the bitrate at the same video quality compared to H.264 / AVC. Summary of the Invention

[0004] Systems, methods, and means may be provided for Multi-Type Tree (MTT) coding. A block may be identified. The block may be a root node of a quadtree. The block may be partitioned into one or more (e.g., two) sibling nodes (e.g., sibling nodes B0 and B1). A partitioning direction and a partitioning type for the block may be determined. The partitioning direction may be, for example, horizontal or vertical. The partitioning type may be, for example, a binary tree (BT) or a triple tree (TT). If the partitioning type for the block is a binary tree (BT), one or more (e.g., two) partitioning parameters (e.g., direction and / or type) may be determined for sibling node B0, e.g., via signaling. A (e.g., one) partitioning parameter (e.g., a first partitioning parameter) may be determined for sibling node B1, e.g., via signaling. For example, the partitioning direction and partitioning type may be determined for B0, and the partitioning direction or type may be determined for B1. The decoder may determine whether to receive an indication of a second partitioning parameter for B1, for example, based on the partitioning direction for the block, the partitioning type for the block, and the first partitioning parameter for B1. For example, if the decoder determines not to receive an indication, the decoder may derive a second partitioning parameter based on, for example, the partitioning direction for the block, the partitioning type for the block, and the first partitioning parameter for B1. If the partitioning type for the block is BT, the decoder may derive the second parameter based on the partitioning parameter for B0. For example, if the decoder determines to receive an indication, the decoder may determine the second partitioning parameter based on the indication.B1 may be decoded based on the first partitioning parameter and the second partitioning parameter.

[0005] In one example, signaling of the partitioning type of a sibling node may be skipped. The first partitioning parameter may be (e.g., may indicate) the partitioning direction for B1, and the second partitioning parameter may be the partitioning type for B1. If the partitioning direction for B0 and the partitioning direction for B1 are different, the decoder may decide to receive (e.g., receive) the partitioning type for B1. If the partitioning type for B0 is triple tree (TT) and the partitioning direction for B0 and the partitioning direction for B1 are the same as the partitioning direction for the block, the decoder may decide to receive the partitioning type for B1. If the partitioning type for B0 is BT and the partitioning direction for B0 and the partitioning direction for B1 are the same, the decoder may decide not to receive the partitioning type for B1. The decoder may derive the partitioning type for B1 as TT. If the partitioning type for B0 is TT and the partitioning direction for B0 and the partitioning direction for B1 are orthogonal to the partitioning direction for the block, the decoder may determine not to receive the partitioning type for B1, and the decoder may derive the partitioning type for B1 as BT.

[0006] In one example, signaling of the partitioning direction of a sibling node may be skipped. The first partitioning parameter may be the partitioning type for B1, and the second partitioning parameter may be the partitioning direction for B1. The decoder may decide to receive the partitioning direction for B1 if the partitioning type for B0 and the partitioning type for B1 are different. The decoder may decide to receive the partitioning direction for B1 if the partitioning type for B0 and the partitioning type for B1 are both BT and the partitioning direction for B0 and the partitioning direction for the block are not the same. The decoder may decide to receive the partitioning direction for B1 if the partitioning type for B0 and the partitioning type for B1 are both TT and the partitioning direction for B0 and the partitioning direction for the block are not orthogonal. If the partitioning type for B0 and the partitioning type for B1 are both BT and the partitioning direction for B0 and the partitioning direction for the block are the same, the decoder may determine not to receive a partitioning direction for B1. The decoder may derive a partitioning direction for B1 to be orthogonal to the partitioning direction for B0. If the partitioning type for B0 and the partitioning type for B1 are both TT and the partitioning direction for B0 and the partitioning direction for the block are orthogonal, the decoder may determine not to receive a partitioning direction for B1, and the decoder may derive a partitioning direction for B1 to be orthogonal to the partitioning direction for B0.

[0007] The partitioning type for the block may be TT. B1 may be a middle sibling node. The first partitioning parameter may be the partitioning direction for B1, and the second partitioning parameter may be the partitioning type for B1. For example, if the partitioning direction for B1 is not the same as the partitioning direction for the block, the decoder may receive the partitioning type for B1. For example, if the partitioning direction for B1 is the same as the partitioning direction for the block, the decoder may determine the partitioning type for B1 to be TT.

[0008] The first partitioning parameter may be a partitioning type for B1, and the second partitioning parameter may be a partitioning direction for B1. For example, if the partitioning type for B1 is TT, the decoder may receive the partitioning direction for B1. For example, if the partitioning type for B1 is BT, the decoder may derive the partitioning direction for B1 to be orthogonal to the partitioning direction for the block.

[0009] Video content may be encoded in the MTT format. A block may be identified. The block may be a root node of a quadtree. The block may be a binary tree (BT) partitioned into one or more (e.g., two) sibling nodes (e.g., sibling nodes B0 and B1). A partitioning direction and a partitioning type for the block may be determined. If the partitioning type for the block is BT, one or more (e.g., two) partitioning parameters (e.g., direction and / or type) may be determined for sibling node B0. (e.g., one) partitioning parameter (e.g., a first partitioning parameter) may be determined for sibling node B1. For example, the partitioning direction and partitioning type may be determined for B0, and the partitioning direction or type may be determined for B1. The encoder may determine (e.g., include) whether to include a second partitioning parameter for B1 in the bitstream based on, for example, the partitioning direction for the block, the partitioning type for the block, and the first partitioning parameter for B1. The encoder may include in the bitstream the partitioning parameters for B0, the first partitioning parameters for B1, and an indication of the partitioning direction for the block.

[0010] In one example, the encoder may skip signaling of the partitioning type of sibling nodes. The partitioning type for the block may be BT. The first partitioning parameter may be the partitioning direction for B1, and the second partitioning parameter may be the partitioning type for B1. If the partitioning direction for B0 and the partitioning direction for B1 are different, the encoder may determine to include the partitioning type for B1 in the bitstream. If the partitioning type for B0 is triple tree (TT) and the partitioning direction for B0 and the partitioning direction for B1 are the same as the partitioning direction for the block, the encoder may determine to include the partitioning type for B1 in the bitstream. If the partitioning type for B0 is BT and the partitioning direction for B0 and the partitioning direction for B1 are the same, the encoder may determine not to include the partitioning type for B1 in the bitstream. If the partitioning type for B0 is TT and the partitioning direction for B0 and the partitioning direction for B1 are orthogonal to the partitioning direction for the block, the encoder may decide not to include the partitioning type for B1 in the bitstream.

[0011] The partitioning type for the block may be TT. The first partitioning parameter may be the partitioning direction for B1, and the second partitioning parameter may be the partitioning type for B1. For example, if the partitioning direction for B1 is not the same as the partitioning direction for the block, the encoder may include the partitioning type for B1 in the bitstream. For example, if the partitioning direction for B1 is the same as the partitioning direction for the block, the encoder may decide not to include the partitioning type for B1 in the bitstream.

[0012] A partitioning type for a current block may be received. Availability of a first partitioning direction and a second partitioning direction for the block may be determined based on the partitioning type. The decoder may decide to receive a current partitioning direction based on the availability of the first partitioning direction and the second partitioning direction. The current partitioning direction may be the same as one or more of the first partitioning direction or the second partitioning direction. The decoder may decode the block based on the current partitioning direction. The decoder may determine not to receive the current partitioning direction if only one of the first partitioning direction or the second partitioning direction is available, and the decoder may determine the current partitioning direction to be an available partitioning direction. The decoder may decide to receive the current partitioning direction if both the first partitioning direction and the second partitioning direction are available. The first partitioning direction may be vertical, and the second partitioning direction may be horizontal. If the partitioning type is BT and the width of the current block is at least twice the minimum allowable BT node size, the vertical direction may be determined to be available. If the partitioning type is TT and the width of the current block is at least four times the minimum allowable BT size, the vertical direction may be determined to be available. If the partitioning type is BT and the height of the current block is at least twice the minimum allowable BT node size, the horizontal direction may be determined to be available. If the partitioning type is TT and the height of the current block is at least four times the minimum allowable BT size, the vertical direction may be determined to be available.

[0013] A block may be TT partitioned into three sub-blocks, namely, B0, B1, and B2. One or more boundaries of B0, B1, or B2 may be determined. A deblocking filter may be applied to the boundaries. [Brief explanation of the drawings]

[0014] Like reference numbers in the drawings indicate like elements.

[0015] [Figure 1] FIG. 1 illustrates an example of a block-based hybrid video coding system. [Figure 2] FIG. 1 illustrates an example of a block-based video decoder. [Figure 3] FIG. 1 illustrates an example of quad-tree plus binary tree (QTBT) block partitioning. [Figure 4A] A diagram showing an example of QTBT signaling redundancy removal. [Figure 4B] A diagram showing an example of QTBT signaling redundancy removal. [Figure 5] FIG. 1 is a diagram illustrating an example of block coding in QTBT. [Figure 6A] FIG. 10 is a diagram illustrating an example of reusing coding results. [Figure 6B] FIG. 10 is a diagram illustrating an example of reusing coding results. [Figure 6C] FIG. 10 is a diagram illustrating an example of reusing coding results. [Figure 7A] FIG. 1 illustrates an example of a multi-type tree (MTT) partitioning type. [Figure 7B] FIG. 1 illustrates an example of a multi-type tree (MTT) partitioning type. [Figure 7C] FIG. 1 illustrates an example of a multi-type tree (MTT) partitioning type. [Figure 7D] FIG. 1 illustrates an example of a multi-type tree (MTT) partitioning type. [Figure 7E] FIG. 1 illustrates an example of a multi-type tree (MTT) partitioning type. [Figure 8] A diagram showing an example of tree-type signaling in MTT. [Figure 9] A diagram showing an example of tree-type signaling in MTT. [Figure 10] FIG. 10 illustrates an example of using neighboring blocks for context derivation for a block. [Figure 11A] FIG. 1 is a diagram illustrating an example of signaling redundancy reduction in MTT. [Figure 11B] FIG. 1 is a diagram illustrating an example of signaling redundancy reduction in MTT. [Figure 11C] FIG. 1 is a diagram illustrating an example of signaling redundancy reduction in MTT. [Figure 11D] FIG. 1 is a diagram illustrating an example of signaling redundancy reduction in MTT. [Figure 12] FIG. 1 illustrates an example of fast encoding for MTT. [Figure 13] FIG. 10 illustrates an example of likelihood check for horizontal TT partitioning. [Figure 14] FIG. 10 illustrates an exemplary determination of the best candidate direction for a TT partitioning test. [Figure 15A] FIG. 10 illustrates an example of coding result reuse for MTT partitioning. [Figure 15B] FIG. 10 illustrates an example of coding result reuse for MTT partitioning. [Figure 15C] FIG. 10 illustrates an example of coding result reuse for MTT partitioning. [Figure 15D] FIG. 10 illustrates an example of coding result reuse for MTT partitioning. [Figure 15E] FIG. 10 illustrates an example of coding result reuse for MTT partitioning. [Figure 16] FIG. 10 is a diagram of an example of a neighboring block set for CU size checking. [Figure 17A] FIG. 1 is a system diagram illustrating an example communication system in which one or more disclosed embodiments may be implemented. [Figure 17B]FIG. 17B is a system diagram illustrating an example wireless transmit / receive unit (WTRU) that may be used within the communication system illustrated in FIG. 17A according to one embodiment. [Figure 17C] 17B is a system diagram illustrating an example radio access network (RAN) and an example core network (CN) that may be used within the communication system illustrated in FIG. 17A, according to one embodiment. [Figure 17D] FIG. 17B is a system diagram illustrating a further exemplary RAN and a further exemplary CN that may be used within the communication system illustrated in FIG. 17A according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0016] A detailed description of exemplary embodiments will now be described with reference to various figures. While this description provides detailed examples of possible implementations, it should be noted that the details are intended to be illustrative and in no way limit the scope of the present application.

[0017] A video coding system may compress a digital video signal, for example, to reduce storage and / or transmission bandwidth. There are various types of video coding systems, such as block-based systems, wavelet-based systems, and object-based systems. Block-based video coding systems may include international video coding standards, such as (Moving Picture Experts Group) MPEG-1 / 2 / 4 part 2, H.264 / MPEG-4 part 10 Advanced Video Coding (AVC), VC-1, and High Efficiency Video Coding (HEVC).

[0018] HEVC may, for example, provide approximately 50% bitrate savings or equivalent perceptual quality compared to previous generations of video coding (e.g., H.264 / MPEG AVC). Superior coding efficiency may be achieved on HEVC (e.g., with additional coding tools). VCEG and MPEG (e.g., Joint Video Exploration Team (JVET)) may support coding techniques that may provide substantial improvements in coding efficiency on HEVC.

[0019] 1 is an example of a block-based hybrid video coding system. An input video signal 2 may be processed block-by-block. Extended block sizes (e.g., coding units (CUs)) may be used, for example, to efficiently compress high-resolution (e.g., 1080p or higher) video signals. A CU may have a size of, for example, 64x64 pixels. A CU may be partitioned into one or more prediction units (PUs). Prediction may be applied separately to the PUs. Spatial prediction 60 and / or temporal prediction 62 may be performed, for example, on (e.g., each) input video block (e.g., macroblock (MB) or CU).

[0020] Spatial prediction (e.g., intra prediction) may predict a current video block, for example, by using pixels from samples (e.g., reference samples) of already coded neighboring blocks in a video picture / slice. Spatial prediction may reduce spatial redundancy that may be inherent in a video signal. Temporal prediction (e.g., inter prediction or motion compensated prediction) may predict a current video block, for example, by using reconstructed pixels from already coded video pictures. Temporal prediction may reduce temporal redundancy that may be inherent in a video signal. A temporal prediction signal for a given video block may be signaled, for example, by one or more motion vectors (MVs). The MVs may indicate the amount and direction of motion between the current block and a reference block. A reference picture index (e.g., for each video block) may be sent, for example, if multiple reference pictures are supported. The reference picture index may be used to identify a reference picture (e.g., in reference picture store 64) from which the temporal prediction signal originates.

[0021] A mode decision block 80 in the encoder (e.g., after spatial prediction and / or temporal prediction) may choose a (e.g., best) prediction mode, e.g., based on rate-distortion optimization. The prediction block may be subtracted from the current video block 16. The prediction residual may be decorrelated (e.g., using a transform 4) and quantized (e.g., using a quantizer 6). The quantized residual coefficients may be inverse quantized 10 and / or inverse transformed 12, e.g., to form a reconstructed residual. The reconstructed residual may be added back to the prediction block 26, e.g., to form a reconstructed video block. In-loop filtering 66 (e.g., a deblocking filter and / or an adaptive loop filter) may be applied to the reconstructed video block, e.g., before it is put into reference picture store 64 and used to code future video blocks. Entropy coding unit 8 may form output video bitstream 20, for example, by compressing and packing coding modes (e.g., inter or intra), prediction mode information, motion information, and / or quantized residual coefficients.

[0022] 2 is an example of a block-based video decoder. A video bitstream 202 may be unpacked and entropy decoded in an entropy decoding unit 208. Coding mode and prediction information may be sent to a spatial prediction unit 260 (e.g., for intra-coded cases) or a temporal prediction unit 262 (e.g., for inter-coded cases), for example, to form a prediction block. Residual transform coefficients may be provided to an inverse quantization unit 210 and an inverse transform unit 212, for example, to reconstruct a residual block. The prediction block and the residual block may be summed together, for example, in summation 226. In-loop filtering may be applied to the reconstructed block, for example, before it is stored in a reference picture store 264. The reconstructed video in the reference picture store 264 may be sent, for example, to drive a display device and / or to predict future video blocks.

[0023] A picture may be divided into CUs, for example, based on a quadtree structure, which may enable the CUs to be divided into appropriate sizes (e.g., based on signal characteristics of the region). A CU may represent a basic quadtree split region that may be used to distinguish between intra-coded and inter-coded blocks. Multiple non-overlapping PUs may be defined within a CU. (E.g., each) PU may identify a region using individual prediction parameters (e.g., intra-prediction mode, motion vector, reference picture index, etc.). A residual may be obtained, for example, by applying a prediction process to the PU. A CU may be further divided into one or more transform units (TUs), for example, based on another quadtree. (E.g., each) TU may identify a block, for example, by applying residual coding using a transform size equal to the TU size.

[0024] A block partitioning structure may provide significant coding gains over past video coding standards. CU partitioning, which may provide the smallest granularity for switching between intra-coding and inter-coding, may be square or follow a quad-tree structure. PU partitioning may have a limited number of types.

[0025] A quad-tree plus binary tree (QTBT) block partitioning structure may be used. (E.g., each) coding tree unit (CTU) in the QTBT structure may be the root node of a quad-tree. Blocks may be partitioned in a quad-tree manner. Quad-tree splitting of (e.g., one) node may be repeated until the node reaches the minimum allowed quad-tree size (MinQTSize). The quad-tree node may be further partitioned (e.g., by a binary tree) horizontally or vertically, for example, when the quad-tree size of the node is as large as the maximum allowed binary tree size (MaxBTSize). Binary tree splitting may be repeated, for example, until the binary tree node reaches the minimum allowed binary tree node size (MinBTSize) or the maximum allowed binary tree depth. The binary tree node may be used as a basic unit of prediction and / or transformation (e.g., without further partitioning).

[0026] In an example of a QTBT partitioning structure, the block size may be 128x128, MinQTSize may be 16x16, MaxBTSize may be 64x64, and MinBTSize may be 4. Quad-tree partitioning may be applied to the block to generate quad-tree leaf nodes. The quad-tree leaf node size may range from 128x128 to 16x16. A quad-tree node size of 128x128 may exceed the maximum binary tree size (e.g., MaxBTSize). For example, if the quad-tree node size is less than or equal to MaxBTSize, the quad-tree node may be further partitioned by a binary tree. The quad-tree node (e.g., the root node of the binary tree) may have a binary tree depth equal to 0. For example, the binary tree partitioning may be repeated until the binary tree depth reaches MaxBTDepth or until the binary tree node has a width or height equal to MinBTSize.

[0027] Figure 3 shows an example of QTBT block partitioning. Solid lines may represent quad-tree partitioning, and dotted lines may represent binary tree partitioning. A partitioning direction indication (e.g., a flag) may be signaled, for example, to indicate if a binary tree node is further partitioned, e.g., whether horizontal or vertical partitioning may be used. Quad-tree partitioning may partition a block into four sub-blocks having equal sizes.

[0028] A block (e.g., in QTBT) may be partitioned by, for example, QT, horizontal BT, and vertical BT. Different partitioning procedures may produce the same partitioning result.

[0029] 4A-4B show examples of QTBT signaling redundancy elimination. Fig. 4A shows an example of QTBT signaling redundancy elimination using horizontal BT partitioning. Fig. 4B shows an example of QTBT signaling redundancy elimination using vertical BT partitioning.

[0030] As shown in Figure 4A, a block may be partitioned into sub-blocks B0 and B1 by horizontal BT partitioning. Further partitioning of sub-blocks B0 and B1 by vertical BT partitioning may produce the same final partitioning result as if the block were first partitioned by vertical BT partitioning, and then each sub-block was partitioned by horizontal BT partitioning. QTBT may have a constraint that allows vertical BT partitioning to be followed by horizontal BT partitioning, but does not allow horizontal BT partitioning to be followed by vertical BT partitioning.

[0031] As shown in FIG. 4B, the constraint may be applied to square blocks with vertical BT partitioning (e.g., creating sub-blocks B0 and B1 shown in FIG. 4B). Further partitioning of sub-blocks B0 and B1 by horizontal BT may produce results equivalent to those by QT partitioning. For example, if the left sub-block B0 is partitioned by horizontal BT, horizontal BT may not be applied to the right sub-block B1. For example, this constraint may be applicable to square blocks because QT is not applied to non-square blocks in QTBT.

[0032] FIG. 5 shows an example of block coding in QTBT. The encoder may (e.g., first) check the rate-distortion (RD) cost without further partitioning. The cost may be checked using different coding modes (e.g., inter mode and intra mode) for a given block. A BT depth may be determined. The BT depth may be the depth from the current node to a leaf node in the QT partitioning tree. A determination may be made whether the BT depth of the current block is less than the maximum BT depth (MaxBTDepth). Depending on the determination, the encoder may check the RD cost, for example, by applying horizontal BT partitioning to the current block. The encoder may also check the RD cost, for example, by applying vertical BT partitioning to the current block. A determination may be made whether the QT depth of the current block is less than the maximum QT depth. Depending on the determination, the encoder may check the RD cost, for example, by applying QT partitioning to the current block. The partitioning with the minimum RD cost may be treated as the best partitioning scheme for the current block.

[0033] Fast encoding using the QTBT framework can be performed. One or more partitioning schemes can be applied, for example, to a given block. Some sub-blocks can be repeated using different partitioning schemes. For example, three partitioning schemes (e.g., as shown by the example in Figure 6) can be applied to (e.g., one) block.

[0034] 6A-6C show examples of reusing coding results for the top-left sub-block in QTBT. FIG. 6A shows an example of applying horizontal BT followed by vertical BT to the top sub-block. FIG. 6B shows an example of applying vertical BT followed by horizontal BT to the left sub-block. FIG. 6C shows an example of applying QT partitioning to square blocks. The top-left sub-block B0 in the three examples shown in FIGS. 6A-6C may be the same. Fast encoding may record the coding results for B0, for example, in the first run. The stored coding results may be reused for block B0 in other partitioning schemes. In this way, the top-left block may be coded only once.

[0035] QTBT may allow equal partitioning in one or more (e.g., one or two) directions. Multi-type tree (MTT) partitioning may allow for more partitioning. MTT may support, for example, five partitioning types (e.g., as shown by the example in FIG. 7).

[0036] Figures 7A-7E show examples of MTT partitioning types: Figure 7A shows an example of quad-tree (QT) partitioning; Figure 7B shows an example of vertical BT partitioning; Figure 7C shows an example of horizontal BT partitioning; Figure 7D shows an example of vertical triple-tree (TT) partitioning; and Figure 7E shows an example of horizontal TT partitioning.

[0037] TT partitioning may divide a block into three parts. For example, vertical TT (e.g., as shown in FIG. 7D) may partition a block in the vertical direction. The widths of the partitioned sub-blocks may be equal to, for example, ¼, ½, and ¼ of the block width, respectively. BT and TT may be treated as prediction trees (PT). PT depth may be the depth from the current node to the leaf node of the QT partitioning tree. A block may be partitioned (e.g., initially) by QT. (E.g., each) QT leaf node may be partitioned, for example, by horizontal BT, vertical BT, horizontal TT, and / or vertical TT. The block width and height may be a power of two. TT partitioning may create sub-blocks with, for example, ¼ or ½ the width and / or height of the block, and therefore the sub-block width and height may be a power of two in MTT. A block may not be partitioned in the middle, which may provide flexibility.

[0038] 8 shows an example of tree type signaling in an MTT implementation. For example, if a QT leaf node is further divided by BT or TT, one or more (e.g., two) flags may be signaled. A partitioning direction indication (e.g., a direction flag) may indicate, for example, whether the partitioning is horizontal or vertical. A partitioning type indication (e.g., a type flag) may indicate, for example, whether the partitioning is BT or TT partitioning.

[0039] An exemplary syntax element (e.g., PT type) may be used in the MTT. The PT type may be encoded.

[0040] There may be a limit on the maximum BT depth in QTBT. Both BT and TT may be treated as PT. The maximum PT depth may apply to BT and TT. BT depth and TT depth may be controlled separately.

[0041] The same partitioning result can be achieved using different tree partitioning schemes. For example, a block partitioned into two sub-blocks using horizontal BT, which are then partitioned into four sub-blocks using vertical BT, can achieve the same result as partitioning the block into two sub-blocks using vertical BT, which are then partitioned using horizontal BT. Partitioning constraints can be thought of as reducing syntactic redundancy and / or reducing encoding complexity.

[0042] Deblocking in QTBT extends to one or more TT boundaries.

[0043] The maximum BT depth can be set in QTBT. Adding TT partitioning types can increase the encoding complexity. A fast encoding algorithm can be used to control the complexity without adversely affecting performance.

[0044] An exemplary MTT signaling scheme may be disclosed herein. Context coding may be based on the partitioning type of neighboring CUs, e.g., partitioning type (BT or TT). A maximum TT depth restriction may be applied to TT partitioning. Signaling redundancy may be reduced in the MTT framework. Deblocking in QTBT may be applied to QT and BT boundaries. Deblocking in MTT may be extended to support TT partitioning. A fast TT encoding procedure may be performed in MTT coding.

[0045] Tree-type signaling may be provided in MTT. In an MTT example (e.g., as shown in FIG. 8), the direction may be signaled (e.g., first) to (e.g., each) QT leaf node with a split. The PT type (e.g., BT or TT) may be signaled (e.g., second) to the QT leaf node. Other examples (e.g., as shown in FIG. 9) may have a different signaling order.

[0046] FIG. 9 shows an example of tree type signaling in MTT. The PT type (e.g., for the current block) may be signaled. The PT type may be received (e.g., by a decoder). The availability of horizontal and vertical directions may be determined (e.g., checked), e.g., based on the PT type. The CU size may be equal to or greater than the minimum BT size (e.g., 4). For example, if the partitioning type is BT and the width of the current block is equal to or greater than 2xMinBTSize, vertical BT partitioning may be available for the current block. For example, if the height of the current block is equal to or greater than 2xMinBTSize, horizontal BT partitioning may be available for the current block. For example, if the partitioning type is TT and the width of the current block is equal to or greater than 4xMinBTSize, vertical TT partitioning may be available for the current block. For example, if the height of the current block is equal to or greater than 4xMinBTSize, horizontal TT partitioning may be available for the current block. For example, if (e.g., only if) both directions are available, the direction may be signaled. For example, if one direction (e.g., only one direction) is available, the direction may be inferred (e.g., derived) as the available direction, and the block may be decoded based on the inferred direction.

[0047] Context-based CABAC coding may be used for PT-type coding. The context may be derived from one or more blocks, for example, blocks to the left and above of neighboring CUs (e.g., as shown in FIG. 10).

[0048] 10 shows an example of using neighboring blocks for context derivation for a block. The tree depth, i.e., TDepth, for the current block may be calculated, for example, according to equation (1): TDepth(B)=2*QTDepth(B)+PTDepth(B) (1) where QTDepth(B) may be the depth of the QT tree from the root, and PTDepth(B) may be the depth of the current node B from the QT leaf node.

[0049] Block B on the left L The relative PT depth, i.e., RPTDepth(B L ) can be calculated, for example, according to equation (2): RPTDepth(B L )=TreeDepth(B)-2*QTDepth(B L ) (2)

[0050] Upper block B A The relative PT depth, i.e., RPTDepth(B A ) can be calculated, for example, according to equation (3): RPTDepth(B A )=TreeDepth(B)-2*QTDepth(B A ) (3)

[0051] B L The context index for L ) can be derived, for example, according to equation (4):

[0052]

number

[0053] However, PTType(RPTDepth(B L )) is the PT depth RPTDepth(B L ) Block BL It can be a PT type.

[0054] Upper Neighboring Block B A The context index for A ) can be derived, for example, according to equation (5):

[0055]

number

[0056] The context of the current block B may be used for PT type coding, i.e., C(B), which may be calculated, for example, according to equation (6): C(B)=min(3,CI(B L )+CI(B A )) (6)

[0057] For example, there may be four contexts: A context (e.g., context 0) may indicate that the neighboring blocks to the left and above (e.g., both) at the same tree depth (e.g., with respect to the root) have a BT partitioning type; a context (e.g., context 1) may indicate that the neighboring blocks have different partitioning types; a context (e.g., context 2) may indicate that the neighboring blocks (e.g., both) have a TT partitioning type; and a context (e.g., context 3) may indicate all other cases (e.g., all). One or more contexts (e.g., context 0 and context 2) may be combined into one context to indicate that the neighboring blocks to the left and above have the same partitioning type.

[0058] A maximum tree depth restriction may be provided for the TT. A maximum BT depth (MaxBTDepth) may be used to limit the depth of the BT tree. The partitioning trees for the luma and chroma components may be separated, e.g., for intra-slice coding. The luma and chroma components may share (e.g., one) partitioning tree, e.g., for inter-slice coding. MaxBTDepth for the luma and chroma components in an intra-slice, and MaxBTDepth for an inter-slice, may be signaled, e.g., in a sequence parameter set (SPS). MaxBTDepth may be applied to the TT in the MTT. A maximum TT depth, MaxTTDepth, may be used, e.g., for one or more (e.g., each) of the following cases: luma component in an intra-slice, chroma component in an intra-slice and inter-slice. The difference between MaxTTDepth and MaxBTDepth may be signaled, e.g., in the SPS, in the PPS, and / or at the picture level (e.g., in the slice header). In one example, the encoder may adaptively set MaxTTDepth for the current picture based on, for example, the average PT depth of previously coded pictures in the same temporal layer as the current picture. In one example, the encoder may increase MaxTTDepth for pictures in lower temporal layers (e.g., because they are reference pictures for higher temporal layers). The encoder may decrease MaxTTDepth for pictures in higher temporal layers. The encoder may increase MaxTTDepth for luma and chroma components in intra slices, for example, while keeping MaxTTDepth the same as MaxBTDepth for inter slices.

[0059] In one example, MaxTTDepth may be set according to the QT depth: the encoder may set different MaxTTDepth for blocks with different QT depths.

[0060] Signaling redundancy reduction may be provided in MTT. One or more (e.g., two) different partitionings of a block may achieve the same result. For example, a block partitioned by horizontal BT followed by vertical TT may achieve the same result as a block partitioned by vertical TT followed by horizontal BT. An encoder may be configured to select a partitioning scheme for a block. The encoder may disable the selection of partitioning schemes that have the same result. For example, a block BP may be partitioned (e.g., using horizontal BT or vertical BT) into one or more (e.g., two) sub-blocks B0 and B1. The encoder may include in the bitstream the partitioning direction for BP, one or more (e.g., two) partitioning parameters for B0, and / or (e.g., one) partitioning parameter for B1. A decoder may receive the partitioning direction for BP. A decoder may receive one or more (e.g., two) partitioning parameters (e.g., type and / or direction) for B0 and (e.g., one) partitioning parameter (e.g., type or direction) for B1. The decoder may derive a second partitioning parameter for B1, for example, based on the partitioning parameters for B0 and the partitioning direction for BP. For example, if one option (e.g., only one option) is allowed for the second partitioning parameter (e.g., horizontal or vertical if the parameter is direction, or BT or TT if the parameter is type), the decoder may derive the second partitioning parameter for B1. For example, if two or more options are allowed for the second partitioning parameter, the encoder may include the second partitioning parameter for B1 in the bitstream. For example, if two or more options are allowed for the second partitioning parameter, the decoder may receive the second partitioning parameter for B1.The second partitioning parameter may be used to decode the block. One or more (e.g., four) cases may be considered to reduce signaling redundancy in MTT (e.g., as shown by the example in Figure 11).

[0061] 11A to 11D show examples of signaling redundancy reduction in MTT. Figures 11A and 11B show examples of horizontal BT constraints. Figures 11C and 11D show examples of vertical BT constraints.

[0062] 11A shows an example of a case where signaling redundancy can be reduced. A block (e.g., block BP in FIG. 11A) may be partitioned by horizontal BT, and the two resulting sub-blocks (e.g., sibling nodes) may be further partitioned by vertical TT. Swapping the order of the two partitions (e.g., partitioning the block using vertical TT and then partitioning the three sub-blocks using horizontal BT) may produce the same partitioning result. For example, if a block is partitioned by horizontal BT, vertical TT partitioning may not be applied to a sub-block (e.g., B1 in FIG. 11A), and the other sub-block (e.g., B0 in FIG. 11A) is further partitioned by vertical TT. The encoder may include, and the decoder may receive, partitioning parameters (e.g., partitioning type or partitioning direction) for the sub-block (e.g., B1) in the bitstream. For example, if one or more (e.g., two) options (e.g., vertical and / or horizontal for partitioning direction and BT and / or TT for partitioning type) are allowed for the partitioning parameters, the partitioning parameters may be included and received within a bitstream. A decoder may derive the partitioning parameters based on the partitioning direction and / or type of the block and another sub-block (e.g., B0). For example, if one (e.g., only one) option is allowed for the partitioning parameters, the decoder may derive the partitioning parameters.

[0063] For example, block C may be partitioned into two sub-blocks, C0 and C1, using horizontal BT. C0 may be further partitioned using vertical TT. The encoder may include in the bitstream an indication of the partitioning direction and type for C and the partitioning direction and type for C0. The encoder may include in the bitstream an indication that C1 is vertically partitioned. The decoder may receive the indication. The decoder may derive the partitioning type for C1 based on the indication. For example, the decoder may derive the partitioning type for C1 as BT (e.g., because applying TT to C1 is not allowed).

[0064] Figure 11B shows an example of a case where signaling redundancy can be reduced. A block (e.g., block BP in Figure 11B) may be partitioned by horizontal BT, and the two resulting sub-blocks may be further partitioned by horizontal BT. Partitioning the block and sub-blocks in this manner may produce the same partitioning result as partitioning the block by horizontal TT and partitioning the resulting central block by horizontal BT. For example, if a block is partitioned by horizontal BT and the other sub-block (e.g., B0 in Figure 11B) is further partitioned by horizontal BT, horizontal BT partitioning may not be applied to the sub-block (e.g., B1 in Figure 11B). The encoder may include, and the decoder may receive, partitioning parameters (e.g., partitioning type or partitioning direction) for the sub-block (e.g., B1) in the bitstream. For example, if one or more (e.g., two) options (e.g., vertical and / or horizontal for partitioning direction and BT and / or TT for partitioning type) are allowed for the partitioning parameters, the partitioning parameters may be included and received within a bitstream. A decoder may derive the partitioning parameters based on the partitioning direction and / or type of the block and another sub-block (e.g., B0). For example, if one (e.g., only one) option is allowed for the partitioning parameters, the decoder may derive the partitioning parameters.

[0065] For example, block C may be partitioned into three sub-blocks, namely, C0, C1, and C2, using horizontal TT. C1 may be the center sub-block. The encoder may include in the bitstream an indication of the partitioning direction and type for C. The encoder may include in the bitstream an indication that C1 is horizontally partitioned. The decoder may receive the indication. The decoder may derive the partitioning type for C1 based on the indication. For example, the decoder may derive the partitioning type for C1 as TT (e.g., because applying BT to C1 is not allowed).

[0066] 11C and 11D show examples of cases in which signaling redundancy can be reduced, for example, by changing the horizontal partitioning in FIG. 11A and FIG. 11B to vertical partitioning. For example, as shown in FIG. 11C, if a block (e.g., block BP in FIG. 11C to FIG. 11D) is partitioned by vertical BT and the other sub-block (e.g., B0 in FIG. 11C to FIG. 11D) is further partitioned by horizontal TT, the horizontal TT may not be applied to the sub-block (e.g., B1 in FIG. 11C to FIG. 11D). For example, as shown in FIG. 11D, if a block is partitioned by vertical BT and sub-block B0 is further partitioned by vertical BT, the vertical BT may not be applied to sub-block B1. The encoder may include, and the decoder may receive, partitioning parameters (e.g., partitioning type or partitioning direction) for the sub-block (e.g., B1) in the bitstream. For example, if one or more (e.g., two) options (e.g., vertical and / or horizontal for partitioning direction and BT and / or TT for partitioning type) are allowed for the partitioning parameters, the partitioning parameters may be included and received within a bitstream. A decoder may derive the partitioning parameters based on the partitioning direction and / or type of the block and another sub-block (e.g., B0). For example, if one (e.g., only one) option is allowed for the partitioning parameters, the decoder may derive the partitioning parameters.

[0067] Deblocking may be provided in the MTT framework. Deblocking may be applied to one or more (e.g., all) CU boundaries (e.g., QT boundaries and / or BT boundaries). A CU boundary may include one or more TT boundaries. Deblocking may be extended to be applied to (e.g., all) TT boundaries. Boundary strength derivation and / or deblocking filtering may be performed. A block may be partitioned into one or more (e.g., three) sibling nodes by TT partitioning. The partitioning type and / or direction for the sibling nodes may be received and / or derived as described herein. One or more boundaries of the sibling nodes may be determined. A deblocking filter may be applied to the boundaries.

[0068] Fast MTT encoding may be performed as described herein. Early termination and best TT direction determination may be performed, for example, before the TT RD cost check. Figure 12 shows an example of fast encoding for MTT. The dotted blocks may indicate the TT RD check process. For example, if (e.g., only if) the current PT depth is smaller than the maximum TT depth and the current block size is smaller than the maximum BT size, TT partitioning may be tested in encoding.

[0069] For example, before the TT partitioning RD cost check, the likelihood of horizontal TT partitioning and vertical TT partitioning may be checked. A low likelihood of TT partitioning in a direction may indicate that TT partitioning in that direction is not the best partitioning scheme for the current block. The RD cost check of TT partitioning in that direction may be skipped. Figure 13 shows an example of a likelihood check for horizontal TT partitioning. A test flag (e.g., Hor_TT_Test flag) may indicate whether the encoder tests horizontal TT partitioning. For example, if the current PT depth is greater than a predefined threshold FTT_TH (e.g., 1) and horizontal BT partitioning is not the best partitioning scheme, the likelihood of horizontal TT partitioning may be low, and the flag Hor_TT_Test may be set to a value (e.g., 0) indicating that the encoder may skip the horizontal TT partitioning check. The RD cost of horizontal BT partitioning may be compared to the RD cost of no partitioning. For example, if the RD cost of horizontal BT partitioning is greater than the RD cost of no partitioning (e.g., the ratio is greater than a predefined threshold A_TH), the horizontal TT may not be tested, and the flag Hor_TT_Test may be set to a value (e.g., 0) indicating that the encoder may skip the horizontal TT partitioning check. The likelihood of horizontal TT partitioning may be high, and the flag Hor_TT_Test may be set to a value (e.g., 1) indicating that the encoder may test the horizontal TT partitioning check in the remaining cases. The likelihood check for vertical TT partitioning may be performed in a similar manner.

[0070] One or more candidate directions (e.g., best candidate directions) may be determined, for example, based on the RD cost of BT partitioning. The candidate directions may be determined after a likelihood check for TT partitioning. FIG. 14 shows an exemplary determination of the best candidate direction for a TT partitioning check. The RD cost of horizontal BT may be compared with the RD cost of vertical BT. For example, if horizontal partitioning and vertical TT partitioning (e.g., both of these) are tested, the RD costs of vertical BT and / or horizontal BT may be tested for the current block. For example, if the ratio of the two RD costs is smaller than a predefined threshold D_TH, both directions may be considered the best candidate direction for the TT partitioning check. The direction with the smaller BT partitioning RD cost may be considered the best candidate direction for the TT partitioning check. For example, if TT partitioning is the only partitioning tested, TT partitioning may be treated as the best candidate direction. The encoder may, for example, skip testing one or more (e.g., two) directions for TT partitioning based on the best direction determination.

[0071] High-speed encoding can be enhanced by reusing past coding results, as shown by the example in FIG. 6. FIGS. 15A-15E show examples of coding result reuse for different MTT partitioning. FIG. 15 shows five exemplary cases in which coding for a sub-block (e.g., the top-left sub-block) can be reused. FIG. 15A shows an example in which a block is partitioned by horizontal BT followed by horizontal BT partitioning for the upper sub-block. For example, if a block is partitioned by horizontal TT, the top-left block B0 can be the same. FIG. 15B shows an example similar to the example in FIG. 15A by changing the horizontal direction to vertical. FIG. 15C shows an example in which a block is partitioned by horizontal BT followed by vertical TT partitioning for the upper sub-block. For example, if a block is partitioned by vertical TT followed by horizontal BT partitioning for the left sub-block, the top-left block B0 can be the same. FIG. 15D shows an example similar to the example in FIG. 15C by switching between horizontal and vertical directions. 15E shows an example where a block is partitioned by horizontal TT followed by vertical TT partitioning for the upper sub-blocks. For example, if a block is partitioned by vertical TT followed by horizontal TT partitioning for the left sub-blocks, the upper left block B0 may be the same.

[0072] In one example, early termination may be applied to a picture in the highest temporal layer. The temporal layer of a picture may indicate whether the picture is used as a reference for coding another picture. A picture in a temporal layer may be used to code other pictures in the same temporal layer or a higher temporal layer. For example, a picture in a lower temporal layer (e.g., temporal layer 0) may be used to code a picture in a higher temporal layer (e.g., temporal layer 2). A picture in a higher temporal layer may reference a picture in a lower temporal layer. A picture in a lower temporal layer may have more allocated bits than a picture in a higher temporal layer. The encoder may, for example, test the RD performance using a coding mode (e.g., without further partitioning). For example, if the best mode is a highly efficient coding mode (e.g., skip mode) and the current PT depth is greater than or equal to the maximum PT depth of its neighboring CUs (e.g., left and / or top), the encoder may skip the horizontal TT check and the vertical TT check. For example, the encoder may skip horizontal and vertical TT checks because the block selects skip mode and the tree depth exceeds a threshold. Early termination may be applied, for example, to pictures that have close reference pictures in their reference picture lists in terms of temporal distance (e.g., regardless of which temporal layer the pictures belong to). The temporal distance between two pictures may be measured by the absolute difference in their picture order counts.

[0073] Content analysis may be applied to determine which partitionings to test (e.g., in addition to or as an alternative to the RD cost-based fast encoding scheme). In one example (e.g., for block B), one or more tests may be performed to determine, for example, whether to test BT (e.g., only BT) or TT (e.g., only TT). Exemplary tests are presented below.

[0074] B may be partitioned into two horizontal or vertical portions using BT. Content analysis may be performed on (e.g., each) BT portion. In one example, a mean and / or variance may be calculated for (e.g., each) BT. These may be represented as A(BT0), A(BT1), V(BT0), and V(BT1).

[0075] B may be partitioned into three horizontal or vertical portions using TT. Content analysis may be performed on (e.g., each) TT portion. In one example, a mean and / or variance may be calculated for (e.g., each) BT portion. These may be represented as A(TT0), A(TT1), A(TT2), V(TT0), V(TT1), and V(TT1).

[0076] The difference between one or more (e.g., two) BT statistics may be calculated. For example, |A(BT0)-A(BT1)| and |V(BT0)-V(BT1)| may be calculated. The difference between one or more (e.g., three) TT statistics may also be calculated. For example, max(|A(TT0)-A(TT1)|, |A(TT1)-A(TT2)|, |A(TT2)-A(TT0)|) and max(|V(TT0)-V(TT1)|, |V(TT1)-V(TT2)|, |V(TT2)-V(TT0)|) may be calculated.

[0077] The BT / TT statistics may be integrated, for example, using a weighted combination of the differences between the means and variances, e.g., Diff_Stats(BT) = |A(BT0) - A(BT1)| + w * |V(BT0) - V(BT1)|. Diff_Stats(TT) may be calculated in a similar manner. For example, if the difference in the BT statistics between two BTs is greater than the difference in the TT statistics between three TTs, then BT partitioning may be tested for block B (e.g., only for block B). For example, if the difference in the TT statistics between three TTs is greater than the difference in the BT statistics between two BTs, then TT partitioning may be tested for block B (e.g., only for block B).

[0078] The mean and variance are used as examples of content analysis. Other content characteristics (e.g., horizontal / vertical gradient along the partitioning boundaries) can be collected and used in fast encoding decisions.

[0079] Fast MTT encoding can be implemented with restrictions on coding unit size.

[0080] As mentioned in the description (e.g., regarding FIG. 12 ), the encoder may check the RD cost for different partitionings (e.g., no partitioning, horizontal BT partitioning, vertical BT partitioning, horizontal TT partitioning, vertical TT partitioning, QT partitioning) for the current coding block. The encoder may select the best partitioning with the smallest RD cost. Fast encoding may be performed as disclosed herein (e.g., by guessing several directions without RD cost checking).

[0081] Fast MTT encoding may be implemented by considering CU size. There may be a correlation between the current CU and its spatially neighboring CUs. The CU size may vary gradually from its neighbors. Local CU size information may be used to accelerate MTT encoding. For example, before the current coding block is encoded, the encoder may check the sizes of neighboring coded CUs and find the minimum and maximum CU sizes from the neighborhood. The minimum CU size (CU_SIZE MIN ) and maximum CU size (CU_SIZE MAX ) may be determined for the current coding block using equations (7) and (8): CU_SIZE MIN =max(SIZE_MIN,min(CUSize(B i )) / 2 T ),B i ∈NBS (7) CU_SIZE MAX =min(SIZE_MAX,max(CUSize(B i ))*2 T ),B i ∈NBS (8) However, B i may be the ith neighboring block, which may belong to the neighboring block set (NBS) of the current block, T may be a predefined threshold (e.g., 1), SIZE_MIN may be the minimum allowed CU size (e.g., 4x4), and SIZE_MAX may be the maximum allowed CU size (e.g., 128x128). The NBS may be defined in various ways. For example, in FIG. 16 (a) (e.g., the left side of FIG. 16), the NBS of the current block C may be defined as one or more (e.g., all) neighboring blocks from the left direction and one or more (e.g., all) neighboring blocks from the top direction. In one example, in FIG. 16 (b) (e.g., the right side of FIG. 16), the NBS may be defined as one or more (e.g., four) corner neighboring blocks. In one example, when the size of the current coding block is CU_SIZE , the NBS may be defined as one or more (e.g., four) corner neighboring blocks. MAXIf the size of the current coding block is greater than CU_SIZE, the RD cost check for non-partitioning may be skipped and the current coding block may be further partitioned by BT, TT, or QT. MIN If it is smaller, then the RD cost check for BT, TT or QT may be skipped. In one example, a limited CU size may be checked.

[0082] The threshold T may determine the amount of change in CU size between the current block and its neighbors. In one example, a smaller T may have a smaller (e.g., relative) amount of change and lower encoding complexity. T may be set differently based on the current coding block size. For example, if the size of the current coding block is large, then T may be set larger (e.g., to 2) to allow a larger amount of change for the current coding block (e.g., because the current coding block has a larger amount of change with respect to the size of the neighboring CUs). In another example, if the size of the current coding block is small, then T may be smaller (e.g., to 1) to allow a smaller amount of change for the current coding block (e.g., because the current coding block has already been tested with a different partitioning from its parent). In another example, if the size of the current coding block is small enough to correspond to the minimum CU size (e.g., 2 x SIZE_MIN), then T may be set to 0 to allow no change for high-speed encoding. For different partitioning modes (e.g., BT, TT, or QT, etc.), T may be different. For example, T may be set larger for QT partitioning to allow for larger amounts of variation, and smaller for BT and TT.

[0083] Neighboring Block B in NBS iIf B is not available (e.g., outside the picture boundary or not yet coded), then equations (7) and (8) may be evaluated in one or more (e.g., two) ways. For example, i Neighboring blocks from CU_SIZE may be excluded from the NBS. If the NBS is empty (e.g., there are no coded neighboring CUs available), MIN may be set to SIZE_MIN and CU_SIZE MAX may be set to SIZE_MAX. For example, one or more (e.g., all) unavailable neighboring blocks may be counted. If the percentage of unavailable neighboring blocks is greater than a predefined percentage, CU_SIZE MIN may be set to SIZE_MIN and CU_SIZE MAX may be set to SIZE_MAX.

[0084] The CU size may be calculated by the depth of the CU using equation (9): CU_Size=SIZE_MAX / 2 depth (9) The depth of a CU may be used as a measure for the CU size (e.g., to implement fast MTT encoding).

[0085] 17A is a diagram illustrating an example communications system 100 in which one or more disclosed embodiments may be implemented. Communications system 100 may be a multiple-access system providing content, such as voice, data, video, messaging, broadcasts, etc., to multiple wireless users. Communications system 100 may enable multiple wireless users to access such content through sharing system resources, including wireless bandwidth. For example, communications system 100 may employ one or more channel access methods, such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single-carrier FDMA (SC-FDMA), zero-tailed unique word DFT spread OFDM (ZT UW DTS-s OFDM), unique word OFDM (UW-OFDM), resource, block filtered OFDM, filter bank multicarrier (FBMC), etc.

[0086] 17A, communications system 100 may include wireless transmit / receive units (WTRUs) 102a, 102b, 102c, 102d, RANs 104 / 113, CNs 106 / 115, public switched telephone networks (PSTNs) 108, the Internet 110, and other networks 112, although it will be appreciated that the disclosed embodiments contemplate any number of WTRUs, base stations, networks, and / or network elements. Each of WTRUs 102a, 102b, 102c, 102d may be any type of device configured to operate and / or communicate in a wireless environment. By way of example, the WTRUs 102a, 102b, 102c, 102d, any of which may be referred to as a “station” and / or “STA,” may be configured to transmit and / or receive wireless signals and may include user equipment (UE), a mobile station, a fixed or mobile subscriber unit, a subscription-based unit, a pager, a mobile phone, a personal digital assistant (PDA), a smartphone, a laptop computer, a netbook, a personal computer, a wireless sensor, a hotspot or Mi-Fi device, an Internet of Things (IoT) device, a watch or other wearable, a head-mounted display (HMD), a vehicle, a drone, a medical device and application (e.g., remote surgery), an industrial device and application (e.g., a robot and / or other wireless device operating in an industrial and / or automated processing chain context), a consumer electronics device, a device operating on a commercial and / or industrial wireless network, etc. Any of the WTRUs 102a, 102b, 102c, and 102d may be referred to interchangeably as a UE.

[0087] The communications system 100 may also include a base station 114a and / or a base station 114b. Each of the base stations 114a, 114b may be any type of device configured to wirelessly interface with at least one of the WTRUs 102a, 102b, 102c, 102d to facilitate access to one or more communications networks, e.g., the CN 106 / 115, the Internet 110, and / or other networks 112. By way of example, the base stations 114a, 114b may be a base transceiver station (BTS), a Node B, an eNodeB, a Home Node B, a Home eNodeB, a gNB, an NR Node B, a site controller, an access point (AP), a wireless router, etc. Although the base stations 114a, 114b are each illustrated as a single element, it will be appreciated that the base stations 114a, 114b may include any number of interconnected base stations and / or network elements.

[0088] The base station 114a may be part of the RAN 104 / 113, which may also include other base stations and / or network elements (not shown), such as a base station controller (BSC), a radio network controller (RNC), relay nodes, etc. The base station 114a and / or base station 114b may be configured to transmit and / or receive wireless signals on one or more carrier frequencies, which may be referred to as a cell (not shown). These frequencies may be in the licensed spectrum, the unlicensed spectrum, or a combination of the licensed and unlicensed spectrum. A cell may provide coverage for wireless services for a particular geographic area, which may be relatively fixed or may change over time. A cell may be further divided into cell sectors. For example, the cell associated with the base station 114a may be divided into three sectors. Thus, in one embodiment, the base station 114a may include three transceivers, i.e., one transceiver for each sector of the cell. In one embodiment, the base station 114a may employ multiple-input multiple-output (MIMO) technology and may utilize multiple transceivers per sector of the cell. For example, beamforming may be used to transmit and / or receive signals in desired spatial directions.

[0089] The base stations 114a, 114b may communicate with one or more of the WTRUs 102a, 102b, 102c, 102d over an air interface 116, which may be any suitable wireless communication link (e.g., radio frequency (RF), microwave, centimeter wave, micrometer wave, infrared (IR), ultraviolet (UV), visible light, etc.). The air interface 116 may be established using any suitable radio access technology (RAT).

[0090] More specifically, as noted above, the communications system 100 may be a multiple-access system and may employ one or more channel access schemes, such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA, etc. For example, the base station 114a and the WTRUs 102a, 102b, 102c in the RAN 104 / 113 may implement a radio technology, such as Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access (UTRA), which may establish the air interface 115 / 116 / 117 using Wideband CDMA (WCDMA). WCDMA may include communications protocols, such as High Speed ​​Packet Access (HSPA) and / or Evolved HSPA (HSPA+). HSPA may include High Speed ​​Downlink (DL) Packet Access (HSDPA) and / or High Speed ​​UL Packet Access (HSUPA).

[0091] In one embodiment, the base station 114a and the WTRUs 102a, 102b, 102c may implement a radio technology such as Evolved UMTS Terrestrial Radio Access (E-UTRA), which may establish the air interface 116 using Long Term Evolution (LTE) and / or LTE Advanced (LTE-A) and / or LTE Advanced Pro (LTE-A Pro).

[0092] In one embodiment, the base station 114a and the WTRUs 102a, 102b, 102c may implement a radio technology, such as NR radio access, which may establish the air interface 116 using New Radio (NR).

[0093] In one embodiment, the base station 114a and the WTRUs 102a, 102b, 102c may implement multiple radio access technologies. For example, the base station 114a and the WTRUs 102a, 102b, 102c may implement both LTE radio access and NR radio, e.g., using dual connectivity (DC) principles. Thus, the air interface utilized by the WTRUs 102a, 102b, 102c may be characterized by multiple types of radio access technologies and / or transmissions sent to / from multiple types of base stations (e.g., eNBs and gNBs).

[0094] In other embodiments, the base station 114a and the WTRUs 102a, 102b, 102c may implement a wireless technology such as IEEE 802.11 (i.e., Wireless Fidelity (WiFi)), IEEE 802.16 (i.e., Worldwide Interoperability for Microwave Access (WiMAX)), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, Interim Standard 2000 (IS-2000), Interim Standard 95 (IS-95), Interim Standard 856 (IS-856), Global System for Mobile Communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), GSM EDGE (GERAN), etc.

[0095] 17A may be, for example, a wireless router, a Home NodeB, a Home eNodeB, or an access point and may utilize any suitable RAT to facilitate wireless connectivity in a localized area, such as a business, a home, a vehicle, a campus, an industrial facility, an air corridor (e.g., for use by drones), a roadway, etc. In one embodiment, the base station 114b and the WTRUs 102c, 102d may implement a radio technology such as IEEE 802.11 to establish a wireless local area network (WLAN). In one embodiment, the base station 114b and the WTRUs 102c, 102d may implement a radio technology such as IEEE 802.15 to establish a wireless personal area network (WPAN). In yet another embodiment, the base station 114b and the WTRUs 102c, 102d may establish a picocell or a femtocell utilizing a cellular-based RAT (e.g., WCDMA, CDMA2000, GSM, LTE, LTE-A, LTE-A Pro, NR, etc.). As shown in FIG. 17A, the base station 114b may have a direct connection to the Internet 110. Thus, the base station 114b may not be required to access the Internet 110 via the CN 106 / 115.

[0096] The RAN 104 / 113 may communicate with the CN 106 / 115, which may be any type of network configured to provide voice, data, application, and / or Voice over Internet Protocol (VoIP) services to one or more of the WTRUs 102a, 102b, 102c, 102d. The data may have various quality of service (QoS) requirements, such as different throughput requirements, latency requirements, error tolerance requirements, reliability requirements, data throughput requirements, mobility requirements, etc. The CN 106 / 115 may provide call control, billing services, mobile location-based services, prepaid calling, Internet connectivity, video distribution, etc., and / or perform advanced security functions, such as user authentication. Although not shown in FIG. 17A , it will be appreciated that the RAN 104 / 113 and / or the CN 106 / 115 may communicate directly or indirectly with other RANs employing the same RAT as the RAN 104 / 113 or a different RAT. For example, in addition to being connected to the RAN 104 / 113, which may utilize NR radio technology, the CN 106 / 115 may also communicate with another RAN (not shown) that employs GSM, UMTS, CDMA 2000, WiMAX, E-UTRA, or WiFi radio technology.

[0097] The CN 106 / 115 may also serve as a gateway for the WTRUs 102a, 102b, 102c, 102d to access the PSTN 108, the Internet 110, and / or other networks 112. The PSTN 108 may include a circuit-switched telephone network providing plain old telephone service (POTS). The Internet 110 may include a global system of interconnected computer networks and devices that use common communication protocols, such as Transmission Control Protocol (TCP), User Datagram Protocol (UDP), and / or Internet Protocol (IP) in the TCP / IP Internet protocol suite. The network 112 may include wired and / or wireless communication networks owned and / or operated by other service providers. For example, the network 112 may include another CN connected to one or more RANs, which may employ the same RAT as the RAN 104 / 113 or a different RAT.

[0098] Some or all of the WTRUs 102a, 102b, 102c, 102d in the communications system 100 may include multi-mode capabilities (e.g., the WTRUs 102a, 102b, 102c, 102d may include multiple transceivers for communicating with different wireless networks over different wireless links.) For example, the WTRU 102c shown in Figure 17A may be configured to communicate with a base station 114a, which may employ a cellular-based wireless technology, and a base station 114b, which may employ an IEEE 802.2 wireless technology.

[0099] 17B is a system diagram illustrating an example WTRU 102. As shown in FIG. 17B, the WTRU 102 may include, among other things, a processor 118, a transceiver 120, a transmit / receive element 122, a speaker / microphone 124, a keypad 126, a display / touchpad 128, non-removable memory 130, removable memory 132, a power source 134, a global positioning system (GPS) chipset 136, and / or other peripherals 138. It will be appreciated that the WTRU 102 may include any sub-combination of the foregoing elements while remaining consistent with an embodiment.

[0100] The processor 118 may be a general-purpose processor, a special-purpose processor, a conventional processor, a digital signal processor (DSP), multiple microprocessors, one or more microprocessors associated with a DSP core, a controller, a microcontroller, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) circuit, any other type of integrated circuit (IC), a state machine, etc. The processor 118 may perform signal coding, data processing, power control, input / output processing, and / or any other functionality that enables the WTRU 102 to operate in a wireless environment. The processor 118 may be coupled to the transceiver 120, which may be coupled to the transmit / receive element 122. While FIG. 17B illustrates the processor 118 and the transceiver 120 as separate components, it will be appreciated that the processor 118 and the transceiver 120 may be integrated together in an electronic package or chip.

[0101] The transmit / receive element 122 may be configured to transmit signals to or receive signals from a base station (e.g., base station 114a) over the air interface 116. For example, in one embodiment, the transmit / receive element 122 may be an antenna configured to transmit and / or receive RF signals. In one embodiment, the transmit / receive element 122 may be an emitter / detector configured to transmit and / or receive IR signals, UV signals, or visible light signals, for example. In yet another embodiment, the transmit / receive element 122 may be configured to transmit and / or receive both RF signals and optical signals. It will be appreciated that the transmit / receive element 122 may be configured to transmit and / or receive any combination of wireless signals.

[0102] 17B as a single element, the WTRU 102 may include any number of transmit / receive elements 122. More particularly, the WTRU 102 may employ MIMO technology. Thus, in one embodiment, the WTRU 102 may include two or more transmit / receive elements 122 (e.g., multiple antennas) for transmitting and receiving wireless signals over the air interface 116.

[0103] The transceiver 120 may be configured to modulate signals to be transmitted by the transmit / receive element 122 and demodulate signals received by the transmit / receive element 122. As mentioned above, the WTRU 102 may have multi-mode capabilities. Thus, the transceiver 120 may include multiple transceivers to enable the WTRU 102 to communicate via multiple RATs, such as NR and IEEE 802.11.

[0104] The processor 118 of the WTRU 102 may be coupled to and may receive user input data from a speaker / microphone 124, a keypad 126, and / or a display / touchpad 128 (e.g., a liquid crystal display (LCD) display unit or an organic light emitting diode (OLED) display unit). The processor 118 may also output user data to the speaker / microphone 124, the keypad 126, and / or the display / touchpad 128. The processor 118 may also access information from and store data in any type of suitable memory, such as non-removable memory 130 and / or removable memory 132. The non-removable memory 130 may include random access memory (RAM), read-only memory (ROM), a hard disk, or any other type of memory storage device. The removable memory 132 may include a subscriber identity module (SIM) card, a memory stick, a secure digital (SD) memory card, etc. In other embodiments, the processor 118 may access information from memory that is not physically located in the WTRU 102, such as memory on a server or home computer (not shown), and store data in memory that is not physically located in the WTRU 102.

[0105] The processor 118 may be configured to receive power from the power source 134 and distribute and / or control the power to other components in the WTRU 102. The power source 134 may be any suitable device for powering the WTRU 102. For example, the power source 134 may include one or more dry cell batteries (e.g., nickel-cadmium (NiCd), nickel-zinc (NiZn), nickel-metal hydride (NiMH), lithium-ion (Li-ion), etc.), solar cells, fuel cells, etc.

[0106] The processor 118 may also be coupled to a GPS chipset 136, which may be configured to provide location information (e.g., longitude and latitude) regarding the current location of the WTRU 102. In addition to, or instead of, information from the GPS chipset 136, the WTRU 102 may receive location information over the air interface 116 from base stations (e.g., base stations 114a, 114b) and / or determine its location based on the timing of signals being received from two or more nearby base stations. It will be appreciated that the WTRU 102 may acquire location information by way of any suitable location determination method while remaining consistent with an embodiment.

[0107] The processor 118 may further be coupled to other peripherals 138, which may include one or more software and / or hardware modules that provide additional features, functionality, and / or wired or wireless connectivity. For example, the peripherals 138 may include an accelerometer, an e-compass, a satellite transceiver, a digital camera (for photos and / or videos), a universal serial bus (USB) port, a vibration device, a television transceiver, a hands-free headset, a Bluetooth module, a frequency modulation (FM) radio unit, a digital music player, a media player, a video game player module, an internet browser, a virtual reality and / or augmented reality (VR / AR) device, an activity tracker, etc. The peripheral device 138 may include one or more sensors, which may be one or more of a gyroscope, an accelerometer, a Hall effect sensor, a magnetometer, an orientation sensor, a proximity sensor, a temperature sensor, a time sensor, a geolocation sensor, an altimeter, a light sensor, a touch sensor, a magnetometer, a barometer, a gesture sensor, a biometric sensor, and / or a humidity sensor.

[0108] The WTRU 102 may include a full-duplex radio for which transmission and reception of some or all of the signals (e.g., associated with a particular subframe for both the UL (e.g., for transmission) and the downlink (e.g., for reception)) may be parallel and / or simultaneous. The full-duplex radio may include an interference management unit that reduces and / or substantially eliminates self-interference either through hardware (e.g., a choke) or signal processing via a processor (e.g., via a separate processor (not shown) or via the processor 118). In one embodiment, the WTRU 102 may include a half-duplex radio for transmission and reception of some or all of the signals (e.g., associated with a particular subframe for either the UL (e.g., for transmission) and the downlink (e.g., for reception)).

[0109] 17C is a system diagram illustrating an embodiment of the RAN 104 and the CN 106. As described above, the RAN 104 may employ E-UTRA radio technology to communicate with the WTRUs 102a, 102b, 102c over the air interface 116. The RAN 104 may also communicate with the CN 106.

[0110] The RAN 104 may include eNodeBs 160a, 160b, and 160c, although it will be appreciated that the RAN 104 may include any number of eNodeBs while remaining consistent with an embodiment. The eNodeBs 160a, 160b, and 160c may each include one or more transceivers for communicating with the WTRUs 102a, 102b, and 102c over the air interface 116. In one embodiment, the eNodeBs 160a, 160b, and 160c may implement MIMO technology. Thus, the eNodeB 160a may use multiple antennas, for example, to transmit wireless signals to and / or receive wireless signals from the WTRU 102a.

[0111] Each of the eNodeBs 160a, 160b, 160c may be associated with a particular cell (not shown) and may be configured to handle radio resource management decisions, handover decisions, scheduling of users in the UL and / or DL, etc. As shown in FIG. 17C, the eNodeBs 160a, 160b, 160c may communicate with one another over an X2 interface.

[0112] 17C may include a mobility management entity (MME) 162, a serving gateway (SGW) 164, and a packet data network (PDN) gateway (i.e., PGW) 166. While each of the foregoing elements is illustrated as part of the CN 106, it will be appreciated that any of these elements may be owned and / or operated by an entity other than the CN operator.

[0113] The MME 162 may be connected to each of the eNodeBs 162a, 162b, 162c in the RAN 104 via an S1 interface and may act as a control node. For example, the MME 162 may be responsible for authenticating users of the WTRUs 102a, 102b, 102c, bearer activation / deactivation, selecting a particular serving gateway during initial attachment of the WTRUs 102a, 102b, 102c, etc. The MME 162 may provide a control plane function for switching between the RAN 104 and other RANs (not shown) that employ other radio technologies such as GSM and / or WCDMA.

[0114] The SGW 164 may be connected to each of the eNodeBs 160a, 160b, 160c in the RAN 104 via an S1 interface. The SGW 164 may generally route and forward user data packets to / from the WTRUs 102a, 102b, 102c. The SGW 164 may perform other functions, such as anchoring the user plane during handovers between eNodeBs, triggering paging when DL data is available for the WTRUs 102a, 102b, 102c, managing and storing the context of the WTRUs 102a, 102b, 102c, etc.

[0115] The SGW 164 may be connected to a PGW 166, which may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices.

[0116] The CN 106 may facilitate communications with other networks. For example, the CN 106 may provide the WTRUs 102a, 102b, 102c with access to a circuit-switched network, such as the PSTN 108, to facilitate communications between the WTRUs 102a, 102b, 102c and traditional landline communications devices. For example, the CN 106 may include or communicate with an IP gateway (e.g., an IP Multimedia Subsystem (IMS) server) that serves as an interface between the CN 106 and the PSTN 108. The CN 106 may also provide the WTRUs 102a, 102b, 102c with access to other networks 112, which may include other wired and / or wireless networks owned and / or operated by other service providers.

[0117] Although the WTRU is described in Figures 17A-17D as a wireless terminal, it is contemplated that in certain representative embodiments, such a terminal may use a wired communication interface with the communication network (e.g., temporarily or permanently).

[0118] In an exemplary embodiment, the other network 112 may be a WLAN.

[0119] A WLAN in infrastructure basic service set (BSS) mode may have an access point (AP) for the BSS and one or more stations (STAs) associated with the AP. The AP may have access to or interface with a distribution system (DS) or another type of wired / wireless network that carries traffic to / from the BSS. Traffic to a STA originating outside the BSS may arrive through the AP and be delivered to the STA. Traffic originating from a STA to a destination outside the BSS may be sent to the AP for delivery to the respective destination. For example, traffic between STAs within a BSS may be sent through the AP, where a source STA may send traffic to the AP, and the AP may deliver the traffic to the destination STA. Traffic between STAs within a BSS may be considered and / or referred to as peer-to-peer traffic. Peer-to-peer traffic may be sent between (e.g., directly between) a source and a destination STA with a direct link setup (DLS). In certain exemplary embodiments, the DLS may use 802.11e DLS or 802.11z tunneled DLS (TDLS). A WLAN using an Independent BSS (IBSS) mode may not have an AP, and STAs within an IBSS (e.g., all STAs) or using an IBSS may communicate directly with each other. The IBSS communication mode is sometimes referred to herein as an "ad hoc" mode of communication.

[0120] When using the 802.11ac infrastructure mode of operation or a similar mode of operation, the AP may transmit beacons on a fixed channel, such as a primary channel. The primary channel may be a fixed width (e.g., a wide bandwidth of 20 MHz) or a width that is dynamically set via signaling. The primary channel may be the operating channel of the BSS and may be used by STAs to establish a connection with the AP. In certain exemplary embodiments, Carrier Sense Multiple Access with Collision Avoidance (CSMA / CA) may be implemented, for example, in an 802.11 system. With CSMA / CA, STAs (e.g., every STA), including the AP, may sense the primary channel. If the primary channel is sensed / detected and / or determined to be in use by a particular STA, the particular STA may back off. One STA (e.g., only one station) may transmit in a given BSS at any given time.

[0121] A high-throughput (HT) STA may use a 40 MHz wideband channel for communication, for example, via a combination of a 20 MHz primary channel and adjacent or non-adjacent 20 MHz channels to form a 40 MHz wideband channel.

[0122] A very high throughput (VHT) STA may support 20 MHz, 40 MHz, 80 MHz, and / or 160 MHz wideband channels. A 40 MHz channel and / or an 80 MHz channel may be formed by combining contiguous 20 MHz channels. A 160 MHz channel may be formed by combining eight contiguous 20 MHz channels or two non-contiguous 80 MHz channels, which may be referred to as an 80+80 configuration. In the 80+80 configuration, after channel coding, the data may be passed through a segment parser that may separate the data into two streams. Inverse fast Fourier transform (IFFT) processing and time-domain processing may be performed separately for each stream. The streams may be mapped onto two 80 MHz channels, and the data may be transmitted by the source STA. At the receiver of the receiving STA, the operations described above for the 80+80 configuration may be reversed, and the combined data may be sent to the media access control (MAC).

[0123] Sub-1 GHz operating modes are supported by 802.11af and 802.11ah. Channel operating bandwidths and carriers are reduced in 802.11af and 802.11ah compared to those used in 802.11n and 802.11ac. 802.11af supports 5 MHz, 10 MHz, and 20 MHz bandwidths in the television white space (TVWS) spectrum, while 802.11ah supports 1 MHz, 2 MHz, 4 MHz, 8 MHz, and 16 MHz bandwidths using non-TVWS spectrum. According to a representative embodiment, 802.11ah may support meter-type control / machine-type communications, such as MTC devices within macro coverage areas. MTC devices may have limited capabilities, including, for example, support for certain bandwidths and / or limited bandwidths (e.g., only support for these). MTC devices may include batteries with above-threshold battery life (e.g., to maintain very long battery life).

[0124] WLAN systems that may support multiple channels and channel bandwidths, such as 802.11n, 802.11ac, 802.11af, and 802.11ah, include a channel that may be designated as a primary channel. The primary channel may have a bandwidth equal to the most common operating bandwidth supported by all STAs in the BSS. The bandwidth of the primary channel may be set and / or limited by the STA that supports the smallest bandwidth operating mode among all STAs operating in the BSS. In the example of 802.11ah, the primary channel may be 1 MHz wide for a STA (e.g., an MTC-type device) that supports 1 MHz mode (e.g., only supports 1 MHz mode), even if the AP and other STAs in the BSS support 2 MHz, 4 MHz, 8 MHz, 16 MHz, and / or other channel bandwidth operating modes. Carrier sensing and / or network allocation vector (NAV) setting may depend on the condition of the primary channel. For example, if the primary channel is in use due to a STA (that only supports a 1 MHz mode of operation) transmitting to the AP, the entire available frequency band may be considered in use, even though most of the frequency band may remain idle and available for use.

[0125] In the United States, the available frequency band that can be used by 802.11ah is 902 MHz to 928 MHz. In South Korea, the available frequency band is 917.5 MHz to 923.5 MHz. In Japan, the available frequency band is 916.5 MHz to 927.5 MHz. The total available bandwidth for 802.11ah is 6 MHz to 26 MHz, depending on the country code.

[0126] 17D is a system diagram illustrating an example of the RAN 113 and the CN 115 according to one embodiment. As mentioned above, the RAN 113 may employ NR radio technology to communicate with the WTRUs 102a, 102b, 102c over the air interface 116. The RAN 113 may also communicate with the CN 115.

[0127] The RAN 113 may include gNBs 180a, 180b, and 180c, although it will be appreciated that the RAN 113 may include any number of gNBs while remaining consistent with an embodiment. The gNBs 180a, 180b, and 180c may each include one or more transceivers for communicating with the WTRUs 102a, 102b, and 102c over the air interface 116. In one embodiment, the gNBs 180a, 180b, and 180c may implement MIMO technology. For example, the gNB 180a, 180b may utilize beamforming to transmit signals to and / or receive signals from the gNBs 180a, 180b, and 180c. Thus, the gNB 180a may use multiple antennas, for example, to transmit wireless signals to and / or receive wireless signals from the WTRU 102a. In one embodiment, the gNBs 180a, 180b, and 180c may implement carrier aggregation technology. For example, the gNB 180a may transmit multiple component carriers to the WTRU 102a (not shown). A subset of these component carriers may be on an unlicensed spectrum, while the remaining component carriers may be on a licensed spectrum. In one embodiment, the gNBs 180a, 180b, and 180c may implement coordinated multipoint (CoMP) technology. For example, the WTRU 102a may receive coordinated transmissions from the gNBs 180a and 180b (and / or 180c).

[0128] The WTRUs 102a, 102b, 102c may communicate with the gNBs 180a, 180b, 180c using transmissions associated with scalable numerologies. For example, the OFDM symbol spacing and / or OFDM subcarrier spacing may vary for different transmissions, different cells, and / or different portions of the wireless transmission spectrum. The WTRUs 102a, 102b, 102c may communicate with the gNBs 180a, 180b, 180c using subframes or transmission time intervals (TTIs) of different or scalable lengths (e.g., including different numbers of OFDM symbols and / or lasting different lengths of absolute time).

[0129] The gNBs 180a, 180b, 180c may be configured to communicate with the WTRUs 102a, 102b, 102c in a standalone configuration and / or a non-standalone configuration. In a standalone configuration, the WTRUs 102a, 102b, 102c may communicate with the gNBs 180a, 180b, 180c without accessing another RAN (e.g., eNodeBs 160a, 160b, 160c, etc.). In a standalone configuration, the WTRUs 102a, 102b, 102c may utilize one or more of the gNBs 180a, 180b, 180c as mobility anchor points. In a standalone configuration, the WTRUs 102a, 102b, 102c may communicate with the gNBs 180a, 180b, 180c using signals in unlicensed bands. In a non-standalone configuration, the WTRUs 102a, 102b, 102c may communicate and / or connect with a gNB 180a, 180b, 180c while also communicating and / or connecting with another RAN, e.g., eNodeBs 160a, 160b, 160c, etc. For example, the WTRUs 102a, 102b, 102c may implement DC principles to communicate with one or more gNBs 180a, 180b, 180c and one or more eNodeBs 160a, 160b, 160c substantially simultaneously. In a non-standalone configuration, the eNodeBs 160a, 160b, 160c may act as mobility anchors for the WTRUs 102a, 102b, 102c, and the gNBs 180a, 180b, 180c may provide additional coverage and / or throughput for serving the WTRUs 102a, 102b, 102c.

[0130] Each of the gNBs 180a, 180b, 180c may be associated with a particular cell (not shown) and may be configured to handle radio resource management decisions, handover decisions, scheduling of users in the UL and / or DL, support for network slicing, dual connectivity, interworking between NR and E-UTRA, routing of user plane data to User Plane Functions (UPFs) 184a, 184b, routing of control plane information to Access and Mobility Management Functions (AMFs) 182a, 182b, etc. As shown in FIG. 17D, the gNBs 180a, 180b, 180c may communicate with each other over the Xn interface.

[0131] 17D may include at least one AMF 182a, 182b, at least one UPF 184a, 184b, at least one Session Management Function (SMF) 183a, 183b, and possibly a Data Network (DN) 185a, 185b. While each of the foregoing elements is illustrated as part of the CN 115, it will be appreciated that any of these elements may be owned and / or operated by an entity other than the CN operator.

[0132] The AMF 182a, 182b may be connected to one or more of the gNBs 180a, 180b, 180c in the RAN 113 via an N2 interface and may act as a control node. For example, the AMF 182a, 182b may be responsible for authenticating users of the WTRUs 102a, 102b, 102c, support for network slicing (e.g., handling different PDU sessions with different requirements), selecting a particular SMF 183a, 183b, managing registration areas, terminating NAS signaling, mobility management, etc. Network slicing may be used by the AMF 182a, 182b to customize CN support for the WTRUs 102a, 102b, 102c based on the type of service being utilized for the WTRUs 102a, 102b, 102c. For example, different network slices may be established for different use cases, such as services relying on ultra-reliable low latency (URLLC) access, services relying on enhanced massive mobile broadband (eMBB) access, services for machine-type communications (MTC) access, etc. The AMF 162 may provide a control plane function for switching between the RAN 113 and other RANs (not shown) that employ other radio technologies such as LTE, LTE-A, LTE-A Pro, etc., and / or non-3GPP access technologies such as WiFi, etc.

[0133] The SMFs 183a, 183b may be connected to the AMFs 182a, 182b in the CN 115 via an N11 interface. The SMFs 183a, 183b may also be connected to the UPFs 184a, 184b in the CN 115 via an N4 interface. The SMFs 183a, 183b may select and control the UPFs 184a, 184b and configure the routing of traffic through the UPFs 184a, 184b. The SMFs 183a, 183b may perform other functions, such as managing and assigning UE IP addresses, managing PDU sessions, controlling policy enforcement and QoS, providing downlink data notification, etc. The PDU session type may be IP-based, non-IP-based, Ethernet-based, etc.

[0134] The UPFs 184a, 184b may be connected to one or more of the gNBs 180a, 180b, 180c in the RAN 113 via an N3 interface, which may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices. The UPFs 184, 184b may perform other functions, such as routing and forwarding packets, enforcing user plane policies, supporting multi-homed PDU sessions, handling user plane QoS, buffering downlink packets, providing mobility anchoring, etc.

[0135] The CN 115 may facilitate communication with other networks. For example, the CN 115 may include or communicate with an IP gateway (e.g., an IP Multimedia Subsystem (IMS) server) that serves as an interface between the CN 115 and the PSTN 108. The CN 115 may also provide the WTRUs 102a, 102b, 102c with access to other networks 112, which may include other wired and / or wireless networks owned and / or operated by other service providers. In one embodiment, the WTRUs 102a, 102b, 102c may be connected to local data networks (DNs) 185a, 185b through the UPFs 184a, 184b via an N3 interface to the UPFs 184a, 184b and an N6 interface between the UPFs 184a, 184b and the DNs 185a, 185b.

[0136] 17A-17D and the corresponding description thereof, one or more, or all, of the functions described herein with respect to one or more of the WTRUs 102a-d, base stations 114a-b, eNodeBs 160a-c, MME 162, SGW 164, PGW 166, gNBs 180a-c, AMFs 182a-b, UPFs 184a-b, SMFs 183a-b, DNs 185a-b, and / or any other devices described herein may be performed by one or more emulation devices (not shown). The emulation devices may be one or more devices configured to emulate one or more, or all, of the functions described herein. For example, the emulation devices may be used to test other devices and / or to simulate network and / or WTRU functionality.

[0137] The emulation device may be designed to implement one or more tests of other devices in a laboratory environment and / or an operator network environment. For example, one or more emulation devices may perform one or more, or all, functions while fully or partially implemented and / or deployed as part of a wired and / or wireless communication network to test other devices in the communication network. One or more emulation devices may perform one or more, or all, functions while temporarily implemented / deployed as part of a wired and / or wireless communication network. The emulation device may be directly coupled to another device for testing purposes and / or may perform testing using over-the-air wireless communication.

[0138] The one or more emulation devices may perform one or more functions, inclusive, without being implemented / deployed as part of a wired and / or wireless communication network. For example, the emulation devices may be utilized in test scenarios in a test lab and / or in an undeployed (e.g., test) wired and / or wireless communication network to implement testing of one or more components. The one or more emulation devices may be test equipment. RF circuitry (which may include, e.g., one or more antennas) via direct RF coupling and / or wireless communication may be used by the emulation devices to transmit and / or receive data.

[0139] Systems, methods, and means have been disclosed for multi-type tree (MTT) coding. Tree type signaling may be provided for MTT. Context coding may be based on the partitioning type (e.g., binary tree (BT) or triple tree (TT)) of neighboring coding units (CUs). A maximum tree depth restriction may be applied, for example, to TT partitioning. Signaling redundancy may be removed in MTT. Deblocking in MTT may support quad-tree (QT) boundaries, BT boundaries, and TT boundaries. High-speed MTT coding is performed.

[0140] Although features and elements are described above in particular combinations, those skilled in the art will recognize that each feature or element can be used alone or in any combination with the other features and elements. Also, the methods described herein may be implemented in a computer program, software, or firmware embodied in a computer-readable medium for execution by a computer or processor. Examples of computer-readable media include electrical signals (transmitted over wired or wireless connections) and computer-readable storage media. Examples of computer-readable storage media include, but are not limited to, read-only memory (ROM), random-access memory (RAM), registers, cache memory, semiconductor memory devices, magnetic media such as internal hard disks and removable disks, magneto-optical media, and optical media such as CD-ROM disks and digital versatile disks (DVDs). Software and associated processors may be used to implement radio frequency transceivers for use in a WTRU, UE, terminal, base station, RNC, or any host computer.

Claims

1. 1. A device for video encoding, comprising: performing a rate-distortion (RD) check based on a horizontal binary tree (BT) partitioning associated with the video block; determining a partitioning scheme associated with the video block based on the RD check; setting a value of a RD check in position for horizontal triple tree (TT) partitioning based on the determined partitioning scheme; encoding the video block based on the value of the RD check indices for the horizontal TT partitioning; 1. A device comprising a processor configured to:

2. The device of claim 1, wherein the value of the RD check-in indication for the horizontal TT partitioning is set based on the partitioning scheme other than the horizontal BT partitioning, and the value of the RD check-in indication for the horizontal TT partitioning is set to indicate that an RD check for the horizontal TT partitioning is skipped.

3. The processor: obtaining a partitioning depth threshold, the partitioning depth threshold indicating a maximum TT partitioning depth for the video block; determining a partitioning depth associated with the video block, and wherein the value of the RD check indication for the horizontal TT partitioning is set further based on determining that the partitioning depth associated with the video block is greater than the partitioning depth threshold. The device of claim 1 further configured to:

4. The device of claim 1 , wherein the partitioning scheme is different from horizontal BT partitioning, and the video blocks are encoded using the partitioning scheme that is different from the horizontal BT partitioning.

5. the video block is a first video block, and the processor: determining that horizontal BT partitioning is selected as the partitioning scheme for the second video block; setting a value of a RD check-in indication for a horizontal TT partitioning associated with the second video block to a value higher than the value of the RD check-in indication for the horizontal TT partitioning associated with the first video block; The device of claim 1 further configured to:

6. The processor: determining that vertical BT partitioning is not the partitioning scheme for the video block; setting a value of a RD check in indication for a vertical TT partitioning associated with the video block based on determining that the vertical BT partitioning is not the partitioning scheme for the video block. The device of claim 1 further configured to:

7. 1. A device for video decoding, comprising: determining that horizontal binary tree (BT) partitioning is not the selected partitioning scheme for the video block; determining a horizontal triple tree (TT) partitionability value associated with the video block based on determining that the horizontal BT partitioning is not the selected partitioning scheme for the video block; decoding the video block based on the value of the horizontal TT partitionability; 1. A device comprising a processor configured to:

8. The processor: Obtain the partitioning depth threshold; determining a partitioning depth associated with the video block, wherein the value of the horizontal TT partitionability is determined further based on determining that the partitioning depth associated with the video block is greater than the partitioning depth threshold.

8. The device of claim 7.

9. The device of claim 7 , wherein the partitioning scheme is different from horizontal BT partitioning, and the video blocks are decoded using the partitioning scheme that is different from the horizontal BT partitioning.

10. 1. A method for video encoding, comprising: performing a rate-distortion (RD) check based on a horizontal binary tree (BT) partitioning associated with the video block; determining a partitioning scheme associated with the video block based on the RD check; and setting a value of RD check in position for horizontal triple tree (TT) partitioning based on the determined partitioning scheme; encoding the video block based on the value of the RD check indices for the horizontal TT partitioning; A method comprising:

11. The method of claim 10, wherein the value of the RD check-in indication for the horizontal TT partitioning is set based on the partitioning scheme other than the horizontal BT partitioning, and the value of the RD check-in indication for the horizontal TT partitioning is set to indicate that an RD check for the horizontal TT partitioning is skipped.

12. obtaining a partitioning depth threshold; determining a partitioning depth associated with the video block, wherein the value of the RD check indication for the horizontal TT partitioning is set further based on determining that the partitioning depth associated with the video block is greater than the partitioning depth threshold; The method of claim 11 further comprising:

13. 1. A method for video decoding, comprising: determining that horizontal binary tree (BT) partitioning is not the selected partitioning scheme for the video block; determining a horizontal triple tree (TT) partitionability value associated with the video block based on determining that the horizontal BT partitioning is not the selected partitioning scheme for the video block; and decoding the video block based on the value of the horizontal TT partitionability; A method comprising:

14. the video block is a first video block; determining that the horizontal BT partitioning is selected for a second video block; determining a horizontal TT partitionability value associated with the second video block that is higher than a horizontal TT partitionability value associated with the first video block; decoding the second video block based on determining that the value of the horizontal TT partitionability associated with the second video block is higher than the value of the horizontal TT partitionability associated with the first video block; 14. The method of claim 13, further comprising:

15. 14. The method of claim 13, further comprising: determining a vertical TT partitionability value associated with the video block based on determining that vertical BT partitioning is not determined as the partitioning scheme for the video block; and the video block is decoded based on the value of the vertical TT partitionability value.