diff --git a/source/Lib/CommonLib/UnitPartitioner.cpp b/source/Lib/CommonLib/UnitPartitioner.cpp index 880c2f3a010987f09d394b458ddf3f792db03316..7f989dfb24f59decd65764d8c19aedea3e05f664 100644 --- a/source/Lib/CommonLib/UnitPartitioner.cpp +++ b/source/Lib/CommonLib/UnitPartitioner.cpp @@ -431,7 +431,7 @@ void QTBTPartitioner::canSplit( const CodingStructure &cs, bool& canNo, bool& ca maxMtt = maxBTD; - if ((!cs.slice->isIntra() && pColPic != NULL && pColPic->cs->slice != NULL) + if ((!cs.slice->isIntra() && pColPic != NULL && !pColPic->isRefScaled(cs.pps) && pColPic->cs->slice != NULL) #if JVET_AI0136_ADAPTIVE_DUAL_TREE && (cs.area.blocks[chType].contains(currArea().blocks[chType].pos().offset((currArea().blocks[chType].size().width) >> 1, ((currArea().blocks[chType].size().height) >> 1))) diff --git a/source/Lib/DecoderLib/CABACReader.cpp b/source/Lib/DecoderLib/CABACReader.cpp index aeb59f3014335d76c6c2ae71fd309b9ab4588557..02de8efb93554fff543a891b843909d14ed457fe 100644 --- a/source/Lib/DecoderLib/CABACReader.cpp +++ b/source/Lib/DecoderLib/CABACReader.cpp @@ -1279,7 +1279,7 @@ PartSplit CABACReader::split_cu_mode( CodingStructure& cs, Partitioner &partitio Picture *pColPic = cs.slice->getRefPic(RefPicList(cs.slice->isInterB() ? 1 - cs.slice->getColFromL0Flag() : 0), cs.slice->getColRefIdx()); - if (!cs.slice->isIntra() && pColPic != NULL && pColPic->cs->slice != NULL + if (!cs.slice->isIntra() && pColPic != NULL && !pColPic->isRefScaled(cs.pps) && pColPic->cs->slice != NULL && (pColPic->cs->area.Y().contains(partitioner.currArea().blocks[partitioner.chType].pos().offset( (partitioner.currArea().blocks[partitioner.chType].lumaSize().width) >> 1, ((partitioner.currArea().blocks[partitioner.chType].lumaSize().height) >> 1))))) diff --git a/source/Lib/EncoderLib/CABACWriter.cpp b/source/Lib/EncoderLib/CABACWriter.cpp index eb2141217d494edc0773e5b26fe0e45ac1b8531d..8ac8765e7894f75c25dd8556d3ec103178311197 100644 --- a/source/Lib/EncoderLib/CABACWriter.cpp +++ b/source/Lib/EncoderLib/CABACWriter.cpp @@ -1059,7 +1059,7 @@ void CABACWriter::split_cu_mode( const PartSplit split, const CodingStructure& c Picture* pColPic = cs.slice->getRefPic(RefPicList(cs.slice->isInterB() ? 1 - cs.slice->getColFromL0Flag() : 0), cs.slice->getColRefIdx()); - if (!cs.slice->isIntra() && pColPic != NULL && pColPic->cs->slice != NULL + if (!cs.slice->isIntra() && pColPic != NULL && !pColPic->isRefScaled(cs.pps) && pColPic->cs->slice != NULL && (pColPic->cs->area.Y().contains(partitioner.currArea().blocks[partitioner.chType].pos().offset((partitioner.currArea().blocks[partitioner.chType].lumaSize().width) >> 1, ((partitioner.currArea().blocks[partitioner.chType].lumaSize().height) >> 1))))) {