Au début des années 1990, la méthode sans perte dominante, LZW (utilisée par compress sous Unix et par GIF), était protégée par un brevet d'Unisys, le brevet américain 4 558 302. L'utilitaire compress fondé sur LZW a même disparu de nombreuses distributions Unix à cause du brevet et parce que gzip le surpassait en taux de compression.
Le Deflate de Phil Katz, livré dans PKZIP 2 en 1990, associait des références arrière de chaînes LZ77 à des arbres de Huffman à codage entropique. Il a breveté son encodeur mais a publié le format Deflate sous forme de RFC 1951, décrivant un flux que tout implémenteur pouvait produire.
Cette séparation a compté : le format Deflate pouvait être utilisé sans licence. En 1993-94, Unisys a entrepris de faire appliquer des redevances de licence sur LZW dans GIF, ce qui a poussé le marché vers des formats exempts de brevets et a contribué à la création de PNG, qui utilise Deflate.
Il en est résulté que Deflate, et non LZW, est devenu la compression par défaut du web et perdure dans ZIP, gzip, zlib, PNG et PDF, dont le format par défaut est Deflate plutôt que LZW.
Publier le format gratuitement ; conserver le brevet sur l'encodeur
La compression LZW était verrouillée par un brevet d'Unisys que son titulaire a ensuite fait appliquer
Publier le format Deflate sous forme de RFC a rendu son implémentation exempte de licence
Un format gratuit constituait un choix par défaut sûr pour les développeurs confrontés au maquis des brevets
gzip surpassait aussi compress en taux de compression, si bien que le changement était bénéfique, et pas seulement sûr
Si vous pouvez séparer le format de l'encodeur, cédez le format : une spécification libre de redevances capte l'ensemble du marché, tout en conservant le brevet sur votre implémentation particulière.
Suites
Deflate est devenu la base de gzip, zlib, PNG et de l'archive ZIP, et constitue la compression par défaut utilisée dans PDF pour une grande partie des données textuelles. Le brevet LZW d'Unisys a expiré aux États-Unis en juin 2003, mais à cette date, le format Deflate gratuit avait déjà remporté la place par défaut.
VÉRIFIEZ LES SOURCES
Les sources
- DEFLATE Compressed Data Format Specification (RFC 1951) IETF / rfc-editor.org · rfc-editor.org
- Deflate — Wikipedia Wikipedia · en.wikipedia.org
- LZW — Wikipedia (patents) Wikipedia · en.wikipedia.org