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
516 stars 172 forks source link

Fixed the random encoding hang issue due to incorrect number of FIFOs. #508

Closed Austin-Hu closed 4 years ago

Austin-Hu commented 4 years ago

Fixed by calculating the number of FIFO objects with desired FPS and life cycle of the objects.

Signed-off-by: Austin Hu austin.hu@intel.com

2nd option to fix #497 .

Austin-Hu commented 4 years ago

Some data comparion with the PR applied or not, when encoding 1080p P420 8-bit YUV input:

Encoding performance: ~15.6 FPS V.S. ~4 FPS Memory consumption: 20 GB V.S. 3 GB

The number of FIFO objects: Input & Output PPCS PA Ref CPCS RefPic Recon 720 720 720 720 720 720

RC PA PD ME IRC SBO PM RC MDC EncDec EC 120 120 34560 4320 2040 360 2280 120 131 4080 120

V.S.

The number of FIFO objects: Input & Output PPCS PA Ref CPCS RefPic Recon 113 214 214 18 107 107

RC PA PD ME IRC SBO PM RC MDC EncDec EC 300 301 302 308 303 304 305 306 300 900 309