-
Notifications
You must be signed in to change notification settings - Fork 190
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
Segmentation fault when encoding sequence with alpha channel and AOM_USAGE_REALTIME #1190
Comments
Thanks for the report, this does sound like a libaom issue. Do you see the issue with all content or just a particular image? Could you attach a sample source file? If you're using the libavif release, then you picked up libaom 3.5.0, correct? |
And could you confirm the platform you're seeing the crash on? I see some Ubuntu and mingw-w64 targets in your workflows. |
So far as I can tell, any RGBA image whatsoever triggers it. If you're looking for a specific image, try this one. The "wheels" workflow of pillow-avif-plugin tests against the widest variety of platforms; I've added a test that should fail with this bug so that I can get a full list of platforms that have the issue. (the windows wheels are still not built against the latest libavif and aom, so ignore those for now). I will report back with the results once it finishes running. So far in my local testing I've seen it on every x86 platform I've tried (alpine, ubuntu, centos, and OS X). I can't be sure, but I think that the M1 OS X builds didn't exhibit the issue. |
Frankie: Thank you for the bug report. James: Please check if the stack trace shows the crash occurs when we encode the alpha plane. Could you check if the libaom functions in the stack can handle a monochrome image? Thanks. |
this is non-exhaustive, but covers the file in the issue report and the newly added MonochromeRealtimeTest. Bug: AOMediaCodec/libavif#1190 Change-Id: I947a5d926daaae9c0a667114996ddd7bf9ff2013
This should fix the monochrome AOM_USAGE_REALTIME bug as described in AOMediaCodec/libavif#1190 until the next release of libaom.
I can confirm that this fixes the issue I was having. Thanks! |
- Fixed: Distributed OS X wheels now include patch for libaom segmentation fault (see AOMediaCodec/libavif#1190 and [aom@165281](https://aomedia-review.googlesource.com/c/aom/+/165281/1)). The bundled static libaom was patched for all other wheels, but because of a build issue it was missing from the 1.3.0 mac wheels.
Great, thanks for the update. If you run into any other issues, don't hesitate to reach out. |
- Fixed: Distributed OS X wheels now include patch for libaom segmentation fault (see AOMediaCodec/libavif#1190 and [aom@165281](https://aomedia-review.googlesource.com/c/aom/+/165281/1)). The bundled static libaom was patched for all other wheels, but because of a build issue it was missing from the 1.3.0 mac wheels.
- Fixed: Distributed OS X wheels now include patch for libaom segmentation fault (see AOMediaCodec/libavif#1190 and [aom@165281](https://aomedia-review.googlesource.com/c/aom/+/165281/1)). The bundled static libaom was patched for all other wheels, but because of a build issue it was missing from the 1.3.0 mac wheels.
How to reproduce:
Find an RGBA png and pass it in twice to avifenc to create a sequence, using aom encoding with speed 7 or greater:
And here is the backtrace in gdb:
If I make it so that it never passes
aomUsage
ofAOM_USAGE_REALTIME
by deleting these lines:libavif/src/codec_aom.c
Lines 560 to 568 in 6079987
I no longer get a segmentation fault.
I suspect this is a bug in libaom, but it came to my attention because I had CI test failures in pillow-avif-plugin when updating to the latest libavif.
The text was updated successfully, but these errors were encountered: