Brotli
開放原始碼自由軟體壓縮函式庫
Brotli是一個Jyrki Alakuijala和Zoltán Szabadka開發的開源數據壓縮程式庫。[4][5]Brotli基於LZ77演算法的一個現代變體、霍夫曼編碼和二階上下文建模。
開發者 | Jyrki Alakuijala和Zoltán Szabadka |
---|---|
目前版本 |
|
原始碼庫 | |
程式語言 | C[2][a] |
許可協定 | |
網站 | github |
在Chrome、Opera和Firefox中,它已被用於加速萬維網的傳輸速度。[6]類似Google的壓縮演算法zopfli,brotli這個名字來自瑞士的烘培產品brötli。[7]
演變
Brotli最初發佈於2015年,用於網絡字型的離線壓縮。[8]Google軟件工程師在2015年9月發佈了包含通用無失真數據壓縮的Brotli增強版本,特別側重於HTTP壓縮。其中的編碼器被部分覆寫以提高壓縮比,編碼器和解碼器都提高了速度,串流API已被改進,增加更多壓縮質素級別。新版本還展現了跨平台的效能改進,以及減少解碼所需的主記憶體。[7]
與常見的通用壓縮演算法不同,Brotli使用一個預定義的120千位元組字典。該字典包含超過13000個常用單詞、短語和其他子字串,這些來自一個文字和HTML文件的大型語料庫。[9][10]預定義的演算法可以提升較小檔案的壓縮密度。
使用brotli取代deflate來對文字檔案壓縮通常可以增加20%的壓縮密度,而壓縮與解壓縮速度則大致不變。使用Brotli進行流壓縮的內容編碼類型已被提議使用「br」。[11]
使用
- Mozilla Firefox在Firefox 44中實現Brotli。[12][13]
- Google Chrome從Chrome 49開始支援Brotli。[13]
- Opera從Opera 36開始支援Brotli。[13]
註解
參見
參考資料
- ^ Release 1.1.0. 2023年8月31日 [2023年9月18日].
- ^ brotli/README.md at master. 4 April 2017 [21 April 2017]. (原始內容存檔於2015-04-04) –透過GitHub.
- ^ google/brotli - Brotli compression format. [11 August 2017]. (原始內容存檔於2016-06-29) –透過GitHub.
- ^ RFC 7932 - Brotli Compressed Data Format. IETF. 2017-02-17 [2017-02-16]. (原始內容存檔於2017-01-29).
- ^ Brotli Source Code - GitHub. github.com. [2016-07-01]. (原始內容存檔於2016-06-29).
- ^ Slater-Robbins, Max. Chrome and Firefox are about to get a lot faster thanks to Google's new data compression algorithm. techspot.com. 20 Jan 2016 [20 Jan 2016]. (原始內容存檔於2016-05-30).
- ^ 7.0 7.1 Google Open Source Blog: Introducing Brotli: a new compression algorithm for the internet. [2016-07-01]. (原始內容存檔於2016-06-19).
- ^ Smaller Fonts with WOFF 2.0 and unicode-range. Google Developers Blog. 18 Feb 2015 [20 Jan 2016]. (原始內容存檔於2016-03-04).
- ^ Richard Chirgwin. Google's new squeeze: Brotli compression open-sourced. The Register. 23 September 2015 [2016-07-01]. (原始內容存檔於2016-05-02).
- ^ Alakuijala, Jyrki; Kliuchnikov, Evgenii; Szabadka, Zoltan; Vandevenne, Lode. Comparison of Brotli, Deflate, Zopfli, LZMA, LZHAM and Bzip2 Compression Algorithms (PDF). Google. 2015-09-22 [25 October 2015]. (原始內容存檔 (PDF)於2016-02-09).
- ^ 谷歌新压缩算法因担心涉及性别歧视而改名. 開源中國社區. [2016-07-01]. (原始內容存檔於2016-05-07).
- ^ Firefox 44 release notes. mozilla.org. [2016-01-26]. (原始內容存檔於2016-03-04).
- ^ 13.0 13.1 13.2 Can I use... Support tables for HTML5, CSS3, etc. caniuse.com. [2016-01-07]. (原始內容存檔於2017-04-08).