**ISO/IEC 10918-1 : 1993(E)**

**Annex F**

**Sequential DCT-based mode of operation**

(This annex forms an integral part of this Recommendation | International Standard)

ISO/IEC 10918-1 : 1993(E)

CCITT Rec. T.81 (1992 E)

This annex provides a **functional specification** of the following coding processes for the sequential DCT-based mode of

operation:

1)

baseline sequential;

2)

extended sequential, Huffman coding, 8-bit sample precision;

3)

extended sequential, arithmetic coding, 8-bit sample precision;

4)

extended sequential, Huffman coding, 12-bit sample precision;

5)

extended sequential, arithmetic coding, 12-bit sample precision.

For each of these, the encoding process is specified in F.1, and the decoding process is specified in F.2. The functional

specification is presented by means of specific flow charts for the various procedures which comprise these coding

processes.

NOTE There is **no requirement** in this Specification that any encoder or decoder which embodies one of the above-named

processes shall implement the procedures in precisely the manner specified by the flow charts in this annex. It is necessary only that an

encoder or decoder implement the **function** specified in this annex. The sole criterion for an encoder or decoder to be considered in

compliance with this Specification is that it satisfy the requirements given in clause 6 (for encoders) or clause 7 (for decoders), as

determined by the compliance tests specified in Part 2.

**F.1**

**Sequential DCT-based encoding processes**

**F.1.1**

**Sequential DCT-based control procedures and coding models**

**F.1.1.1**

**Control procedures for sequential DCT-based encoders**

The control procedures for encoding an image and its constituent parts the frame, scan, restart interval and

MCU are given in Figures E.1 to E.5. The procedure for encoding a MCU (see Figure E.5) repetitively calls the

procedure for encoding a data unit. For DCT-based encoders the data unit is an 8

×

8 block of samples.

**F.1.1.2**

**Procedure for encoding an 8 **

×

×

** 8 block data unit**

For the sequential DCT-based processes encoding an 8

×

8 block data unit consists of the following procedures:

a)

level shift, calculate forward 8

×

8 DCT and quantize the resulting coefficients using table destination

specified in frame header;

b)

encode DC coefficient for 8

×

8 block using DC table destination specified in scan header;

c)

encode AC coefficients for 8

×

8 block using AC table destination specified in scan header.

**F.1.1.3**

**Level shift and forward DCT (FDCT)**

The mathematical definition of the FDCT is given in A.3.3.

Prior to computing the FDCT the input data are level shifted to a signed two's complement representation as described in

A.3.1. For 8-bit input precision the level shift is achieved by subtracting 128. For 12-bit input precision the level shift is

achieved by subtracting 2048.

**F.1.1.4**

**Quantization of the FDCT**

The uniform quantization procedure described in Annex A is used to quantize the DCT coefficients. One of four

quantization tables may be used by the encoder. No default quantization tables are specified in this Specification.

However, some typical quantization tables are given in Annex K.

The quantized DCT coefficient values are signed, two's complement integers with 11-bit precision for 8-bit input

precision and 15-bit precision for 12-bit input precision.

**CCITT Rec. T.81 (1992 E)**

**87**