Size restriction for intra-block copy virtual buffer
A method for video processing is described. The method comprises: making a decision, for a conversion between a current video block of a video picture of a video and a coded representation of the video, regarding a size of a reference region of the video picture from which reference samples are used for predicting the current video block, based on a size of a virtual pipeline data unit (VPDU), a size of a coding tree block (CTB), or a size of a coding tree unit (CTU); and performing the conversion based on the decision.
1. A method of processing video data, comprising:
determining, for a conversion between a current video block of a video picture of a video and a bitstream of the video, that a prediction mode is applied on the current video block;
maintaining, for the prediction mode, a virtual buffer comprising reference samples derived from the video picture;
deriving, in the prediction mode, prediction samples for the current video block based on a block vector pointed to available reference samples in the virtual buffer; and
performing the conversion based on the prediction samples,
wherein a size of the virtual buffer is determined based on a size of a coding tree block (CTB) comprising the current video block, wherein the size of the virtual buffer is a width of the virtual buffer or a height of the virtual buffer,
wherein the width of the virtual buffer is one or multiple times of a width of a virtual unit, and the width of the virtual unit is min(ctbSizeY, 64), where ctbSizeY denotes a size of a luma CTB comprising the current video block,
wherein the height of the virtual buffer is one or multiple times of a height of the virtual unit, and the height of the virtual unit is min(ctbSizeY, 64),
wherein an area of the virtual buffer is fixed and is equal to 256*128, the height of the virtual buffer is equal to ctbSizeY, and the width of the virtual buffer is 256*128/ctbSizeY, and
wherein locations of one or more unavailable samples in the virtual buffer for deriving the prediction samples are determined based on the width of the virtual unit and the height of the virtual unit.
2. The method of claim 1 , wherein the prediction mode is an intra block copy (IBC) mode and the virtual buffer is an IBC virtual buffer.
3. The method of claim 1 , wherein samples of a block in the virtual buffer corresponding to the virtual unit are set to −1 and are unavailable for deriving the prediction samples.
4. The method of claim 1 , wherein a bitstream conformance constraint satisfied by the bitstream comprises that a reference block determined by the block vector pointed to the reference samples in the virtual buffer do not have values equal to −1.
5. The method of claim 1 , wherein the virtual buffer is refreshed with value −1 at a beginning of each coding tree unit row.
6. The method of claim 1 , wherein the conversion includes encoding the current video block into the bitstream.
7. The method of claim 1 , wherein the conversion includes decoding the current video block from the bitstream.
8. The method of claim 1 , wherein when ctbSizeY is greater than 64, a maximum number of available samples in the virtual buffer is fixed.
9. The method of claim 1 , wherein a number of available samples mapped to the virtual buffer is restricted to be less than or equal to multiple times of a number of samples in the virtual unit.
10. The method of claim 1 , wherein locations of the one or more unavailable samples in the virtual buffer are determined based on a maximum between the width of the virtual unit and a width of the current video block, and a maximum between the height of the virtual unit and a height of the current video block.
11. An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:
determine, for a conversion between a current video block of a video picture of a video and a bitstream of the video, that a prediction mode is applied on the current video block;
maintain, for the prediction mode, a virtual buffer comprising reference samples derived from the video picture;
derive, in the prediction mode, prediction samples for the current video block based on a block vector pointed to available reference samples in the virtual buffer; and
perform the conversion based on the prediction samples,
wherein a size of the virtual buffer is determined based on a size of a coding tree block (CTB) comprising the current video block, wherein the size of the virtual buffer is a width of the virtual buffer or a height of the virtual buffer,
wherein the width of the virtual buffer is one or multiple times of a width of a virtual unit, and the width of the virtual unit is min(ctbSizeY, 64), where ctbSizeY denotes a size of a luma CTB comprising the current video block,
wherein the height of the virtual buffer is one or multiple times of a height of the virtual unit, and the height of the virtual unit is min(ctbSizeY, 64),
wherein an area of the virtual buffer is fixed and is equal to 256*128, the height of the virtual buffer is equal to ctbSizeY, and the width of the virtual buffer is 256*128/ctbSizeY, and
wherein locations of one or more unavailable samples in the virtual buffer for deriving the prediction samples are determined based on the width of the virtual unit and the height of the virtual unit.
12. The apparatus of claim 11 , wherein the prediction mode is an intra block copy (IBC) mode and the virtual buffer is an IBC virtual buffer.
13. A non-transitory computer-readable storage medium storing instructions that cause a processor to:
determine, for a conversion between a current video block of a video picture of a video and a bitstream of the video, that a prediction mode is applied on the current video block;
maintain, for the prediction mode, a virtual buffer comprising reference samples derived from a reference region of the video picture;
derive, in the prediction mode, prediction samples for the current video block based on a block vector pointed to available reference samples in the virtual buffer; and
perform the conversion based on the prediction samples,
wherein a size of the virtual buffer is determined based on a size of a coding tree block (CTB) comprising the current video block, wherein the size of the virtual buffer is a width of the virtual buffer or a height of the virtual buffer, wherein the width of the virtual buffer is one or multiple times of a width of a virtual unit, and the width of the virtual unit is min(ctbSizeY, 64), where ctbSizeY denotes a size of a luma CTB comprising the current video block,
wherein the height of the virtual buffer is one or multiple times of a height of the virtual unit, and the height of the virtual unit is min(ctbSizeY, 64),
wherein an area of the virtual buffer is fixed and is equal to 256*128, the height of the virtual buffer is equal to ctbSizeY, and the width of the virtual buffer is 256*128/ctbSizeY, and
wherein locations of one or more unavailable samples in the virtual buffer for deriving the prediction samples are determined based on the width of the virtual unit and the height of the virtual unit.
14. The non-transitory computer-readable storage medium of claim 13 , wherein the prediction mode is an intra block copy (IBC) mode and the virtual buffer is an IBC virtual buffer.
15. The non-transitory computer-readable storage medium of claim 13 , wherein samples of a block in the virtual buffer corresponding to the virtual unit are set to −1 and are unavailable for deriving the prediction samples.
16. A non-transitory computer-readable recording medium storing a bitstream of a video which is generated by a method performed by a video processing apparatus, wherein the method comprises:
determining, that a prediction mode is applied on a current video block of a video picture of a video;
maintaining, for the prediction mode, a virtual buffer comprising reference samples derived from the video picture;
deriving, in the prediction mode, prediction samples for the current video block based on a block vector pointed to availablereference samples in the virtual buffer; and
generating the bitstream based on the prediction samples,
wherein a size of the virtual buffer is determined based on a size of a coding tree block (CTB) comprising the current video block, wherein the size of the virtual buffer is a width of the virtual buffer or a height of the virtual buffer,
wherein the width of the virtual buffer is one or multiple times of a width of a virtual unit, and the width of the virtual unit is min(ctbSizeY, 64), where ctbSizeY denotes a size of a luma CTB comprising the current video block,
wherein the height of the virtual buffer is one or multiple times of a height of the virtual unit, and the height of the virtual unit is min(ctbSizeY, 64),
wherein an area of the virtual buffer is fixed and is equal to 256*128, the height of the virtual buffer is equal to ctbSizeY, and the width of the virtual buffer is 256*128/ctbSizeY, and
wherein locations of one or more unavailable samples in the virtual buffer for deriving the prediction samples are determined based on the width of the virtual unit and the height of the virtual unit.
17. The non-transitory computer-readable recording medium of claim 16 , wherein the prediction mode is an intra block copy (IBC) mode and the virtual buffer is an IBC virtual buffer, and wherein samples of a block in the virtual buffer corresponding to the virtual unit are set to −1 and are unavailable for deriving the prediction samples.