Change Frame from RgbaImage to DynamicImage#3020
Open
RunDevelopment wants to merge 1 commit into
Open
Conversation
197g
reviewed
Jun 8, 2026
197g
left a comment
Member
There was a problem hiding this comment.
Yeah, probably? I can't tell if I'm missing something here but then again it is rather conceptually simple.
| let frame_delay = img_frame.delay().into_ratio().to_integer(); | ||
| // convert img_frame into RgbaImage | ||
| let mut rbga_frame = img_frame.into_buffer(); | ||
| let mut rbga_frame = img_frame.into_buffer().to_rgba8(); |
Member
There was a problem hiding this comment.
This is odd. While consistent with automatically converting for other encoding of DynamicImage, this can only happen here since it is DynamicImage and can not be another input that we'd reject automatically converting.
This feels like a right change but I do find it remarkable regardless.
Member
Author
|
The change is rather simple, plus we're not really using the |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #2996.
Might also fix (idk) #2398.
This PR changes
Frameto use anDynamicImageinternally. This allowsFramesand co. to represent animations that aren't RGBA8. As a side effect, this removes a forced DynImg -> Rgba8 conversion inImageReader::into_frames, but also adds one inGifEncoder.Not sure if we super duper want/need this.
Also, we may want to rename
Frame::buffertoFrame::image(same for related methods), but I'm not sure if it's worth it.