forked from uclouvain/openjpeg
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Patch by Dzonatas and Callum Lerwick. Fp/vectorization patch which ba…
…sically converts most of the irreversible decode codepath to floating point, eliminating a few rounds of int/fp conversion, resulting in a vast performance improvement, and an increase in accuracy.
- Loading branch information
Showing
9 changed files
with
618 additions
and
376 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,14 +5,21 @@ What's New for OpenJPEG | |
! : changed | ||
+ : added | ||
|
||
November 13, 2007 | ||
! [FOD] Patch by Dzonatas and Callum Lerwick. | ||
Fp/vectorization patch which basically converts most of the irreversible decode codepath to floating point, | ||
eliminating a few rounds of int/fp conversion, resulting in a vast performance improvement, | ||
and an increase in accuracy. | ||
|
||
November 8, 2007 | ||
! [FOD] In t1.c, small change to avoid calling twice t1_getwmsedec() | ||
Patches from Callum Lewick: | ||
- Basic gcc optimization flags in cmake and makefile match. | ||
- Fixed some spelling errors in dwt.c. | ||
Patches from Callum Lewick: | ||
- Basic gcc optimization flags in cmake and makefile match. | ||
- Fixed some spelling errors in dwt.c. | ||
|
||
November 5, 2007 | ||
*+ [GB] Fixed a bug which prevented JPWL from working on multi-tiled images; added some more fields in the interface info structures (keep a list of markers, save start packet number for each tile) | ||
*+ [GB] Fixed a bug which prevented JPWL from working on multi-tiled images; added some more fields in the interface info structures | ||
(keep a list of markers, save start packet number for each tile) | ||
|
||
October 23, 2007 | ||
* [GB] Improved success for the linux build; OPJViewer shows all the COM contents | ||
|
@@ -39,7 +46,8 @@ October 12, 2007 | |
|
||
October 10, 2007 | ||
* [FOD] Patch from Callum Lewick. Clean up of j2klib.h for the aligned malloc stuff. | ||
It makes it work right with mingw, as _mm_malloc() isn't a macro, attempts to pave the way to using cmake to check for this stuff and combines a patch from Dana Fagerstrom at Sun that makes it use memalign() on Solaris | ||
It makes it work right with mingw, as _mm_malloc() isn't a macro, attempts to pave the way to using cmake | ||
to check for this stuff and combines a patch from Dana Fagerstrom at Sun that makes it use memalign() on Solaris | ||
convert.c: Changed some error comments for TIFF images | ||
|
||
September 27, 2007 | ||
|
@@ -91,10 +99,12 @@ September 6, 2007 | |
* [Mathieu Malaterre] Fix unitialized read in img_fol (we may need a smarter initialize than memset) | ||
|
||
September 4, 2007 | ||
+ [GB] Added some fields in the codestream_info structure: they are used to record the position of single tile parts. Changed also the write_index function in the codec, to reflect the presence of this new information. | ||
+ [GB] Added some fields in the codestream_info structure: they are used to record the position of single tile parts. | ||
Changed also the write_index function in the codec, to reflect the presence of this new information. | ||
|
||
September 3, 2007 | ||
+ [GB] Added the knowledge of JPSEC SEC and INSEC markers (you have to compile the JPWL project). Management of these markers is limited to skipping them without crashing: no real security function at this stage. Deprecated USE_JPSEC will be removed next | ||
+ [GB] Added the knowledge of JPSEC SEC and INSEC markers (you have to compile the JPWL project). Management of these markers is limited to skipping them without crashing: | ||
no real security function at this stage. Deprecated USE_JPSEC will be removed next | ||
|
||
August 31, 2007 | ||
* [GB] Fixed save capabilities in OPJViewer due to recent code upgrade | ||
|
@@ -146,12 +156,15 @@ July 17, 2007 | |
+ [FOD] Added support for RAW images. This module has been developped by the University of Perugia team. Thanks to them ! [image_to_j2k.c j2k_to_image.c convert.c convert.h] | ||
|
||
July 13, 2007 | ||
! [FOD] Modified the memory allocation for codestreams containing multiple tiles. The memory is now allocated for each tile indenpendently, leading to an important decrease of the virtual memory needed. [j2k.c tcd.h tcd.c] | ||
! [FOD] Modified the memory allocation for codestreams containing multiple tiles. The memory is now allocated for each tile indenpendently, | ||
leading to an important decrease of the virtual memory needed. [j2k.c tcd.h tcd.c] | ||
! [FOD] Modified old comments about the ability to decode mega-images and comments about the disk size necessary to do this. [image_to_j2k.c and frames_to_mj2.c] | ||
* [FOD] Added 2000 bytes for the memory allocation in cio.c for the minimum size of headers (useful in case of very small images) [cio.c] | ||
|
||
July 12, 2007 | ||
* [GB] fixed a bug in JPWL module, which prevented to exploit the full error correction capability of RS codes (e.g. it gave up at 5 errors, even if 6 were correctable); defined a JPWL_MAXIMUM_EPB_ROOM for better customization of the maximum dimension of EPBs (the dimension is pre-calculated on an hypothesis, if it goes beyond 65535 there will be problems, thus we give a little less than the max, let's say 65450) | ||
* [GB] fixed a bug in JPWL module, which prevented to exploit the full error correction capability of RS codes (e.g. it gave up at 5 errors, | ||
even if 6 were correctable); defined a JPWL_MAXIMUM_EPB_ROOM for better customization of the maximum dimension of EPBs (the dimension | ||
is pre-calculated on an hypothesis, if it goes beyond 65535 there will be problems, thus we give a little less than the max, let's say 65450) | ||
|
||
July 8, 2007 | ||
* [ANTONIN] fixed the size of the memory allocation in cio.c (confusion between bits and bytes) | ||
|
@@ -186,13 +199,16 @@ May 31, 2007 | |
* [FOD] Fixed the parameters used for cinema compression (9-7 transform used instead of 5-3). Modified "image_to_j2k.c" | ||
|
||
May 24, 2007 | ||
* [FOD] Bug fixed by Sylvain Munaut. Change in the reading of the POC marker. Since COD/COC can be anywhere in the header, the decoder cannot always know while decoding the POC marker the value of numlayers and numresolution. | ||
* [FOD] Bug fixed by Sylvain Munaut. Change in the reading of the POC marker. Since COD/COC can be anywhere in the header, the decoder cannot always know while decoding the POC marker | ||
the value of numlayers and numresolution. | ||
|
||
May 23, 2007 | ||
! [FOD] Patch suggested by Callum Lerwick <[email protected]>: "This makes the t1 data arrays dynamic, which greatly reduces cache thrashing. Also, some minor cleanup to prevent unnecessary casts" | ||
|
||
May 22, 2007 | ||
! [FOD] Patch suggested by Callum Lerwick <[email protected]>: "Some formatting cleanups, so that the long function definitions and calls fit on screen. Use of prefix increment which is theoretically faster, in practice any sane compiler can optimize a postfix increment but its best not to count on such things. Consolidation of some redundant calculations in the inner loops, which becomes very useful in the future autovectorize patch." | ||
! [FOD] Patch suggested by Callum Lerwick <[email protected]>: "Some formatting cleanups, | ||
so that the long function definitions and calls fit on screen. Use of prefix increment which is theoretically faster, in practice any sane compiler can optimize a postfix | ||
increment but its best not to count on such things. Consolidation of some redundant calculations in the inner loops, which becomes very useful in the future autovectorize patch." | ||
! [FOD] Patch suggested by Callum Lerwick <[email protected]>: "This changes the flag code in t1 to use a flag_t type, which can then be changed to reduce RAM usage. It is now typedef to a short." | ||
! [FOD] Patch suggested by Callum Lerwick <[email protected]>: "This patch makes the t1 LUTs static. I actually intend this as a prelude to possibly eliminating some or all of the LUTs entirely." | ||
|
||
|
@@ -241,14 +257,17 @@ March 29, 2007 | |
* [Parvatha] Equation to check multiple tile precincts. Modification pi.c | ||
! [Parvatha] array size generation of pi->include in pi_initialise_encode().Modification in pi.c | ||
* [Parvatha] modification in pi_create_encode for tile part generation.Modification in pi.c | ||
+ [Parvatha] In tcd_rateallocate a variable stable_threshold which holds the valid threshold value. This is used to avoid error in case of a wrong threshold value in the last iteration. Modification in tcd.c. | ||
+ [Parvatha] In tcd_rateallocate a variable stable_threshold which holds the valid threshold value. | ||
This is used to avoid error in case of a wrong threshold value in the last iteration. Modification in tcd.c. | ||
|
||
March 28, 2007 | ||
* [FOD] Fixed an historical bug in t1.c that leaded to the inclusion of useless 0xFF in the codestream. Thanks to Sylvain, Pascal and Parvatha ! | ||
|
||
March 27, 2007 | ||
+ [GB] Improved parsing in OPJViewer, as well some minor aesthetic modifications; support for image rendering with bit depths lower than 8 bits; can display an arbitrary frame of an MJ2 file (only in B/W, though); can reload a file; better resizing capabilities | ||
* [GB] Following to Herv�'s suggestions, all the exit() calls, added by JPWL strict checking in t2.c and j2k.c, have been substituted with (object free'ing + opj_evt_message(EVT_ERROR) + return) | ||
+ [GB] Improved parsing in OPJViewer, as well some minor aesthetic modifications; support for image rendering with bit depths lower than 8 bits; | ||
can display an arbitrary frame of an MJ2 file (only in B/W, though); can reload a file; better resizing capabilities | ||
* [GB] Following to Herv�'s suggestions, all the exit() calls, added by JPWL strict checking in t2.c and j2k.c, | ||
have been substituted with (object free'ing + opj_evt_message(EVT_ERROR) + return) | ||
+ [GB] Added linking to TIFF library in the JPWL VC6 workspaces | ||
|
||
March 23, 2007 | ||
|
@@ -294,7 +313,8 @@ VERSION 1.1.1 RELEASED | |
---------------------- | ||
|
||
February 23, 2007 | ||
* [GB] Fixed a copy-and-paste type assignment error (bool instead of int) in the JPWL section of decoder parameters structure in openjpeg.h; minor type-casting in jpwl_lib.c. As a result, now OPJViewer should run correctly when built against the most current SVN trunk of LibOpenJPEG.lib | ||
* [GB] Fixed a copy-and-paste type assignment error (bool instead of int) in the JPWL section of decoder parameters structure in openjpeg.h; minor type-casting in jpwl_lib.c. | ||
As a result, now OPJViewer should run correctly when built against the most current SVN trunk of LibOpenJPEG.lib | ||
+ [GB] Linux makefile for the JPWL module; newlines at end of JPWL files | ||
|
||
February 22, 2007 | ||
|
Oops, something went wrong.