ix G respectively, which are completed by default with exponential-Golomb coding. 49 key result is that the combined features of H.264/AVC make it possible to obtain the same quality as MPEG-2 at half the bit rate or even less. As with MPEG-2, there exist a range of "profiles" and "levels" adapted for each consumer-electronics or professional application: 3G mobile, video telephony, videoconferencing, broadcast television, Inter- net video streaming, CD storage, etc. The controversial format DivX, which has been dubbed "the MP3 of video," was designed in early 2000. It capitalizes on the afore- mentioned MPEG-4 Part 2 video compression features, balancing video quality against file size.50 The end result is the possibility of squeezing an entire DVD content into a (700-800 Mbyte) data CD, without perceptible loss of quality. 49 See, for instance: http://en.wikipedia.org/wiki/Exponential-Golomb_coding. See, for instance: http://en.wikipedia.org/wiki/DivX Appendix H (Chapter 10) Arithmetic coding algorithm In this appendix, I derive a generic algorithm to compute the real intervals [u, V)N corresponding to the arithmetic coding of any string of N symbols defined by a1a2...AN, where ak belongs to the n-events source X = {X1,X2,..., xn} with associated probability distribution px = {p(x1) p(xn)}. I will use index k to designate the symbol position in the string, and index i to designate the value Xi of this symbol. By convention, the symbol Xn is exclusively used for signaling string termination. For easier reading, I shall use the notation (u, v) to designate the intervals instead of the cumbersome [u, v). To build the algorithm, consider first the simple example of a source X = {x1, X2, x3} and strings with lengths up to N = 2. According to the arithmetic coding, and as shown in Fig. H1, the initial interval I = [0, 1) = (0,1) is divided into the three subintervals I 1 = I2 = (p(x1), p(x1) + p(x2)), I3 = (p(x1) + p(x2), 1), with I. By convention, all complete strings should end with the symbol X3. The three possibl