OpenVisualCloud / SVT-HEVC

SVT HEVC encoder. Scalable Video Technology (SVT) is a software-based video coding technology that is highly optimized for Intel® Xeon® processors. Using the open source SVT-HEVC encoder, it is possible to spread video encoding processing across multiple Intel® Xeon® processors to achieve a real advantage of processing efficiency.
Other
507 stars 169 forks source link

The I frame is not inserted according to the setting of '-intra-period' parameter. #577

Closed GuCaixuan closed 2 years ago

GuCaixuan commented 3 years ago

[Test environment] OS: Ubuntu 18.04.3 LTS SVT CommitID: d668698

[Issue Description] When use SVT-HEVC to encode kirland360p_60f.yuv, found the I frame inserted POC is not 32 according to the setting of '-intra-period 31' parameter. The actual I frames inserted POC are [0,6,9,41]. I-2 [Sample command Line] SvtHevcEncApp -encMode 0 -w 640 -h 360 -bit-depth 8 -fps 30 -q 27 -n 60 -intra-period 31 -i kirland360p_60f.yuv -b hevc_kirland360p_60f_Q27_640x360.bin

intelmark commented 3 years ago

@GuCaixuan - I was able to duplicate your results. However when examining the frames, I noticed that frames 6,9, and 41 have significantly different lighting in them, and SVT-HEVC's scene change detection logic was being applied to break the gop. Running with scene change detection off (-scd 0) will allow for the 32 frame period.

GuCaixuan commented 3 years ago

@intelmark Thank you very much for your reply!