1.1.1            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 lowpass 
                  8.7.16     General
                  8.7.17     Coded block pattern highpass (CBPHP) 
                  8.7.18     Macroblock highpass 
                  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     Lowpass transform coefficient decoding 
                  9.4.4     Highpass transform coefficient decoding 
        9.5     Coefficient remapping 
                  9.5.1     DC coefficient remapping 
                  9.5.2     Lowpass coefficient remapping 
                  9.5.3     Highpass macroblock coefficient remapping 
                  9.5.4     Highpass block coefficient remapping 
        9.6     Transform coefficient prediction  
                  9.6.1     DC coefficient prediction  
                  9.6.2     Lowpass prediction  
                  9.6.3     Highpass prediction  
        9.7     Derivation of quantization parameters 
                  9.7.1     Derivation of DC quantization parameters 
                  9.7.2     Derivation of lowpass quantization parameters 
                  9.7.3     Derivation of highpass quantization parameters 
        9.8     Dequantization  
                  9.8.1     Dequantization of DC coefficients 
                  9.8.2     Dequantization of lowpass coefficients 
                  9.8.3     Dequantization of highpass 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 Colour imagery representation and colour management    
        C.1     Background information  
        C.2     Colour interpretation in the JPEG XR context 
Annex D Encoder processing    
        D.1     Overview   
        D.2     Pre-scaling 
        D.3     Colour 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 for the Annex A tag-based file format    
        E.1     General
        E.2     Registration  
Annex F Storage in the ISO/IEC 23008-12 image file format and associated media type registrations    
        F.1     General
        F.2     Normative references 
                  F.2.1     Identical Recommendations | International Standards 
                  F.2.2     Paired Recommendations | International Standards equivalent in technical content 
                  F.2.3     Additional references 
        F.3     JPEG XR images and image collections 
                  F.3.1     General
                  F.3.2     Image data 
                  F.3.3     JPEG XR header item property 
                  F.3.4     JPEG XR info item property 
                  F.3.5     JPEG XR profile item property 
        F.4     JPEG XR image sequences 
                  F.4.1     General
                  F.4.2     Derivation from ISO/IEC 14496-12 and Rec. ITU-T T.833 | ISO/IEC 29199-3 
        F.5     JPEG XR-specific brands 
                  F.5.1     JPEG XR image and image collection brands 
                  F.5.2     JPEG XR image sequence brands 
        F.6     Media type registration for JPEG XR coded images and image collections in the ISO/IEC 23008-12 image file format    
                  F.6.1     General
                  F.6.2     Registration  
        F.7     Media type registration for JPEG XR coded image sequences in the ISO/IEC 23008-12 file format    
                  F.7.1     General
                  F.7.2     Registration  
Bibliography