OpenJPEG
2.5.0
|
Implementation of a tile coder/decoder (TCD) More...
Go to the source code of this file.
Data Structures | |
struct | opj_tcd_pass |
FIXME DOC. More... | |
struct | opj_tcd_layer |
FIXME DOC. More... | |
struct | opj_tcd_cblk_enc |
FIXME DOC. More... | |
struct | opj_tcd_seg_data_chunk |
Chunk of codestream data that is part of a code block. More... | |
struct | opj_tcd_seg |
Segment of a code-block. More... | |
struct | opj_tcd_cblk_dec |
Code-block for decoding. More... | |
struct | opj_tcd_precinct |
Precinct structure. More... | |
struct | opj_tcd_band |
Sub-band structure. More... | |
struct | opj_tcd_resolution |
Tile-component resolution structure. More... | |
struct | opj_tcd_tilecomp |
Tile-component structure. More... | |
struct | opj_tcd_tile |
FIXME DOC. More... | |
struct | opj_tcd_image |
FIXME DOC. More... | |
struct | opj_tcd |
Tile coder/decoder. More... | |
struct | opj_tcd_marker_info |
Structure to hold information needed to generate some markers. More... | |
Typedefs | |
typedef struct opj_tcd_pass | opj_tcd_pass_t |
FIXME DOC. More... | |
typedef struct opj_tcd_layer | opj_tcd_layer_t |
FIXME DOC. More... | |
typedef struct opj_tcd_cblk_enc | opj_tcd_cblk_enc_t |
FIXME DOC. More... | |
typedef struct opj_tcd_seg_data_chunk | opj_tcd_seg_data_chunk_t |
Chunk of codestream data that is part of a code block. More... | |
typedef struct opj_tcd_seg | opj_tcd_seg_t |
Segment of a code-block. More... | |
typedef struct opj_tcd_cblk_dec | opj_tcd_cblk_dec_t |
Code-block for decoding. More... | |
typedef struct opj_tcd_precinct | opj_tcd_precinct_t |
Precinct structure. More... | |
typedef struct opj_tcd_band | opj_tcd_band_t |
Sub-band structure. More... | |
typedef struct opj_tcd_resolution | opj_tcd_resolution_t |
Tile-component resolution structure. More... | |
typedef struct opj_tcd_tilecomp | opj_tcd_tilecomp_t |
Tile-component structure. More... | |
typedef struct opj_tcd_tile | opj_tcd_tile_t |
FIXME DOC. More... | |
typedef struct opj_tcd_image | opj_tcd_image_t |
FIXME DOC. More... | |
typedef struct opj_tcd | opj_tcd_t |
Tile coder/decoder. More... | |
typedef struct opj_tcd_marker_info | opj_tcd_marker_info_t |
Structure to hold information needed to generate some markers. More... | |
Functions | |
Exported functions | |
opj_tcd_t * | opj_tcd_create (OPJ_BOOL p_is_decoder) |
Dump the content of a tcd structure. More... | |
void | opj_tcd_destroy (opj_tcd_t *tcd) |
Destroy a previously created TCD handle. More... | |
opj_tcd_marker_info_t * | opj_tcd_marker_info_create (OPJ_BOOL need_PLT) |
Create a new opj_tcd_marker_info_t* structure. More... | |
void | opj_tcd_marker_info_destroy (opj_tcd_marker_info_t *p_tcd_marker_info) |
Destroy a previously created opj_tcd_marker_info_t* structure. More... | |
OPJ_BOOL | opj_tcd_init (opj_tcd_t *p_tcd, opj_image_t *p_image, opj_cp_t *p_cp, opj_thread_pool_t *p_tp) |
Initialize the tile coder and may reuse some memory. More... | |
OPJ_BOOL | opj_tcd_init_decode_tile (opj_tcd_t *p_tcd, OPJ_UINT32 p_tile_no, opj_event_mgr_t *p_manager) |
Allocates memory for decoding a specific tile. More... | |
void | opj_tcd_makelayer_fixed (opj_tcd_t *tcd, OPJ_UINT32 layno, OPJ_UINT32 final) |
void | opj_tcd_rateallocate_fixed (opj_tcd_t *tcd) |
void | opj_tcd_makelayer (opj_tcd_t *tcd, OPJ_UINT32 layno, OPJ_FLOAT64 thresh, OPJ_UINT32 final) |
OPJ_BOOL | opj_tcd_rateallocate (opj_tcd_t *tcd, OPJ_BYTE *dest, OPJ_UINT32 *p_data_written, OPJ_UINT32 len, opj_codestream_info_t *cstr_info, opj_event_mgr_t *p_manager) |
OPJ_UINT32 | opj_tcd_get_decoded_tile_size (opj_tcd_t *p_tcd, OPJ_BOOL take_into_account_partial_decoding) |
Gets the maximum tile size that will be taken by the tile once decoded. More... | |
OPJ_BOOL | opj_tcd_encode_tile (opj_tcd_t *p_tcd, OPJ_UINT32 p_tile_no, OPJ_BYTE *p_dest, OPJ_UINT32 *p_data_written, OPJ_UINT32 p_len, struct opj_codestream_info *p_cstr_info, opj_tcd_marker_info_t *p_marker_info, opj_event_mgr_t *p_manager) |
Encodes a tile from the raw image into the given buffer. More... | |
OPJ_BOOL | opj_tcd_decode_tile (opj_tcd_t *tcd, OPJ_UINT32 win_x0, OPJ_UINT32 win_y0, OPJ_UINT32 win_x1, OPJ_UINT32 win_y1, OPJ_UINT32 numcomps_to_decode, const OPJ_UINT32 *comps_indices, OPJ_BYTE *src, OPJ_UINT32 len, OPJ_UINT32 tileno, opj_codestream_index_t *cstr_info, opj_event_mgr_t *manager) |
Decode a tile from a buffer into a raw image. More... | |
OPJ_BOOL | opj_tcd_update_tile_data (opj_tcd_t *p_tcd, OPJ_BYTE *p_dest, OPJ_UINT32 p_dest_length) |
Copies tile data from the system onto the given memory block. More... | |
OPJ_SIZE_T | opj_tcd_get_encoder_input_buffer_size (opj_tcd_t *p_tcd) |
Get the size in bytes of the input buffer provided before encoded. More... | |
OPJ_BOOL | opj_tcd_init_encode_tile (opj_tcd_t *p_tcd, OPJ_UINT32 p_tile_no, opj_event_mgr_t *p_manager) |
Initialize the tile coder and may reuse some meory. More... | |
OPJ_BOOL | opj_tcd_copy_tile_data (opj_tcd_t *p_tcd, OPJ_BYTE *p_src, OPJ_SIZE_T p_src_length) |
Copies tile data from the given memory block onto the system. More... | |
OPJ_BOOL | opj_alloc_tile_component_data (opj_tcd_tilecomp_t *l_tilec) |
Allocates tile component data. More... | |
OPJ_BOOL | opj_tcd_is_band_empty (opj_tcd_band_t *band) |
Returns whether a sub-band is empty (i.e. More... | |
void | opj_tcd_reinit_segment (opj_tcd_seg_t *seg) |
Reinitialize a segment. More... | |
OPJ_BOOL | opj_tcd_is_subband_area_of_interest (opj_tcd_t *tcd, OPJ_UINT32 compno, OPJ_UINT32 resno, OPJ_UINT32 bandno, OPJ_UINT32 x0, OPJ_UINT32 y0, OPJ_UINT32 x1, OPJ_UINT32 y1) |
Returns whether a sub-band region contributes to the area of interest tcd->win_x0,tcd->win_y0,tcd->win_x1,tcd->win_y1. More... | |
Implementation of a tile coder/decoder (TCD)
The functions in TCD.C encode or decode each tile independently from each other. The functions in TCD.C are used by other functions in J2K.C.
typedef struct opj_tcd_band opj_tcd_band_t |
Sub-band structure.
typedef struct opj_tcd_cblk_dec opj_tcd_cblk_dec_t |
Code-block for decoding.
typedef struct opj_tcd_cblk_enc opj_tcd_cblk_enc_t |
FIXME DOC.
typedef struct opj_tcd_image opj_tcd_image_t |
FIXME DOC.
typedef struct opj_tcd_layer opj_tcd_layer_t |
FIXME DOC.
typedef struct opj_tcd_marker_info opj_tcd_marker_info_t |
Structure to hold information needed to generate some markers.
Used by encoder.
typedef struct opj_tcd_pass opj_tcd_pass_t |
FIXME DOC.
typedef struct opj_tcd_precinct opj_tcd_precinct_t |
Precinct structure.
typedef struct opj_tcd_resolution opj_tcd_resolution_t |
Tile-component resolution structure.
typedef struct opj_tcd_seg_data_chunk opj_tcd_seg_data_chunk_t |
Chunk of codestream data that is part of a code block.
typedef struct opj_tcd_seg opj_tcd_seg_t |
Segment of a code-block.
A segment represent a number of consecutive coding passes, without termination of MQC or RAW between them.
typedef struct opj_tcd_tile opj_tcd_tile_t |
FIXME DOC.
typedef struct opj_tcd_tilecomp opj_tcd_tilecomp_t |
Tile-component structure.
OPJ_BOOL opj_alloc_tile_component_data | ( | opj_tcd_tilecomp_t * | l_tilec | ) |
Allocates tile component data.
References opj_tcd_tilecomp::data, opj_tcd_tilecomp::data_size, opj_tcd_tilecomp::data_size_needed, OPJ_FALSE, opj_image_data_alloc(), opj_image_data_free(), OPJ_TRUE, and opj_tcd_tilecomp::ownsData.
Referenced by opj_j2k_encode(), opj_j2k_write_tile(), and opj_tcd_decode_tile().
OPJ_BOOL opj_tcd_copy_tile_data | ( | opj_tcd_t * | p_tcd, |
OPJ_BYTE * | p_src, | ||
OPJ_SIZE_T | p_src_length | ||
) |
Copies tile data from the given memory block onto the system.
p_src_length must be equal to opj_tcd_get_encoder_input_buffer_size()
References opj_tcd_tile::comps, opj_image::comps, opj_tcd_tilecomp::data, opj_tcd::image, opj_image::numcomps, OPJ_FALSE, opj_tcd_get_encoder_input_buffer_size(), OPJ_TRUE, opj_image_comp::prec, opj_image_comp::sgnd, opj_tcd::tcd_image, opj_tcd_image::tiles, opj_tcd_tilecomp::x0, opj_tcd_tilecomp::x1, opj_tcd_tilecomp::y0, and opj_tcd_tilecomp::y1.
Referenced by opj_j2k_encode(), and opj_j2k_write_tile().
Dump the content of a tcd structure.
Create a new TCD handle
p_is_decoder | FIXME DOC |
Dump the content of a tcd structure.
References opj_tcd::m_is_decoder, opj_calloc(), opj_free(), and opj_tcd::tcd_image.
Referenced by opj_j2k_copy_default_tcp_and_create_tcd(), and opj_j2k_create_tcd().
OPJ_BOOL opj_tcd_decode_tile | ( | opj_tcd_t * | tcd, |
OPJ_UINT32 | win_x0, | ||
OPJ_UINT32 | win_y0, | ||
OPJ_UINT32 | win_x1, | ||
OPJ_UINT32 | win_y1, | ||
OPJ_UINT32 | numcomps_to_decode, | ||
const OPJ_UINT32 * | comps_indices, | ||
OPJ_BYTE * | src, | ||
OPJ_UINT32 | len, | ||
OPJ_UINT32 | tileno, | ||
opj_codestream_index_t * | cstr_info, | ||
opj_event_mgr_t * | manager | ||
) |
Decode a tile from a buffer into a raw image.
tcd | TCD handle |
win_x0 | Upper left x of region to decode (in grid coordinates) |
win_y0 | Upper left y of region to decode (in grid coordinates) |
win_x1 | Lower right x of region to decode (in grid coordinates) |
win_y1 | Lower right y of region to decode (in grid coordinates) |
numcomps_to_decode | Size of the comps_indices array, or 0 if decoding all components. |
comps_indices | Array of numcomps values representing the indices of the components to decode (relative to the codestream, starting at 0). Or NULL if decoding all components. |
src | Source buffer |
len | Length of source buffer |
tileno | Number that identifies one of the tiles to be decoded |
cstr_info | FIXME DOC |
manager | the event manager. |
References opj_tcd_tile::comps, opj_image::comps, opj_tcd::cp, opj_tcd_tilecomp::data_size_needed, opj_tcd_tilecomp::data_win, opj_image_comp::dx, opj_image_comp::dy, EVT_ERROR, opj_tcd::image, opj_tcd_tilecomp::minimum_num_resolutions, opj_image::numcomps, opj_tcd_tilecomp::numresolutions, opj_alloc_tile_component_data(), opj_calloc(), opj_event_msg(), OPJ_FALSE, opj_free(), opj_image_data_alloc(), opj_image_data_free(), opj_malloc(), opj_tcd_dc_level_shift_decode(), opj_tcd_dwt_decode(), opj_tcd_is_whole_tilecomp_decoding(), opj_tcd_mct_decode(), opj_tcd_t1_decode(), opj_tcd_t2_decode(), OPJ_TRUE, opj_uint_ceildiv(), opj_uint_ceildivpow2(), opj_uint_max(), opj_uint_min(), opj_tcd_resolution::ph, opj_tccp::prch, opj_tccp::prcw, opj_tcd_resolution::pw, opj_image_comp::resno_decoded, opj_tcd_tilecomp::resolutions, SIZE_MAX, opj_tcd::tcd_image, opj_tcd::tcd_tileno, tcp, opj_tcd::tcp, opj_cp::tcps, opj_tcd_image::tiles, opj_tcd::used_component, opj_tcd::whole_tile_decoding, opj_tcd_resolution::win_x0, opj_tcd_tilecomp::win_x0, opj_tcd::win_x0, opj_tcd_resolution::win_x1, opj_tcd_tilecomp::win_x1, opj_tcd::win_x1, opj_tcd_resolution::win_y0, opj_tcd_tilecomp::win_y0, opj_tcd::win_y0, opj_tcd_resolution::win_y1, opj_tcd_tilecomp::win_y1, opj_tcd::win_y1, opj_tcd_resolution::x0, opj_tcd_tilecomp::x0, opj_tcd_resolution::x1, opj_tcd_tilecomp::x1, opj_tcd_resolution::y0, opj_tcd_tilecomp::y0, opj_tcd_resolution::y1, and opj_tcd_tilecomp::y1.
Referenced by opj_j2k_decode_tile().
void opj_tcd_destroy | ( | opj_tcd_t * | tcd | ) |
Destroy a previously created TCD handle.
tcd | TCD handle to destroy |
References opj_free(), opj_tcd_free_tile(), opj_tcd::tcd_image, and opj_tcd::used_component.
Referenced by opj_j2k_copy_default_tcp_and_create_tcd(), opj_j2k_create_tcd(), opj_j2k_destroy(), and opj_j2k_end_encoding().
OPJ_BOOL opj_tcd_encode_tile | ( | opj_tcd_t * | p_tcd, |
OPJ_UINT32 | p_tile_no, | ||
OPJ_BYTE * | p_dest, | ||
OPJ_UINT32 * | p_data_written, | ||
OPJ_UINT32 | p_len, | ||
struct opj_codestream_info * | p_cstr_info, | ||
opj_tcd_marker_info_t * | p_marker_info, | ||
opj_event_mgr_t * | p_manager | ||
) |
Encodes a tile from the raw image into the given buffer.
p_tcd | Tile Coder handle |
p_tile_no | Index of the tile to encode. |
p_dest | Destination buffer |
p_data_written | pointer to an int that is incremented by the number of bytes really written on p_dest |
p_len | Maximum length of the destination buffer |
p_cstr_info | Codestream information structure |
p_marker_info | Marker information structure |
p_manager | the user event manager |
References opj_tcd_tile::comps, opj_tcd::cp, opj_tcd::cur_tp_num, opj_codestream_info::index_write, opj_codestream_info::numcomps, opj_codestream_info::numlayers, opj_tcd_tilecomp::numresolutions, opj_calloc(), OPJ_FALSE, opj_tcd_dc_level_shift_encode(), opj_tcd_dwt_encode(), opj_tcd_mct_encode(), opj_tcd_rate_allocate_encode(), opj_tcd_t1_encode(), opj_tcd_t2_encode(), OPJ_TRUE, opj_tile_info::packet, opj_tile_info::pdx, opj_tile_info::pdy, opj_tcd_resolution::ph, opj_tile_info::ph, opj_tccp::prch, opj_tccp::prcw, opj_tcd_resolution::pw, opj_tile_info::pw, opj_tcd_tilecomp::resolutions, opj_tcp::tccps, opj_tcd::tcd_image, opj_tcd::tcd_tileno, opj_tcd::tcp, opj_cp::tcps, opj_codestream_info::tile, and opj_tcd_image::tiles.
Referenced by opj_j2k_write_sod().
OPJ_UINT32 opj_tcd_get_decoded_tile_size | ( | opj_tcd_t * | p_tcd, |
OPJ_BOOL | take_into_account_partial_decoding | ||
) |
Gets the maximum tile size that will be taken by the tile once decoded.
References opj_tcd_tile::comps, opj_image::comps, opj_tcd::image, opj_tcd_tilecomp::minimum_num_resolutions, opj_image::numcomps, opj_image_comp::prec, opj_tcd_tilecomp::resolutions, opj_tcd::tcd_image, opj_tcd_image::tiles, opj_tcd::whole_tile_decoding, opj_tcd_resolution::win_x0, opj_tcd_resolution::win_x1, opj_tcd_resolution::win_y0, opj_tcd_resolution::win_y1, opj_tcd_resolution::x0, opj_tcd_resolution::x1, opj_tcd_resolution::y0, and opj_tcd_resolution::y1.
Referenced by opj_j2k_read_tile_header(), and opj_tcd_update_tile_data().
OPJ_SIZE_T opj_tcd_get_encoder_input_buffer_size | ( | opj_tcd_t * | p_tcd | ) |
Get the size in bytes of the input buffer provided before encoded.
This must be the size provided to the p_src_length argument of opj_tcd_copy_tile_data()
References opj_tcd_tile::comps, opj_image::comps, opj_tcd::image, opj_image::numcomps, opj_image_comp::prec, opj_tcd::tcd_image, opj_tcd_image::tiles, opj_tcd_tilecomp::x0, opj_tcd_tilecomp::x1, opj_tcd_tilecomp::y0, and opj_tcd_tilecomp::y1.
Referenced by opj_j2k_encode(), and opj_tcd_copy_tile_data().
OPJ_BOOL opj_tcd_init | ( | opj_tcd_t * | p_tcd, |
opj_image_t * | p_image, | ||
opj_cp_t * | p_cp, | ||
opj_thread_pool_t * | p_tp | ||
) |
Initialize the tile coder and may reuse some memory.
p_tcd | TCD handle. |
p_image | raw image. |
p_cp | coding parameters. |
p_tp | thread pool |
References opj_tcd_tile::comps, opj_tcd::cp, opj_tcd::image, opj_cp::m_enc, opj_cp::m_specific_param, opj_encoding_param::m_tp_pos, opj_tcd_tile::numcomps, opj_image::numcomps, opj_calloc(), OPJ_FALSE, OPJ_TRUE, opj_tcd::tcd_image, opj_tcd::thread_pool, opj_tcd_image::tiles, and opj_tcd::tp_pos.
Referenced by opj_j2k_copy_default_tcp_and_create_tcd(), and opj_j2k_create_tcd().
OPJ_BOOL opj_tcd_init_decode_tile | ( | opj_tcd_t * | p_tcd, |
OPJ_UINT32 | p_tile_no, | ||
opj_event_mgr_t * | p_manager | ||
) |
Allocates memory for decoding a specific tile.
p_tcd | the tile decoder. |
p_tile_no | the index of the tile received in sequence. This not necessarily lead to the tile at index p_tile_no. |
p_manager | the event manager. |
References OPJ_FALSE, and opj_tcd_init_tile().
Referenced by opj_j2k_read_tile_header().
OPJ_BOOL opj_tcd_init_encode_tile | ( | opj_tcd_t * | p_tcd, |
OPJ_UINT32 | p_tile_no, | ||
opj_event_mgr_t * | p_manager | ||
) |
Initialize the tile coder and may reuse some meory.
p_tcd | TCD handle. |
p_tile_no | current tile index to encode. |
p_manager | the event manager. |
References opj_tcd_init_tile(), and OPJ_TRUE.
Referenced by opj_j2k_pre_write_tile().
OPJ_BOOL opj_tcd_is_band_empty | ( | opj_tcd_band_t * | band | ) |
Returns whether a sub-band is empty (i.e.
whether it has a null area)
band | Sub-band handle. |
References opj_tcd_band::x0, opj_tcd_band::x1, opj_tcd_band::y0, and opj_tcd_band::y1.
Referenced by opj_t1_encode_cblks(), opj_t2_encode_packet(), opj_t2_read_packet_header(), opj_tcd_init_tile(), opj_tcd_makelayer(), opj_tcd_makelayer_fixed(), and opj_tcd_rateallocate().
OPJ_BOOL opj_tcd_is_subband_area_of_interest | ( | opj_tcd_t * | tcd, |
OPJ_UINT32 | compno, | ||
OPJ_UINT32 | resno, | ||
OPJ_UINT32 | bandno, | ||
OPJ_UINT32 | x0, | ||
OPJ_UINT32 | y0, | ||
OPJ_UINT32 | x1, | ||
OPJ_UINT32 | y1 | ||
) |
Returns whether a sub-band region contributes to the area of interest tcd->win_x0,tcd->win_y0,tcd->win_x1,tcd->win_y1.
tcd | TCD handle. |
compno | Component number |
resno | Resolution number |
bandno | Band number (not band index, ie 0, 1, 2 or 3) |
x0 | Upper left x in subband coordinates |
y0 | Upper left y in subband coordinates |
x1 | Lower right x in subband coordinates |
y1 | Lower right y in subband coordinates |
References opj_tcd_tile::comps, opj_image::comps, opj_image_comp::dx, opj_image_comp::dy, opj_tcd::image, opj_tcd_tilecomp::numresolutions, opj_uint_adds(), opj_uint_ceildiv(), opj_uint_ceildivpow2(), opj_uint_max(), opj_uint_min(), opj_tccp::qmfbid, opj_tcp::tccps, opj_tcd::tcd_image, opj_tcd::tcp, opj_tcd_image::tiles, opj_tcd::win_x0, opj_tcd::win_x1, opj_tcd::win_y0, opj_tcd::win_y1, opj_tcd_tilecomp::x0, opj_tcd_tilecomp::x1, opj_tcd_tilecomp::y0, and opj_tcd_tilecomp::y1.
Referenced by opj_t1_decode_cblks(), and opj_t2_decode_packets().
void opj_tcd_makelayer | ( | opj_tcd_t * | tcd, |
OPJ_UINT32 | layno, | ||
OPJ_FLOAT64 | thresh, | ||
OPJ_UINT32 | final | ||
) |
References opj_tcd_resolution::bands, opj_tcd_precinct::cblks, opj_tcd_precinct::ch, opj_tcd_tile::comps, opj_tcd_precinct::cw, opj_tcd_layer::data, opj_tcd_cblk_enc::data, opj_tcd_layer::disto, opj_tcd_tile::distolayer, opj_tcd_pass::distortiondec, opj_tcd_precinct::enc, opj_tcd_cblk_enc::layers, opj_tcd_layer::len, opj_tcd_resolution::numbands, opj_tcd_tile::numcomps, opj_tcd_layer::numpasses, opj_tcd_cblk_enc::numpassesinlayers, opj_tcd_tilecomp::numresolutions, opj_tcd_is_band_empty(), opj_tcd_cblk_enc::passes, opj_tcd_resolution::ph, opj_tcd_band::precincts, opj_tcd_resolution::pw, opj_tcd_pass::rate, opj_tcd_tilecomp::resolutions, opj_tcd::tcd_image, opj_tcd_image::tiles, and opj_tcd_cblk_enc::totalpasses.
Referenced by opj_tcd_rateallocate().
void opj_tcd_makelayer_fixed | ( | opj_tcd_t * | tcd, |
OPJ_UINT32 | layno, | ||
OPJ_UINT32 | final | ||
) |
References opj_tcd_resolution::bands, opj_tcd_precinct::cblks, opj_tcd_precinct::ch, opj_tcd_tile::comps, opj_image::comps, opj_tcd::cp, opj_tcd_precinct::cw, opj_tcd_layer::data, opj_tcd_cblk_enc::data, opj_tcd_precinct::enc, opj_tcd::image, opj_tcd_cblk_enc::layers, opj_tcd_layer::len, opj_cp::m_enc, opj_encoding_param::m_matrice, opj_cp::m_specific_param, opj_tcd_resolution::numbands, opj_tcd_cblk_enc::numbps, opj_tcd_tile::numcomps, opj_tcp::numlayers, opj_tcd_layer::numpasses, opj_tcd_cblk_enc::numpassesinlayers, opj_tcd_tilecomp::numresolutions, opj_tcd_is_band_empty(), opj_tcd_cblk_enc::passes, opj_tcd_resolution::ph, opj_image_comp::prec, opj_tcd_band::precincts, opj_tcd_resolution::pw, opj_tcd_pass::rate, opj_tcd_tilecomp::resolutions, opj_tcd::tcd_image, opj_tcd::tcp, and opj_tcd_image::tiles.
Referenced by opj_tcd_rateallocate_fixed().
opj_tcd_marker_info_t* opj_tcd_marker_info_create | ( | OPJ_BOOL | need_PLT | ) |
Create a new opj_tcd_marker_info_t* structure.
need_PLT | Whether information is needed to generate PLT markers. |
References opj_tcd_marker_info::need_PLT, and opj_calloc().
Referenced by opj_j2k_write_sod().
void opj_tcd_marker_info_destroy | ( | opj_tcd_marker_info_t * | p_tcd_marker_info | ) |
Destroy a previously created opj_tcd_marker_info_t* structure.
p_tcd_marker_info | Structure to destroy |
References opj_free(), and opj_tcd_marker_info::p_packet_size.
Referenced by opj_j2k_write_sod().
OPJ_BOOL opj_tcd_rateallocate | ( | opj_tcd_t * | tcd, |
OPJ_BYTE * | dest, | ||
OPJ_UINT32 * | p_data_written, | ||
OPJ_UINT32 | len, | ||
opj_codestream_info_t * | cstr_info, | ||
opj_event_mgr_t * | p_manager | ||
) |
References opj_tcd_resolution::bands, opj_tcd_precinct::cblks, opj_tcd_precinct::ch, opj_tcd_tile::comps, opj_image::comps, opj_tcd::cp, opj_tcd::cur_pino, opj_tcd::cur_tp_num, opj_tcd_precinct::cw, opj_tcd_tile::distolayer, opj_tcp::distoratio, opj_tcd_pass::distortiondec, opj_tcd_tile::distotile, opj_tile_info::distotile, opj_tcd_precinct::enc, opj_tcd::image, opj_encoding_param::m_disto_alloc, opj_cp::m_enc, opj_encoding_param::m_fixed_quality, opj_cp::m_specific_param, max(), min(), opj_tcd_resolution::numbands, opj_tcd_tile::numcomps, opj_tcp::numlayers, opj_tcd_tilecomp::numpix, opj_tcd_tile::numpix, opj_tile_info::numpix, opj_tcd_tilecomp::numresolutions, OPJ_FALSE, OPJ_IS_CINEMA, OPJ_IS_IMF, opj_malloc(), opj_t2_create(), opj_t2_destroy(), opj_t2_encode_packets(), opj_tcd_is_band_empty(), opj_tcd_makelayer(), OPJ_TRUE, opj_uint_min(), opj_tcd_cblk_enc::passes, opj_tcd_resolution::ph, opj_image_comp::prec, opj_tcd_band::precincts, opj_tcd_resolution::pw, opj_tcd_pass::rate, opj_tcp::rates, opj_tcd_tilecomp::resolutions, opj_cp::rsiz, opj_tcd::tcd_image, opj_tcd::tcd_tileno, opj_tcd::tcp, opj_tile_info::thresh, THRESH_CALC, opj_codestream_info::tile, opj_tcd_image::tiles, opj_tcd_cblk_enc::totalpasses, opj_tcd::tp_pos, opj_tcd_cblk_enc::x0, opj_tcd_cblk_enc::x1, opj_tcd_cblk_enc::y0, and opj_tcd_cblk_enc::y1.
Referenced by opj_tcd_rate_allocate_encode().
void opj_tcd_rateallocate_fixed | ( | opj_tcd_t * | tcd | ) |
References opj_tcp::numlayers, opj_tcd_makelayer_fixed(), and opj_tcd::tcp.
Referenced by opj_tcd_rate_allocate_encode().
void opj_tcd_reinit_segment | ( | opj_tcd_seg_t * | seg | ) |
Reinitialize a segment.
Referenced by opj_t2_init_seg(), and opj_tcd_code_block_dec_allocate().
OPJ_BOOL opj_tcd_update_tile_data | ( | opj_tcd_t * | p_tcd, |
OPJ_BYTE * | p_dest, | ||
OPJ_UINT32 | p_dest_length | ||
) |
Copies tile data from the system onto the given memory block.
References opj_tcd_tile::comps, opj_image::comps, opj_tcd_tilecomp::data, opj_tcd_tilecomp::data_win, opj_tcd::image, opj_tcd_tilecomp::minimum_num_resolutions, opj_image::numcomps, OPJ_FALSE, opj_tcd_get_decoded_tile_size(), OPJ_TRUE, opj_image_comp::prec, opj_image_comp::resno_decoded, opj_tcd_tilecomp::resolutions, opj_image_comp::sgnd, opj_tcd::tcd_image, opj_tcd_image::tiles, opj_tcd::whole_tile_decoding, opj_tcd_resolution::win_x0, opj_tcd_resolution::win_x1, opj_tcd_resolution::win_y0, opj_tcd_resolution::win_y1, opj_tcd_resolution::x0, opj_tcd_resolution::x1, opj_tcd_resolution::y0, and opj_tcd_resolution::y1.
Referenced by opj_j2k_decode_tile().