-
Notifications
You must be signed in to change notification settings - Fork 351
Parse meta box and related boxes in in QTFF format #459
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
base: main
Are you sure you want to change the base?
Conversation
@ DenizUgur The first commit in this pull request is a bug fix to the existing code in the next branch. Would you like a separate pull request for that? |
Yes, please. I tend to squash PRs so if it's not strictly relevant to other commits we should make it seperate. |
Moved the first commit into a separate pull request: #461 |
1123394
to
5ff1071
Compare
5ff1071
to
403c625
Compare
Do you have a link to the relevant specification? |
In the QTFF format (ie: Quicktime .MOV files) the 'meta' atom has is a container box instead of a full box. We add a flag on the stream to indicate this difference in behavior once we know we are parsing a QTFF format file. Fixes gpac#309
This includes these atoms/boxes: * 'keys' which are the named keys in a QTFF 'meta' box * 'ilst' which typically follows the 'keys' atom within 'meta' * 'data' usually the the contents of an ilst atom The 'data' box has many data types. Each type is described by the enumeration dataBox.Types. Only support for those that have a test file have been implemented so far: * UTF8 * BE_UNSIGNED_INT * BE_SIGNED_INT * BE_FLOAT32
403c625
to
bd9106a
Compare
Sure, here you go: https://developer.apple.com/documentation/quicktime-file-format/ In addition, various portions of the spec are linked in comments from the various box implementations. I've rebased onto the latest next, and done a quick manual check to see if parsing worked. It does. When you have an automated test framework, I'd be happy to add tests. |
We have tests against File Format Conformance but I'm not sure if there were any QuickTime format files there. I haven't considered how we'd go on and add tests for other files yet. |
In the QTFF format (ie: Quicktime .MOV files) the 'meta' atom
has is a container box instead of a full box. We add a flag
on the stream to indicate this difference in behavior once we
know we are parsing a QTFF format file.
Tasks to complete before merging:
closes #309