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

bug: AVIF uploads fail due to decode error #343

Open
insertish opened this issue Sep 29, 2024 · 4 comments
Open

bug: AVIF uploads fail due to decode error #343

insertish opened this issue Sep 29, 2024 · 4 comments
Labels
crate:services:autumn crates/services/autumn help wanted Extra attention is needed

Comments

@insertish
Copy link
Member

What happened?

currently AVIF decoding in image-rs is only supported for 8-bit images and when the native dav1d library is a. enabled using the crate feature flag and b. is present on the system when building

need to look into a potential native Rust alternative here or dav1d needs to be added to the build process & instructions need to be updated for developers to install dav1d (annoying)

@insertish insertish added bug crate:services:autumn crates/services/autumn labels Sep 29, 2024
@github-project-automation github-project-automation bot moved this to 🆕 Untriaged in Revolt Project Sep 29, 2024
@insertish insertish moved this from 🆕 Untriaged to 💡 Open in Revolt Project Sep 29, 2024
@insertish insertish added the help wanted Extra attention is needed label Sep 29, 2024
@zombi1944
Copy link

Using Rust and imagers, you need to make sure that the dav1d library is installed. You can add it by specifying it in Cargo.caml. Or maybe I'm wrong about something.

@insertish
Copy link
Member Author

I'm trying to avoid relying on libraries outside of the Rust ecosystem as they make the project more difficult to build and deploy, ideally we can avoid it entirely but if we can't then:

  • we need to figure out how to instruct developers to install dav1d
  • we need to figure out how to include dav1d in build/runtime images

@zombi1944
Copy link

Hmm, and if you add the dav1d dependency to the Cargo.toml file, then use dav1d = "0.9.1"

@gianni-rosato
Copy link

Not sure how relevant this is, but rav1d exists, preserving dav1d's assembly opts but replacing the C with Rust. Its performance is pretty similar to dav1d, and it supports the AV1 baseline profile just fine which should allow 10-bit support.

@insertish insertish removed the bug label Nov 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crate:services:autumn crates/services/autumn help wanted Extra attention is needed
Projects
Status: 🕒 Backlog
Development

No branches or pull requests

3 participants