From 1b80fe5507060e316ad8bc0766c33cef856adc0a Mon Sep 17 00:00:00 2001 From: Antony Lee Date: Tue, 14 Apr 2015 17:43:05 -0700 Subject: [PATCH 1/5] Provide n_frames attribute to multi-frame formats. cf #1190, #1192. Tests missing. --- PIL/DcxImagePlugin.py | 4 ++++ PIL/FliImagePlugin.py | 35 ++++++++++++++++++++++++++++++----- PIL/GifImagePlugin.py | 23 ++++++++++++++++++++++- PIL/ImImagePlugin.py | 4 ++++ PIL/MicImagePlugin.py | 4 ++++ PIL/MpoImagePlugin.py | 4 ++++ PIL/PsdImagePlugin.py | 4 ++++ PIL/SpiderImagePlugin.py | 10 +++++++--- PIL/TiffImagePlugin.py | 33 ++++++++++++++++++++++----------- 9 files changed, 101 insertions(+), 20 deletions(-) diff --git a/PIL/DcxImagePlugin.py b/PIL/DcxImagePlugin.py index 0940b3935..978c90e80 100644 --- a/PIL/DcxImagePlugin.py +++ b/PIL/DcxImagePlugin.py @@ -62,6 +62,10 @@ class DcxImageFile(PcxImageFile): self.__fp = self.fp self.seek(0) + @property + def n_frames(self): + return len(self._offset) + def seek(self, frame): if frame >= len(self._offset): raise EOFError("attempt to seek outside DCX directory") diff --git a/PIL/FliImagePlugin.py b/PIL/FliImagePlugin.py index 4ecaccdc4..1acae31bf 100644 --- a/PIL/FliImagePlugin.py +++ b/PIL/FliImagePlugin.py @@ -86,9 +86,10 @@ class FliImageFile(ImageFile.ImageFile): self.palette = ImagePalette.raw("RGB", b"".join(palette)) # set things up to decode first frame - self.frame = -1 + self.__frame = -1 self.__fp = self.fp - + self.__rewind = self.fp.tell() + self._n_frames = None self.seek(0) def _palette(self, palette, shift): @@ -109,11 +110,35 @@ class FliImageFile(ImageFile.ImageFile): palette[i] = (r, g, b) i += 1 + @property + def n_frames(self): + if self._n_frames is None: + current = self.tell() + try: + while True: + self.seek(self.tell() + 1) + except EOFError: + self._n_frames = self.tell() + 1 + self.seek(current) + return self._n_frames + + def seek(self, frame): + if frame == self.__frame: + return + if frame < self.__frame: + self._seek(0) + for f in range(self.__frame + 1, frame + 1): + self._seek(f) + def seek(self, frame): - if frame != self.frame + 1: + if frame == 0: + self.__frame = -1 + self.__fp.seek(self.__rewind) + + if frame != self.__frame + 1: raise ValueError("cannot seek to frame %d" % frame) - self.frame = frame + self.__frame = frame # move to next frame self.fp = self.__fp @@ -132,7 +157,7 @@ class FliImageFile(ImageFile.ImageFile): def tell(self): - return self.frame + return self.__frame # # registry diff --git a/PIL/GifImagePlugin.py b/PIL/GifImagePlugin.py index 283300320..150773b67 100644 --- a/PIL/GifImagePlugin.py +++ b/PIL/GifImagePlugin.py @@ -87,9 +87,30 @@ class GifImageFile(ImageFile.ImageFile): self.__fp = self.fp # FIXME: hack self.__rewind = self.fp.tell() - self.seek(0) # get ready to read first frame + self._n_frames = None + self._seek(0) # get ready to read first frame + + @property + def n_frames(self): + if self._n_frames is None: + current = self.tell() + try: + while True: + self.seek(self.tell() + 1) + except EOFError: + self._n_frames = self.tell() + 1 + self.seek(current) + return self._n_frames def seek(self, frame): + if frame == self.__frame: + return + if frame < self.__frame: + self._seek(0) + for f in range(self.__frame + 1, frame + 1): + self._seek(f) + + def _seek(self, frame): if frame == 0: # rewind diff --git a/PIL/ImImagePlugin.py b/PIL/ImImagePlugin.py index c68a3cea4..589928d0e 100644 --- a/PIL/ImImagePlugin.py +++ b/PIL/ImImagePlugin.py @@ -260,6 +260,10 @@ class ImImageFile(ImageFile.ImageFile): self.tile = [("raw", (0, 0)+self.size, offs, (self.rawmode, 0, -1))] + @property + def n_frames(self): + return self.info[FRAMES] + def seek(self, frame): if frame < 0 or frame >= self.info[FRAMES]: diff --git a/PIL/MicImagePlugin.py b/PIL/MicImagePlugin.py index 5aed618ac..aa41bf359 100644 --- a/PIL/MicImagePlugin.py +++ b/PIL/MicImagePlugin.py @@ -71,6 +71,10 @@ class MicImageFile(TiffImagePlugin.TiffImageFile): self.seek(0) + @property + def n_frames(self): + return len(self.images) + def seek(self, frame): try: diff --git a/PIL/MpoImagePlugin.py b/PIL/MpoImagePlugin.py index c345fd327..9d21728b9 100644 --- a/PIL/MpoImagePlugin.py +++ b/PIL/MpoImagePlugin.py @@ -62,6 +62,10 @@ class MpoImageFile(JpegImagePlugin.JpegImageFile): def load_seek(self, pos): self.__fp.seek(pos) + @property + def n_frames(self): + return self.__framecount + def seek(self, frame): if frame < 0 or frame >= self.__framecount: raise EOFError("no more images in MPO file") diff --git a/PIL/PsdImagePlugin.py b/PIL/PsdImagePlugin.py index 02c94a860..d30695adb 100644 --- a/PIL/PsdImagePlugin.py +++ b/PIL/PsdImagePlugin.py @@ -132,6 +132,10 @@ class PsdImageFile(ImageFile.ImageFile): self._fp = self.fp self.frame = 0 + @property + def n_frames(self): + return len(self.layers) + def seek(self, layer): # seek to given layer (1..max) if layer == self.frame: diff --git a/PIL/SpiderImagePlugin.py b/PIL/SpiderImagePlugin.py index f1ccb67f6..7de5156b1 100644 --- a/PIL/SpiderImagePlugin.py +++ b/PIL/SpiderImagePlugin.py @@ -127,12 +127,12 @@ class SpiderImageFile(ImageFile.ImageFile): if self.istack == 0 and self.imgnumber == 0: # stk=0, img=0: a regular 2D image offset = hdrlen - self.nimages = 1 + self._nimages = 1 elif self.istack > 0 and self.imgnumber == 0: # stk>0, img=0: Opening the stack for the first time self.imgbytes = int(h[12]) * int(h[2]) * 4 self.hdrlen = hdrlen - self.nimages = int(h[26]) + self._nimages = int(h[26]) # Point to the first image in the stack offset = hdrlen * 2 self.imgnumber = 1 @@ -154,6 +154,10 @@ class SpiderImageFile(ImageFile.ImageFile): (self.rawmode, 0, 1))] self.__fp = self.fp # FIXME: hack + @property + def n_frames(self): + return self._nimages + # 1st image index is zero (although SPIDER imgnumber starts at 1) def tell(self): if self.imgnumber < 1: @@ -164,7 +168,7 @@ class SpiderImageFile(ImageFile.ImageFile): def seek(self, frame): if self.istack == 0: return - if frame >= self.nimages: + if frame >= self._nimages: raise EOFError("attempt to seek past end of file") self.stkoffset = self.hdrlen + frame * (self.hdrlen + self.imgbytes) self.fp = self.__fp diff --git a/PIL/TiffImagePlugin.py b/PIL/TiffImagePlugin.py index 41bb26d42..8fdca05de 100644 --- a/PIL/TiffImagePlugin.py +++ b/PIL/TiffImagePlugin.py @@ -648,6 +648,8 @@ class TiffImageFile(ImageFile.ImageFile): self.__first = self.__next = self.ifd.i32(ifh, 4) self.__frame = -1 self.__fp = self.fp + self._frame_pos = [] + self._n_frames = None if Image.DEBUG: print("*** TiffImageFile._open ***") @@ -657,10 +659,22 @@ class TiffImageFile(ImageFile.ImageFile): # and load the first frame self._seek(0) + @property + def n_frames(self): + if self._n_frames is None: + current = self.tell() + try: + while True: + self._seek(self.tell() + 1) + except EOFError: + self._n_frames = self.tell() + 1 + self.seek(current) + return self._n_frames + def seek(self, frame): "Select a given frame as current image" if frame < 0: - frame = 0 + raise ValueError("invalid seek") self._seek(frame) # Create a new core image object on second and # subsequent frames in the image. Image may be @@ -668,17 +682,9 @@ class TiffImageFile(ImageFile.ImageFile): Image._decompression_bomb_check(self.size) self.im = Image.core.new(self.mode, self.size) - def tell(self): - "Return the current frame number" - return self._tell() - def _seek(self, frame): self.fp = self.__fp - if frame < self.__frame: - # rewind file - self.__frame = -1 - self.__next = self.__first - while self.__frame < frame: + while len(self._frame_pos) <= frame: if not self.__next: raise EOFError("no more images in TIFF file") if Image.DEBUG: @@ -688,14 +694,19 @@ class TiffImageFile(ImageFile.ImageFile): # was passed to libtiff, invalidating the buffer self.fp.tell() self.fp.seek(self.__next) + self._frame_pos.append(self.__next) if Image.DEBUG: print("Loading tags, location: %s" % self.fp.tell()) self.tag.load(self.fp) self.__next = self.tag.next self.__frame += 1 + self.fp.seek(self._frame_pos[frame]) + self.tag.load(self.fp) + self.__frame = frame self._setup() - def _tell(self): + def tell(self): + "Return the current frame number" return self.__frame def _decoder(self, rawmode, layer, tile=None): From 51f3560dc45dd39d14d67108ddc5b95b9bd3aa84 Mon Sep 17 00:00:00 2001 From: Antony Lee Date: Thu, 23 Apr 2015 01:06:32 -0700 Subject: [PATCH 2/5] Restore negative seeks for TIFF. --- PIL/TiffImagePlugin.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/PIL/TiffImagePlugin.py b/PIL/TiffImagePlugin.py index 8fdca05de..59de84273 100644 --- a/PIL/TiffImagePlugin.py +++ b/PIL/TiffImagePlugin.py @@ -673,9 +673,7 @@ class TiffImageFile(ImageFile.ImageFile): def seek(self, frame): "Select a given frame as current image" - if frame < 0: - raise ValueError("invalid seek") - self._seek(frame) + self._seek(max(frame, 0)) # Questionable backwards compatibility. # Create a new core image object on second and # subsequent frames in the image. Image may be # different size/mode. From 3ad70423add94de5a61fc6ee8f526ad9d0b292d7 Mon Sep 17 00:00:00 2001 From: Antony Lee Date: Thu, 23 Apr 2015 11:03:11 -0700 Subject: [PATCH 3/5] Fix typo in FliImagePlugin (seek -> _seek). --- PIL/FliImagePlugin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PIL/FliImagePlugin.py b/PIL/FliImagePlugin.py index 1acae31bf..178623951 100644 --- a/PIL/FliImagePlugin.py +++ b/PIL/FliImagePlugin.py @@ -130,7 +130,7 @@ class FliImageFile(ImageFile.ImageFile): for f in range(self.__frame + 1, frame + 1): self._seek(f) - def seek(self, frame): + def _seek(self, frame): if frame == 0: self.__frame = -1 From 0c51b7967ed371d3e140d83449ae3910c5b1ea32 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 8 Jun 2015 01:01:50 +1000 Subject: [PATCH 4/5] Fixed seek bug in FliImagePlugin --- PIL/FliImagePlugin.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/PIL/FliImagePlugin.py b/PIL/FliImagePlugin.py index 178623951..32cd05049 100644 --- a/PIL/FliImagePlugin.py +++ b/PIL/FliImagePlugin.py @@ -135,6 +135,7 @@ class FliImageFile(ImageFile.ImageFile): if frame == 0: self.__frame = -1 self.__fp.seek(self.__rewind) + self.__offset = 128 if frame != self.__frame + 1: raise ValueError("cannot seek to frame %d" % frame) @@ -153,7 +154,7 @@ class FliImageFile(ImageFile.ImageFile): self.decodermaxblock = framesize self.tile = [("fli", (0, 0)+self.size, self.__offset, None)] - self.__offset = self.__offset + framesize + self.__offset += framesize def tell(self): From 46f439604cb0a3d8b034b327d6d99c2bd580f8fc Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 8 Jun 2015 01:01:34 +1000 Subject: [PATCH 5/5] Added tests --- PIL/FliImagePlugin.py | 2 -- Tests/images/hopper.im | Bin 0 -> 49664 bytes Tests/images/hopper_merged.psd | Bin 0 -> 97862 bytes Tests/test_file_dcx.py | 4 ++++ Tests/test_file_fli.py | 4 ++++ Tests/test_file_gif.py | 4 ++++ Tests/test_file_im.py | 33 +++++++++++++++++++++++++++++++++ Tests/test_file_mpo.py | 4 ++++ Tests/test_file_psd.py | 7 +++++++ Tests/test_file_spider.py | 4 ++++ Tests/test_file_tiff.py | 7 +++++++ 11 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 Tests/images/hopper.im create mode 100644 Tests/images/hopper_merged.psd create mode 100644 Tests/test_file_im.py diff --git a/PIL/FliImagePlugin.py b/PIL/FliImagePlugin.py index 32cd05049..0660ddeb6 100644 --- a/PIL/FliImagePlugin.py +++ b/PIL/FliImagePlugin.py @@ -131,7 +131,6 @@ class FliImageFile(ImageFile.ImageFile): self._seek(f) def _seek(self, frame): - if frame == 0: self.__frame = -1 self.__fp.seek(self.__rewind) @@ -157,7 +156,6 @@ class FliImageFile(ImageFile.ImageFile): self.__offset += framesize def tell(self): - return self.__frame # diff --git a/Tests/images/hopper.im b/Tests/images/hopper.im new file mode 100644 index 0000000000000000000000000000000000000000..ceeb01049c98a69b31cd89b5d3f11e327a86d2c0 GIT binary patch literal 49664 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 Aga7~l literal 0 HcmV?d00001 diff --git a/Tests/images/hopper_merged.psd b/Tests/images/hopper_merged.psd new file mode 100644 index 0000000000000000000000000000000000000000..6b5c7ebe1fe8e424b26fa4689d1ba2d6f7f9078b GIT binary patch literal 97862 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 literal 0 HcmV?d00001 diff --git a/Tests/test_file_dcx.py b/Tests/test_file_dcx.py index 2acf7b459..7d2ae32d8 100644 --- a/Tests/test_file_dcx.py +++ b/Tests/test_file_dcx.py @@ -30,6 +30,10 @@ class TestFileDcx(PillowTestCase): # Assert self.assertEqual(frame, 0) + def test_n_frames(self): + im = Image.open(TEST_FILE) + self.assertEqual(im.n_frames, 1) + def test_seek_too_far(self): # Arrange im = Image.open(TEST_FILE) diff --git a/Tests/test_file_fli.py b/Tests/test_file_fli.py index e6634c799..04c2006c9 100644 --- a/Tests/test_file_fli.py +++ b/Tests/test_file_fli.py @@ -18,6 +18,10 @@ class TestFileFli(PillowTestCase): self.assertEqual(im.size, (128, 128)) self.assertEqual(im.format, "FLI") + def test_n_frames(self): + im = Image.open(test_file) + self.assertEqual(im.n_frames, 2) + if __name__ == '__main__': unittest.main() diff --git a/Tests/test_file_gif.py b/Tests/test_file_gif.py index 08b2f10c9..0e9e65a18 100644 --- a/Tests/test_file_gif.py +++ b/Tests/test_file_gif.py @@ -134,6 +134,10 @@ class TestFileGif(PillowTestCase): except EOFError: self.assertEqual(framecount, 5) + def test_n_frames(self): + im = Image.open("Tests/images/iss634.gif") + self.assertEqual(im.n_frames, 43) + def test_dispose_none(self): img = Image.open("Tests/images/dispose_none.gif") try: diff --git a/Tests/test_file_im.py b/Tests/test_file_im.py new file mode 100644 index 000000000..24e00b2f0 --- /dev/null +++ b/Tests/test_file_im.py @@ -0,0 +1,33 @@ +from helper import unittest, PillowTestCase, hopper + +from PIL import Image + +# sample im +TEST_IM = "Tests/images/hopper.im" + + +class TestFileIm(PillowTestCase): + + def test_sanity(self): + im = Image.open(TEST_IM) + im.load() + self.assertEqual(im.mode, "RGB") + self.assertEqual(im.size, (128, 128)) + self.assertEqual(im.format, "IM") + + def test_n_frames(self): + im = Image.open(TEST_IM) + self.assertEqual(im.n_frames, 1) + + def test_roundtrip(self): + out = self.tempfile('temp.im') + im = hopper() + im.save(out) + reread = Image.open(out) + + self.assert_image_equal(reread, im) + +if __name__ == '__main__': + unittest.main() + +# End of file diff --git a/Tests/test_file_mpo.py b/Tests/test_file_mpo.py index 7850744af..1a0ebc453 100644 --- a/Tests/test_file_mpo.py +++ b/Tests/test_file_mpo.py @@ -95,6 +95,10 @@ class TestFileMpo(PillowTestCase): im.seek(0) self.assertEqual(im.tell(), 0) + def test_n_frames(self): + im = Image.open("Tests/images/sugarshack.mpo") + self.assertEqual(im.n_frames, 2) + def test_image_grab(self): for test_file in test_files: im = Image.open(test_file) diff --git a/Tests/test_file_psd.py b/Tests/test_file_psd.py index 51b8cf3f4..dca3601b2 100644 --- a/Tests/test_file_psd.py +++ b/Tests/test_file_psd.py @@ -16,6 +16,13 @@ class TestImagePsd(PillowTestCase): self.assertEqual(im.size, (128, 128)) self.assertEqual(im.format, "PSD") + def test_n_frames(self): + im = Image.open("Tests/images/hopper_merged.psd") + self.assertEqual(im.n_frames, 1) + + im = Image.open(test_file) + self.assertEqual(im.n_frames, 2) + if __name__ == '__main__': unittest.main() diff --git a/Tests/test_file_spider.py b/Tests/test_file_spider.py index 7bfedad1a..7d24b2fe5 100644 --- a/Tests/test_file_spider.py +++ b/Tests/test_file_spider.py @@ -42,6 +42,10 @@ class TestImageSpider(PillowTestCase): # Assert self.assertEqual(index, 0) + def test_n_frames(self): + im = Image.open(TEST_FILE) + self.assertEqual(im.n_frames, 1) + def test_loadImageSeries(self): # Arrange not_spider_file = "Tests/images/hopper.ppm" diff --git a/Tests/test_file_tiff.py b/Tests/test_file_tiff.py index 745412324..02a63586c 100644 --- a/Tests/test_file_tiff.py +++ b/Tests/test_file_tiff.py @@ -150,6 +150,13 @@ class TestFileTiff(PillowTestCase): self.assertEqual( im.getextrema(), (-3.140936851501465, 3.140684127807617)) + def test_n_frames(self): + im = Image.open('Tests/images/multipage-lastframe.tif') + self.assertEqual(im.n_frames, 1) + + im = Image.open('Tests/images/multipage.tiff') + self.assertEqual(im.n_frames, 3) + def test_multipage(self): # issue #862 im = Image.open('Tests/images/multipage.tiff')