デジタル動画の基礎を、色やフレームの種類、H.264・H.265・VP9・AV1などのコーデック、ストリーミングまで、FFmpegの例を交えて実践的に学べる初心者向けガイドです。
google/brotli
Brotliは、RFC 7932で規定された汎用の可逆圧縮形式とそのリファレンスライブラリで、主要な汎用圧縮方式に匹敵する圧縮率を実現します。
- スター
- 15,093
- フォーク
- 1,395
- 未解決の Issue
- 128
- 最終コミット
- 11 時間前
これは何?
Brotliは、LZ77の最新の派生方式、Huffman符号化、二次コンテキストモデリングを組み合わせた可逆圧縮アルゴリズムです。汎用圧縮方式の最高水準に近い圧縮率を目指し、deflateと同程度の速度で動作しながら、圧縮密度ではdeflateを上回るように設計されています。
形式はRFC 7932で定義されており、プロジェクトではリファレンスとなるC言語のエンコーダーとデコーダーを提供しています。コマンドラインツールは一般的なLinuxのパッケージマネージャーやHomebrewからインストールでき、リポジトリにはCMakeとBazelのビルド設定も含まれています。また、pipでインストールできるPythonモジュールも用意されています。
Brotliはストリーム形式であり、チェックサムや非圧縮データの長さを示すメタデータを内蔵していません。そのため、圧縮ストリーム内の生データ範囲が破損しても、デコーダーが検出できない場合があります。この形式のベンチマークは、Squash Compression Benchmarkなどの第三者によって公開されています。
主な機能
- 01LZ77、Huffman符号化、コンテキストモデリングに基づく可逆圧縮
- 02RFC 7932で規定された形式
- 03CMakeおよびBazelでビルドできるC言語のリファレンス実装
- 04pipでインストールできるPythonモジュール
- 05一般的なLinuxのパッケージマネージャーやHomebrewから利用可能
ユースケース
- HTTP転送向けにHTML、CSS、JavaScriptなどのWebアセットを圧縮する
- deflateより高い圧縮率が必要なデータを保存する
- CまたはPythonのアプリケーションにBrotli圧縮対応を追加する
クイックスタート
- 1
パッケージマネージャーを使って Brotli のコマンドラインツールをインストールする(Debian/Ubuntu)
apt install brotli - 2
Homebrew を使って macOS に Brotli ツールをインストールする
brew install brotli - 3
PyPI から Python モジュールをインストールする
pip install brotli
使う前に知っておきたいこと
- Brotli はチェックサムや非圧縮時の長さが組み込まれていないストリーム形式のため、raw 範囲の破損が検出されない場合があります。
トピック
よくある質問
- brotli とは?
- Brotliは、RFC 7932で規定された汎用の可逆圧縮形式とそのリファレンスライブラリで、主要な汎用圧縮方式に匹敵する圧縮率を実現します。 Brotliは、LZ77の最新の派生方式、Huffman符号化、二次コンテキストモデリングを組み合わせた可逆圧縮アルゴリズムです。汎用圧縮方式の最高水準に近い圧縮率を目指し、deflateと同程度の速度で動作しながら、圧縮密度ではdeflateを上回るように設計されています。
- brotli は無料で使えますか?ライセンスは?
- brotli は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- brotli は今もメンテナンスされていますか?
- 活発にメンテナンス中。brotli の最終コミットは 2026年11月7日 です。
- brotli は何に使えますか?
- HTTP転送向けにHTML、CSS、JavaScriptなどのWebアセットを圧縮する deflateより高い圧縮率が必要なデータを保存する CまたはPythonのアプリケーションにBrotli圧縮対応を追加する
- brotli のインストール方法は?
- パッケージマネージャーを使って Brotli のコマンドラインツールをインストールする(Debian/Ubuntu): apt install brotli Homebrew を使って macOS に Brotli ツールをインストールする: brew install brotli PyPI から Python モジュールをインストールする: pip install brotli
- brotli はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/google/brotli
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
音声・動画・字幕のデコード、エンコード、変換、フィルタリング、ストリーミングに使えるCライブラリ群とコマンドラインツール。
再エンコードせずに動画・音声ファイルをロスレスでカット、トリミング、リマックスできるクロスプラットフォーム対応のFFmpeg GUI。
ブラウザー、デスクトップ、モバイルの各クライアントや複数デバイスのウォール表示、自前でホストできるシグナリング/TURNリレーを備えた、軽量なクロスプラットフォーム対応リモートデスクトップアプリ。
C製の超高速なロスレス圧縮アルゴリズム。非常に高速なデコーダーを備え、速度と圧縮率のバランスを調整できます。