id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc 172,HM3.1 SAO and multiple SPS/PPS,thomasd,,"In HM3.1, if TEncGOP.cpp is modified to code a PPS and SPS with every frame, by commenting out the guard by m_bSeqFirst at line 427, then the decoder will decode but reports MD5 mismatches. When SAO is turned off, these MD5 mismatches disappear. Running the decoder with valgrind returns the error: ==16136== Conditional jump or move depends on uninitialised value(s) ==16136== at 0x41697A: TComSampleAdaptiveOffset::xProcessQuadTreeAo(unsigned int, TComPicYuv*, TComPicYuv*) (TComAdaptiveLoopFilter.cpp:3443) ==16136== by 0x4184CA: TComSampleAdaptiveOffset::SAOProcess(TComPic*, _SaoParam*) (TComAdaptiveLoopFilter.cpp:3523) ==16136== by 0x46F2AC: TDecGop::decompressGop(TComInputBitstream*, TComPic*&, bool) (TDecGop.cpp:189) ==16136== by 0x477A68: TDecTop::executeDeblockAndAlf(unsigned int&, TComList*&, int&, int&) (TDecTop.cpp:196) ==16136== by 0x40666C: TAppDecTop::decode() (TAppDecTop.cpp:139) ==16136== by 0x4036A7: main (decmain.cpp:76) An example command line is : ./hm-enc -c encoder_intra_loco.cfg -c racehorses-c.cfg -i /master/hevc-test-pictures/RaceHorses_832x480_30.yuv -o test.yuv -b test.bit --FramesToBeEncoded=9 [--SAO=0] The output of the decoder is still viewable and differs only by small values from the encoder local output, suggesting it is indeed SAO that is at fault. Thomas Davies thdavies@cisco.com ",defect,closed,minor,,HM,,fixed,SAO SPS PPS,fbossen ksuehring davidf jct-vc@…