[
https://issues.apache.org/jira/browse/TIKA-4776?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dominik Schmidt updated TIKA-4776:
----------------------------------
Description:
Apple maker notes in HEIC/JPEG images store several tags as LONG8 (TIFF
format code 16), e.g. the Live Photo video index (tag 0x0017). Example:
for a Live Photo still taken with an iPhone 15 Pro on iOS 18.5, tag
0x0017 is written with format code 16 and value 5283876.
The bundled metadata-extractor (2.20.0) only decodes the classic TIFF
format codes 1-12 and drops such tags, so Tika never emits
"img:Live Photo ID" even though metadata-extractor's
AppleMakernoteDirectory defines the tag name. Only the content
identifier ("img:Content Identifier", stored as a plain string) comes
through today.
This matters for pairing Apple Live Photos: the still image and the
QuickTime video share a content identifier (the video side is covered
by TIKA-2861), and the Live Photo video index is the image-side marker
that reliably identifies a still as part of a Live Photo (whereas just "Content
Identifier" seems to be a bit weak).
This is fixed upstream in metadata-extractor:
[https://github.com/drewnoakes/metadata-extractor/issues/738]
[https://github.com/drewnoakes/metadata-extractor/pull/739]
Verified end-to-end with a patched metadata-extractor build: Tika then
emits both "img:Content Identifier" and "img:Live Photo ID" for a real
Live Photo HEIC, with no Tika code change required.
Once a metadata-extractor release containing the fix is available, the
dependency (metadata.extractor.version in tika-parent) needs a bump.
It would be great to add a regression test then.
was:
Apple maker notes in HEIC/JPEG images store several tags as LONG8 (TIFF
format code 16), e.g. the Live Photo video index (tag 0x0017). Example:
for a Live Photo still taken with an iPhone 15 Pro on iOS 18.5, tag
0x0017 is written with format code 16 and value 5283876.
The bundled metadata-extractor (2.20.0) only decodes the classic TIFF
format codes 1-12 and drops such tags, so Tika never emits
"img:Live Photo ID" even though metadata-extractor's
AppleMakernoteDirectory defines the tag name. Only the content
identifier ("img:Content Identifier", stored as a plain string) comes
through today.
This matters for pairing Apple Live Photos: the still image and the
QuickTime video share a content identifier (the video side is covered
by TIKA-2861), and the Live Photo video index is the image-side marker
that reliably identifies a still as part of a Live Photo (whereas just "Content
Identifier" seems to be a bit weak).
This is fixed upstream in metadata-extractor:
https://github.com/drewnoakes/metadata-extractor/issues/738
https://github.com/drewnoakes/metadata-extractor/pull/739
Verified end-to-end with a patched metadata-extractor build: Tika then
emits both "img:Content Identifier" and "img:Live Photo ID" for a real
Live Photo HEIC, with no Tika code change required.
Once a metadata-extractor release containing the fix is available, the
dependency (metadata.extractor.version in tika-parent) needs a bump. It would
be great to add a test then to make sure it doesn't break again.
> Apple maker note tags written as LONG8 are dropped
> --------------------------------------------------
>
> Key: TIKA-4776
> URL: https://issues.apache.org/jira/browse/TIKA-4776
> Project: Tika
> Issue Type: Improvement
> Reporter: Dominik Schmidt
> Priority: Major
>
> Apple maker notes in HEIC/JPEG images store several tags as LONG8 (TIFF
> format code 16), e.g. the Live Photo video index (tag 0x0017). Example:
> for a Live Photo still taken with an iPhone 15 Pro on iOS 18.5, tag
> 0x0017 is written with format code 16 and value 5283876.
> The bundled metadata-extractor (2.20.0) only decodes the classic TIFF
> format codes 1-12 and drops such tags, so Tika never emits
> "img:Live Photo ID" even though metadata-extractor's
> AppleMakernoteDirectory defines the tag name. Only the content
> identifier ("img:Content Identifier", stored as a plain string) comes
> through today.
> This matters for pairing Apple Live Photos: the still image and the
> QuickTime video share a content identifier (the video side is covered
> by TIKA-2861), and the Live Photo video index is the image-side marker
> that reliably identifies a still as part of a Live Photo (whereas just
> "Content Identifier" seems to be a bit weak).
> This is fixed upstream in metadata-extractor:
> [https://github.com/drewnoakes/metadata-extractor/issues/738]
> [https://github.com/drewnoakes/metadata-extractor/pull/739]
> Verified end-to-end with a patched metadata-extractor build: Tika then
> emits both "img:Content Identifier" and "img:Live Photo ID" for a real
> Live Photo HEIC, with no Tika code change required.
> Once a metadata-extractor release containing the fix is available, the
> dependency (metadata.extractor.version in tika-parent) needs a bump.
> It would be great to add a regression test then.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)