| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2017-09-19 | Add capability to decode only a subset of all components of an image. | Even Rouault | |
| This adds a opj_set_decoded_components(opj_codec_t *p_codec, OPJ_UINT32 numcomps, const OPJ_UINT32* comps_indices) function, and equivalent "opj_decompress -c compno[,compno]*" option. When specified, neither the MCT transform nor JP2 channel transformations will be applied. Tests added for various combinations of whole image vs tiled-based decoding, full or reduced resolution, use of decode area or not. | |||
| 2017-09-19 | Fix warnings and errors when compiling with a c++ compiler (#1021) | Even Rouault | |
| 2017-09-19 | Fix compilation with AppleClang 8.1.0.8020042 (#1020) | Even Rouault | |
| 2017-09-17 | Build: make sure that -DBUILD_SHARED_LIBS:bool=off is honoured to build only ↵ | Even Rouault | |
| the static lib (#1019) | |||
| 2017-09-08 | opj_tcd_mct_decode(): avoid heap buffer overflow when components have not ↵ | Even Rouault | |
| the same number of resolutions. Also fixes an issue with subtile decoding. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3331. Credit to OSS Fuzz | |||
| 2017-09-08 | opj_j2k_update_image_data(): restrict optimized path | Even Rouault | |
| 2017-09-08 | Use opj_image_data_free() where appropriate (adapted from ↵ | Even Rouault | |
| https://github.com/uclouvain/openjpeg/pull/1015/commits/dab9db0723a5bb9f3d745f9dd7a0b8b3b18b8054, #1014) | |||
| 2017-09-07 | Properly fix cc893a4ebfaf8c42cf1221ac82c83df91e77340b to avoid ↵ | Even Rouault | |
| heap-buffer-overflow when numcomps < 3 | |||
| 2017-09-07 | Avoid malloc poisoning issue when including <pthread.h> of uclibc (#1013) | Even Rouault | |
| 2017-09-07 | opj_tcd_mct_decode(): fix checks to verify MCT can be done safely. Fixes ↵ | Even Rouault | |
| https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3305 (master only) | |||
| 2017-09-06 | Fix invalid access out of bounds, and bad behaviour, when calling repeatdly ↵ | Even Rouault | |
| opj_get_decoded_tile() on an image with a color palette | |||
| 2017-09-06 | Fix 2.2.0 regression when reading codestream with reperated calls to ↵ | Even Rouault | |
| opj_get_decoded_tile() where tile parts of a same tile are not consecutive This check was introduced per #939, but relied on the incorrect assumption we decode all the tile parts of all tiles. | |||
| 2017-09-06 | Fix null pointer dereference on partial tile decoding when they are empty. ↵ | Even Rouault | |
| Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3297 (master only) | |||
| 2017-09-05 | Merge pull request #1010 from rouault/subtile_decoding_stage3 | Even Rouault | |
| Subtile decoding: memory use reduction and perf improvements | |||
| 2017-09-04 | Replace uses of size_t by OPJ_SIZE_T | Even Rouault | |
| 2017-09-02 | Improve error message when specifying a too big cp_reduce parameter (#474) | Even Rouault | |
| 2017-09-01 | opj_v4dwt_decode_step1_sse(): rework a bit to improve code generation | Even Rouault | |
| 2017-09-01 | opj_j2k_update_image_data(): avoid allocating image buffer if we can just ↵ | Even Rouault | |
| reuse the tile buffer one | |||
| 2017-09-01 | opj_t1_clbl_decode_processor(): use SSE2 in subtile decoding code path, for ↵ | Even Rouault | |
| irreversible | |||
| 2017-09-01 | Replace error message 'Not enough memory for tile data' by 'Size of tile ↵ | Even Rouault | |
| data exceeds system limits' (refs https://github.com/uclouvain/openjpeg/pull/730#issuecomment-326654188) | |||
| 2017-09-01 | opj_t1_decode_cblk(): move some code to codeblock processor for ↵ | Even Rouault | |
| (theoretical) better multi-threading in subtile decoding | |||
| 2017-09-01 | sparse_array: optimizations for lossy case | Even Rouault | |
| 2017-09-01 | opj_tcd_rateallocate(): make sure to use all passes for a lossless layer (#1009) | Even Rouault | |
| And save a useless loop, which should be a tiny faster. | |||
| 2017-09-01 | opj_j2k_setup_encoder(): emit warnings if tcp_rates are not decreasing or ↵ | Even Rouault | |
| tcp_distoratio are not increasing (#1009) | |||
| 2017-09-01 | opj_j2k_setup_encoder(): avoid potential int overflow in computations ↵ | Even Rouault | |
| related to max_cs_size | |||
| 2017-09-01 | opj_compress help: revert 32572617765cb9d77302384653a48d793b8f657f and ↵ | Even Rouault | |
| indicate 1 again as being the value to get lossless for -r. In opj_j2k_setup_encoder(), make sure that ll rates[] <= 1.0 are set to 0. Document 0 as being lossless for -q / tcp_distoratio (#1009) | |||
| 2017-09-01 | opj_v4dwt_decode_step2_sse(): loop unroll | Even Rouault | |
| 2017-09-01 | opj_dwt_decode_partial_97(): simplify/more efficient use of sparse arrays in ↵ | Even Rouault | |
| vertical pass | |||
| 2017-09-01 | opj_tcd_dc_level_shift_decode(): optimize lossy case | Even Rouault | |
| 2017-09-01 | opj_dwt_decode_partial_1_parallel(): add SSE2 optimization | Even Rouault | |
| 2017-09-01 | Sub-tile decoding: speed up vertical pass in IDWT5x3 by processing 4 cols at ↵ | Even Rouault | |
| a time | |||
| 2017-09-01 | Tiny perf improvement in T1 stage for subtile decoding | Even Rouault | |
| 2017-09-01 | Optimize opj_dwt_decode_partial_1() when cas == 0 | Even Rouault | |
| 2017-09-01 | opj_j2k_update_image_data(): avoid zero-ing the buffer if not needed | Even Rouault | |
| 2017-09-01 | Optimize reading/write into sparse array | Even Rouault | |
| 2017-09-01 | Allow several repeated calls to opj_set_decode_area() and opj_decode() for ↵ | Even Rouault | |
| single-tiled images * Only works for single-tiled images --> will error out cleanly, as currently in other cases * Save re-reading the codestream for the tile, and re-use code-blocks of the previous decoding pass. * Future improvements might involve improving opj_decompress, and the image writing logic, to use this strategy. | |||
| 2017-09-01 | opj_j2k_decode_tiles(): apply whole single tile image decoding optimization ↵ | Even Rouault | |
| to reading at reduced resolution as well | |||
| 2017-09-01 | Various changes to allow tile buffers of more than 4giga pixels | Even Rouault | |
| Untested though, since that means a tile buffer of at least 16 GB. So there might be places where uint32 overflow on multiplication still occur... | |||
| 2017-09-01 | TCD: allow tile buffer to be greater than 4GB on 64 bit hosts (but number of ↵ | Even Rouault | |
| pixels must remain under 4 billion) | |||
| 2017-09-01 | Fix compiler warning in release mode | Even Rouault | |
| 2017-09-01 | Remove limitation that prevents from opening images bigger than 4 billion pixels | Even Rouault | |
| However the intermediate buffer for decoding must still be smaller than 4 billion pixels, so this is useful for decoding at a lower resolution level, or subtile decoding. | |||
| 2017-09-01 | opj_tcd_init_tile(): fix typo on overflow detection condition (introduced in ↵ | Even Rouault | |
| previous commit) | |||
| 2017-09-01 | opj_dwt_decode_partial_tile(): avoid undefined behaviour in lifting ↵ | Even Rouault | |
| operation by properly initializing working buffer | |||
| 2017-09-01 | Sub-tile decoding: only allocate tile component buffer of the needed dimension | Even Rouault | |
| Instead of being the full tile size. * Use a sparse array mechanism to store code-blocks and intermediate stages of IDWT. * IDWT, DC level shift and MCT stages are done just on that smaller array. * Improve copy of tile component array to final image, by saving an intermediate buffer. * For full-tile decoding at reduced resolution, only allocate the tile buffer to the reduced size, instead of the full-resolution size. | |||
| 2017-09-01 | opj_j2k_setup_encoder(): validate code block width/height | Even Rouault | |
| 2017-09-01 | opj_t1_allocate_buffers(): remove useless overflow checks | Even Rouault | |
| 2017-09-01 | Fix undefined shift behaviour in opj_dwt_is_whole_tile_decoding(). Fixes ↵ | Even Rouault | |
| https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3255. Credit to OSS Fuzz | |||
| 2017-08-29 | Use IDWT whole tile decoding if the area of interest equals to the image ↵ | Even Rouault | |
| bounds, taking into account the reduced resolution factor | |||
| 2017-08-28 | Subtile decoding: fix overflows in subband coordinate computation that cause ↵ | Even Rouault | |
| later buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3115. Credit to OSS Fuzz. master only | |||
| 2017-08-28 | Make opj_set_decode_area() and opj_decode() take into account ↵ | Even Rouault | |
| opj_set_decoded_resolution_factor() (#1006, affect API use) * Better document usage of opj_set_decode_area(), ie expecting coordinates in full resolution/reference grid even if requesting at a lower resolution factor * Make sure that image->comps[].factor is set by opj_set_decode_area() and opj_decode() from the value specified in opj_set_decoded_resolution_factor() * opj_decompress: add 2 environmenet variables to test alternate ways of using the API, namely USE_OPJ_SET_DECODED_RESOLUTION_FACTOR=YES to use opj_set_decoded_resolution_factor() instead of parameters.cp_reduce, and SKIP_OPJ_SET_DECODE_AREA=YES to not call opj_set_decode_area() if -d is not specified. | |||
