-
Notifications
You must be signed in to change notification settings - Fork 599
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
Add an AVIF decoder #1398
Add an AVIF decoder #1398
Conversation
The latter is required by image-rs/image#1398
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The amount of unsafe
in decoder is not yet very reassuring, particularly without safety comments. If that combination, deriving a slice from the plane_data_ptr
and plane_data_geometry
, is always safe then I'm wondering why this is not an abstraction provided in the dav1d
crate?
84c72fe
to
4aa5e27
Compare
4aa5e27
to
f4451f6
Compare
f4451f6
to
0308008
Compare
There, both the mp4parse and dav1d crates got a release, I’ve updated this PR to use the non-git version. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The code looks good, there is only this one annoying interface detail we have to worry about.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for the confusion. Misclicked. The one review comment previously is already correct.
0308008
to
d63ad64
Compare
Thanks a lot. ETA: next weekend. |
This encoder so far only supports 8-bit data, and due to #1217 is much less efficient than it could be, as data is always converted to BGRA8888. I could also add support for I8 and IA88, but those formats are uncommon enough we can probably ignore the inefficiency for a first version.
This is 5am quality code, so no error handling but
.unwrap()
, and there are someunsafe
blocks which could possibly be avoided, I will get back to it after a first round of review.This also depends on mozilla/mp4parse-rust#266 to build.
Fixes #1152.