summaryrefslogtreecommitdiff
path: root/lib/Image/ExifTool/PNG.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Image/ExifTool/PNG.pm')
-rw-r--r--lib/Image/ExifTool/PNG.pm82
1 files changed, 80 insertions, 2 deletions
diff --git a/lib/Image/ExifTool/PNG.pm b/lib/Image/ExifTool/PNG.pm
index 7daece47..1dfa63bf 100644
--- a/lib/Image/ExifTool/PNG.pm
+++ b/lib/Image/ExifTool/PNG.pm
@@ -36,7 +36,7 @@ use strict;
use vars qw($VERSION $AUTOLOAD %stdCase);
use Image::ExifTool qw(:DataAccess :Utils);
-$VERSION = '1.61';
+$VERSION = '1.62';
sub ProcessPNG_tEXt($$$);
sub ProcessPNG_iTXt($$$);
@@ -343,7 +343,12 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
Name => 'JUMBF',
SubDirectory => { TagTable => 'Image::ExifTool::Jpeg2000::Main' },
},
- # cICP - Coding-independent code points (added in 2022 specification)
+ cICP => {
+ Name => 'CICodePoints',
+ SubDirectory => {
+ TagTable => 'Image::ExifTool::PNG::CICodePoints',
+ },
+ },
);
# PNG IHDR chunk
@@ -428,6 +433,79 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
},
);
+# PNG cICP chunk
+%Image::ExifTool::PNG::CICodePoints = (
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
+ GROUPS => { 1 => 'PNG-cICP', 2 => 'Image' },
+ NOTES => q{
+ These tags are found in the PNG cICP chunk and belong to the PNG-cICP family
+ 1 group.
+ },
+ # (same as tags in QuickTime::ColorRep)
+ 0 => {
+ Name => 'ColorPrimaries',
+ PrintConv => {
+ 1 => 'BT.709',
+ 2 => 'Unspecified',
+ 4 => 'BT.470 System M (historical)',
+ 5 => 'BT.470 System B, G (historical)',
+ 6 => 'BT.601',
+ 7 => 'SMPTE 240',
+ 8 => 'Generic film (color filters using illuminant C)',
+ 9 => 'BT.2020, BT.2100',
+ 10 => 'SMPTE 428 (CIE 1921 XYZ)',
+ 11 => 'SMPTE RP 431-2',
+ 12 => 'SMPTE EG 432-1',
+ 22 => 'EBU Tech. 3213-E',
+ },
+ },
+ 1 => {
+ Name => 'TransferCharacteristics',
+ PrintConv => {
+ 0 => 'For future use (0)',
+ 1 => 'BT.709',
+ 2 => 'Unspecified',
+ 3 => 'For future use (3)',
+ 4 => 'BT.470 System M (historical)',
+ 5 => 'BT.470 System B, G (historical)',
+ 6 => 'BT.601',
+ 7 => 'SMPTE 240 M',
+ 8 => 'Linear',
+ 9 => 'Logarithmic (100 : 1 range)',
+ 10 => 'Logarithmic (100 * Sqrt(10) : 1 range)',
+ 11 => 'IEC 61966-2-4',
+ 12 => 'BT.1361',
+ 13 => 'sRGB or sYCC',
+ 14 => 'BT.2020 10-bit systems',
+ 15 => 'BT.2020 12-bit systems',
+ 16 => 'SMPTE ST 2084, ITU BT.2100 PQ',
+ 17 => 'SMPTE ST 428',
+ 18 => 'BT.2100 HLG, ARIB STD-B67',
+ },
+ },
+ 2 => {
+ Name => 'MatrixCoefficients',
+ PrintConv => {
+ 0 => 'Identity matrix',
+ 1 => 'BT.709',
+ 2 => 'Unspecified',
+ 3 => 'For future use (3)',
+ 4 => 'US FCC 73.628',
+ 5 => 'BT.470 System B, G (historical)',
+ 6 => 'BT.601',
+ 7 => 'SMPTE 240 M',
+ 8 => 'YCgCo',
+ 9 => 'BT.2020 non-constant luminance, BT.2100 YCbCr',
+ 10 => 'BT.2020 constant luminance',
+ 11 => 'SMPTE ST 2085 YDzDx',
+ 12 => 'Chromaticity-derived non-constant luminance',
+ 13 => 'Chromaticity-derived constant luminance',
+ 14 => 'BT.2100 ICtCp',
+ },
+ },
+ 3 => 'VideoFullRangeFlag',
+);
+
# PNG sCAL chunk
%Image::ExifTool::PNG::SubjectScale = (
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,