Commit Graph

607 Commits

Author SHA1 Message Date
Alexander
f2123b4222 limit allocated memory to lines_per_block * linesize size
allocate block for wider lines
2017-09-17 01:22:44 +03:00
Alexander
d4a1f7a01a align lines 2017-09-16 22:58:37 +03:00
Alexander
63b925d74c Merge branch 'master' into block-storage
# Conflicts:
#	libImaging/Imaging.h
2017-09-16 22:21:56 +03:00
Alexander
763df3d90b Convert tabs to spaces in Imaging.h 2017-09-16 20:46:09 +03:00
Alexander
883fb8f9e9 MEMORY_MAX_BLOCKS should be 0 by default 2017-09-15 19:00:53 +03:00
Alexander
fe283b10a5 Do not use ImagingNewBlock at all 2017-09-15 18:11:20 +03:00
Alexander
f584f8399a save released blocks 2017-09-15 18:00:15 +03:00
Alexander
0a3c852e1b work in ImagingAllocateArray with blocks 2017-09-15 17:50:29 +03:00
Alexander
852124d49b Add params check for ImagingNewBlock 2017-09-15 17:32:49 +03:00
Alexander
f6a05fd22c Rename ImagingCopyInfo to ImagingCopyPaletteInfo 2017-09-15 00:33:04 +03:00
Alexander
e3954aa4ea remove unnecessary ImagingCopyInfos 2017-09-15 00:30:49 +03:00
Alexander Karpinsky
1f61c4efd4 Merge pull request #2686 from uploadcare/new-dirty
Use ImagingNewDirty when possible
2017-09-14 14:14:33 +03:00
Alexander
be02f87ee7 fix comment [ci skip] 2017-09-14 14:02:30 +03:00
Alexander
ef1df617f9 move _i2f to utils 2017-09-12 17:35:38 +03:00
Alexander
bc13a9d011 Use macros for FLIP_LEFT_RIGHT and ROTATE_180 2017-09-12 14:07:33 +03:00
Alexander
5bc72dbc10 Merge branch 'master' into alpha-composite-box 2017-09-11 23:34:45 +03:00
Alexander
29515f59bb rename TRANSPOSE_ROTATE_180 to TRANSVERSE 2017-09-11 22:58:22 +03:00
Alexander
fd297fe588 3-level transpospose 2017-09-11 19:26:30 +03:00
Alexander
b8789e6815 Change geometry chunk size 2017-09-11 02:44:28 +03:00
Alexander
a2a2d8d716 Implement ImagingTransposeRotate180 2017-09-11 01:47:47 +03:00
Alexander
67459795db 2 times faster ImagingRotate180 2017-09-11 01:07:38 +03:00
wiredfool
3b5c2c30be Merge pull request #2679 from uploadcare/fast-filters
Fast filters
2017-09-10 17:22:00 +01:00
Alexander
6df28bc359 Faster ImagingFlipLeftRight 2017-09-10 12:45:45 +03:00
Alexander
765c7eb7de Shift is faster than devision 2017-09-10 01:14:53 +03:00
Alexander
c59529d28d use PRECISION_BITS constant in ImagingAlphaComposite
use UINT32 instead of UINT16 (a bit faster on x86)
2017-09-01 13:26:08 +03:00
Alexander
0acc2cea9c Fix need_horizontal and need_vertical conditions in resample 2017-09-01 00:24:49 +03:00
Alexander
1e1f773f8a Rename variables 2017-08-31 19:25:25 +03:00
Alexander
dc143f7833 Merge branch 'master' into new-dirty 2017-08-31 17:34:05 +03:00
wiredfool
367ce3c1bc Merge pull request #2693 from uploadcare/fast-unpacking
Fast unpacking and partially packing
2017-08-31 15:23:11 +01:00
wiredfool
9797e7bbfa Merge pull request #1989 from uploadcare/jpeg-loading-without-convertion
Use RGBX rawmode for RGB JPEG images
2017-08-31 15:10:38 +01:00
Alexander Karpinsky
4029998d4f Merge pull request #2699 from uploadcare/better-cmyk
Convert CMYK to RGB like Google Chrome
2017-08-31 16:45:57 +03:00
wiredfool
32d14e382a Merge pull request #2698 from uploadcare/jpeg-subsampling
Fix sampling factor for subsampling=2 while JPEG saving
2017-08-31 13:23:48 +01:00
Alexander
6701828dfc Merge branch 'master' into fast-unpacking
# Conflicts:
#	libImaging/Unpack.c
2017-08-28 21:54:46 +03:00
Alexander
ad4b42f5f4 Merge branch 'master' into fast-filters 2017-08-28 21:47:43 +03:00
Alexander
d8af3fc23a Merge branch 'master' into jpeg-loading-without-convertion 2017-08-28 19:45:19 +03:00
Alexander
3f07f0291e Merge branch 'master' into fast-unpacking 2017-08-28 19:43:15 +03:00
Alexander
82c986dfab Merge branch 'master' into 16-bit-rgb-tiff 2017-08-28 19:42:46 +03:00
Alexander Karpinsky
6b4b1dc3c5 Merge pull request #2694 from uploadcare/packing-tests
Packing tests
2017-08-28 19:42:06 +03:00
Alexander
aac0869ca7 Revert little-endian byte order for "I" and "F" rawmodes 2017-08-28 19:02:15 +03:00
Alexander
efb0915b19 Convert CMYK to RGB like Google Chrome 2017-08-28 17:11:08 +03:00
Alexander
4d56db3a34 Fix wrong formula for subsampling=2 while JPEG saving 2017-08-27 20:03:36 +03:00
Alexander
b705df3b64 one div for blending 2017-08-27 12:40:53 +03:00
Alexander
12634c4524 Merge branch 'packing-tests' into fast-unpacking
# Conflicts:
#	Tests/test_lib_pack.py
2017-08-26 20:20:17 +03:00
Alexander
7f7b53447a Add tests for all new modes 2017-08-26 17:36:06 +03:00
Alexander
a78e45c3dc Merge branch 'packing-tests' into 16-bit-rgb-tiff 2017-08-26 17:17:49 +03:00
Alexander
f43b9f396f Second part of pack tests 2017-08-26 10:49:28 +03:00
Alexander
8cb9cba1e0 Packing tests, first part. Fix RGBX packers 2017-08-24 00:58:39 +03:00
Alexander
2439c9b2db possible fix I→I and L→L unpacking on bigendian 2017-08-23 23:09:50 +03:00
wiredfool
f5a8ece187 Merge pull request #2254 from uploadcare/resample-roi
Region of interest (box) for resampling
2017-08-22 22:35:12 +01:00
Alexander
ad2c952697 Add more tests 2017-08-22 01:35:24 +03:00
Alexander
40d30f678b Use MAKE_UINT32 when possible for unpacking 2017-08-22 00:06:26 +03:00
Alexander
21d1c4cef5 Merge branch 'master' into 16-bit-rgb-tiff 2017-08-21 22:43:30 +03:00
Alexander
8c64275156 Load 16-bit RGB and RGBA TIFF image 2017-08-21 16:28:29 +03:00
Alexander
fc40ef0c1e Move PREBLEND and BLEND to ImagingUtils.h 2017-08-19 15:58:23 +03:00
Alexander
d64f163760 Move MULDIV255 and SHIFTFORDIV255 to ImagingUtils.h 2017-08-19 15:47:04 +03:00
Alexander
58542fdfb9 Move WORDS_BIGENDIAN to ImagingUtils.h 2017-08-19 15:30:41 +03:00
Alexander
00b65ce1c3 unused 2017-08-19 15:27:39 +03:00
Alexander
762b09cdb5 unroll ImagingPackRGB 2017-08-18 01:46:00 +03:00
Alexander
b4e226714d Faster ImagingUnpackRGB 2017-08-17 23:54:30 +03:00
Alexander
b975f9db92 Merge branch 'master' into resample-roi
# Conflicts:
#	libImaging/Resample.c
2017-08-17 15:43:30 +03:00
wiredfool
e1aba29f9b Merge pull request #2683 from wiredfool/issue_2044
Test/fix for issue #2044
2017-08-17 11:52:07 +01:00
Alexander
4af4256ac3 Use ImagingNewDirty 2017-08-17 12:14:19 +03:00
Alexander
bec01d3b0d Use ImagingNewDirty when possible 2017-08-17 03:23:13 +03:00
Alexander
a941747f14 use ImagingNewDirty 2017-08-17 02:56:51 +03:00
Alexander
e7cdb3718c Merge branch 'master' into fast-filters 2017-08-17 02:50:18 +03:00
Alexander
9cf8f93c64 Merge branch 'master' into fast-merge
# Conflicts:
#	_imaging.c
#	libImaging/Bands.c
#	libImaging/Imaging.h
2017-08-16 22:56:16 +03:00
wiredfool
300dfcf4a4 Test/fix for issue #2044 2017-08-16 11:46:27 -07:00
wiredfool
d3580451e2 Merge pull request #2676 from uploadcare/fast-split
Fast split()
2017-08-16 16:10:33 +01:00
wiredfool
9c4535bc82 Merge pull request #2655 from python-pillow/fast-allocation
Fast image allocation
2017-08-16 15:16:43 +01:00
wiredfool
e7aa155b72 Merge pull request #2654 from python-pillow/storage-cleanup
Storage cleanup
2017-08-16 12:00:32 +01:00
wiredfool
3b0f183d5c Merge pull request #2648 from ifeherva/master
Fixed bc5 decoding
2017-08-16 11:42:31 +01:00
Alexander
c5865f9abe it's implementation detail (SSE rounds automatically) 2017-08-13 17:39:22 +03:00
Alexander
3949fc812a avoid warning: always_inline function might not be inlinable 2017-08-13 16:33:36 +03:00
Alexander
5dbc71b69b already defined 2017-08-13 16:27:54 +03:00
Alexander
b10b134b41 i2f fix 2017-08-13 16:01:01 +03:00
Alexander
c2e0092589 Speed up resampling again a bit ) 2017-08-13 01:10:19 +03:00
Alexander
8d4681ff67 5x5 kernel 2017-08-13 00:33:52 +03:00
Alexander
f3a33da9f3 3x3 kernel 2017-08-13 00:15:57 +03:00
Alexander
b11bba108e accept multiband images in filter (noop) 2017-08-13 00:03:50 +03:00
Alexander
55f153d999 Merge branch 'master' into fast-filters
# Conflicts:
#	libImaging/Filter.c
2017-08-12 23:52:31 +03:00
Alexander Karpinsky
bbe07d4f49 Merge pull request #2670 from uploadcare/threaded-filter
Release GIL in filters
2017-08-12 23:51:08 +03:00
Alexander
49492def9b Merge branch 'master' into fast-filters
# Conflicts:
#	libImaging/Filter.c
2017-08-12 23:43:25 +03:00
Alexander
847dd67a41 serious test for kernel filters 2017-08-12 23:22:59 +03:00
Alexander
38eab1a43f do 3x3 filtering in separate function 2017-08-12 23:07:08 +03:00
Alexander
5353d28e35 copy first and last lines 2017-08-12 22:18:24 +03:00
Alexander
f71b3a8ed7 clip8 function 2017-08-12 22:12:59 +03:00
Alexander
7c3c3273eb compiler makes this for me 2017-08-12 19:41:18 +03:00
Alexander
b454f773bd make things faster 2017-08-12 19:39:11 +03:00
Alexander
a2681a0690 naive implementation 2017-08-12 19:17:21 +03:00
Alexander
91b08b7daa noop core.merge 2017-08-12 19:08:07 +03:00
Alexander
294da4e8f5 error handling 2017-08-12 17:42:49 +03:00
Alexander
6ce6cc7537 faster ImagingSplit 2017-08-12 15:49:46 +03:00
Alexander
ca75d63f3a ImagingSplit implementation 2017-08-12 15:26:00 +03:00
Alexander
559836d97d im.split method
ImagingSplit function without implementation
2017-08-12 15:26:00 +03:00
Alexander
c23b65c670 make ImagingGetBand faster 2017-08-12 15:25:59 +03:00
Alexander Karpinsky
09a2e1641b Merge branch 'master' into resample-roi 2017-08-11 19:10:11 +03:00
Alexander
864a24e7b8 Release GIL in filters 2017-08-11 15:17:47 +03:00
Alexander
3aea175141 use RGBX rawmode for JPEG encoding as well 2017-08-11 04:10:55 +03:00
Alexander
7725d281a5 create separate ImagingJpegUseJCSExtensions function 2017-08-11 04:07:54 +03:00
Alexander
1dcafb93a0 Merge branch 'master' into jpeg-loading-without-convertion 2017-08-11 00:40:21 +03:00