


Then we can compare the H.264 compressed output with the original uncompressed source file: ffmpeg -i cr_crf15.mov -i crowdrun.mov -filter_complex \ We will define difference thresholds we are interested in for the Y, U, and V component channels: ythresh=5 uthresh=5 vthresh=5 It allows you to perform mathematics on the pixel component values of the two streams. We will use the " lut2" function which takes two input streams and has one output stream. The parameter after "-filter_complex" that is in double quotes can have a series of complex filter graphs. We will use the ffmpeg complex filtering facility. Now you'd like to know which pixels changed in the compressed version more than a certain number of code values.

You encode it with ffmpeg and libx264: ffmpeg -i crowdrun.mov -c:v libx264 -crf 15 cr_crf15.mov For example, imagine you have the "CrowdRun" sequence (from the EBU-SVT Public Test Sequences) in an uncompressed v210 (packed 4:2:2 10-bit) MOV format. But what if you don't want to know just how good or how bad the compression is, but instead where in the frame is the compression is good or bad?Ī "freckle" display is a way of seeing which pixels in your video frame have changed beyond a certain amount from the original to the compressed version. PSNR, SSIM, and VMAF are all useful objective metrics for measuring video compression quality.
