diff --git a/source/Lib/DecoderLib/VLCReader.cpp b/source/Lib/DecoderLib/VLCReader.cpp index 646bcffb95aba3ef1363892941a1eb2712e9664a..9a4ff2f4bd1b970f215e1c1ffb60769c34b0b449 100644 --- a/source/Lib/DecoderLib/VLCReader.cpp +++ b/source/Lib/DecoderLib/VLCReader.cpp @@ -1836,12 +1836,20 @@ void HLSyntaxReader::parseSPS(SPS* pcSPS) READ_CODE( 2, uiCode, "sps_num_ver_virtual_boundaries"); pcSPS->setNumVerVirtualBoundaries( uiCode ); for( unsigned i = 0; i < pcSPS->getNumVerVirtualBoundaries(); i++ ) { +#if JVET_R0266_DESC + READ_UVLC(uiCode, "sps_virtual_boundaries_pos_x"); pcSPS->setVirtualBoundariesPosX(uiCode << 3, i); +#else READ_CODE(13, uiCode, "sps_virtual_boundaries_pos_x"); pcSPS->setVirtualBoundariesPosX(uiCode << 3, i); +#endif } READ_CODE( 2, uiCode, "sps_num_hor_virtual_boundaries"); pcSPS->setNumHorVirtualBoundaries( uiCode ); for( unsigned i = 0; i < pcSPS->getNumHorVirtualBoundaries(); i++ ) { +#if JVET_R0266_DESC + READ_UVLC(uiCode, "sps_virtual_boundaries_pos_y"); pcSPS->setVirtualBoundariesPosY(uiCode << 3, i); +#else READ_CODE(13, uiCode, "sps_virtual_boundaries_pos_y"); pcSPS->setVirtualBoundariesPosY(uiCode << 3, i); +#endif } } else diff --git a/source/Lib/EncoderLib/VLCWriter.cpp b/source/Lib/EncoderLib/VLCWriter.cpp index 09b46b2405325ad296f7951195362868b3d29a7f..059a835e9614cc6ce03b835c02b5726d448627ac 100644 --- a/source/Lib/EncoderLib/VLCWriter.cpp +++ b/source/Lib/EncoderLib/VLCWriter.cpp @@ -1593,12 +1593,20 @@ void HLSWriter::codePictureHeader( PicHeader* picHeader, bool writeRbspTrailingB WRITE_CODE(picHeader->getNumVerVirtualBoundaries(), 2, "ph_num_ver_virtual_boundaries"); for( unsigned i = 0; i < picHeader->getNumVerVirtualBoundaries(); i++ ) { +#if JVET_R0266_DESC + WRITE_UVLC(picHeader->getVirtualBoundariesPosX(i) >> 3, "ph_virtual_boundaries_pos_x"); +#else WRITE_CODE(picHeader->getVirtualBoundariesPosX(i) >> 3, 13, "ph_virtual_boundaries_pos_x"); +#endif } WRITE_CODE(picHeader->getNumHorVirtualBoundaries(), 2, "ph_num_hor_virtual_boundaries"); for( unsigned i = 0; i < picHeader->getNumHorVirtualBoundaries(); i++ ) { +#if JVET_R0266_DESC + WRITE_UVLC(picHeader->getVirtualBoundariesPosY(i)>>3, "ph_virtual_boundaries_pos_y"); +#else WRITE_CODE(picHeader->getVirtualBoundariesPosY(i)>>3, 13, "ph_virtual_boundaries_pos_y"); +#endif } } else