Ticket #840: wavefront_slice_bug.patch

File wavefront_slice_bug.patch, 889 bytes (added by bheng, 11 years ago)
  • source/Lib/TLibEncoder/TEncSlice.cpp

     
    14411441      uiBoundingCUAddrSlice    = uiNumberOfCUsInFrame*rpcPic->getNumPartInCU();
    14421442      break;
    14431443    }
     1444    // set the slice end address to the end of the SCU row if the slice does not start at the beginning of an SCU row
     1445    if (pcSlice->getPPS()->getNumSubstreams() > 1 && (uiStartCUAddrSlice % (rpcPic->getFrameWidthInCU()*rpcPic->getNumPartInCU()) != 0))
     1446    {
     1447      uiBoundingCUAddrSlice = uiStartCUAddrSlice - (uiStartCUAddrSlice % (rpcPic->getFrameWidthInCU()*rpcPic->getNumPartInCU())) + (rpcPic->getFrameWidthInCU()*rpcPic->getNumPartInCU());
     1448    }
    14441449    pcSlice->setSliceCurEndCUAddr( uiBoundingCUAddrSlice );
    14451450  }
    14461451  else