Uh oh!
There was an error while loading. Please reload this page.
Add ANI decoder support - #2899
Conversation
CLAassistant
commented
Mar 11, 2025
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Günther Foidl <gue@korporal.at>
JimBobSquarePants
commented
Mar 15, 2025
Thanks @Poker-sang I’ll have a deep look at this asap. |
JimBobSquarePants
left a comment
There was a problem hiding this comment.
Thanks for this. It's a promising start...
I think we can make some changes here to allow flattening out the frame sequences a little better which should help when writing the encoder.
I've added some additional comments regarding coding style and merging of functionality also.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Poker-sang
commented
Apr 7, 2025
Thank you for the review ❤ I fixed some simple review comments, but there is a lot of work that needs to continue to be discussed before we can move forward. Based on your suggestions I'm guessing it may need to be improved in this way:
|
JimBobSquarePants
commented
Apr 8, 2025
I don't think we should store the rate block in the Thinking about it some more I believe a good plan would be to have an enum in We can then use nullable sub properties for |
I make every |
JimBobSquarePants
commented
Apr 30, 2025
@Poker-sang I'll pull this down and have another deep look tonight. |
Poker-sang
commented
Apr 30, 2025
JimBobSquarePants
commented
Jun 10, 2025
@Poker-sang Haven't forgotten this, just focusing on closing some issues first. |

Prerequisites
Description
implements AniDecoder for ImageSharp, and encoder if the pr approved
Comment
Since the ANI file may contain a two-dimensional array of ImageFrames, I flattened the original ImageFrames as follows
I have kept all
Metadataas much as possible, but this may result in a structure that is not intuitive, and may require further discussion with you) reserved the possibility of future modificationsANI is also a RIFF file, so I referenced RiffHelper, perhaps we should move it out of the WEBP namespace
[1]
[2]