Estou procurando o conversor de imagem de linha de comando mais rápido para Linux que pode ler uma imagem JPEG, reduzi-la para no máximo 1366x768 e gravar uma imagem JPEG de qualidade 50. Algo assim, mas muito mais rápido que o ImageMagick:
$ convert -resize x768 -quality 50 foo42.jpg foo42.th.jpg
# takes 0m16.713s for my test image set
Eu também tentei isso:
$ <foo42.jpg djpeg | pnmscale -xysize 1366 768 | cjpeg -quality 50 >foo42.th.jpg
# takes 0m12.007s for my test image set, and has lower visual quality than ImageMagick
Então, eu gostaria de ter um programa, de preferência escrito em C, que integre djpeg, uma versão de qualidade superior do pnmscale e cjpeg.
Acabei de encontrar swiggle (um programa em C usando libjpeg), desabilitei algumas das funcionalidades que não preciso no código-fonte e tenho:
$ swiggle -f -H 768 .
# takes 0m11.378s for my test image set, yields high quality results
Você tem outra sugestão? Eu acho que a maioria dos conversores de imagem usa libjpeg, por isso seria difícil obter resultados muito mais rápidos do que o swiggle.