Even Rouault
9cbc9903c3
Merge branch 't1_flag_optimizations'
2017-06-13 12:09:52 +02:00
Even Rouault
2609fb8077
Packet header writing: set empty packet header bit to 0 when appropriate (small optimization)
2017-06-12 18:38:11 +02:00
Even Rouault
73d1510d47
Encoder: fix packet writing of empty sub-bands ( #891 , #892 )
...
There are situations where, given a tile size, at a resolution level,
there are sub-bands with x0==x1 or y0==y1, that consequently don't have any
valid codeblocks, but the other sub-bands may be non-empty.
Given that we recycle the memory from one tile to another one, those
ghost codeblocks might be non-0 and thus candidate for packet inclusion.
2017-06-12 18:37:50 +02:00
Even Rouault
81c5311758
T1: fix BYPASS/LAZY, TERMALL/RESTART and PTERM/ERTERM encoding modes. ( #674 )
...
There were a number of defects regarding when and how the termination of
passes had to done and the computation of their rate.
2017-06-09 10:49:03 +02:00
Even Rouault
9a9b06911e
opj_t1_dec_sigpass_raw/opj_t1_dec_refpass_raw: harmonize style with mqc methods
2017-06-02 19:22:15 +02:00
Even Rouault
532243f1fd
MQC/RAW decoder: use an artificial 0xFF 0xFF terminating marker.
...
This saves comparing the current pointer with the end of buffer pointer.
This results at least in tiny speed improvement for raw decoding, and
smaller code size for MQC as well.
This kills the remains of the raw.h/.c files that were only used for
decoding. Encoding using the mqc structure already.
2017-06-02 18:24:07 +02:00
Even Rouault
9b39fc4bcc
Fix documentation of opj_t1_decode_cblks()
2017-06-02 18:23:49 +02:00
Even Rouault
dde6cbabc0
Simplify VSC handling: instead of masking out bits when reading the 4th row.
...
Do not set them when updating flags of the 1st row
2017-06-02 18:23:38 +02:00
Even Rouault
3d9940a35b
Force inlining of mqc decoding and pass steps through heavy use of macros, so as to get better register allocation
2017-06-02 18:23:20 +02:00
Even Rouault
7e8b502842
t1_generate_luts.c: fix compiler warnings
2017-06-02 18:22:59 +02:00
Even Rouault
2ba861c37c
Optimize opj_t1_update_flags()
2017-06-02 18:22:42 +02:00
Even Rouault
a0861855c1
T1: remove use of neghalf variable. It is useless since bpno is always > 0
2017-06-02 18:22:21 +02:00
Even Rouault
10410fe72e
T1: avoid pointer indirection for mqc and raw members of opj_t1_t
2017-06-02 18:21:54 +02:00
Even Rouault
a5003787ff
T1: remove flags_stride variable from opj_t1_t
2017-06-02 18:21:39 +02:00
Even Rouault
0ec842e1f1
Inline opj_raw_decode()
2017-06-02 18:21:21 +02:00
Even Rouault
aa7a8a4398
T1: loop unrolling in dec_sigpass_raw and dec_refpass_raw
2017-06-02 18:20:58 +02:00
Even Rouault
68557ff503
T1: Transpose coder optimizations to decoder, and cleanup code
2017-06-02 18:20:35 +02:00
Even Rouault
1957a498b6
Fix compiler warnings
2017-05-23 17:06:46 +02:00
Even Rouault
40c0f42def
Factor index computation for lut_enc_ctxno_sc and lut_enc_spb
2017-05-23 17:06:46 +02:00
Even Rouault
d6907b9304
Optimize a bit opj_t1_enc_clnpass()
2017-05-23 17:06:46 +02:00
Even Rouault
c76a592131
T1: remove unused code in decoder
2017-05-23 17:06:46 +02:00
Even Rouault
4068363ff5
T1: fix VSC mode in encoder
2017-05-23 16:16:32 +02:00
Even Rouault
cd12414c6b
T1: use more compact flags to optimize cache usage in encoder passes. ( #172 )
...
Ported from Carl Hetherington work (actually through Matthieu Darbois's port
on top of OpenJPEG 2.1.0)
Can reduce total encoding time by 10-15%
WARNING: VSC mode is not implemented, and so is a temporary regression
that must be fixed.
2017-05-23 16:16:32 +02:00
Even Rouault
53d46fc733
Merge pull request #936 from rouault/master_warnings
...
CMake: add stronger warnings for openjp2 lib/bin by default, and error out on declaration-after-statement
2017-05-23 16:15:55 +02:00
Even Rouault
a8ca7c51f3
CMake: add stronger warnings for openjp2 lib/bin by default, and error out on declaration-after-statement
...
And remove occurences of unused arguments in src/lib/openjp2
2017-05-23 15:47:57 +02:00
Even Rouault
6e97d877b1
Merge pull request #935 from rouault/add_compress_vsc_test
...
Tests: test opj_compress in VSC mode (related to #172 )
2017-05-23 14:49:38 +02:00
Even Rouault
2d2c368b19
Tests: test opj_compress in VSC mode (related to #172 )
2017-05-23 14:31:39 +02:00
Even Rouault
8728cfbc79
t1.c: fix compiler warnings
2017-05-23 13:54:28 +02:00
Even Rouault
83d7a6d4a4
MQC: remove disabled MQC_PERF_OPT mode, which brings no performance improvements (see #923 )
2017-05-15 14:11:47 +02:00
Even Rouault
4431fa7265
Add comments about non successfull attempt of implementing alternate INITDEC, DECODE and BYTEIN procedures (refs #921 )
2017-05-15 14:09:51 +02:00
Even Rouault
f7a126af61
Merge pull request #926 from rouault/reformat_h_files
...
Reformat: apply reformattin on .h files (#128 )
2017-05-15 13:08:03 +02:00
Even Rouault
3c2972f924
Reformat: apply reformattin on .h files ( #128 )
2017-05-15 12:21:30 +02:00
Even Rouault
28d2eabca7
Merge pull request #919 from rouault/reformat
...
Add mechanisms to reformat and check code style, and reformat whole codebase (#128 )
2017-05-15 12:09:45 +02:00
Even Rouault
0ecac46a1d
perf_test.py: implement -i option
2017-05-11 20:18:42 +02:00
Even Rouault
cde210be39
astyle.options: use non deprecated option name
2017-05-11 11:21:37 +02:00
Even Rouault
563bd8499e
Reformat whole codebase with astyle.options ( #128 )
2017-05-09 20:46:20 +02:00
Even Rouault
d4e54e9f35
Add mechanisms to reformant and check code style ( #128 )
...
Use an internal version of astyle (astyle 3.0). Scripts taken from QGIS.
astyle.options from https://github.com/uclouvain/openjpeg/issues/128
scripts/prepare-commit.sh can be used locally to automatically reformat
edited files.
Travis-CI will run scripts/verify-indentation.sh to verify committed files.
2017-05-09 20:46:16 +02:00
Even Rouault
8650b70e06
Merge pull request #918 from rouault/profile
...
Add profiling of CPU and memory usage (#912 )
2017-05-09 13:16:53 +02:00
Even Rouault
05d58451a1
Add profiling of CPU and memory usage ( #912 )
2017-05-09 12:35:51 +02:00
Even Rouault
e92fe29016
Merge pull request #917 from rouault/bench
...
Add performance benchmarking scripts
2017-05-09 12:33:07 +02:00
Even Rouault
328f076d26
Add performance benchmarking scripts
...
And run them by Travis-CI
2017-05-06 14:44:20 +02:00
Even Rouault
20291aad07
Merge pull request #915 from rouault/appveyor_fix_attempt
...
Fix retrieval of jpylyzer in AppVeyor
2017-05-03 12:41:02 +02:00
Even Rouault
04980a8c7b
Fix retrieval of jpylyzer in AppVeyor
2017-05-03 12:03:00 +02:00
Even Rouault
a18040e022
Merge pull request #893 from rouault/remove_tagtree_warnings
...
Remove warnings related to empty tag-trees.
2017-05-03 11:48:02 +02:00
Even Rouault
e7ff1efb82
Merge pull request #899 from jwilk/man-warnings
...
Remove spurious .R macros from manpages
2017-05-03 11:46:45 +02:00
Even Rouault
807da629a6
Merge pull request #914 from alexwlchan/fix-readme
...
Escape quotes to ensure README renders on GitHub correctly
2017-05-03 11:46:01 +02:00
Alex Chan
4927b64766
Escape quotes to ensure README renders on GitHub correctly
2017-04-28 09:43:05 +01:00
Jakub Wilk
cf08763c31
Remove spurious .R macros from manpages
...
Fixes the following warnings from man:
`R' is a string (producing the registered sign), not a macro.
2017-03-05 16:13:18 +01:00
Antonin Descampe
8c33128369
Fixed CRLF auto conversion issue in openjpeg-data #655
2017-03-03 23:23:39 +01:00
Even Rouault
a43f1bea62
Remove warnings related to empty tag-trees.
...
Decoding some valid .jp2 files like Sentinel2 datasets leads to warnings like:
No incltree created.
tgt_create tree->numnodes == 0, no tree created.
No imsbtree created.
tgt_create tree->numnodes == 0, no tree created.
Besides that, the image is correctly decoded. So there is no reason to emit
those warnings.
2017-02-13 12:36:45 +01:00