Table of Contents

�1���� Scope
�2���� Normative references
�3���� Definitions
�4���� Abbreviations
�5���� Conventions
������� 5.1���� Conformance language
������� 5.2���� Operators
����������������� 5.2.1���� Arithmetic operators
���������������� �5.2.2���� Logical operators
����������������� 5.2.3���� Relational operators
����������������� 5.2.4���� Bit-wise operators
����������������� 5.2.5���� Assignment operators
����������������� 5.2.6���� Precedence order of operators
����������������� 5.2.7���� Pseudocode operations
����������������� 5.2.8���� Mathematical functions
������� 5.3���� Syntax and semantics notation
����������������� 5.3.1���� Method of specifying syntax in tabular form���
����������������� 5.3.2���� SYNTAX_ELEMENT_EXAMPLE semantics
����������������� 5.3.3���� Syntax functions
������� 5.4���� Formatting conventions
����������������� 5.4.1���� Variable and array naming conventions
����������������� 5.4.2���� Data structure naming conventions
����� ������������5.4.3���� Syntax element naming conventions
����������������� 5.4.4���� Syntax structure naming conventions
����������������� 5.4.5���� Naming conventions for mnemonic constants
����������������� 5.4.6���� Naming conventions for numerical values
����������������� 5.4.7���� Array dimensions convention
������� 5.5���� Global variables
����������������� 5.5.1���� Image variables
����������������� 5.5.2���� Image plane variables
����������������� 5.5.3���� Tile variables
����������������� 5.5.4���� Macroblock variables
����������������� 5.5.5���� Data structures for adaptive VLC table selection
����������������� 5.5.6���� Adaptive coefficient normalization data structure instances
����������������� 5.5.7���� Adaptive CBPHP prediction data structure instance
����������������� 5.5.8���� Adaptive count CBPLP variables
������� 5.6���� Adaptive VLC deltaDisc tables
������� 5.7���� Adaptive inverse scanning tables
�6���� Image and codestream structures
������� 6.1���� General
������� 6.2� ���Image planes and component arrays
������� 6.3���� Image windowing
������� 6.4���� Image partitioning
������� 6.5���� Transform coefficients and frequency bands
������� 6.6���� Codestream structure
������� 6.7���� Precision and word length
�7���� Overview of decoder
������� 7.1���� General
������� 7.2���� Overview of parsing process
����������������� 7.2.1���� Overview of image layer codestream parsing
����������������� 7.2.2���� Overview of tile layer codestream parsing
����������������� 7.2.3���� Overview of macroblock layer codestream parsing
������� 7.3���� Overview of the decoding process
����������������� 7.3.1���� Overview of coefficient mapping
����������������� 7.3.2���� Overview of coefficient prediction
����������������� 7.3.3��� �Overview of dequantization
����������������� 7.3.4���� Overview of sample reconstruction
����������������� 7.3.5���� Overview of output formatting
�8���� Syntax, semantics, and parsing process
������� 8.1���� General
������� 8.2���� CODED_IMAGE( )
����������������� 8.2.1���� Syntax structure
����������������� 8.2.2���� SubsequentBytes
����������������� 8.2.3���� RESERVED_A_BYTE
����������������� 8.2.4���� VLW_ESC( )
������� 8.3���� IMAGE_HEADER( )
����������������� 8.3.1���� Syntax structure
� ����������������8.3.2���� GDI_SIGNATURE
����������������� 8.3.3���� RESERVED_B��
����������������� 8.3.4���� HARD_TILING_FLAG��
����������������� 8.3.5���� RESERVED_C��
����������������� 8.3.6���� TILING_FLAG��
����������������� 8.3.7���� FREQUENCY_MODE_CODESTREAM_FLAG��
����������������� 8.3.8���� SPATIAL_XFRM_SUBORDINATE
����������������� 8.3.9���� INDEX_TABLE_PRESENT_FLAG��
����������������� 8.3.10���� OVERLAP_MODE
����������������� 8.3.11���� SHORT_HEADER_FLAG��
����������������� 8.3.12 ����LONG_WORD_FLAG��
����������������� 8.3.13���� WINDOWING_FLAG��
����������������� 8.3.14���� TRIM_FLEXBITS_FLAG��
����������������� 8.3.15���� RESERVED_D��
����������������� 8.3.16���� RED_BLUE_NOT_SWAPPED_FLAG��
����������������� 8.3.17���� PREMULTIPLIED_ALPHA_FLAG��
����������������� 8.3.18���� ALPHA_IMAGE_PLANE_FLAG��
����������������� 8.3.19���� OUTPUT_CLR_FMT
����������������� 8.3.20���� OUTPUT_BITDEPTH��
����������������� 8.3.21���� WIDTH_MINUS1
����������������� 8.3.22���� HEIGHT_MINUS1
�������������� ���8.3.23���� NUM_VER_TILES_MINUS1
����������������� 8.3.24���� NUM_HOR_TILES_MINUS1
����������������� 8.3.25���� TILE_WIDTH_IN_MB[n]
����������������� 8.3.26���� TILE_HEIGHT_IN_MB[n]
����������������� 8.3.27���� TOP_MARGIN��
����������������� 8.3.28�� ��LEFT_MARGIN��
����������������� 8.3.29���� BOTTOM_MARGIN��
����������������� 8.3.30���� RIGHT_MARGIN��
������� 8.4���� IMAGE_PLANE_HEADER( )
����������������� 8.4.1���� Syntax structure
����������������� 8.4.2���� INTERNAL_CLR_FMT
����������������� 8.4.3���� SCALED_FLAG��
����������������� 8.4.4���� BANDS_PRESENT
����������������� 8.4.5���� RESERVED_E_BIT
����������������� 8.4.6���� CHROMA_CENTERING_X
����������������� 8.4.7���� RESERVED_F
����������������� 8.4.8���� RESERVED_G_BIT
����������������� 8.4.9���� CHROMA_CENTERING_Y
����������������� 8.4.10���� RESERVED_H��
����������������� 8.4.11���� NUM_COMPONENTS_MINUS1
����������������� 8.4.12���� NUM_COMPONENTS_EXTENDED_MINUS16
����������������� 8.4.13���� SHIFT_BITS
����������������� 8.4.14���� LEN_MANTISSA��
����������������� 8.4.15���� EXP_BIAS
����������������� 8.4.16���� DC_IMAGE_PLANE_UNIFORM_FLAG��
����������������� 8.4.17���� RESERVED_I_BIT
����������������� 8.4.18���� LP_IMAGE_PLANE_UNIFORM_FLAG��
����������������� 8.4.19���� RESERVED_J_BIT
����������������� 8.4.20���� HP_IMAGE_PLANE_UNIFORM_FLAG��
����������������� 8.4.21���� BYTE_ALIGNMENT_BIT
����������������� 8.4.22���� DC_QP( )
����������������� 8.4.23���� LP_QP( )
����������������� 8.4.24���� HP_QP( )
������� 8.5���� INDEX_TABLE_TILES( )
����������������� 8.5.1���� Syntax structure
����������������� 8.5.2���� INDEX_TABLE_STARTCODE
����������������� 8.5.3���� IndexOffsetTile[n]
������� 8.6���� PROFILE_LEVEL_INFO( )
����������������� 8.6.1���� Syntax structure
���������������� �8.6.2���� PROFILE_IDC��
����������������� 8.6.3���� LEVEL_IDC��
����������������� 8.6.4���� RESERVED_L
����������������� 8.6.5���� LAST_FLAG��
������� 8.7���� CODED_TILES( )
����������������� 8.7.1���� Syntax structure
����������������� 8.7.2���� TILE_SPATIAL( )
����������������� 8.7.3���� TILE_DC( )
����������������� 8.7.4���� TILE_HEADER_DC( )
����������������� 8.7.5���� TILE_LOWPASS( )
����������������� 8.7.6���� TILE_HEADER_LOWPASS( )
����������������� 8.7.7���� TILE_HIGHPASS( )
���������������� �8.7.8���� TILE_HEADER_HIGHPASS( )
����������������� 8.7.9���� TILE_FLEXBITS( )
����������������� 8.7.10���� Tile-level semantics
����������������� 8.7.11���� MB_DC( )
����������������� 8.7.12���� DECODE_DC( )
����������������� 8.7.13���� DECODE_ABS_LEVEL( )
����������������� 8.7.14���� Macroblock DC( ) semantics
����������������� 8.7.15���� Macroblock low-pass
����������������� 8.7.16���� General
����������������� 8.7.17���� Coded block pattern high-pass (CBPHP)
����������������� 8.7.18���� Macroblock high-pass
����������������� 8.7.19���� Macroblock FLEXBITS
������� 8.8���� Adaptive VLC code table selection
����������������� 8.8.1���� General
����������������� 8.8.2���� Adaptive VLC deltaDisc tables
����������������� 8.8.3���� Initialization
����������������� 8.8.4���� Update of adaptive VLC code table selection
������� 8.9���� Adaptation of CBPLP state variables
����������������� 8.9.1���� General
����������������� 8.9.2���� InitializeCountCBPLP( )
����������������� 8.9.3�� ��UpdateCountCBPLP( )
������ 8.10���� Adaptive CBPHP prediction
����������������� 8.10.1���� InitializeCBPHPModel( )
����������������� 8.10.2���� UpdateCBPHPModel( )
������ 8.11���� Adaptive inverse scanning
����������������� 8.11.1���� Adaptive inverse scanning tables
����������������� 8.11.2���� InitializeAdaptiveScanLP( )
����������������� 8.11.3���� InitializeAdaptiveScanHP( )
����������������� 8.11.4���� ResetTotalsAdaptiveScanLP( )
����������������� 8.11.5���� ResetTotalsAdaptiveScanHP( )
����������������� 8.11.6���� AdaptiveLPScan( )
����������������� 8.11.7���� AdaptiveHPScan( )
������ 8.12���� Adaptive coefficient normalization
����������������� 8.12.1���� InitializeModelMB( )
����������������� 8.12.2���� UpdateModelMB( )
�9���� Decoding process
������� 9.1���� General
������� 9.2���� Image decoding
������� 9.3���� Image plane decoding
������� 9.4���� Tile transform coefficient processing
����������������� 9.4.1���� Overview��
����������������� 9.4.2���� DC transform coefficient decoding
����������������� 9.4.3���� Low-pass transform coefficient decoding
����������������� 9.4.4���� High-pass transform coefficient decoding
������� 9.5���� Coefficient remapping
����������������� 9.5.1���� DC coefficient remapping
����������������� 9.5.2���� Low-pass coefficient remapping
����������������� 9.5.3���� High-pass macroblock coefficient remapping
����������������� 9.5.4���� High-pass block coefficient remapping
������� 9.6���� Transform coefficient prediction
����������������� 9.6.1���� DC coefficient prediction
����������������� 9.6.2���� Low-pass prediction
����������������� 9.6.3���� High-pass prediction
������� 9.7���� Derivation of quantization parameters
����������������� 9.7.1���� Derivation of DC quantization parameters
����������������� 9.7.2���� Derivation of low-pass quantization parameters
����������������� 9.7.3���� Derivation of high-pass quantization parameters
������� 9.8���� Dequantization
����������������� 9.8.1���� Dequantization of DC coefficients
����������������� 9.8.2���� Dequantization of low-pass coefficients
����������������� 9.8.3���� Dequantization of high-pass coefficients
����������������� 9.8.4���� QuantMap( )
������� 9.9���� Sample reconstruction
� ����������������9.9.1���� Overview��
����������������� 9.9.2���� First level inverse transform���
����������������� 9.9.3���� First level overlap filtering
����������������� 9.9.4���� Second level coefficient combination
����������������� 9.9.5���� Second level inverse transform���
����������������� 9.9.6���� Second level overlap filtering
����������������� 9.9.7���� Inverse transform basic operations
����������������� 9.9.8���� Overlap filtering functions
������ 9.10���� Output formatting
��������������� ��9.10.1���� Overview��
����������������� 9.10.2���� Output formatting stage
����������������� 9.10.3���� Sampling conversion
����������������� 9.10.4���� Conversion from INTERNAL_CLR_FMT to OUTPUT_CLR_FMT
����������������� 9.10.5���� AddBias( )
������ �����������9.10.6���� ComputeScaling( )
����������������� 9.10.7���� Postscaling process
����������������� 9.10.8���� Clipping and packing stage
Annex A Tag-based file format����
������� A.1���� General
������� A.2���� Normative references
��������� ��������A.2.1���� Identical Recommendations | International Standards
����������������� A.2.2���� Paired Recommendations | International Standards equivalent in technical content
����������������� A.2.3���� Additional references
������� A.3���� Definitions
������� A.4���� Abbreviations
������� A.5���� FILE_HEADER( )
����������������� A.5.1���� Syntax structure
����������������� A.5.2���� FIXED_FILE_HEADER_II_2BYTES
����������������� A.5.3���� FIXED_FILE_HEADER_0XBC_BYTE
����������������� A.5.4���� FILE_VERSION_ID��
����������������� A.5.5���� FIRST_IFD_OFFSET
������� A.6���� IMAGE_FILE_DIRECTORY( )
����������������� A.6.1���� Syntax structure
����������������� A.6.2���� NUM_ENTRIES
����������������� A.6.3���� ZERO_OR_NEXT_IFD_OFFSET
������� A.7 ����IFD_ENTRY( )
����������������� A.7.1���� Syntax structure
����������������� A.7.2���� FIELD_TAG��
����������������� A.7.3���� ELEMENT_TYPE
����������������� A.7.4���� NUM_ELEMENTS
����������������� A.7.5���� VALUES_OR_OFFSET
����������������� A.7.6���� DOCUMENT_NAME
����������������� A.7.7���� IMAGE_DESCRIPTION��
����������������� A.7.8���� EQUIPMENT_MAKE
����������������� A.7.9���� EQUIPMENT_MODEL
����������������� A.7.10���� PAGE_NAME
����������������� A.7.11���� PAGE_NUMBER��
����������������� A.7.12���� SOFTWARE_NAME_VERSION��
����������������� A.7.13���� DATE_TIME
����������������� A.7.14���� ARTIST_NAME
����������������� A.7.15���� HOST_COMPUTER��
����������������� A.7.16���� COPYRIGHT_NOTICE
����������������� A.7.17���� COLOR_SPACE
������ �����������A.7.18���� PIXEL_FORMAT
����������������� A.7.19���� SPATIAL_XFRM_PRIMARY
����������������� A.7.20���� IMAGE_TYPE
����������������� A.7.21���� PTM_COLOR_INFO( )
����������������� A.7.22���� PROFILE_LEVEL_CONTAINER( )
����������������� A.7.23���� IMAGE_WIDTH��
����������������� A.7.24���� IMAGE_HEIGHT
����������������� A.7.25���� WIDTH_RESOLUTION��
����������������� A.7.26���� HEIGHT_RESOLUTION��
����������������� A.7.27���� IMAGE_OFFSET
����������������� A.7.28���� IMAGE_BYTE_COUNT
�������� ���������A.7.29���� ALPHA_OFFSET
����������������� A.7.30���� ALPHA_BYTE_COUNT
����������������� A.7.31���� IMAGE_BAND_PRESENCE
����������������� A.7.32���� ALPHA_BAND_PRESENCE
����������������� A.7.33���� PADDING_DATA��
Annex B Profiles and levels����
������� B.1���� General
������� B.2���� Profiles
����������������� B.2.1���� Sub-Baseline profile
����������������� B.2.2���� Baseline profile
����������������� B.2.3���� Main profile
����������������� B.2.4���� Advanced profile
����������������� B.2.5���� Reserved values of PROFILE_IDC��
������� B.3���� Levels
Annex C Color imagery representation and color management����
������� C.1���� Background information
������� C.2���� Color interpretation in the JPEG XR context
Annex D Encoder processing� ���
������� D.1���� Overview��
������� D.2���� Pre-scaling
������� D.3���� Color conversion
����������������� D.3.1���� General
����������������� D.3.2���� FwdColorFmtConvert1( )
����������������� D.3.3���� FwdColorFmtConvert2( )
����������������� D.3.4���� FwdColorFmtConvert3( )
����������������� D.3.5���� Macroblock alignment and padding
������� D.4���� Transform���
����������������� D.4.1���� T2x2h( )
����������������� D.4.2���� TOdd( )
����������������� D.4.3���� TOddOdd( )
����������������� D.4.4���� FwdPermute( )
����������������� D.4.5���� FCT operations
������� D.5���� Overlap pre-filtering
����������������� D.5.1���� Overview��
����������������� D.5.2���� OverlapPreFilter4( )
����������������� D.5.3���� OverlapPrefilter2x2
���������� �������D.5.4���� OverlapPreFilter2
������� D.6���� Coefficient prediction
������� D.7���� Coefficient scanning
������� D.8���� Quantization
������� D.9���� Adaptive coefficient normalization
Annex E Media type specification����
������� E.1���� General
������� E.2���� Media type specification template information
Bibliography����