1
1.2.2 (not yet released)
2
========================
4
[1] The tjDecompressToYUV() function now supports the TJFLAG_FASTDCT flag.
6
[2] The 32-bit supplementary package for amd64 Debian systems now provides
4
[1] 'make test' now works properly on FreeBSD, and it no longer requires the
5
md5sum executable to be present on other Un*x platforms.
7
[2] Overhauled the packaging system:
8
-- To avoid conflict with vendor-supplied libjpeg-turbo packages, the
9
official RPMs and DEBs for libjpeg-turbo have been renamed to
10
"libjpeg-turbo-official".
11
-- The TurboJPEG libraries are now located under /opt/libjpeg-turbo in the
12
official Linux and Mac packages, to avoid conflict with vendor-supplied
13
packages and also to streamline the packaging system.
14
-- Release packages are now created with the directory structure defined
15
by the configure variables "prefix", "bindir", "libdir", etc. (Un*x) or by the
16
CMAKE_INSTALL_PREFIX variable (Windows.) The exception is that the docs are
17
always located under the system default documentation directory on Un*x and Mac
18
systems, and on Windows, the TurboJPEG DLL is always located in the Windows
20
-- To avoid confusion, official libjpeg-turbo packages on Linux/Unix platforms
21
(except for Mac) will always install the 32-bit libraries in
22
/opt/libjpeg-turbo/lib32 and the 64-bit libraries in /opt/libjpeg-turbo/lib64.
23
-- Fixed an issue whereby, in some cases, the libjpeg-turbo executables on Un*x
24
systems were not properly linking with the shared libraries installed by the
26
-- Fixed an issue whereby building the "installer" target on Windows when
27
WITH_JAVA=1 would fail if the TurboJPEG JAR had not been previously built.
28
-- Building the "install" target on Windows now installs files into the same
29
places that the installer does.
31
[3] Fixed a Huffman encoder bug that prevented I/O suspension from working
38
[1] Added support for additional scaling factors (3/8, 5/8, 3/4, 7/8, 9/8, 5/4,
39
11/8, 3/2, 13/8, 7/4, 15/8, and 2) when decompressing. Note that the IDCT will
40
not be SIMD-accelerated when using any of these new scaling factors.
42
[2] The TurboJPEG dynamic library is now versioned. It was not strictly
43
necessary to do so, because TurboJPEG uses versioned symbols, and if a function
44
changes in an ABI-incompatible way, that function is renamed and a legacy
45
function is provided to maintain backward compatibility. However, certain
46
Linux distro maintainers have a policy against accepting any library that isn't
49
[3] Extended the TurboJPEG Java API so that it can be used to compress a JPEG
50
image from and decompress a JPEG image to an arbitrary position in a large
53
[4] The tjDecompressToYUV() function now supports the TJFLAG_FASTDCT flag.
55
[5] The 32-bit supplementary package for amd64 Debian systems now provides
7
56
symlinks in /usr/lib/i386-linux-gnu for the TurboJPEG libraries in /usr/lib32.
8
57
This allows those libraries to be used on MultiArch-compatible systems (such as
9
58
Ubuntu 11 and later) without setting the linker path.
60
[6] The TurboJPEG Java wrapper should now find the JNI library on Mac systems
61
without having to pass -Djava.library.path=/usr/lib to java.
63
[7] TJBench has been ported to Java to provide a convenient way of validating
64
the performance of the TurboJPEG Java API. It can be run with
65
'java -cp turbojpeg.jar TJBench'.
67
[8] cjpeg can now be used to generate JPEG files with the RGB colorspace
68
(feature ported from jpeg-8d.)
70
[9] The width and height in the -crop argument passed to jpegtran can now be
71
suffixed with "f" to indicate that, when the upper left corner of the cropping
72
region is automatically moved to the nearest iMCU boundary, the bottom right
73
corner should be moved by the same amount. In other words, this feature causes
74
jpegtran to strictly honor the specified width/height rather than the specified
75
bottom right corner (feature ported from jpeg-8d.)
77
[10] JPEG files using the RGB colorspace can now be decompressed into grayscale
78
images (feature ported from jpeg-8d.)
80
[11] Fixed a regression caused by 1.2.1[7] whereby the build would fail with
81
multiple "Mismatch in operand sizes" errors when attempting to build the x86
82
SIMD code with NASM 0.98.
84
[12] The in-memory source/destination managers (jpeg_mem_src() and
85
jpeg_mem_dest()) are now included by default when building libjpeg-turbo with
86
libjpeg v6b or v7 emulation, so that programs can take advantage of these
87
functions without requiring the use of the backward-incompatible libjpeg v8
88
ABI. The "age number" of the libjpeg-turbo library on Un*x systems has been
89
incremented by 1 to reflect this. You can disable this feature with a
90
configure/CMake switch in order to retain strict API/ABI compatibility with the
91
libjpeg v6b or v7 API/ABI (or with previous versions of libjpeg-turbo.) See
92
README-turbo.txt for more details.
94
[13] Added ARM v7s architecture to libjpeg.a and libturbojpeg.a in the official
95
libjpeg-turbo binary package for OS X, so that those libraries can be used to
96
build applications that leverage the faster CPUs in the iPhone 5 and iPad 4.