本頁使用了標題或全文手工轉換

Brotli

維基百科,自由的百科全書
跳至導覽 跳至搜尋
Brotli
Brotli
開發者 Jyrki Alakuijala和Zoltán Szabadka
穩定版本
1.0.2
(2017年9月29日,​21個月前​(2017-09-29[1]
原始碼庫 編輯維基數據連結
程式語言 C[2][a]
網站 github.com/google/brotli 編輯維基數據連結

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

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. ^ Releases - google/brotli. [21 April 2017] –通過GitHub. 
  2. ^ brotli/README.md at master. 4 April 2017 [21 April 2017] –通過GitHub. 
  3. ^ google/brotli - Brotli compression format. [11 August 2017] –通過GitHub. 
  4. ^ RFC 7932 - Brotli Compressed Data Format. IETF. 2017-02-17. 
  5. ^ Brotli Source Code - GitHub. github.com. 
  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]. 
  7. ^ 7.0 7.1 Google Open Source Blog: Introducing Brotli: a new compression algorithm for the internet
  8. ^ Smaller Fonts with WOFF 2.0 and unicode-range. Google Developers Blog. 18 Feb 2015 [20 Jan 2016]. 
  9. ^ Richard Chirgwin. Google's new squeeze: Brotli compression open-sourced. The Register. 23 September 2015. 
  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]. 
  11. ^ 谷歌新壓縮算法因擔心涉及性別歧視而改名. 開源中國社群. [2016-07-01]. 
  12. ^ Firefox 44 release notes. mozilla.org. [2016-01-26]. 
  13. ^ 13.0 13.1 13.2 Can I use... Support tables for HTML5, CSS3, etc. caniuse.com. [2016-01-07]. 

外部連結[編輯]