OpenJPEG 2.3.1

pi.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 * All rights reserved.
15 *
16 * Redistribution and use in source and binary forms, with or without
17 * modification, are permitted provided that the following conditions
18 * are met:
19 * 1. Redistributions of source code must retain the above copyright
20 * notice, this list of conditions and the following disclaimer.
21 * 2. Redistributions in binary form must reproduce the above copyright
22 * notice, this list of conditions and the following disclaimer in the
23 * documentation and/or other materials provided with the distribution.
24 *
25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
29 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 * POSSIBILITY OF SUCH DAMAGE.
36 */
37
38 #ifndef OPJ_PI_H
39 #define OPJ_PI_H
40
51
55 typedef struct opj_pi_resolution {
56 OPJ_UINT32 pdx, pdy;
57 OPJ_UINT32 pw, ph;
58 } opj_pi_resolution_t;
59
63 typedef struct opj_pi_comp {
64 OPJ_UINT32 dx, dy;
66 OPJ_UINT32 numresolutions;
67 opj_pi_resolution_t *resolutions;
68 } opj_pi_comp_t;
69
73 typedef struct opj_pi_iterator {
75 OPJ_BYTE tp_on;
77 OPJ_INT16 *include;
79 OPJ_UINT32 include_size;
81 OPJ_UINT32 step_l;
83 OPJ_UINT32 step_r;
85 OPJ_UINT32 step_c;
87 OPJ_UINT32 step_p;
89 OPJ_UINT32 compno;
91 OPJ_UINT32 resno;
93 OPJ_UINT32 precno;
95 OPJ_UINT32 layno;
97 OPJ_BOOL first;
99 opj_poc_t poc;
101 OPJ_UINT32 numcomps;
103 opj_pi_comp_t *comps;
105 OPJ_UINT32 tx0, ty0, tx1, ty1;
107 OPJ_UINT32 x, y;
109 OPJ_UINT32 dx, dy;
111 opj_event_mgr_t* manager;
112 } opj_pi_iterator_t;
113
116 /* ----------------------------------------------------------------------- */
128 opj_pi_iterator_t *opj_pi_initialise_encode(const opj_image_t *image,
129 opj_cp_t *cp,
130 OPJ_UINT32 tileno,
131 J2K_T2_MODE t2_mode,
132 opj_event_mgr_t* manager);
133
141 void opj_pi_update_encoding_parameters(const opj_image_t *p_image,
142 opj_cp_t *p_cp,
143 OPJ_UINT32 p_tile_no);
144
155 void opj_pi_create_encode(opj_pi_iterator_t *pi,
156 opj_cp_t *cp,
157 OPJ_UINT32 tileno,
158 OPJ_UINT32 pino,
159 OPJ_UINT32 tpnum,
160 OPJ_INT32 tppos,
161 J2K_T2_MODE t2_mode);
162
172 opj_pi_iterator_t *opj_pi_create_decode(opj_image_t * image,
173 opj_cp_t * cp,
174 OPJ_UINT32 tileno,
175 opj_event_mgr_t* manager);
182 void opj_pi_destroy(opj_pi_iterator_t *p_pi,
183 OPJ_UINT32 p_nb_elements);
184
190 OPJ_BOOL opj_pi_next(opj_pi_iterator_t * pi);
191
198 OPJ_UINT32 opj_get_encoding_packet_count(const opj_image_t *p_image,
199 const opj_cp_t *p_cp,
200 OPJ_UINT32 p_tile_no);
201
202 /* ----------------------------------------------------------------------- */
206
207 #endif /* OPJ_PI_H */
OPJ_J2K_MAXRLVLS
#define OPJ_J2K_MAXRLVLS
Number of maximum resolution level authorized.
Definition: openjpeg.h:146
opj_pi_initialise_encode
opj_pi_iterator_t * opj_pi_initialise_encode(const opj_image_t *image, opj_cp_t *cp, OPJ_UINT32 tileno, J2K_T2_MODE t2_mode, opj_event_mgr_t *manager)
Creates a packet iterator for encoding.
Definition: pi.c:1615
opj_pi_resolution
FIXME DOC.
Definition: pi.h:55
opj_poc::compE
OPJ_UINT32 compE
Definition: openjpeg.h:377
opj_jp2_box_t
struct opj_jp2_box opj_jp2_box_t
JP2 Box.
opj_image::x1
OPJ_UINT32 x1
Xsiz: width of the reference grid.
Definition: openjpeg.h:709
opj_get_encoding_packet_count
OPJ_UINT32 opj_get_encoding_packet_count(const opj_image_t *p_image, const opj_cp_t *p_cp, OPJ_UINT32 p_tile_no)
Return the number of packets in the tile.
Definition: pi.c:1592
OPJ_BYTE
unsigned char OPJ_BYTE
Definition: openjpeg.h:117
opj_tile_info::packet
opj_packet_info_t * packet
information concerning packets inside tile
Definition: openjpeg.h:825
opj_poc::tx1
OPJ_UINT32_SEMANTICALLY_BUT_INT32 tx1
Definition: openjpeg.h:373
opj_poc::compS
OPJ_UINT32 compS
Definition: openjpeg.h:375
opj_codestream_info::numcomps
int numcomps
component numbers
Definition: openjpeg.h:871
opj_pi_iterator
Packet iterator.
Definition: pi.h:73
opj_pi_comp_t
struct opj_pi_comp opj_pi_comp_t
FIXME DOC.
opj_codestream_info::tw
int tw
number of tiles in X
Definition: openjpeg.h:867
opj_stream_write_data
OPJ_SIZE_T opj_stream_write_data(opj_stream_private_t *p_stream, const OPJ_BYTE *p_buffer, OPJ_SIZE_T p_size, opj_event_mgr_t *p_event_mgr)
Writes some bytes to the stream.
Definition: cio.c:385
opj_calloc
void * opj_calloc(size_t num, size_t size)
Allocate a memory block with elements initialized to 0.
Definition: opj_malloc.c:198
opj_pi_iterator::include
OPJ_INT16 * include
precise if the packet has been already used (useful for progression order change)
Definition: pi.h:77
opj_tcp::prg
OPJ_PROG_ORDER prg
progression order
Definition: j2k.h:245
opj_image_comp::dy
OPJ_UINT32 dy
YRsiz: vertical separation of a sample of ith component with respect to the reference grid.
Definition: openjpeg.h:675
opj_pi_iterator::step_l
OPJ_UINT32 step_l
layer step used to localize the packet in the include vector
Definition: pi.h:81
opj_tcp::pocs
opj_poc_t pocs[J2K_MAX_POCS]
progression order changes
Definition: j2k.h:256
opj_pi_next_cprl
static OPJ_BOOL opj_pi_next_cprl(opj_pi_iterator_t *pi)
Get next packet in component-precinct-resolution-layer order.
Definition: pi.c:627
opj_tile_info::ph
int ph[33]
precinct number for each resolution level (height)
Definition: openjpeg.h:819
opj_poc::precno0
OPJ_UINT32 precno0
Definition: openjpeg.h:365
opj_pi_iterator::compno
OPJ_UINT32 compno
component that identify the packet
Definition: pi.h:89
opj_tccp::numresolutions
OPJ_UINT32 numresolutions
number of resolutions
Definition: j2k.h:179
opj_pi_destroy
void opj_pi_destroy(opj_pi_iterator_t *p_pi, OPJ_UINT32 p_nb_elements)
Destroys a packet iterator array.
Definition: pi.c:2071
opj_pi_next_pcrl
static OPJ_BOOL opj_pi_next_pcrl(opj_pi_iterator_t *pi)
Get next packet in precinct-component-resolution-layer order.
Definition: pi.c:489
opj_poc::tyS
OPJ_UINT32 tyS
Definition: openjpeg.h:379
opj_pi_create_decode
opj_pi_iterator_t * opj_pi_create_decode(opj_image_t *image, opj_cp_t *cp, OPJ_UINT32 tileno, opj_event_mgr_t *manager)
Create a packet iterator for Decoder.
Definition: pi.c:1393
opj_pi_next
OPJ_BOOL opj_pi_next(opj_pi_iterator_t *pi)
Modify the packet iterator to point to the next packet.
Definition: pi.c:2136
opj_pi_iterator::include_size
OPJ_UINT32 include_size
Number of elements in include array.
Definition: pi.h:79
opj_cp::m_enc
opj_encoding_param_t m_enc
Definition: j2k.h:397
opj_image::y1
OPJ_UINT32 y1
Ysiz: height of the reference grid.
Definition: openjpeg.h:711
opj_pi_iterator::comps
opj_pi_comp_t * comps
Components.
Definition: pi.h:103
opj_image::numcomps
OPJ_UINT32 numcomps
number of components in the image
Definition: openjpeg.h:713
opj_uint_ceildiv
static INLINE OPJ_UINT32 opj_uint_ceildiv(OPJ_UINT32 a, OPJ_UINT32 b)
Divide an integer and round upwards.
Definition: opj_intmath.h:170
opj_pi_check_next_level
static OPJ_BOOL opj_pi_check_next_level(OPJ_INT32 pos, opj_cp_t *cp, OPJ_UINT32 tileno, OPJ_UINT32 pino, const OPJ_CHAR *prog)
FIXME DOC.
Definition: pi.c:1304
opj_pi_update_encoding_parameters
void opj_pi_update_encoding_parameters(const opj_image_t *p_image, opj_cp_t *p_cp, OPJ_UINT32 p_tile_no)
Updates the encoding parameters of the codec.
Definition: pi.c:2103
opj_pi_comp
FIXME DOC.
Definition: pi.h:63
OPJ_IS_IMF
#define OPJ_IS_IMF(v)
Definition: openjpeg.h:225
opj_event_msg
OPJ_BOOL opj_event_msg(opj_event_mgr_t *p_event_mgr, OPJ_INT32 event_type, const char *fmt,...)
Write formatted data to a string and send the string to a user callback.
Definition: event.c:91
opj_pi_iterator::first
OPJ_BOOL first
0 if the first packet
Definition: pi.h:97
opj_pi_iterator::x
OPJ_UINT32 x
FIXME DOC.
Definition: pi.h:107
OPJ_ARG_NOT_USED
#define OPJ_ARG_NOT_USED(x)
Definition: openjpeg.h:136
opj_get_all_encoding_parameters
static void opj_get_all_encoding_parameters(const opj_image_t *p_image, const opj_cp_t *p_cp, OPJ_UINT32 tileno, OPJ_UINT32 *p_tx0, OPJ_UINT32 *p_tx1, OPJ_UINT32 *p_ty0, OPJ_UINT32 *p_ty1, OPJ_UINT32 *p_dx_min, OPJ_UINT32 *p_dy_min, OPJ_UINT32 *p_max_prec, OPJ_UINT32 *p_max_res, OPJ_UINT32 **p_resolutions)
Gets the encoding parameters needed to update the coding parameters and all the pocs.
Definition: pi.c:883
opj_poc::txE
OPJ_UINT32 txE
Definition: openjpeg.h:379
opj_pi_resolution::pdy
OPJ_UINT32 pdy
Definition: pi.h:56
opj_codestream_info::numlayers
int numlayers
number of layer
Definition: openjpeg.h:873
tcp
@ tcp
Definition: query_parser.h:41
opj_pi_iterator::ty0
OPJ_UINT32 ty0
Definition: pi.h:105
JPIP_PHIX
#define JPIP_PHIX
Definition: indexbox_manager.h:51
opj_poc::layno0
OPJ_UINT32 layno0
Layer num start,Precinct num start, Precinct num end.
Definition: openjpeg.h:365
opj_get_encoding_packet_count
OPJ_UINT32 opj_get_encoding_packet_count(const opj_image_t *p_image, const opj_cp_t *p_cp, OPJ_UINT32 p_tile_no)
Return the number of packets in the tile.
Definition: pi.c:1592
OPJ_OFF_T
int64_t OPJ_OFF_T
Definition: openjpeg.h:130
opj_stream_skip
OPJ_OFF_T opj_stream_skip(opj_stream_private_t *p_stream, OPJ_OFF_T p_size, opj_event_mgr_t *p_event_mgr)
Skips a number of bytes from the stream.
Definition: cio.c:593
opj_stream_seek
OPJ_BOOL opj_stream_seek(opj_stream_private_t *p_stream, OPJ_OFF_T p_size, struct opj_event_mgr *p_event_mgr)
Seeks a number of bytes from the stream.
Definition: cio.c:641
OPJ_RLCP
@ OPJ_RLCP
resolution-layer-component-precinct order
Definition: openjpeg.h:300
opj_uint_floordivpow2
static INLINE OPJ_UINT32 opj_uint_floordivpow2(OPJ_UINT32 a, OPJ_UINT32 b)
Divide an integer by a power of 2 and round downwards.
Definition: opj_intmath.h:216
opj_event_mgr
Message handler object used for.
Definition: event.h:50
opj_pi_comp::dx
OPJ_UINT32 dx
Definition: pi.h:64
opj_pi_create
static opj_pi_iterator_t * opj_pi_create(const opj_image_t *p_image, const opj_cp_t *p_cp, OPJ_UINT32 tileno, opj_event_mgr_t *manager)
Allocates memory for a packet iterator.
Definition: pi.c:1019
opj_pi_iterator::y
OPJ_UINT32 y
Definition: pi.h:107
opj_pi_resolution_t
struct opj_pi_resolution opj_pi_resolution_t
FIXME DOC.
opj_stream_tell
OPJ_OFF_T opj_stream_tell(const opj_stream_private_t *p_stream)
Tells the byte offset on the stream (similar to ftell).
Definition: cio.c:579
opj_pi_iterator::step_p
OPJ_UINT32 step_p
precinct step used to localize the packet in the include vector
Definition: pi.h:87
opj_pi_iterator::tx1
OPJ_UINT32 tx1
Definition: pi.h:105
opj_jp2_box::type
OPJ_UINT32 type
Definition: jp2.h:200
opj_image_comp
Defines a single image component.
Definition: openjpeg.h:671
opj_pi_update_decode_poc
static void opj_pi_update_decode_poc(opj_pi_iterator_t *p_pi, opj_tcp_t *p_tcp, OPJ_UINT32 p_max_precision, OPJ_UINT32 p_max_res)
FIXME DOC.
Definition: pi.c:1220
opj_stream_private
Byte input-output stream.
Definition: cio.h:81
OPJ_CPRL
@ OPJ_CPRL
component-precinct-resolution-layer order
Definition: openjpeg.h:303
opj_cp
Coding parameters.
Definition: j2k.h:347
opj_pi_iterator::manager
opj_event_mgr_t * manager
event manager
Definition: pi.h:111
opj_pi_iterator::dx
OPJ_UINT32 dx
FIXME DOC.
Definition: pi.h:109
opj_packet_info::start_pos
OPJ_OFF_T start_pos
packet start position (including SOP marker if it exists)
Definition: openjpeg.h:762
opj_pi_iterator::ty1
OPJ_UINT32 ty1
Definition: pi.h:105
opj_cp::tdy
OPJ_UINT32 tdy
YTsiz.
Definition: j2k.h:359
opj_cp::tx0
OPJ_UINT32 tx0
XTOsiz.
Definition: j2k.h:353
opj_poc::precno1
OPJ_UINT32 precno1
Definition: openjpeg.h:365
opj_tccp::prch
OPJ_UINT32 prch[OPJ_J2K_MAXRLVLS]
precinct height
Definition: j2k.h:199
opj_tcp::numpocs
OPJ_UINT32 numpocs
number of progression order changes
Definition: j2k.h:254
opj_cp::tdx
OPJ_UINT32 tdx
XTsiz.
Definition: j2k.h:357
opj_write_manf
void opj_write_manf(int second, int v, opj_jp2_box_t *box, opj_stream_private_t *cio, opj_event_mgr_t *p_manager)
Definition: cidx_manager.c:157
opj_uint_adds
static INLINE OPJ_UINT32 opj_uint_adds(OPJ_UINT32 a, OPJ_UINT32 b)
Get the saturated sum of two unsigned integers.
Definition: opj_intmath.h:92
OPJ_BOOL
int OPJ_BOOL
Definition: openjpeg.h:110
opj_cp::tcps
opj_tcp_t * tcps
tile coding parameters
Definition: j2k.h:393
opj_poc::prg
OPJ_PROG_ORDER prg
Definition: openjpeg.h:367
opj_pi_resolution::pdx
OPJ_UINT32 pdx
Definition: pi.h:56
opj_poc::dy
OPJ_UINT32 dy
Definition: openjpeg.h:379
OPJ_PROG_UNKNOWN
@ OPJ_PROG_UNKNOWN
place-holder
Definition: openjpeg.h:298
opj_pi_iterator::precno
OPJ_UINT32 precno
precinct that identify the packet
Definition: pi.h:93
opj_includes.h
opj_packet_info::end_ph_pos
OPJ_OFF_T end_ph_pos
end of packet header position (including EPH marker if it exists)
Definition: openjpeg.h:764
OPJ_PCRL
@ OPJ_PCRL
precinct-component-resolution-layer order
Definition: openjpeg.h:302
opj_tccp::prcw
OPJ_UINT32 prcw[OPJ_J2K_MAXRLVLS]
precinct width
Definition: j2k.h:197
opj_pi_create_encode
void opj_pi_create_encode(opj_pi_iterator_t *pi, opj_cp_t *cp, OPJ_UINT32 tileno, OPJ_UINT32 pino, OPJ_UINT32 tpnum, OPJ_INT32 tppos, J2K_T2_MODE t2_mode)
Modify the packet iterator for enabling tile part generation.
Definition: pi.c:1808
OPJ_IS_CINEMA
#define OPJ_IS_CINEMA(v)
JPEG 2000 profile macros.
Definition: openjpeg.h:222
opj_jp2_box
JP2 Box.
Definition: jp2.h:198
opj_poc::ty1
OPJ_UINT32_SEMANTICALLY_BUT_INT32 ty1
Definition: openjpeg.h:373
OPJ_CHAR
char OPJ_CHAR
Definition: openjpeg.h:114
opj_pi_iterator::dy
OPJ_UINT32 dy
Definition: pi.h:109
J2K_T2_MODE
enum T2_MODE J2K_T2_MODE
T2 encoding mode.
opj_encoding_param::m_tp_on
OPJ_BITFIELD m_tp_on
Enabling Tile part generation.
Definition: j2k.h:331
opj_pi_initialise_encode
opj_pi_iterator_t * opj_pi_initialise_encode(const opj_image_t *p_image, opj_cp_t *p_cp, OPJ_UINT32 p_tile_no, J2K_T2_MODE p_t2_mode, opj_event_mgr_t *manager)
Creates a packet iterator for encoding.
Definition: pi.c:1615
OPJ_INT32
int32_t OPJ_INT32
Definition: openjpeg.h:125
opj_cp::th
OPJ_UINT32 th
number of tiles in height
Definition: j2k.h:365
opj_poc::resE
OPJ_UINT32 resE
Definition: openjpeg.h:377
opj_pi_next_rpcl
static OPJ_BOOL opj_pi_next_rpcl(opj_pi_iterator_t *pi)
Get next packet in resolution-precinct-component-layer order.
Definition: pi.c:350
opj_pi_destroy
void opj_pi_destroy(opj_pi_iterator_t *p_pi, OPJ_UINT32 p_nb_elements)
Destroys a packet iterator array.
Definition: pi.c:2071
opj_tcp::numlayers
OPJ_UINT32 numlayers
number of layers
Definition: j2k.h:247
opj_image::y0
OPJ_UINT32 y0
YOsiz: vertical offset from the origin of the reference grid to the top side of the image area.
Definition: openjpeg.h:707
opj_pi_iterator::tp_on
OPJ_BYTE tp_on
Enabling Tile part generation.
Definition: pi.h:75
opj_tcp::POC
OPJ_BITFIELD POC
indicates if a POC marker has been used O:NO, 1:YES
Definition: j2k.h:309
opj_pi_comp::resolutions
opj_pi_resolution_t * resolutions
Definition: pi.h:67
opj_pi_comp::dy
OPJ_UINT32 dy
Definition: pi.h:64
opj_pi_next_lrcp
static OPJ_BOOL opj_pi_next_lrcp(opj_pi_iterator_t *pi)
Get next packet in layer-resolution-component-precinct order.
Definition: pi.c:237
opj_uint_min
static INLINE OPJ_UINT32 opj_uint_min(OPJ_UINT32 a, OPJ_UINT32 b)
Get the minimum of two integers.
Definition: opj_intmath.h:65
OPJ_TRUE
#define OPJ_TRUE
Definition: openjpeg.h:111
opj_uint_max
static INLINE OPJ_UINT32 opj_uint_max(OPJ_UINT32 a, OPJ_UINT32 b)
Get the maximum of two integers.
Definition: opj_intmath.h:83
opj_malloc
void * opj_malloc(size_t size)
Allocate an uninitialized memory block.
Definition: opj_malloc.c:191
opj_poc::layE
OPJ_UINT32 layE
End value, initialised in pi_initialise_encode.
Definition: openjpeg.h:377
opj_poc::compno0
OPJ_UINT32 compno0
Definition: openjpeg.h:361
opj_poc::prcS
OPJ_UINT32 prcS
Definition: openjpeg.h:375
opj_free
void opj_free(void *ptr)
Deallocates or frees a memory block.
Definition: opj_malloc.c:246
OPJ_RPCL
@ OPJ_RPCL
resolution-precinct-component-layer order
Definition: openjpeg.h:301
opj_pi_iterator::tx0
OPJ_UINT32 tx0
FIXME DOC.
Definition: pi.h:105
opj_pi_resolution::ph
OPJ_UINT32 ph
Definition: pi.h:57
opj_cp::rsiz
OPJ_UINT16 rsiz
Size of the image in bits.
Definition: j2k.h:351
opj_packet_info
Index structure : Information concerning a packet inside tile.
Definition: openjpeg.h:760
opj_tcp
Tile coding parameters : this structure is used to store coding/decoding parameters common to all til...
Definition: j2k.h:241
opj_tcp::tccps
opj_tccp_t * tccps
tile-component coding parameters
Definition: j2k.h:274
opj_pi_update_encode_not_poc
static void opj_pi_update_encode_not_poc(opj_cp_t *p_cp, OPJ_UINT32 p_num_comps, OPJ_UINT32 p_tileno, OPJ_UINT32 p_tx0, OPJ_UINT32 p_tx1, OPJ_UINT32 p_ty0, OPJ_UINT32 p_ty1, OPJ_UINT32 p_max_prec, OPJ_UINT32 p_max_res, OPJ_UINT32 p_dx_min, OPJ_UINT32 p_dy_min)
Updates the coding parameters if the encoding is not used with Progression order changes and final (a...
Definition: pi.c:1165
opj_poc::compno1
OPJ_UINT32 compno1
Definition: openjpeg.h:363
opj_poc::ty0
OPJ_UINT32_SEMANTICALLY_BUT_INT32 ty0
Definition: openjpeg.h:373
opj_pi_iterator::numcomps
OPJ_UINT32 numcomps
number of components in the image
Definition: pi.h:101
opj_pi_iterator::step_r
OPJ_UINT32 step_r
resolution step used to localize the packet in the include vector
Definition: pi.h:83
opj_pi_next
OPJ_BOOL opj_pi_next(opj_pi_iterator_t *pi)
Modify the packet iterator to point to the next packet.
Definition: pi.c:2136
opj_pi_iterator::resno
OPJ_UINT32 resno
resolution that identify the packet
Definition: pi.h:91
opj_poc::txS
OPJ_UINT32 txS
Start and end values of Tile width and height, initialised in pi_initialise_encode.
Definition: openjpeg.h:379
opj_tccp
Tile-component coding parameters.
Definition: j2k.h:175
opj_poc::prcE
OPJ_UINT32 prcE
Definition: openjpeg.h:377
opj_pi_iterator_t
struct opj_pi_iterator opj_pi_iterator_t
Packet iterator.
opj_pi_iterator::step_c
OPJ_UINT32 step_c
component step used to localize the packet in the include vector
Definition: pi.h:85
opj_image::x0
OPJ_UINT32 x0
XOsiz: horizontal offset from the origin of the reference grid to the left side of the image area.
Definition: openjpeg.h:705
opj_uint_ceildivpow2
static INLINE OPJ_UINT32 opj_uint_ceildivpow2(OPJ_UINT32 a, OPJ_UINT32 b)
Divide an integer by a power of 2 and round upwards.
Definition: opj_intmath.h:198
opj_jp2_box::length
OPJ_UINT32 length
Definition: jp2.h:199
opj_pi_resolution::pw
OPJ_UINT32 pw
Definition: pi.h:57
opj_image::comps
opj_image_comp_t * comps
image components
Definition: openjpeg.h:717
opj_codestream_info::prog
OPJ_PROG_ORDER prog
progression order
Definition: openjpeg.h:857
opj_poc::tyE
OPJ_UINT32 tyE
Definition: openjpeg.h:379
opj_codestream_info::tile
opj_tile_info_t * tile
information regarding tiles inside image
Definition: openjpeg.h:891
opj_write_phixfaix
int opj_write_phixfaix(int coff, int compno, opj_codestream_info_t cstr_info, OPJ_BOOL EPHused, int j2klen, opj_stream_private_t *cio, opj_event_mgr_t *p_manager)
Definition: phix_manager.c:96
opj_get_encoding_parameters
static void opj_get_encoding_parameters(const opj_image_t *p_image, const opj_cp_t *p_cp, OPJ_UINT32 tileno, OPJ_UINT32 *p_tx0, OPJ_UINT32 *p_tx1, OPJ_UINT32 *p_ty0, OPJ_UINT32 *p_ty1, OPJ_UINT32 *p_dx_min, OPJ_UINT32 *p_dy_min, OPJ_UINT32 *p_max_prec, OPJ_UINT32 *p_max_res)
Gets the encoding parameters needed to update the coding parameters and all the pocs.
Definition: pi.c:762
FINAL_PASS
@ FINAL_PASS
Function called in Rate allocation process.
Definition: j2k.h:159
opj_codestream_info
Index structure of the codestream.
Definition: openjpeg.h:845
opj_poc::tx0
OPJ_UINT32_SEMANTICALLY_BUT_INT32 tx0
Start and end values for Tile width and height.
Definition: openjpeg.h:373
EVT_ERROR
#define EVT_ERROR
Error event type.
Definition: event.h:66
opj_cp::tw
OPJ_UINT32 tw
number of tiles in width
Definition: j2k.h:363
OPJ_UINT32
uint32_t OPJ_UINT32
Definition: openjpeg.h:126
opj_image_comp::dx
OPJ_UINT32 dx
XRsiz: horizontal separation of a sample of ith component with respect to the reference grid.
Definition: openjpeg.h:673
opj_pi_update_encode_poc_and_final
static void opj_pi_update_encode_poc_and_final(opj_cp_t *p_cp, OPJ_UINT32 p_tileno, OPJ_UINT32 p_tx0, OPJ_UINT32 p_tx1, OPJ_UINT32 p_ty0, OPJ_UINT32 p_ty1, OPJ_UINT32 p_max_prec, OPJ_UINT32 p_max_res, OPJ_UINT32 p_dx_min, OPJ_UINT32 p_dy_min)
Updates the coding parameters if the encoding is used with Progression order changes and final (or ci...
Definition: pi.c:1086
opj_cp::ty0
OPJ_UINT32 ty0
YTOsiz.
Definition: j2k.h:355
opj_tile_info
Index structure : information regarding tiles.
Definition: openjpeg.h:805
opj_pi_comp::numresolutions
OPJ_UINT32 numresolutions
number of resolution levels
Definition: pi.h:66
opj_pi_create_encode
void opj_pi_create_encode(opj_pi_iterator_t *pi, opj_cp_t *cp, OPJ_UINT32 tileno, OPJ_UINT32 pino, OPJ_UINT32 tpnum, OPJ_INT32 tppos, J2K_T2_MODE t2_mode)
Modify the packet iterator for enabling tile part generation.
Definition: pi.c:1808
OPJ_FALSE
#define OPJ_FALSE
Definition: openjpeg.h:112
opj_poc::prg1
OPJ_PROG_ORDER prg1
Progression order enum.
Definition: openjpeg.h:367
OPJ_INT16
int16_t OPJ_INT16
Definition: openjpeg.h:123
OPJ_LRCP
@ OPJ_LRCP
layer-resolution-component-precinct order
Definition: openjpeg.h:299
JPIP_FAIX
#define JPIP_FAIX
Definition: indexbox_manager.h:46
opj_pi_next_rlcp
static OPJ_BOOL opj_pi_next_rlcp(opj_pi_iterator_t *pi)
Get next packet in resolution-layer-component-precinct order.
Definition: pi.c:297
opj_codestream_info::numdecompos
int * numdecompos
number of decomposition for each component
Definition: openjpeg.h:875
opj_poc::resS
OPJ_UINT32 resS
Definition: openjpeg.h:375
opj_write_bytes
#define opj_write_bytes
Definition: cio.h:64
opj_poc::layno1
OPJ_UINT32 layno1
Layer num end,Resolution num end, Component num end, given by POC.
Definition: openjpeg.h:363
opj_pi_update_encoding_parameters
void opj_pi_update_encoding_parameters(const opj_image_t *p_image, opj_cp_t *p_cp, OPJ_UINT32 p_tile_no)
Updates the encoding parameters of the codec.
Definition: pi.c:2103
opj_pi_update_decode_not_poc
static void opj_pi_update_decode_not_poc(opj_pi_iterator_t *p_pi, opj_tcp_t *p_tcp, OPJ_UINT32 p_max_precision, OPJ_UINT32 p_max_res)
FIXME DOC.
Definition: pi.c:1267
opj_poc::resno1
OPJ_UINT32 resno1
Definition: openjpeg.h:363
opj_codestream_info::th
int th
number of tiles in Y
Definition: openjpeg.h:869
opj_write_phix
int opj_write_phix(int coff, opj_codestream_info_t cstr_info, OPJ_BOOL EPHused, int j2klen, opj_stream_private_t *cio, opj_event_mgr_t *p_manager)
Definition: phix_manager.c:51
opj_image
Defines image data and characteristics.
Definition: openjpeg.h:703
opj_poc::resno0
OPJ_UINT32 resno0
Resolution num start, Component num start, given by POC.
Definition: openjpeg.h:361
opj_poc
Progression order changes.
Definition: openjpeg.h:359
opj_pi_create_decode
opj_pi_iterator_t * opj_pi_create_decode(opj_image_t *p_image, opj_cp_t *p_cp, OPJ_UINT32 p_tile_no, opj_event_mgr_t *manager)
Create a packet iterator for Decoder.
Definition: pi.c:1393
opj_j2k_convert_progression_order
const char * opj_j2k_convert_progression_order(OPJ_PROG_ORDER prg_order)
Converts an enum type progression order to string type.
Definition: j2k.c:1617
opj_poc::layS
OPJ_UINT32 layS
Start value, initialised in pi_initialise_encode.
Definition: openjpeg.h:375
opj_poc::dx
OPJ_UINT32 dx
Definition: openjpeg.h:379
opj_pi_iterator::poc
opj_poc_t poc
progression order change information
Definition: pi.h:99
opj_cp::m_specific_param
union opj_cp::@0 m_specific_param
opj_pi_iterator::layno
OPJ_UINT32 layno
layer that identify the packet
Definition: pi.h:95
opj_tile_info::pw
int pw[33]
precinct number for each resolution level (width)
Definition: openjpeg.h:817