| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2020-04-21 | Add support for generation of PLT markers in encoder | Even Rouault | |
| * -PLT switch added to opj_compress * Add a opj_encoder_set_extra_options() function that accepts a PLT=YES option, and could be expanded later for other uses. ------- Testing with a Sentinel2 10m band, T36JTT_20160914T074612_B02.jp2, coming from S2A_MSIL1C_20160914T074612_N0204_R135_T36JTT_20160914T081456.SAFE Decompress it to TIFF: ``` opj_uncompress -i T36JTT_20160914T074612_B02.jp2 -o T36JTT_20160914T074612_B02.tif ``` Recompress it with similar parameters as original: ``` opj_compress -n 5 -c [256,256],[256,256],[256,256],[256,256],[256,256] -t 1024,1024 -PLT -i T36JTT_20160914T074612_B02.tif -o T36JTT_20160914T074612_B02_PLT.jp2 ``` Dump codestream detail with GDAL dump_jp2.py utility (https://github.com/OSGeo/gdal/blob/master/gdal/swig/python/samples/dump_jp2.py) ``` python dump_jp2.py T36JTT_20160914T074612_B02.jp2 > /tmp/dump_sentinel2_ori.txt python dump_jp2.py T36JTT_20160914T074612_B02_PLT.jp2 > /tmp/dump_sentinel2_openjpeg_plt.txt ``` The diff between both show very similar structure, and identical number of packets in PLT markers Now testing with Kakadu (KDU803_Demo_Apps_for_Linux-x86-64_200210) Full file decompression: ``` kdu_expand -i T36JTT_20160914T074612_B02_PLT.jp2 -o tmp.tif Consumed 121 tile-part(s) from a total of 121 tile(s). Consumed 80,318,806 codestream bytes (excluding any file format) = 5.329697 bits/pel. Processed using the multi-threaded environment, with 8 parallel threads of execution ``` Partial decompresson (presumably using PLT markers): ``` kdu_expand -i T36JTT_20160914T074612_B02.jp2 -o tmp.pgm -region "{0.5,0.5},{0.01,0.01}" kdu_expand -i T36JTT_20160914T074612_B02_PLT.jp2 -o tmp2.pgm -region "{0.5,0.5},{0.01,0.01}" diff tmp.pgm tmp2.pgm && echo "same !" ``` ------- Funded by ESA for S2-MPC project | |||
| 2017-08-17 | Sub-tile decoding: only decode precincts and codeblocks that intersect the ↵ | Even Rouault | |
| window specified in opj_set_decode_area() | |||
| 2017-08-16 | opj_t2_encode_packet(): only emit an error about insufficiently large output ↵ | Even Rouault | |
| buffer in FINAL_PASS mode. Fixes (master-only) regression added in 0b4fef6d1901254e41ab74ed681daba477d724c3 | |||
| 2017-08-10 | Propagate event manager down to opj_t2_encode_packet() and use it to emit an ↵ | Even Rouault | |
| error message when the output buffer is too small | |||
| 2017-07-30 | src/lib/openjp2/*.h: use OPJ_ prefix for inclusion guards instead of ↵ | Even Rouault | |
| reserved __ (#587) | |||
| 2017-07-30 | Fix Doxygen warnings (patch derived from Winfried's doxygen-dif.txt.zip, #849) | Even Rouault | |
| 2017-05-15 | Reformat: apply reformattin on .h files (#128) | Even Rouault | |
| 2015-07-30 | Remove printf/fprintf to stdout/stderr throughout openjp2 lib | mayeut | |
| Update uclouvain/openjpeg#246 | |||
| 2014-04-03 | [trunk] updated copyright and added copyright notice required by ISO, in ↵ | Antonin Descampe | |
| each file; updated AUTHORS, NEWS | |||
| 2012-11-15 | [trunk]update the copyright, the authors and thanks to respect the license | Mickael Savinaud | |
| 2012-11-15 | [trunk] move opj_bool to OPJ_BOOL to follow the other type | Mickael Savinaud | |
| 2012-10-29 | [trunk] remove old struct from V1 and not used in V2 | Mickael Savinaud | |
| 2012-10-25 | [trunk] [trunk] remove old opj_cp and rename opj_cp_v2 to opj_cp | Mickael Savinaud | |
| 2012-10-25 | [trunk] [trunk] remove old opj_t2 and rename opj_t2_v2 to opj_t2 | Mickael Savinaud | |
| 2012-10-25 | [trunk] rename opj_tcd_truct_v2 to opj_tcd_struct | Mickael Savinaud | |
| 2012-09-28 | [trunk] Start FolderReorgProposal task | Mathieu Malaterre | |
| Update issue 177 | |||
