Custom query (1557 matches)
Results (7 - 9 of 1557)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#42 | fixed | CTU bits/distortion calculation mistake for I slice when QTBT is enabled | FangliangSong | |
Description |
Because of separated luma CTB and chroma CTB for I Slice, TEncCu::xCompressCU is invoked twice in TEncCu::compressCtu, the first time for the luma CTB encoding and the second time for the chroma CTB encoding. On the second invocation, four bits/distortion related values of CTU in pCtu (function parameter of TEncCu::compressCtu): m_dTotalCost, m_uiTotalDistortion, m_uiTotalBits, and m_uiNumPartition, are overwritten. It leads to the four values of a CTU are that of chroma CTB in the CTU, and that of luma CTB in the CTU are excluded since JEM-3.0. The mistake has two influences:
The original code of encoding chroma CTB is as below: #if JVET_C0024_QTBT if (pCtu->getSlice()->isIntra()) {
} #endif A simple solution to this bug is as below: #if JVET_C0024_QTBT if (pCtu->getSlice()->isIntra()) {
} #endif The bug still exit in latest software version (JEM-4.1), and has no impact under CTC. |
|||
#45 | fixed | Console output error of nQP when LCU level rate control is enabled | FangliangSong | |
Description |
When encoding, nQP and QP is outputed in the console. nQP means the nearest QP to the step size (JCTVC-G382), and have different value with QP only when the option AdaptiveQpSelection(-aqps) is enabled. However, when LCU level rate control is enabled, nQP is different from QP for every frame, including I frames. For current HM software, when LCU level rate control is enabled, the output value of nQP is the QP of last LCU in current frame. The QP of last LCU in current frame should not be assigned to TComSlice::m_iSliceQpBase. The following code in the function body of TEncSlice::compressSlice should be removed: #if ADAPTIVE_QP_SELECTION pCtu->getSlice()->setSliceQpBase( estQP ); #endif After removing these code, all of output information in console remain the same except nQP value in RA and LD cases. |
|||
#1603 | fixed | The array mvFieldNeighbours of the class MergeCtx has overflowed. | Haruhiko | |
Description |
In the function MergeItem::importMergeInfo, the variable mergeIdx becomes larger than MRG_MAX_NUM_CANDS and overflows the array mergeCtx.mvFieldNeighbours. This seems to occur when the function importMergeInfo is called from EncCu::addMmvdCandsToPruningList, so the value of mmvdIdx.val in the argument of mmvdMerge->importMergeInfo appears to be incorrect. |