1aaphoto Changelog: 2-------------------- 32013/09/30 - aaphoto v0.43 - new aaRGB v0.65 version update (see aaRGB changelog) 42012/02/20 - aaphoto v0.42 - tiny fix to set PNG compression manually and make it compatible with new version of libpng 52011/01/26 - aaphoto v0.41 - new aaRGB v0.64 version update (see aaRGB changelog) 6 - add -- switch to mark the end of option list for posix compatibility 7 - fix some warnings given by -Wextra compile option 82010/12/18 - aaphoto v0.40 - new aaRGB v0.63 version update 9 - fix some warning messages during build 10 - some changes in documentation 11 - error message when --verbose switch is used with no other ones to avoid misunderstanding 12 that other switches are still needed (aaphoto -V file) 132010/09/14 - aaphoto v0.39 - new aaRGB v0.62 version update 14 - bugfix: an ugly misconception in my paralleled code caused weird behavior when using more threads 15 - bugfix: BMP image writer function didn't zero out the BMP align bytes in file buffer 16 therefore the same output differed in some cases 17 - bugfix: PNG image reader function stored the unreliable values of pixel resolution 18 when the type was unknown 19 - rewrite the code to suffice the ISO C90 ANSI standard C form (GCC -pedantic option) 20 - new windows platform patch of libjasper for static build to replace mkstemp() function call 21 because it is not yet supported under MinGW 22 - some changes in documentation 23 - new default LDFLAG -lgomp for OpenMP 24 - update all build scripts for Debian 6 platform 252010/07/18 - aaphoto v0.38 - add verbose message showing presence of alpha channel in PNG images 26 - bugfix: fix compile with only BMP support 27 - fix some warning messages during build 28 - remove unnecessary __WIN32__ macro 292010/05/10 - aaphoto v0.37 - add OpenMP support for multi processing, all possible time intensive codes paralleled 30 __OPENMP__ directive and -fopenmp option are needed at compile time (supported since GCC v4.2) 31 (not available on windows platform yet) 32 - new -t, --threads switch added to manually set the number of working threads 33 - new aaRGB v0.61 version update 34 - bugfix: exif info was left out after last version's change in JPEG handling 35 - improve exif handling and verbose messages 36 - refine additional verbose messages 37 - remove pgx file type support because it is outdated 38 - some changes in documentation 39 - some minor code cleanup and bugfixes 402010/03/16 - aaphoto v0.36 - bugfix: fix for tmpfile() patches of libjasper and libjpeg (windows platform only) 41 when running more than one instances of aaphoto at a time 42 they all used the same temporary files and therefore the images became corrupt 43 - bugfix: it doesn't ask for administrative privileges anymore while running in an admin account 44 under vista and windows 7 (windows platform only) 45 - bugfix: the --rotate180 switch didn't turn the middle line in images with odd heights 46 - rewrite JPEG format handling entirely to be able to handle extra parameters in this format 47 separately, now libjpeg is used directly instead of libjasper for reading / writing JPEG images 48 so libjpeg is a new dependency from now, formerly only libjasper was depended on it 49 - restore original DPI values of images in BMP, JPEG and PNG formats during conversion 50 - refine program messages 51 - print the time elapsed in seconds since program start in verbose mode if not zero 52 - print extra infos of bitmap dimension, resolution and color depth in verbose mode 532010/02/25 - aaphoto v0.35 - bugfix: possible buffer overflows fixed 542010/02/19 - aaphoto v0.34 - __UNIX__ macro removed from Makefile, not needed anymore 55 - bugfix: static binary update with patches of libjasper and libjpeg 56 1) sleep() function missing on mingw32 platform 57 2) bad implementation of tmpfile() function on windows platform 58 it tries to create temporary files in the root of current directory 59 instead of the system temporary path so that causes failure for unprivileged users 60 who don't have permissions to write there 61 - update: changes in new version of libpng 1.4.0, aaio.c updated as necessary 62 png_check_sig() function replaced with png_sig_cmp() 63 setjmp(png_ptr->jmpbuf) has been deprecated, changed to setjmp(png_jmpbuf(png_ptr)) 64 see more at http://www.libpng.org/pub/png/src/libpng-1.2.x-to-1.4.x-summary.txt 652010/01/10 - aaphoto v0.33 - some changes in documentation 66 - bugfix: unfreed space caused memory leak 67 - bugfix: uninitialized variable caused --resize to misbehave 68 - fix: change of return values in procedures to reflect standard exit codes 69 now it has a sense to run something like "aaphoto image.jpg && echo OK" 70 formerly return codes meant opposite 71 - fix a warning message during compile time, an include was missing 72 - boundary check of fixed size arrays added for safety reasons 73 - the --speed switch removed, it made the code less platform independent and was fussy anyway 74 - error messages printed to stderr instead of stdout from now 75 - more verbose error messages on failure of image load 762009/10/18 - aaphoto v0.32 - new aaRGB v0.60 version update 77 - new --noexif switch added to save new image without exif info 78 - new --bmp switch added for BMP format output 79 - new -o, --output switch added for alternate directory output 802009/08/23 - aaphoto v0.31 - bugfix: __BMP_ONLY__ directive is fixed in source code 81 - bugfix: writing of BMP images could result in corrupt BMP structure 82 - code cleanup in BMP write function 83 - parameters of switches also work with spaces between them 84 - new aaRGB v0.59 version update 852009/02/22 - aaphoto v0.30 - implement PNG format (RGB and Gray images read / write with alpha channel support) 86 - bugfix: reading corrupt exif info in JPEG files could get into an infinite loop 87 - bugfix: length of exif info was determined wrongly 88 - rework of the parameters and switches parsing part 89 - lots of code cleanup 90 - most of the comments in code translated to english 91 - print messages get flushed out with fflush now during process 92 - the --info switch removed 93 - the -o switch removed for safety reasons, --overwrite still available 94 - the -h switch added for unix compatibility 95 - the -j1 and -j2 switch removed, --jpg and --jp2 still available 96 - the --png switch is now new for PNG output 97 - the -s switch changed from --speed to --silent for compatibility 98 - the --mute switch changed to -s, --silent and --quiet for unix / posix compatibility 99 - the -V, --verbose switch is now new for more detailed output during image process 100 - the --test switch now turns the --autoadjust switch on by default 101 - the -d, --description and -l, --license switches removed 102 - thanks to Rezső Páder (rezso.net) for the suggestions for the option switches 103 - new aaRGB v0.58 version update 1042008/02/02 - aaphoto v0.29 - bugfix: color space variable was not defined during the load of BMP format 105 - bugfix: BMP format handling fixed for JPEG conversion 106 - grayscale images can also be used as an input 107 - increase file name buffer for processing files in folders 108 - Exif meta data information is now restored during conversion in JPEG images 1092007/08/11 - aaphoto v0.28 - new aaRGB v0.57 version update 110 - bugfix: remove extra slashes from the end of folders 1112007/07/04 - aaphoto v0.27 - new aaRGB v0.56 version update v0.56 with "Apply only on selection" function 1122007/05/26 - aaphoto v0.26 - bugfix: Win32 version crashed during JPEG-2000 conversion 1132007/05/19 - aaphoto v0.25 - expand functions: rotate 90, 180, 270, flip x, flip y 1142007/05/01 - aaphoto v0.24 - improve timing values 115 - input parameter can be folders beside files too 116 - bitmap info parameter now works with bmp too 117 - simplify parameter input: no --autoadjust parameter needed from now, default is on 1182007/04/03 - aaphoto v0.23 - new aaRGB v0.55 version update 1192007/04/01 - aaphoto v0.22 - new aaRGB v0.54 version update 1202007/03/30 - aaphoto v0.21 - create bmp_only macro in source code for other platforms 121 - bug fixes 1222007/03/29 - aaphoto v0.20 - new aaRGB v0.53 version update 1232007/02/25 - aaphoto v0.19 - extra information output within image for testing purposes 1242007/02/22 - aaphoto v0.18 - custom code for BMP input/output 1252007/01/24 - aaphoto v0.17 - implement JasPer encoder for further image formats 1262007/01/04 - aaphoto v0.16 - stable working command-line version for linux environment with BMP format support 127 128 129aaRGB Changelog: 130------------------ 1312013/09/30 - aaRGB v0.65 - fix some compile time warnings and uninitalized variables 1322011/01/26 - aaRGB v0.64 - the contrast seemed strong with the default initial value of the former algorithm, 133 so now constant optimized to the new contrast algorithm introduced in 0.63 134 - add more detailed explanations to the contrast algorithm (in hungarian) 1352010/12/18 - aaRGB v0.63 - include OpenMP defs in aargb.c too for standalone usage 136 - fix some warning messages during build 137 - make embedded test info image look more readable by changing the colors (--test switch) 138 - change saturation algorithm from linear to exponential 139 - improve contrast algorithm to include a self balance mechanism to avoid overexposure 140 on images with large blank areas that have relatively small details 141 - improve color balance algorithm to make it a bit more aggressive by raising the value 142 of the color difference factor of the white and black point to the 3rd power 143 - speed up process by skipping saturation part if no change is needed 144 - some memory allocation check 145 - some changes in documentation 1462010/09/14 - aaRGB v0.62 - bugfix: an ugly misconception in my paralleled code caused weird behavior 147 when using more threads 148 - rewrite the code to suffice the ISO C90 ANSI standard C form (GCC -pedantic option) 1492010/05/02 - aaRGB v0.61 - add OpenMP support for multi processing, all computing cycles paralleled 150 - solve warning issues with some uninitialized variables 151 - some code cleanup 1522009/10/18 - aaRGB v0.60 - remove gamma handling of the lighter colors from the two-pole gamma computing 153 by setting the gamma_interval_high from 0.9 to 1, it proved to be inefficient 1542009/04/05 - aaRGB v0.59 - some more code cleanup 1552009/02/22 - aaRGB v0.58 - code cleanup 1562007/08/11 - aaRGB v0.57 - improve black and white point analyzing 157 from now they are not scaled to perfect black and white, but to their darkest 158 and brightest color that have maximum saturation to fix overexposure problem 159 - improve saturation algorithm with full floating point computing and HSL conversion 160 to fix over saturated colors 161 - expand image information display with color balance circle for testing (--test switch) 162 - remove text information from test display (--test switch) 1632007/06/21 - aaRGB v0.56 - expand functionality with "apply only on selection" to process only the selected area 1642007/04/03 - aaRGB v0.55 - maximize saturation limit with a predefined constant to avoid overexposure in saturation 165 when reconverting the same image 1662007/04/01 - aaRGB v0.54 - new two-pole gamma computing 167 - new saturation compensation 1682007/03/29 - aaRGB v0.53 - improve contrast computing to avoid underexposure 1692007/02/25 - aaRGB v0.52 - improve image information display for testing (--test switch) 1702007/02/16 - aaRGB v0.51 - improve average RGB color computing for more accurate color balance calibration 1712007/01/04 - aaRGB v0.49 - stable working version with gamma handling and more clever image analyzing 1722006/08/29 - aaRGB project begun... 173