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

Random/non-standard sized videos show corruption after encoding #533

Closed intelmark closed 4 years ago

intelmark commented 4 years ago

Generated several non-standard sized test videos using GStreamer. After encoding the streams show corruption. corruption

gst-launch-1.0 videotestsrc num-buffers=200 ! video/x-raw, framerate=25/1, width=3204, height=1008! filesink location=3204x1008_420_200.yuv

gst-launch-1.0 videotestsrc num-buffers=200 ! video/x-raw, framerate=25/1, width=6666, height=4318! filesink location=6666x4318_420_200.yuv

gst-launch-1.0 videotestsrc num-buffers=200 ! video/x-raw, framerate=25/1, width=804, height=240! filesink location=804x240_420_200.yuv

Encoded used SVT-HEVC with default parameters: SvtHevcEncApp -i videotest3204x1008_420_200.yuv -w 3204 -h 1008 -n 2000 -bit-depth 8 -b videotest3204x1008.hevc

SvtHevcEncApp -i videotest6666x4318_420_200.yuv -w 6666 -h 4318 -n 2000 -bit-depth 8 -b videotest6666x4318.hevc

SvtHevcEncApp -i videotest804x240_420_200.yuv -w 804 -h 240 -n 2000 -bit-depth 8 -b videotest804x240.hevc

tianjunwork commented 4 years ago

Can be reproduced with v1.2.0 tag.

intelmark commented 4 years ago

Tried using current SVT-AV1 encoder with these yuvs:

_Bin/Debug/SvtAv1EncApp -i /testfiles/videotest3204x1008_420_200.yuv -w 3204 -h 1008 -bit-depth 8 -b videotest3204x1008.av1 Video shows corruption when played

_Bin/Debug/_SvtAv1EncApp -i /testfiles/videotest6666x4318_420200.yuv -w 6666 -h 4328 -bit-depth 8 -b videotest6666x4318.av1 Unable to encode; get the following error messages: Error instance 1: Source Width must be less than 4096 Error instance 1: Source Height must be less than 2160

_Bin/Debug/SvtAv1EncApp -i /testfiles/videotest804x240_420200.yuv -w 804 -h 240 -bit-depth 8 -b videotest804x240.av1 Video shows corruption when played

tianjunwork commented 4 years ago

Thanks Mark. Yeah, it seems a long existing issue. The fix should be applicable to both encoder.

tianjunwork commented 4 years ago

Video generated by gst is corrupted.