Brotli

開放原始碼自由軟體壓縮函式庫

Brotli是一個Jyrki Alakuijala和Zoltán Szabadka英語Zoltán Szabadka開發的開源數據壓縮程式庫[4][5]Brotli基於LZ77演算法的一個現代變體、霍夫曼編碼和二階上下文建模英語Context_modeling

Brotli
Brotli
開發者Jyrki Alakuijala和Zoltán Szabadka
目前版本
  • 1.1.0(2023年8月31日;穩定版本)[1]
編輯維基數據連結
原始碼庫 編輯維基數據連結
程式語言C[2][a]
許可協定 編輯維基數據連結
網站github.com/google/brotli 編輯維基數據

ChromeOperaFirefox中,它已被用於加速萬維網的傳輸速度。[6]類似Google的壓縮演算法zopfli,brotli這個名字來自瑞士的烘培產品brötli英語Spanisch_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]

使用

編輯

註解

編輯
  1. ^ Brotli's core is written in C, but it has bindings for Java, Python, C#, and Go.[3]

參見

編輯

參考資料

編輯
  1. ^ Release 1.1.0. 2023年8月31日 [2023年9月18日]. 
  2. ^ brotli/README.md at master. 4 April 2017 [21 April 2017]. (原始內容存檔於2015-04-04) –透過GitHub. 
  3. ^ google/brotli - Brotli compression format. [11 August 2017]. (原始內容存檔於2016-06-29) –透過GitHub. 
  4. ^ RFC 7932 - Brotli Compressed Data Format. IETF. 2017-02-17 [2017-02-16]. (原始內容存檔於2017-01-29). 
  5. ^ Brotli Source Code - GitHub. github.com. [2016-07-01]. (原始內容存檔於2016-06-29). 
  6. ^ 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. ^ 7.0 7.1 Google Open Source Blog: Introducing Brotli: a new compression algorithm for the internet. [2016-07-01]. (原始內容存檔於2016-06-19). 
  8. ^ Smaller Fonts with WOFF 2.0 and unicode-range. Google Developers Blog. 18 Feb 2015 [20 Jan 2016]. (原始內容存檔於2016-03-04). 
  9. ^ Richard Chirgwin. Google's new squeeze: Brotli compression open-sourced. The Register. 23 September 2015 [2016-07-01]. (原始內容存檔於2016-05-02). 
  10. ^ 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). 
  11. ^ 谷歌新压缩算法因担心涉及性别歧视而改名. 開源中國社區. [2016-07-01]. (原始內容存檔於2016-05-07). 
  12. ^ Firefox 44 release notes. mozilla.org. [2016-01-26]. (原始內容存檔於2016-03-04). 
  13. ^ 13.0 13.1 13.2 Can I use... Support tables for HTML5, CSS3, etc. caniuse.com. [2016-01-07]. (原始內容存檔於2017-04-08). 

外部連結

編輯