Custom Query (1442 matches)
Results (16 - 18 of 1442)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#1470 | fixed | Difference between spec and HM in Equation (8-9) | Haruhiko | |
Description |
Equation(8-9) in spec: for(rIdx = 0; rIdx <= num_ref_idx_l0_active_minus1; rIdx++) RefPicList0[rIdx] = ref_pic_list_modification_flag_l0 ? RefPicListTemp0[list_entry_l0[rIdx]] : RefPicListTemp0[rIdx] if(pps_curr_pic_ref_enabled_flag && !ref_pic_list_modification_flag_l0 && NumRpsCurrTempList0 > (num_ref_idx_l0_active_minus1 + 1)) RefPicList0[num_ref_idx_l0_active_minus1] = currPic But function TComSlice::setRefPOCListSliceHeader() in HM16.15_SCM8.4: for (Int rIdx = 0; rIdx < m_aiNumRefIdx[REF_PIC_LIST_0]; rIdx ++) { cIdx = m_RefPicListModification.getRefPicListModificationFlagL0() ? m_RefPicListModification.getRefPicSetIdxL0(rIdx) : rIdx % numPicTotalCurr; assert(cIdx >= 0 && cIdx < numPicTotalCurr); m_aiRefPOCList[REF_PIC_LIST_0][rIdx] = rpsPOCCurrList0[cIdx]; } if ( m_eSliceType != B_SLICE ) { m_aiNumRefIdx[REF_PIC_LIST_1] = 0; } else { // Equation (8-11) for (Int rIdx = 0; rIdx < m_aiNumRefIdx[REF_PIC_LIST_1]; rIdx ++) { cIdx = m_RefPicListModification.getRefPicListModificationFlagL1() ? m_RefPicListModification.getRefPicSetIdxL1(rIdx) : rIdx % numPicTotalCurr; assert(cIdx >= 0 && cIdx < numPicTotalCurr); m_aiRefPOCList[REF_PIC_LIST_1][rIdx] = rpsPOCCurrList1[cIdx]; } } It is necessary to insert if clause. For example: if (getPPS()->getPpsScreenExtension().getUseIntraBlockCopy() && !m_RefPicListModification.getRefPicListModificationFlagL0() && numPicTotalCurr > m_aiNumRefIdx[REF_PIC_LIST_0]) { m_aiRefPOCList[REF_PIC_LIST_0][m_aiNumRefIdx[REF_PIC_LIST_0]-1] = getPOC(); } |
|||
#41 | fixed | Some minor HHI_MRG bugs in 0.6 - already fixed in 0.7 | Heiner Kirchhoffer | |
Description |
In TEncSearch.cpp between line 1493 and 1494, as well as between line 7039 and 7040, the following three lines need to be added: #if HHI_MRG
#endif This fixes the issue, that an incorrect bitrate is estimated for RD-decisions. In TEncEntropy.cpp between line 382 and 383, the following needs to be added: if ( pcCU->getSlice()->isIntra() ) {
} This avoids the encoding of unwanted merge flags. In TEncEntropy.cpp between line 900 and 901, the following needs to be added:
This corrects a wrong determination of merge candidates during the estimation process. All line numbers are valid for version 0.6. |
|||
#80 | worksforme | Decoder crash when using (modified) encoder_lowdelay.cfg | Heiner Kirchhoffer | |
Description |
When using encoder_lowdelay.cfg with parameter "GOPSize" set to 4 and parameter "RateGOPSize" set to 4, the decoder crashes at POC 5: Assertion failed: 0, file ..\..\source\Lib\TLibCommon\TComBitStream.cpp, line 153 The sequence-specific config file used was per-sequence/BlowingBubbles.cfg with parameter "FrameToBeEncoded" set to 10. |