Commit Graph

64 Commits

Author SHA1 Message Date
Antonin Descampe ec400c4fa5 V2 branch :
- found a bug in tcd.c that was preventing to find the correct threshold in tcd_rateallocate.c for high-precision images. Applied a temporary patch but a better solution should be found.
- Modified the way raw images with more that 8bpp are read and written
2009-09-10 13:34:19 +00:00
Antonin Descampe 7caaea18b7 Deleting obsolete files and directories, adding v2-specific files and directories, updating existing files to v2. See README.v2 for more info 2008-07-31 18:47:41 +00:00
Parvatha Elangovan 29ea3dde47 In convert.c, corrected imagetobmp() conversion for grayscale. In tcd.c, corrected Rate modification in tcd_init_encode(). 2008-02-05 15:15:38 +00:00
Parvatha Elangovan 4051e87d06 Patch by Callum Lerwick. Fixed error during encoding using tile option in tcd.c 2008-01-04 15:43:57 +00:00
Parvatha Elangovan 64ed560f4f In pi.c, removed the Recursive function pi_check_next_level() and modified the code. 2007-12-19 12:28:40 +00:00
Francois-Olivier Devaux 26606c71c8 First import of JAVAOpenJPEG, a Java wrapper of OpenJPEG, developed by Patrick Piscaglia of Telemis (www.telemis.com). Thank you Patrick for this new module ! 2007-12-10 13:16:01 +00:00
Francois-Olivier Devaux 9e5d165e79 Fixed the maximum number of resolutions a user can discard while decoding.
Added an error state in J2K_STATE (j2k.c)
2007-11-27 14:00:45 +00:00
Francois-Olivier Devaux 010ae27471 Patch by Callum Lerwick. The opj_tcd_cblk array is one of the largest allocations, because it contains a bunch of static buffers. This also makes it a major source of cache thrashing. This patch allocates the buffers from the heap, and dynamically sizes them in the decoder. I have not yet managed to dynamically size them in the encoder, getting the decoder to do it was tricky enough... I also split opj_tcd_cblk_t into separate encode and decode versions. A lot of fields were not used by both, so this cuts its size even further. 2007-11-14 10:52:02 +00:00
Francois-Olivier Devaux 24e189e4d8 Patch by Callum Lerwick. This patch rearranges the largest memory allocations so they're allocated as late as possible, and freed as soon as possible. This cuts memory usage by about half on two large test images. 2007-11-14 08:45:00 +00:00
Francois-Olivier Devaux dbeebe72b9 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. 2007-11-13 17:35:12 +00:00
Francois-Olivier Devaux 9e114bcaa4 Patch from Callum Lewick. Memset patch. See ChangeLog for more details. Thanks Callum ! 2007-10-18 12:26:11 +00:00
Francois-Olivier Devaux 1f11a4fe90 Changed the way the image structure is allocated when the decoding parameters include some resolutions to discard. This should have a significant impact for the decoding of huge images when some resolutions are discarder (-r parameter)
Warning: The output image size is now reduced when discarding resolutions !
2007-10-12 15:04:34 +00:00
Parvatha Elangovan a6ba04cdf4 Fixed issues with Reading and Writing TIF images in convert.c to avoid segmentation fault.
Fixed issues relating to using user specified rates for CINEMA option for multiple images.
2007-09-18 13:07:29 +00:00
Francois-Olivier Devaux 569bbb0077 Fixed issues with cstr_info when codestream has components with different number of resolutions. 2007-09-17 14:00:43 +00:00
Francois-Olivier Devaux 3816e0edf4 Indexes can now be generated when decoding J2K codestreams. 2007-09-07 15:01:55 +00:00
Francois-Olivier Devaux acfe0ad645 Changed the OpenJPEG library interface to enable users to access information regarding the codestream (also called index). 2007-08-30 09:51:20 +00:00
Francois-Olivier Devaux 3810e943b1 Aligned malloc using Intel's _mm_malloc(), cleanup on the t1 memory allocation, getting rid of some leftover debug code 2007-08-21 12:13:54 +00:00
Francois-Olivier Devaux 00e440ebdb Corrected allocation to take into account the EOC marker 2007-08-21 09:06:13 +00:00
Francois-Olivier Devaux 7dcb817e6a Fixed the DCinema filesize allocation. It now includes the SOT marker size 2007-08-08 09:41:16 +00:00
Francois-Olivier Devaux 5dec8bbbe9 2007-07-13 13:07:07 +00:00
Francois-Olivier Devaux ea9335ff48 Bugs corrected in decoding of command line (getopt.c), in the handling of 16 bit files (t1.c and tcd.c) and the calculation of elapsed time for multiple tiles parts (tcd.c and tdc.h). 2007-06-04 13:23:26 +00:00
Parvatha Elangovan dd18811600 Digital cinema compliance for 4K chosen by "-cinema4K" option. Modification in image_to_j2k.c.
Bit rate limitation for each color component. Modification in image_to_j2k.c, t2.c.
Modified and tested Progression order change "-POC" option. Modification in image_to_j2k.c, j2k.c, pi.c.
Function j2k_check_poc_val() to check for possible loss of packets in case of wrong POC declaration. Modification in j2k.c.
Structure T2_MODE. This tells if the t2_encode_packets() is called during Threshold calculation or in Final pass. Modification in j2k.h, tcd.c
2007-04-04 13:40:32 +00:00
Parvatha Elangovan 9ba672366e Enable accepting file names with `-´ symbol .Modification getopt.c
Rsiz profile name generation to be STD_RSIZ for profiles which are not DCI compliant.Modification in image_to_j2k.c
Renamed convert_progression_order to j2k_convert_progression_order. Modification j2k.c
Calculation of number of tile part in each tile in j2k_calculate_tp. Modification j2k.c
j2k_setup_encoder to set bit rate limitation for digital cinema compliance with quality option. Modification in j2k.c
Equation to check multiple tile precincts. Modification pi.c
array size generation of pi->include in pi_initialise_encode().Modification in pi.c
Modification in pi_create_encode for tile part generation.Modification in pi.c
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.
2007-03-29 14:15:14 +00:00
Parvatha Elangovan 694a173adb Added feature for generation of tile parts. Modifications in image_to_j2k.c, openjpeg.c, j2k.c, pi.c
Added function j2k_write_tlm(),to generate TLM marker for a Digital cinema compliant codestream. Modifications in j2k.c.
2007-03-20 17:15:18 +00:00
Parvatha Elangovan 78003a016a Added option for Digital cinema profile compliant codestream. This can be chosen by "-cinema2K" or "-cinema4K" for a 2K and 4K compliance respectively. The feature for tileparts has not been implemented in this version. Modification in image_to_j2k.c
Added the Digital Cinema profiles (CINEMA2K and CINEMA4K) to the list of profiles recognized in the codestream SIZ marker segment. Modification in openjpeg.h,j2k.c
Added feature for constant quality within bitrate defined in Digital cinema standards. Modification in tcd.c
Modified the method of generation of buffer length. Modification in cio.c
2007-03-07 16:04:33 +00:00
Francois-Olivier Devaux ed3aec55fd Copyright update 2007-01-15 09:55:40 +00:00
Antonin Descampe 15949d43d1 fixed a cast problem in the maxlen variable 2006-10-31 18:10:03 +00:00
Antonin Descampe 696cd710df removed a debug test in the version just committed 2006-10-31 17:37:01 +00:00
Antonin Descampe b565431251 added the ability to specify the rate as "float" (before : integer) 2006-10-31 17:10:14 +00:00
Mathieu Malaterre 0108506433 COMP: Fix warning about C++ comment 2006-02-19 21:12:20 +00:00
Mathieu Malaterre fba75d93c4 STYLE: Remove C++ comments 2006-02-18 12:48:49 +00:00
Freeimage c2b399b363 removed unneeded working variables in opj_tcd_t 2006-02-12 16:53:23 +00:00
Freeimage 355b88c15d fixed various minor warnings occuring under icc9 and bcc32, added MSVC project and compiler directives to build a 'standard' WIN32 DLL 2006-01-31 21:26:11 +00:00
Antonin Descampe 72de930d08 fixed two initialization problems in t1.c and tcd.c 2006-01-27 16:29:41 +00:00
Freeimage 8f9f70f922 changed the name of j2k_realloc to opj_realloc 2006-01-18 20:10:23 +00:00
Antonin Descampe 34c8a555fa fixed a bug when specifying a rate '-r' => no distortion info was available in the index 2005-12-08 14:47:40 +00:00
Antonin Descampe 95bc884365 OpenJPEG version 1.1 2005-12-08 09:38:47 +00:00
Antonin Descampe f61cda9b7d openjpeg version 1.0 (previous version still available with tag opj0-97) 2005-12-02 13:34:15 +00:00
Antonin Descampe 4458ef921c minor change for readability 2005-11-09 10:20:28 +00:00
Antonin Descampe 8f3bd54c3d Changes proposed by Mathieu Malaterre from the GDCM project... Thanks a lot Mathieu
- '//' replaced by '/* */'
- inclusion of int.h in int.c
- inclusion of j2k.h in int.h in order to export symbols
- adding (void) var when a variable is declared but not used
- some explicit cast
- CLOCKS_PER_SEC is declared as float in bcc55, so there is a need to cast it to int for the modulo operation
- some variables changed from float -> double
2005-11-01 10:15:34 +00:00
Antonin Descampe 7ee36c3a4c 1) quantization stepsizes stored as float instead of shifted integers -> fixes a pb of precision when using very small stepsizes. 2) bug fixed when decoding until bitplane 0 -> r-value (1/2) added to the coefficient. 2005-10-27 07:49:29 +00:00
Antonin Descampe d6a523e091 major change in the dwt-module, thanks to Ive (aka Reiner Wahler): thanks a lot ! See note in dwt.c for more details. 2005-09-21 13:00:51 +00:00
Antonin Descampe ac634b1639 bug fixed when asking for an index with more than (layer*resolutions*100) packets per tile (2nd correction) 2005-09-21 08:11:27 +00:00
Antonin Descampe a0513798bb bug fixed when asking for an index with more than (layer*resolutions*100) packets per tile 2005-09-20 15:40:13 +00:00
Antonin Descampe de75303c38 Several bugs fixed when dealing with pgx-files with more than 8 bpp and the fixed_quality feature. 2005-07-18 15:21:56 +00:00
Francois-Olivier Devaux 7ae6a670fa Conversions from int to unsigned int to ensure correct execution of int_min and int_max at lines 800 to 830 2005-06-02 15:25:25 +00:00
Antonin Descampe 3b1bee0eec * function getopt added to the decoder (to efficiently manage arguments
in command line)
* reduce_on, reduce_value grouped in a single variable reduce
* up-to-date usage display
* image_type renamed --> decod_format
* JPEG2000_format renamed -->  cod_format
2005-01-26 08:59:49 +00:00
Francois-Olivier Devaux 1bdb07cefe fprintf correctly redirected to stderr or stdout 2004-11-15 12:41:35 +00:00
Antonin Descampe bc5c5115cb * Inserted tool for memory leaks fixing in debug mode
* Fixed some memory leaks in the decoder (some are still present when multiple tiles!)
2004-08-06 14:13:51 +00:00
Antonin Descampe d116ca5d10 Better indentation 2004-08-03 14:14:44 +00:00