ECM-4.0 encoding crash when ARMC is disabled
Encoding crash is observed with ECM-4.0 when ARMC is disabled by command line. The crash may be reproduced with following command line.
EncoderApp.exe -c ..\cfg\encoder_randomaccess_ecm.cfg -c .\BasketballPass.cfg -v 6 -dph 1 -f 9 --AML=0
Encoding log
VVCSoftware: ECM Encoder Version 4.0 (VTM-10.0) [Windows][VS 1916][64 bit] [SIMD=AVX2]
DMVR is forcefully disabled since it has been disabled by the macro MULTI_PASS_DMVR. Input File : C:\Work\Sequences\BasketballPass_416x240_50.yuv Bitstream File : str.bin Reconstruction File : rec.yuv Real Format : 416x240 50Hz Internal Format : 416x240 50Hz Sequence PSNR output : Linear average only Hexadecimal PSNR output : Disabled Sequence MSE output : Disabled Frame MSE output : Disabled MS-SSIM output : Disabled Cabac-zero-word-padding : Disabled Frame/Field : Frame based coding Frame index : 0 - 8 (9 frames) Profile : main_10 CTU size / min CU size : 128 / 4 Max MTT Hierarchy Depth in B-slices by temporal ID: 333333 subpicture info present flag : Disabled subpicture ID present flag : Disabled Max TB size : 128 Motion search range : 384 Intra period : 32 Decoding refresh type : 1 DRAP period : 0 QP : 32 Max dQP signaling subdiv : 0 Cb QP Offset (dual tree) : 0 (0) Cr QP Offset (dual tree) : 0 (0) QP adaptation : 0 (range=0) GOP size : 32 Input bit depth : (Y:8, C:8) MSB-extended bit depth : (Y:8, C:8) Internal bit depth : (Y:10, C:10) Intra reference smoothing : Enabled cu_chroma_qp_offset_subdiv : -1 extended_precision_processing_flag : Disabled transform_skip_rotation_enabled_flag : Disabled transform_skip_context_enabled_flag : Disabled high_precision_offsets_enabled_flag : Disabled persistent_rice_adaptation_enabled_flag: Disabled cabac_bypass_alignment_enabled_flag : Disabled Cost function: : Lossy coding (default) RateControl : 0 WeightedPredMethod : 0 Intra TMP: 0 Max CU size of TMP: 64 dynamic search range with fixed comparison per pixel: searchRangeWidth = 5Width searchRangeHeight = 5Heigh Max Num Merge Candidates : 10 Max Num BM Merge Candidates : 4 Max Num Affine Merge Candidates : 5 Max Num Geo Merge Candidates : 10 Max Num IBC Merge Candidates : 6
TOOL CFG: CTU:128 MaxTU:128 SignPred:8 Log2SignPredArea:4 IBD:1 HAD:1 RDQ:1 RDQTS:1 RDpenalty:0 LQP:0 SQP:0 ASR:1 MinSearchWindow:96 RestrictMESampling:0 FEN:1 ECU:0 FDM:1 CFM:0 ESD:0 TransformSkip:1 TransformSkipFast:1 TransformSkipLog2MaxSize:5 ChromaTS:1 BDPCM:0 Tiles: 1x1 Slices: 1 MCTS:0 SAO:1 CCSAO:1 ALF:1 CCALF:1 WPP:0 WPB:0 PME:2 WaveFrontSynchro:0 WaveFrontSubstreams:1 ScalingList:0 TMVPMode:1 DQ:2 SignBitHidingFlag:0 RecalQP:0 TOOL CFG: GOP:32 LFNST:1 MMVD:1 Affine:1 AffineType:1 AffineMMVD:1 PROF:1 SbTMVP:1 DualITree:1 IMV:1 BIO:1 AML:0 LMChroma:1 HorCollocatedChroma:1 VerCollocatedChroma:0 MTS: 1(intra) 0(inter) SBT:1 ISP:1 SMVD:1 CompositeLTReference:0 Bcw:1 BcwFast:1 LADF:0 DIMD:1 TIMD:1 OBMC:1 CIIP:1 Geo:1 AdditionalInterHyps:2 (2 weights,4 ref frames,1 try) AllowDisFracMMVD:1 AffineAmvr:1 AffineAmvrEncOpt:1 AffineAmvp:1 DMVR:0 DMVD:1 MmvdDisNum:6 MVSD:1 JointCbCr:1 OBMC:1 ACT:0 PLT:0 IBC:0 HashME:0 WrapAround:0 IntraTMP:0 IntraTmpMaxSize:64 BIF:1 BIFStrength:1 BIFQPOffset:0 ChromaBIF:1 ChromaBIFStrength:1 ChromaBIFQPOffset:0 VirtualBoundariesEnabledFlag:0 VirtualBoundariesPresentInSPSFlag:1 vertical virtual boundaries:[ ] horizontal virtual boundaries:[ ] Reshape:1 (Signal:SDR Opt:0 CSoffset:6) MRL:1 MIP:1 LIC:1 FastPicLevelLIC:1 EncDbOpt:0 FAST TOOL CFG: MaxNumTUs:1 LCTUFast:1 FastMrg:1 NumFullRDMrg:4 PBIntraFast:1 IMV4PelFast:1 MTSMaxCand: 4(intra) 4(inter) ISPFast:0 FastLFNST:0 AMaxBT:1 E0023FastEnc:1 ContentBasedFastQtbt:0 UseNonLinearAlfLuma:1 UseNonLinearAlfChroma:1 MaxNumAlfAlternativesChroma:8 FastMIP:0 NumSplitThreads:1 NumWppThreads:1+0 EnsureWppBitEqual:0 TTFastSkip:31 TTFastSkipThr:1.075 RPR:0 TemporalFilter:4/4 BIM:0
Input ChromaFormatIDC = 4:2:0
Output (internal) ChromaFormatIDC = 4:2:0
Non-environment-variable-controlled macros set as follows:
RExt__DECODER_DEBUG_BIT_STATISTICS = 0
RExt__HIGH_BIT_DEPTH_SUPPORT = 0
RExt__HIGH_PRECISION_FORWARD_TRANSFORM = 0
ME_ENABLE_ROUNDING_OF_MVS = 1
started @ Fri Feb 18 16:38:32 2022 POC 0 LId: 0 TId: 0 ( IDR_N_LP, I-SLICE, QP 29 ) 51080 bits [Y 39.1553 dB U 42.2324 dB V 42.2107 dB] [ET 93 ] [L0] [L1] [MD5:151c6afeadd30e9de48c5e55104e9fbf,ee68ccecfc6436541f880ece6b4570a1,8bfdbb2225ddd5e9fd58e0ce5c0054ae] POC 8 LId: 0 TId: 2 ( STSA, B-SLICE, QP 35 ) 7216 bits [Y 36.6371 dB U 41.1680 dB V 40.1991 dB] [ET 75 ] [L0 0] [L1 0c] [MD5:7d09f7aa059c2289f901da7435bde764,f457bcb85756d6c5c2b438d6afaad3c2,a24e8700ec8d26bee0c11892fb214579]
ERROR: In function "EncCu::xCheckRDCostMergeGeoComb2Nx2N" in C:\Work\Program\t-ecm\source\Lib\EncoderLib\EncCu.cpp:4801: merge candidates are not available