jpeg_filter_arithmetric

Директива `jpeg_filter_arithmetric` включает или отключает арифметическое кодирование в модуле фильтра JPEG.

Синтаксисjpeg_filter_arithmetric on | off;
По умолчаниюoff
Контекстhttp, server, location
Аргументыflag

Описание

Директива jpeg_filter_arithmetric управляет применением арифметического кодирования при генерации изображений JPEG. Арифметическое кодирование — это усовершенствованная техника сжатия, которая потенциально может повысить качество получаемых JPEG, позволяя более эффективно представлять значения пикселей по сравнению с традиционным кодированием Хаффмана. Установив эту директиву в значение on, NGINX будет использовать этот метод при кодировании JPEG, что может привести к уменьшению размеров файлов и улучшению качества изображений, особенно для изображений со сложным распределением цветов. Напротив, установка off вернёт стандартный метод кодирования Хаффмана.

Эта директива может использоваться в различных контекстах, включая http, server и location, что обеспечивает гибкую конфигурацию в зависимости от потребностей приложения. Чтобы включить арифметическое кодирование глобально для всех JPEG-изображений, обслуживаемых сервером, добавьте эту директиву в блок http. Для более точного управления её также можно задать на уровне server или location, чтобы нацеливаться на конкретные изображения или разделы галереи. Однако важно иметь в виду, что включение арифметического кодирования может привести к увеличению загрузки CPU, так как процесс кодирования становится более требовательным к вычислительным ресурсам по сравнению со стандартным кодированием Хаффмана.

Пример конфига

http {
    jpeg_filter on;
    jpeg_filter_arithmetric on;
    jpeg_filter_optimize on;
    location /images/ {
        jpeg_filter_max_pixel 1000000;
    }
}
⚠

Включение арифметического кодирования может увеличить загрузку CPU при обработке JPEG, что может повлиять на производительность сервера при высокой нагрузке.

⚠

Убедитесь, что базовая реализация модуля фильтра JPEG поддерживает арифметическое кодирование, поскольку некоторые конфигурации могут требовать определённых зависимостей.

← Ко всем директивам