jpeg
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 294
JPEG Fit 1.0
JPEG Fit is a PHP class that can be used to optimize images to fit within a given file size limit. more>>
JPEG Fit is a PHP class that can be used to optimize images to fit within a given file size limit. The project takes a picture in any format supported by the GD library and generates a JPEG picture with the maximum quality factor that makes the picture file size not exceed a given limit.
This class is similar to the JPEG Reducer class. It uses the binary search algorithm to reach the ideal quality factor in the smallest number of iterations.
The class stops searching when a given number of limit iterations is reached, or when the quality factor difference between the ideal and the found values is less than the configured precision value
<<lessThis class is similar to the JPEG Reducer class. It uses the binary search algorithm to reach the ideal quality factor in the smallest number of iterations.
The class stops searching when a given number of limit iterations is reached, or when the quality factor difference between the ideal and the found values is less than the configured precision value
Download (MB)
Added: 2007-04-20 License: Freeware Price:
922 downloads
libjpeg v6b
libjpeg is a library of JPEG support functions. more>>
libjpeg is a library for handling the JPEG (JFIF) image format. Included are the programs cjpeg and djpeg for converting to and from this format, jpegtran to perform some lossless transformations on JPEG imagess, and rdjpgcom and wrjpgcom to manipulate JFIF comments.
<<less Download (0.59MB)
Added: 2005-04-14 License: Freely Distributable Price:
1685 downloads
Axmjpeg 1.2
Axmjpeg retrieves JPEG images from an MJPEG over HTTP stream. more>>
Axmjpeg application retrieves JPEG images from an MJPEG over HTTP stream that conforms to the Axis Video API, HTTP Interface Specification.
Axmjpeg retrieves JPEG images from an MJPEG over HTTP stream. The HTTP stream must conform to Revision 2.x of the "Axis Video API, HTTP Interface Specification" (which is available from "http://www.axis.com/techsup/cam_servers/dev/cam_http_api.htm").
Axmjpeg also supports Revision 1.x of this specification provided the optional "Content-Length:" header is enabled.
This tool was written for cammgr, the web camera management software available from "http://freshmeat.net/projects/cammgr". Specifically, it allows cammgr to support the great range of Axis network cameras available from "http://www.axis.com".
However, its easy to come up with other uses for axmjpeg.
The manual page describes the full range of functionality; the basic list is:
- save JPEG images to the same (optionally renamed) file.
- save each JPEG image to a unique file.
- pipe JPEG images to shell commands (for more processing).
- time-based capturing, where only one image per the specified interval will be selected for processing.
Axmjpeg was developed on FreeBSD and tested on a wide range of Unix systems including several Linux variants, HP-UX, Tru64, and SunOS.
Enhancements:
- The image-fetching code was extended to support cameras that send binary headers in the MJPEG HTTP stream.
- This version of axmjpeg is known to support the "SQ IP Cam" and the "GP-280 Network IP Camera."
<<lessAxmjpeg retrieves JPEG images from an MJPEG over HTTP stream. The HTTP stream must conform to Revision 2.x of the "Axis Video API, HTTP Interface Specification" (which is available from "http://www.axis.com/techsup/cam_servers/dev/cam_http_api.htm").
Axmjpeg also supports Revision 1.x of this specification provided the optional "Content-Length:" header is enabled.
This tool was written for cammgr, the web camera management software available from "http://freshmeat.net/projects/cammgr". Specifically, it allows cammgr to support the great range of Axis network cameras available from "http://www.axis.com".
However, its easy to come up with other uses for axmjpeg.
The manual page describes the full range of functionality; the basic list is:
- save JPEG images to the same (optionally renamed) file.
- save each JPEG image to a unique file.
- pipe JPEG images to shell commands (for more processing).
- time-based capturing, where only one image per the specified interval will be selected for processing.
Axmjpeg was developed on FreeBSD and tested on a wide range of Unix systems including several Linux variants, HP-UX, Tru64, and SunOS.
Enhancements:
- The image-fetching code was extended to support cameras that send binary headers in the MJPEG HTTP stream.
- This version of axmjpeg is known to support the "SQ IP Cam" and the "GP-280 Network IP Camera."
Download (0.009MB)
Added: 2007-08-20 License: BSD License Price:
804 downloads
jpeg2ps 1.9
jpeg2ps is a utility for converting JPEG images to compressed PostScript Level 2 or 3 files (without uncompressing the images). more>>
jpeg2ps is a utility for converting JPEG images to compressed PostScript Level 2 or 3 files (without uncompressing the images).
The JPEG data is simply >wrapped< with PostScript which yields considerably smaller PS files. This project is a simple command line utility and can be used on DOS, Windows and Unix machines.
Usage: jpeg2ps [options] jpegfile > epsfile
-a auto rotate: produce landscape output if width > height
-b binary mode: output 8 bit data (default: 7 bit with ASCII85)
-h hex mode: output 7 bit data in ASCIIHex encoding
-o < name > output file name
-p < size > page size name. Known names are:
a0, a1, a2, a3, a4, a5, a6, b5, letter, legal, ledger, p11x17
-q quiet mode: suppress all informational messages
-r < dpi > resolution value (dots per inch)
0 means use value given in file, if any (disables autorotate)
<<lessThe JPEG data is simply >wrapped< with PostScript which yields considerably smaller PS files. This project is a simple command line utility and can be used on DOS, Windows and Unix machines.
Usage: jpeg2ps [options] jpegfile > epsfile
-a auto rotate: produce landscape output if width > height
-b binary mode: output 8 bit data (default: 7 bit with ASCII85)
-h hex mode: output 7 bit data in ASCIIHex encoding
-o < name > output file name
-p < size > page size name. Known names are:
a0, a1, a2, a3, a4, a5, a6, b5, letter, legal, ledger, p11x17
-q quiet mode: suppress all informational messages
-r < dpi > resolution value (dots per inch)
0 means use value given in file, if any (disables autorotate)
Download (0.065MB)
Added: 2007-03-15 License: Freeware Price:
586 downloads
GuiJPEG2PS 1.9.4
GuiJPEG2PS is a free multiplatform graphic frontend for jpeg2ps. more>>
GuiJPEG2PS project is a free multiplatform graphic frontend for jpeg2ps.
GuiJPEG2PS does not include jpeg2ps, it contemplates only sending commands that should be written from command line.
All the images (jpeg, jpg, jpe) are going to be converted with the same options.
<<lessGuiJPEG2PS does not include jpeg2ps, it contemplates only sending commands that should be written from command line.
All the images (jpeg, jpg, jpe) are going to be converted with the same options.
Download (0.012MB)
Added: 2007-01-16 License: GPL (GNU General Public License) Price:
1014 downloads
Image::MetaData::JPEG 0.15
Image::MetaData::JPEG is a Perl extension for showing/modifying JPEG (meta)data. more>>
Image::MetaData::JPEG is a Perl extension for showing/modifying JPEG (meta)data.
SYNOPSIS
use Image::MetaData::JPEG;
# Create a new JPEG file structure object
my $image = new Image::MetaData::JPEG(somepicture.jpg);
die Error: . Image::MetaData::JPEG::Error() unless $image;
# Get a list of references to comment segments
my @segments = $image->get_segments(COM, INDEXES);
# Get the JPEG picture dimensions
my ($dim_x, $dim_y) = $image->get_dimensions();
# Show all JPEG segments and their content
print $image->get_description();
# Retrieve a specific value from Exif meta-data
my $image_data = $image->get_Exif_data(IMAGE_DATA, TEXTUAL);
print $image_data->{DateTimeOriginal}->[0], "n";
# Modify the DateTime tag for the main image
$image->set_Exif_data({DateTime => 1994:07:23 12:14:51},
IMAGE_DATA, ADD);
# Delete all meta-data segments (please, dont)
$image->drop_segments(METADATA);
# Rewrite file to disk after your modifications
$image->save(new_file_name.jpg);
# ... and a lot more methods for viewing/modifying meta-data, which
# are accessed through the $file or $segments[$index] references.
The purpose of this module is to read/modify/rewrite meta-data segments in JPEG (Joint Photographic Experts Group format) files, which can contain comments, thumbnails, Exif information (photographic parameters), IPTC information (editorial parameters) and similar data.
Each JPEG file is made of consecutive segments (tagged data blocks), and the actual row picture data. Most of these segments specify parameters for decoding the picture data into a bitmap; some of them, namely the COMment and APPlication segments, contain instead meta-data, i.e., information about how the photo was shot (usually added by a digital camera) and additional notes from the photograph. These additional pieces of information are especially valuable for picture databases, since the meta-data can be saved together with the picture without resorting to additional database structures. See the appendix about the structure of JPEG files for technical details.
This module works by breaking a JPEG file into individual segments. Each file is associated to an Image::MetaData::JPEG structure object, which contains one Image::MetaData::JPEG::Segment object for each segment. Segments with a known format are then parsed, and their content can be accessed in a structured way for display. Some of them can even be modified and then rewritten to disk.
$JPEG::show_warnings
This package variable must be used to inhibit the printing of warnings: if it is false, warnings are silently ignored. Otherwise, warning messages come with a detailed back-trace and description of the warning location.
$Image::MetaData::JPEG::show_warnings = undef;
<<lessSYNOPSIS
use Image::MetaData::JPEG;
# Create a new JPEG file structure object
my $image = new Image::MetaData::JPEG(somepicture.jpg);
die Error: . Image::MetaData::JPEG::Error() unless $image;
# Get a list of references to comment segments
my @segments = $image->get_segments(COM, INDEXES);
# Get the JPEG picture dimensions
my ($dim_x, $dim_y) = $image->get_dimensions();
# Show all JPEG segments and their content
print $image->get_description();
# Retrieve a specific value from Exif meta-data
my $image_data = $image->get_Exif_data(IMAGE_DATA, TEXTUAL);
print $image_data->{DateTimeOriginal}->[0], "n";
# Modify the DateTime tag for the main image
$image->set_Exif_data({DateTime => 1994:07:23 12:14:51},
IMAGE_DATA, ADD);
# Delete all meta-data segments (please, dont)
$image->drop_segments(METADATA);
# Rewrite file to disk after your modifications
$image->save(new_file_name.jpg);
# ... and a lot more methods for viewing/modifying meta-data, which
# are accessed through the $file or $segments[$index] references.
The purpose of this module is to read/modify/rewrite meta-data segments in JPEG (Joint Photographic Experts Group format) files, which can contain comments, thumbnails, Exif information (photographic parameters), IPTC information (editorial parameters) and similar data.
Each JPEG file is made of consecutive segments (tagged data blocks), and the actual row picture data. Most of these segments specify parameters for decoding the picture data into a bitmap; some of them, namely the COMment and APPlication segments, contain instead meta-data, i.e., information about how the photo was shot (usually added by a digital camera) and additional notes from the photograph. These additional pieces of information are especially valuable for picture databases, since the meta-data can be saved together with the picture without resorting to additional database structures. See the appendix about the structure of JPEG files for technical details.
This module works by breaking a JPEG file into individual segments. Each file is associated to an Image::MetaData::JPEG structure object, which contains one Image::MetaData::JPEG::Segment object for each segment. Segments with a known format are then parsed, and their content can be accessed in a structured way for display. Some of them can even be modified and then rewritten to disk.
$JPEG::show_warnings
This package variable must be used to inhibit the printing of warnings: if it is false, warnings are silently ignored. Otherwise, warning messages come with a detailed back-trace and description of the warning location.
$Image::MetaData::JPEG::show_warnings = undef;
Download (0.28MB)
Added: 2006-07-13 License: GPL (GNU General Public License) Price:
1199 downloads
Image::MetaData::JPEG::TagLists 0.15
Image::MetaData::JPEG::TagLists contains a collection of tag tables for JPEG segments. more>>
Image::MetaData::JPEG::TagLists contains a collection of tag tables for JPEG segments. Image::MetaData::JPEG::TagLists is an appendix to the main manual page of the Image::MetaData::JPEG module, which the reader should refer to for further details and the general scope.
Valid tags for Exif APP1 data
The Japan Electronics and Information Technology Industries Association (JEITA) set up a standard for an exchange format for digital still cameras pictures, known as Exif. This standard defines a structure for embedding meta-data in a JPEG picture, to be written in the APP1 segment. The generalities and the reference documents about this structure are introduced in the Structure appendix; this section and its subsections list the valid interoperability record tags as well as their format.
Canonical Exif 2.2 and TIFF 6.0 tags for IFD0 and IFD1
In general, IFD0 and IFD1 can host tags from the same set. These tags are divided in three categories: canonical, additional and registered to companies. The tags listed in the following table are to be considered canonical; they are described at length in the Exif standard document, and can be found both in the IFD0 and in the IFD1 (some of them, in fact, must be present in both directories).
The class column carries the tag class; possible values are: A (image data structure), B (offsets), C (image data characteristics), D (other tags) and P (pointers to other IFDs). The two following columns show tag hexadecimal codes and names. The type column specifies the (always unsigned) tag type: I (short or long), S (short), L (long), R (rational) and A (ASCII, always null terminated). The count column obviously carries the tag count (- for a variable count, either because it is a variable length string or because it depends on other tags).
The IFD0 and IFD1 columns specify the support level in the respective directory; each column comprises four letters, because both the primary image (IFD0) and the thumbnail (IFD1) can come in four varieties (uncompressed chunky, uncompressed planar, uncompressed YCC and JPEG compressed).
This module currently focuses only on JPEG pictures (not TIFF), so only the fourth letter of the IFD0 column is interesting, but note that the thumbnail of a JPEG image can be uncompressed. The support level codes stand for: M (mandatory), R (recommended), O (optional), N (not_recorded) and J (included in JPEG marker and so not recorded).
The thumbnail-only column shows a T for those records which cannot be set/changed by the user exception made during a thumbnail update action (and some of them are calculated automatically anyway). Note that, in some cases, it is possible to set a tag when its support level is N (e.g., the YCbCr stuff in IFD1): picture displaying programs should however simply ignore it. Some other tags, concerning offsets or thumbnail specific information, cannot be set by the module user (they are calculated automatically, more reliably): these are marked by calculated in the notes, or by a T in the thumbnail-only column.
Hexadecimal code count IFD0 IFD1 thumbnail-only
class | Tag name type | supp.supp.| notes
| | | | | | | | |
A 100 ImageWidth I 1 MMMJ MMMJ T (not JPEG) pixels/row
A 101 ImageLength I 1 MMMJ MMMJ T (not JPEG) num. rows
A 102 BitsPerSample S 3 MMMJ MMMJ T (not JPEG) 8,8,8
A 103 Compression S 1 MMMJ MMMM T 1(uncompr.) or 6(JPEG)
A 106 PhotometricInterpretation S 1 MMMN MMMJ 2(RGB) or 6(YCbCr)
D 10e ImageDescription A - RRRR OOOO (see note 1)
D 10f Make A - RRRR OOOO camera manufacturer
D 110 Model A - RRRR OOOO camera model
B 111 StripOffsets I - MMMN MMMN calculated
A 112 Orientation S 1 RRRR OOOO (see note 2)
A 115 SamplesPerPixel S 1 MMMJ MMMJ T (not JPEG) 3 compon.
B 116 RowsPerStrip I 1 MMMN MMMN T (not JPEG)
B 117 StripByteCounts I - MMMN MMMN T (not JPEG)
A 11a XResolution R 1 MMMM MMMM (see note 3)
A 11b YResolution R 1 MMMM MMMM (see note 3)
A 11c PlanarConfiguration S 1 OMOJ OMOJ (see note 4)
A 128 ResolutionUnit S 1 MMMM MMMM (see note 3)
C 12d TransferFunction S 768 RRRR OOOO (see note 5)
D 131 Software A - OOOO OOOO Exif software/firmware
D 132 DateTime A 20 RRRR OOOO (see note 6)
D 13b Artist A - OOOO OOOO owner/photogr./creator
C 13e WhitePoint R 2 OOOO OOOO (see note 5)
C 13f PrimaryChromaticities R 6 OOOO OOOO (see note 5)
B 201 JPEGInterchangeFormat L 1 NNNN NNNM calculated
B 202 JPEGInterchangeFormatLength L 1 NNNN NNNM T (only JPEG)
C 211 YCbCrCoefficients R 3 NNOO NNOO (see note 7)
A 212 YCbCrSubSampling S 2 NNMJ NNMJ (see note 7)
A 213 YCbCrPositioning S 1 NNMM NNOO (see note 7)
C 214 ReferenceBlackWhite R 6 OOOO OOOO (see note 8)
D 8298 Copyright A - OOOO OOOO of photogr./editor
P 8769 ExifOffset L 1 MMMM OOOO calculated
P 8825 GPSInfo L 1 OOOO OOOO calculated
<<lessValid tags for Exif APP1 data
The Japan Electronics and Information Technology Industries Association (JEITA) set up a standard for an exchange format for digital still cameras pictures, known as Exif. This standard defines a structure for embedding meta-data in a JPEG picture, to be written in the APP1 segment. The generalities and the reference documents about this structure are introduced in the Structure appendix; this section and its subsections list the valid interoperability record tags as well as their format.
Canonical Exif 2.2 and TIFF 6.0 tags for IFD0 and IFD1
In general, IFD0 and IFD1 can host tags from the same set. These tags are divided in three categories: canonical, additional and registered to companies. The tags listed in the following table are to be considered canonical; they are described at length in the Exif standard document, and can be found both in the IFD0 and in the IFD1 (some of them, in fact, must be present in both directories).
The class column carries the tag class; possible values are: A (image data structure), B (offsets), C (image data characteristics), D (other tags) and P (pointers to other IFDs). The two following columns show tag hexadecimal codes and names. The type column specifies the (always unsigned) tag type: I (short or long), S (short), L (long), R (rational) and A (ASCII, always null terminated). The count column obviously carries the tag count (- for a variable count, either because it is a variable length string or because it depends on other tags).
The IFD0 and IFD1 columns specify the support level in the respective directory; each column comprises four letters, because both the primary image (IFD0) and the thumbnail (IFD1) can come in four varieties (uncompressed chunky, uncompressed planar, uncompressed YCC and JPEG compressed).
This module currently focuses only on JPEG pictures (not TIFF), so only the fourth letter of the IFD0 column is interesting, but note that the thumbnail of a JPEG image can be uncompressed. The support level codes stand for: M (mandatory), R (recommended), O (optional), N (not_recorded) and J (included in JPEG marker and so not recorded).
The thumbnail-only column shows a T for those records which cannot be set/changed by the user exception made during a thumbnail update action (and some of them are calculated automatically anyway). Note that, in some cases, it is possible to set a tag when its support level is N (e.g., the YCbCr stuff in IFD1): picture displaying programs should however simply ignore it. Some other tags, concerning offsets or thumbnail specific information, cannot be set by the module user (they are calculated automatically, more reliably): these are marked by calculated in the notes, or by a T in the thumbnail-only column.
Hexadecimal code count IFD0 IFD1 thumbnail-only
class | Tag name type | supp.supp.| notes
| | | | | | | | |
A 100 ImageWidth I 1 MMMJ MMMJ T (not JPEG) pixels/row
A 101 ImageLength I 1 MMMJ MMMJ T (not JPEG) num. rows
A 102 BitsPerSample S 3 MMMJ MMMJ T (not JPEG) 8,8,8
A 103 Compression S 1 MMMJ MMMM T 1(uncompr.) or 6(JPEG)
A 106 PhotometricInterpretation S 1 MMMN MMMJ 2(RGB) or 6(YCbCr)
D 10e ImageDescription A - RRRR OOOO (see note 1)
D 10f Make A - RRRR OOOO camera manufacturer
D 110 Model A - RRRR OOOO camera model
B 111 StripOffsets I - MMMN MMMN calculated
A 112 Orientation S 1 RRRR OOOO (see note 2)
A 115 SamplesPerPixel S 1 MMMJ MMMJ T (not JPEG) 3 compon.
B 116 RowsPerStrip I 1 MMMN MMMN T (not JPEG)
B 117 StripByteCounts I - MMMN MMMN T (not JPEG)
A 11a XResolution R 1 MMMM MMMM (see note 3)
A 11b YResolution R 1 MMMM MMMM (see note 3)
A 11c PlanarConfiguration S 1 OMOJ OMOJ (see note 4)
A 128 ResolutionUnit S 1 MMMM MMMM (see note 3)
C 12d TransferFunction S 768 RRRR OOOO (see note 5)
D 131 Software A - OOOO OOOO Exif software/firmware
D 132 DateTime A 20 RRRR OOOO (see note 6)
D 13b Artist A - OOOO OOOO owner/photogr./creator
C 13e WhitePoint R 2 OOOO OOOO (see note 5)
C 13f PrimaryChromaticities R 6 OOOO OOOO (see note 5)
B 201 JPEGInterchangeFormat L 1 NNNN NNNM calculated
B 202 JPEGInterchangeFormatLength L 1 NNNN NNNM T (only JPEG)
C 211 YCbCrCoefficients R 3 NNOO NNOO (see note 7)
A 212 YCbCrSubSampling S 2 NNMJ NNMJ (see note 7)
A 213 YCbCrPositioning S 1 NNMM NNOO (see note 7)
C 214 ReferenceBlackWhite R 6 OOOO OOOO (see note 8)
D 8298 Copyright A - OOOO OOOO of photogr./editor
P 8769 ExifOffset L 1 MMMM OOOO calculated
P 8825 GPSInfo L 1 OOOO OOOO calculated
Download (0.28MB)
Added: 2006-06-15 License: Perl Artistic License Price:
1227 downloads
Image::MetaData::JPEG::MakerNotes 0.15
Image::MetaData::JPEG::MakerNotes contains random information and details on MakerNotes. more>>
Image::MetaData::JPEG::MakerNotes contains random information and details on MakerNotes.
Pieces of information available after parsing the MakerNote
The result of the process of parsing the maker note is stored in a directory in the internal data structure for the APP1 Segment, whose path is "IFD@SubIFD@MakerNoteData_$format", where $format is the specific note format; the MakerNote entry in IFD0@SubIFD is then removed. This translation happens always, because there is a catch-all unknown rule for a binary makernote with very broad acceptance rules. The maker note directory contains, in addition, a special subdir with some fields reporting about the parsing process.
key content
-------- -------
ORIGINAL the raw content of the maker note (unparsed)
SIGNATURE the first few bytes which allowed the format to be chosen
ENDIANNESS the byte order chosen during parsing
FORMAT the maker note format chosen during parsing
ERROR [optional] error details, in case of failure while parsing
Supported MakerNote formats
Maker note formats are specified in a special internal hash, with a key for each format (including the unknown format). Each format entry corresponds to an anonymous hash containing information for parsing the MakerNote; the "normal" format is considered to be an IFD-like MakerNote with a next_link pointer, offsets counted from the global TIFF header and no MakerNote internal TIFF header.
key meaning or effect
--------- -----------------
signature the MakerNote signature (a regular expression)
maker the Maker signature (i.e., its name, no regex)
tags a reference to a hash for tag translations
(A) mkntstart if set, offsets are counted from the maker note start
(B) mkntTIFF if set, offsets are counted from the internal TIFF header
(C) ignore if set, the format is to be ignored
(D) nonext if set, the maker note IFD does not have a next_link
(E) endianness if set, the byte order is fixed to this value
(F) nonIFD if set, the maker note is not IFD-like
Currently, "supported" formats are described in the following table; authoritative data is indeed kept in Tables_makernotes.pl, to which the reader should refer for tag definitions and translations. Remember that both the signature and the maker fields are regular expressions matching at the beginning (the real signature corresponds to $1).
A B C D E F Maker Signature
----------- --------- -----------------
Agfa AGFA (AGFA 00 01)
Canon Canon ()
Casio_1 CASIO ()[^Q]
Casio_2 CASIO (QVC 00{3})
Epson EPSON (EPSON 00 01 00)
Foveon FOVEON (FOVEON 00{2} 01 00)
Fujifilm x FUJIFILM (FUJIFILM 14 00{3})
HPackard x Hewlett-Packard (HP)
Kyocera x x KYOCERA (KYOCERA {12} 00{3})
Kodak B x KODAK (KDK INFO[a-zA-Z0-9]* )
Minolta_1 MINOLTA ().{10}MLT0
Minolta_2 Minolta ().{10}MLT0
Konica x Minolta|KONICA ((MLY|KC|(+M){4})| 01 00{5} 04)
Nikon_1 NIKON (Nikon 00 01 00)
Nikon_2 NIKON ()[^N]
Nikon_3 x NIKON (Nikon 00 02[ 20 00] 00{2})
Olympus OLYMPUS (OLYMP 00[ 01 02] 00)
Panasonic_1 x Panasonic (Panasonic 00{3})
Panasonic_2 x x Panasonic (MKED)
Pentax_1 x Asahi ()[^A]
Pentax_2 x x Asahi (AOC 00..)
Ricoh_1 x RICOH (Rv|Rev)
Ricoh_2 x RICOH ( 00)
Ricoh_3 RICOH ((Ricoh|RICOH) 00{3})
Sanyo SANYO (SANYO 00 01 00)
Sigma SIGMA (SIGMA 00{3} 01 00)
Sony x SONY (SONY (CAM|DSC) 00{3})
Toshiba x TOSHIBA ()
unknown x . ()
References
MakerNote format details are not usually released by vendors (well, this is an euphemism: no vendor ever, to my knowledge, released any detail on its format, exception made for Sigma/Foveon). All information used for this package was collected on the Internet (and its reliability is therefore limited) or through personal tests. Some interesting sites are (not an exhaustive list at all):
General: home.arcor.de/ahuggel/exiv2/makernote.html
.....: www.ozhiker.com/electronics/pjmt/jpeg_info/makernotes.html
Agfa: www.ozhiker.com/electronics/pjmt/jpeg_info/agfa_mn.html
Canon: www.burren.cx/david/canon.html
Casio: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
...: www.dicasoft.de/casiomn.htm
Epson: www.ozhiker.com/electronics/pjmt/jpeg_info/epson_mn.html
Foveon: Foveon is the same as Sigma, see Sigma
Fujifilm: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
......: www.ozhiker.com/electronics/pjmt/jpeg_info/fujifilm_mn.html
Kyocera: www.ozhiker.com/electronics/pjmt/jpeg_info/kyocera_mn.html
Kodak: my personal tests with my Kodak DX3900 (not IFD-like)
Minolta: www.dalibor.cz/minolta/makernote.htm
.....: www.ozhiker.com/electronics/pjmt/jpeg_info/minolta_mn.html
Nikon: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
...: www.tawbaware.com/990exif.htm
...: www.ozhiker.com/electronics/pjmt/jpeg_info/nikon_mn.html
Olympus: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
.....: www.ozhiker.com/electronics/pjmt/jpeg_info/olympus_mn.html
Panasonic: www.compton.nu/panasonic.html
Pentax: www.ozhiker.com/electronics/pjmt/jpeg_info/pentax_mn.html
Ricoh: www.ozhiker.com/electronics/pjmt/jpeg_info/ricoh_mn.html
Sanyo: www.exif.org/makernotes/SanyoMakerNote.html
Sigma: www.x3f.info/technotes/FileDocs/MakerNoteDoc.html
Sony: www.ozhiker.com/electronics/pjmt/jpeg_info/sony_mn.html
DX3900 MakerNote format
Kodak MakerNotes are written in a proprietary binary format, which is not IFD-like. So, there is no way to detect the beginning, end and type of a field; everything here was inferred through a careful comparison of the content of a set of Kodak JPEG files and their shot parameters. Fields seems to be aligned on four bytes boundaries. For the DX3900 model the endianness is always fixed to big endian. The signature regular expression is "^(KDK INFO[a-zA-Z0-9]* )", the maker is KODAK. The meaning of the tags is as follows:
BYTE ??? firmware version? This is always 3
BYTE Compression 1 = normal, 2 = 2160x1440 high compression
BYTE BurstMode 0 = off, 1 = on
BYTE MacroMode 0 = normal, 1 = close-up
SHORT PixelXDimension allowed 2160x1440, 1800x1200,
SHORT PixelYDimension / values: 1536x1024, 1080x720
SHORT Year the year value, with four digits
BYTE Month the month value (in [1,12])
BYTE Day the day value (in [1,31])
BYTE Hour the hour value (in [0,23])
BYTE Minute the minute value (in [0,59])
BYTE Second the second value (in [0,59])
BYTE SubSecond (in 130th of seconds?)
SHORT ??? ???
BYTE ??? ???
BYTE ShutterMode 0 = auto, 32 = manual
BYTE MeteringMode 0 = multi-pattern, 1=centre weight., 2=centre spot
BYTE BurstSequenceIndex index in [1,8], 0 if burst mode off
SHORT FNumber 100 times the Exif F-number
LONG ExposureTime in 10^-5 seconds
SSHORT ExposureBiasValue 1000 times the exposure bias in [-2,+2 step .5]
SHORT ??? ???
LONG ???
LONG ??? is this an estimate of the subject
LONG ??? / distance? If so, it is very rough.
LONG ??? /
BYTE FocusMode 0 = auto, 2 = close, 3 = infinity
BYTE ??? always 2
SHORT ??? ???
SSHORT PanoramaMode 0 = normal, -1 = focus at infinity
SHORT SubjectDistance (x-28)*2.54+7 looks like the distance in cm
BYTE WhiteBalance 0 = normal, 1 = fluor., 2 = tungsten, 3 = daylight
(27 bytes with unknown meaning here)
BYTE FlashMode 0 = auto, 1 = on, 2 = off, 3 = red-eyes
BYTE FlashFired 0 = yes, 1 = no
SHORT ISOSpeedMode the requested speed in {100,200,400} or zero
SHORT ??? ???
SHORT TotalZoomFactor 100 times the zoom factor in [+1,+6 step 0.1]
SHORT DateTimeStampMode 0 = none, [1,6] = the six modes
SHORT ColourMode 1 = black & white, 2 = sepia, 32 = colour
SHORT DigitalZoomFactor 100 times the zoom factor in [+1,+3 step 0.1]
BYTE ??? always zero
SBYTE Sharpness 0 = standard, 1 = sharp, -1 = soft
(808 bytes with unknown meaning here, maybe a thumbnail?)
<<lessPieces of information available after parsing the MakerNote
The result of the process of parsing the maker note is stored in a directory in the internal data structure for the APP1 Segment, whose path is "IFD@SubIFD@MakerNoteData_$format", where $format is the specific note format; the MakerNote entry in IFD0@SubIFD is then removed. This translation happens always, because there is a catch-all unknown rule for a binary makernote with very broad acceptance rules. The maker note directory contains, in addition, a special subdir with some fields reporting about the parsing process.
key content
-------- -------
ORIGINAL the raw content of the maker note (unparsed)
SIGNATURE the first few bytes which allowed the format to be chosen
ENDIANNESS the byte order chosen during parsing
FORMAT the maker note format chosen during parsing
ERROR [optional] error details, in case of failure while parsing
Supported MakerNote formats
Maker note formats are specified in a special internal hash, with a key for each format (including the unknown format). Each format entry corresponds to an anonymous hash containing information for parsing the MakerNote; the "normal" format is considered to be an IFD-like MakerNote with a next_link pointer, offsets counted from the global TIFF header and no MakerNote internal TIFF header.
key meaning or effect
--------- -----------------
signature the MakerNote signature (a regular expression)
maker the Maker signature (i.e., its name, no regex)
tags a reference to a hash for tag translations
(A) mkntstart if set, offsets are counted from the maker note start
(B) mkntTIFF if set, offsets are counted from the internal TIFF header
(C) ignore if set, the format is to be ignored
(D) nonext if set, the maker note IFD does not have a next_link
(E) endianness if set, the byte order is fixed to this value
(F) nonIFD if set, the maker note is not IFD-like
Currently, "supported" formats are described in the following table; authoritative data is indeed kept in Tables_makernotes.pl, to which the reader should refer for tag definitions and translations. Remember that both the signature and the maker fields are regular expressions matching at the beginning (the real signature corresponds to $1).
A B C D E F Maker Signature
----------- --------- -----------------
Agfa AGFA (AGFA 00 01)
Canon Canon ()
Casio_1 CASIO ()[^Q]
Casio_2 CASIO (QVC 00{3})
Epson EPSON (EPSON 00 01 00)
Foveon FOVEON (FOVEON 00{2} 01 00)
Fujifilm x FUJIFILM (FUJIFILM 14 00{3})
HPackard x Hewlett-Packard (HP)
Kyocera x x KYOCERA (KYOCERA {12} 00{3})
Kodak B x KODAK (KDK INFO[a-zA-Z0-9]* )
Minolta_1 MINOLTA ().{10}MLT0
Minolta_2 Minolta ().{10}MLT0
Konica x Minolta|KONICA ((MLY|KC|(+M){4})| 01 00{5} 04)
Nikon_1 NIKON (Nikon 00 01 00)
Nikon_2 NIKON ()[^N]
Nikon_3 x NIKON (Nikon 00 02[ 20 00] 00{2})
Olympus OLYMPUS (OLYMP 00[ 01 02] 00)
Panasonic_1 x Panasonic (Panasonic 00{3})
Panasonic_2 x x Panasonic (MKED)
Pentax_1 x Asahi ()[^A]
Pentax_2 x x Asahi (AOC 00..)
Ricoh_1 x RICOH (Rv|Rev)
Ricoh_2 x RICOH ( 00)
Ricoh_3 RICOH ((Ricoh|RICOH) 00{3})
Sanyo SANYO (SANYO 00 01 00)
Sigma SIGMA (SIGMA 00{3} 01 00)
Sony x SONY (SONY (CAM|DSC) 00{3})
Toshiba x TOSHIBA ()
unknown x . ()
References
MakerNote format details are not usually released by vendors (well, this is an euphemism: no vendor ever, to my knowledge, released any detail on its format, exception made for Sigma/Foveon). All information used for this package was collected on the Internet (and its reliability is therefore limited) or through personal tests. Some interesting sites are (not an exhaustive list at all):
General: home.arcor.de/ahuggel/exiv2/makernote.html
.....: www.ozhiker.com/electronics/pjmt/jpeg_info/makernotes.html
Agfa: www.ozhiker.com/electronics/pjmt/jpeg_info/agfa_mn.html
Canon: www.burren.cx/david/canon.html
Casio: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
...: www.dicasoft.de/casiomn.htm
Epson: www.ozhiker.com/electronics/pjmt/jpeg_info/epson_mn.html
Foveon: Foveon is the same as Sigma, see Sigma
Fujifilm: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
......: www.ozhiker.com/electronics/pjmt/jpeg_info/fujifilm_mn.html
Kyocera: www.ozhiker.com/electronics/pjmt/jpeg_info/kyocera_mn.html
Kodak: my personal tests with my Kodak DX3900 (not IFD-like)
Minolta: www.dalibor.cz/minolta/makernote.htm
.....: www.ozhiker.com/electronics/pjmt/jpeg_info/minolta_mn.html
Nikon: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
...: www.tawbaware.com/990exif.htm
...: www.ozhiker.com/electronics/pjmt/jpeg_info/nikon_mn.html
Olympus: park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
.....: www.ozhiker.com/electronics/pjmt/jpeg_info/olympus_mn.html
Panasonic: www.compton.nu/panasonic.html
Pentax: www.ozhiker.com/electronics/pjmt/jpeg_info/pentax_mn.html
Ricoh: www.ozhiker.com/electronics/pjmt/jpeg_info/ricoh_mn.html
Sanyo: www.exif.org/makernotes/SanyoMakerNote.html
Sigma: www.x3f.info/technotes/FileDocs/MakerNoteDoc.html
Sony: www.ozhiker.com/electronics/pjmt/jpeg_info/sony_mn.html
DX3900 MakerNote format
Kodak MakerNotes are written in a proprietary binary format, which is not IFD-like. So, there is no way to detect the beginning, end and type of a field; everything here was inferred through a careful comparison of the content of a set of Kodak JPEG files and their shot parameters. Fields seems to be aligned on four bytes boundaries. For the DX3900 model the endianness is always fixed to big endian. The signature regular expression is "^(KDK INFO[a-zA-Z0-9]* )", the maker is KODAK. The meaning of the tags is as follows:
BYTE ??? firmware version? This is always 3
BYTE Compression 1 = normal, 2 = 2160x1440 high compression
BYTE BurstMode 0 = off, 1 = on
BYTE MacroMode 0 = normal, 1 = close-up
SHORT PixelXDimension allowed 2160x1440, 1800x1200,
SHORT PixelYDimension / values: 1536x1024, 1080x720
SHORT Year the year value, with four digits
BYTE Month the month value (in [1,12])
BYTE Day the day value (in [1,31])
BYTE Hour the hour value (in [0,23])
BYTE Minute the minute value (in [0,59])
BYTE Second the second value (in [0,59])
BYTE SubSecond (in 130th of seconds?)
SHORT ??? ???
BYTE ??? ???
BYTE ShutterMode 0 = auto, 32 = manual
BYTE MeteringMode 0 = multi-pattern, 1=centre weight., 2=centre spot
BYTE BurstSequenceIndex index in [1,8], 0 if burst mode off
SHORT FNumber 100 times the Exif F-number
LONG ExposureTime in 10^-5 seconds
SSHORT ExposureBiasValue 1000 times the exposure bias in [-2,+2 step .5]
SHORT ??? ???
LONG ???
LONG ??? is this an estimate of the subject
LONG ??? / distance? If so, it is very rough.
LONG ??? /
BYTE FocusMode 0 = auto, 2 = close, 3 = infinity
BYTE ??? always 2
SHORT ??? ???
SSHORT PanoramaMode 0 = normal, -1 = focus at infinity
SHORT SubjectDistance (x-28)*2.54+7 looks like the distance in cm
BYTE WhiteBalance 0 = normal, 1 = fluor., 2 = tungsten, 3 = daylight
(27 bytes with unknown meaning here)
BYTE FlashMode 0 = auto, 1 = on, 2 = off, 3 = red-eyes
BYTE FlashFired 0 = yes, 1 = no
SHORT ISOSpeedMode the requested speed in {100,200,400} or zero
SHORT ??? ???
SHORT TotalZoomFactor 100 times the zoom factor in [+1,+6 step 0.1]
SHORT DateTimeStampMode 0 = none, [1,6] = the six modes
SHORT ColourMode 1 = black & white, 2 = sepia, 32 = colour
SHORT DigitalZoomFactor 100 times the zoom factor in [+1,+3 step 0.1]
BYTE ??? always zero
SBYTE Sharpness 0 = standard, 1 = sharp, -1 = soft
(808 bytes with unknown meaning here, maybe a thumbnail?)
Download (0.28MB)
Added: 2007-08-09 License: Perl Artistic License Price:
806 downloads
Image::MetaData::JPEG::Structures 0.15
Image::MetaData::JPEG::Structures is a Perl module that describes the structure of a JPEG file. more>>
Image::MetaData::JPEG::Structures is a Perl module that describes the structure of a JPEG file; it is an appendix to the main manual page of the Image::MetaData::JPEG module, which the reader should refer to for further details and the general scope.
THE STRUCTURE OF JPEG PICTURES
The JPEG (Joint Photographic Experts Group) ISO standard is a lossy image compression mechanism developed before 1990, designed for compressing colour or gray-scale photo-realistic images (it performs poorly on line-art drawings). The JPEG mechanism is designed to exploit known limitations of the human eye, in particular the fact that colour changes are perceived less accurately than changes in brightness.
Note that although the "baseline" JPEG format is patent-free, there are patents associated with some optional features, namely arithmetic coding and hierarchical storage. For this reason, these optional features are never used on the Web (good job, patent fans ...). JPEG refers only to a class of compression algorithms, not to a specific file format. In order to produce files with embedded JPEG streams, a number of file format (semi-)standards have been adapted or devised, some of which are listed in the format section. The structure of a well formed JPEG file can be described by the following pseudo production rules (for sake of simplicity, some additional constraints between tables and SOF segments are neglected).
JPEG --> (SOI)(misc)*(image)?(EOI)
(image) --> (hierarch.)|(non-hier.)
(hierarch.) --> (DHP)(frame)+
(frame) --> (misc)*(EXP)?(non-hier.)
(non-hier.) --> (SOF)(scan)+
(scan) --> (misc)*(SOS)(data)*(ECS)(DNL)?
(data) --> (ECS)(RST)
(misc) --> (DQT)|(DHT)|(DAC)|(DRI)|(COM)|(APP)
(SOI) = Start Of Image
(EOI) = End Of Image
(SOF) = Start Of Frame header (10 types)
(SOS) = Start Of Scan header
(ECS) = Entropy Coded Segment (row data, not a real segment)
(DNL) = Define Number of Lines segment
(DHP) = Define Hierarchical P??? segment
(EXP) = EXPansion segment
(RST) = ReSTart segment (8 types)
(DQT) = Define Quantisation Table
(DHT) = Define Huffman coding Table
(DAC) = Define Arithmetic coding Table
(DRI) = Define Restart Interval
(COM) = COMment segment
(APP) = APPlication segment
This package does not check that a JPEG file is really correct; it accepts a looser syntax, were segments and ECS blocks are just contiguous (basically, because it does not need to display the image!). All meta-data information is concentrated in the (COM*) and (APP) Segments, exception made for some records in the (SOF*) segment (e.g. image dimensions).
Reference: B< "Digital compression and coding of continuous-tone still
images: requirements and guidelines", CCITT recommend. T.81, 1992,
The International Telegraph and Telephone Consultative Committee,
standard ISO/IEC IS 10918-1 or ITU-T Recommendation T.81 >.
Also: B< "The JPEG still picture compression standard", G.K.Wallace,
1991, IEEE Transactions on Consumer Electronics >.
<<lessTHE STRUCTURE OF JPEG PICTURES
The JPEG (Joint Photographic Experts Group) ISO standard is a lossy image compression mechanism developed before 1990, designed for compressing colour or gray-scale photo-realistic images (it performs poorly on line-art drawings). The JPEG mechanism is designed to exploit known limitations of the human eye, in particular the fact that colour changes are perceived less accurately than changes in brightness.
Note that although the "baseline" JPEG format is patent-free, there are patents associated with some optional features, namely arithmetic coding and hierarchical storage. For this reason, these optional features are never used on the Web (good job, patent fans ...). JPEG refers only to a class of compression algorithms, not to a specific file format. In order to produce files with embedded JPEG streams, a number of file format (semi-)standards have been adapted or devised, some of which are listed in the format section. The structure of a well formed JPEG file can be described by the following pseudo production rules (for sake of simplicity, some additional constraints between tables and SOF segments are neglected).
JPEG --> (SOI)(misc)*(image)?(EOI)
(image) --> (hierarch.)|(non-hier.)
(hierarch.) --> (DHP)(frame)+
(frame) --> (misc)*(EXP)?(non-hier.)
(non-hier.) --> (SOF)(scan)+
(scan) --> (misc)*(SOS)(data)*(ECS)(DNL)?
(data) --> (ECS)(RST)
(misc) --> (DQT)|(DHT)|(DAC)|(DRI)|(COM)|(APP)
(SOI) = Start Of Image
(EOI) = End Of Image
(SOF) = Start Of Frame header (10 types)
(SOS) = Start Of Scan header
(ECS) = Entropy Coded Segment (row data, not a real segment)
(DNL) = Define Number of Lines segment
(DHP) = Define Hierarchical P??? segment
(EXP) = EXPansion segment
(RST) = ReSTart segment (8 types)
(DQT) = Define Quantisation Table
(DHT) = Define Huffman coding Table
(DAC) = Define Arithmetic coding Table
(DRI) = Define Restart Interval
(COM) = COMment segment
(APP) = APPlication segment
This package does not check that a JPEG file is really correct; it accepts a looser syntax, were segments and ECS blocks are just contiguous (basically, because it does not need to display the image!). All meta-data information is concentrated in the (COM*) and (APP) Segments, exception made for some records in the (SOF*) segment (e.g. image dimensions).
Reference: B< "Digital compression and coding of continuous-tone still
images: requirements and guidelines", CCITT recommend. T.81, 1992,
The International Telegraph and Telephone Consultative Committee,
standard ISO/IEC IS 10918-1 or ITU-T Recommendation T.81 >.
Also: B< "The JPEG still picture compression standard", G.K.Wallace,
1991, IEEE Transactions on Consumer Electronics >.
Download (0.28MB)
Added: 2006-08-25 License: Perl Artistic License Price:
1160 downloads
jpig 1.0
jpig provides a text-mode color JPEG image viewer/browser. more>>
jpig provides a text-mode color JPEG image viewer/browser.
jpig is a program to read and decompress JPEG images, remap their pallettes, and convert image areas to characters for display on a standard Linux text console.
Please do: make test before anything else.
This cute program can decompress jpeg image, remap its pallete,
replace parts of image with characters, then interactively display
it in browser mode. Please make test to see how it works on sample images.
U, D, L, R, arrows, Home, End, PgUp, PgDown - navigation
Z, O - zoom / unzOom (slow)
C - compensation (for dark images)
Q - next picture / quit
Ctrl+C - quit
Youll get best results with rather bright images with visible contours.
Small green frog sitting on the grass wont look very well ;)
Command-line options: (see jpig -h).
<<lessjpig is a program to read and decompress JPEG images, remap their pallettes, and convert image areas to characters for display on a standard Linux text console.
Please do: make test before anything else.
This cute program can decompress jpeg image, remap its pallete,
replace parts of image with characters, then interactively display
it in browser mode. Please make test to see how it works on sample images.
U, D, L, R, arrows, Home, End, PgUp, PgDown - navigation
Z, O - zoom / unzOom (slow)
C - compensation (for dark images)
Q - next picture / quit
Ctrl+C - quit
Youll get best results with rather bright images with visible contours.
Small green frog sitting on the grass wont look very well ;)
Command-line options: (see jpig -h).
Download (0.032MB)
Added: 2007-02-28 License: LGPL (GNU Lesser General Public License) Price:
968 downloads
JPHS 0.3
JPHIDE and JPSEEK are programs which allow you to hide a file in a jpeg visual image. more>>
JPSEEK and JPHIDE are 2 programs that allows you to hide a file in a jpeg visual image. There are lots of versions of similar programs available on the internet but JPHIDE and JPSEEK are rather special.
The design objective was not simply to hide a file but rather to do this in such a way that it is impossible to prove that the host file contains a hidden file. Given a typical visual image, a low insertion rate (under 5%) and the absence of the original file, it is not possible to conclude with any worthwhile certainty that the host file contains inserted data.
As the insertion percentage increases the statistical nature of the jpeg coefficients differs from "normal" to the extent that it raises suspicion. Above 15% the effects begin to become visible to the naked eye. Of course some images are much better than others when used a host file - plenty of fine detail is good. A cloudless blue sky over a snow covered ski paradise is bad. A waterfall in a forest is probably ideal.
Instructions:
jphide input-jpeg-file output-jpeg-file file-to-be-hidden
jpseek input-jpeg-file output-hidden-file
Building the programs:
Get the sources for the jpeg library jpeg-6a.
I got mine from a RedHat cd.
Compile them following the instructions that came with them.
Check them out - there is a "make test".
Use tar to put the new programs into the directory containing
the standard jpeg-6a sources:
tar -xzf jphs.tgz
Patch the makefile:
patch<<less
The design objective was not simply to hide a file but rather to do this in such a way that it is impossible to prove that the host file contains a hidden file. Given a typical visual image, a low insertion rate (under 5%) and the absence of the original file, it is not possible to conclude with any worthwhile certainty that the host file contains inserted data.
As the insertion percentage increases the statistical nature of the jpeg coefficients differs from "normal" to the extent that it raises suspicion. Above 15% the effects begin to become visible to the naked eye. Of course some images are much better than others when used a host file - plenty of fine detail is good. A cloudless blue sky over a snow covered ski paradise is bad. A waterfall in a forest is probably ideal.
Instructions:
jphide input-jpeg-file output-jpeg-file file-to-be-hidden
jpseek input-jpeg-file output-hidden-file
Building the programs:
Get the sources for the jpeg library jpeg-6a.
I got mine from a RedHat cd.
Compile them following the instructions that came with them.
Check them out - there is a "make test".
Use tar to put the new programs into the directory containing
the standard jpeg-6a sources:
tar -xzf jphs.tgz
Patch the makefile:
patch<<less
Download (0.015MB)
Added: 2006-03-23 License: Freeware Price:
763 downloads
jpg2pdf PRO 2.x
Jpg2pdf PRO is the PRO version of jpg2pdf. more>>
jpg2pdf PRO is the PRO version of jpg2pdf. jpg2pdf PRO offers you all the features of jpg2pdf 2.x plus these important features: convert every single jpeg to a single pdf (with -album to create a unique PDF) jpg2pdf PRO can automatic detect is the jpeg image is rgb or gray or cmyk and create the correct pdf. jpg2pdf PRO can automatic check if the jpeg image is rgb or gray or cmyk and create the correct pdf or pdf album.
NOTE: jpg2pdf PRO tries to detect if the cmyk image is made by Adobe Photoshop and will use inverted colours to create the pdf (it appears that Adobe Photoshop writes inverted data in CMYK JPEG files: 0 represents 100% ink coverage, rather than 0% ink as youd expect)
Main features:
- convert every single jpeg to a single pdf, to put every jpeg in a pdf album, like normal jpg2pdf, you can use the option -album
- jpg2pdf PRO can automatic detect is the jpeg image is rgb or gray or cmyk and create the correct pdf. Note: jpg2pdf PRO tries to detect if the cmyk image is made by Adobe Photoshop and will use inverted colours to create the pdf (it appears that Adobe Photoshop writes inverted data in CMYK JPEG files: 0 represents 100% ink coverage, rather than 0% ink as youd expect)
- center parameter will center evary jpeg image in the final pdf page
- Using image parameter (to set the paper format of the pdf page equal to the image) is possible to use border parameter to set a border around the image
- Its possible to set a directory where to put the pdfs (pdfdir) and the jpegs (jpgdir)
- Its possible to re-run infinitely jpg2pdf setting the wait seconds
<<lessNOTE: jpg2pdf PRO tries to detect if the cmyk image is made by Adobe Photoshop and will use inverted colours to create the pdf (it appears that Adobe Photoshop writes inverted data in CMYK JPEG files: 0 represents 100% ink coverage, rather than 0% ink as youd expect)
Main features:
- convert every single jpeg to a single pdf, to put every jpeg in a pdf album, like normal jpg2pdf, you can use the option -album
- jpg2pdf PRO can automatic detect is the jpeg image is rgb or gray or cmyk and create the correct pdf. Note: jpg2pdf PRO tries to detect if the cmyk image is made by Adobe Photoshop and will use inverted colours to create the pdf (it appears that Adobe Photoshop writes inverted data in CMYK JPEG files: 0 represents 100% ink coverage, rather than 0% ink as youd expect)
- center parameter will center evary jpeg image in the final pdf page
- Using image parameter (to set the paper format of the pdf page equal to the image) is possible to use border parameter to set a border around the image
- Its possible to set a directory where to put the pdfs (pdfdir) and the jpegs (jpgdir)
- Its possible to re-run infinitely jpg2pdf setting the wait seconds
Download (0.87MB)
Added: 2006-07-28 License: GPL (GNU General Public License) Price:
1198 downloads
Jhead 2.7
Jhead is a command line driven Exif header parser and manipulator. more>>
Jhead is a command line driven utility for extracting digital camera settings from the Exif format files used by many digital cameras. It handles the various confusing ways these can be expressed, and displays them as F-stop, shutter speed, etc.
Jhead project is also able to reduce the size of digital camera JPEGs without loss of information, by deleting integral thumbnails that digital cameras put into the Exif header. If you need to add Exif support to a program, this is a simple program to cut and paste from. Many projects, including PHP, have reused code from this utility.
Things jhead can extract from an Exif jpeg file:
- Integral low-res Exif thumbnail
- Shutter speed
- Camera F-stop number
- Flash used (yes/no)
- Distance camera was focused at
- Focal length and calculate 35 mm equivalent focal length
- Image resolution
- Time and date picture was taken
- Camera make and model
Things jhead can modify in an exif jpeg file:
- Up-right images according to rotation tag using jpegtran
- Set or relative adjust internal exif timestamps
- Re-name or date stamp fils according to exif timestamp
- Transfer exif headers between images
- Edit jpeg comments
- Delete exif or comment sections from jpeg images
Enhancements:
- The "-mkexif" option to create a new minimal EXIF section in an existing image was added.
- The "-ds" and "-dsft" options to manipulate the EXIF date and time were added.
- Image and thumbnail rotation flag handling was fixed.
<<lessJhead project is also able to reduce the size of digital camera JPEGs without loss of information, by deleting integral thumbnails that digital cameras put into the Exif header. If you need to add Exif support to a program, this is a simple program to cut and paste from. Many projects, including PHP, have reused code from this utility.
Things jhead can extract from an Exif jpeg file:
- Integral low-res Exif thumbnail
- Shutter speed
- Camera F-stop number
- Flash used (yes/no)
- Distance camera was focused at
- Focal length and calculate 35 mm equivalent focal length
- Image resolution
- Time and date picture was taken
- Camera make and model
Things jhead can modify in an exif jpeg file:
- Up-right images according to rotation tag using jpegtran
- Set or relative adjust internal exif timestamps
- Re-name or date stamp fils according to exif timestamp
- Transfer exif headers between images
- Edit jpeg comments
- Delete exif or comment sections from jpeg images
Enhancements:
- The "-mkexif" option to create a new minimal EXIF section in an existing image was added.
- The "-ds" and "-dsft" options to manipulate the EXIF date and time were added.
- Image and thumbnail rotation flag handling was fixed.
Download (0.04MB)
Added: 2007-01-12 License: Public Domain Price:
1018 downloads
CPEXIF 0.2
CPEXIF project utility copies EXIF data from a NEF (Nikon RAW file) or a JPEG file to a JPEG file. more>>
CPEXIF project utility copies EXIF data from a NEF (Nikon RAW file) or a JPEG file to a JPEG file.
The CPEXIF program is free software released under the terms of the GNU General Public License. There is no warranty, use it at your own risk.
CPEXIF is a command line utility.
Usage:
NEF to JPEG copy mode
The usage is:
cpexif [options] source.nef destination.jpg
available options are:
--nomakernote
--noisofix
In this mode CPEXIF copies the EXIF data from the source NEF file (Nikon RAW file) to the destination JPEG file. Thumbnails are not copied.
The --nomakernote option instructs the program to strip the MakerNote field from the EXIF data. This reduces the EXIF data size, in many cases substantially. It is intended to overcome the 64kB limit. Some information about the equipment and the picture will be lost when you use this option.
Many Nikon cameras store the ISO Speed value in a non-standard way. By default, CPEXIF fixes it by adding the missing ISO field. It creates one using the information from the MakerNote field. Most people want this, but if you dont, use the --noisofix option.
JPEG to JPEG copy mode
The syntax is straightforward:
cpexif source.jpg destination.jpg
CPEXIF copies the whole file segment containing the EXIF data without examining it. That explains why data modification cannot be performed (no ISO fix for Nikon users, sorry) and no options are available in this mode. This approach prevents any compatibility problems, so JPEGs from any digital camera can be processed this way.
Enhancements:
- This release fixes JPEG file corruption with EXIF data larger than 64K.
- A new JPEG to JPEG copy mode has been added.
- An automatic fix for the missing standard ISO Speed field has been added in the NEF to JPEG copy mode.
<<lessThe CPEXIF program is free software released under the terms of the GNU General Public License. There is no warranty, use it at your own risk.
CPEXIF is a command line utility.
Usage:
NEF to JPEG copy mode
The usage is:
cpexif [options] source.nef destination.jpg
available options are:
--nomakernote
--noisofix
In this mode CPEXIF copies the EXIF data from the source NEF file (Nikon RAW file) to the destination JPEG file. Thumbnails are not copied.
The --nomakernote option instructs the program to strip the MakerNote field from the EXIF data. This reduces the EXIF data size, in many cases substantially. It is intended to overcome the 64kB limit. Some information about the equipment and the picture will be lost when you use this option.
Many Nikon cameras store the ISO Speed value in a non-standard way. By default, CPEXIF fixes it by adding the missing ISO field. It creates one using the information from the MakerNote field. Most people want this, but if you dont, use the --noisofix option.
JPEG to JPEG copy mode
The syntax is straightforward:
cpexif source.jpg destination.jpg
CPEXIF copies the whole file segment containing the EXIF data without examining it. That explains why data modification cannot be performed (no ISO fix for Nikon users, sorry) and no options are available in this mode. This approach prevents any compatibility problems, so JPEGs from any digital camera can be processed this way.
Enhancements:
- This release fixes JPEG file corruption with EXIF data larger than 64K.
- A new JPEG to JPEG copy mode has been added.
- An automatic fix for the missing standard ISO Speed field has been added in the NEF to JPEG copy mode.
Download (0.014MB)
Added: 2005-12-08 License: GPL (GNU General Public License) Price:
1417 downloads
jp2a 1.0.6
jp2a is a small utility that converts JPG images to ASCII. more>>
jp2a is a small utility that converts JPG images to ASCII. jp2a is written in C and released under the GNU General Public License v2 or later.
Building and installing:
You need jpeglib to compile jp2a. On Mac OS X I do a
sudo port install jpeg
and then:
./configure --with-jpeg-prefix=/opt/local
make
make install
The --with-jpeg-prefix option above means that configure will look for /opt/local/include/jpeglib.h and will link against /opt/local/lib/libjpeg.a. While many systems do have libjpeg.a installed, they lack the development headers. These can be downloaded from http://www.igj.org.
Enhancements:
- Compatible with older C compilers like GCC 2.95.4
<<lessBuilding and installing:
You need jpeglib to compile jp2a. On Mac OS X I do a
sudo port install jpeg
and then:
./configure --with-jpeg-prefix=/opt/local
make
make install
The --with-jpeg-prefix option above means that configure will look for /opt/local/include/jpeglib.h and will link against /opt/local/lib/libjpeg.a. While many systems do have libjpeg.a installed, they lack the development headers. These can be downloaded from http://www.igj.org.
Enhancements:
- Compatible with older C compilers like GCC 2.95.4
Download (0.074MB)
Added: 2006-09-26 License: GPL (GNU General Public License) Price:
1125 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above jpeg search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed