Martin Vignali added the comment:
I'm okay with just testing the first two bytes, it's the method we currently
use for our
internal tools.
But maybe it can be interesting, to add another test, in order to detect
incomplete file
(created when a camera make a recording error for example, and very useful to
detect, because an incomplete jpeg file, make a crash for a lot of application)
We use this patch of imghdr :
--------------------------------------
def test_jpeg(h, f):
"""JPEG data in JFIF or Exif format"""
if not h.startswith(b'\xff\xd8'):#Test empty files, and incorrect start of
file
return None
else:
if f:#if we test a file, test end of jpeg
f.seek(-2,2)
if f.read(2).endswith(b'\xff\xd9'):
return 'jpeg'
else:#if we just test the header, consider this is a valid jpeg and not
test end of file
return 'jpeg'
-------------------------------------
----------
nosy: +mvignali
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue16512>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com