You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.7 KiB
56 lines
1.7 KiB
#------------------------------------------------------------------------------ |
|
# File: depthmap.config |
|
# |
|
# Description: Composite tag definitions to extract DepthMap and ConfidenceMap |
|
# images from Google Dynamic-depth images |
|
# |
|
# Usage: exiftool -config depthmap.config -W %d%f_%t.%s -depthmap -confidencemap -b DIR |
|
# |
|
# Requires: ExifTool version 11.88 or later |
|
# |
|
# Revisions: 2020/02/20 - P. Harvey Created |
|
#------------------------------------------------------------------------------ |
|
|
|
sub GetTrailerImage($$) |
|
{ |
|
my ($val, $type) = @_; |
|
my @uri = ref $$val[1] ? @{$$val[1]} : $$val[1]; |
|
my @len = ref $$val[2] ? @{$$val[2]} : $$val[2]; |
|
my $start = 0; |
|
for (my $i=0; $i<@uri; ++$i) { |
|
if ($uri[$i] =~ /$type/) { |
|
my $img = substr(${$$val[0]}, $start, $len[$i]); |
|
return \$img; |
|
} |
|
$start += $len[$i]; |
|
} |
|
return undef; |
|
} |
|
|
|
%Image::ExifTool::UserDefined = ( |
|
'Image::ExifTool::Composite' => { |
|
DepthMap => { |
|
Require => { |
|
0 => 'Trailer', |
|
1 => 'ContainerDirectoryItemDataURI', |
|
2 => 'ContainerDirectoryItemLength', |
|
}, |
|
ValueConv => 'GetTrailerImage(\@val, "depthmap")', |
|
}, |
|
ConfidenceMap => { |
|
Require => { |
|
0 => 'Trailer', |
|
1 => 'ContainerDirectoryItemDataURI', |
|
2 => 'ContainerDirectoryItemLength', |
|
}, |
|
ValueConv => 'GetTrailerImage(\@val, "confidencemap")', |
|
}, |
|
}, |
|
); |
|
|
|
%Image::ExifTool::UserDefined::Options = ( |
|
RequestTags => 'Trailer', |
|
); |
|
|
|
#------------------------------------------------------------------------------ |
|
1; #end |