JPEG2000 tables. More...

#include "mqc.h"
#include "j2k_dwt.h"
Include dependency graph for j2k.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  J2kT1Context
 
struct  J2kTgtNode
 
struct  J2kCodingStyle
 
struct  J2kQuantStyle
 
struct  J2kPass
 
struct  J2kCblk
 
struct  J2kPrec
 
struct  J2kBand
 
struct  J2kResLevel
 
struct  J2kComponent
 

Macros

#define J2K_MAX_CBLKW   64
 
#define J2K_MAX_CBLKH   64
 
#define J2K_T1_SIG_N   0x0001
 
#define J2K_T1_SIG_E   0x0002
 
#define J2K_T1_SIG_W   0x0004
 
#define J2K_T1_SIG_S   0x0008
 
#define J2K_T1_SIG_NE   0x0010
 
#define J2K_T1_SIG_NW   0x0020
 
#define J2K_T1_SIG_SE   0x0040
 
#define J2K_T1_SIG_SW   0x0080
 
#define J2K_T1_SIG_NB
 
#define J2K_T1_SGN_N   0x0100
 
#define J2K_T1_SGN_S   0x0200
 
#define J2K_T1_SGN_W   0x0400
 
#define J2K_T1_SGN_E   0x0800
 
#define J2K_T1_VIS   0x1000
 
#define J2K_T1_SIG   0x2000
 
#define J2K_T1_REF   0x4000
 
#define J2K_T1_SGN   0x8000
 
#define J2K_CBLK_BYPASS   0x01
 
#define J2K_CBLK_RESET   0x02
 
#define J2K_CBLK_TERMALL   0x04
 
#define J2K_CBLK_VSC   0x08
 
#define J2K_CBLK_PREDTERM   0x10
 
#define J2K_CBLK_SEGSYM   0x20
 
#define J2K_CSTY_PREC   0x01
 
#define J2K_CSTY_SOP   0x02
 
#define J2K_CSTY_EPH   0x04
 

Typedefs

typedef struct J2kTgtNode J2kTgtNode
 

Enumerations

enum  J2kMarkers {
  J2K_SOC = 0xff4f, J2K_SIZ = 0xff51, J2K_COD, J2K_COC,
  J2K_TLM = 0xff55, J2K_PLM = 0xff57, J2K_PLT, J2K_QCD = 0xff5c,
  J2K_QCC, J2K_RGN, J2K_POC, J2K_PPM,
  J2K_PPT, J2K_CRG = 0xff63, J2K_COM, J2K_SOT = 0xff90,
  J2K_SOP, J2K_EPH, J2K_SOD, J2K_EOC = 0xffd9
}
 
enum  J2kQuantsty { J2K_QSTY_NONE, J2K_QSTY_SI, J2K_QSTY_SE }
 

Functions

static int ff_j2k_ceildivpow2 (int a, int b)
 
static int ff_j2k_ceildiv (int a, int b)
 
J2kTgtNodeff_j2k_tag_tree_init (int w, int h)
 
void ff_j2k_init_tier1_luts (void)
 
void ff_j2k_set_significant (J2kT1Context *t1, int x, int y, int negative)
 
static int ff_j2k_getnbctxno (int flag, int bandno, int vert_causal_ctx_csty_symbol)
 
static int ff_j2k_getrefctxno (int flag)
 
static int ff_j2k_getsgnctxno (int flag, int *xorbit)
 
int ff_j2k_init_component (J2kComponent *comp, J2kCodingStyle *codsty, J2kQuantStyle *qntsty, int cbps, int dx, int dy)
 
void ff_j2k_reinit (J2kComponent *comp, J2kCodingStyle *codsty)
 
void ff_j2k_cleanup (J2kComponent *comp, J2kCodingStyle *codsty)
 

Variables

uint8_t ff_j2k_nbctxno_lut [256][4]
 
uint8_t ff_j2k_sgnctxno_lut [16][16]
 
uint8_t ff_j2k_xorbit_lut [16][16]
 

Detailed Description

JPEG2000 tables.

Author
Kamil Nowosad

Definition in file j2k.h.

Macro Definition Documentation

#define J2K_CBLK_BYPASS   0x01

Definition at line 91 of file j2k.h.

Referenced by decode_cblk().

#define J2K_CBLK_PREDTERM   0x10

Definition at line 95 of file j2k.h.

#define J2K_CBLK_RESET   0x02

Definition at line 92 of file j2k.h.

#define J2K_CBLK_SEGSYM   0x20

Definition at line 96 of file j2k.h.

Referenced by decode_cblk().

#define J2K_CBLK_TERMALL   0x04

Definition at line 93 of file j2k.h.

#define J2K_CBLK_VSC   0x08

Definition at line 94 of file j2k.h.

Referenced by decode_cblk().

#define J2K_CSTY_EPH   0x04

Definition at line 101 of file j2k.h.

Referenced by decode_packet().

#define J2K_CSTY_PREC   0x01

Definition at line 99 of file j2k.h.

Referenced by get_cox().

#define J2K_CSTY_SOP   0x02

Definition at line 100 of file j2k.h.

#define J2K_MAX_CBLKH   64

Definition at line 64 of file j2k.h.

#define J2K_MAX_CBLKW   64

Definition at line 63 of file j2k.h.

#define J2K_T1_REF   0x4000

Definition at line 86 of file j2k.h.

Referenced by decode_refpass(), and encode_refpass().

#define J2K_T1_SGN   0x8000

Definition at line 88 of file j2k.h.

Referenced by encode_cblk().

#define J2K_T1_SGN_E   0x0800

Definition at line 82 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getsgnctxno().

#define J2K_T1_SGN_N   0x0100

Definition at line 79 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getsgnctxno().

#define J2K_T1_SGN_S   0x0200

Definition at line 80 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getsgnctxno().

#define J2K_T1_SGN_W   0x0400

Definition at line 81 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getsgnctxno().

#define J2K_T1_SIG   0x2000
#define J2K_T1_SIG_E   0x0002

Definition at line 69 of file j2k.h.

Referenced by ff_j2k_set_significant(), getnbctxno(), and getsgnctxno().

#define J2K_T1_SIG_N   0x0001

Definition at line 68 of file j2k.h.

Referenced by ff_j2k_set_significant(), getnbctxno(), and getsgnctxno().

#define J2K_T1_SIG_NB
Value:
#define J2K_T1_SIG_NE
Definition: j2k.h:72
#define J2K_T1_SIG_S
Definition: j2k.h:71
#define J2K_T1_SIG_E
Definition: j2k.h:69
#define J2K_T1_SIG_SW
Definition: j2k.h:75
#define J2K_T1_SIG_N
Definition: j2k.h:68
#define J2K_T1_SIG_W
Definition: j2k.h:70
#define J2K_T1_SIG_SE
Definition: j2k.h:74
#define J2K_T1_SIG_NW
Definition: j2k.h:73

Definition at line 76 of file j2k.h.

Referenced by decode_clnpass(), decode_sigpass(), encode_clnpass(), and encode_sigpass().

#define J2K_T1_SIG_NE   0x0010

Definition at line 72 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getnbctxno().

#define J2K_T1_SIG_NW   0x0020

Definition at line 73 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getnbctxno().

#define J2K_T1_SIG_S   0x0008

Definition at line 71 of file j2k.h.

Referenced by ff_j2k_set_significant(), getnbctxno(), and getsgnctxno().

#define J2K_T1_SIG_SE   0x0040

Definition at line 74 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getnbctxno().

#define J2K_T1_SIG_SW   0x0080

Definition at line 75 of file j2k.h.

Referenced by ff_j2k_set_significant(), and getnbctxno().

#define J2K_T1_SIG_W   0x0004

Definition at line 70 of file j2k.h.

Referenced by ff_j2k_set_significant(), getnbctxno(), and getsgnctxno().

#define J2K_T1_VIS   0x1000

Typedef Documentation

typedef struct J2kTgtNode J2kTgtNode

Enumeration Type Documentation

enum J2kMarkers
Enumerator
J2K_SOC 

start of codestream

J2K_SIZ 

image and tile size

J2K_COD 

coding style default

J2K_COC 

coding style component

J2K_TLM 

packed packet headers, tile-part header

J2K_PLM 

tile-part lengths

J2K_PLT 

packet length, main header

J2K_QCD 

quantization default

J2K_QCC 

quantization component

J2K_RGN 

region of interest

J2K_POC 

progression order change

J2K_PPM 

packet length, tile-part header

J2K_PPT 

packed packet headers, main header

J2K_CRG 

component registration

J2K_COM 

comment

J2K_SOT 

start of tile-part

J2K_SOP 

start of packet

J2K_EPH 

end of packet header

J2K_SOD 

start of data

J2K_EOC 

end of codestream

Definition at line 34 of file j2k.h.

Enumerator
J2K_QSTY_NONE 

quantization style

no quantization

J2K_QSTY_SI 

scalar derived

J2K_QSTY_SE 

scalar expoounded

Definition at line 57 of file j2k.h.

Function Documentation

static int ff_j2k_ceildiv ( int  a,
int  b 
)
inlinestatic

Definition at line 196 of file j2k.h.

Referenced by decode_tile(), encode_tile(), ff_j2k_init_component(), get_siz(), and init_tiles().

static int ff_j2k_ceildivpow2 ( int  a,
int  b 
)
inlinestatic

Definition at line 191 of file j2k.h.

Referenced by ff_j2k_init_component(), and init_tiles().

void ff_j2k_cleanup ( J2kComponent comp,
J2kCodingStyle codsty 
)

Definition at line 369 of file j2k.c.

Referenced by cleanup(), and ff_j2k_getsgnctxno().

static int ff_j2k_getnbctxno ( int  flag,
int  bandno,
int  vert_causal_ctx_csty_symbol 
)
inlinestatic

Definition at line 211 of file j2k.h.

Referenced by decode_clnpass(), decode_sigpass(), encode_clnpass(), and encode_sigpass().

static int ff_j2k_getrefctxno ( int  flag)
inlinestatic

Definition at line 216 of file j2k.h.

Referenced by decode_refpass(), and encode_refpass().

static int ff_j2k_getsgnctxno ( int  flag,
int *  xorbit 
)
inlinestatic

Definition at line 224 of file j2k.h.

Referenced by decode_clnpass(), decode_sigpass(), encode_clnpass(), and encode_sigpass().

int ff_j2k_init_component ( J2kComponent comp,
J2kCodingStyle codsty,
J2kQuantStyle qntsty,
int  cbps,
int  dx,
int  dy 
)

Definition at line 202 of file j2k.c.

Referenced by ff_j2k_getsgnctxno(), init_tile(), and init_tiles().

void ff_j2k_init_tier1_luts ( void  )

Definition at line 170 of file j2k.c.

Referenced by ff_j2k_ceildiv(), j2kdec_init(), and j2kenc_init().

void ff_j2k_reinit ( J2kComponent comp,
J2kCodingStyle codsty 
)

Definition at line 348 of file j2k.c.

Referenced by ff_j2k_getsgnctxno(), and reinit().

void ff_j2k_set_significant ( J2kT1Context t1,
int  x,
int  y,
int  negative 
)

Definition at line 181 of file j2k.c.

Referenced by decode_clnpass(), decode_sigpass(), encode_clnpass(), encode_sigpass(), and ff_j2k_ceildiv().

J2kTgtNode* ff_j2k_tag_tree_init ( int  w,
int  h 
)

Definition at line 67 of file j2k.c.

Referenced by ff_j2k_ceildiv(), and ff_j2k_init_component().

Variable Documentation

uint8_t ff_j2k_nbctxno_lut[256][4]

Definition at line 106 of file j2k.c.

Referenced by ff_j2k_ceildiv(), ff_j2k_getnbctxno(), and ff_j2k_init_tier1_luts().

uint8_t ff_j2k_sgnctxno_lut[16][16]

Definition at line 153 of file j2k.c.

Referenced by ff_j2k_getrefctxno(), ff_j2k_getsgnctxno(), and ff_j2k_init_tier1_luts().

uint8_t ff_j2k_xorbit_lut[16][16]

Definition at line 153 of file j2k.c.

Referenced by ff_j2k_getrefctxno(), ff_j2k_getsgnctxno(), and ff_j2k_init_tier1_luts().