History log of /external/jpeg/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9f3436c3b153b55257caca0345c8135514b26945 11-Jun-2015 Sam Hasinoff <hasinoff@google.com> Fix build break for unbundled apps

Change-Id: I72f09e303c77873dbc77417b06b71339392dd015
ndroid.mk
7dbc6441d8158d28b7120a3ce6ea68bc08f4c295 23-Apr-2015 Matt Sarett <msarett@google.com> libjpeg should always use jmemnobs

When using jmem-android with libjpeg, the client has the option
to provide a value for maximum memory usage (or use a default
value) during the decode. When this value for maximum memory usage
would be exceeded, jmem-android backs data arrays with temp files
to stay below the memory limit. The CL that defines this memory
limit is at:
https://skia.googlesource.com/skia/+/2295c6332512833760060d803cf6ad19a28adc51
However, it is unclear why the current limit was chosen.

Unfortunately, these temp files are not guaranteed to have unique
names, leading to bugs where multiple arrays are backed up to the
same file. The original purpose of this CL was to fix this bug.

However, attempting to fix this bug has led to a variety of
additional questions.

The creation of temp files is tricky in this type of library.
Concerns about the creation of temp files include security,
performance of writing to disk, and difficulty of finding the
right directory to use from a library that could be used by an
arbitrary process.

Additionally, there have already been complaints about jmem-android
from the users of the Java API. b/2791339 explains that writing
to disk is extremely slow, and it causes users of the decoder to
need WRITE_EXTERNAL_STORAGE permission in order to decode.

This led to the creation of jmem-ashmem.c as the memory
implementation for libjpeg to be used by apps. This acts in the
same way as jmem-android up until the arbitrary maximum memory
usage value is reached. At this point, jmem-ashmem uses ashmem
to back up the data arrays instead of temp files.

We first considered using jmem-ashmem all the time, since it was
introduced as a faster alternative to jmem-android that does not
require extra permissions and does not have known bugs.

However, thinking further about jmem-ashmem, we feel that it is
not a good alternative. It is quite odd to solve the problem
of being "out of memory" (having reached the memory limit) by
choosing to allocate more memory.

It seems more intuitive to simply allocate memory on the heap
until we run out or the process is killed.

Using jmemnobs.c follows exactly this approach. It has no memory
limit and will allocate memory until it runs out or is killed.

Another alternative would be to modify jmem-android to simply
error exit once we reach a maximum memory limit. This would
make behavior more predicatble, but may prevent us from decoding
images that could possibly be decoded. This would also bring up
the question of how we choose this maximum memory limit.

BUG:20541233

Change-Id: Iae944ac8588769c3e24f25f64de847e58cc2ad2e
ndroid.mk
mem-android.c
mem-ashmem.c
59e63424c84b07256d453e2cae96bd29153ecfd5 20-Feb-2015 Leon Scroggins III <scroggo@google.com> am c261b809: am d22d8e03: am 19332727: am 31b3a825: am 0e1c7ef1: Fix bugs in jmem-ashmem.

* commit 'c261b80971b2d214f2801e434f15e181cda01c5b':
Fix bugs in jmem-ashmem.
c261b80971b2d214f2801e434f15e181cda01c5b 20-Feb-2015 Leon Scroggins III <scroggo@google.com> am d22d8e03: am 19332727: am 31b3a825: am 0e1c7ef1: Fix bugs in jmem-ashmem.

* commit 'd22d8e03f6bec40d22d1baad36884bd6dd11dc5e':
Fix bugs in jmem-ashmem.
d22d8e03f6bec40d22d1baad36884bd6dd11dc5e 20-Feb-2015 Leon Scroggins III <scroggo@google.com> am 19332727: am 31b3a825: am 0e1c7ef1: Fix bugs in jmem-ashmem.

* commit '193327270691afde273fe6befd88aa6942862373':
Fix bugs in jmem-ashmem.
193327270691afde273fe6befd88aa6942862373 20-Feb-2015 Leon Scroggins III <scroggo@google.com> am 31b3a825: am 0e1c7ef1: Fix bugs in jmem-ashmem.

* commit '31b3a825a1934d9635e4b674dda9025465d35b69':
Fix bugs in jmem-ashmem.
31b3a825a1934d9635e4b674dda9025465d35b69 20-Feb-2015 Leon Scroggins III <scroggo@google.com> am 0e1c7ef1: Fix bugs in jmem-ashmem.

* commit '0e1c7ef17722081497e0ae6757d02e649454646a':
Fix bugs in jmem-ashmem.
0e1c7ef17722081497e0ae6757d02e649454646a 15-Jan-2015 Leon Scroggins III <scroggo@google.com> Fix bugs in jmem-ashmem.

If ashmem_set_prot_region fails, close the previously opened file.

If mmap fails, close the file and return -1.

BUG:18894965
Change-Id: I936b5c7395480249b1457e7dee566da6141fb023
(cherry picked from commit 3773c6ec2bcf603cfa2b16575022642b3e816297)
(cherry picked from commit a9ccf6f358d544eedc9432ca81da3d3c76b0e65a)
mem-ashmem.c
48eb0c165a23346d9c21c001e580ff0dc96b7a6d 22-Jan-2015 Leon Scroggins III <scroggo@google.com> am 1dae6865: am a9ccf6f3: Fix bugs in jmem-ashmem.

* commit '1dae686531927208eca3dc4f99e117ff28aeba97':
Fix bugs in jmem-ashmem.
1dae686531927208eca3dc4f99e117ff28aeba97 22-Jan-2015 Leon Scroggins III <scroggo@google.com> am a9ccf6f3: Fix bugs in jmem-ashmem.

* commit 'a9ccf6f358d544eedc9432ca81da3d3c76b0e65a':
Fix bugs in jmem-ashmem.
a9ccf6f358d544eedc9432ca81da3d3c76b0e65a 15-Jan-2015 Leon Scroggins III <scroggo@google.com> Fix bugs in jmem-ashmem.

If ashmem_set_prot_region fails, close the previously opened file.

If mmap fails, close the file and return -1.

BUG:18894965
Change-Id: I936b5c7395480249b1457e7dee566da6141fb023
(cherry picked from commit 3773c6ec2bcf603cfa2b16575022642b3e816297)
mem-ashmem.c
3773c6ec2bcf603cfa2b16575022642b3e816297 15-Jan-2015 Leon Scroggins III <scroggo@google.com> Fix bugs in jmem-ashmem.

If ashmem_set_prot_region fails, close the previously opened file.

If mmap fails, close the file and return -1.

BUG:18894965
Change-Id: I936b5c7395480249b1457e7dee566da6141fb023
mem-ashmem.c
4c8e0b762644e9189b035c7f4a541ba8d0ed262c 04-Dec-2014 Elliott Hughes <enh@google.com> am 50906c22: Merge "libjpeg should #define __ARM_HAVE_NEON."

* commit '50906c2278f3dbd5bedf968deefe0697f5ef7aae':
libjpeg should #define __ARM_HAVE_NEON.
50906c2278f3dbd5bedf968deefe0697f5ef7aae 04-Dec-2014 Elliott Hughes <enh@google.com> Merge "libjpeg should #define __ARM_HAVE_NEON."
4660f767bca6ddae968d4f5fcfa2fd5ab80c4692 04-Dec-2014 Elliott Hughes <enh@google.com> libjpeg should #define __ARM_HAVE_NEON.

Bug: 18556103
Change-Id: Ifcedc68c4625b07a1bb494085842003f35bacdd4
ndroid.mk
rmv6_idct.S
ddctmgr.c
simd_neon.c
simd_neon.h
f6cba431efa5b921e650dcbf661d3313e96d214b 26-Oct-2014 Chih-Hung Hsieh <chh@google.com> am 57cc16e3: am a66efb5d: Merge "Add -no-integrated-as at local level."

* commit '57cc16e38e6461da4317c285eec61c3265e516bf':
57cc16e38e6461da4317c285eec61c3265e516bf 16-Oct-2014 Chih-Hung Hsieh <chh@google.com> am a66efb5d: Merge "Add -no-integrated-as at local level."

* commit 'a66efb5d9a21e2666099dffb234b774d796cefbd':
Add -no-integrated-as at local level.
141649b66453380a4a912f72ec765f2c1877f3e0 16-Oct-2014 Chih-Hung Hsieh <chh@google.com> am a66efb5d: Merge "Add -no-integrated-as at local level."

* commit 'a66efb5d9a21e2666099dffb234b774d796cefbd':
Add -no-integrated-as at local level.
a66efb5d9a21e2666099dffb234b774d796cefbd 16-Oct-2014 Chih-Hung Hsieh <chh@google.com> Merge "Add -no-integrated-as at local level."
9f6aca34abc4842152e49fd553e357adc2f3f357 16-Oct-2014 Chih-Hung Hsieh <chh@google.com> Add -no-integrated-as at local level.

Later we will enable integrated-as as default at the global level.

BUG: 17820427
Change-Id: I60f815a4e22cb157c240005e973f459da93cdb91
ndroid.mk
6227b1ce18f7a45203a72102b75f891eddc8d7d1 06-Aug-2014 Derek Sollenberger <djsollen@google.com> am ef1b8301: Merge "Fix INT32 typedef"

* commit 'ef1b83013e7814622a9d11579878d342e84580b7':
Fix INT32 typedef
ef1b83013e7814622a9d11579878d342e84580b7 06-Aug-2014 Derek Sollenberger <djsollen@google.com> Merge "Fix INT32 typedef"
cb949a5de361ec934749d098315733d71fe3a983 01-Aug-2014 Hal Canary <halcanary@google.com> Fix INT32 typedef

Was typedefed to long - this is incorrect on many systems.

Change-Id: Ic3ece594ac2ada95e94ac41c145a7e4dc9e07ffc
morecfg.h
021b9904279c7bcd08a66a349933fc883141db34 01-Aug-2014 Hal Canary <halcanary@google.com> Fix INT32 typedef

Was typedefed to long - this is incorrect on many systems.

Change-Id: Ic3ece594ac2ada95e94ac41c145a7e4dc9e07ffc
morecfg.h
213197252c8c4825f6572c651126c22067025fe9 30-Apr-2014 Elliott Hughes <enh@google.com> Merge "Enable SSE optimized IDCT in jpeg decoding for x86 platform."
e08a211ab982d1877e0b4685f7c2b6560e1f4185 13-Nov-2013 Xun Sun <xun.sun@intel.com> Enable SSE optimized IDCT in jpeg decoding for x86 platform.

Change-Id: I9a646a0ca208e9ad1a11929f3fd71b7d19592dd9
Signed-off-by: Xun Sun <xun.sun@intel.com>
ndroid.mk
746f1f0853ddbd14ab5da6af35cc1fa560453d1e 21-Feb-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Correction of definition of UINT32"
84eb70123e17e1ea3931d30c972ea0450f892695 06-Feb-2014 Marcus Oakland <marcus.oakland@arm.com> AArch64: Correction of definition of UINT32

In an #ifdef ENABLE_ANDROID_NULL_CONVERT...#endif section of the
jccolor.c module UINT32 was defined as unsigned long, which is OK
for 32-bit systems but incorrect for __LP64__ systems such as AArch64.
The definition of UINT32 has been changed to unsigned int, which is
32-bits on both 32-bit and __LP64__ systems.

Change-Id: I5e29db2ea0690ce3623bb54aa1138aa3f772df76
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
ccolor.c
0cff496ad0f2a3b8302e6c815a50fd7d0628526d 06-Feb-2014 Colin Cross <ccross@android.com> Merge "jpeg: fix compiling for 64-bit"
0da7ab65c6faaf7c8c39edf3612206703997334b 06-Feb-2014 Colin Cross <ccross@android.com> jpeg: fix compiling for 64-bit

Cast pointers to uintptr_t instead of int to test alignment.

Change-Id: If959132a4bc52a151bcbe03702b24f4a202bfb1c
morecfg.h
b16da2189f013e44ba5b44b843f784110fa0ffe6 14-Oct-2013 Nick Kralevich <nnk@google.com> am 6435abb2: Merge "Fix build for c99"

* commit '6435abb2c5883ceb85598a9c690ea8f744df6b5f':
Fix build for c99
6435abb2c5883ceb85598a9c690ea8f744df6b5f 14-Oct-2013 Nick Kralevich <nnk@google.com> Merge "Fix build for c99"
135f5dc7b1302ba3cab48f4738d5ed1450bcb896 11-Oct-2013 Nick Kralevich <nnk@google.com> am f7e17efa: am 80519db0: am 40dfc1d1: am 8fe7969d: am dc20ac98: improve the handling of images with duplicate component IDs

* commit 'f7e17efa07f55cf64199942e488cba7d8b2d5b13':
improve the handling of images with duplicate component IDs
f7e17efa07f55cf64199942e488cba7d8b2d5b13 11-Oct-2013 Nick Kralevich <nnk@google.com> am 80519db0: am 40dfc1d1: am 8fe7969d: am dc20ac98: improve the handling of images with duplicate component IDs

* commit '80519db0409bd24fdd17146742c212d8b9a9a075':
improve the handling of images with duplicate component IDs
80519db0409bd24fdd17146742c212d8b9a9a075 11-Oct-2013 Nick Kralevich <nnk@google.com> am 40dfc1d1: am 8fe7969d: am dc20ac98: improve the handling of images with duplicate component IDs

* commit '40dfc1d1a9742d1ea7452fd0d08765d5b595e813':
improve the handling of images with duplicate component IDs
40dfc1d1a9742d1ea7452fd0d08765d5b595e813 11-Oct-2013 Nick Kralevich <nnk@google.com> am 8fe7969d: am dc20ac98: improve the handling of images with duplicate component IDs

* commit '8fe7969dd0b193bce2d25c9367c5f4ad1d9e8ff3':
improve the handling of images with duplicate component IDs
8fe7969dd0b193bce2d25c9367c5f4ad1d9e8ff3 11-Oct-2013 Nick Kralevich <nnk@google.com> am dc20ac98: improve the handling of images with duplicate component IDs

* commit 'dc20ac98d48382a8e0eaafd15c38a57f8ca836c9':
improve the handling of images with duplicate component IDs
dc20ac98d48382a8e0eaafd15c38a57f8ca836c9 11-Oct-2013 Nick Kralevich <nnk@google.com> improve the handling of images with duplicate component IDs

Patch written by noel@chromium.org and aedla@chromium.org

(cherry picked from commit 0061f897d4f6217475bbb4bb63fcbd7f8f4af3e5)

Change-Id: I62b7e4d04e9b1c6be18d33e9ddd6d09a0c84daaf
dmarker.c
0061f897d4f6217475bbb4bb63fcbd7f8f4af3e5 11-Oct-2013 Nick Kralevich <nnk@google.com> improve the handling of images with duplicate component IDs

Patch written by noel@chromium.org and aedla@chromium.org

Change-Id: Ic9faaf30b6b623f5fa660ee9ca5359c98782939e
dmarker.c
2289b47190b40083a66bd8d6818f52ddf3c86de8 06-Oct-2013 synergydev <synergye@codefi.re> Fix build for c99

Fix two implicit declarations to allow clang building.

Change-Id: I934e7d455b22e55e0572ccd40f351ec5b50acb4d
dphuff.c
6a3be8dfbb7c258e7fbbd11f1078bf11c9be89bd 11-Jun-2012 Prajakta Gudadhe <pgudadhe@nvidia.com> JPEG decoding neon optimization

Bug: 6633342

The idct and color conversion are neon accelerated.
Note, neon accelerations and armv6 assembly accelerations are muturaly
exclusive. When neon is not available, the armv6 assembly is used.

Change-Id: I4a7093e2199893154d64b43f2b0282971c19426c
ndroid.mk
OTICE
dcolor.c
ddctmgr.c
morecfg.h
simd_arm_neon.S
simd_neon.c
simd_neon.h
b84b1409efc0e2df28ff0969e10d33e40fc458f2 28-Feb-2013 Andrew Hsieh <andrewhsieh@google.com> am 14d8fa03: Merge "[MIPS] Inverse DCT optimizations"

* commit '14d8fa0373cc75eea1bd8413b7757b918a4ff3c7':
[MIPS] Inverse DCT optimizations
14d8fa0373cc75eea1bd8413b7757b918a4ff3c7 28-Feb-2013 Andrew Hsieh <andrewhsieh@google.com> Merge "[MIPS] Inverse DCT optimizations"
7fb4687279b703d9f866cefac5fc6967fb81068a 26-Feb-2013 Angus Kong <shkong@google.com> Add static library target.

Change-Id: Ibd4dcf7aa46c4198d7baeecf19fd330e647abe6d
ndroid.mk
b98230c8207af91559f0dd12ea07724b893a738b 07-Feb-2013 Angus Kong <shkong@google.com> Make libjpeg built against NDK

Change-Id: I2570cfe1360af6eb0dcbb14bcc70f1dc6f2b5fe0
ndroid.mk
71ee859f6d3b654092fe1cba126d2c176a201196 06-Nov-2012 Raghu Gandham <raghu@mips.com> [MIPS] Inverse DCT optimizations

Change-Id: I1f3aa64d8d19b515876fe83b6df86c27bffa4530
ndroid.mk
dct.h
ddctmgr.c
morecfg.h
ips_idct_le.S
ips_jidctfst.c
6f1b7fb8079197d4a4edc5d2e5c5546302197f33 16-Jul-2012 Andrew Hsieh <andrewhsieh@google.com> am 7e70be10: Merge "Add SSE optmized IDCT in JPEG decoding for INTEL Atom platform."

* commit '7e70be1060ed0c16f48d1fd6a4aa8dcef2e41f34':
Add SSE optmized IDCT in JPEG decoding for INTEL Atom platform.
7e70be1060ed0c16f48d1fd6a4aa8dcef2e41f34 16-Jul-2012 Andrew Hsieh <andrewhsieh@google.com> Merge "Add SSE optmized IDCT in JPEG decoding for INTEL Atom platform."
6553d244f16f1ce8e6b5e018fd1b49e98a3c1de3 04-Jul-2012 tengfei.zhao <tengfei.zhao@intel.com> Add SSE optmized IDCT in JPEG decoding for INTEL Atom platform.

ADD SSE optmized IDCT. It makes album2D workload about 18%
faster than jidctfst.c. The major implementation is at
"jidctintelsse.c".

Change-Id: I6dc6f367158172b468e85e7eae249027eb1766cf
ndroid.mk
ddctmgr.c
idctintelsse.c
morecfg.h
c17d44bf64d72a790dc7a92ccfc76087edffc01b 15-May-2012 Elliott Hughes <enh@google.com> Remove obsolete ThirdPartyProject.prop file.

Change-Id: I4df31b9dcc671cc382a408a10f4c5dc3eb2a3c54
hirdPartyProject.prop
d4fad7f50f79626455d88523207e05b868819cd8 30-Apr-2011 Wei-Ta Chen <weita@google.com> Fix 4287289, where undefined behavior triggered in jpeg tile based
decoding.

The issue is that we set a flag to the current SOS marker position, but
we don't initialize the flag before testing the flag.

Change-Id: I4e0cc243a36c348584e888d95fcba2af896f6bc2
dmarker.c
07e6988e9c9ed5bf5cb457d4f0ba7ca08c4e0b22 30-Jan-2011 The Android Open Source Project <initial-contribution@android.com> am 7121ffa5: Reconcile gingerbread-plus-aosp and honeycomb

* commit '7121ffa522b7aac155800643bb5a4298f2125358':
7121ffa522b7aac155800643bb5a4298f2125358 30-Jan-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile gingerbread-plus-aosp and honeycomb

Change-Id: Ied4b07c459a4013851cbee43ebc25efe787ced4d
490cd3c99e80ea23ee72f3da14f5fc2a768f9675 30-Jan-2011 The Android Open Source Project <initial-contribution@android.com> Mass merge from gingerbread - do not merge

Change-Id: Ic87ee08c780c42ef469a2120eb358afaabeeb1b1
286f0cdb9cc3b0e1ce70de10eee370f8b59f3f3c 27-Jan-2011 Wei-Ta Chen <weita@google.com> am 46c05833: (-s ours) Do not merge.

* commit '46c05833c257ab46c42182cbb2ae359892d14443':
Do not merge.
5e285d001ad1e535626943609b97a853a80500e6 13-Jan-2011 Wei-Ta Chen <weita@google.com> am d11c9756: (-s ours) am 46c05833: (-s ours) Do not merge.

* commit 'd11c97566df5698008cc33934c54264049a5b92e':
Do not merge.
d11c97566df5698008cc33934c54264049a5b92e 13-Jan-2011 Wei-Ta Chen <weita@google.com> am 46c05833: (-s ours) Do not merge.

* commit '46c05833c257ab46c42182cbb2ae359892d14443':
Do not merge.
46c05833c257ab46c42182cbb2ae359892d14443 23-Oct-2010 Wei-Ta Chen <weita@google.com> Do not merge.

Backport changes/fixes related to Jpeg tile-based decoder from Honeycomb
to Gingerbread.

Bug: 3309014

//////////////////////////////////////////////////////////////////////////
This is a combination of 5 commits.

Fix 3118622, where tile-base jpeg decode does not handle the region
width correctly in Progressive JPEG when the h_samp_factor is different from one color
component to anothor.

To decode a region in a progressive JPEG, each time we decode
one iMCU row, the width of which equals to the region width.
However, for each color component the region width in DCT blocks depends on its h_samp_factor.
The change ensures we get a correct region width from our recorded MCU_column number.

Bug: 3118622
Change-Id: I6d3e30f946e0395c0719aee0c8e694824ab3d27f

libjpeg: Remove the old assembly code for ARM.

A much better one is coming.

Change-Id: I60d8c227d573fcbff10af363d69405e9fbd0c147

libjpeg: Use the new fast-and-accurate IDCT method for ARMv6+ devices.

As another AA&N implementation, it runs 9-10% faster than jidctfst.S
and 11-15% faster than jidctfst.c. As another IDCT method, it runs
17-20% faster than JDCT_ISLOW method and provides the same accuracy
or even better.

Change-Id: I81783c310d6dac5aaf84c03a4cf20662f466564c

libjpeg: Make both JDCT_IFAST and JDCT_ISLOW use armv6_idct.

Change-Id: Iae9c402ec7e1c6b078f404fec995162c8091f383

Fix the JPEG tile decode issue in the case of JPEGs having restart
markers.

The fix stores the restart information on each index point and restores
the restart information when we do the tile decode.

Bug: 3312406
////////////////////////////////////////////////////////////////////////////
ndroid.mk
rmv6_idct.S
dcoefct.c
ddctmgr.c
dhuff.c
dphuff.c
idctfst.S
peglib.h
27c2e1a63730561332f4d3c406c7e9b7c36963d2 10-Jan-2011 Wei-Ta Chen <weita@google.com> Fix the JPEG tile decode issue in the case of JPEGs having restart
markers.

The fix stores the restart information on each index point and restores
the restart information when we do the tile decode.

Bug: 3312406
Change-Id: I5cd8717d4b60ffb5d2e7c97189ee044d67472fe2
dhuff.c
dphuff.c
peglib.h
6ead6aed9ef9420c6d4c5efd170d5ab502e337e5 14-Dec-2010 Chia-chi Yeh <chiachi@android.com> libjpeg: Make both JDCT_IFAST and JDCT_ISLOW use armv6_idct.

Change-Id: Iae9c402ec7e1c6b078f404fec995162c8091f383
ddctmgr.c
4736a38e2514bfe50b0241d2053befea82822944 10-Dec-2010 Chia-chi Yeh <chiachi@android.com> libjpeg: Use the new fast-and-accurate IDCT method for ARMv6+ devices.

As another AA&N implementation, it runs 9-10% faster than jidctfst.S
and 11-15% faster than jidctfst.c. As another IDCT method, it runs
17-20% faster than JDCT_ISLOW method and provides the same accuracy
or even better.

Change-Id: I81783c310d6dac5aaf84c03a4cf20662f466564c
ndroid.mk
rmv6_idct.S
ddctmgr.c
c2cf571b568278c7a347e656bfd2522378b7112d 10-Dec-2010 Chia-chi Yeh <chiachi@android.com> libjpeg: Remove the old assembly code for ARM.

A much better one is coming.

Change-Id: I60d8c227d573fcbff10af363d69405e9fbd0c147
ndroid.mk
idctfst.S
2fa18d458a5545e7f6cc431954f19e136dfedc9e 23-Oct-2010 Wei-Ta Chen <weita@google.com> Fix 3118622, where tile-base jpeg decode does not handle the region
width correctly in Progressive JPEG when the h_samp_factor is different from one color
component to anothor.

To decode a region in a progressive JPEG, each time we decode
one iMCU row, the width of which equals to the region width.
However, for each color component the region width in DCT blocks depends on its h_samp_factor.
The change ensures we get a correct region width from our recorded MCU_column number.

Bug: 3118622
Change-Id: I6d3e30f946e0395c0719aee0c8e694824ab3d27f
dcoefct.c
e2c386b408e808685833ba162457e6dbbb485d36 08-Sep-2010 Joseph Wen <josephwen@google.com> Merge "Add ashmem implementation for libjpeg decoder's backing store" into gingerbread
7b6961ad552a5f748fbf4b287e8838c7495dacb5 11-Aug-2010 Joseph Wen <josephwen@google.com> Add ashmem implementation for libjpeg decoder's backing store

Bug: 2791339

Change-Id: Ibfb48c0016ec5bdd8e8220e0479d88d5a2aaa1c1
ndroid.mk
mem-ashmem.c
memsys.h
e0eadaa39b72e33f032220246c771d7302ebeaf8 30-Aug-2010 Joseph Wen <josephwen@google.com> Improve the tile based decoding performance

Change-Id: I4043edff510ffe50fdf47a342d6a95e879918737
dapistd.c
dcoefct.c
pegint.h
cc66ecf44d1407039b05ffd7b3342389f95c17b7 20-Aug-2010 Joseph Wen <josephwen@google.com> Fix a bug related to tile based decoding

When the sample size is larger than 1.
The calculation of image's height and width should be rounding up not down.

Change-Id: I6c2ad1f630d1f8f9392594887e23f294ecde2352
dapistd.c
dcoefct.c
dhuff.c
dmaster.c
peglib.h
f5b94eebe742df1a9bb3941fc0a0ec0137e936ef 12-Jul-2010 Joseph Wen <josephwen@google.com> Do tile-based jpeg decoding for progressive mode.

Change-Id: I5619105ae6a6e2505d17260431bc7a91170eecd6
dapimin.c
dapistd.c
dcoefct.c
dhuff.c
dinput.c
dmarker.c
dphuff.c
dtrans.c
pegint.h
peglib.h
utils.c
3147fbe7688fc353e6ae03825a37cf101a4ee01d 12-Jul-2010 Joseph Wen <josephwen@google.com> Support tile-based jpeg decoding.This change only handles the baseline case.

The functionality of tile-based decode is enabled by default.
To disable it, mark off the flag of ANDROID_TILE_BASED_DECODE in Android.mk

Change-Id: Ib9f7839095b0ca55260c28d3c499c871e81332ea
ndroid.mk
dapimin.c
dapistd.c
dcoefct.c
dhuff.c
dhuff.h
dinput.c
dmaster.c
dtrans.c
pegint.h
peglib.h
3a10203724328878e5901a460697ccfdd8135254 16-Jul-2010 The Android Open Source Project <initial-contribution@android.com> add meta-files about 3rd party projects

Change-Id: I613711ab7eb90d048a1ed93e9f096873f6e4f776
hirdPartyProject.prop
60ba49e6e7ce3276ad250447ad920b2434b0fbed 09-Mar-2010 Jean-Baptiste Queru <jbq@google.com> Add an empty CleanSpec.mk

Change-Id: I5da8d348baf9416724923b06406a1acc665bb93a
leanSpec.mk
a1846819a88197a5e0ceab85df103cd753d685e3 05-Feb-2010 The Android Open Source Project <initial-contribution@android.com> am 2d3353be: am 04f4c51c: reconcile main tree with open-source eclair

Merge commit '2d3353be64c34a8ed7c0c75a739e48b517c361e6'

* commit '2d3353be64c34a8ed7c0c75a739e48b517c361e6':
android-2.1_r1 snapshot
2d3353be64c34a8ed7c0c75a739e48b517c361e6 05-Feb-2010 The Android Open Source Project <initial-contribution@android.com> am 04f4c51c: reconcile main tree with open-source eclair

Merge commit '04f4c51c1f00921d5e32c0bf31a3565916b70b07' into eclair-plus-aosp

* commit '04f4c51c1f00921d5e32c0bf31a3565916b70b07':
android-2.1_r1 snapshot
04f4c51c1f00921d5e32c0bf31a3565916b70b07 05-Feb-2010 The Android Open Source Project <initial-contribution@android.com> reconcile main tree with open-source eclair
602711b6917799d41e7856a38f4bfa58e9f1e2e9 29-Jan-2010 The Android Open Source Project <initial-contribution@android.com> reconcile android-2.1_r1 snapshot
bf23ae1f51763642d76e9acd41116eafeddb0449 13-Jan-2010 The Android Open Source Project <initial-contribution@android.com> android-2.1_r1 snapshot
c4e357f36260ba7d7dc279b43dd94453238943d1 06-Jan-2010 Wei-Ta Chen <weita@google.com> Build libjpeg to a shared library, so that various packages/libraries can dynamically link to it.
ndroid.mk
0be9ff35b071273090b232142b00ab25ee49da11 15-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
90e6532e3531d1fff8598c7353abac939c102266 15-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master

Merge commit 'goog/stage-korg-master' into HEAD
d1935bcf805dd5bf2b83eec3cc1f1af2a88992bb 15-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from eclair
a6567963ad9040df76b53fac9279e74e0864fc70 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
morecfg.h
4e7198a44d57ac3d4a3220c3ba671362fa8b46c9 05-Sep-2009 Mathias Agopian <mathias@google.com> fix [2093178] Color matching problem
morecfg.h
9e8ea14087bf3715d2f19a8a850100b1e25a9987 23-Apr-2009 Jean-Baptiste Queru <jbq@google.com> Merge donut into master
9d9e4fc34a2fdfbf7df12a84e0914b9db67de33b 29-Mar-2009 The Android Open Source Project <initial-contribution@android.com> Merge branch 'open_source_no_contributions' into google_internal
747b3086ae116b20f2b5839053a3aa9fb3fce714 19-Mar-2009 Jean-Baptiste Queru <jbq@google.com> Merge commit 'remotes/korg/cupcake' into cupcake_to_master
9f5d49a1588e438ae7ceabd0c94172117e3303aa 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
ndroid.mk
ODULE_LICENSE_BSD_LIKE
OTICE
EADME
nsi2knr.1
nsi2knr.c
derror.h
djpeg.c
djpeg.h
hange.log
jpeg.1
jpeg.c
kconfig.c
oderules.doc
onfig.guess
onfig.sub
onfigure
jpeg.1
jpeg.c
xample.c
ilelist.doc
nstall-sh
nstall.doc
capimin.c
capistd.c
ccoefct.c
ccolor.c
cdctmgr.c
chuff.c
chuff.h
cinit.c
cmainct.c
cmarker.c
cmaster.c
comapi.c
config.bcc
config.cfg
config.dj
config.doc
config.h
config.mac
config.manx
config.mc6
config.sas
config.st
config.vc
config.vms
config.wat
cparam.c
cphuff.c
cprepct.c
csample.c
ctrans.c
dapimin.c
dapistd.c
datadst.c
datasrc.c
dcoefct.c
dcolor.c
dct.h
ddctmgr.c
dhuff.c
dhuff.h
dinput.c
dmainct.c
dmarker.c
dmaster.c
dmerge.c
dphuff.c
dpostct.c
dsample.c
dtrans.c
error.c
error.h
fdctflt.c
fdctfst.c
fdctint.c
idctflt.c
idctfst.S
idctfst.c
idctint.c
idctred.c
include.h
mem-android.c
memansi.c
memdos.c
memdosa.asm
memmac.c
memmgr.c
memname.c
memnobs.c
memsys.h
morecfg.h
pegint.h
peglib.h
pegtran.1
pegtran.c
quant1.c
quant2.c
utils.c
version.h
ibjpeg.doc
tconfig
tmain.sh
akcjpeg.st
akdjpeg.st
akeapps.ds
akefile.ansi
akefile.bcc
akefile.cfg
akefile.dj
akefile.manx
akefile.mc6
akefile.mms
akefile.sas
akefile.unix
akefile.vc
akefile.vms
akefile.wat
akelib.ds
akeproj.mac
akljpeg.st
aktjpeg.st
akvms.opt
dbmp.c
dcolmap.c
dgif.c
djpgcom.1
djpgcom.c
dppm.c
drle.c
dswitch.c
dtarga.c
tructure.doc
estimg.bmp
estimg.jpg
estimg.ppm
estimgp.jpg
estorig.jpg
estprog.jpg
ransupp.c
ransupp.h
sage.doc
izard.doc
rbmp.c
rgif.c
rjpgcom.1
rjpgcom.c
rppm.c
rrle.c
rtarga.c
38777fb873b051d8d8bffbbd1de731cc9574a33b 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
ndroid.mk
ODULE_LICENSE_BSD_LIKE
OTICE
EADME
nsi2knr.1
nsi2knr.c
derror.h
djpeg.c
djpeg.h
hange.log
jpeg.1
jpeg.c
kconfig.c
oderules.doc
onfig.guess
onfig.sub
onfigure
jpeg.1
jpeg.c
xample.c
ilelist.doc
nstall-sh
nstall.doc
capimin.c
capistd.c
ccoefct.c
ccolor.c
cdctmgr.c
chuff.c
chuff.h
cinit.c
cmainct.c
cmarker.c
cmaster.c
comapi.c
config.bcc
config.cfg
config.dj
config.doc
config.h
config.mac
config.manx
config.mc6
config.sas
config.st
config.vc
config.vms
config.wat
cparam.c
cphuff.c
cprepct.c
csample.c
ctrans.c
dapimin.c
dapistd.c
datadst.c
datasrc.c
dcoefct.c
dcolor.c
dct.h
ddctmgr.c
dhuff.c
dhuff.h
dinput.c
dmainct.c
dmarker.c
dmaster.c
dmerge.c
dphuff.c
dpostct.c
dsample.c
dtrans.c
error.c
error.h
fdctflt.c
fdctfst.c
fdctint.c
idctflt.c
idctfst.S
idctfst.c
idctint.c
idctred.c
include.h
mem-android.c
memansi.c
memdos.c
memdosa.asm
memmac.c
memmgr.c
memname.c
memnobs.c
memsys.h
morecfg.h
pegint.h
peglib.h
pegtran.1
pegtran.c
quant1.c
quant2.c
utils.c
version.h
ibjpeg.doc
tconfig
tmain.sh
akcjpeg.st
akdjpeg.st
akeapps.ds
akefile.ansi
akefile.bcc
akefile.cfg
akefile.dj
akefile.manx
akefile.mc6
akefile.mms
akefile.sas
akefile.unix
akefile.vc
akefile.vms
akefile.wat
akelib.ds
akeproj.mac
akljpeg.st
aktjpeg.st
akvms.opt
dbmp.c
dcolmap.c
dgif.c
djpgcom.1
djpgcom.c
dppm.c
drle.c
dswitch.c
dtarga.c
tructure.doc
estimg.bmp
estimg.jpg
estimg.ppm
estimgp.jpg
estorig.jpg
estprog.jpg
ransupp.c
ransupp.h
sage.doc
izard.doc
rbmp.c
rgif.c
rjpgcom.1
rjpgcom.c
rppm.c
rrle.c
rtarga.c
9175dba76b0c31e0870fe074d476650cf258071c 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
ndroid.mk
idctfst.S
mem-android.c
d9bb1510bee7d9bf2a0f2699c647a65e67ab9cf8 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
ndroid.mk
ODULE_LICENSE_BSD_LIKE
OTICE
ccolor.c
config.h
dcolor.c
dmaster.c
dmerge.c
idctfst.S
morecfg.h
peglib.h
c6a7fc661d57f86ac08cd637abc881cbe687b11a 12-Jan-1970 Upstream <upstream-import@none> external/jpeg 6b
EADME
nsi2knr.1
nsi2knr.c
derror.h
djpeg.c
djpeg.h
hange.log
jpeg.1
jpeg.c
kconfig.c
oderules.doc
onfig.guess
onfig.sub
onfigure
jpeg.1
jpeg.c
xample.c
ilelist.doc
nstall-sh
nstall.doc
capimin.c
capistd.c
ccoefct.c
ccolor.c
cdctmgr.c
chuff.c
chuff.h
cinit.c
cmainct.c
cmarker.c
cmaster.c
comapi.c
config.bcc
config.cfg
config.dj
config.doc
config.mac
config.manx
config.mc6
config.sas
config.st
config.vc
config.vms
config.wat
cparam.c
cphuff.c
cprepct.c
csample.c
ctrans.c
dapimin.c
dapistd.c
datadst.c
datasrc.c
dcoefct.c
dcolor.c
dct.h
ddctmgr.c
dhuff.c
dhuff.h
dinput.c
dmainct.c
dmarker.c
dmaster.c
dmerge.c
dphuff.c
dpostct.c
dsample.c
dtrans.c
error.c
error.h
fdctflt.c
fdctfst.c
fdctint.c
idctflt.c
idctfst.c
idctint.c
idctred.c
include.h
memansi.c
memdos.c
memdosa.asm
memmac.c
memmgr.c
memname.c
memnobs.c
memsys.h
morecfg.h
pegint.h
peglib.h
pegtran.1
pegtran.c
quant1.c
quant2.c
utils.c
version.h
ibjpeg.doc
tconfig
tmain.sh
akcjpeg.st
akdjpeg.st
akeapps.ds
akefile.ansi
akefile.bcc
akefile.cfg
akefile.dj
akefile.manx
akefile.mc6
akefile.mms
akefile.sas
akefile.unix
akefile.vc
akefile.vms
akefile.wat
akelib.ds
akeproj.mac
akljpeg.st
aktjpeg.st
akvms.opt
dbmp.c
dcolmap.c
dgif.c
djpgcom.1
djpgcom.c
dppm.c
drle.c
dswitch.c
dtarga.c
tructure.doc
estimg.bmp
estimg.jpg
estimg.ppm
estimgp.jpg
estorig.jpg
estprog.jpg
ransupp.c
ransupp.h
sage.doc
izard.doc
rbmp.c
rgif.c
rjpgcom.1
rjpgcom.c
rppm.c
rrle.c
rtarga.c