Repolode
google

google/brotli

Brotli — универсальный формат сжатия без потерь и эталонная библиотека, описанные в RFC 7932; коэффициент сжатия сопоставим с лучшими универсальными методами.

Звёзды
15,093
Форки
1,395
Открытые issues
128
Последний коммит
11 часов назад

Что это?

Brotli — алгоритм сжатия без потерь, сочетающий современный вариант LZ77, кодирование Хаффмана и контекстное моделирование второго порядка. Он обеспечивает коэффициент сжатия, близкий к лучшим универсальным методам, при скорости, сопоставимой с deflate, и рассчитан на более высокую плотность сжатия.

Формат описан в RFC 7932, а проект содержит эталонный код кодировщика и декодировщика на C. Установить утилиту командной строки можно через распространённые пакетные менеджеры Linux и Homebrew. В репозитории также есть конфигурации сборки для CMake и Bazel, а модуль Python можно установить через pip.

Brotli использует потоковый формат без встроенных контрольных сумм и метаданных о длине несжатых данных, поэтому декодировщик может не обнаружить повреждение отдельных диапазонов сжатого потока. Бенчмарки формата публикуют сторонние проекты, например Squash Compression Benchmark.

Ключевые возможности

  • 01Сжатие без потерь на основе LZ77, кодирования Хаффмана и контекстного моделирования
  • 02Формат описан в RFC 7932
  • 03Эталонная реализация на C со сборкой через CMake и Bazel
  • 04Модуль Python, устанавливаемый через pip
  • 05Доступен через распространённые пакетные менеджеры Linux и Homebrew

Сценарии использования

  • Сжатие веб-ресурсов, например HTML, CSS и JavaScript, для передачи по HTTP
  • Хранение данных, когда требуется более высокий коэффициент сжатия, чем у deflate
  • Добавление поддержки сжатия Brotli в приложения на C или Python

Быстрый старт

  1. 1

    Установите консольную утилиту Brotli с помощью менеджера пакетов (Debian/Ubuntu)

    apt install brotli
  2. 2

    Установите утилиту Brotli в macOS с помощью Homebrew

    brew install brotli
  3. 3

    Установите модуль Python из PyPI

    pip install brotli

Что важно знать

  • Brotli — потоковый формат без встроенных контрольных сумм и указания длины данных после распаковки, поэтому повреждения в необработанных диапазонах могут остаться незамеченными.

Темы

#compression#lossless-compression#codec#python#rfc-7932

Частые вопросы

Что такое brotli?
Brotli — универсальный формат сжатия без потерь и эталонная библиотека, описанные в RFC 7932; коэффициент сжатия сопоставим с лучшими универсальными методами. Brotli — алгоритм сжатия без потерь, сочетающий современный вариант LZ77, кодирование Хаффмана и контекстное моделирование второго порядка. Он обеспечивает коэффициент сжатия, близкий к лучшим универсальным методам, при скорости, сопоставимой с deflate, и рассчитан на более высокую плотность сжатия.
brotli можно использовать бесплатно? Какая у него лицензия?
brotli распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
brotli всё ещё поддерживается?
Активно поддерживается. Последний коммит в brotli — 7 нояб. 2026 г..
Для чего можно использовать brotli?
Сжатие веб-ресурсов, например HTML, CSS и JavaScript, для передачи по HTTP Хранение данных, когда требуется более высокий коэффициент сжатия, чем у deflate Добавление поддержки сжатия Brotli в приложения на C или Python
Как установить brotli?
Установите консольную утилиту Brotli с помощью менеджера пакетов (Debian/Ubuntu): apt install brotli Установите утилиту Brotli в macOS с помощью Homebrew: brew install brotli Установите модуль Python из PyPI: pip install brotli
Где скачать brotli?
Исходный код и инструкции по установке — на GitHub: https://github.com/google/brotli

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Набор библиотек на C и инструментов командной строки для декодирования, кодирования, конвертации, фильтрации и потоковой передачи аудио, видео и субтитров.

66,7 тыс.+549 за неделю14,5 тыс.COtherОбновлён 6 часов назад

Кроссплатформенный GUI для FFmpeg, позволяющий без перекодирования вырезать и обрезать видео- и аудиофайлы, а также выполнять их ремультиплексирование.

45,8 тыс.+271 за неделю2,3 тыс.TypeScriptGPL-2.0Активно поддерживаетсяОбновлён 4 дня назад

Мультимодальная speech-text foundation model и фреймворк для полнодуплексного голосового диалога, который одновременно говорит и слушает, с потоковым нейронным аудиокодеком Mimi.

11,5 тыс.+98 за неделю1,1 тыс.PythonApache-2.0Обновлён 2 месяца назад

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

4,7 тыс.+70 за неделю472C++GPL-3.0Активно поддерживаетсяОбновлён 12 часов назад

Очень быстрый алгоритм сжатия без потерь на C с быстрым декодером и настраиваемым балансом скорости и степени сжатия.

12,7 тыс.+376 за неделю1,6 тыс.COtherАктивно поддерживаетсяОбновлён вчера