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

Heif Properties: Timestamp boxes #1028

Merged
merged 5 commits into from
Nov 12, 2023

Conversation

dukesook
Copy link
Contributor

@dukesook dukesook commented Nov 4, 2023

Feedback is always appreciated.

@farindk
Copy link
Contributor

farindk commented Nov 4, 2023

Thanks for the PR.
One comment: since you are merging the master branch into your PR, it makes the PR very hard to read and see what actually changed. Usually, you should keep your PR branch clean with only your changes. That makes it much easier to read, approve, and merge into the master branch without danger to break things there.

Would it be possible that you untangle this PR into a new, clean PR? You could use cherry-picking of your commits to do this.

@dukesook dukesook force-pushed the timestamp_boxes_2 branch 2 times, most recently from 6b75c31 to 1859ffd Compare November 4, 2023 20:17
@dukesook
Copy link
Contributor Author

dukesook commented Nov 4, 2023

Okay, I removed the master branch from the PR so my changes are more clear.

Referring to the API in heif_properties.h:
Each timestamp parameter shall be interpreted as "unknown" when set to a certain value. I'm trying to hide this detail from the user with a simple nullptr to indicate that the value is "unknown". However, I'm worried that all the pointers overcomplicate the API functions.

I have an MP4Box.js branch that can read the itai & taic boxes: gpac/mp4box.js#366

@farindk
Copy link
Contributor

farindk commented Nov 6, 2023

At least for heif_property_get_clock_info, it may be better to introduce a struct like heif_tai_clock_info that collects all fields. This could even be versioned if we want to be able to support future extensions. This eliminates the long list of parameters and pointers.
Then, we could use constants like heif_tai_clock_correction_offset = 0x7fff... to make it easier for the user.

@dukesook
Copy link
Contributor Author

dukesook commented Nov 8, 2023

resolves #1003

@farindk farindk merged commit 4d68e65 into strukturag:timestamp-properties Nov 12, 2023
2 checks passed
@dukesook dukesook deleted the timestamp_boxes_2 branch June 28, 2024 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants