Opened 6 weeks ago

Last modified 4 weeks ago

#510 new defect

wrong usage of bottom_right_brick_idx_delta[ i ] for deriving BottomRightBrickIdx[ i ] in slice signalling

Reported by: jeromnhsu Owned by:
Priority: minor Milestone:
Component: spec Version: VVC D6 vE
Keywords: Cc: ksuehring, bbross, XiangLi, fbossen, jvet@…

Description

In spec, the semantic of brick_idx_delta_sign_flag[ i ] indicates a sign for bottom_right_brick_idx_delta[ i ], however, in the derivation of BottomRightBrickIdx[ i ], brick_idx_delta_sign_flag[ i ] is not used like that.
In (7-43), should
BottomRightBrickIdx[ i ] = bottom_right_brick_idx_delta[ i ] ] +( ( i = = 0 ) ? 0 :

( brick_idx_delta_sign_flag[ i ] ? BottomRightBrickIdx[ i − 1 ] : −BottomRightBrickIdx[ i−1 ] )

be
BottomRightBrickIdx[ i ] = ( i = = 0 ) ? bottom_right_brick_idx_delta[ i ] :
BottomRightBrickIdx[ i−1 ] + ( brick_idx_delta_sign_flag[ i ] ? bottom_right_brick_idx_delta[ i ] : −bottom_right_brick_idx_delta[ i ])
Moreover, according to the semantics of bottom_right_brick_idx_delta[ i ], bottom_right_brick_idx_delta[ 0 ] is not needed and bottom_right_brick_idx_delta[ i ] is needed to be signalled if i > 0

Change history (3)

comment:1 Changed 6 weeks ago by sachind

As per VVC WD:
bottom_right_brick_idx_delta[ 0 ] specifies the brick index of the bottom right corner of the 0-th slice.
It is needed to be signalled as in VVC WD.
I believe the equations in VVC WD are correct.
Semantics of the sign_bottom_right_brick_idx_delta[i] could be clarified as:
brick_idx_delta_sign_flag[ i ] is used for the computation of BottomRightBrickIdx[i] as specified in (7-43) below.

comment:2 Changed 6 weeks ago by jeromnhsu

sorry, there is some typo.
it should be
brick_idx_delta_sign_flag[ 0 ] is not needed and brick_idx_delta_sign_flag[ i ] is needed to be signalled only if i > 0.
the (7-43) is still confusing to me, could someone verify it?

comment:3 Changed 4 weeks ago by forayr

There is also an issue in the inference rule of bottom_right_brick_idx_delta when single_brick_per_slice_flag is equal to 1. In this case bottom_right_brick_idx_delta[0] shall be inferred to 0 instead of 1.

Note: See TracTickets for help on using tickets.