Skip to content

Instantly share code, notes, and snippets.

@jonsneyers
Created February 26, 2024 11:16
Show Gist options
  • Save jonsneyers/d317f51b4805c1a8f3ce0e86a9bce100 to your computer and use it in GitHub Desktop.
Save jonsneyers/d317f51b4805c1a8f3ce0e86a9bce100 to your computer and use it in GitHub Desktop.
command lines
# Command lines used to create the plots for the "JPEG XL and the Pareto front" blogpost
# Lossless:
benchmark_xl --input=*.png --codec=png,webp:ll:m1,webp:ll:m2,webp:ll:m3,webp:ll:m4,webp:ll:m5,webp:ll:m6,jxl:d0:1,jxl:d0:2,jxl:d0:3,jxl:d0:4,jxl:d0:5,jxl:d0:6,jxl:d0:7,jxl:d0:8,jxl:d0:9,jxl:d0:10,avif:rgb:q100:s9,avif:rgb:q100:s8,avif:rgb:q100:s7,avif:rgb:q100:s6,avif:rgb:q100:s5,avif:rgb:q100:s4,avif:rgb:q100:s3,avif:rgb:q100:s2,avif:rgb:q100:s1,avif:rgb:q100:s0,avif:rgb:q100:s9:log2_cols=2:log2_rows=2,avif:rgb:q100:s8,avif:rgb:q100:s7:log2_cols=2:log2_rows=2,avif:rgb:q100:s6:log2_cols=2:log2_rows=2,avif:rgb:q100:s5:log2_cols=2:log2_rows=2,avif:rgb:q100:s4:log2_cols=2:log2_rows=2,avif:rgb:q100:s3:log2_cols=2:log2_rows=2,avif:rgb:q100:s2:log2_cols=2:log2_rows=2,avif:rgb:q100:s1:log2_cols=2:log2_rows=2,avif:rgb:q100:s0:log2_cols=2:log2_rows=2 --inner_threads=8 --num_threads=0 --print_details # --encode_reps=5 --decode_reps=20
# Lossy:
# medium quality: (ssimulacra2 = 60)
benchmark_xl --input=*.png --codec=avif:s0:q41,avif:s1:q41,avif:s2:q41,avif:s3:q42,avif:s4:q42,avif:s5:q42,avif:s6:q44,avif:s7:q46,avif:s8:q47,avif:s9:q48,avif:s0:q41:log2_cols=2:log2_rows=2,avif:s1:q41:log2_cols=2:log2_rows=2,avif:s2:q42:log2_cols=2:log2_rows=2,avif:s3:q42:log2_cols=2:log2_rows=2,avif:s4:q42:log2_cols=2:log2_rows=2,avif:s5:q42:log2_cols=2:log2_rows=2,avif:s6:q44:log2_cols=2:log2_rows=2,avif:s7:q46:log2_cols=2:log2_rows=2,avif:s8:q47:log2_cols=2:log2_rows=2,avif:s9:q48:log2_cols=2:log2_rows=2,jpeg:q49:yuv420,jpeg:sjpeg:q55:yuv420,jpeg:enc-jpegli:q52:yuv420,jpeg:q49:yuv420:fix,jpeg:enc-jpegli:q52:yuv420:p0,jpeg:q49:yuv420:p0,jpeg:enc-jpegli:q52:yuv420:p0:fix,webp:q52:m2,webp:q53:m3,webp:q53:m4,webp:q53:m5,webp:q53:m6,jxl:d4.5:3,jxl:d4.69:4,jxl:d3.92:5,jxl:d3.97:6,jxl:d3.99:7,jxl:d3.73:8,jxl:d3.74:9, --inner_threads=8 --num_threads=0 --print_details
# medium-high quality: (ssimulacra2 = 70)
benchmark_xl --input=*.png --codec=avif:s0:q50,avif:s1:q51,avif:s2:q51,avif:s3:q51,avif:s4:q51,avif:s5:q51,avif:s6:q53,avif:s7:q55,avif:s8:q57,avif:s9:q57,avif:s0:q50:log2_cols=2:log2_rows=2,avif:s1:q51:log2_cols=2:log2_rows=2,avif:s2:q51:log2_cols=2:log2_rows=2,avif:s3:q51:log2_cols=2:log2_rows=2,avif:s4:q51:log2_cols=2:log2_rows=2,avif:s5:q51:log2_cols=2:log2_rows=2,avif:s6:q53:log2_cols=2:log2_rows=2,avif:s7:q55:log2_cols=2:log2_rows=2,avif:s8:q57:log2_cols=2:log2_rows=2,avif:s9:q57:log2_cols=2:log2_rows=2,jpeg:q70:yuv420,jpeg:sjpeg:q74:yuv420,jpeg:enc-jpegli:q73:yuv420,jpeg:q70:yuv420:fix,jpeg:enc-jpegli:q73:yuv420:p0,jpeg:q70:yuv420:p0,jpeg:enc-jpegli:q73:yuv420:p0:fix,webp:q76:m2,webp:q76:m3,webp:q76:m4,webp:q76:m5,webp:q76:m6,jxl:d3.25:3,jxl:d3.4:4,jxl:d2.6:5,jxl:d2.6:6,jxl:d2.6:7,jxl:d2.6:8,jxl:d2.6:9 --inner_threads=8 --num_threads=0 --print_details
# high quality: (ssimulacra2 = 85)
# daala images:
benchmark_xl --input=*.png --codec=avif:s0:q76,avif:s1:q76,avif:s2:q77,avif:s3:q78,avif:s4:q78,avif:s5:q78,avif:s6:q80,avif:s7:q81,avif:s8:q82,avif:s9:q82,avif:s0:q76:log2_cols=2:log2_rows=2,avif:s1:q76:log2_cols=2:log2_rows=2,avif:s2:q77:log2_cols=2:log2_rows=2,avif:s3:q78:log2_cols=2:log2_rows=2,avif:s4:q78:log2_cols=2:log2_rows=2,avif:s5:q78:log2_cols=2:log2_rows=2,avif:s6:q80:log2_cols=2:log2_rows=2,avif:s7:q81:log2_cols=2:log2_rows=2,avif:s8:q82:log2_cols=2:log2_rows=2,avif:s9:q82:log2_cols=2:log2_rows=2,jpeg:q89:yuv444,jpeg:sjpeg:q90,jpeg:enc-jpegli:q91,jpeg:q89:yuv444:fix,jpeg:enc-jpegli:q91:p0,jpeg:q89:yuv444:p0,jpeg:enc-jpegli:q91:p0:fix,webp:q94:m1,webp:q94:m2,webp:q94:m3,webp:q93:m4,webp:q93:m5,webp:q93:m6,jxl:d1.15:3,,jxl:d1.2:4,jxl:d1:5,jxl:d1:6,jxl:d1:7,jxl:d1:8,jxl:d1:9 --inner_threads=8 --num_threads=0 --print_details
# imagecompression.info images:
benchmark_xl --input=*.png --codec=avif:s0:q81,avif:s1:q81,avif:s2:q81,avif:s3:q81,avif:s4:q82,avif:s5:q82,avif:s6:q83,avif:s7:q84,avif:s8:q85,avif:s9:q85,avif:s0:q81:log2_cols=2:log2_rows=2,avif:s1:q81:log2_cols=2:log2_rows=2,avif:s2:q81:log2_cols=2:log2_rows=2,avif:s3:q81:log2_cols=2:log2_rows=2,avif:s4:q82:log2_cols=2:log2_rows=2,avif:s5:q82:log2_cols=2:log2_rows=2,avif:s6:q83:log2_cols=2:log2_rows=2,avif:s7:q84:log2_cols=2:log2_rows=2,avif:s8:q85:log2_cols=2:log2_rows=2,avif:s9:q85:log2_cols=2:log2_rows=2,jpeg:q88:yuv444,jpeg:sjpeg:q92,jpeg:enc-jpegli:q92,jpeg:q88:yuv444:fix,jpeg:enc-jpegli:q92:p0,jpeg:q88:yuv444:p0,jpeg:enc-jpegli:q92:p0:fix,webp:q95:m2,webp:q95:m3,webp:q95:m4,webp:q95:m5,webp:q95:m6,jxl:d1.15:3,jxl:d1.2:4,jxl:d0.95:5,jxl:d0.95:6,jxl:d0.95:7,jxl:d1:8,jxl:d1:9 --inner_threads=8 --num_threads=0 --print_details
# visually lossless: (ssimulacra2 = 90)
benchmark_xl --input=*.png --codec=avif:s0:q89,avif:s1:q89,avif:s2:q89,avif:s3:q89,avif:s4:q90,avif:s5:q90,avif:s6:q90,avif:s7:q90,avif:s8:q90,avif:s9:q91,avif:s0:q89:log2_cols=2:log2_rows=2,avif:s1:q89:log2_cols=2:log2_rows=2,avif:s2:q89:log2_cols=2:log2_rows=2,avif:s3:q89:log2_cols=2:log2_rows=2,avif:s4:q90:log2_cols=2:log2_rows=2,avif:s5:q90:log2_cols=2:log2_rows=2,avif:s6:q90:log2_cols=2:log2_rows=2,avif:s7:q90:log2_cols=2:log2_rows=2,avif:s8:q90:log2_cols=2:log2_rows=2,avif:s9:q91:log2_cols=2:log2_rows=2,jpeg:q95:yuv444,jpeg:sjpeg:q97,jpeg:enc-jpegli:q97,jpeg:q95:yuv444:fix,jpeg:enc-jpegli:q97:p0,jpeg:q95:yuv444:p0,webp:q100:m1,webp:q100:m2,webp:q100:m3,webp:q100:m4,webp:q100:m5,webp:q100:m6,jxl:d0.5:3,jxl:d0.5:4,jxl:d0.5:5,jxl:d0.5:6,jxl:d0.51:7,jxl:d0.52:8,jxl:d0.54:9 --inner_threads=8 --num_threads=0 --print_details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment