summaryrefslogtreecommitdiff
path: root/src/lib/openjp2
AgeCommit message (Collapse)Author
2017-03-03PR #894 (without BOOK implementation)dev-restartAntonin Descampe
2016-09-26OPENJPEG_NAMESPACE is configurable by userMathieu Malaterre
2016-09-20Disable automatic compilation of t1_generate_lutsAntonin Descampe
Fix #831
2016-09-16renamed USE_THREAD to OPJ_USE_THREADAntonin Descampe
renaming to be consistent with previous OPJ CMake options
2016-09-15Remove TODO for overflow check (#842)Matthieu Darbois
The check was already done. It’s been simplified. Reformat to get consistent style throughout the functions.
2016-09-15Add overflow checks for opj_aligned_malloc (#841)Matthieu Darbois
See https://pdfium.googlesource.com/pdfium/+/b20ab6c7acb3be1393461eb650ca8fa4660c937e/third_party/libopenjpeg20/0020-opj_aligned_malloc.patch
2016-09-14Flags in T1 shall be unsigned (#840)Matthieu Darbois
This will remove some conversion warnings
2016-09-14Fix some warnings (#838)Matthieu Darbois
Fix warnings introduced by uclouvain/openjpeg#786
2016-09-13Merge branch 'bit-fields-type' of https://github.com/smuehlst/openjpeg into ↵Antonin Descampe
smuehlst-bit-fields-type
2016-09-13Merge pull request #786 from rouault/tier1_optimizations_multithreadingAntonin Descampe
T1 & DWT multithreading decoding optimizations
2016-09-08Fix coverity 113065 (CWE-484) (#824)Matthieu Darbois
2016-09-08Merge branch 'master' of https://github.com/uclouvain/openjpeg into ↵Even Rouault
tier1_optimizations_multithreading_2 Conflicts: src/lib/openjp2/t1.c
2016-09-08opj_thread_pool: fix potential deadlock at thread pool destructionEven Rouault
2016-09-08Cast to size_t before multiplicationMatthieu Darbois
Need to cast to size_t before multiplication otherwise overflow check is useless.
2016-09-08Add sanity check for tile coordinates (#823)Matthieu Darbois
Coordinates are casted from OPJ_UINT32 to OPJ_INT32 Add sanity check for negative values and upper bound becoming lower than lower bound. See also https://pdfium.googlesource.com/pdfium/+/b6befb2ed2485a3805cddea86dc7574510178ea9
2016-09-07Moved type OPJ_BITFIELD from openjpeg.h to opj_includes.hStephan Mühlstrasser
OPJ_BITFIELD is used only in internal headers and must not appear in the public openjpeg.h header.
2016-09-07Merge branch 'master' into bit-fields-typeStephan Mühlstrasser
2016-09-06fix incrementing of "l_tcp->m_nb_mcc_records" in opj_j2k_read_mcc (#820)Matthieu Darbois
2016-09-06Fix an integer overflow issue (#809)trylab
Prevent an integer overflow issue in function opj_pi_create_decode of pi.c.
2016-09-06Add overflow check in opj_tcd_init_tile (#819)Matthieu Darbois
2016-09-06Fix leak & invalid behavior of opj_jp2_read_ihdr (#818)Matthieu Darbois
In case multiple ihdr box are present, only the first one shall be taken into account.
2016-09-06Add overflow check in opj_j2k_update_image_data (#817)Matthieu Darbois
2016-09-06Change 'restrict' define to 'OPJ_RESTRICT' (#816)Matthieu Darbois
Visual Studio 2015 does not pass regression tests with `__restrict` so kept disabled for MSVC. Need to check proper usage of OPJ_RESTRICT (if correct then there’s probably a bug in vc14) Closes #661
2016-08-11[Win32] Use _beginthreadex instead of CreateThread()Even Rouault
2016-07-27Unified bit-field declaration, removed tabs.Stephan Mühlstrasser
2016-07-25Create separate type for bit-fields.Stephan Mühlstrasser
The definition of bit-fields with type OPJ_UINT32 caused complilation errors on IBM iSeries, because OPJ_UINT32 is defined as uint32_t, and uint32_t is defined as unsigned long in <stdint.h>. The definition of bit-fields with an integer type of a specific size doesn't make sense anyway.
2016-05-26Be robust to failed allocations of job structuresEven Rouault
2016-05-25Use thread pool for DWT decodingEven Rouault
2016-05-25Use thread-pool for T1 decodingEven Rouault
2016-05-25Add opj_codec_set_threads() in public API and propagate resulting thread ↵Even Rouault
pool to tcd level By default, only the main thread is used. If opj_codec_set_threads() is not used, but the OPJ_NUM_THREADS environment variable is set, its value will be used to initialize the number of threads. The value can be either an integer number, or "ALL_CPUS". If OPJ_NUM_THREADS is set and this function is called, this function will override the behaviour of the environment variable.
2016-05-25Add threading and thread pool APIEven Rouault
2016-05-23Fix MSVC210 build issue (use of C99 declaration after statement) introduced ↵Even Rouault
in ba1edf6cd41415594729bc90ad3b0008af48251e
2016-05-23Improve perf of opj_t1_dec_sigpass_mqc_vsc() and ↵Even Rouault
opj_t1_dec_refpass_mqc_vsc() with loop unrolling
2016-05-23Better inlining of opj_t1_updateflagscolflags() w.r.t. flags_strideEven Rouault
2016-05-23opj_t1_dec_clnpass(): remove useless test in the runlen decoding path (of ↵Even Rouault
the non VSC case)
2016-05-23opj_t1_decode_cblks(): tiny perf increase when loop unrollingEven Rouault
2016-05-23Tier 1 decoding: add a colflags arrayEven Rouault
Addition flag array such that colflags[1+0] is for state of col=0,row=0..3, colflags[1+1] for col=1, row=0..3, colflags[1+flags_stride] for col=0,row=4..7, ... This array avoids too much cache trashing when processing by 4 vertical samples as done in the various decoding steps.
2016-05-22Const'ify lut arrays so they are in the read-only data sectionEven Rouault
2016-05-22Reduce number of occurrences of orient function argumentEven Rouault
This is essentially used to shift inside the lut_ctxno_zc, which we can precompute at the beginning of opj_t1_decode_cblk() / opj_t1_encode_cblk()
2016-05-21Specialize decoding passes for 64x64 code blocksEven Rouault
2016-05-21Improve code generation in opj_t1_dec_clnpass()Even Rouault
Add a opj_t1_dec_clnpass_step_only_if_flag_not_sig_visit() method that does the job of opj_t1_dec_clnpass_step_only() assuming the conditions are met. And use it in opj_t1_dec_clnpass(). The compiler generates more efficient code.
2016-05-21opj_t1_updateflags(): tiny optimizationEven Rouault
We can avoid using a loop-up table with some shift arithmetics.
2016-05-21Move some MQC functions into a header for speedKal Conley
Allow these hot functions to be inlined. This boosts decode performance by ~10%.
2016-05-10Update implementation of opj_calloc (#705)Stefan Weil
2016-05-08Fix Out-of-Bounds Access in function opj_tgt_resetmayeut
Fix uclouvain/openjpeg#775
2016-05-08Fix division by zeromayeut
Fix uclouvain/openjpeg#733
2016-05-02Use lowercase for cmake commands consistenlyJulien Malik
Inspired from https://github.com/InsightSoftwareConsortium/ITK/blob/master/Utilities/Maintenance/HowToCreateTheCMakeCaseConversion.txt This needs vim 7.3 and fails with vim 7.4 This also fixes a number of : - missing empty line at end of files - useless space at end of lines
2016-05-02Fix UBSan gcc warning for first arg to memset non nullJulien Malik
2016-04-30Merge pull request #706 from mayeut/issue135Antonin Descampe
Fix issue 135 The fix is legal regarding the standard but I did not manage to find out if it covers a bug in opj_t2_read_packet_data or if the file is corrupted
2016-04-30Fix some coverity warningsmayeut