Description
PECoMaTo stands for Picture-Embedded COntents MAnipulation TOol.It is basically designed to display any kind of information embedded in picture files, as well as checking, filtering, extracting, removing, adding and fixing such information. In other words, it's a metadata processor.
It supports the following file formats: JPEG/JFIF, Adobe PSD and FFO, raw IPTC. And it knows about the following metadata formats: JFIF, IPTC, Exif, Adobe and Fotostation. More file and metadata formats might be supported later (TIFF, Adobe-specific metadata including XMP, etc.).
It aims to be portable (see supported platforms below). One of its main goals is to check the validity of parsed metadata as well as optionally check the strict compliance to official standards. On another hand, it aims to provide ways of fixing broken or not compliant chunks as well as providing general basic functions to manipulate the metadata.
Licensing
This program is subject to copyright. However you can copy, use and distribute it according to the GNU General Public License (GPL v3 or above). See the DISCLAIMER and LICENSE doc files for further information. It is free of charge, as well as open-source (the source is available, feel free to inspect it, adapt it to your needs and submit patches).Supported platforms
PECoMaTo builds and runs on many x86, ppc, SPARC, ARM, 32bit and 64bit systems:- GNU/Linux
- Microsoft Windows (win32)
- QNX
- BeOS
- MacOS X (Darwin)
- Maemo (OS2008/Chinook)
- Unix: IBM Aix, FreeBSD, HP-UX, Sun Solaris (SunOS), GNU/OpenSolaris
- Later eventually: some other Unices and architecture/platform variations
Requirements
- At runtime: none
- To build the sources on GNU/Linux and Unix/POSIX variants: some of the GNU development tools (gmake 3.79, gcc, binutils, etc.). Python 1.5 is necessary to build the documentation. Packagers would need Perl 5 to build the source archives too
- Building the sources on Microsoft Windows requires nmake and the MSVC++ compiler (6.0 minimum), as well as Python 1.5 and eventually Perl 5 (see above)
News
- incoming: Exif support, code documentation using Doxygen
- 2008/02/06 (wwp): pecomato is now a registered project at garage.maemo.org!
- 2008/02/05 (wwp): adaptations to build our first .deb ARM package for Maemo.
- 2007/09/28 (wwp): release 0.0.15: fix a buffer overrun when checking files for known data format signatures.
- 2007/08/26 (wwp): release 0.0.14: added the possibility to append IPTC records (filter edits), allow more than 100 include/exclude filters, fixed loading of exclude filters from file. Now licensed under GPL v3 or above. Added .7z archives and changed RPMs packages names.
- 2006/12/31 (wwp): bugfixes and portability works.
- 2006/12/19 (wwp): now build on FreeBSD systems up to 7.0, w/ gcc 3.x and 4.x.
- 2006/05/24 (wwp): added new OpenSolaris 5.11 x86 packages (built on Bellenix)
- 2006/05/14 (wwp): added new GNU/OpenSolaris 5.11 x86 packages (built on Nexenta)
- 2006/05/16 (wwp): updated packages for Darwin/MacOS X (now built on Panther), packaging can now use 'package' or 'PackageMaker'
- 2006/05/14 (wwp): updated packages for Aix, SunOS Sparc and HP-UX
- 2006/05/13 (wwp): added few screenshots
- 2006/05/12 (wwp): updated packages for FreeBSD, QNX, SunOS 10 x86 and BeOS 5.
- 2006/05/11 (wwp): sources should build fine with gcc4 now (tested w/ gcc 4.1 on a FC5). FC5's RPM for version 0.0.13 has been rebuilt
- 2006/05/10 (wwp): release 0.0.13: minor bugfixes and new dump-value op-mode. GNU/Linux and Microsoft Windows packages are ready
- 2005/10/02 (wwp): upgraded bug tracker tool to bugzilla 2.20
- 2005/09/24 (wwp): some devel tools are now public (cvsweb, cvshistory, and bugzilla) so that you watch cvs changes, create your bugzilla account and report bugs!
- 2005/09/22 (wwp): added links to FreeBSD ports (thanks to Emanuel Haupt). Development of incoming features (incl. support for Exif reading/filtering) has been slowed down a bit during those two past months, but are still running!
- 2005/07/01 (wwp): added Doxygen-erated docs
- 2005/06/28 (wwp): added FreeBSD i386 binary archives
- 2005/06/26 (wwp): release 0.0.12: bugfixes (writing to files and win32 specific issues). More checks and robustness enforcements. Solved two memleaks and done several packaging fixes more
- 2005/06/15 (wwp): added Solaris 10 Intel binary archives
- 2005/06/12 (wwp): added developers' online tools (cvsweb, cvshistory, bugzilla, homemade stats)
- 2005/06/02 (wwp): release 0.0.11: new port: BeOS 5, minor fix in packaging rules in QNX and Unix makefiles
- 2005/06/01 (wwp): release 0.0.10: new port (Darwin/MacOS X), refined Makefiles, fixed bug that was failing to write extracted iptc when processing files in current directory. md5sums are now available in the download directories. A few binary packages filenames have been slightly changed so that they show more architecture information (linux, win32)
- 2005/05/30 (wwp): made adaptations to build on Darwin 6.8.5 (MacOS X 10.2.8)
- 2005/05/29 (wwp): added the links section
- 2005/05/25 (wwp): release 0.0.9: bugfixes, doc updates and minor changes and enforcements. More supported platforms (QNX, SunOS)
- 2005/05/17 (wwp): release 0.0.8: minor fixes, doc updates. Implemented basic fixing of IPTC chunk underrun (--fix available in filter mode or when --extract is used)
- 2005/05/15 (wwp): release 0.0.7: minor fixes and adjustments, heavy work around packaging sets
- 2005/05/12 (wwp): first public release: 0.0.5
Documentation (latest release)
Screenshots
All screenshots below have been made with CVS version (post-0.0.13).Downloads (latest release)
- Sources
- Binaries (*)
- Local downloads (including oldies, md5sums)
| OS | Subsystem | Arch | Downloads | Notes |
|---|---|---|---|---|
| all | - | - | gzip bzip2 zip rar 7-zip | |
| GNU/Linux | RedHat 7.0 | noarch | srpm | This SRPM should work for quite all RPM-based systems |
| GNU/Linux | Fedora Core 5 | noarch | srpm | This SRPM should work for quite all RPM-based systems |
| FreeBSD | port | noarch | tarball | FreeBSD port page |
| Microsoft Windows | win32 | x86 | exe |
| OS | Subsystem | Arch | Downloads | Notes |
|---|---|---|---|---|
| GNU/Linux | glibc 2.2 | x86 | gzip bzip2 zip rar 7-zip | |
| GNU/Linux | glibc 2.4 | x86 | gzip bzip2 zip rar 7-zip | |
| GNU/Linux | RedHat 7.0 | i386 | rpm | This RPM should work for quite all RPM-based systems |
| GNU/Linux | Fedora Core 5 | i686 | rpm | |
| OS2008/Chinook | Maemo | ARM | deb changes | |
| QNX | 6.3.0 | x86 | gzip bzip2 zip | |
| BeOS | 5 | x86 | gzip bzip2 zip pkg sea | |
| Darwin | 7.9.0 (MacOS X 10.3.19 aka Panther) | ppc | gzip bzip2 zip pkg | |
| IBM Aix | 4.3.3 to 5.3 | 32bit | gzip bzip2 | |
| FreeBSD | 5.4 | i386 | gzip bzip2 | |
| HP-UX | 11.00 to 11.11 | 32bit | gzip bzip2 | |
| HP-UX | 11.23 | Itanium2 64bit | gzip bzip2 | |
| Sun Solaris | 2.6 (SunOS 5.6) to 8 (SunOS 5.8) | SPARC 32bit | gzip bzip2 | |
| Sun Solaris | 10 (SunOS 5.10) | i386 32bit | gzip bzip2 | |
| OpenSolaris | 5.11 (Bellenix 0.4.3a) | x86 32bit | gzip bzip2 | Packages should install and run on GNU/OpenSolaris too |
| GNU/OpenSolaris | 5.11 (Nexenta alpha4) | x86 32bit | gzip bzip2 | Packages should install and run on OpenSolaris too |
| Microsoft Windows | win32 | x86 | zip rar 7-zip exe |
Contacts
- The author
- On IRC, server freenode.net, channel #pecomato
Links
- Project page at Freshmeat II
- Project page at IceWALKERS
- Project page at Linux Links
- Project page at BeBits
- Project page at OpenQNX
- Project page at Softpedia
- FreeBSD port at FreshPorts.org
- PECoMaTo at garage.maemo.org
- PECoMato in maemo.org's OS2008 catalogue
- PECoMaTo at sourceforge.net (not hosting any data there)
Developers' corner
- ChangeLog (daily)
- Doxygen (daily)
- Online CVS tools:
Browse the CVS repository (cvsweb), query the CVS history (cvshistory) - Bug tracker:
Freely query the bug tracker (bugzilla), view reported issues and charts. Report or edit bugs (you must create an account first) - Other online tools (access restricted)
- Sources - CVS nightly snapshots (**)
| OS | Subsystem | Arch | Downloads | Notes |
|---|---|---|---|---|
| all | - | - | gzip bzip2 zip rar 7-zip |
