Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

exiv2 reports "corrupted metadata" where exiftool can extract them all #2237

Closed
notorand-it opened this issue May 15, 2022 · 4 comments · Fixed by #2337
Closed

exiv2 reports "corrupted metadata" where exiftool can extract them all #2237

notorand-it opened this issue May 15, 2022 · 4 comments · Fixed by #2337
Labels

Comments

@notorand-it
Copy link

Describe the bug

On an Andoid-shot MP4 file exiv2 reports "corrupted metadata" while exiftool can extract them all.

To Reproduce

Steps to reproduce the behavior:

  1. Download the attached MP4 file
  2. run "exiv2 pr file.mp4"
  3. run "exiftool file.mp4"
Expected behavior

Both steps output media file metadata

Actual behavior

exiv2 reports corruption error
exiftools works

Desktop (please complete the following information):
  • OS and version: ArchLinux (up-to-date)
  • Compiler and version: gcc (GCC) 12.1.0 (irrelevant?)
  • Compilation mode and/or compiler flags: Packages come from distro repo.
Additional context

exiv2 0.27.5
exiftool 12.4

PXL_20220515_113258359.mp4
@VJSchneid
Copy link
Contributor

VJSchneid commented May 16, 2022

Hi @notorand-it,
I'm not very familiar with the mp4 handling in exiv2, but after looking into the corresponding source file (src/bmffimage.cpp) it seems as if there is missing some code to parse all the boxes/atoms found in your video file.

The corrupted file error comes from exiv2 when it tries to read another box inside the meta box, which seems to be not present or differently formatted as expected (see line 288 in src/bmffimage.cpp).

I made some tests and when the boxHandler in line 295 is just called for the moov, iprp and ipco tag, no error is thrown but no metadata is found either. To find the metadata I think more boxes have to be parsed.
This site can give some hints what boxes are present in your mp4 file and there are many more that exiv2 does not process...

I hope I could help a little bit

@benmccann
Copy link
Contributor

benmccann commented Aug 12, 2022

I'm not that familiar with this stuff, but here's where the creation_time is from the mp4box.js site:

Screenshot from 2022-08-11 19-54-15

@benmccann benmccann mentioned this issue Aug 14, 2022
@hassec
Copy link
Member

hassec commented Aug 15, 2022

This request targets the removed video functionality, to be specific quicktimevideo.cpp. Please see #1748 for further info

@1div0
Copy link
Collaborator

1div0 commented Aug 16, 2022

@benmccann please have a l👀l at https://mediaarea.net/ tools.

Video is very complex and full of bull$#17 $0ftwar€ patents.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants