Closed mrjackbo closed 1 week ago
I believe that file is invalid. ISO/IEC 23008-12:2022 Section 6.5.3.1 requires that ispe
occurs prior to the association of all other transformative properties. Do you know what software made it?
The cavif code is abandoned so probably not a priority to work around this bug in the producer.
Those were generated years ago with an early pre-release of https://github.com/kornelski/cavif-rs . Sometimes early apps just aren't complete, even when someone uses them to purport to be authoritative. (Even samples from standards have suffered from this...)
A misplaced irot is pretty benign, since it can be fixed so easily by restreaming the boxes or just having an app set a new rotation.
Those were generated years ago with an early pre-release of https://github.com/kornelski/cavif-rs . Sometimes early apps just aren't complete, even when someone uses them to purport to be authoritative. (Even samples from standards have suffered from this...)
Interesting. I understood they came from https://github.com/link-u/cavif
Even though the input file has a wrong property order, after this refactoring 0b236060d0585d744e26e2f745cb18419a38ccb8, it now reads "correctly".
Here is an image for which libheif 1.17 reports wrong dimensions for the primary image. It has width 722 and height 1024 after the correct rotation is applied, but libheif outputs 1024x722.
I believe the problem is here: For some reason the
irot
box appears before theispe
box, and thus line 626, which is supposed to flip the dimensions, is never called.