Chapter 4

Arithmetic Coding

Abstract

In this chapter, we introduce an increasingly popular method of generating variable-length codes called arithmetic coding. Arithmetic coding is especially useful when dealing with sources with small alphabets, such as binary sources, and alphabets with highly skewed probabilities. It is also a very useful approach when, for various reasons, the modeling and coding aspects of lossless compression are to be kept separate. In this chapter, we look at the basic ideas behind arithmetic coding, study some of the properties of arithmetic codes, and describe an implementation.

Keywords

Arithmetic code; Tag; Adaptive arithmetic code; QM coder; MQ coder; CABAC

4.1 Overview

In his classic 1948 paper Shannon ...

Get Introduction to Data Compression, 5th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.