Commit bdcec62c authored by Guillaume Laroche's avatar Guillaume Laroche
Browse files

JVET-R0200 Move the SH flags slice_lmcs_enabled_flag and...

JVET-R0200 Move the SH flags slice_lmcs_enabled_flag and slice_explicit_scaling_list_used_flag to be just after the ALF parameters
parent 3ec165d4
......@@ -52,6 +52,8 @@
//########### place macros to be removed in next cycle below this line ###############
#define JVET_R0200_MOVE_LMCS_AND_SCALING_LIST_SE 1 // JVET-R0200 Move the SH flags slice_lmcs_enabled_flag and slice_explicit_scaling_list_used_flag to be just after the ALF parameters
#define JVET_R0271_SLICE_LEVEL_DQ_SDH_RRC 1 // JVET-R0271/R0155: Slice level DQ and SDH granularity for mixed lossy/lossless.
#define JVET_R0143_TSRCdisableLL 1 // JVET-R0143: disable TSRC for lossless coding
......
......@@ -3218,6 +3218,26 @@ void HLSyntaxReader::parseSliceHeader (Slice* pcSlice, PicHeader* picHeader, Par
pcSlice->setTileGroupCcAlfCrApsId(-1);
}
}
#if JVET_R0200_MOVE_LMCS_AND_SCALING_LIST_SE
if (picHeader->getLmcsEnabledFlag())
{
READ_FLAG(uiCode, "slice_lmcs_enabled_flag");
pcSlice->setLmcsEnabledFlag(uiCode);
}
else
{
pcSlice->setLmcsEnabledFlag(false);
}
if (picHeader->getExplicitScalingListEnabledFlag())
{
READ_FLAG(uiCode, "slice_explicit_scaling_list_used_flag");
pcSlice->setExplicitScalingListUsed(uiCode);
}
else
{
pcSlice->setExplicitScalingListUsed(false);
}
#endif
// 4:4:4 colour plane ID
if( sps->getSeparateColourPlaneFlag() )
......@@ -3751,6 +3771,7 @@ void HLSyntaxReader::parseSliceHeader (Slice* pcSlice, PicHeader* picHeader, Par
pcSlice->setTSResidualCodingDisabledFlag(uiCode != 0);
#endif
#if !JVET_R0200_MOVE_LMCS_AND_SCALING_LIST_SE
if (picHeader->getLmcsEnabledFlag())
{
READ_FLAG(uiCode, "slice_lmcs_enabled_flag");
......@@ -3769,6 +3790,7 @@ void HLSyntaxReader::parseSliceHeader (Slice* pcSlice, PicHeader* picHeader, Par
{
pcSlice->setExplicitScalingListUsed(false);
}
#endif
if( pcSlice->getFirstCtuRsAddrInSlice() == 0 )
{
pcSlice->setDefaultClpRng( *sps );
......
......@@ -2056,6 +2056,18 @@ void HLSWriter::codeSliceHeader ( Slice* pcSlice )
}
}
#if JVET_R0200_MOVE_LMCS_AND_SCALING_LIST_SE
if (picHeader->getLmcsEnabledFlag())
{
WRITE_FLAG(pcSlice->getLmcsEnabledFlag(), "slice_lmcs_enabled_flag");
}
if (picHeader->getExplicitScalingListEnabledFlag())
{
WRITE_FLAG(pcSlice->getExplicitScalingListUsed(), "slice_explicit_scaling_list_used_flag");
}
#endif
// 4:4:4 colour plane ID
if( pcSlice->getSPS()->getSeparateColourPlaneFlag() )
{
......@@ -2362,6 +2374,7 @@ void HLSWriter::codeSliceHeader ( Slice* pcSlice )
WRITE_FLAG(pcSlice->getTSResidualCodingDisabledFlag() ? 1 : 0, "slice_ts_residual_coding_disabled_flag");
#endif
#if !JVET_R0200_MOVE_LMCS_AND_SCALING_LIST_SE
if (picHeader->getLmcsEnabledFlag())
{
WRITE_FLAG(pcSlice->getLmcsEnabledFlag(), "slice_lmcs_enabled_flag");
......@@ -2371,6 +2384,7 @@ void HLSWriter::codeSliceHeader ( Slice* pcSlice )
{
WRITE_FLAG(pcSlice->getExplicitScalingListUsed(), "slice_explicit_scaling_list_used_flag");
}
#endif
if(pcSlice->getPPS()->getSliceHeaderExtensionPresentFlag())
{
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment