to post messages and comments.

Google опубликовали свой новый JPEG:
Сжатие небольшого изображения (620×444, 32 килобайта) потребовало около 20 секунд, и 50 мегабайт оперативной памяти. Как сообщает один из пользователей, сжатие более крупных файлов (1,7 мегабайта) требует несколько гигабайт оперативной памяти и 15 минут работы программы.
nplus1.ru

Вот xz давно используется повсеместно, ему вполне себе удалось вытеснить какой-нибудь позабытый bz2.
А сколько годных замен jpeg ни появлялось, всё равно всюду jpeg. Почему? Заговор?

Фабрис Беллар опять что-то сделал. На этот раз формат BPG. Но, как мне видится, в отличие от других его поделок, никто его использовать особо не будет. Убийц JPEG уже десяток есть, в том числе и от самого комитета JPEG минимум две штуки. Пока не умрёт последний девайс, которые понимает только *.jpeg, и пока не начнут клепать девайсы, понимающие что-то кроме него, формат будет жить.

Любопытная штука:
en.wikipedia.org Арифметическое кодирование

Не обошлось без патентных троллей.

At least one significant compression software program, bzip2, deliberately discontinued the use of arithmetic coding in favor of Huffman coding due to the perceived patent situation at the time. Also, encoders and decoders of the JPEG file format, which has options for both Huffman encoding and arithmetic coding, typically only support the Huffman encoding option, which was originally because of patent concerns; the result is that nearly all JPEG images in use today use Huffman encoding[1] although JPEG's arithmetic coding patents[2] have expired due to the age of the JPEG standard (the design of which was approximately completed by 1990).[3] There are some archivers like PackJPG, that can losslessly convert Huffman encoded jpegs to jpegs with arithmetic coding (with custom file name .pjg), showing up to 25% size saving.

Нашёл программу, которая реализует функциональность из #1048370 — оптимизация размера JPEG-файлов без потерь качества (lossless по-нашему). Пакет называется jpegoptim, делает всё то же самое. С ключом -t показывает суммарный выигрыш в размере, с --all-progressive делает все файлы прогрессивными (грузятся быстрее, места занимают меньше, но требуют чуть больше памяти). Один минус — на моих синтетических тестах jpegtran сжимал лучше.

Ещё оказывается есть то же самое для png — optipng. Но я пока её не пробовал.

l29ahZl29ah-home /tmp ‰ qiv Image0036.jpg
Unable to read file: Couldn't recognize the image file format for file 'Image0036.jpg'
l29ahZl29ah-home /tmp ‰ pqiv Image0036.jpg
Failed to load Image0036.jpg: Couldn't recognize the image file format for file 'Image0036.jpg'
Failed to load any of the images

Совсем недавно открывал этот файл без проблем. Прыщефокс осиливает, за счёт вкомбаенированного либжпега. Что я сломал? openjpeg, собранный полгода назад, пересобирал, qiv'ы тоже.

Как перевести pdf в jpeg? Интернеты наперебой советуют использовать imagemagick. Есть даже варианты с ghostscript. На самом деле эти программы осуществляют рендеринг pdf, а потом делают скриншот. Однако если pdf сам весь состоит из изображенией (типа сканов книг), можно просто выпотрошить все изображения из него без каких-либо изменений. И даже команда есть соответствующая из пакета poppler. Называется pdfimages. Используется:
pdfimages -j inputfile.pdf output
После этого в текущем каталоге появляется куча файлов вида output-nnn.jpg, по количеству изображений во входном файле. В интернетах говорят, что эта программа может вытаскивать не только jpeg, но и другие форматы из pdf, хотя я не пробовал.