Opened 12 years ago Closed 12 years ago #645 closed defect (fixed)Bit count for slice header with RPS_COUNTER
Description
This is with respect to the HM-7.0-dev-AHG13 branch. The bits used by the RPS-related parameters int the slice header are counted using the m_bitsForSliceHeader and finally printed in TAppDecTop.cpp. Before printing, the actual number of bits is calculated by
int shbits = (m_cTDecTop.getPPS()->getBitsForSliceHeader()+2)/2; All slice headers except for the first intra picture are counted twice. The first intra costs 2 bits.
The comment refers to the issue with the decoder software that the slice header is parsed twice; but this is true only for the slice header of the first slice of the picture. The slice headers of the rest of the slices are parsed only once. This is described in the comment in TAppDecTop.cpp
When the final bit-count is divided by two (in the above equation), it implicitly assumes that there is only one slice per each picture or all slice headers are parsed twice. This would be erroneous for cases where there are more than one slice, which is often the case when the MTU-size matching mode is enabled in the common conditions described in I0608. A solution to this problem would be to check whether the current parse of the slice header is indeed the first parse (which happens only for the first slice), and only count the bits then. The attached patch (w.r.t. r2613) provides a possible solution. Attachments (1)Change History (3)comment:1 Changed 12 years ago by DefaultCC Plugin
Changed 12 years ago by adarshcomment:2 Changed 12 years ago by rickard
A fix for this ticket has been checked into HM-8.1-dev-ahg8, revision 2804 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 RPS_COUNTER_BUGFIX