You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As of v0.25.4, WebPDecoder::into_frames() decodes the entire animation up front, as opposed letting the user read frames one by one.
This is a blocker for Oculante to migrate away from libwebp-sys + webp-animation to image's memory-safe WebP animation decoder: woelper/oculante#252 (comment)
This will also be an issue for wondermagick which will need to support decoding a set of specific frames, and always decoding all of the frames will be slow.
The text was updated successfully, but these errors were encountered:
Are you sure? Looking at the code, it seems that next_frame is called lazily within webp::FramesInner::next each time a new frame is requested. Though if you call collect on the iterator it'll of course decode all the frames.
image-webp does scan the chunk headers for each frame of the animation when creating the decoder (to determine the animation runtime and determine whether the image uses lossy compression), but I'd expect that to be comparatively cheap.
As of v0.25.4,
WebPDecoder::into_frames()
decodes the entire animation up front, as opposed letting the user read frames one by one.This is a blocker for Oculante to migrate away from
libwebp-sys
+webp-animation
toimage
's memory-safe WebP animation decoder: woelper/oculante#252 (comment)This will also be an issue for
wondermagick
which will need to support decoding a set of specific frames, and always decoding all of the frames will be slow.The text was updated successfully, but these errors were encountered: