J2K - JPEG-2000 codestream reader/writer

Classes

struct  opj_cp
struct  opj_j2k
struct  opj_stepsize
struct  opj_tccp
struct  opj_tcp

Defines

#define J2K_CCP_CBLKSTY_LAZY   0x01
#define J2K_CCP_CBLKSTY_PTERM   0x10
#define J2K_CCP_CBLKSTY_RESET   0x02
#define J2K_CCP_CBLKSTY_SEGSYM   0x20
#define J2K_CCP_CBLKSTY_TERMALL   0x04
#define J2K_CCP_CBLKSTY_VSC   0x08
#define J2K_CCP_CSTY_PRT   0x01
#define J2K_CCP_QNTSTY_NOQNT   0
#define J2K_CCP_QNTSTY_SEQNT   2
#define J2K_CCP_QNTSTY_SIQNT   1
#define J2K_CP_CSTY_EPH   0x04
#define J2K_CP_CSTY_PRT   0x01
#define J2K_CP_CSTY_SOP   0x02
#define J2K_MS_COC   0xff53
#define J2K_MS_COD   0xff52
#define J2K_MS_COM   0xff64
#define J2K_MS_CRG   0xff63
#define J2K_MS_EOC   0xffd9
#define J2K_MS_EPH   0xff92
#define J2K_MS_PLM   0xff57
#define J2K_MS_PLT   0xff58
#define J2K_MS_POC   0xff5f
#define J2K_MS_PPM   0xff60
#define J2K_MS_PPT   0xff61
#define J2K_MS_QCC   0xff5d
#define J2K_MS_QCD   0xff5c
#define J2K_MS_RGN   0xff5e
#define J2K_MS_SIZ   0xff51
#define J2K_MS_SOC   0xff4f
#define J2K_MS_SOD   0xff93
#define J2K_MS_SOP   0xff91
#define J2K_MS_SOT   0xff90
#define J2K_MS_TLM   0xff55

Typedefs

typedef enum J2K_STATUS J2K_STATUS
typedef enum T2_MODE J2K_T2_MODE
typedef struct opj_cp opj_cp_t
typedef struct opj_j2k opj_j2k_t
typedef struct opj_stepsize opj_stepsize_t
typedef struct opj_tccp opj_tccp_t
typedef struct opj_tcp opj_tcp_t

Enumerations

enum  J2K_STATUS {
  J2K_STATE_MHSOC = 0x0001,
  J2K_STATE_MHSIZ = 0x0002,
  J2K_STATE_MH = 0x0004,
  J2K_STATE_TPHSOT = 0x0008,
  J2K_STATE_TPH = 0x0010,
  J2K_STATE_MT = 0x0020,
  J2K_STATE_NEOC = 0x0040,
  J2K_STATE_ERR = 0x0080
}
enum  T2_MODE {
  THRESH_CALC = 0,
  FINAL_PASS = 1
}

Exported functions



char * j2k_convert_progression_order (OPJ_PROG_ORDER prg_order)
opj_j2k_tj2k_create_compress (opj_common_ptr cinfo)
opj_j2k_tj2k_create_decompress (opj_common_ptr cinfo)
opj_image_t * j2k_decode (opj_j2k_t *j2k, opj_cio_t *cio, opj_codestream_info_t *cstr_info)
opj_image_t * j2k_decode_jpt_stream (opj_j2k_t *j2k, opj_cio_t *cio, opj_codestream_info_t *cstr_info)
void j2k_destroy_compress (opj_j2k_t *j2k)
void j2k_destroy_decompress (opj_j2k_t *j2k)
bool j2k_encode (opj_j2k_t *j2k, opj_cio_t *cio, opj_image_t *image, opj_codestream_info_t *cstr_info)
void j2k_setup_decoder (opj_j2k_t *j2k, opj_dparameters_t *parameters)
void j2k_setup_encoder (opj_j2k_t *j2k, opj_cparameters_t *parameters, opj_image_t *image)

Detailed Description


Define Documentation

#define J2K_CCP_CBLKSTY_LAZY   0x01
#define J2K_CCP_CBLKSTY_PTERM   0x10
#define J2K_CCP_CBLKSTY_RESET   0x02
#define J2K_CCP_CBLKSTY_SEGSYM   0x20
#define J2K_CCP_CBLKSTY_TERMALL   0x04
#define J2K_CCP_CBLKSTY_VSC   0x08
#define J2K_CCP_CSTY_PRT   0x01
#define J2K_CCP_QNTSTY_NOQNT   0
#define J2K_CCP_QNTSTY_SEQNT   2
#define J2K_CCP_QNTSTY_SIQNT   1
#define J2K_CP_CSTY_EPH   0x04
#define J2K_CP_CSTY_PRT   0x01
#define J2K_CP_CSTY_SOP   0x02
#define J2K_MS_COC   0xff53

COC marker value

#define J2K_MS_COD   0xff52

COD marker value

#define J2K_MS_COM   0xff64

COM marker value

#define J2K_MS_CRG   0xff63

CRG marker value

#define J2K_MS_EOC   0xffd9

EOC marker value

#define J2K_MS_EPH   0xff92

EPH marker value

#define J2K_MS_PLM   0xff57

PLM marker value

#define J2K_MS_PLT   0xff58

PLT marker value

#define J2K_MS_POC   0xff5f

POC marker value

#define J2K_MS_PPM   0xff60

PPM marker value

#define J2K_MS_PPT   0xff61

PPT marker value

#define J2K_MS_QCC   0xff5d

QCC marker value

#define J2K_MS_QCD   0xff5c

QCD marker value

#define J2K_MS_RGN   0xff5e

RGN marker value

#define J2K_MS_SIZ   0xff51

SIZ marker value

#define J2K_MS_SOC   0xff4f

SOC marker value

#define J2K_MS_SOD   0xff93

SOD marker value

#define J2K_MS_SOP   0xff91

SOP marker value

#define J2K_MS_SOT   0xff90

SOT marker value

#define J2K_MS_TLM   0xff55

TLM marker value


Typedef Documentation

typedef enum J2K_STATUS J2K_STATUS

Values that specify the status of the decoding process when decoding the main header. These values may be combined with a | operator.

typedef enum T2_MODE J2K_T2_MODE

T2 encoding mode

typedef struct opj_cp opj_cp_t

Coding parameters

typedef struct opj_j2k opj_j2k_t

JPEG-2000 codestream reader/writer

typedef struct opj_stepsize opj_stepsize_t

Quantization stepsize

typedef struct opj_tccp opj_tccp_t

Tile-component coding parameters

typedef struct opj_tcp opj_tcp_t

Tile coding parameters : this structure is used to store coding/decoding parameters common to all tiles (information like COD, COC in main header)


Enumeration Type Documentation

enum J2K_STATUS

Values that specify the status of the decoding process when decoding the main header. These values may be combined with a | operator.

Enumerator:
J2K_STATE_MHSOC 

a SOC marker is expected

J2K_STATE_MHSIZ 

a SIZ marker is expected

J2K_STATE_MH 

the decoding process is in the main header

J2K_STATE_TPHSOT 

the decoding process is in a tile part header and expects a SOT marker

J2K_STATE_TPH 

the decoding process is in a tile part header

J2K_STATE_MT 

the EOC marker has just been read

J2K_STATE_NEOC 

the decoding process must not expect a EOC marker because the codestream is truncated

J2K_STATE_ERR 

the decoding process has encountered an error

enum T2_MODE

T2 encoding mode

Enumerator:
THRESH_CALC 
FINAL_PASS 

Function called in Rate allocation process


Function Documentation

char* j2k_convert_progression_order ( OPJ_PROG_ORDER  prg_order  ) 

Converts an enum type progression order to string type

opj_j2k_t* j2k_create_compress ( opj_common_ptr  cinfo  ) 

Creates a J2K compression structure

Parameters:
cinfo Codec context info
Returns:
Returns a handle to a J2K compressor if successful, returns NULL otherwise
opj_j2k_t* j2k_create_decompress ( opj_common_ptr  cinfo  ) 

Creates a J2K decompression structure

Parameters:
cinfo Codec context info
Returns:
Returns a handle to a J2K decompressor if successful, returns NULL otherwise
opj_image_t* j2k_decode ( opj_j2k_t j2k,
opj_cio_t *  cio,
opj_codestream_info_t *  cstr_info 
)

Decode an image from a JPEG-2000 codestream

Parameters:
j2k J2K decompressor handle
cio Input buffer stream
cstr_info Codestream information structure if required, NULL otherwise
Returns:
Returns a decoded image if successful, returns NULL otherwise
opj_image_t* j2k_decode_jpt_stream ( opj_j2k_t j2k,
opj_cio_t *  cio,
opj_codestream_info_t *  cstr_info 
)

Decode an image form a JPT-stream (JPEG 2000, JPIP)

Parameters:
j2k J2K decompressor handle
cio Input buffer stream
cstr_info Codestream information structure if required, NULL otherwise
Returns:
Returns a decoded image if successful, returns NULL otherwise
void j2k_destroy_compress ( opj_j2k_t j2k  ) 

Destroy a J2K compressor handle

Parameters:
j2k J2K compressor handle to destroy
void j2k_destroy_decompress ( opj_j2k_t j2k  ) 

Destroy a J2K decompressor handle

Parameters:
j2k J2K decompressor handle to destroy
bool j2k_encode ( opj_j2k_t j2k,
opj_cio_t *  cio,
opj_image_t *  image,
opj_codestream_info_t *  cstr_info 
)

Encode an image into a JPEG-2000 codestream

Parameters:
j2k J2K compressor handle
cio Output buffer stream
image Image to encode
cstr_info Codestream information structure if required, NULL otherwise
Returns:
Returns true if successful, returns false otherwise
void j2k_setup_decoder ( opj_j2k_t j2k,
opj_dparameters_t *  parameters 
)

Setup the decoder decoding parameters using user parameters. Decoding parameters are returned in j2k->cp.

Parameters:
j2k J2K decompressor handle
parameters decompression parameters
void j2k_setup_encoder ( opj_j2k_t j2k,
opj_cparameters_t *  parameters,
opj_image_t *  image 
)

Setup the encoder parameters using the current image and using user parameters. Coding parameters are returned in j2k->cp.

Parameters:
j2k J2K compressor handle
parameters compression parameters
image input filled image

Generated on Thu Mar 4 16:20:46 2010 for GDCM by doxygen 1.6.3
SourceForge.net Logo