summaryrefslogtreecommitdiff
path: root/src/lib
AgeCommit message (Collapse)Author
2021-12-05Fix singular/plural mismatchStefan Weil
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2021-12-05Fix some typos (found by codespell)Stefan Weil
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2021-10-21API: deprecate 'bpp' member in favor of 'prec'Even Rouault
in opj_image_comp and opj_image_comptparm structures. bpp was redundant with prec, and almost never set by the library, except by opj_image_create(). This change should hopefully not impact existing, working, users of the API, which should already have used prec to get things working. Fixes #1379
2021-09-25ht_dec.c: fix likely issue on big endian hosts (untested)Even Rouault
2021-09-25Added support for high throughput (HTJ2K) decoding.Aous Naman
There are a few limitations: - mixed mode (HT and regular code blocks) is not supported. - ROI in HT blocks is not supported. - Placeholder passes are not supported. - MultiHT sets are not support, only a singleHT set. - there are known issues with some compliance testing files related to the parsing of packet header.
2021-09-03Avoid integer overflows in DWT. Fixes ↵Even Rouault
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11700 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=30646
2021-08-30Merge pull request #1373 from DimitriPapadopoulos/lgtmEven Rouault
LGTM warning: Comparison result is always the same
2021-08-30LGTM warning: Comparison result is always the sameDimitri Papadopoulos
Comparison is always true because pos >= 0.
2021-08-01cmake: add install interface include directoryAnonymous Maarten
2021-07-12Fix code formattingEven Rouault
2021-07-12opj_j2k_is_imf_compliant: Fix out of bounds access.Sebastian Rasmussen
Previously when mainlevel was parsed == 12 openjpeg would generate a warning, but then the sublevel value would be compared to an out of bounds element in the tabMaxSubLevelFromMainLevel array. From this commit OpenJPEG will only use mainlevel if in range.
2021-07-12opj_j2k_is_imf_compliant: Fix argument formatting for warnings.Sebastian Rasmussen
2021-06-07Add support for enabling generation of TLM markers in encoderEven Rouault
Support was already there, but restricted to Cinema and IMF profiles, and 255 tiles * Add -TLM switch added to opj_compress * Make opj_encoder_set_extra_options() function accept a TLM=YES option.
2021-06-07openjpeg.c: avoid casts of function pointersEven Rouault
2021-05-04Remove obsolete components JPWL, JP3D and MJ2Even Rouault
2020-12-21Change defined WIN32Jamaika1
2020-12-04pi.c: avoid out of bounds access with POC (fixes #1302)Even Rouault
2020-12-04Encoder: grow again buffer size in opj_tcd_code_block_enc_allocate_data() ↵yuan
(fixes #1283)
2020-12-02Merge pull request #1301 from rouault/fix_1299Even Rouault
opj_j2k_write_sod(): avoid potential heap buffer overflow (fixes #1299) (probably master only)
2020-12-02Merge pull request #1300 from rouault/complement_1293Even Rouault
pi.c: avoid out of bounds access with POC (refs https://github.com/uclouvain/openjpeg/issues/1293#issuecomment-737122836)
2020-12-02opj_j2k_write_sod(): avoid potential heap buffer overflow (fixes #1299) ↵Even Rouault
(probably master only)
2020-12-02pi.c: avoid out of bounds access with POC (refs ↵Even Rouault
https://github.com/uclouvain/openjpeg/issues/1293#issuecomment-737122836)
2020-12-02opj_t2_encode_packet(): avoid out of bound access of #1297, but likely not ↵Even Rouault
the proper fix
2020-12-02Merge pull request #1295 from rouault/fix_1293Even Rouault
opj_j2k_setup_encoder(): validate POC compno0 and compno1 (fixes #1293)
2020-12-02Merge pull request #1296 from rouault/workaround_1294Even Rouault
opj_t2_encode_packet(): avoid out of bound access of #1294, but likely not the proper fix
2020-12-01opj_j2k_setup_encoder(): validate POC compno0 (fixes #1293)Even Rouault
2020-12-01opj_t2_encode_packet(): avoid out of bound access of #1294, but likely not ↵Even Rouault
the proper fix
2020-11-30Encoder: avoid global buffer overflow on irreversible conversion when too ↵Even Rouault
many decomposition levels are specified (fixes #1286)
2020-11-30Decoding: deal with some SPOT6 images that have tiles with a single ↵Even Rouault
tile-part with TPsot == 0 and TNsot == 0, and with missing EOC
2020-11-26Free p_tcd_marker_info to avoid memory leakyuan
2020-11-25Encoder: grow again buffer size in opj_tcd_code_block_enc_allocate_data() ↵yuan
(fixes #1283)
2020-11-23Encoder: grow again buffer size in opj_tcd_code_block_enc_allocate_data() ↵Even Rouault
(fixes #1283)
2020-11-23Encoder: grow buffer size in opj_tcd_code_block_enc_allocate_data() to avoid ↵Even Rouault
write heap buffer overflow in opj_mqc_flush (fixes #1283)
2020-11-23Fix typo in internal function nameEven Rouault
2020-10-09Merge pull request #1253 from rouault/floating_point_irreversible_encodingEven Rouault
Single-threaded performance improvements in forward DWT for 5-3 and 9-7 (and other improvements)
2020-09-16Encoder: avoid uint32 overflow when allocating memory for codestream buffer ↵Even Rouault
(fixes #1243)
2020-06-22Merge pull request #1260 from sebras/fix-issue-1259Even Rouault
openjp2: Plug image leak when failing to allocate codestream index.
2020-06-23openjp2: Plug image leak when failing to allocate codestream index.Sebastian Rasmussen
This fixes issue #1259.
2020-06-23openjp2: Plug memory leak when setting data as TLS fails.Sebastian Rasmussen
Previously the Tier 1 handle was not freed when setting it as TLS failed. This fixes issue #1257.
2020-06-23openjp2: Error out if failing to create Tier 1 handle.Sebastian Rasmussen
Previously when the handle failed to be created (e.g. when opj_calloc returned NULL due to low memory), the code still assumed that the t1 handle pointer was valid and dereferenced NULL, causing a crash. After this commit OpenJPEG will instead error out under this condition. This fixes issue #1255.
2020-06-10Testing for invalid values of width, height, numcomps (#1254)szukw000
2020-05-24T1 encoder: speed-up by aggressive inlining and more cache friendly data ↵Even Rouault
organization ~ 9% speed improvement seen on 10980x10980 uint16 image, T36JTT_20160914T074612_B02.tif opj_compress time from 17.2s to 15.8s
2020-05-23Forward DWT 9-7: major speed up by vectorizing vertical passEven Rouault
`bench_dwt -I -encode` times goes from 8.6s to 2.1s
2020-05-23Forward DWT 5-3: major speed up by vectorizing vertical passEven Rouault
`bench_dwt -encode` times goes from 7.9s to 1.7s
2020-05-22Forward DWT: small code refactoring to allow future improvements for the ↵Even Rouault
vertical pass
2020-05-22dwt.c: remove unused typedefEven Rouault
2020-05-22Forward DWT 5x3: performance improvements in horizontal pass, and modest in ↵Even Rouault
vertical pass
2020-05-22Forward DWT: small code refactoring to allow future improvements for the ↵Even Rouault
horizontal pass
2020-05-21Speed-up 9x7 IDWD by ~30% with OPJ_NUM_THREADS=2Even Rouault
"bench_dwt -I" time goes from 2.2s to 1.5s
2020-05-21Remove useless + 5U margin in opj_dwt_decode_tile_97()Even Rouault
Nothing in code analysis nor test suite shows that this margin is needed. It dates back to commit dbeebe72b9d35f6ff807c21c7f217b569fa894f6 where vector 9x7 decoding was introduced.