Opened 13 years ago Closed 13 years ago #286 closed defect (fixed)SliceMode 2 does not work
Description
SliceMode=2 was broken in November last year, in HM-4.1. A ticket (#225) was created which contains a patch that solved the problem in HM-4.1. During the HM 5 work, both SliceMode=1 and SliceMode=2 got broken. The SliceMode=1 problems were fixed in HM-5.0-dev-bugfix but SliceMode=2 currently (HM-5.0-dev-misc rev 1761) does not work. The attached patch fixes the problem for FAST_BIT_EST=0 by adding 3 lines of code. However, the patch does not fix the SliceMode=2 bug when FAST_BIT_EST is set to 1 which is the HM-5 default. The patch is the same as the patch in #225 except that the changes are surrounded by "#if !FAST_BIT_EST".
Note that this ticket makes ticket #225 obsolete. Attachments (2)Change History (7)comment:1 Changed 13 years ago by DefaultCC Plugin
Changed 13 years ago by rickardcomment:2 Changed 13 years ago by ksuehring
Ticket #225 has been marked as a duplicate of this ticket. Changed 13 years ago by fbossencomment:3 Changed 13 years ago by fbossen
The issue is that when using CABAC one should not rely on TComBitIf::getNumberOfWrittenBits() to determine a number of bits unless the arithmetic code has been "finished" (i.e., TEncBinIf::finish() has been called). Instead TEncEntropyIf::getNumberOfWrittenBits() should be used as it will correctly take into account any number of "pending" bits (e.g., as defined by m_numBufferedBytes and m_bitsLeft in TEncBinCABAC). comment:4 Changed 13 years ago by fbossen
Fixed in r1767 comment:5 Changed 13 years ago by davidf
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
|
Patch for SliceMode=2 when FAST_BIT_EST=0