Opened 13 years ago Closed 12 years ago #643 closed defect (wontfix)PUs are considered not available if in a different dependent slice (HM-7.2)
Description
In HM-7.2, the function TComDataCU::getPULeft returns NULL when the current slice is a dependent slice and the left PU is in another slice. This is a mismatch with the text clause 6.4. Specifically, this condition needs to be corrected: if ( (bEnforceSliceRestriction && (m_pcCULeft==NULL || m_pcCULeft->getSlice()==NULL || m_pcCULeft->getSCUAddr()+uiLPartUnitIdx < m_pcPic->getCU( getAddr() )->getSliceStartCU(uiCurrPartUnitIdx))) || (bEnforceDependentSliceRestriction && (m_pcCULeft==NULL || m_pcCULeft->getSlice()==NULL || m_pcCULeft->getSCUAddr()+uiLPartUnitIdx < m_pcPic->getCU( getAddr() )->getDependentSliceStartCU(uiCurrPartUnitIdx))) || (bEnforceTileRestriction && ( m_pcCULeft==NULL || m_pcCULeft->getSlice()==NULL || (m_pcPic->getPicSym()->getTileIdxMap( m_pcCULeft->getAddr() ) != m_pcPic->getPicSym()->getTileIdxMap(getAddr())) ) ) ) { return NULL; } Change History (4)comment:1 Changed 13 years ago by DefaultCC Plugin
comment:2 Changed 13 years ago by pieterkapsenbergcomment:3 Changed 12 years ago by davidf
comment:4 Changed 12 years ago by ksuehring
The dependent slice boundary check is only necessary when the dependent slice is also an entropy slice. After entropy slices have been removed from the spec, this is not functional anymore. I'll create another ticket as reminder for the cleanup. Note: See
TracTickets for help on using
tickets. | This list contains all users that will be notified about changes made to this ticket. These roles will be notified: Reporter, Owner, Subscriber, Participant
|
It appears that getDependentSliceStartCU() gets the address of the start of the current slice, dependent or not, rather than the address of the last non-dependent slice.