Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#1011 closed defect (invalid)

byte_alignment() was not implemented after decoding of end_of_sub_stream_one_hot

Reported by: PhuongNguyen Owned by:
Priority: major Milestone:
Component: HM Version: HM-9.2
Keywords: Cc: fbossen, ksuehring, davidf, jct-vc@…

Description

The spec (L10003) requires that byte_alignment() is called once end_of_sub_stream_one_bit is decoded. byte_alignment() reads the next bit and it must be 1. Then, it reads the following bits until byte-alignment and they must be zero.

It seems that byte_alignment() was not implemented (or was not implemented correctly) in the reference software. If my understanding is correct, these calls are written in

Void TDecSbac::updateContextTables( SliceType eSliceType, Int iQp )
{

m_pcTDecBinIf->decodeBinTrm(uiBit);
m_pcTDecBinIf->finish();
m_pcBitstream->readOutTrailingBits();

....

m_pcTDecBinIf->decodeBinTrm(uiBit) is used to decode end_of_sub_stream_one_bit

m_pcTDecBinIf->finish() is void

m_pcBitstream->readOutTrailingBits() reads only bits until byte-alignment, which is not exactly byte_alignment() does.

The same thing should be done for the encoder.

Change History (3)

comment:1 Changed 8 years ago by DefaultCC Plugin

  • Cc fbossen ksuehring davidf jct-vc@… added

comment:2 Changed 8 years ago by fbossen

  • Resolution set to invalid
  • Status changed from new to closed

Please refer to #980 which describes a fix to the text

comment:3 Changed 8 years ago by PhuongNguyen

After reading the ticket #980, I think that my tiket is still valid : the reference software has not implement alignment_bit_equal_to_one in the function byte_alignment() yet.

The text requires that once end_of_sub_stream_one_bit is decoded, we need to read the next bit which is alignment_bit_equal_to_one and must be one. The reading of this next bit was not implemented in the software because I did not see it in m_pcTDecBinIf->decodeBinTrm(uiBit), m_pcTDecBinIf->finish(), m_pcBitstream->readOutTrailingBits().

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

  • David Flynn(Subscriber)
  • Frank Bossen(Subscriber, Participant)
  • jct-vc@…(Subscriber)
  • karl.sharman@…(Always)
  • Karsten Suehring(Subscriber, Always)