Opened 12 years ago Closed 12 years ago #747 closed defect (fixed)Slice deblocking_filter_override_flag is not handled correctly
Description
The following code from 8.0-dev appears to override slice-level deblocking parameters without checking the value of the slice deblocking_filter_override_flag. if (pcSlice->getPPS()->getDeblockingFilterControlPresentFlag()) { if(pcSlice->getPPS()->getDeblockingFilterOverrideEnabledFlag()) { pcSlice->setDeblockingFilterDisable(pcSlice->getPPS()->getPicDisableDeblockingFilterFlag()); if (!pcSlice->getDeblockingFilterDisable()) { pcSlice->setDeblockingFilterBetaOffsetDiv2(pcSlice->getPPS()->getDeblockingFilterBetaOffsetDiv2()); pcSlice->setDeblockingFilterTcOffsetDiv2(pcSlice->getPPS()->getDeblockingFilterTcOffsetDiv2()); } } }
In addition, I believe these slice level parameters are already inherited from the PPS (when deblocking_filter_override_flag=0) during syntax parsing in TDecCavlc::parseSliceHeader( ). In which case, the above code could be deleted.
A proposed patch is attached. Attachments (1)Change History (3)comment:1 Changed 12 years ago by DefaultCC Plugin
Changed 12 years ago by bhengcomment:2 Changed 12 years ago by ksuehring
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
|
The code indeed duplicates setting slice parameters to PPS values which is done in slice header parsing. It might be arguable if SH parsing is the right place for that, but I'll keep it there for now.
Fixed in r2755