Opened 10 years ago Closed 10 years ago #1351 closed defect (fixed)error in parsing terminating bit that ends slice_segment_data
Description
A recent change in TDecSlice.cpp introduced an error in the parsing of the terminating bit at the end of slice_segment_data. // Should the sub-stream/stream be terminated after this CTU? // (end of slice-segment, end of tile, end of wavefront-CTU-row) if (isLastCtuOfSliceSegment || ( ctuXPosInCtus + 1 == tileXPosInCtus + currentTile.getTileWidthInCtus() && ( ctuYPosInCtus + 1 == tileYPosInCtus + currentTile.getTileHeightInCtus() || wavefrontsEnabled) ) )
Should be changed to: // Should the sub-stream/stream be terminated after this CTU? // (end of slice-segment, end of tile, end of wavefront-CTU-row) if (!isLastCtuOfSliceSegment && ( ctuXPosInCtus + 1 == tileXPosInCtus + currentTile.getTileWidthInCtus() && ( ctuYPosInCtus + 1 == tileYPosInCtus + currentTile.getTileHeightInCtus() || wavefrontsEnabled) ) )
Please refer to syntax table 7.3.8.1 of the specification. Change History (2)comment:1 Changed 10 years ago by DefaultCC Plugin
comment:2 Changed 10 years ago by karlsharman
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
|
This would have had no actual effect on decoding since parseTerminatingBit
can be called multiple times for the last terminating-1 bit, and still get
the same result:
However, fixed for clarity.
Fixed in r4237.