Jika Anda berbicara tentang file JPEG, maka utilitas jpeginfo persis seperti yang Anda cari. Itu dapat memeriksa file untuk berbagai jenis kesalahan JPEG dan korupsi dan mengembalikan kode kesalahan (hal yang paling berguna untuk skrip), atau hanya menghapus file dengan kesalahan.
Saya menggunakan ini sebagai bagian dari transfer file awal saya, untuk memastikan semuanya disalin baik-baik saja tanpa mengandalkan pemeriksaan manual. (Setelah itu, saya memastikan checksum mereka tidak berubah sebagai bagian dari cadangan / perlindungan bitrot normal saya.)
Program ini adalah command-line, dan datang sebagai kode sumber, tetapi harus mudah dibuat dan digunakan pada distribusi Linux atau pada Mac dengan lingkungan pengembangan yang diatur dengan benar. Saya yakin Anda bahkan dapat melakukannya di Windows dengan Cygwin atau MinGW. (Misalnya, meskipun saya tidak dapat menjamin integritasnya, posting blog ini tampaknya sah dan menyertakan unduhan yang dikompilasi sebelumnya.) Untuk membuatnya sendiri:
$ git clone https://github.com/tjko/jpeginfo.git
Cloning into 'jpeginfo'...
[...]
Checking connectivity... done
$ cd jpeginfo/
$ ./configure && make
Ini harus membuat jpeginfo
perintah yang bisa Anda jalankan di tempat atau menyalin di mana pun Anda inginkan (mungkin menggunakan make install
).
Kemudian, Anda menjalankannya seperti ini:
$ ./jpeginfo -c *.jpg
test1.jpg 1996 x 2554 24bit Exif P 6582168 [OK]
test2.jpg 1996 x 2554 24bit Exif P 6582116 Premature end of JPEG file [WARNING]
test3.jpg Corrupt JPEG data: 1 extraneous bytes before marker 0xe2 1996 x 2554 24bit Exif P 6582169 [WARNING]
Di sini, test1.jpg baik-baik saja, dan test2.jpg Saya menghapus beberapa byte dari akhir, dan test3.jpg Saya mengubah beberapa byte acak di header.
Jika Anda memiliki file RAW, periksa halaman ini dari American Society of Media Photographer di DNG Validation , atau satu di detail validasi data , yang mencakup menggunakan konverter DNG Adobe untuk mem-batch-memvalidasi format RAW eksklusif. (Sayangnya, ini adalah operasi GUI dan tidak harus dengan mudah skrip.)
Jika Anda memiliki kamera yang secara asli menampilkan versi 1.2 DNG, itu lebih baik, karena ini termasuk built-in MD5 checksum dari data gambar. Sayangnya, ini sepertinya tidak disimpan dengan metadata gambar normal - atau setidaknya exiftool dan exiv2 tidak mengenalinya, dan mereka membaca 1.2 file DNG secara umum - yang berarti sejauh yang saya tahu saat ini validasi Adobe Alat adalah satu-satunya cara untuk memanfaatkan itu juga.