OpenJPEG: j2k.h Source File

OpenJPEG 2.1.0

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

j2k.h
Go to the documentation of this file.
1 /*
2 * The copyright in this software is being made available under the 2-clauses
3 * BSD License, included below. This software may be subject to other third
4 * party and contributor rights, including patent rights, and no such rights
5 * are granted under this license.
6 *
7 * Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium
8 * Copyright (c) 2002-2014, Professor Benoit Macq
9 * Copyright (c) 2001-2003, David Janssens
10 * Copyright (c) 2002-2003, Yannick Verschueren
11 * Copyright (c) 2003-2007, Francois-Olivier Devaux
12 * Copyright (c) 2003-2014, Antonin Descampe
13 * Copyright (c) 2005, Herve Drolon, FreeImage Team
14 * Copyright (c) 2006-2007, Parvatha Elangovan
15 * Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>
16 * Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France
17 * Copyright (c) 2012, CS Systemes d'Information, France
18 *
19 * All rights reserved.
20 *
21 * Redistribution and use in source and binary forms, with or without
22 * modification, are permitted provided that the following conditions
23 * are met:
24 * 1. Redistributions of source code must retain the above copyright
25 * notice, this list of conditions and the following disclaimer.
26 * 2. Redistributions in binary form must reproduce the above copyright
27 * notice, this list of conditions and the following disclaimer in the
28 * documentation and/or other materials provided with the distribution.
29 *
30 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
31 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
32 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
33 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
34 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
35 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
36 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
37 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
38 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
39 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
40 * POSSIBILITY OF SUCH DAMAGE.
41 */
42 #ifndef __J2K_H
43 #define __J2K_H
44
53
54 #define J2K_CP_CSTY_PRT 0x01
55 #define J2K_CP_CSTY_SOP 0x02
56 #define J2K_CP_CSTY_EPH 0x04
57 #define J2K_CCP_CSTY_PRT 0x01
58 #define J2K_CCP_CBLKSTY_LAZY 0x01
59 #define J2K_CCP_CBLKSTY_RESET 0x02
60 #define J2K_CCP_CBLKSTY_TERMALL 0x04
61 #define J2K_CCP_CBLKSTY_VSC 0x08
62 #define J2K_CCP_CBLKSTY_PTERM 0x10
63 #define J2K_CCP_CBLKSTY_SEGSYM 0x20
64 #define J2K_CCP_QNTSTY_NOQNT 0
65 #define J2K_CCP_QNTSTY_SIQNT 1
66 #define J2K_CCP_QNTSTY_SEQNT 2
67
68 #define OPJ_J2K_DEFAULT_CBLK_DATA_SIZE 8192
69
70 /* ----------------------------------------------------------------------- */
71
72 #define J2K_MS_SOC 0xff4f
73 #define J2K_MS_SOT 0xff90
74 #define J2K_MS_SOD 0xff93
75 #define J2K_MS_EOC 0xffd9
76 #define J2K_MS_SIZ 0xff51
77 #define J2K_MS_COD 0xff52
78 #define J2K_MS_COC 0xff53
79 #define J2K_MS_RGN 0xff5e
80 #define J2K_MS_QCD 0xff5c
81 #define J2K_MS_QCC 0xff5d
82 #define J2K_MS_POC 0xff5f
83 #define J2K_MS_TLM 0xff55
84 #define J2K_MS_PLM 0xff57
85 #define J2K_MS_PLT 0xff58
86 #define J2K_MS_PPM 0xff60
87 #define J2K_MS_PPT 0xff61
88 #define J2K_MS_SOP 0xff91
89 #define J2K_MS_EPH 0xff92
90 #define J2K_MS_CRG 0xff63
91 #define J2K_MS_COM 0xff64
92 #define J2K_MS_CBD 0xff78
93 #define J2K_MS_MCC 0xff75
94 #define J2K_MS_MCT 0xff74
95 #define J2K_MS_MCO 0xff77
97 #define J2K_MS_UNK 0
99 /* UniPG>> */
100 #ifdef USE_JPWL
101 #define J2K_MS_EPC 0xff68
102 #define J2K_MS_EPB 0xff66
103 #define J2K_MS_ESD 0xff67
104 #define J2K_MS_RED 0xff69
105 #endif /* USE_JPWL */
106 #ifdef USE_JPSEC
107 #define J2K_MS_SEC 0xff65
108 #define J2K_MS_INSEC 0xff94
109 #endif /* USE_JPSEC */
110 /* <<UniPG */
111
112 /* ----------------------------------------------------------------------- */
113
118 typedef enum J2K_STATUS {
119 J2K_STATE_NONE = 0x0000,
120 J2K_STATE_MHSOC = 0x0001,
121 J2K_STATE_MHSIZ = 0x0002,
122 J2K_STATE_MH = 0x0004,
123 J2K_STATE_TPHSOT = 0x0008,
124 J2K_STATE_TPH = 0x0010,
125 J2K_STATE_MT = 0x0020,
126 J2K_STATE_NEOC = 0x0040,
128 J2K_STATE_EOC = 0x0100,
129 J2K_STATE_ERR = 0x8000
130 } J2K_STATUS;
131
135 typedef enum MCT_ELEMENT_TYPE
136 {
137 MCT_TYPE_INT16 = 0,
138 MCT_TYPE_INT32 = 1,
139 MCT_TYPE_FLOAT = 2,
140 MCT_TYPE_DOUBLE = 3
141 } J2K_MCT_ELEMENT_TYPE;
142
146 typedef enum MCT_ARRAY_TYPE
147 {
148 MCT_TYPE_DEPENDENCY = 0,
149 MCT_TYPE_DECORRELATION = 1,
150 MCT_TYPE_OFFSET = 2
151 } J2K_MCT_ARRAY_TYPE;
152
153 /* ----------------------------------------------------------------------- */
154
158 typedef enum T2_MODE {
159 THRESH_CALC = 0,
160 FINAL_PASS = 1
161 }J2K_T2_MODE;
162
166 typedef struct opj_stepsize {
168 OPJ_INT32 expn;
170 OPJ_INT32 mant;
171 } opj_stepsize_t;
172
176 typedef struct opj_tccp
177 {
179 OPJ_UINT32 csty;
181 OPJ_UINT32 numresolutions;
183 OPJ_UINT32 cblkw;
185 OPJ_UINT32 cblkh;
187 OPJ_UINT32 cblksty;
189 OPJ_UINT32 qmfbid;
191 OPJ_UINT32 qntsty;
193 opj_stepsize_t stepsizes[OPJ_J2K_MAXBANDS];
195 OPJ_UINT32 numgbits;
197 OPJ_INT32 roishift;
199 OPJ_UINT32 prcw[OPJ_J2K_MAXRLVLS];
201 OPJ_UINT32 prch[OPJ_J2K_MAXRLVLS];
203 OPJ_INT32 m_dc_level_shift;
204 }
205 opj_tccp_t;
206
207
208
212 typedef struct opj_mct_data
213 {
214 J2K_MCT_ELEMENT_TYPE m_element_type;
215 J2K_MCT_ARRAY_TYPE m_array_type;
216 OPJ_UINT32 m_index;
217 OPJ_BYTE * m_data;
218 OPJ_UINT32 m_data_size;
219 }
220 opj_mct_data_t;
221
225 typedef struct opj_simple_mcc_decorrelation_data
226 {
227 OPJ_UINT32 m_index;
228 OPJ_UINT32 m_nb_comps;
229 opj_mct_data_t * m_decorrelation_array;
230 opj_mct_data_t * m_offset_array;
231 OPJ_UINT32 m_is_irreversible : 1;
232 }
233 opj_simple_mcc_decorrelation_data_t;
234
240 typedef struct opj_tcp
241 {
243 OPJ_UINT32 csty;
245 OPJ_PROG_ORDER prg;
247 OPJ_UINT32 numlayers;
248 OPJ_UINT32 num_layers_to_decode;
250 OPJ_UINT32 mct;
252 OPJ_FLOAT32 rates[100];
254 OPJ_UINT32 numpocs;
256 opj_poc_t pocs[32];
258 OPJ_BYTE *ppt_data;
260 OPJ_BYTE *ppt_buffer;
262 OPJ_UINT32 ppt_data_size;
264 OPJ_UINT32 ppt_len;
266 OPJ_FLOAT32 distoratio[100];
268 opj_tccp_t *tccps;
270 OPJ_UINT32 m_nb_tile_parts;
272 OPJ_BYTE * m_data;
274 OPJ_UINT32 m_data_size;
276 OPJ_FLOAT64 * mct_norms;
278 OPJ_FLOAT32 * m_mct_decoding_matrix;
280 OPJ_FLOAT32 * m_mct_coding_matrix;
282 opj_mct_data_t * m_mct_records;
284 OPJ_UINT32 m_nb_mct_records;
286 OPJ_UINT32 m_nb_max_mct_records;
288 opj_simple_mcc_decorrelation_data_t * m_mcc_records;
290 OPJ_UINT32 m_nb_mcc_records;
292 OPJ_UINT32 m_nb_max_mcc_records;
293
294
295 /***** FLAGS *******/
297 OPJ_UINT32 ppt : 1;
299 OPJ_UINT32 POC : 1;
300 } opj_tcp_t;
301
302
303
304
305 typedef struct opj_encoding_param
306 {
308 OPJ_UINT32 m_max_comp_size;
310 OPJ_INT32 m_tp_pos;
312 OPJ_INT32 *m_matrice;
314 OPJ_BYTE m_tp_flag;
316 OPJ_UINT32 m_disto_alloc : 1;
318 OPJ_UINT32 m_fixed_alloc : 1;
320 OPJ_UINT32 m_fixed_quality : 1;
322 OPJ_UINT32 m_tp_on : 1;
323 }
324 opj_encoding_param_t;
325
326 typedef struct opj_decoding_param
327 {
329 OPJ_UINT32 m_reduce;
331 OPJ_UINT32 m_layer;
332 }
333 opj_decoding_param_t;
334
335
339 typedef struct opj_cp
340 {
342 /*int img_size;*/
344 OPJ_UINT16 rsiz;
346 OPJ_UINT32 tx0; /* MSD see norm */
348 OPJ_UINT32 ty0; /* MSD see norm */
350 OPJ_UINT32 tdx;
352 OPJ_UINT32 tdy;
354 OPJ_CHAR *comment;
356 OPJ_UINT32 tw;
358 OPJ_UINT32 th;
359
361 OPJ_BYTE *ppm_data;
363 OPJ_UINT32 ppm_len;
365 OPJ_UINT32 ppm_data_read;
366
367 OPJ_BYTE *ppm_data_current;
368
370 OPJ_BYTE *ppm_buffer;
372 OPJ_BYTE *ppm_data_first;
374 OPJ_UINT32 ppm_data_size;
376 OPJ_INT32 ppm_store;
378 OPJ_INT32 ppm_previous;
379
381 opj_tcp_t *tcps;
382
383 union
384 {
385 opj_decoding_param_t m_dec;
386 opj_encoding_param_t m_enc;
387 }
388 m_specific_param;
389
390
391 /* UniPG>> */
392 #ifdef USE_JPWL
393
394 OPJ_BOOL epc_on;
396 OPJ_BOOL epb_on;
398 OPJ_BOOL esd_on;
400 OPJ_BOOL info_on;
402 OPJ_BOOL red_on;
404 int hprot_MH;
406 int hprot_TPH_tileno[JPWL_MAX_NO_TILESPECS];
408 int hprot_TPH[JPWL_MAX_NO_TILESPECS];
410 int pprot_tileno[JPWL_MAX_NO_PACKSPECS];
412 int pprot_packno[JPWL_MAX_NO_PACKSPECS];
414 int pprot[JPWL_MAX_NO_PACKSPECS];
416 int sens_size;
418 int sens_addr;
420 int sens_range;
422 int sens_MH;
424 int sens_TPH_tileno[JPWL_MAX_NO_TILESPECS];
426 int sens_TPH[JPWL_MAX_NO_TILESPECS];
428 OPJ_BOOL correct;
430 int exp_comps;
432 OPJ_UINT32 max_tiles;
433 #endif /* USE_JPWL */
434
435 /******** FLAGS *********/
437 OPJ_UINT32 ppm : 1;
439 OPJ_UINT32 m_is_decoder : 1;
440 /* <<UniPG */
441 } opj_cp_t;
442
443
444 typedef struct opj_j2k_dec
445 {
447 OPJ_UINT32 m_state;
451 opj_tcp_t *m_default_tcp;
452 OPJ_BYTE *m_header_data;
453 OPJ_UINT32 m_header_data_size;
455 OPJ_UINT32 m_sot_length;
457 OPJ_UINT32 m_start_tile_x;
458 OPJ_UINT32 m_start_tile_y;
459 OPJ_UINT32 m_end_tile_x;
460 OPJ_UINT32 m_end_tile_y;
464 OPJ_UINT32 m_DA_x0;
465 OPJ_UINT32 m_DA_y0;
466 OPJ_UINT32 m_DA_x1;
467 OPJ_UINT32 m_DA_y1;
468
470 OPJ_INT32 m_tile_ind_to_dec;
472 OPJ_OFF_T m_last_sot_read_pos;
473
479 OPJ_BOOL m_last_tile_part;
481 OPJ_UINT32 m_can_decode : 1;
482 OPJ_UINT32 m_discard_tiles : 1;
483 OPJ_UINT32 m_skip_data : 1;
484
485 } opj_j2k_dec_t;
486
487 typedef struct opj_j2k_enc
488 {
490 OPJ_UINT32 m_current_poc_tile_part_number; /* tp_num */
491
493 OPJ_UINT32 m_current_tile_part_number; /*cur_tp_num */
494
499 OPJ_OFF_T m_tlm_start;
503 OPJ_BYTE * m_tlm_sot_offsets_buffer;
507 OPJ_BYTE * m_tlm_sot_offsets_current;
508
511 OPJ_UINT32 m_total_tile_parts; /* totnum_tp */
512
513 /* encoded data for a tile */
514 OPJ_BYTE * m_encoded_tile_data;
515
516 /* size of the encoded_data */
517 OPJ_UINT32 m_encoded_tile_size;
518
519 /* encoded data for a tile */
520 OPJ_BYTE * m_header_tile_data;
521
522 /* size of the encoded_data */
523 OPJ_UINT32 m_header_tile_data_size;
524
525
526 } opj_j2k_enc_t;
527
528
529
530 struct opj_tcd;
534 typedef struct opj_j2k
535 {
536 /* J2K codestream is decoded*/
537 OPJ_BOOL m_is_decoder;
538
539 /* FIXME DOC*/
540 union
541 {
542 opj_j2k_dec_t m_decoder;
543 opj_j2k_enc_t m_encoder;
544 }
545 m_specific_param;
546
548 opj_image_t* m_private_image;
549
550 /* pointer to the output image (decoded)*/
551 opj_image_t* m_output_image;
552
554 opj_cp_t m_cp;
555
557 opj_procedure_list_t * m_procedure_list;
558
560 opj_procedure_list_t * m_validation_list;
561
563 opj_codestream_index_t *cstr_index;
564
566 OPJ_UINT32 m_current_tile_number;
567
569 struct opj_tcd * m_tcd;
570
571 }
572 opj_j2k_t;
573
574
575
576
579 /* ----------------------------------------------------------------------- */
580
587 void opj_j2k_setup_decoder(opj_j2k_t *j2k, opj_dparameters_t *parameters);
588
594 opj_j2k_t* opj_j2k_create_compress(void);
595
596
597 void opj_j2k_setup_encoder( opj_j2k_t *p_j2k,
598 opj_cparameters_t *parameters,
599 opj_image_t *image,
600 opj_event_mgr_t * p_manager);
601
605 char *opj_j2k_convert_progression_order(OPJ_PROG_ORDER prg_order);
606
607 /* ----------------------------------------------------------------------- */
611
616 OPJ_BOOL opj_j2k_end_decompress(opj_j2k_t *j2k,
617 opj_stream_private_t *p_stream,
618 opj_event_mgr_t * p_manager);
619
630 OPJ_BOOL opj_j2k_read_header( opj_stream_private_t *p_stream,
631 opj_j2k_t* p_j2k,
632 opj_image_t** p_image,
633 opj_event_mgr_t* p_manager );
634
635
641 void opj_j2k_destroy (opj_j2k_t *p_j2k);
642
648 void j2k_destroy_cstr_index (opj_codestream_index_t *p_cstr_ind);
649
659 OPJ_BOOL opj_j2k_decode_tile ( opj_j2k_t * p_j2k,
660 OPJ_UINT32 p_tile_index,
661 OPJ_BYTE * p_data,
662 OPJ_UINT32 p_data_size,
663 opj_stream_private_t *p_stream,
664 opj_event_mgr_t * p_manager );
665
680 OPJ_BOOL opj_j2k_read_tile_header ( opj_j2k_t * p_j2k,
681 OPJ_UINT32 * p_tile_index,
682 OPJ_UINT32 * p_data_size,
683 OPJ_INT32 * p_tile_x0,
684 OPJ_INT32 * p_tile_y0,
685 OPJ_INT32 * p_tile_x1,
686 OPJ_INT32 * p_tile_y1,
687 OPJ_UINT32 * p_nb_comps,
688 OPJ_BOOL * p_go_on,
689 opj_stream_private_t *p_stream,
690 opj_event_mgr_t * p_manager );
691
692
706 OPJ_BOOL opj_j2k_set_decode_area( opj_j2k_t *p_j2k,
707 opj_image_t* p_image,
708 OPJ_INT32 p_start_x, OPJ_INT32 p_start_y,
709 OPJ_INT32 p_end_x, OPJ_INT32 p_end_y,
710 opj_event_mgr_t * p_manager );
711
717 opj_j2k_t* opj_j2k_create_decompress(void);
718
719
728 void j2k_dump (opj_j2k_t* p_j2k, OPJ_INT32 flag, FILE* out_stream);
729
730
731
739 void j2k_dump_image_header(opj_image_t* image, OPJ_BOOL dev_dump_flag, FILE* out_stream);
740
748 void j2k_dump_image_comp_header(opj_image_comp_t* comp, OPJ_BOOL dev_dump_flag, FILE* out_stream);
749
757 opj_codestream_info_v2_t* j2k_get_cstr_info(opj_j2k_t* p_j2k);
758
766 opj_codestream_index_t* j2k_get_cstr_index(opj_j2k_t* p_j2k);
767
776 OPJ_BOOL opj_j2k_decode(opj_j2k_t *j2k,
777 opj_stream_private_t *p_stream,
778 opj_image_t *p_image,
779 opj_event_mgr_t *p_manager);
780
781
782 OPJ_BOOL opj_j2k_get_tile( opj_j2k_t *p_j2k,
783 opj_stream_private_t *p_stream,
784 opj_image_t* p_image,
785 opj_event_mgr_t * p_manager,
786 OPJ_UINT32 tile_index );
787
788 OPJ_BOOL opj_j2k_set_decoded_resolution_factor(opj_j2k_t *p_j2k,
789 OPJ_UINT32 res_factor,
790 opj_event_mgr_t * p_manager);
791
792
802 OPJ_BOOL opj_j2k_write_tile ( opj_j2k_t * p_j2k,
803 OPJ_UINT32 p_tile_index,
804 OPJ_BYTE * p_data,
805 OPJ_UINT32 p_data_size,
806 opj_stream_private_t *p_stream,
807 opj_event_mgr_t * p_manager );
808
812 OPJ_BOOL opj_j2k_encode( opj_j2k_t * p_j2k,
813 opj_stream_private_t *cio,
814 opj_event_mgr_t * p_manager );
815
826 OPJ_BOOL opj_j2k_start_compress(opj_j2k_t *p_j2k,
827 opj_stream_private_t *p_stream,
828 opj_image_t * p_image,
829 opj_event_mgr_t * p_manager);
830
835 OPJ_BOOL opj_j2k_end_compress( opj_j2k_t *p_j2k,
836 opj_stream_private_t *cio,
837 opj_event_mgr_t * p_manager);
838
839 OPJ_BOOL opj_j2k_setup_mct_encoding (opj_tcp_t * p_tcp, opj_image_t * p_image);
840
841
842 #endif /* __J2K_H */
opj_j2k_end_decompress
OPJ_BOOL opj_j2k_end_decompress(opj_j2k_t *j2k, opj_stream_private_t *p_stream, opj_event_mgr_t *p_manager)
Ends the decompression procedures and possibiliy add data to be read after the codestream.
Definition: j2k.c:6601
MCT_TYPE_DOUBLE
MCT data is stored as floats.
Definition: j2k.h:140
J2K_STATE_EOC
the decoding process has encountered the EOC marker
Definition: j2k.h:128
opj_j2k_setup_mct_encoding
OPJ_BOOL opj_j2k_setup_mct_encoding(opj_tcp_t *p_tcp, opj_image_t *p_image)
Definition: j2k.c:6720
opj_cp_t
struct opj_cp opj_cp_t
Coding parameters.
opj_tccp::m_dc_level_shift
OPJ_INT32 m_dc_level_shift
the dc_level_shift
Definition: j2k.h:203
opj_cp::esd_on
OPJ_BOOL esd_on
enables writing of ESD, in case of activated JPWL
Definition: j2k.h:398
opj_j2k_dec::m_DA_y0
OPJ_UINT32 m_DA_y0
Definition: j2k.h:465
opj_cp::red_on
OPJ_BOOL red_on
enables writing of RED, in case of activated JPWL
Definition: j2k.h:402
OPJ_OFF_T
int64_t OPJ_OFF_T
Definition: openjpeg.h:126
JPWL_MAX_NO_TILESPECS
#define JPWL_MAX_NO_TILESPECS
Maximum number of tile parts expected by JPWL: increase at your will.
Definition: openjpeg.h:152
OPJ_J2K_MAXRLVLS
#define OPJ_J2K_MAXRLVLS
Number of maximum resolution level authorized.
Definition: openjpeg.h:142
OPJ_FLOAT64
double OPJ_FLOAT64
Definition: openjpeg.h:112
T2_MODE
T2_MODE
T2 encoding mode.
Definition: j2k.h:158
opj_tccp::roishift
OPJ_INT32 roishift
Region Of Interest shift.
Definition: j2k.h:197
J2K_MCT_ARRAY_TYPE
enum MCT_ARRAY_TYPE J2K_MCT_ARRAY_TYPE
Type of MCT array.
opj_cp::max_tiles
OPJ_UINT32 max_tiles
maximum number of tiles at the decoder
Definition: j2k.h:432
opj_j2k::m_tcd
struct opj_tcd * m_tcd
the current tile coder/decoder
Definition: j2k.h:569
opj_tcp::ppt_data_size
OPJ_UINT32 ppt_data_size
Number of bytes stored inside ppt_data.
Definition: j2k.h:262
opj_j2k_read_header
OPJ_BOOL opj_j2k_read_header(opj_stream_private_t *p_stream, opj_j2k_t *p_j2k, opj_image_t **p_image, opj_event_mgr_t *p_manager)
Reads a jpeg2000 codestream header structure.
Definition: j2k.c:6612
opj_j2k_enc
Definition: j2k.h:487
opj_cp::tdy
OPJ_UINT32 tdy
YTsiz.
Definition: j2k.h:352
opj_tcp::ppt
OPJ_UINT32 ppt
If ppt == 1 –> there was a PPT marker for the present tile.
Definition: j2k.h:297
opj_j2k_enc_t
struct opj_j2k_enc opj_j2k_enc_t
opj_event_mgr
Message handler object used for.
Definition: event.h:50
opj_j2k_end_compress
OPJ_BOOL opj_j2k_end_compress(opj_j2k_t *p_j2k, opj_stream_private_t *cio, opj_event_mgr_t *p_manager)
Ends the compression procedures and possibiliy add data to be read after the codestream.
Definition: j2k.c:9632
opj_cp::ppm_data_current
OPJ_BYTE * ppm_data_current
Definition: j2k.h:367
opj_j2k_dec::m_can_decode
OPJ_UINT32 m_can_decode
to tell that a tile can be decoded.
Definition: j2k.h:481
opj_poc
Progression order changes.
Definition: openjpeg.h:321
opj_j2k_dec::m_default_tcp
opj_tcp_t * m_default_tcp
store decoding parameters common to all tiles (information like COD, COC in main header) ...
Definition: j2k.h:451
opj_j2k_dec::m_skip_data
OPJ_UINT32 m_skip_data
Definition: j2k.h:483
opj_tcd
Tile coder/decoder.
Definition: tcd.h:195
opj_cp::epc_on
OPJ_BOOL epc_on
enables writing of EPC in MH, thus activating JPWL
Definition: j2k.h:394
OPJ_BOOL
int OPJ_BOOL
Definition: openjpeg.h:106
opj_cp::info_on
OPJ_BOOL info_on
enables writing of informative techniques of ESD, in case of activated JPWL
Definition: j2k.h:400
opj_j2k::m_encoder
opj_j2k_enc_t m_encoder
Definition: j2k.h:543
opj_tcp::numpocs
OPJ_UINT32 numpocs
number of progression order changes
Definition: j2k.h:254
opj_tcp::mct
OPJ_UINT32 mct
multi-component transform identifier
Definition: j2k.h:250
opj_tccp::numresolutions
OPJ_UINT32 numresolutions
number of resolutions
Definition: j2k.h:181
j2k_dump_image_header
void j2k_dump_image_header(opj_image_t *image, OPJ_BOOL dev_dump_flag, FILE *out_stream)
Dump an image header structure.
Definition: j2k.c:8947
opj_j2k
JPEG-2000 codestream reader/writer.
Definition: j2k.h:534
opj_tcp::m_nb_mcc_records
OPJ_UINT32 m_nb_mcc_records
the number of mct records.
Definition: j2k.h:290
opj_cp::rsiz
OPJ_UINT16 rsiz
Size of the image in bits.
Definition: j2k.h:344
opj_j2k::m_procedure_list
opj_procedure_list_t * m_procedure_list
the list of procedures to exec
Definition: j2k.h:557
opj_cp::epb_on
OPJ_BOOL epb_on
enables writing of EPB, in case of activated JPWL
Definition: j2k.h:396
opj_j2k_enc::m_tlm_start
OPJ_OFF_T m_tlm_start
locate the start position of the TLM marker after encoding the tilepart, a jump (in j2k_write_sod) is...
Definition: j2k.h:499
opj_stream_private
Byte input-output stream.
Definition: cio.h:87
opj_j2k_enc::m_encoded_tile_size
OPJ_UINT32 m_encoded_tile_size
Definition: j2k.h:517
opj_j2k_create_compress
opj_j2k_t * opj_j2k_create_compress(void)
Creates a J2K compression structure.
Definition: j2k.c:5854
opj_j2k_dec::m_end_tile_y
OPJ_UINT32 m_end_tile_y
Definition: j2k.h:460
opj_tcp::tccps
opj_tccp_t * tccps
tile-component coding parameters
Definition: j2k.h:268
OPJ_BYTE
unsigned char OPJ_BYTE
Definition: openjpeg.h:113
opj_tcd::image
opj_image_t * image
image header
Definition: tcd.h:210
opj_tcp::m_data
OPJ_BYTE * m_data
data for the tile
Definition: j2k.h:272
opj_mct_data::m_element_type
J2K_MCT_ELEMENT_TYPE m_element_type
Definition: j2k.h:214
opj_tccp
Tile-component coding parameters.
Definition: j2k.h:176
opj_j2k_read_tile_header
OPJ_BOOL opj_j2k_read_tile_header(opj_j2k_t *p_j2k, OPJ_UINT32 *p_tile_index, OPJ_UINT32 *p_data_size, OPJ_INT32 *p_tile_x0, OPJ_INT32 *p_tile_y0, OPJ_INT32 *p_tile_x1, OPJ_INT32 *p_tile_y1, OPJ_UINT32 *p_nb_comps, OPJ_BOOL *p_go_on, opj_stream_private_t *p_stream, opj_event_mgr_t *p_manager)
Reads a tile header.
Definition: j2k.c:7474
opj_tcp::POC
OPJ_UINT32 POC
indicates if a POC marker has been used O:NO, 1:YES
Definition: j2k.h:299
opj_tcp::m_nb_max_mct_records
OPJ_UINT32 m_nb_max_mct_records
the max number of mct records.
Definition: j2k.h:286
opj_j2k_t
struct opj_j2k opj_j2k_t
JPEG-2000 codestream reader/writer.
opj_tccp_t
struct opj_tccp opj_tccp_t
Tile-component coding parameters.
opj_simple_mcc_decorrelation_data::m_offset_array
opj_mct_data_t * m_offset_array
Definition: j2k.h:230
opj_j2k_encode
OPJ_BOOL opj_j2k_encode(opj_j2k_t *p_j2k, opj_stream_private_t *cio, opj_event_mgr_t *p_manager)
Encodes an image into a JPEG-2000 codestream.
Definition: j2k.c:9581
opj_tcp::m_nb_max_mcc_records
OPJ_UINT32 m_nb_max_mcc_records
the max number of mct records.
Definition: j2k.h:292
J2K_STATE_MT
the EOC marker has just been read
Definition: j2k.h:125
opj_cp::sens_TPH
int sens_TPH[JPWL_MAX_NO_TILESPECS]
sensitivity methods for TPHs (-1,0-7)
Definition: j2k.h:426
OPJ_UINT16
uint16_t OPJ_UINT16
Definition: openjpeg.h:120
opj_cp::hprot_TPH
int hprot_TPH[JPWL_MAX_NO_TILESPECS]
error protection methods for TPHs (0,1,16,32,37-128)
Definition: j2k.h:408
J2K_STATE_MH
the decoding process is in the main header
Definition: j2k.h:122
opj_decoding_param::m_reduce
OPJ_UINT32 m_reduce
if != 0, then original dimension divided by 2^(reduce); if == 0 or not used, image is decoded to the ...
Definition: j2k.h:329
opj_j2k::m_specific_param
union opj_j2k::@1 m_specific_param
opj_j2k_dec::m_DA_x0
OPJ_UINT32 m_DA_x0
Decoded area set by the user.
Definition: j2k.h:464
opj_j2k_write_tile
OPJ_BOOL opj_j2k_write_tile(opj_j2k_t *p_j2k, OPJ_UINT32 p_tile_index, OPJ_BYTE *p_data, OPJ_UINT32 p_data_size, opj_stream_private_t *p_stream, opj_event_mgr_t *p_manager)
Writes a tile.
Definition: j2k.c:10303
opj_j2k_enc::m_tlm_sot_offsets_current
OPJ_BYTE * m_tlm_sot_offsets_current
The current offset of the tlm buffer.
Definition: j2k.h:507
OPJ_INT32
int32_t OPJ_INT32
Definition: openjpeg.h:121
opj_cp::comment
OPJ_CHAR * comment
comment
Definition: j2k.h:354
opj_codestream_info_v2
Information structure about the codestream (FIXME should be expand and enhance)
Definition: openjpeg.h:911
J2K_STATE_NEOC
the decoding process must not expect a EOC marker because the codestream is truncated ...
Definition: j2k.h:126
opj_tcp::pocs
opj_poc_t pocs[32]
progression order changes
Definition: j2k.h:256
opj_cp::ty0
OPJ_UINT32 ty0
YTOsiz.
Definition: j2k.h:348
opj_tcp::m_nb_tile_parts
OPJ_UINT32 m_nb_tile_parts
number of tile parts for the tile.
Definition: j2k.h:270
MCT_TYPE_DECORRELATION
Definition: j2k.h:149
MCT_TYPE_OFFSET
Definition: j2k.h:150
opj_mct_data_t
struct opj_mct_data opj_mct_data_t
FIXME DOC.
opj_j2k_dec::m_last_tile_part
OPJ_BOOL m_last_tile_part
Indicate that the current tile-part is assume as the last tile part of the codestream.
Definition: j2k.h:479
opj_cp::ppm_previous
OPJ_INT32 ppm_previous
use in case of multiple marker PPM (case on non-finished previous info)
Definition: j2k.h:378
opj_simple_mcc_decorrelation_data::m_index
OPJ_UINT32 m_index
Definition: j2k.h:227
opj_encoding_param::m_tp_on
OPJ_UINT32 m_tp_on
Enabling Tile part generation.
Definition: j2k.h:322
MCT_TYPE_DEPENDENCY
Definition: j2k.h:148
opj_tccp::prch
OPJ_UINT32 prch[OPJ_J2K_MAXRLVLS]
precinct height
Definition: j2k.h:201
MCT_ELEMENT_TYPE
MCT_ELEMENT_TYPE
Type of elements storing in the MCT data.
Definition: j2k.h:135
opj_encoding_param::m_tp_pos
OPJ_INT32 m_tp_pos
Position of tile part flag in progression order.
Definition: j2k.h:310
opj_j2k_decode
OPJ_BOOL opj_j2k_decode(opj_j2k_t *j2k, opj_stream_private_t *p_stream, opj_image_t *p_image, opj_event_mgr_t *p_manager)
Decode an image from a JPEG-2000 codestream.
Definition: j2k.c:9415
opj_decoding_param::m_layer
OPJ_UINT32 m_layer
if != 0, then only the first "layer" layers are decoded; if == 0 or not used, all the quality layers ...
Definition: j2k.h:331
opj_tcp::rates
OPJ_FLOAT32 rates[100]
rates of layers
Definition: j2k.h:252
opj_j2k_convert_progression_order
char * opj_j2k_convert_progression_order(OPJ_PROG_ORDER prg_order)
Converts an enum type progression order to string type.
Definition: j2k.c:1471
J2K_STATE_ERR
the decoding process has encountered an error (FIXME warning V1 = 0x0080)
Definition: j2k.h:129
opj_cp::tx0
OPJ_UINT32 tx0
XTOsiz.
Definition: j2k.h:346
opj_j2k::cstr_index
opj_codestream_index_t * cstr_index
helper used to write the index file
Definition: j2k.h:563
J2K_STATE_MHSOC
a SOC marker is expected
Definition: j2k.h:120
opj_cp::ppm_data_first
OPJ_BYTE * ppm_data_first
pointer remaining on the first byte of the first header if ppm is used
Definition: j2k.h:372
opj_j2k_setup_decoder
void opj_j2k_setup_decoder(opj_j2k_t *j2k, opj_dparameters_t *parameters)
Setup the decoder decoding parameters using user parameters.
Definition: j2k.c:5836
opj_tcp::m_mct_coding_matrix
OPJ_FLOAT32 * m_mct_coding_matrix
the mct coding matrix
Definition: j2k.h:280
opj_image
Defines image data and characteristics.
Definition: openjpeg.h:657
OPJ_FLOAT32
float OPJ_FLOAT32
Definition: openjpeg.h:111
opj_j2k_destroy
void opj_j2k_destroy(opj_j2k_t *p_j2k)
Destroys a jpeg2000 codec.
Definition: j2k.c:7269
J2K_STATE_TPH
the decoding process is in a tile part header
Definition: j2k.h:124
j2k_get_cstr_index
opj_codestream_index_t * j2k_get_cstr_index(opj_j2k_t *p_j2k)
Get the codestream index from a JPEG2000 codec.
Definition: j2k.c:9066
opj_j2k_setup_encoder
void opj_j2k_setup_encoder(opj_j2k_t *p_j2k, opj_cparameters_t *parameters, opj_image_t *image, opj_event_mgr_t *p_manager)
Definition: j2k.c:6108
opj_cp::m_specific_param
union opj_cp::@0 m_specific_param
MCT_TYPE_INT16
Definition: j2k.h:137
j2k_get_cstr_info
opj_codestream_info_v2_t * j2k_get_cstr_info(opj_j2k_t *p_j2k)
Get the codestream info from a JPEG2000 codec.
Definition: j2k.c:8995
opj_j2k_dec_t
struct opj_j2k_dec opj_j2k_dec_t
opj_decoding_param
Definition: j2k.h:326
opj_mct_data::m_index
OPJ_UINT32 m_index
Definition: j2k.h:216
opj_j2k::m_private_image
opj_image_t * m_private_image
pointer to the internal/private encoded / decoded image
Definition: j2k.h:548
opj_encoding_param_t
struct opj_encoding_param opj_encoding_param_t
J2K_T2_MODE
enum T2_MODE J2K_T2_MODE
T2 encoding mode.
opj_decoding_param_t
struct opj_decoding_param opj_decoding_param_t
opj_cp::exp_comps
int exp_comps
expected number of components at the decoder
Definition: j2k.h:430
opj_j2k_dec::m_start_tile_x
OPJ_UINT32 m_start_tile_x
Only tiles index in the correct range will be decoded.
Definition: j2k.h:457
opj_j2k_dec::m_discard_tiles
OPJ_UINT32 m_discard_tiles
Definition: j2k.h:482
opj_j2k::m_is_decoder
OPJ_BOOL m_is_decoder
Definition: j2k.h:537
opj_dparameters
Decompression parameters.
Definition: openjpeg.h:504
opj_tcp::csty
OPJ_UINT32 csty
coding style
Definition: j2k.h:243
opj_tcp::distoratio
OPJ_FLOAT32 distoratio[100]
add fixed_quality
Definition: j2k.h:266
opj_j2k::m_validation_list
opj_procedure_list_t * m_validation_list
the list of validation procedures to follow to make sure the code is valid
Definition: j2k.h:560
opj_j2k_set_decoded_resolution_factor
OPJ_BOOL opj_j2k_set_decoded_resolution_factor(opj_j2k_t *p_j2k, OPJ_UINT32 res_factor, opj_event_mgr_t *p_manager)
Definition: j2k.c:9552
opj_tcp::m_nb_mct_records
OPJ_UINT32 m_nb_mct_records
the number of mct records.
Definition: j2k.h:284
opj_stepsize_t
struct opj_stepsize opj_stepsize_t
Quantization stepsize.
opj_procedure_list
A list of procedures.
Definition: function_list.h:57
opj_simple_mcc_decorrelation_data::m_nb_comps
OPJ_UINT32 m_nb_comps
Definition: j2k.h:228
opj_encoding_param
Definition: j2k.h:305
THRESH_CALC
Definition: j2k.h:159
opj_j2k_start_compress
OPJ_BOOL opj_j2k_start_compress(opj_j2k_t *p_j2k, opj_stream_private_t *p_stream, opj_image_t *p_image, opj_event_mgr_t *p_manager)
Starts a compression scheme, i.e.
Definition: j2k.c:9647
opj_j2k::m_current_tile_number
OPJ_UINT32 m_current_tile_number
number of the tile curently concern by coding/decoding
Definition: j2k.h:566
opj_j2k_enc::m_current_poc_tile_part_number
OPJ_UINT32 m_current_poc_tile_part_number
Tile part number, regardless of poc, for each new poc, tp is reset to 1.
Definition: j2k.h:490
opj_j2k_dec::m_sot_length
OPJ_UINT32 m_sot_length
to tell the tile part length
Definition: j2k.h:455
opj_j2k_create_decompress
opj_j2k_t * opj_j2k_create_decompress(void)
Creates a J2K decompression structure.
Definition: j2k.c:8202
opj_j2k_decode_tile
OPJ_BOOL opj_j2k_decode_tile(opj_j2k_t *p_j2k, OPJ_UINT32 p_tile_index, OPJ_BYTE *p_data, OPJ_UINT32 p_data_size, opj_stream_private_t *p_stream, opj_event_mgr_t *p_manager)
Decode tile data.
Definition: j2k.c:7701
opj_tccp::stepsizes
opj_stepsize_t stepsizes[OPJ_J2K_MAXBANDS]
stepsizes used for quantization
Definition: j2k.h:193
j2k_destroy_cstr_index
void j2k_destroy_cstr_index(opj_codestream_index_t *p_cstr_ind)
Destroys a codestream index structure.
Definition: j2k.c:7332
OPJ_PROG_ORDER
enum PROG_ORDER OPJ_PROG_ORDER
Progression order.
opj_tccp::cblkw
OPJ_UINT32 cblkw
code-blocks width
Definition: j2k.h:183
opj_tcp::ppt_buffer
OPJ_BYTE * ppt_buffer
used to keep a track of the allocated memory
Definition: j2k.h:260
MCT_ARRAY_TYPE
MCT_ARRAY_TYPE
Type of MCT array.
Definition: j2k.h:146
opj_tccp::numgbits
OPJ_UINT32 numgbits
number of guard bits
Definition: j2k.h:195
opj_cp::sens_TPH_tileno
int sens_TPH_tileno[JPWL_MAX_NO_TILESPECS]
tile number of sensitivity specification (>=0)
Definition: j2k.h:424
opj_tcp::mct_norms
OPJ_FLOAT64 * mct_norms
encoding norms
Definition: j2k.h:276
opj_tcp::ppt_len
OPJ_UINT32 ppt_len
size of ppt_data
Definition: j2k.h:264
opj_encoding_param::m_max_comp_size
OPJ_UINT32 m_max_comp_size
Maximum rate for each component.
Definition: j2k.h:308
opj_encoding_param::m_disto_alloc
OPJ_UINT32 m_disto_alloc
allocation by rate/distortion
Definition: j2k.h:316
opj_tcp::m_mcc_records
opj_simple_mcc_decorrelation_data_t * m_mcc_records
mcc records
Definition: j2k.h:288
opj_j2k_set_decode_area
OPJ_BOOL opj_j2k_set_decode_area(opj_j2k_t *p_j2k, opj_image_t *p_image, OPJ_INT32 p_start_x, OPJ_INT32 p_start_y, OPJ_INT32 p_end_x, OPJ_INT32 p_end_y, opj_event_mgr_t *p_manager)
Sets the given area to be decoded.
Definition: j2k.c:8046
opj_mct_data::m_array_type
J2K_MCT_ARRAY_TYPE m_array_type
Definition: j2k.h:215
opj_encoding_param::m_matrice
OPJ_INT32 * m_matrice
fixed layer
Definition: j2k.h:312
opj_tccp::qntsty
OPJ_UINT32 qntsty
quantisation style
Definition: j2k.h:191
opj_j2k_dec::m_DA_x1
OPJ_UINT32 m_DA_x1
Definition: j2k.h:466
opj_tcp::prg
OPJ_PROG_ORDER prg
progression order
Definition: j2k.h:245
opj_cp
Coding parameters.
Definition: j2k.h:339
opj_simple_mcc_decorrelation_data_t
struct opj_simple_mcc_decorrelation_data opj_simple_mcc_decorrelation_data_t
FIXME DOC.
opj_image_comp
Defines a single image component.
Definition: openjpeg.h:625
opj_tccp::prcw
OPJ_UINT32 prcw[OPJ_J2K_MAXRLVLS]
precinct width
Definition: j2k.h:199
opj_simple_mcc_decorrelation_data::m_decorrelation_array
opj_mct_data_t * m_decorrelation_array
Definition: j2k.h:229
J2K_MCT_ELEMENT_TYPE
enum MCT_ELEMENT_TYPE J2K_MCT_ELEMENT_TYPE
Type of elements storing in the MCT data.
opj_j2k_enc::m_header_tile_data_size
OPJ_UINT32 m_header_tile_data_size
Definition: j2k.h:523
opj_cp::m_is_decoder
OPJ_UINT32 m_is_decoder
tells if the parameter is a coding or decoding one
Definition: j2k.h:439
opj_stepsize
Quantization stepsize.
Definition: j2k.h:166
opj_cp::tdx
OPJ_UINT32 tdx
XTsiz.
Definition: j2k.h:350
opj_tccp::cblkh
OPJ_UINT32 cblkh
code-blocks height
Definition: j2k.h:185
opj_simple_mcc_decorrelation_data
FIXME DOC.
Definition: j2k.h:225
opj_cp::hprot_TPH_tileno
int hprot_TPH_tileno[JPWL_MAX_NO_TILESPECS]
tile number of header protection specification (>=0)
Definition: j2k.h:406
opj_j2k_dec
Definition: j2k.h:444
opj_mct_data
FIXME DOC.
Definition: j2k.h:212
MCT_TYPE_INT32
MCT data is stored as signed shorts.
Definition: j2k.h:138
opj_tcp::num_layers_to_decode
OPJ_UINT32 num_layers_to_decode
Definition: j2k.h:248
opj_cp::correct
OPJ_BOOL correct
enables JPWL correction at the decoder
Definition: j2k.h:428
opj_cp::th
OPJ_UINT32 th
number of tiles in heigth
Definition: j2k.h:358
opj_j2k_dec::m_header_data
OPJ_BYTE * m_header_data
Definition: j2k.h:452
J2K_STATUS
J2K_STATUS
Values that specify the status of the decoding process when decoding the main header.
Definition: j2k.h:118
opj_cp::sens_MH
int sens_MH
sensitivity method for MH (-1,0-7)
Definition: j2k.h:422
MCT_TYPE_FLOAT
MCT data is stored as signed integers.
Definition: j2k.h:139
opj_tcp::m_mct_records
opj_mct_data_t * m_mct_records
mct records
Definition: j2k.h:282
opj_encoding_param::m_fixed_quality
OPJ_UINT32 m_fixed_quality
add fixed_quality
Definition: j2k.h:320
opj_j2k_enc::m_header_tile_data
OPJ_BYTE * m_header_tile_data
Definition: j2k.h:520
opj_j2k_get_tile
OPJ_BOOL opj_j2k_get_tile(opj_j2k_t *p_j2k, opj_stream_private_t *p_stream, opj_image_t *p_image, opj_event_mgr_t *p_manager, OPJ_UINT32 tile_index)
Definition: j2k.c:9458
opj_tccp::qmfbid
OPJ_UINT32 qmfbid
discrete wavelet transform identifier
Definition: j2k.h:189
opj_j2k_dec::m_last_sot_read_pos
OPJ_OFF_T m_last_sot_read_pos
Position of the last SOT marker read.
Definition: j2k.h:472
opj_j2k_dec::m_end_tile_x
OPJ_UINT32 m_end_tile_x
Definition: j2k.h:459
opj_cp::ppm_len
OPJ_UINT32 ppm_len
size of the ppm_data
Definition: j2k.h:363
opj_cp::sens_addr
int sens_addr
sensitivity addressing size (0=auto/2/4 bytes)
Definition: j2k.h:418
opj_j2k_enc::m_tlm_sot_offsets_buffer
OPJ_BYTE * m_tlm_sot_offsets_buffer
Stores the sizes of the tlm.
Definition: j2k.h:503
opj_cp::sens_size
int sens_size
enables writing of ESD, (0/2/4 bytes)
Definition: j2k.h:416
FINAL_PASS
Function called in Rate allocation process.
Definition: j2k.h:160
opj_cp::ppm_data
OPJ_BYTE * ppm_data
packet header store there for futur use in t2_decode_packet
Definition: j2k.h:361
opj_codestream_index
Index structure of the codestream (FIXME should be expand and enhance)
Definition: openjpeg.h:986
opj_tcp::m_mct_decoding_matrix
OPJ_FLOAT32 * m_mct_decoding_matrix
the mct decoding matrix
Definition: j2k.h:278
opj_tcp::m_data_size
OPJ_UINT32 m_data_size
size of data
Definition: j2k.h:274
opj_cp::sens_range
int sens_range
sensitivity range (0-3)
Definition: j2k.h:420
OPJ_UINT32
uint32_t OPJ_UINT32
Definition: openjpeg.h:122
opj_j2k_dec::m_start_tile_y
OPJ_UINT32 m_start_tile_y
Definition: j2k.h:458
opj_stepsize::expn
OPJ_INT32 expn
exponent
Definition: j2k.h:168
opj_encoding_param::m_fixed_alloc
OPJ_UINT32 m_fixed_alloc
allocation by fixed layer
Definition: j2k.h:318
OPJ_CHAR
char OPJ_CHAR
Definition: openjpeg.h:110
opj_j2k_dec::m_header_data_size
OPJ_UINT32 m_header_data_size
Definition: j2k.h:453
opj_cp::pprot_tileno
int pprot_tileno[JPWL_MAX_NO_PACKSPECS]
tile number of packet protection specification (>=0)
Definition: j2k.h:410
opj_tcp::ppt_data
OPJ_BYTE * ppt_data
packet header store there for futur use in t2_decode_packet
Definition: j2k.h:258
opj_tcp_t
struct opj_tcp opj_tcp_t
Tile coding parameters : this structure is used to store coding/decoding parameters common to all til...
opj_encoding_param::m_tp_flag
OPJ_BYTE m_tp_flag
Flag determining tile part generation.
Definition: j2k.h:314
opj_tcp
Tile coding parameters : this structure is used to store coding/decoding parameters common to all til...
Definition: j2k.h:240
opj_j2k_dec::m_tile_ind_to_dec
OPJ_INT32 m_tile_ind_to_dec
Index of the tile to decode (used in get_tile)
Definition: j2k.h:470
opj_cparameters
Compression parameters.
Definition: openjpeg.h:349
opj_cp::hprot_MH
int hprot_MH
error protection method for MH (0,1,16,32,37-128)
Definition: j2k.h:404
opj_cp::ppm_buffer
OPJ_BYTE * ppm_buffer
packet header storage original buffer
Definition: j2k.h:370
opj_cp::tw
OPJ_UINT32 tw
number of tiles in width
Definition: j2k.h:356
opj_j2k_enc::m_current_tile_part_number
OPJ_UINT32 m_current_tile_part_number
Tile part number currently coding, taking into account POC.
Definition: j2k.h:493
opj_mct_data::m_data
OPJ_BYTE * m_data
Definition: j2k.h:217
OPJ_J2K_MAXBANDS
#define OPJ_J2K_MAXBANDS
Number of maximum sub-band linked to number of resolution level.
Definition: openjpeg.h:143
opj_j2k_enc::m_encoded_tile_data
OPJ_BYTE * m_encoded_tile_data
Definition: j2k.h:514
opj_cp::m_enc
opj_encoding_param_t m_enc
Definition: j2k.h:386
opj_cp::m_dec
opj_decoding_param_t m_dec
Definition: j2k.h:385
opj_j2k_dec::m_state
OPJ_UINT32 m_state
locate in which part of the codestream the decoder is (main header, tile header, end) ...
Definition: j2k.h:447
opj_tccp::csty
OPJ_UINT32 csty
coding style
Definition: j2k.h:179
JPWL_MAX_NO_PACKSPECS
#define JPWL_MAX_NO_PACKSPECS
Maximum number of packet parts expected by JPWL: increase at your will.
Definition: openjpeg.h:153
opj_cp::pprot_packno
int pprot_packno[JPWL_MAX_NO_PACKSPECS]
packet number of packet protection specification (>=0)
Definition: j2k.h:412
J2K_STATE_NONE
a SOC marker is expected
Definition: j2k.h:119
J2K_STATE_MHSIZ
a SIZ marker is expected
Definition: j2k.h:121
J2K_STATE_TPHSOT
the decoding process is in a tile part header and expects a SOT marker
Definition: j2k.h:123
opj_cp::ppm_store
OPJ_INT32 ppm_store
use in case of multiple marker PPM (number of info already store)
Definition: j2k.h:376
opj_j2k::m_cp
opj_cp_t m_cp
Coding parameters.
Definition: j2k.h:554
opj_simple_mcc_decorrelation_data::m_is_irreversible
OPJ_UINT32 m_is_irreversible
Definition: j2k.h:231
opj_stepsize::mant
OPJ_INT32 mant
mantissa
Definition: j2k.h:170
opj_cp::pprot
int pprot[JPWL_MAX_NO_PACKSPECS]
error protection methods for packets (0,1,16,32,37-128)
Definition: j2k.h:414
opj_mct_data::m_data_size
OPJ_UINT32 m_data_size
Definition: j2k.h:218
opj_j2k_enc::m_total_tile_parts
OPJ_UINT32 m_total_tile_parts
Total num of tile parts in whole image = num tiles* num tileparts in each tile.
Definition: j2k.h:511
opj_tccp::cblksty
OPJ_UINT32 cblksty
code-block coding style
Definition: j2k.h:187
opj_cp::ppm_data_size
OPJ_UINT32 ppm_data_size
Number of bytes actually stored inside the ppm_data.
Definition: j2k.h:374
opj_cp::tcps
opj_tcp_t * tcps
tile coding parameters
Definition: j2k.h:381
opj_j2k::m_output_image
opj_image_t * m_output_image
Definition: j2k.h:551
j2k_dump
void j2k_dump(opj_j2k_t *p_j2k, OPJ_INT32 flag, FILE *out_stream)
Dump some elements from the J2K decompression structure .
Definition: j2k.c:8820
opj_tcp::numlayers
OPJ_UINT32 numlayers
number of layers
Definition: j2k.h:247
opj_cp::ppm_data_read
OPJ_UINT32 ppm_data_read
size of the ppm_data
Definition: j2k.h:365
opj_j2k_dec::m_DA_y1
OPJ_UINT32 m_DA_y1
Definition: j2k.h:467
opj_cp::ppm
OPJ_UINT32 ppm
if ppm == 1 –> there was a PPM marker
Definition: j2k.h:437
opj_j2k::m_decoder
opj_j2k_dec_t m_decoder
Definition: j2k.h:542
j2k_dump_image_comp_header
void j2k_dump_image_comp_header(opj_image_comp_t *comp, OPJ_BOOL dev_dump_flag, FILE *out_stream)
Dump a component image header structure.
Definition: j2k.c:8976